systemverilog中module与program的区别

Posted 宙斯黄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了systemverilog中module与program的区别相关的知识,希望对你有一定的参考价值。

我们知道,verilog语法标准中是没有program的,program是systemverilog语法标准新增的内容。

 

那么,为什么要新增一个program呢?主要考量是基于电路的竞争与冒险。

 

为避免仿真和设计竞争问题(race condition),systemverilog中引入了program的概念。

所有与设计相关的线程在module中执行,而与验证有关的线程则在program中运行。在仿真过程中,这两种线程运行在不同的时间步(time step),从而解决了竞争问题。

 

 

moduleprogram的区别:

 

Program和module的另一个区别是module允许嵌套,而program不允许。

 

 

 

 

以上是关于systemverilog中module与program的区别的主要内容,如果未能解决你的问题,请参考以下文章

参数化模块 (SystemVerilog)

SystemVerilog $unit 编译单元介绍

Systemverilog中的队列操作

浅析SystemVerilog之package

system verilog断言可以写在rtl中吗

vcs编译verilog/sysverilog并执行