2012年10月22日 星期一

wire與reg的差異?

源自於 http://www.cnblogs.com/oomusou/archive/2007/10/10/919339.html

Abstract
Verilog初學者最常見的問題:『什麼時候該用wire?什麼時候又該用reg?』
Introduction
大體上來說,wire和reg都類似於C/C++的變數,但若此變數要放在begin...end內,該變數就須使用reg,在begin...end之外,則使用wire。

另外使用wire時,須搭配assign;reg則不必。

input,ouput,inout預設值都是wire。
若wire和reg用錯地方,compiler都會提醒,所以不必太擔心。

一個很重要的觀念,在Verilog中使用reg,並不表示合成後就是暫存器(register)。若在組合電路中使用reg,合成後仍只是net,唯有在循序電路中使用reg,合成後才會以flip-flop形式表示成register。


Reference
[1] 數位系統實習 Quartus II,陸自強, 儒林出版社, 2007
[2] Verilog數位電路設計範例寶典(基礎篇), 鄭羽伸, 儒林出版社, 2006

沒有留言:

張貼留言

WOKWI DHT22 & LED , Node-Red + SQLite database

 WOKWI DHT22 & LED , Node-Red + SQLite database Node-Red程式 [{"id":"6f0240353e534bbd","type":"comment&...