0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ASIC單個模塊的設(shè)計和優(yōu)化思路

ruikundianzi ? 來源: 硅農(nóng) ? 作者: 硅農(nóng) ? 2022-10-12 15:27 ? 次閱讀

ASIC設(shè)計中詳細設(shè)計方案的確定非常重要,同樣的設(shè)計,別人可以用比你小30%的面積和少30%的處理時間來實現(xiàn),這才是設(shè)計工程師的價值體現(xiàn)之處。任何設(shè)計在最開始的時候都是一頭霧水,場景復(fù)雜,各種耦合。我們要做的是將所有的場景都整理出來,然后想辦法進行歸一。任何一開始覺得不可能做到的任務(wù)最后都能找到解決方法。這本來看似是沒有規(guī)律的世界,但人類就是去不斷尋找和發(fā)現(xiàn)這個物質(zhì)世界的運行規(guī)律。當然,即使第一版設(shè)計我們盡可能的考慮到了更多的場景和實現(xiàn)方案,但是最后實現(xiàn)階段還是會有一些考慮不周全和不合理的實現(xiàn),由于時間成本原因,決定放到下一版再修改。這個過程就叫做優(yōu)化!那么,如何優(yōu)化一個設(shè)計?

找大寄存器組

首先是找設(shè)計中的大寄存器組,寄存器是面積較大的基本單元了,寄存器的數(shù)量決定了設(shè)計整體的面積數(shù)量級。小容量的存儲用regfile,一般寄存器組用到了上千bit,就要考慮是否用RAM。上萬bit的就是不合理的設(shè)計。

看到大寄存器組是要重點關(guān)注優(yōu)化的對象,要注意的是,寄存器組是可以隨意在任意bit取值的,RAM是需要一拍一拍的讀取的,所以需要在高并行度和面積之前做折中(trade off)。數(shù)據(jù)通路寄存器打拍過多,肯定不合理,一個數(shù)據(jù)打一拍最起碼是幾十個bit,打多拍,就上百bit。而換一個設(shè)計思路,在控制上多少邏輯,控制信號+計數(shù)器,多做幾組也就攏共幾十個bit的樣子。比如前一級模塊傳過來的數(shù)據(jù)和valid信號,數(shù)據(jù)是要晚幾拍才使用,應(yīng)該做成前一級模塊先給valid信號,數(shù)據(jù)晚幾拍再來,避免數(shù)據(jù)打拍。在數(shù)據(jù)通路上出現(xiàn)一些組合邏輯路徑并不長,打了一拍,這樣雖然時序會更好,但是最后增加的面積來說并不值得,所以多余的寄存器打拍完全可以“干”掉。

重定時

Retiming就是重新調(diào)整時序,例如電路中遇到復(fù)雜的組合邏輯,延遲過大,電路時序不滿足,這個時候采用流水線技術(shù),在組合邏輯中插入寄存器加流水線,進行操作,面積換速度思想。

fa9d9b74-49e2-11ed-a3b6-dac502259ad0.png

任何的數(shù)字電路都可以等效成組合邏輯加D觸發(fā)器打拍,兩個D觸發(fā)器之間的組合邏輯路徑?jīng)Q定了,系統(tǒng)的工作頻率,決定芯片的性能。所以為了提高芯片的工作頻率,使用流水線技術(shù)在組合邏輯中插入寄存器。

fab3d7f4-49e2-11ed-a3b6-dac502259ad0.png

插入寄存器的位置需要慎重選擇,不同的位置數(shù)據(jù)的打拍所消耗的寄存器的數(shù)量也不同,比方說你在位置a消耗25bit寄存器,位置b消耗20bit寄存器,能省則省。

fac5f1f0-49e2-11ed-a3b6-dac502259ad0.png

前面插入寄存器的位置使得comb1的延遲為30ns,comb2的延遲為10ns,系統(tǒng)的最高工作頻率是由最長路徑?jīng)Q定的。也就是說你這個系統(tǒng)最高工作頻率的周期,不小于30ns,前面是插入pipeline,這個時候我們不改變時序,采用重定時技術(shù),使得各個組合邏輯之間的延遲相當。

瘋狂復(fù)用

找計算邏輯相同的單元,復(fù)用最常見的就是計數(shù)器,能用一個計數(shù)器實現(xiàn)的,就別用倆,底層模塊之間相同的邏輯盡量使用一塊電路,減少重復(fù)的設(shè)計?;具壿媶卧墓蚕砼e例,面積:加法器 > 比較器 > 選擇器。加比選。乘法器本質(zhì)上也是全加器。所以就有先選后比,先選后加,先選后乘。畫個圖意思一下。

fad5549c-49e2-11ed-a3b6-dac502259ad0.png

faea6a76-49e2-11ed-a3b6-dac502259ad0.png

這里的加法器可以換成任何邏輯或模塊。

乘法器分時復(fù)用度提高

在計算模塊中乘法器也是非常大的一部分邏輯,一個設(shè)計要考慮PPA最優(yōu),就要考慮乘法器的數(shù)量多少以及復(fù)用能不能最大化,追求最好的設(shè)計是整個數(shù)據(jù)通路中乘法器空閑不下來。乘法器調(diào)用方法,一般是在乘法器的輸入保證寄存器輸入,結(jié)果輸出到各個復(fù)用模塊時打一拍再使用??梢宰龀稍谶M行完乘法運算后,就打拍,這樣消耗的寄存器會少很多。畫個圖意思一下(單bit)。

faff1246-49e2-11ed-a3b6-dac502259ad0.png

修改前

fb1c8f1a-49e2-11ed-a3b6-dac502259ad0.png

修改后修改完后的寄存器省了很多,但是乘法器的輸出寄存器負載會變大,不過后端綜合時約束了max_fan_out工具會自動插buffer和復(fù)制寄存器,經(jīng)過實測還是會節(jié)省很多面積,把一些優(yōu)化工作可以交給工具去做,了解它,信任它,使用它。

RAM的復(fù)用

從設(shè)計的整體來看,RAM也可以復(fù)用,前面處理用過的ram,現(xiàn)在空下來,后面能否用。

最后

總結(jié)一下ASIC單個模塊的設(shè)計/優(yōu)化思路,列出所有條件,然后歸一,復(fù)用,面積與速度呼喚的思想貫穿始終。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1200

    瀏覽量

    120510
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5343

    瀏覽量

    120385

原文標題:如何優(yōu)化一個設(shè)計?

文章出處:【微信號:IP與SoC設(shè)計,微信公眾號:IP與SoC設(shè)計】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    基于ASIC單個模塊的設(shè)計/優(yōu)化思路

    ASIC設(shè)計中詳細設(shè)計方案的確定非常重要,同樣的設(shè)計,別人可以用比你小30%的面積和少30%的處理時間來實現(xiàn),這才是設(shè)計工程師的價值體現(xiàn)之處。
    發(fā)表于 10-12 15:28 ?440次閱讀

    怎么利用Synphony HLS為ASIC和FPGA架構(gòu)生成最優(yōu)化RTL代碼?

    相比,能夠為通信和多媒體應(yīng)用提供高達10倍速的更高的設(shè)計和驗證能力。Synphony HLS為ASIC 和 FPGA的應(yīng)用、架構(gòu)和快速原型生成最優(yōu)化的RTL。Synphony HLS解決方案架構(gòu)圖
    發(fā)表于 08-13 08:21

    GPRS優(yōu)化思路總結(jié)報告

    GPRS優(yōu)化思路總結(jié)報告:一、概述 2二、無線優(yōu)化思路 2三、(E)GPRS網(wǎng)絡(luò)資源容量分析優(yōu)化 53.1、
    發(fā)表于 07-27 21:29 ?26次下載

    基于ASIC/SoC的UART核的設(shè)計

    基于ASIC/SoC的UART核的設(shè)計 摘要:本文描述了通用異步收發(fā)機UART(Universal Asynchronous Receive Transmitter)核的一種優(yōu)化設(shè)計實現(xiàn)的設(shè)計流程。通過采用劃分功能模塊使結(jié)構(gòu)直
    發(fā)表于 06-19 09:55 ?26次下載

    ASIC,ASIC是什么意思

    ASIC,ASIC是什么意思 ASIC(Application Specific Integrated Circuits)即專用集成電路,是指應(yīng)特定用戶要求和特定電子系統(tǒng)的需要而設(shè)計、制造
    發(fā)表于 03-26 17:10 ?7583次閱讀

    GPRS優(yōu)化思路總結(jié)報告_李青春

    (E)GPRS 優(yōu)化思路通信網(wǎng)絡(luò)優(yōu)化,GSM上網(wǎng),PDCH,EDGEGPRS.
    發(fā)表于 01-14 15:21 ?4次下載

    串口WiFi模塊實現(xiàn)遠程控制電飯煲的設(shè)計思路分享.pdf

    分享一個串口WiFi模塊實現(xiàn)遠程控制電飯煲的設(shè)計思路,通過串口wifi模塊可以在手機app上遠程操控電飯煲,相比定時的效果更好!
    發(fā)表于 04-26 16:57 ?76次下載

    FPGA模塊化設(shè)計與AlteraHardCopy結(jié)構(gòu)化ASIC

    本文檔的主要內(nèi)容詳細介紹的是FPGA模塊化設(shè)計與AlteraHardCopy結(jié)構(gòu)化ASIC。
    發(fā)表于 01-20 17:03 ?6次下載
    FPGA<b class='flag-5'>模塊</b>化設(shè)計與AlteraHardCopy結(jié)構(gòu)化<b class='flag-5'>ASIC</b>

    VoLTE優(yōu)化思路干貨資料下載

    電子發(fā)燒友網(wǎng)為你提供VoLTE優(yōu)化思路干貨資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-23 08:42 ?9次下載
    VoLTE<b class='flag-5'>優(yōu)化</b><b class='flag-5'>思路</b>干貨資料下載

    日常網(wǎng)絡(luò)優(yōu)化思路資料下載

    電子發(fā)燒友網(wǎng)為你提供日常網(wǎng)絡(luò)優(yōu)化思路資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-25 08:41 ?2次下載
    日常網(wǎng)絡(luò)<b class='flag-5'>優(yōu)化</b><b class='flag-5'>思路</b>資料下載

    【GCC編譯優(yōu)化系列】實戰(zhàn)分析C代碼遇到的編譯問題及解決思路

    【GCC編譯優(yōu)化系列】實戰(zhàn)分析C工程代碼可能遇到的編譯問題及其解決思路
    的頭像 發(fā)表于 07-10 23:15 ?1427次閱讀
    【GCC編譯<b class='flag-5'>優(yōu)化</b>系列】實戰(zhàn)分析C代碼遇到的編譯問題及解決<b class='flag-5'>思路</b>

    關(guān)于手動伺服優(yōu)化調(diào)整思路分享

    常規(guī)的伺服優(yōu)化調(diào)整一般需要用到SERVO GUIDE 軟件,而對于一些不是很懂該軟件操作的客戶或者在現(xiàn)場無法進行在線聯(lián)網(wǎng)調(diào)整的情況下,手動調(diào)整就顯得比較關(guān)鍵實用,在此提供手動伺服優(yōu)化調(diào)整思路
    發(fā)表于 01-29 12:18 ?2771次閱讀

    單個MOS管可以構(gòu)成的模塊?

    單個MOS管可以構(gòu)成的模塊? 單個MOS管可以構(gòu)成各種各樣的電路模塊,這些電路模塊可以應(yīng)用在不同的領(lǐng)域,例如電力電子、通信、計算機等。本文將
    的頭像 發(fā)表于 09-18 18:20 ?1016次閱讀

    ASIC集成電路如何提高系統(tǒng)效率

    在現(xiàn)代電子系統(tǒng)中,效率和性能是衡量一個系統(tǒng)優(yōu)劣的關(guān)鍵指標。隨著技術(shù)的發(fā)展,ASIC集成電路因其高度定制化和優(yōu)化的特性,在提高系統(tǒng)效率方面發(fā)揮著越來越重要的作用。 ASIC的定義和特點 ASIC
    的頭像 發(fā)表于 11-20 15:57 ?324次閱讀

    Verilog 與 ASIC 設(shè)計的關(guān)系 Verilog 代碼優(yōu)化技巧

    Verilog與ASIC設(shè)計的關(guān)系 Verilog作為一種硬件描述語言(HDL),在ASIC設(shè)計中扮演著至關(guān)重要的角色。ASIC(Application Specific Integrated
    的頭像 發(fā)表于 12-17 09:52 ?118次閱讀