电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
创作
电子发烧友网>电子资料下载>电子书籍>Writing Testbenches using Syst

Writing Testbenches using Syst

2009-07-11 | rar | 3 | 次下载 | 免费

资料介绍

Coverage Points    51
Cross Coverage  53
Transition Coverage   . 53
What Does 100 Percent Functional Coverage Mean? . 54
Verification Language Technologies  55
Assertions  . . 57
Simulated Assertions   . 58
Formal Assertion Proving  59
Revision Control   . . 61
The Software Engineering Experience  62
Configuration Management  . 63
Working with Releases   65
Issue Tracking    66
What Is an Issue?    67
The Grapevine System   68
The Post-It System   . . 68
The Procedural System   69
Computerized System   69
Metrics   . 71
Code-Related Metrics   71
Quality-Related Metrics  . . 73
Interpreting Metrics   . 74
Summary   76
CHAPTER 3 The Verification Plan 77
The Role of the Verification Plan  . . 78
Specifying the Verification  78
Defining First-Time Success  . 79
Levels of Verification  . . 80
Unit-Level Verification   81
Block and Core Verification  . 82
ASIC and FPGA Verification  84
System-Level Verification  . 84
Board-Level Verification  . . 85
Verification Strategies  86
Verifying the Response   86
From Specification to Features . 87
Block-Level Features   90
System-Level Features   91
Table of Contents
viii Writing Testbenches using SystemVerilog
Error Types to Look For  . . 91
Prioritize   . 92
Design for Verification   93
Directed Testbenches Approach 96
Group into Testcases   . 96
From Testcases to Testbenches  98
Verifying Testbenches   99
Measuring Progress   100
Coverage-Driven Random-Based Approach  . . 101
Measuring Progress   101
From Features to Functional Coverage . . 103
From Features to Testbench  105
From Features to Generators  107
Directed Testcases   . . 109
Summary  111
CHAPTER 4 High-Level Modeling 113
High-Level versus RTL Thinking  . .113
Contrasting the Approaches  115
You Gotta Have Style!  . .117
A Question of Discipline  . 117
Optimize the Right Thing  118
Good Comments Improve Maintainability 121
Structure of High-Level Code . 122
Encapsulation Hides Implementation Details  . . 122
Encapsulating Useful Subprograms  . 125
Encapsulating Bus-Functional Models  127
Data Abstraction   . 130
2-state Data Types   . 131
Struct, Class  . 131
Union   . . 134
Arrays   . . 139
Queues   . 141
Associative Arrays   . 143
Files  145
From High-Level to Physical-Level  . 146
Object-Oriented Programming 147
Classes   . 147
Inheritance  . . 153
Writing Testbenches using SystemVerilog ix
Polymorphism  156
The Parallel Simulation Engine 159
Connectivity, Time and Concurrency  160
The Problems with Concurrency . 160
Emulating Parallelism on a Sequential Processor  162
The Simulation Cycle   163
Parallel vs. Sequential  . . 169
Fork/Join Statement   170
The Difference Between Driving and Assigning  . 173
Race Conditions  . . 176
Read/Write Race Conditions  177
Write/Write Race Conditions  180
Initialization Races   . 182
Guidelines for Avoiding Race Conditions . 183
Semaphores  . . 184
Portability Issues   186
Events from Overwritten Scheduled Values   186
Disabled Scheduled Values  . 187
Output Arguments on Disabled Tasks  188
Non-Re-Entrant Tasks   188
Static vs. Automatic Variables . . 193
Summary  . . 196
CHAPTER 5 Stimulus and Response 197
Reference Signals   198
Time Resolution Issues  . . 199
Aligning Signals in Delta-Time . . 201
Clock Multipliers   . . 203
Asynchronous Reference Signals 205
Random Generation of Reference Signal Parameters 206
Applying Reset    208
Simple Stimulus   . 212
Applying Synchronous Data Values  . 212
Abstracting Waveform Generation  . . 214
Simple Output    216
Visual Inspection of Response  217
Producing Simulation Results  217
Minimizing Sampling   219
Visual Inspection of Waveforms . 220
Table of Contents
x Writing Testbenches using SystemVerilog
Self-Checking Testbenches  . 221
Input and Output Vectors  221
Golden Vectors    222
Self-Checking Operations  224
Complex Stimulus   227
Feedback Between Stimulus and Design . 228
Recovering from Deadlocks  228
Asynchronous Interfaces  . 231
Bus-Functional Models  234
CPU Transactions   . . 234
From Bus-Functional Tasks to Bus-Functional Model 236
Physical Interfaces   . 238
Configurable Bus-Functional Models  243
Response Monitors   246
Autonomous Monitors   249
Slave Generators   . . 253
Multiple Possible Transactions . . 255
Transaction-Level Interface  258
Procedural Interface vs Dataflow Interface   259
What is a Transaction?  . . 263
Blocking Transactions  . . 265
Nonblocking Transactions  . 265
Split Transactions   . . 267
Exceptions   270
Summary  . . 278
CHAPTER 6 Architecting Testbenches 279
Verification Harness  . . 280
Design Configuration  . 284
Abstracting Design Configuration  . . 285
Configuring the Design  . . 288
Random Design Configuration . . 290
Self-Checking Testbenches  292
Hard Coded Response  . . 294
Data Tagging  295
Reference Models   . . 297
Transfer Function   . . 299
Scoreboarding  300
Integration with the Transaction Layer . . 302
Writing Testbenches using SystemVerilog xi
Directed Stimulus   304
Random Stimulus   . 307
Atomic Generation   . 307
Adding Constraints   . 312
Constraining Sequences  . 316
Defining Random Scenarios  320
Defining Procedural Scenarios . 322
System-Level Verification Harnesses . . 327
Layered Bus-Functional Models . 328
Summary  . . 331
CHAPTER 7 Simulation Management 333
Transaction-Level Models  333
Transaction-Level versus Synthesizable Models  334
Example of Transaction-Level Modeling . 335
Characteristics of a Transaction-Level Model  . . 337
Modeling Reset    341
Writing Good Transaction-Level Models . 342
Transaction-Level Models Are Faster  347
The Cost of Transaction-Level Models  348
The Benefits of Transaction-Level Models 349
Demonstrating Equivalence  351
Pass or Fail?  352
Managing Simulations  . 355
Configuration Management  355
Avoiding Recompilation or SDF Re-Annotation  . 358
Output File Management  361
Seed Management   . . 364
Regression  . 365
Running Regressions   366
Regression Management  . 367
Summary  . . 370
APPENDIX A Coding Guidelines 371
File Structure    372
Filenames   375
Style Guidelines   . . 376
Table of Contents
xii Writing Testbenches using SystemVerilog
Comments   376
Layout   . . 378
Structure   380
Debugging   383
Naming Guidelines   384
Capitalization  384
Identifiers   386
Constants   389
Portability Guidelines  . 391
APPENDIX B Glossary 397
Index 401

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1HFSS电磁仿真设计应用详解PDF电子教程免费下载
  2. 24.30 MB   |  126次下载  |  1 积分
  3. 2H桥中的电流感测
  4. 545.39KB   |  7次下载  |  免费
  5. 3雷达的基本分类方法
  6. 1.25 MB   |  4次下载  |  4 积分
  7. 4I3C–下一代串行通信接口
  8. 608.47KB   |  3次下载  |  免费
  9. 5电感威廉希尔官方网站 讲解
  10. 827.73 KB  |  2次下载  |  免费
  11. 6从 MSP430™ MCU 到 MSPM0 MCU 的迁移指南
  12. 1.17MB   |  2次下载  |  免费
  13. 7有源低通滤波器设计应用说明
  14. 1.12MB   |  2次下载  |  免费
  15. 8RA-Eco-RA2E1-48PIN-V1.0开发板资料
  16. 35.59 MB  |  2次下载  |  免费

本月

  1. 12024年工控与通信行业上游发展趋势和热点解读
  2. 2.61 MB   |  763次下载  |  免费
  3. 2HFSS电磁仿真设计应用详解PDF电子教程免费下载
  4. 24.30 MB   |  126次下载  |  1 积分
  5. 3继电保护原理
  6. 2.80 MB   |  36次下载  |  免费
  7. 4正激、反激、推挽、全桥、半桥区别和特点
  8. 0.91 MB   |  32次下载  |  1 积分
  9. 5labview实现DBC在界面加载配置
  10. 0.57 MB   |  21次下载  |  5 积分
  11. 6在设计中使用MOSFET瞬态热阻抗曲线
  12. 1.57MB   |  15次下载  |  免费
  13. 7GBT 4706.1-2024家用和类似用途电器的安全第1部分:通用要求
  14. 7.43 MB   |  13次下载  |  免费
  15. 8PADS-3D库文件
  16. 2.70 MB   |  10次下载  |  2 积分

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935113次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420061次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233084次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191360次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183329次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81578次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73804次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65985次下载  |  10 积分