FPGA 基礎篇 如何理解時序電路

2021-09-11 18:02:43 字數 1692 閱讀 7990

一、概述

時序邏輯示意圖,如下圖所示。資料從乙個暫存器出來,經過組合邏輯到達下乙個暫存器。

在學習數位電路的過程中,我們都知道時序邏輯,但是大家對時序邏輯真的了解嗎?

(1)組合邏輯電路的缺點在哪?

(3)純組合邏輯電路完成不了什麼功能?

(2)為什麼需要時鐘和暫存器呢?

帶著這三個疑問我們來認識一下時序邏輯電路。

二、同步時序邏輯電路的作用

1. 時序邏輯電路對於組合邏輯的毛刺具有容忍度,從而改善電路的時序特性。同時電路的更新由時鐘控制。

比如,在組合邏輯中當各路訊號的路徑長度不一樣時那麼組合邏輯的輸出就會出現毛刺。如下圖所示。f0和f1到達最後乙個或門的路徑長度不一樣,那麼在f端就會出現毛刺。

來自書籍《verilog hdl高階數字設計》

毛刺訊號如下圖影印部分所示,由於c經過乙個非門才到達下面的與門,故f1相對於f0有延遲,那麼在f端就會造成毛刺,這個毛刺就是有短暫的時間輸出為0。

來自書籍《verilog hdl高階數字設計》

但是利用時序電路,資料a,b,c的觸發是在時鐘沿,輸出訊號f也是在時鐘沿去採,而這個時鐘沿到來的時間是在f輸出穩定之後,故對電路的毛刺具有容忍度。如下圖,可以看到最後暫存器的輸出o就不存在毛刺。

這個特性使得在時序邏輯電路裡面,電路的輸出被採集到暫存器裡面,並送往下一級電路的時候都是確定的而且是準確的,從而整體電路都是隨著時鐘沿在更新。

2. 純組合邏輯只能由當前輸入決定當前輸出,而不能實現帶反饋的邏輯,如下圖所示,這樣的話,你的電路就會陷入死迴圈而無法使用。

比如做乙個計數器,如果我們用如下的組合邏輯的方式描述就會出問題。

而這種帶反饋的邏輯,必須要通過暫存器把輸出暫存起來,再由時鐘沿去控制資料的反饋更新,這樣電路才有意義。

故計數器的正確描述方式如下。

fpga如何約束走線 FPGA時序約束的幾種方法

對自己的設計的實現方式越了解,對自己的設計的時序要求越了解,對目標器件的資源分布和結構越了解,對eda工具執行約束的效果越了解,那麼對設計的時序約束目標就會越清晰,相應地,設計的時序收斂過程就會更可控。從最近一段時間工作和學習的成果中,我總結了如下幾種進行時序約束的方法。按照從易到難的順序排列如下 ...

fpga如何約束走線 FPGA時序約束的6種方法

fpga 時序約束的 種方法對自己的設計的實現方式越了解,對自己的設計的時序要求越了解,對目標器件的資源分布和結構越了解,對 eda工具執行約束的效果越了解,那麼對設計的時序約束目標就會越清晰,相應地,設計的時序收斂過程就會更 可控。下文總結了幾種進行時序約束的方法。按照從易到難的順序排列如下 0....

fpga如何約束走線 FPGA時序約束的幾種方法

對自己的設計的實現方式越了解,對自己的設計的時序要求越了解,對目標器件的資源分布和結構越了解,對eda工具執行約束的效果越了解,那麼對設計的時序約束目標就會越清晰,相應地,設計的時序收斂過程就會更可控。從最近一段時間工作和學習的成果中,我總結了如下幾種進行時序約束的方法。按照從易到難的順序排列如下 ...