2.1 概述
這章主要內容是ASIC設計時的一些建議,這些建議獨立于EDA和工藝,主要針對模塊設計和存盤器介面,
2.2 同步設計
同步設計特點:單個主時鐘和單個主置位/復位信號驅動設計中所有時序器件,
同步設計:ASIC設計時域控制最安全的方法,
2.2.1 避免使用使用行波計數器,
行波計數器:將觸發器輸出作為其他觸發器的時鐘輸入端,由于資料相對時鐘會有延遲,所以不推薦這種使用方式,

2.2.2 門控時鐘
門控單元會導致時鐘偏移,并會引入尖峰脈沖單元作用于觸發器,
可能仿真正常,綜合出問題,

2.2.3 雙邊沿或混合邊沿時鐘

缺點:為使用同步復位和使用插入掃描鏈這樣的測驗方法帶來麻煩,增加了確認關鍵信號路徑的難度,
不過有時候為了追求性能還是會使用雙邊沿,如DDR,
2.2.4 用觸發器驅動另一個觸發器的異步復位端

第二級輸出同時受時鐘邊沿和復位信號印象,違反了同步設計原理,
2.3 推薦的設計技術
要理解綜合工具如何對不同的HDL編碼風格和結果進行解釋(硬體思維),其會影響設計門數和時序性能,
2.3.1 避免在設計中出現組合環路
所有反饋回路都應包含暫存器,組合環路違背了同步設計原理,
組合環路使不可綜合的,


解決方法:引入一個觸發器或者暫存器,
許多設計工具中,組合環路都會導致無休止的回圈計算,所以EDA可能以不同的方式把組合環路打斷,導致于原始設計意圖不一致,
2.3.2 避免數字設計中的延遲鏈
延遲鏈:兩個或多個單扇入單扇出的連續節點產生延遲,
使用場景:異步設計中,解決其他組合邏輯導致的競爭條件,
缺點:增加設計對操作環境的敏感性,降低設計的可靠度,增加移植到不同器件結構上的難度,
避免使用延時鏈,需要在設計中使用同步技術取代異步技術,
2.3.3 避免使用異步脈沖產生器
兩種脈沖產生的方法(純異步):
1、同一個信號接兩輸入與門或者或門,其中一個取反或者加延遲鏈,脈寬取決于兩個信號相對延遲,(相當于人為增加毛刺寬度)
2、暫存器輸出延遲后驅動同一個暫存器的異步復位端,
異步產生的脈沖寬度常常為綜合和布局布線軟體帶來困難,實際脈寬只有在布局布線之后,布線和傳播延遲已知時才能確定,所以在創建HDL時很難得到可靠的延遲值,且PVT環境,工藝脈寬都會變,且STA不能驗證脈寬,驗證作業會變得困難,
PVT環境:壓力、體積、溫度(Pressure-Volume-Temperature),
這里多諧振蕩器翻譯成多振子有點怪怪的,
由于涉及對脈沖數量的控制,所以多脈沖結構會比脈沖產生器引起更多問題,多脈沖也增加了設計的頻率,
推薦使用的同步脈沖產生器:

這個結構脈寬總是于時鐘周期寬度相等,可以用時序分析驗證,易于移植,獨立于工藝,
always@(posedge clk) begin q2<=q1; q1<=d; end assign Pulse=q1&~q2;
不過感覺這里還是有點問題,經過觸發器后觸發信號延后了一個周期,脈沖應該也延后一個周期才對,
類似的,可以在觸發輸入末端產生脈沖的脈沖產生器,

2.3.4 避免使用鎖存器
這是一個老生常談的問題了,在其他的書里已經看到了很多次,

圖中電路X和Y同時拉高,形成了一個類似組合環路的結構,會使電路振蕩,原因:Latch的觸發信號高電平時,輸出對于輸入來說是“透明的”,
STA分析器通常會做出與鎖存器透明有關的錯誤假設:要么發現偽路徑,要么丟失真正的關鍵路徑,暫存器本身時序也是模糊的,這樣的代碼很難移植或者復用,
鎖存器常常使電路不可測,
FPGA是暫存器密集型電路,所以使用latch會占用更多資源,
不完整的if或者case會導致意料外的的latch的生成(因為組合電路要保持之前的值就得用latch),
對于某些不支持Latch的FPGA,就會綜合出組合環路代替Latch,

圖中電路有鎖存資料的能力,但是可能違背建立時間和保持時間的要求,而且很難發現,
Latch也并不是完全沒用,事實上可以用Latch挪用周且或者借用時間來滿足關鍵路徑的要求,
2.3.5 避免使用雙邊沿時鐘

優點:給定時鐘速率下達到兩倍的吞吐量,
缺點:違反了同步電路的原理并將造成一系列的問題,
問題:
![]()

等效同步電路:


上述等價是在時鐘占空比為50%時成立的,如果時鐘非對稱占空比可能導致違背建立和保持時間,掃描路徑也不能容易地通過觸發器,
使用條件:對性能/速度要求很高、且無法承受使用等效同步電路在DFT和驗證方面帶來的額外開支,
優點:
1、提升性能,
2、過高的時鐘頻率會給許多介面帶來問題,
3、降低功耗,
除非等效同步電路無法完成所期望的性能時,設計人員才應該使用雙邊沿時鐘,
這里補充一個芯片功耗公式:

第一項為動態功耗,與負載電容、供電電壓的平方和作業頻率成正比,
第二項為靜態功耗主要是漏電帶來的功耗,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/532588.html
標籤:其他
