写verilog代码要有硬件的概念.doc
《写verilog代码要有硬件的概念.doc》由会员分享,可在线阅读,更多相关《写verilog代码要有硬件的概念.doc(2页珍藏版)》请在三一文库上搜索。
1、写verilog代码要有硬件的概念因为Verilog是一种硬件描述语言,所以在写Verilog语言时,首先要有所要写的module在硬件上如何实现的概念,而不是去想编译器如何去解释这个module. 比如在决定是否使用reg定义时,要问问自己物理上是不是真正存在这个register, 如果是,它的clock是什么? D端是什么?Q端是什么?有没有清零和置位?同步还是异步?再比如上面讨论的三态输出问题,首先想到的应该是在register的输出后面加一个三态门,而不是如何才能让编译器知道要赋值给一个信号为三态。同样,Verilog中没有编译的概念,而只有综合的概念。写硬件描述语言的目的是为了综合,
2、所以说要想写的好就要对综合器有很深的了解,这样写出来的代码才有效率。有些东西完全是没有意义的,像有些书上的很多程序,完全是不可综合的比如产生一个10ms方波什么的程序,用什么#10 clk,这样的语句硬件不可能做的那里面很多程序是用来verificaTIon的,不是综合的。张老师那本书用来当初级教材还是不错的,但是想通过它来掌握verilog是不够的。曾经接触过motorola苏州设计中心的一位资深工程师,他忠告了一句:就是用verilog描述电路的时候,一定要清楚它实现的电路,很多人只顾学习verilog语言,而不熟悉它实现的电路,这是设计不出好的电路来的一般写verilog code时,对
3、整个硬件的结构应该是很清楚了,最好有详细的电路图画出,时序问题等都应该考虑清楚了。可以看着图直接写code。要知道,最初Verilog是为了实现仿真而发明的.不可综合的Verilog语句也是很重要的.因为在实际设计电路时,除了要实现一个可综合的module外,你还要知道它的外围电路是怎样的,以及我的这个电路与这些外围电路能否协调工作.这些外围电路就可以用不可综合的语句来实现而不必管它是如何实现的.因为它们可能已经实际存在了,我仅是用它来模拟的.所以,在写verilog的时候应该要先明确我是用它来仿真的还是综合的.要是用来综合的话,就必须要严格地使用可综合的语句,而且不同的写法可能产生的电路会有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- verilog 代码 要有 硬件 概念
链接地址:https://www.31doc.com/p-3389432.html