ASIC設計的“四大神器”,折疊(Fold ),展開(Expand),重定時(Retiming),資源共享(Resource Sharing) 。
折疊&展開
Fold & Expand,折疊和展開
一拍得出結果,使用了兩個乘法器,面積大,速度快。
兩拍得出結果,使用了1個乘法器,面積小,速度慢。
這個過程就叫做折疊,展開可以看作是折疊的逆操作,在實際工程中,我們根據需求適當的使用這個兩個技術,實現設計最優化。
提高速度和降低面積是兩個矛盾的目標,所以在具體的設計中要折中(Trade-off),一個好的設計追求的極致是讓乘法器等占用面積大的邏輯盡量不要空閑。高度復用。
重定時
筆試題中常有問,什么是Retiming技術?
Retiming就是重新調整時序,例如電路中遇到復雜的組合邏輯,延遲過大,電路時序不滿足,這個時候采用流水線技術,在組合邏輯中插入寄存器加流水線,進行操作,面積換速度思想。
我們知道任何的數字電路都可以等效成組合邏輯加D觸發器打拍,兩個D觸發器之間的組合邏輯路徑決定了,系統的工作頻率,決定芯片的性能。所以為了提高芯片的工作頻率,使用流水線技術在組合邏輯中插入寄存器。
插入寄存器的位置需要慎重選擇,不同的位置數據的打拍所消耗的寄存器的數量也不同,比方說你在位置a消耗25bit寄存器,位置b消耗20bit寄存器,能省則省。
前面插入寄存器的位置使得comb1的延遲為30ns,comb2的延遲為10ns,系統的最高工作頻率是由最長路徑決定的。也就是說你這個系統最高工作頻率的周期,不小于30ns,前面是插入pipeline,這個時候我們不改變時序,采用重定時技術,使得各個組合邏輯之間的延遲相當。
資源共享
從設計的角度來說,最常見的就是計數器,能用一個計數器實現的,就別用倆,底層模塊之間相同的邏輯盡量使用一塊電路,減少重復的設計。
基本邏輯單元的共享舉例,面積:加法器 > 比較器 > 選擇器。俗稱加比選。
乘法器本質上也是全加器。
所以就有先選后比,先選后加,先選后乘。
畫個圖意思一下。
最基本的層次共享是基于基本元器件的共享,綜合工具能做較多的自動優化,在布局布線時還能進一步提高資源利用率,通常情況下是在同一模塊內進行優化,但如果你的工具足夠強大,則可以打破模塊邊界進行優化。像很多模塊被打散揉在一起布線是可能的,從后端看也看不到模塊邊界。工具的布線優化人工都很難干預。
最后
以上是從基本電路設計的角度上和數據通路上進行歸類,控制邏輯的話,簡單來說一個字,狀態機大法好。這個問題我們下次再聊。
責任編輯:lq
-
asic
+關注
關注
34文章
1206瀏覽量
120653 -
寄存器
+關注
關注
31文章
5363瀏覽量
120932
原文標題:干貨 | ASIC設計之“四大神器”
文章出處:【微信號:wc_ysj,微信公眾號:旺材芯片】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論