2.4 時鐘方案
2.4.1 內部產生的時鐘
應盡量避免內部產生時鐘,
組合邏輯產生時鐘會引入毛刺,也會引起時序方面的問題,同步時序電路資料的毛刺不會引起任何問題,而毛刺出現在時鐘輸入端或異步輸入端就會產生明顯的影響,
毛刺到達時鐘輸入端如果資料變化,會違背建立和保持時間,即使沒有違背時序要求,暫存器也可能輸出意料外的值,
毛刺可能導致計數器增加額外的計數值,如圖,

解決方法:組合邏輯輸出增加一個暫存器輸出,這個暫存器可以阻止組合邏輯產生的毛刺,

組合邏輯時鐘也會增加時鐘延遲,可能導致違背時序要求,

圖中由于時鐘偏移導致違背了建立時間,(這里應該也有問題,這圖上CLK往左移dlycombo不也違背建立時間了嗎)
一種減少時鐘偏移的方法:將產生的時鐘放到SoC中高扇出且低偏移值的時鐘樹上,
2.4.2 分頻時鐘
設計中要保證大多數時鐘來自于PLL,避免異步時鐘分頻邏輯引起的許多問題,對主時鐘分頻時應使用同步計數器或狀態機,
保證總是由暫存器直接產生分頻時鐘信號,不要使用組合邏輯避免毛刺和尖峰脈沖,
2.4.3 行波技術器
使用行波計數器對時鐘進行冪為2的分頻,
優點:使用的門更少,

缺點:對STA和綜合工具帶來麻煩,應盡量避免,
功耗較高的系統中很適合使用這種計數器,可以大量降低由邏輯或SoC所引起的峰值功耗,
2.4.4 多路時鐘
需要處理多個頻率標準的通信應用常常使用多個時鐘,

使用多路時鐘的前提:

2.4.5 同步時鐘使能和門控時鐘

優點:減少功耗,
缺點:不是同步設計,顯著增加設計時間和驗證的作業量,增加時鐘偏移并對毛刺敏感,所以能導致設計失敗,
可以使用同步的時鐘使能,用純同步的方法關閉時鐘域,但這樣時鐘樹一直保持反轉,觸發器保持內部活躍,無法降低功耗,

這里通過選通信號選擇觸發器輸入,但是并沒有真正意義上關閉觸發器,只是使其值保持,
2.5 門控時鐘方法學
同步設計風格中,功耗主要由三個部分組成

對時鐘門控能夠大幅降低觸發器的功耗,門控可以在時鐘數的根部、末端或者兩者之間的任何位置,
時鐘數幾乎消耗了整個芯片功耗的50%,所以最好在根部產生或者關閉時鐘,

使用圖2.21的方法則會使用三個多路選擇器,
2.5.1 不帶鎖存器的門控時鐘電路
使用與門、或門實作,為避免過早截斷或產生多個時鐘脈沖、應強制要求使能在時鐘上升沿到下降沿一直保持常量,該限制使得基于單時鐘觸發器的設計中不適合使用不含鎖存器的門控時鐘,(因為對使能信號有較高的要求)

圖中為過早截斷的情況,
2.5.2 基于鎖存器的門控時鐘電路

使用鎖存器就可以使門控時鐘電路不需要滿足上面的條件了,
使用與門控制上升沿有效的時鐘,反之使用或門控制,

這個電路在使能關閉時為低電平,當打開時便不會漏掉下降沿,
使用這項技術時,使能信號必須在半時鐘周期內產生,(鎖存器只在半個時鐘周期內具有鎖存功能)
要保證設計中所有時鐘能同時使能以便DFT,可以再加一個或門,

2.5.3 門控信號
特殊部分使用門控信號提高能效,(感覺這里的意思就是減少組合邏輯的功耗)
2.5.4 重組資料路徑以減少轉換傳播

這里的意思應該是把容易產生毛刺或者會經常翻轉電平的電路放在電路后級,可以減少轉換傳播從而降低功耗,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/535182.html
標籤:其他
