組合邏輯和時序邏輯有什么區別


根據邏輯電路的不同特點,數字電路可以分為:組合邏輯和時序邏輯。

1 組合邏輯:

組合邏輯的特點是任意時刻的輸出僅僅取決於該時刻的輸入,與電路原本的狀態無關,邏輯中不牽涉跳變沿信號的處理,組合邏輯的verilog描述方式有兩種:

(1):always @(電平敏感信號列表)

always模塊的敏感列表為所有判斷條件信號和輸入信號,但一定要注意敏感列表的完整性。在always 模塊中可以使用if、case 和for 等各種RTL 關鍵字結構。由於賦值語句有阻塞賦值和非阻塞賦值兩類,建議讀者使用阻塞賦值語句“=”。always 模塊中的信號必須定義為reg 型,不過最終的實現結果中並沒有寄存器。這是由於在組合邏輯電路描述中,將信號定義為reg型,只是為了滿足語法要求。

(2):assign描述的賦值語句。

信號只能被定義為wire型

2 時序邏輯:

時序邏輯是Verilog HDL 設計中另一類重要應用,其特點為任意時刻的輸出不僅取決於該時刻的輸入,而且還和電路原來的狀態有關。電路里面有存儲元件(各類觸發器,在FPGA 芯片結構中只有D 觸發器)用於記憶信息,從電路行為上講,不管輸入如何變化,僅當時鍾的沿(上升沿或下降沿)到達時,才有可能使輸出發生變化。

與組合邏輯不同的是:

(1)在描述時序電路的always塊中的reg型信號都會被綜合成寄存器,這是和組合邏輯電路所不同的。

(2)時序邏輯中推薦使用非阻塞賦值“<=”。

(3)時序邏輯的敏感信號列表只需要加入所用的時鍾觸發沿即可,其余所有的輸入和條件判斷信號都不用加入,這是因為時序邏輯是通過時鍾信號的跳變沿來控制的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM