亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        存儲(chǔ)體編譯和布局協(xié)同的片上緩存設(shè)計(jì)方法

        2024-04-08 11:39:12劉必慰宋雨露
        關(guān)鍵詞:優(yōu)化方法設(shè)計(jì)

        劉必慰,熊 琪,楊 茗,宋雨露

        (1. 國防科技大學(xué) 計(jì)算機(jī)學(xué)院, 湖南 長沙 410073; 2. 國防科技大學(xué) 理學(xué)院, 湖南 長沙 410073; 3. 國防科技大學(xué) 軍政基礎(chǔ)教育學(xué)院, 湖南 長沙 410073)

        現(xiàn)代微處理器和各種系統(tǒng)級(jí)芯片(system on chip,SoC)中都具有大容量片上緩存[1-2],它們一般由存儲(chǔ)體編譯器生成的靜態(tài)隨機(jī)存取存儲(chǔ)器(static random-access memory, SRAM)存儲(chǔ)體構(gòu)成。這些單個(gè)存儲(chǔ)體容量一般在1 Kbit~1 Mbit。多個(gè)這樣的存儲(chǔ)體,經(jīng)過粘合邏輯合并和選擇來形成各種大容量的Cache、Scratch Pad Memory、共享緩沖池等片上緩存結(jié)構(gòu)。片上緩存的容量不斷增大,其面積可達(dá)到全芯片面積的30%~45%或更高,功耗占比也隨之提高,同時(shí)片上緩存往往也處于關(guān)鍵時(shí)序路徑,決定了全芯片頻率。因此進(jìn)一步提高片上緩存的性能,并降低其功耗是提高芯片性能的關(guān)鍵。

        現(xiàn)有的片上緩存的設(shè)計(jì)可劃分為三個(gè)獨(dú)立的階段:①存儲(chǔ)體編譯與生成方面,有學(xué)者研究了SRAM存儲(chǔ)體本身的定制優(yōu)化設(shè)計(jì)[3-4],有的學(xué)者提出了高性能低功耗存儲(chǔ)編譯技術(shù)[5-6],也有學(xué)者在存儲(chǔ)體集成上開展研究——Gupta等提出使用異構(gòu)的存儲(chǔ)體來優(yōu)化片上存儲(chǔ)子系統(tǒng)的總體面積[7],閆戰(zhàn)磊等提出了超大容量存儲(chǔ)體的定制優(yōu)化技術(shù)[8];②在存儲(chǔ)體布局方面,主要依賴于設(shè)計(jì)者人工進(jìn)行,Cadence公司的mix placer工具[9]實(shí)現(xiàn)了自動(dòng)存儲(chǔ)體布局的功能,相比人工布局在性能和功耗上均有改進(jìn);③存儲(chǔ)體相關(guān)粘合邏輯優(yōu)化,通過現(xiàn)有的綜合和布局布線工具實(shí)現(xiàn)。

        然而,現(xiàn)有的設(shè)計(jì)流程中這三個(gè)階段是相互割裂的。存儲(chǔ)體編譯時(shí)僅考慮存儲(chǔ)體的功能,存儲(chǔ)體布局時(shí)僅考慮存儲(chǔ)體的幾何尺寸,優(yōu)化粘合邏輯時(shí)才考慮存儲(chǔ)體的時(shí)序。這使得在存儲(chǔ)體編譯時(shí)不得不預(yù)留較大的時(shí)序余量,從而造成不必要的面積和功耗開銷。

        為了實(shí)現(xiàn)高性能、低功耗的片上緩存,本文提出了一種存儲(chǔ)體編譯和布局協(xié)同的設(shè)計(jì)方法,在存儲(chǔ)體編譯的同時(shí)就考慮該存儲(chǔ)體的位置信息,從而準(zhǔn)確地制定存儲(chǔ)體編譯的時(shí)序要求,編譯出速度符合要求、功耗最優(yōu)化的SRAM存儲(chǔ)體。

        1 片上緩存構(gòu)成與存儲(chǔ)體編譯空間

        片上緩存的一般結(jié)構(gòu)如圖1所示,主體是SRAM存儲(chǔ)體組成的存儲(chǔ)陣列;存儲(chǔ)陣列外是粘合邏輯——包括一系列的合并、選擇、寄存操作,或者總線協(xié)議轉(zhuǎn)換邏輯;最后輸出到外部單元或總線上。

        (a) 邏輯結(jié)構(gòu)(a) Logical structure

        (b) 物理結(jié)構(gòu)(b) Physical structure

        由于存儲(chǔ)體具有較大的尺寸,不同位置的存儲(chǔ)體與粘合邏輯的距離各不相同。例如圖1中角部的存儲(chǔ)體與粘合邏輯的距離較遠(yuǎn),需要預(yù)留較大的時(shí)序余量,并采用速度快的存儲(chǔ)體。然而中心區(qū)域的存儲(chǔ)體與粘合邏輯的距離很近,如果和角部的存儲(chǔ)體采用相同的編譯配置則會(huì)導(dǎo)致功耗和面積的浪費(fèi)。因此,對(duì)不同位置的存儲(chǔ)體采用不同的編譯配置能夠減小面積、功耗并同時(shí)提升速度。一般來說存儲(chǔ)體的編譯配置包括閾值替換、尺寸調(diào)整、長寬比變形、拆分/合并四種,如圖2所示。

        (a) 基本配置(a) Basic configuration

        (b) 改變列多選(b) Change the MUX

        (c) 拆分(c) Splitting

        1.1 閾值替換

        集成電路中經(jīng)常采用閾值替換的方式在速度和功耗之間權(quán)衡。低閾值的晶體管速度快但功耗高;高閾值的晶體管速度慢但功耗低,在標(biāo)準(zhǔn)單元里較為常見。閾值替換的優(yōu)點(diǎn)是,其占用的面積相同,不需要調(diào)整芯片的布局規(guī)劃,可以在物理設(shè)計(jì)的任意階段替換插入。

        存儲(chǔ)體編譯的基本配置如圖2(a)所示,SRAM主要包含bit cell陣列、敏感放大及輸入/輸出(input/output, IO)、地址譯碼三個(gè)部分。閾值替換一般僅對(duì)地址譯碼以及IO等外圍電路進(jìn)行閾值替換。bit cell的閾值替換會(huì)影響其噪聲容限等特性,因此一般不進(jìn)行閾值替換。

        1.2 尺寸調(diào)整

        尺寸調(diào)整也是速度和功耗之間權(quán)衡的一種常見方式。一般來說增大尺寸可以提高速度,但同時(shí)也會(huì)帶來面積和功耗的增加。尺寸調(diào)整以bit cell為核心進(jìn)行,根據(jù)性能要求增大bit cell的尺寸,然后根據(jù)bit cell的尺寸,調(diào)整設(shè)計(jì)譯碼器、IO、列多選器(multiplexer, MUX)等外圍電路的尺寸。這一方法將會(huì)顯著改變存儲(chǔ)體面積,從而導(dǎo)致預(yù)布局規(guī)劃(floorplan)的改變。

        1.3 長寬比變形

        存儲(chǔ)體可以保持容量不變,但使長寬比發(fā)生改變。方法之一是改變存儲(chǔ)體內(nèi)的列多選,例如使得bit cell陣列的行數(shù)減半但列數(shù)加倍,再增加一個(gè)列多選來選擇輸出數(shù)據(jù),如圖2(b)所示。另一種保持容量不變的方法是改變存儲(chǔ)體的深度與寬度,例如深度減半而寬度加倍或反過來。也有以上兩種方法的組合。

        總的來說,這些方法能保持存儲(chǔ)體的容量不變、總面積基本不變,但會(huì)明顯改變字線和位線的長度,使得速度和功耗都有所變化。

        1.4 拆分/合并

        拆分有兩種方式:一種是保持深度不變、拆分位寬,這種情況下,拆分后的小存儲(chǔ)體可以保持和原大存儲(chǔ)體的譯碼電路相同,僅僅將bit cell陣列寬度縮減一半;另一種是保持位寬不變、拆分深度,如圖2(c)所示,這種情況下,bit cell陣列高度將縮減一半,地址縮減1位,譯碼電路隨之縮減。拆分后的兩個(gè)小存儲(chǔ)體都保持原有數(shù)據(jù)位寬,使得數(shù)據(jù)線增加一倍,在外部需要加多選器在多個(gè)小存儲(chǔ)體之間選擇數(shù)據(jù),這將對(duì)邏輯設(shè)計(jì)、布線都有影響。這兩種方法都會(huì)縮短字線或位線,從而提高速度。但是拆分后,各個(gè)體都需要譯碼電路等外圍電路,且需要增加存儲(chǔ)體間的間距,因此面積和功耗會(huì)變大。反之可以將2個(gè)(或多個(gè))存儲(chǔ)體合并為1個(gè),從而減小面積和功耗,但會(huì)導(dǎo)致性能降低。

        2 協(xié)同編譯方法

        本文打破原有位置無關(guān)的同構(gòu)SRAM存儲(chǔ)體編譯方法,提出了一種存儲(chǔ)體位置驅(qū)動(dòng)的存儲(chǔ)體協(xié)同編譯的流程。對(duì)遠(yuǎn)離粘合邏輯的存儲(chǔ)體通過拆分、低閾值替換、增大尺寸等方式來加快速度;對(duì)于靠近粘合邏輯的存儲(chǔ)體通過合并、高閾值替換、減小尺寸等方式來減小面積和功耗,達(dá)到時(shí)序、功耗和面積的均衡。其具體過程如圖3所示。

        圖3 協(xié)同編譯流程Fig.3 Cooperative compilation flow

        設(shè)計(jì)包含粘合邏輯和存儲(chǔ)體兩部分。首先基于對(duì)粘合邏輯進(jìn)行floorplan,得到粘合邏輯的布局區(qū)域,在其中選取存儲(chǔ)體的匯聚點(diǎn),作為存儲(chǔ)體距離計(jì)算的基準(zhǔn)點(diǎn)——匯聚點(diǎn)一般為粘合邏輯區(qū)域的中心,或中心靠近端口的位置,同時(shí)在floorplan中將粘合邏輯區(qū)域設(shè)為已布局區(qū)域。

        其次,在預(yù)布局規(guī)劃中選擇離匯聚點(diǎn)最近的未布局區(qū)域的位置作為第一個(gè)存儲(chǔ)體布局位置。根據(jù)它相對(duì)于匯聚點(diǎn)的距離計(jì)算出對(duì)于布局在該位置存儲(chǔ)體的時(shí)序要求。

        然后,窮舉編譯可能的存儲(chǔ)體,在包括深度、位寬、閾值、尺寸、長寬比等幾個(gè)維度上窮舉編譯,在其中選擇時(shí)序滿足要求且單bit面積和單bit功耗最小的一個(gè)。

        最后,根據(jù)選出的存儲(chǔ)體的尺寸,在floorplan中標(biāo)記該區(qū)域?yàn)橐巡季謪^(qū)域,并記錄已布局的總?cè)萘?。繼續(xù)選擇下一個(gè)最近位置進(jìn)行存儲(chǔ)體編譯,直到已布局存儲(chǔ)體總?cè)萘窟_(dá)到預(yù)期。這樣就得到了所有存儲(chǔ)體的配置和布局位置。

        經(jīng)過以上流程,存儲(chǔ)體可能有拆分和合并,原有的粘合邏輯可能需要微調(diào)。重新進(jìn)行寄存器傳輸級(jí)(register transfer level,RTL)集成、綜合,并對(duì)前序步驟生成的存儲(chǔ)體位置進(jìn)行布局布線,最終完成整個(gè)設(shè)計(jì)。

        下面對(duì)位置相關(guān)的存儲(chǔ)時(shí)序計(jì)算和窮舉編譯的過程再進(jìn)一步詳細(xì)說明。

        2.1 位置相關(guān)時(shí)序約束確定

        存儲(chǔ)體協(xié)同編譯過程如圖4所示,如果已完成存儲(chǔ)體1和存儲(chǔ)體2的編譯與布局,可以在未布局區(qū)域找到存儲(chǔ)體3的布局位置,那么它的時(shí)序要求可分為兩項(xiàng):①粘合邏輯到存儲(chǔ)體3的建立時(shí)間要求;②存儲(chǔ)體3到粘合邏輯的建立時(shí)間要求??杀硎緸橐韵聝蓚€(gè)不等式:

        圖4 存儲(chǔ)體協(xié)同編譯過程Fig.4 Cooperative memory compilation process

        tqm+tgt+td+tsr+tmg

        (1)

        tqr+tgf+td+tsm+tmg

        (2)

        其中:tqm和tsm分別是存儲(chǔ)體clock到q的延時(shí)和存儲(chǔ)體的建立時(shí)間,二者是需要求解的目標(biāo);tgt和tgf分別是粘合邏輯上組合邏輯的延時(shí);tqr和tsr分別是粘合邏輯上寄存器clock到q的延時(shí)和建立時(shí)間,它們可以從時(shí)序庫中查表得到;tmg是預(yù)留的一定余量,以抵消實(shí)際布線時(shí)少量的繞線和串?dāng)_的影響;td是匯聚點(diǎn)到存儲(chǔ)體距離造成的延時(shí),可以采用與曼哈頓距離相關(guān)的延時(shí)模型進(jìn)行計(jì)算[10];tp是電路工作的時(shí)鐘周期。以上兩個(gè)不等式變形即可得到存儲(chǔ)體的時(shí)序要求:

        tqm

        (3)

        tsm

        (4)

        還可以考慮使用有效時(shí)鐘偏斜的設(shè)計(jì)簡化約束,那樣時(shí)鐘樹構(gòu)建將更加復(fù)雜,但不影響本方法實(shí)現(xiàn),因此不再做進(jìn)一步的討論。

        2.2 存儲(chǔ)體窮舉編譯

        存儲(chǔ)體窮舉編譯同時(shí)考慮深度、位寬、閾值、尺寸、長寬比等幾個(gè)維度上可能的存儲(chǔ)體實(shí)例生成,這是一個(gè)很大的搜索空間,為了在有限時(shí)間內(nèi)完成搜索,需要對(duì)這些維度作出一些限制。

        在寬度和深度方面,要求它們都必須是2的冪次,且總?cè)萘坎怀^1 Mbit,這樣便于RTL代碼編寫和物理實(shí)現(xiàn),也不會(huì)跳過那些明顯優(yōu)化的配置;在閾值方面,考慮高閾值、普通閾值、低閾值三種選項(xiàng);在尺寸方面,一般選擇較小和較大的兩種bit cell尺寸,更精細(xì)的尺寸選項(xiàng)在實(shí)際工程中也不會(huì)帶來更多優(yōu)化;在多選器方面,一般也為2的冪次,且最大不超過16,因?yàn)槌^16時(shí)存儲(chǔ)器的速度會(huì)有較大程度降低。

        在以上約束下,存儲(chǔ)器的編譯配置一般能縮減在30~120種之間,從而窮舉編譯能夠在3~4個(gè)小時(shí)內(nèi)完成。

        3 實(shí)驗(yàn)與結(jié)果

        針對(duì)第2節(jié)的方法,可以用一個(gè)實(shí)例來具體說明其過程并展示其效果。這是一個(gè)共有48 Mbit存儲(chǔ)容量的片上共享緩沖池,深度為24 576,寬度為256,具有AXI總線協(xié)議接口與片上其他部件互聯(lián)。

        圖5是采用文獻(xiàn)[5,8]中的傳統(tǒng)方法進(jìn)行的SRAM布局。該共享緩沖內(nèi)部通過96個(gè)同構(gòu)的數(shù)據(jù)存儲(chǔ)體(data memory,DMem)。表1為不同編譯配置下存儲(chǔ)體的指標(biāo),分別在最差低溫(worst case low temperature,WCL)和最大漏流(max leakage,ML)兩個(gè)端角下進(jìn)行了分析。為了實(shí)現(xiàn)500 MHz的頻率選擇如表1中第一行的存儲(chǔ)體配置方式,其容量為4 096×128 bit,列多選為4。其面積為4.75×4.2 μm2=19.95 μm2,關(guān)鍵路徑延時(shí)為2.01 ns。

        圖5 傳統(tǒng)方法的SRAM布局Fig.5 The SRAM layout in traditional methodology

        表1 不同編譯配置下存儲(chǔ)體的指標(biāo)

        采用協(xié)同編譯優(yōu)化的方法得到如圖6所示的存儲(chǔ)體的配置和布局,選取的匯聚點(diǎn)是粘合邏輯中間靠上的區(qū)域。其中包含四種不同存儲(chǔ)體來實(shí)現(xiàn)這一片上緩存,每種存儲(chǔ)體的具體參數(shù)如表1所示。DMemX2H是深度相比DMem增大2倍且進(jìn)行了高閾值電壓(high voltage threshold,HVT)單元替換的存儲(chǔ)體,它布局在最靠近中心標(biāo)準(zhǔn)單元的區(qū)域,在ML端角下該存儲(chǔ)體的單位動(dòng)態(tài)功耗相比原存儲(chǔ)體有24.7%的減少,單位漏流功耗與基準(zhǔn)設(shè)計(jì)基本相當(dāng)。DMemX2是深度相比DMem增大2倍的存儲(chǔ)體,它布局在DMemX2H的外圍,它的單位動(dòng)態(tài)功耗相比原DMem也有8.1%的降低。DMemR容量與DMem相同,只是深度增加了一倍、寬度降低了一半,可以減少存儲(chǔ)體端口的布線擁塞,同時(shí)其功耗也有所降低,DMemR放置在DMemX2的更外圍,用于跨越更遠(yuǎn)的距離。DMemRL是在DMemR的基礎(chǔ)上進(jìn)一步做了低閾值電壓(low voltage threshold,LVT)單元替換,僅用在左下和右下兩個(gè)角上,用于提高這兩個(gè)關(guān)鍵位置的速度。

        圖6 協(xié)同設(shè)計(jì)的SRAM布局Fig.6 The SRAM layout in co-operative methodology

        在嘗試了增大尺寸的配置后發(fā)現(xiàn)這種配置單位功耗過大,所以在所有位置都沒有選用。

        基準(zhǔn)設(shè)計(jì)和優(yōu)化設(shè)計(jì)的一些關(guān)鍵指標(biāo)的對(duì)比如表2和表3所示。在面積方面優(yōu)化設(shè)計(jì)減小了8.6%,原因是采用了很多DmemX2容量的存儲(chǔ)體,消除了存儲(chǔ)體之間的縫隙,從而使全芯片寬度有所縮減。在關(guān)鍵路徑延時(shí)上優(yōu)化設(shè)計(jì)縮短了7.5%,這是因?yàn)樵诮遣坎捎昧薒VT的存儲(chǔ)體。在實(shí)例數(shù)方面,在設(shè)計(jì)的各個(gè)階段優(yōu)化設(shè)計(jì)都要明顯少于基準(zhǔn)設(shè)計(jì),這是因?yàn)椴捎昧薉MemX2以及DMemR存儲(chǔ)體使得多選單元都在存儲(chǔ)體內(nèi)部,減少了外部所需要的多選單元及布線,因此單元數(shù)減少了9.0%。類似的原因,布線線長也減少了8.9%。

        表2 設(shè)計(jì)指標(biāo)對(duì)比

        表3 設(shè)計(jì)實(shí)例數(shù)對(duì)比

        最后,對(duì)比基準(zhǔn)設(shè)計(jì)和優(yōu)化設(shè)計(jì)的功耗情況。功耗分析都按500 MHz的頻率進(jìn)行,數(shù)據(jù)路徑設(shè)定為0.2的翻轉(zhuǎn)率,時(shí)鐘路徑設(shè)定為2的翻轉(zhuǎn)率,時(shí)鐘門控系數(shù)為0.6。分別在WCL和ML兩個(gè)端角下進(jìn)行了分析,具體結(jié)果如表4所示。優(yōu)化設(shè)計(jì)WCL下總功耗降低了9.0%,漏流功耗與基準(zhǔn)設(shè)計(jì)基本相當(dāng)。優(yōu)化設(shè)計(jì)ML下總功耗降低了9.9%,漏流功耗降低了5.8%。

        表4 功耗對(duì)比

        本文的方法已應(yīng)用于一款SoC芯片片上共享緩存的物理設(shè)計(jì)。SoC芯片如圖7所示,其中,片上共享緩存實(shí)測達(dá)到了預(yù)期的頻率,全芯片功耗符合預(yù)期。

        圖7 集成了優(yōu)化片上緩存的SoC芯片F(xiàn)ig.7 SoC chip integrated optimized on-chip cache

        4 結(jié)論

        本文提出了一種存儲(chǔ)體編譯和布局協(xié)同的片上緩存設(shè)計(jì)方法。該方法基于存儲(chǔ)體在芯片上的不同位置,分別采用拆分/合并、尺寸調(diào)整、閾值替換和長寬比變形等多種方法優(yōu)選SRAM存儲(chǔ)體編譯實(shí)例,從而同時(shí)帶來性能的提升、功耗和面積的減小。實(shí)驗(yàn)結(jié)果表明,該方法相比傳統(tǒng)的設(shè)計(jì)方法能夠降低約9.9%的功耗,同時(shí)縮短7.5%的關(guān)鍵路徑延時(shí)。

        猜你喜歡
        優(yōu)化方法設(shè)計(jì)
        超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
        民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
        關(guān)于優(yōu)化消防安全告知承諾的一些思考
        一道優(yōu)化題的幾何解法
        瞞天過?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        可能是方法不對(duì)
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        男男互吃大丁视频网站| 蜜桃av噜噜一区二区三区9| 香蕉成人伊视频在线观看| 国产a∨天天免费观看美女| 日本无码人妻波多野结衣| 毛片网站视频| 成在线人免费视频播放| 国产精品久色婷婷不卡| 无码精品国产一区二区三区免费| 无码任你躁久久久久久久| 免费人成又黄又爽的视频在线| 亚洲综合网一区二区三区| 一本色道久久88加勒比| 亚洲欧美中文日韩在线v日本| 亚洲欧美一区二区成人片| 人妻激情另类乱人伦人妻| 日韩免费一区二区三区在线| 国产一区二区三区免费主播| 中文字日产幕码三区的做法步| 一本色道无码道在线观看| 国产精品久久婷婷六月丁香| 久久精品国产亚洲AV成人公司| 中文无码制服丝袜人妻AV| 99久久精品国产91| 色综合久久久久综合体桃花网| 国产av精国产传媒| 女同av在线观看网站| 日本中文字幕一区二区在线观看| 国产av一区二区三区在线播放| 亚洲欧美综合区自拍另类| 四虎精品免费永久在线| 国产av在线观看91| 熟妇人妻精品一区二区视频免费的| 日韩av无码久久一区二区| 永久黄网站色视频免费| 九月色婷婷免费| 国产精品黑丝美腿美臀| 屁屁影院ccyy备用地址| 精品十八禁免费观看| av天堂在线免费播放| 久久成人成狠狠爱综合网|