verilog编译后的代码分析
本专栏主要分析verilog代码经过iverilog工具编译之后得到的vpp脚本的语法和其背后的逻辑,为后续进行仿真分析建立稳固的基础知识。
胡巧信
这个作者很懒,什么都没留下…
展开
-
“采样延时赋值”和“延时采样赋值”
综上,采样延时赋值是先采样,再延时,最后赋值。延时采样赋值是线延时,再采样,最后赋值。原创 2023-06-05 09:43:34 · 106 阅读 · 0 评论 -
wire和reg的相互驱动或者赋值
从上述四个方向分析,方向其实是无所谓的,有所谓的是赋值方式,比如assign的左边,必须是net,因为assign就表示了这是一个连续functor,右边改变,左边要传递的,你reg是时序触发的,传不动。综上所述,方向不限,但reg的赋值必须是时序方式,wire的赋值方式必须是net方式连续赋值,functor模式,合情合理。wire–>reg 可以!reg1->reg2,可以,reg的采样取决于触发,相当于特定时刻我采样,没啥问题。reg->wire ,可以,只要reg变了,wire才变。原创 2023-06-05 09:40:14 · 1305 阅读 · 0 评论 -
reg和wire的赋值,驱动,都可以在什么区域进行?
wire只可以在声明区、initial区被驱动,并且只能用wire a=1;或者assign a=c&b;reg可以在声明区、initial区、always区被赋值,为什么?怎么理解这句话:wire线网不占仿真内存空间。原创 2023-06-05 09:34:16 · 317 阅读 · 1 评论 -
wire用常数值和表达式驱动
wire用非常数值驱动。wire用常数值驱动。原创 2023-06-05 09:33:07 · 37 阅读 · 1 评论 -
电平、边沿、多边沿触发
【代码】电平、边沿、多边沿触发。原创 2023-06-05 09:30:47 · 76 阅读 · 1 评论 -
verilog线程
【代码】verilog线程。原创 2023-06-05 09:27:02 · 56 阅读 · 1 评论 -
变量作用域
每个线程,都有其作用域,决定它能看到的变量的范围。原创 2023-06-05 09:23:03 · 43 阅读 · 1 评论 -
reg变量的定义和初始化
reg变量的定义和初始化原创 2023-06-05 09:19:57 · 415 阅读 · 1 评论 -
如何编译一个verilog文件,得到可执行脚本,并对其进行分析?
verilog编译原创 2023-06-05 09:14:36 · 157 阅读 · 1 评论