什么是自恢復設計
在芯片設計過程中,通常會針對特殊情況導致芯片無法使用額外添加一些功能,使得芯片具有更好的抗干擾能力。自恢復設計應用場景很廣泛,比如、針對芯片溫度過高的處理、針對殘缺數據包的處理、針對長時間無數據響應的處理、針對各類錯誤的處理。
1、高溫保護設計
幾乎每一顆芯片都溫度監控模塊,大型芯片甚至有多個溫度監控模塊。以電腦主板為例,在CPU或者顯卡溫度升高時,散熱風扇的轉速會隨之增加,一旦芯片溫度過高,會觸發關機保護機制。這種設計僅僅是常見的被動式自恢復,而不是芯片自己主動觸發。芯片主動自恢復設計原理如下:芯片會主動監控溫度值,當溫度值進入高溫區域時,會進行主動告警,比如發出溫度中斷,從而告知管理軟件等。當溫度值進入超高溫區域,可能會導致芯片燒毀的風險時,會主動進行芯片降頻或者復位等操作。降頻操作是將時鐘頻率降低,從而降低功耗。
此設計在GPU中比較常見。復位操作是芯片自動產生邏輯復位,關閉部分或者全部功能,有效降低功耗,從而達到降低溫度的目的。
2、讀數據返回超時保護
主機讀芯片內部寄存器時,有時會出現長時間沒有返回的情況,而AXI等讀寫總線必須要有返回數據,否則會一直卡住。針對此類情況,需要讀模塊產生讀返回信號與響應信號。比如返回32’hdeaddead數據,并且給響應信號rresp賦值相應的錯誤值。例如PCIe作為Endpoint時,收到host主機的memrd讀請求時,并且將請求通過接口轉發給內部總線,如果長時間沒有收到讀數據rdata,則需要進行主動超時,自行返回rdata給主機,防止host主機因收不到rdata而卡住。
3、交互接口超時響應保護
各類芯片的低速接口通常是握手交互處理機制,在沒有保護機制的情況下,如果slave端口因為某些原因卡住,無法正確響應時,master端口也會被卡住。添加交互接口超時響應保護邏輯,如果slave接口超時沒有響應,master接口不應該被卡住,而應該能夠恢復到初始狀態,能夠發起下一次請求。特別是一個master對應多個slave時,master的自恢復尤為重要。
4、殘缺數據過濾
像MAC、PCS等模塊處理數據時,完成的數據包有包頭和包尾,完整的數據包才能進行正常的處理,而缺乏包頭或者包尾的殘缺包則會導致各類錯誤,因此需要在模塊入口處理對殘缺包進行過濾,選擇補齊或者直接拋棄不完整的數據包,保證模塊入口數據的完整性。
5、模塊卡死自恢復
芯片內部重要模塊發生錯誤(配置流程不合理等原因)會導致模塊或者整個芯片卡死,那么必須要添加自恢復設計。例如鏈表指針錯亂,接口復位長期沒有釋放,此種情況下,盡量保證模塊能夠自行恢復,能夠跳轉到初始狀態,如觸發自動初始化。
總結
芯片的考核指標不僅僅是性能達標,功能正常,可靠性同樣重要。自恢復設計能夠增強芯片的可靠性,保證芯片一些極端場景中依舊可以長期運行,是產品的加分項。一顆高品質的芯片肯定實現了各種自恢復設計。
審核編輯:湯梓紅
-
芯片
+關注
關注
454文章
50439瀏覽量
421915 -
cpu
+關注
關注
68文章
10827瀏覽量
211169 -
IC設計
+關注
關注
37文章
1292瀏覽量
103775 -
芯片設計
+關注
關注
15文章
1003瀏覽量
54814
原文標題:IC設計:5種常見的自恢復設計
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論