Verilog HDL是在C语言的基础上发展起来的,因而它保留了C语言所独有的结构特点。
为便于对Verilog HDL有个大致的认识,在这里将它与C语言的异同作一比较:
1.C语言是由函数组成的,而Verilog HDL则是由称之为module的模块组成的。
2.C语言中的函数调用通过函数名相关联,函数之间的传值是通过端口变量实现的。相应地,Verilog HDL中地模块调用也通过模块名相关联,模块之间的联系同样通过端口之间的连接实现,所不同的是,它反映的是硬件之间的实际物理连接。
3.C语言中,整个程序的执行从main函数开始。Verilog HDL没有相应的专门命名模块,每一个module模块都是等价的,但必定存在一个顶层模块,它的端口中包含了芯片系统与外界的所有I/O信号,这个顶层模块从程序的组织结构上讲,类似于C语言中的main函数,但Verilog HDL中所有module模块都是并发运行的,这一点必须从本质上与C语言加以区别。
4.wire和reg区别,wire表示直通,即只要输入有变化,输出马上无条件地反映;reg表示一定要有触发,输出才会反映输入。直观点说,wire对应于连续赋值,如assign。reg对应于过程赋值,如always,initial。
5.Verilog HDL中对注释语句的定义与C语言类似。
阅读(7742) | 评论(0) | 转发(0) |