自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (5)
  • 收藏
  • 关注

原创 SystemVerilog for Design(Chapter2)--SystemVerilog LIteral Value and Build-in Data Types

SystemVerilog for Design(Chapter2)–SystemVerilog LIteral Value and Build-in Data TypesTopic:Enhanced literal values`define text substitution enhancementsTime valuesNew variable typesVariable in...

2019-03-18 09:45:36 493

原创 在VIM中运用命令行对文本进行替换

在VIM中进行文本替换:1. 替换当前行中的内容: :s/from/to/ (s即substitude) :s/from/to/ : 将当前行中的第一个from,替换成to。如果当前行含有多个 from,则只会替换其中的第一个。 :s/from/to/g : 将当前行中的所有from都替换成to。 ...

2019-03-06 19:01:28 622

原创 VCS-Ucli命令行

VCS-Ucli%命令行abort : Abort evaluation of a macro file.ace : Evaluate analog simulator command.alias : Create an alias for a command.assertion : Assertion(SVA/PSL) related commands.call : Execute ...

2019-03-01 13:26:29 9975

原创 SystemVerilog for Design(Chapter2)--SystemVerilog Declaration Spaces

SystemVerilog for Design(1)–SystemVerilog Declaration SpacesTopic:Packages definitions and importing definitions from packages$unit compilation declaration spaceDeclarations in unnamed block...

2019-02-20 14:32:11 1135

原创 纸牌屋第一季(2)--part2

纸牌屋第一季(2)Well, we really should be doing this on a Friday instead of a Wednesday .这事我们真应该放在周五做而不是周三。If we do it on a Friday, people have the weekend… Fine, we’ll do it on Friday. 如果是在周五,大家周末就能…好吧,那...

2019-02-11 21:54:31 319

原创 纸牌屋第一季(2)--part1

纸牌屋第一季(2)You know what i like about people?你知道我喜欢人哪一点吗?They stack so well. 会排队。Let me get this for you. 我来收拾一下。Want the paper ? NO. 报纸还要吗? 不。This is too much. 太多了。It’s not half enough. 差得远呢...

2019-02-09 19:40:34 491

原创 Using Register Abstraction Layer Classes(三)--Packaging a Register Model

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Using Register Abstraction Layer Classes(三)–Packaging a Register ModelPackaging a Register ModelRAL generator 可以自由的将生成的各种代码进行打包,这样对仿真和...

2019-02-03 10:19:00 199

原创 Using Register Abstraction Layer Classes(二)--Block Types

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Using Register Abstraction Layer Classes(二)–Block TypesBlock Typesblock types 是需要 uvm_reg_block 扩展而来。一个单独的block type必须单独定义一个类。并且class ...

2019-02-02 17:00:13 244

原创 Using Register Abstraction Layer Classes(一)--Register Types

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565UVM验证教程(一)–Register Abstraction Layer前言之所以写下这个呢,是因为最近工作的时候用到了,突然蹦出这么一篇文章确实有点儿突兀,但是既然用到了,还是想记录下来。RAL这个概念有点儿抽象,但是他的好处是模式是比较固定的。所以一般公司里是可...

2019-02-02 14:16:11 337

原创 SystemVerilog验证教程(二)--SystemVerilog Interface 和 Timing Region

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565SystemVerilog验证教程(二)–SystemVerilog Interface 和 Timing Region一、Interface我们在做验证平台的时候呢,需要将我们的验证平台和DUT进行一个连接。这个连接呢,在Verilog环境下,会有两个module进...

2019-01-28 19:14:01 3708 1

原创 SystemVerilog验证教程(一)--Test Plan and Design Verification Environment

SystemVerilog 教程(一)–SystemVerilog概述SystemVerilog TestBench的功能SystemVerilog

2019-01-22 15:27:16 6901

原创 Python教程(十)--if 实例运用(棒子老虎鸡游戏)

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(十)–if 实例运用(棒子老虎鸡游戏)#这里使用了一个新的知识点,import random,为了给出随机化的结果。import random #提示用户进行输入player1 = input("please choose one of the ...

2019-01-21 16:14:45 2830

原创 Python教程(九)--复合赋值运算符

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(九)–复合赋值运算符代码举例#在其他的一些语言中,如果想让一个变量自增1,则有以下一些方法:#i++,++i,i = i+1,i+=1#但是在python当中,只能用i=i+1和i+=1,这两种方案。i = 1i += 1print(i)...

2019-01-21 11:08:05 2281 5

原创 Python教程(八)--循环(while 和 for)、break和continue与if的配合使用

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(八)–if/elif#if 条件1:# xxxx#elif 条件2:# xxxx#elif 条件3:# xxxx#...#执行顺序,先判定条件1,如果满足则跳出条件判断,如果不满足,则依次询问条件2。...

2019-01-18 20:13:35 212

原创 Verdi 使用教程(持续更新中)

Verdi 基础教程技术背景在Design Flow中,有各种各样的Debug情景,我们也会花费大量的时间去Debug。但是在这个过程中会遇到各种各样的瓶颈,这会对Debug的效率造成影响。最直观的例子就是复杂的设计。无论是对设计的直观理解,还是设计多样化behavior所造成的Increase condition、design cause和effect scenarios,以及多Team的环...

2019-01-17 13:24:18 34366 1

原创 HelixCore P4 Command Reference(详解,持续更新中)

HelixCore P4 Command Referencep4 edit作用:在客户端工作区打开文件进行编辑语法:p4 [g-opts] edit [-c changelist] [-k -n] [-t type] [–remote=remote] file…[g-opts] global-options,后续会详细说明。[-c changelist] 每一个指定的文件都对应了相应...

2019-01-16 17:40:53 2601

原创 Python教程(七)--比较运算符、逻辑运算符

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(七)–比较运算符、逻辑运算符、while循环比较运算符height = 120 # 身高120cm#如果身高超过120cmif height>=120: print("no free")if height!=120: pr...

2019-01-15 22:36:32 171

原创 Python教程(六)--关键字、标识符、驼峰法命名、运算符、print输出多个变量

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(六)–关键字、标识符、驼峰法命名、运算符、print输出多个变量标识符由下划线、大小写字母、数字组成。数字不能开头。python中的标识符是区分字母大小写的。命名以"my_english_name"为例子。小驼峰命名法:第一英文单词小写...

2019-01-15 13:32:35 297

原创 Python教程(五)--if、elif、else以及注意事项

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(五)–if、if else以及注意事项if 语句用例子简明扼要的说明用法###gvim example_5_1##age = input("please input your age:")age = 19###如果年龄大

2019-01-15 12:49:30 1934

原创 Python教程(四)--变量以及类型、打印名片

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(四)–变量以及类型、打印名片变量以及类型是用来存东西的,要用需先定义。#定义了一个变量num ,num存储了数值100num = 100#长度 宽度length_ = 60 #单位cmwidth_ = 40 #单位cm#第一次计算area...

2019-01-14 20:18:18 913

原创 Python教程(三)--注释以及python2中文的解决方法

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(三)–注释以及python2中文的解决方法注释好记性不如烂笔头,一堆代码有注释和没有注释的效果是完全不一样的。在python中,用 ‘#’ 注释行。’ # ’ 右边的全部为注释内容。python中有两种注释的方法,一个程序中注释个数不做限制。第...

2019-01-14 16:06:47 233

原创 Python教程(二)--Python的交互模式,ipython

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客https://blog.csdn.net/qq_31019565Python教程(二)–Python的交互模式,ipython在Linux 命令行操作界面下直接执行命令 python,会出现以下操作界面,即Python的交互模式:[python@ubuntu ~/Documents]$ pythonPython 2.7 (r27...

2019-01-14 14:31:06 418

原创 Python教程(一)--第一个helloworld程序

Python教程(一)–第一个helloworld程序###gvim python_1.py print ("hello world")###cmd : python python_1.py###output: hello world格式,顶格写,可以使用单引号也可以使用双引号。...

2019-01-14 10:31:55 274

原创 Round-Robin Arbiter思路

转载请标明出处:原文发布于:浅尝辄止,未尝不可的博客Round-Robin Arbiter思路 学习笔记思路源于网络,细致计算下来发现,这真的是一个万能公式。假设上一次的Arbiter结果为0000 0001,则下一次的结果应该为1~7位中的最低请求位。比如:请求结果1111 11100000 00101010 10000000 1000000...

2019-01-11 16:35:33 5912 1

原创 Verilog的时序问题和SystemVerilog TestBench激励时序

转载请标明出处:原文发布于:[浅尝辄止,未尝不可的博客](https://blog.csdn.net/qq_31019565)Verilog时序问题和SystemVerilog TestBench激励时序 学习笔记最近我温习《SystemVerilog验证-测试平台编写指南(第二版)》这本书,看到了第4.3节,激励时序的问题,还是花了一些时间去看。SV这条路任重道远。本文中大部分是摘录,自...

2019-01-10 19:27:27 4681

SystemVerilog for Design(2nd edition)

这本书,超赞。强烈推荐!!!!!有很多很好的用例! Foreword ................................................................................................................. xxi Preface ................................................................................................................... xxiii Target audience...................................................................................................................... xxiii Topics covered........................................................................................................................xxiv About the examples in this book..............................................................................................xxv Obtaining copies of the examples...........................................................................................xxvi Example testing.......................................................................................................................xxvi Other sources of information .................................................................................................xxvii Acknowledgements..................................................................................................................xxx Chapter 1: Introduction to SystemVerilog...............................................................1 1.1 SystemVerilog origins.......................................................................................................1 1.1.1 Generations of the SystemVerilog standard.......................................................2 1.1.2 Donations to SystemVerilog ..............................................................................4 1.2 Key SystemVerilog enhancements for hardware design...................................................5 1.3 Summary ...........................................................................................................................6 Chapter 2: SystemVerilog Declaration Spaces ....................................

2019-01-31

IEEE Standard for IP-XACT,Standard Structure for Packaging,Integrating

Contents 1. Overview.............................................................................................................................................. 1 1.1 Scope .......................................................................................................................................... 1 1.2 Purpose ....................................................................................................................................... 2 1.3 Design environment ................................................................................................................... 2 1.4 IP-XACT–enabled implementations .......................................................................................... 6 1.5 Conventions used ....................................................................................................................... 7 1.6 Use of color in this standard..................................................................................................... 12 1.7 Contents of this standard .......................................................................................................... 12 2. Normative references......................................................................................................................... 13 3. Definitions, acronyms, and abbreviations.......................................................................................... 15 3.1 Definitions................................................................................................................................ 15 3.2 Acronyms and abbreviations.................................................................................................... 20 4. Interoperability use model ................................................................................................................. 21 4.1 Roles and responsibilities......................................................................................................... 21 4.2 IP-XACT IP exchange flows.................................................................................................... 22 5. Interface definition descriptions ........................................................................................................ 25 5.1 Definition descriptions ............................................................................................................. 25 5.2 Bus definition ........................................................................................................................... 26 5.3 Abstraction definition............................................................................................................... 28 5.4 Ports.......................................................................................................................................... 29 5.5 Wire ports................................................................................................................................. 30 5.6 Qualifiers.................................................................................................................................. 31 5.7 Wire port group ........................................................................................................................ 32 5.8 Wire port mode (and mirrored mode) constraints.................................................................... 33 5.9 Transactional ports ................................................................................................................... 34 5.10 Transactional port group .......................................................................................................... 36 5.11 Extending bus and abstraction definitions ............................................................................... 37 5.12 Clock and reset handling .......................................................................................................... 38 6. Component descriptions .................................................................................................................... 41 6.1 Component ............................................................................................................................... 41 6.2 Interfaces .................................................................................................................................. 43 6.3 Interface interconnections ........................................................................................................ 44 6.4 Complex interface interconnections......................................................................................... 46 6.5 Bus interfaces ........................................................................................................................... 48 6.6 Indirect interfaces..................................................................................................................... 58 6.7 Component channels ................................................................................................................ 59 6.8 Address spaces ......................................................................................................................... 60 6.9 Memory maps........................................................................................................................... 68 6.10 Remapping ............................................................................................................................... 79 6.11 Registers ................................................................................................................................... 81 6.12 Models...................................................................................................................................... 95

2019-01-15

P4 Command Reference

Contents: How to use this Guide Feedback Other documentation Syntax conventions What's new in this guide 2018.1 Patch release 2018.1 release 2017.2 release New specification fields New commands New configurables Updated configurable Commands by functional area Functional areas Graph depot commands p4 help-graph Commands that differ for graph depots Graph depot commands Introduction Getting help Command aliases Defining aliases Command alias syntax Basic examples Complex examples Putting it all together Previewing alias substitutions Advanced topics Limitations Naming conventions Creating scripts Commands and metadata Commands

2019-01-07

Ruby 元编程

Ruby 一种面向对象程序设计的脚本语言 本书的第一部分“Ruby元编程”是本书的核心部分,他讲述了一个资深程序员在办公室一周发生的事情。 本书的第二部分“Rails中的元编程”是一个元编程实例,Rail是Ruby标志性框架。 在阅读本书之前,需要了解本书的三个附录 A、B、C

2019-01-07

SystemVerilog Reference Manual 3.1a(中英文版)+最新SV IEEE 标准

Table of Contents Section 1 Introduction to SystemVerilog ...................................................................................................... 1 Section 2 Literal Values.................................................................................................................................. 4 2.1 Introduction (informative) ...............................................................................................................4 2.2 Literal value syntax..........................................................................................................................4 2.3 Integer and logic literals ..................................................................................................................4 2.4 Real literals ......................................................................................................................................5 2.5 Time literals .....................................................................................................................................5 2.6 String literals....................................................................................................................................5 2.7 Array literals ....................................................................................................................................6 2.8 Structure literals ...............................................................................................................................6 Section 3 Data Types....................................................................................................................................... 8 3.1 Introduction (informative) ...............................................................................................................8 3.2 Data type syntax...............................................................................................................................9 3.3 Integer data types ...........................................................................................................................10 3.4 Real and shortreal data types .........................................................................................................11 3.5 Void data type ................................................................................................................................11 3.6 chandle data type ...........................................................................................................................11 3.7 String data type ..............................................................................................................................12 3.8 Event data type...............................................................................................................................16 3.9 User-defined types .........................................................................................................................16 3.10 Enumerations .................................................................................................................................17 3.11 Structures and unions.....................................................................................................................22 3.12 Class...............................................................................................................................................26 3.13 Singular and aggregate types .........................................................................................................27 3.14 Casting ...........................................................................................................................................27 3.15 $cast dynamic casting ....................................................................................................................28 3.16 Bit-stream casting ..........................................................................................................................29 Section 4 Arrays ............................................................................................................................................ 32 4.1 Introduction (informative) .............................................................................................................32 4.2 Packed and unpacked arrays ..........................................................................................................32 4.3 Multiple dimensions ......................................................................................................................33 4.4 Indexing and slicing of arrays........................................................................................................34 4.5 Array querying functions ...............................................................................................................35 4.6 Dynamic arrays ..............................................................................................................................35 4.7 Array assignment ...........................................................................................................................37 4.8 Arrays as arguments.......................................................................................................................38 4.9 Associative arrays ..........................................................................................................................39 4.10 Associative array methods .............................................................................................................41 4.11 Associative array assignment.........................................................................................................44 4.12 Associative array arguments ..........................................................................................................44 4.13 Associative array literals................................................................................................................44 4.14 Queues ...........................................................................................................................................45 4.15 Array manipulation methods .........................................................................................................47 Section 5 Data Declarations ......................................................................................................................... 52 5.1 Introduction (informative) .............................................................................................................52 5.2 Data declaration syntax..................................................................................................................52 5.3 Constants........................................................................................................................................52 Accellera SystemVerilog 3.1a Extensions to Verilog-2001 viii Copyright 2004 Accellera. All rights reserved . 5.4 Variables ........................................................................................................................................53 5.5 Scope and lifetime .........................................................................................................................54 5.6 Nets, regs, and logic.......................................................................................................................55 5.7 Signal aliasing................................................................................................................................56 5.8 Type compatibility .........................................................................................................................58 Section 6 Attributes....................................................................................................................................... 61 6.1 Introduction (informative) .............................................................................................................61 6.2 Default attribute type .....................................................................................................................61 Section 7 Operators and Expressions.......................................................................................................... 62 7.1 Introduction (informative) .............................................................................................................62 7.2 Operator syntax..............................................................................................................................62 7.3 Assignment operators ....................................................................................................................62 7.4 Operations on logic and bit types ..................................................................................................63 7.5 Wild equality and wild inequality..................................................................................................63 7.6 Real operators ................................................................................................................................64 7.7 Size.................................................................................................................................................64 7.8 Sign ................................................................................................................................................64 7.9 Operator precedence and associativity ..........................................................................................64 7.10 Built-in methods ............................................................................................................................65 7.11 Static Prefixes ................................................................................................................................66 7.12 Concatenation ................................................................................................................................67 7.13 Unpacked array expressions ..........................................................................................................67 7.14 Structure expressions .....................................................................................................................68 7.15 Tagged union expressions and member access..............................................................................70 7.16 Aggregate expressions ...................................................................................................................71 7.17 Operator overloading .....................................................................................................................72 7.18 Streaming operators (pack / unpack) .............................................................................................73 7.19 Conditional operator ......................................................................................................................77 7.20 Set membership..............................................................................................................................77 Section 8 Procedural Statements and Control Flow.................................................................................. 79 8.1 Introduction (informative) .............................................................................................................79 8.2 Statements ......................................................................................................................................79 8.3 Blocking and nonblocking assignments ........................................................................................80 8.4 Selection statements.......................................................................................................................81 8.5 Loop statements .............................................................................................................................87 8.6 Jump statements.............................................................................................................................89 8.7 Final blocks....................................................................................................................................89 8.8 Named blocks and statement labels ...............................................................................................90 8.9 Disable ...........................................................................................................................................90 8.10 Event control..................................................................................................................................91 8.11 Level-sensitive sequence controls .................................................................................................93 8.12 Procedural assign and deassign removal .......................................................................................94 Section 9 Processes........................................................................................................................................ 95 9.1 Introduction (informative) .............................................................................................................95 9.2 Combinational logic.......................................................................................................................95 9.3 Latched logic..................................................................................................................................96 9.4 Sequential logic..............................................................................................................................96 9.5 Continuous assignments ................................................................................................................96 9.6 fork...join........................................................................................................................................97 9.7 Process execution threads ..............................................................................................................98 Accellera Extensions to Verilog-2001 SystemVerilog 3.1a Copyright 2004 Accellera. All rights reserved. ix 9.8 Process control ...............................................................................................................................98 9.9 Fine-grain process control ...........................................................................................................100 Section 10 Tasks and Functions................................................................................................................... 102 10.1 Introduction (informative) ...........................................................................................................102 10.2 Tasks ............................................................................................................................................103 10.3 Functions......................................................................................................................................104 10.4 Task and function argument passing ...........................................................................................106 10.5 Import and export functions.........................................................................................................109 Section 11 Classes.......................................................................................................................................... 111 11.1 Introduction (informative) ...........................................................................................................111 11.2 Syntax ..........................................................................................................................................112 11.3 Overview......................................................................................................................................113 11.4 Objects (class instance)................................................................................................................113 11.5 Object properties..........................................................................................................................114 11.6 Object methods ............................................................................................................................114 11.7 Constructors .................................................................................................................................115 11.8 Static class properties...................................................................................................................116 11.9 Static methods..............................................................................................................................116 11.10 This ..............................................................................................................................................116 11.11 Assignment, re-naming and copying ...........................................................................................117 11.12 Inheritance and subclasses ...........................................................................................................118 11.13 Overridden members....................................................................................................................119 11.14 Super ............................................................................................................................................119 11.15 Casting .........................................................................................................................................120 11.16 Chaining constructors ..................................................................................................................120 11.17 Data hiding and encapsulation .....................................................................................................121 11.18 Constant class properties .............................................................................................................121 11.19 Abstract classes and virtual methods ...........................................................................................122 11.20 Polymorphism: dynamic method lookup.....................................................................................123 11.21 Class scope resolution operator :: ................................................................................................123 11.22 Out of block declarations .............................................................................................................124 11.23 Parameterized classes ..................................................................................................................125 11.24 Typedef class ...............................................................................................................................126 11.25 Classes and structures ..................................................................................................................126 11.26 Memory management ..................................................................................................................127 Section 12 Random Constraints .................................................................................................................. 128 12.1 Introduction (informative) ...........................................................................................................128 12.2 Overview......................................................................................................................................128 12.3 Random variables ........................................................................................................................131 12.4 Constraint blocks .........................................................................................................................132 12.5 Randomization methods ..............................................................................................................145 12.6 In-line constraints — randomize() with.......................................................................................147 12.7 Disabling random variables with rand_mode() ...........................................................................148 12.8 Controlling constraints with constraint_mode() ..........................................................................149 12.9 Dynamic constraint modification.................................................................................................150 12.10 In-line random variable control ...................................................................................................150 12.11 Randomization of scope variables — std::randomize()...............................................................151 12.12 Random number system functions and methods .........................................................................153 12.13Random stability ..........................................................................................................................154 12.14 Manually seeding randomize .......................................................................................................156 12.15 Random weighted case — randcase ............................................................................................157 Accellera SystemVerilog 3.1a Extensions to Verilog-2001 x Copyright 2004 Accellera. All rights reserved . 12.16 Random sequence generation — randsequence...........................................................................158 Section 13 Interprocess Synchronization and Communication................................................................ 166 13.1 Introduction (informative) ...........................................................................................................166 13.2 Semaphores ..................................................................................................................................166 13.3 Mailboxes.....................................................................................................................................167 13.4 Parameterized mailboxes .............................................................................................................170 13.5 Event ............................................................................................................................................171 13.6 Event sequencing: wait_order() ...................................................................................................172 13.7 Event variables.............................................................................................................................173 Section 14 Scheduling Semantics................................................................................................................. 176 14.1 Execution of a hardware model and its verification environment ...............................................176 14.2 Event simulation ..........................................................................................................................176 14.3 The stratified event scheduler ......................................................................................................176 14.4 The PLI callback control points...................................................................................................180 Section 15 Clocking Blocks .......................................................................................................................... 181 15.1 Introduction (informative) ...........................................................................................................181 15.2 Clocking block declaration ..........................................................................................................181 15.3 Input and output skews ................................................................................................................183 15.4 Hierarchical expressions ..............................................................................................................184 15.5 Signals in multiple clocking blocks .............................................................................................185 15.6 Clocking block scope and lifetime...............................................................................................185 15.7 Multiple clocking blocks example ...............................................................................................185 15.8 Interfaces and clocking blocks.....................................................................................................186 15.9 Clocking block events..................................................................................................................187 15.10 Cycle delay: ## ............................................................................................................................187 15.11 Default clocking...........................................................................................................................188 15.12 Input sampling .............................................................................................................................189 15.13 Synchronous events .....................................................................................................................189 15.14 Synchronous drives......................................................................................................................190 Section 16 Program Block............................................................................................................................ 193 16.1 Introduction (informative) ...........................................................................................................193 16.2 The program construct .................................................................................................................193 16.3 Multiple programs........................................................................................................................195 16.4 Eliminating testbench races .........................................................................................................195 16.5 Blocking tasks in cycle/event mode.............................................................................................196 16.6 Program control tasks ..................................................................................................................196 Section 17 Assertions ................................................................................................................................... 198 17.1 Introduction (informative) ...........................................................................................................198 17.2 Immediate assertions....................................................................................................................198 17.3 Concurrent assertions overview...................................................................................................200 17.4 Boolean expressions ....................................................................................................................201 17.5 Sequences.....................................................................................................................................203 17.6 Declaring sequences ....................................................................................................................206 17.7 Sequence operations ....................................................................................................................208 17.8 Manipulating data in a sequence..................................................................................................224 17.9 Calling subroutines on match of a sequence................................................................................228 17.10 System functions..........................................................................................................................229 17.11 Declaring properties.....................................................................................................................229 17.12 Multiple clock support .................................................................................................................240 Accellera Extensions to Verilog-2001 SystemVerilog 3.1a Copyright 2004 Accellera. All rights reserved. xi 17.13 Concurrent assertions...................................................................................................................246 17.14 Clock resolution ...........................................................................................................................252 17.15 Binding properties to scopes or instances....................................................................................258 17.16 The expect statement ...................................................................................................................259 Section 18 Hierarchy..................................................................................................................................... 261 18.1 Introduction (informative) ...........................................................................................................261 18.2 Packages.......................................................................................................................................261 18.3 Compilation unit support .............................................................................................................265 18.4 Top-level instance........................................................................................................................266 18.5 Module declarations.....................................................................................................................267 18.6 Nested modules............................................................................................................................267 18.7 Extern modules ............................................................................................................................269 18.8 Port declarations ..........................................................................................................................270 18.9 List of port expressions................................................................................................................271 18.10 Time unit and precision ...............................................................................................................271 18.11 Module instances .........................................................................................................................272 18.12 Port connection rules ...................................................................................................................276 18.13 Name spaces ................................................................................................................................277 18.14 Hierarchical names ......................................................................................................................278 Section 19 Interfaces ..................................................................................................................................... 279 19.1 Introduction (informative) ...........................................................................................................279 19.2 Interface syntax............................................................................................................................280 19.3 Ports in interfaces.........................................................................................................................284 19.4 Modports ......................................................................................................................................285 19.5 Interfaces and specify blocks .......................................................................................................291 19.6 Tasks and functions in interfaces.................................................................................................291 19.7 Parameterized interfaces ..............................................................................................................297 19.8 Virtual interfaces..........................................................................................................................299 19.9 Access to interface objects...........................................................................................................303 Section 20 Coverage...................................................................................................................................... 305 20.1 Introduction (informative) ...........................................................................................................305 20.2 Defining the coverage model: covergroup...................................................................................306 20.3 Using covergroup in classes ........................................................................................................308 20.4 Defining coverage points .............................................................................................................309 20.5 Defining cross coverage...............................................................................................................315 20.6 Specifying coverage options ........................................................................................................319 20.7 Predefined coverage methods ......................................................................................................324 20.8 Predefined coverage system tasks and functions .........................................................................324 20.9 Organization of option and type_option members ......................................................................324 Section 21 Parameters .................................................................................................................................. 326 21.1 Introduction (informative) ...........................................................................................................326 21.2 Parameter declaration syntax .......................................................................................................327 Section 22 Configuration Libraries............................................................................................................. 330 22.1 Introduction (informative) ...........................................................................................................330 22.2 Libraries .......................................................................................................................................330 Section 23 System Tasks and System Functions ........................................................................................ 331 23.1 Introduction (informative) ...........................................................................................................331 23.2 Elaboration-time typeof function.................................................................................................331 Accellera SystemVerilog 3.1a Extensions to Verilog-2001 xii Copyright 2004 Accellera. All rights reserved . 23.3 Typename function ......................................................................................................................331 23.4 Expression size system function ..................................................................................................332 23.5 Range system function.................................................................................................................333 23.6 Shortreal conversions...................................................................................................................333 23.7 Array querying system functions .................................................................................................334 23.8 Assertion severity system tasks ...................................................................................................335 23.9 Assertion control system tasks.....................................................................................................336 23.10 Assertion system functions ..........................................................................................................336 23.11 Random number system functions...............................................................................................337 23.12 Program control ...........................................................................................................................337 23.13 Coverage system functions ..........................................................................................................337 23.14 Enhancements to Verilog-2001 system tasks ..............................................................................337 23.15 $readmemb and $readmemh........................................................................................................338 23.16 $writememb and $writememh .....................................................................................................338 23.17 File format considerations for multi-dimensional unpacked arrays ............................................339 23.18 System task arguments for multi-dimensional unpacked arrays .................................................340 Section 24 VCD Data .................................................................................................................................... 342 Section 25 Compiler Directives.................................................................................................................... 343 25.1 Introduction (informative) ...........................................................................................................343 25.2 ‘define macros..............................................................................................................................343 25.3 `include ........................................................................................................................................344 Section 26 Features under consideration for removal from SystemVerilog ........................................... 345 26.1 Introduction (informative) ...........................................................................................................345 26.2 Defparam statements....................................................................................................................345 26.3 Procedural assign and deassign statements..................................................................................345 Section 27 Direct Programming Interface (DPI) ....................................................................................... 347 27.1 Overview......................................................................................................................................347 27.2 Two layers of the DPI ..................................................................................................................348 27.3 Global name space of imported and exported functions..............................................................349 27.4 Imported tasks and functions .......................................................................................................349 27.5 Calling imported functions ..........................................................................................................355 27.6 Exported functions .......................................................................................................................356 27.7 Exported tasks..............................................................................................................................357 27.8 Disabling DPI tasks and functions...............................................................................................357 Section 28 SystemVerilog Assertion API .................................................................................................... 359 28.1 Requirements ...............................................................................................................................359 28.2 Extensions to VPI enumerations..................................................................................................359 28.3 Static information ........................................................................................................................360 28.4 Dynamic information ...................................................................................................................363 28.5 Control functions .........................................................................................................................366 Section 29 SystemVerilog Coverage API .................................................................................................... 368 29.1 Requirements ...............................................................................................................................368 29.2 SystemVerilog real-time coverage access ...................................................................................369 29.3 FSM recognition ..........................................................................................................................374 29.4 VPI coverage extensions..............................................................................................................377 Section 30 SystemVerilog Data Read API .................................................................................................. 381 30.1 Introduction (informative) ...........................................................................................................381 Accellera Extensions to Verilog-2001 SystemVerilog 3.1a Copyright 2004 Accellera. All rights reserved. xiii 30.2 Requirements ...............................................................................................................................381 30.3 Extensions to VPI enumerations..................................................................................................382 30.4 VPI object type additions.............................................................................................................383 30.5 Object model diagrams ................................................................................................................385 30.6 Usage extensions to VPI routines ................................................................................................387 30.7 VPI routines added in SystemVerilog .........................................................................................388 30.8 Reading data ................................................................................................................................389 30.9 Optionally unloading the data......................................................................................................399 30.10 Reading data from multiple databases and/or different read library providers ...........................399 30.11VPI routines extended in SystemVerilog.....................................................................................402 30.12VPI routines added in SystemVerilog .........................................................................................403 Section 31 SystemVerilog VPI Object Model............................................................................................. 407 31.1 Introduction (informative) ...........................................................................................................407 31.2 Instance .......................................................................................................................................409 31.3 Interface ......................................................................................................................................410 31.4 Program........................................................................................................................................410 31.5 Module (supersedes IEEE 1364-2001 26.6.1) ............................................................................411 31.6 Modport ......................................................................................................................................412 31.7 Interface tf decl ............................................................................................................................412 31.8 Ports (supersedes IEEE 1364-2001 26.6.5) .................................................................................413 31.9 Ref Obj.........................................................................................................................................414 31.10 Variables (supersedes IEEE 1364-2001 section 26.6.8) .............................................................416 31.11 Var Select (supersedes IEEE 1364-2001 26.6.8).........................................................................418 31.12 Typespec ......................................................................................................................................419 31.13 Variable Drivers and Loads (supersedes IEEE 1364-2001 26.6.23) ...........................................421 31.14 Instance Arrays (supersedes IEEE 1364-2001 26.6.2) ................................................................421 31.15 Scope (supersedes IEEE 1364-2001 26.6.3) ...............................................................................422 31.16 IO Declaration (supersedes IEEE 1364-2001 26.6.4) .................................................................423 31.17 Clocking Block ...........................................................................................................................424 31.18 Class Object Definition................................................................................................................425 31.19 Constraint, constraint ordering, distribution, ...............................................................................426 31.20 Constraint expression...................................................................................................................427 31.21 Class Variables ...........................................................................................................................428 31.23 Named Events (supersedes IEEE 1364-2001 26.6.11) ................................................................430 31.24 Task, Function Declaration (supersedes IEEE 1364-2001 26.6.18)............................................431 31.25 Alias Statement ...........................................................................................................................432 31.26 Frames (supersedes IEEE 1364-2001 26.6.20)............................................................................433 31.27 Threads.........................................................................................................................................434 31.28 tf call (supersedes IEEE 1364-2001 26.6.19) ..............................................................................435 31.29 Module path, path term (supersedes IEEE 1364-2001 26.6.15) .................................................436 31.30 Concurrent assertions ..................................................................................................................437 31.31 Property Decl ..............................................................................................................................437 31.32 Property Specification .................................................................................................................438 31.33 Multiclock Sequence Expression ................................................................................................439 31.34 Sequence Declaration .................................................................................................................440 31.35 Sequence Expression ..................................................................................................................441 31.36 Attribute (supersedes IEEE 1364-2001 26.6.42) ........................................................................442 31.37 Atomic Statement (supersedes IEEE 1364-2001 26.6.27) .........................................................443 31.38 If, if else, return, case, do while (supersedes IEEE 1364-2001 26.6.35, 26.6.36).......................444 31.39 waits, disables, expect, foreach (supersedes IEEE 1364 26.6.38) ...............................................445 31.40 Simple expressions (supersedes IEEE 1364-2001 26.6.25) ........................................................446 31.41 Expressions (supersedes IEEE 1364-2001 26.6.26) ....................................................................447 31.42 Event control (supersedes IEEE 1364-2001 26.6.30)..................................................................448 Accellera SystemVerilog 3.1a Extensions to Verilog-2001 xiv Copyright 2004 Accellera. All rights reserved . 31.43 Event stmt (supersedes IEEE 1364-2001 26.6.27) .....................................................................448 31.44 Process (supersedes IEEE 1364-2001 26.6.27) ..........................................................................449 31.45 Assignment (supersedes IEEE 1364-2001 26.6.28) ...................................................................449 Annex A Formal Syntax.............................................................................................................................. 451 Annex B Keywords ...................................................................................................................................... 488 Annex C Std Package ................................................................................................................................. 490 Annex D Linked Lists................................................................................................................................. 492 Annex E DPI C-layer .................................................................................................................................. 498 Annex F Include files .................................................................................................................................. 523 Annex G Inclusion of Foreign Language Code ......................................................................................... 529 Annex H Formal Semantics of Concurrent Assertions ............................................................................ 533 Annex I sv_vpi_user.h................................................................................................................................ 544 Annex J Glossary ........................................................................................................................................ 553 Annex K Bibliography................................................................................................................................. 555 Index 557

2019-01-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除