資料介紹
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
- Verilog 模塊基本結構 2次下載
- Verilog HDL入門教程.pdf 117次下載
- FPGA CPLD中的Verilog設計小技巧
- 測試平臺的模塊和模組參考案例 16次下載
- 軟件無線電RFID測試平臺課件下載 32次下載
- Verilog硬件描述語言參考手冊免費下載 74次下載
- Verilog黃金參考指南的中文版免費下載 0次下載
- Verilog黃金參考指南資料免費下載 22次下載
- Verilog HDL測試和應用資料詳細說明 5次下載
- Verilog教程之Verilog HDL程序設計語句和描述方式 47次下載
- Verilog HDL的基礎知識詳細說明 54次下載
- 測試系統平臺的典型架構和AXle測試平臺的介紹和優勢概述 7次下載
- Verilog HDL入門教程之Verilog HDL數字系統設計教程 83次下載
- Verilog_UART_FPGA 5次下載
- VHDL,Verilog,System verilog比較 0次下載
- Verilog 與 ASIC 設計的關系 Verilog 代碼優化技巧 213次閱讀
- Verilog 測試平臺設計方法 Verilog FPGA開發指南 356次閱讀
- Verilog與VHDL的比較 Verilog HDL編程技巧 256次閱讀
- 如何自動生成verilog代碼 388次閱讀
- 二十進制編碼器及Verilog HDL描述 Verilog HDL程序的基本結構及特點 3052次閱讀
- Verilog Testbench怎么寫 Verilog Testbench文件的編寫要點 3968次閱讀
- 可重用的驗證組件中構建測試平臺的步驟 623次閱讀
- Verilog程序編寫規范 4005次閱讀
- Verilog系統函數和邊沿檢測 2389次閱讀
- 關于Verilog語言標準層次問題 5025次閱讀
- ATEstar通用測試平臺管理系統 2434次閱讀
- verilog是什么_verilog的用途和特征是什么 4.5w次閱讀
- 關于verilog的學習經驗簡單分享 2900次閱讀
- 基于System Verilog的可重用驗證平臺設計及驗證結果分析 2703次閱讀
- 采用軟件定義無線電開發RFID測試平臺 864次閱讀
下載排行
本周
- 1常用電子元器件集錦
- 1.72 MB | 24471次下載 | 免費
- 2EMC電路設計工程師必備的EMC基礎
- 0.42 MB | 4次下載 | 2 積分
- 3低壓降肖特基整流管SR340L數據手冊
- 0.78 MB | 1次下載 | 免費
- 4CPCI6310型復合視頻采集板資料
- 0.04 MB | 1次下載 | 免費
- 5HT8 半橋電磁爐MCU應用須知
- 1.91 MB | 次下載 | 免費
- 6快恢復二極管1F1 THRU 1F7數據手冊
- 0.95 MB | 次下載 | 免費
- 7高效率整流二極管HER601 THRU HER608數據手冊
- 0.53 MB | 次下載 | 免費
- 8橫河WT5000高精度功率分析儀產品資料_中文說明書_科瑞杰
- 1.60 MB | 次下載 | 免費
本月
- 1常用電子元器件集錦
- 1.72 MB | 24471次下載 | 免費
- 2三相逆變主電路的原理圖和PCB資料合集免費下載
- 27.35 MB | 111次下載 | 1 積分
- 3運算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 11次下載 | 5 積分
- 5TL494工業用開關電源原理圖資料
- 0.22 MB | 10次下載 | 1 積分
- 6常用電子元器件介紹
- 3.21 MB | 8次下載 | 免費
- 7QW2893應急燈專用檢測芯片
- 590.40 KB | 4次下載 | 免費
- 8EMC電路設計工程師必備的EMC基礎
- 0.42 MB | 4次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183344次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論