(原創) wire與reg的差異? (初級) (IC Design) (Verilog)

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。

See Also
(原創) 如何使用integer型別? (IC Design) (Verilog)

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

你可能感兴趣的:(Verilog)