一個電路能跑到多少M的時鍾呢?
這和電路的設計有密切聯系(組合邏輯的延時),我們知道電路器件都是由一定延遲的,所以信號的仿真很重要。如果延遲時間大於時鍾,就會導致時序違例,出現邏輯錯誤。
項目要求300M怎么實現呢?
學習涉及如下:
- 建立時間保持時間;
- 電路延時
- 時鍾頻率
- 關鍵路徑
- 流水線設計來提高CLK
首先來看下D觸發器
一、D觸發器時序分析
上升沿前后對D有一定要求,稱為上升時間和保持時間
電路都是存在延時的:
時鍾頻率最高可達多少:
由系統的延時時間情況決定。
降低關鍵路徑的延時時間,如組合邏輯的時間來提高系統可運行的頻率。
優化設計方案:
乘法器變成:選擇器+加法器
+
由此我們可以看出,電路的設計決定了延時時間的大小。一般而言乘法器會占用比加法器更多的延遲時間。所以設計中盡量降低乘法器的個數,來降低組合邏輯造成的延時。
接下來,我們來學習一下,如何通過軟件仿真來檢查系統是否滿足時序要求,及系統的當前頻率是否可以正常實現功能。
二、仿真操作
(1) 編譯
(2) 查看RTL電路
(3)編譯--時序分析器
產生時序網表
(1) 添加約束,告訴軟件時鍾是多少等
(2) 先產生時鍾
點擊run
雙擊報告
建立時間不滿足
想知道哪里不滿足 哪個路徑延時比較大,點擊下面,
列出了所有不滿足的路徑
正常大於等於0
修改時序約束:
通過以上學習,我們認識到了,系統的時鍾頻率不是可以隨意設定的很高的,它有系統設計的結構造成的延時時間來決定(組合邏輯)。
我們可以通過降低乘法器的個數,采用流水線的設計方法來提高系統可達到的最高時鍾。
並通過了軟件仿真來驗證當前頻率是否能保證系統正常運行,滿足時序要求。
轉載自:http://blog.csdn.net/fengyuwuzu0519/article/details/72599432?locationNum=14&fps=1