在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

科普Register file和SRAM

sakobpqhz6 ? 來源:IP與SOC設(shè)計 ? 2023-03-31 10:56 ? 次閱讀

前兩期,我們分別對OTP和MTP,RAMROM進行了比較。這一次,我們來談?wù)凪emory Compiler,以及通過它生成的Register file和SRAM。

什么是Memory Compiler ?

Memory Compiler,內(nèi)存編譯器。顧名思義,是用來生成不同容量memory的工具,輸入參數(shù),我們就可以得到生成的文件。生成的文件包括:前端設(shè)計verilog模型、邏輯綜合的時序庫、后端需要的電路網(wǎng)表和LEF/GDS版圖文件、其他DFT驗證相關(guān)的、datasheet手冊等等。

Memory Compiler由供應(yīng)商提供,往往是不通用的,界面也不盡相同。同一個廠商的不同工藝下,Memory Compiler不同。相同工藝,不同廠商,Memory Compiler也不同。內(nèi)存編譯器通常是供應(yīng)商的知識產(chǎn)權(quán),其功能是根據(jù)客戶的需求生成各種類型的memory。

一般的Memory Compiler提供五個ram腳本(rf_sp,sram_sp,rf_tp,sram_dp,rom)。這意味著可以生成1 Port Register file、Single Port SRAM、2 Port Register file、Dual Port SRAM以及ROM。不同的廠商或許還擁有特殊工藝。

一般來說,MC只生成常用的memory,特殊的往往需要定制或者組合。

考慮到面積和性能,又可以劃分為High Speed和High Density等等。

d9d4004e-cec7-11ed-bfe3-dac502259ad0.jpg

圖源知乎:SMIC 的Memory Compiler,由Artisan公司提供

Memory Compiler使用介紹

在使用Memory Compiler時,請務(wù)必確保你的RAM從頭到位的規(guī)格與設(shè)定都相同,否則會造成一些不可避免的錯誤。

首先在RTL代碼階段,要用到RAM就要用到verilog代碼,此時不需要著急產(chǎn)生其他后階段的必要數(shù)據(jù),因為RTL代碼階段只需要行為級模型即可。

當進入門級代碼后,RAM compiler就要產(chǎn)生其他的相關(guān)數(shù)據(jù)了,同時要考慮RAM版圖的位置與方向。由于重大的設(shè)計不會一蹴而就,所以有兩個重點,第一個是每次使用RAM compiler時都一定要讓它產(chǎn)生特性設(shè)置文檔,避免忘記自己做過的設(shè)定。第二件事是對應(yīng)的文件名要定義好,否則RAM的方向不同但是又用到了相同的文件名,就會把原始數(shù)據(jù)覆蓋掉。

RTL階段

在RTL階段主要只是產(chǎn)生verilog行為級和設(shè)置文件。因為在RTL階段不需要考慮RAM的位置信息。Memory Compiler提供多種選擇,在這個階段,選擇生成RF或是SRAM,以及確定端口數(shù)量。如果容量比較大的話,相同設(shè)置下,單端口比雙端口面積要小,速度也要快,功耗要低。

綜合與布局布線階段

為了避免重新啟用Memory Compiler與以前設(shè)置有出入,所以最好一次性將Memory Compiler能夠產(chǎn)生的相關(guān)數(shù)據(jù)一并輸出。在這里,Memory Compiler還需要產(chǎn)生3種數(shù)據(jù)。

.LIB 該數(shù)據(jù)是RAM的時序信息文件

.VCLEF 布局布線工具需要使用的物理信息文件

.SPEC RAM的注釋文件

在布局布線前,需要考慮RAM的長與寬,估計它的位置與方向,盡量讓功能想關(guān)的模塊靠近一些。

將產(chǎn)生的.LIB文件轉(zhuǎn)換成.DB文件,就可以把Memory Compiler生成的RAM加入到代碼中進行綜合了。在綜合工具的腳本中的serch_path下加入RAM的DB文件地址即可。

以上為Memory Compiler大致的使用流程,不同的工具在細節(jié)上或許有所區(qū)別,但大體流程如此。

d9ed9efa-cec7-11ed-bfe3-dac502259ad0.png

蘇州騰芯微電子的Memory Compiler界面

接下來,我們來聊一聊,生成的memory——Register file和SRAM。

Register file與SRAM的比較

首先,厘清一下概念上的問題,Register file和很多的registers不是同一個概念。我們在IC設(shè)計里談到register時,常常是指D觸發(fā)器,而Register file是一種memory。

那么,同為Memory Compiler生成,RF和SRAM有什么區(qū)別呢?在比較中,不同規(guī)格相比較顯然不夠客觀,也不能讓我們更清晰地認識到它們的差異。

在比較前,我們需要先把端口的概念搞清楚:

1 port,single port:單端口,讀寫同端口,需要WE控制輸入輸出

2 port:雙端口,讀寫分開,輸入輸出端口固定,可以不用WE控制

dual port:同樣是雙端口,但讀寫端口不固定,且都可讀可寫

da10c1f0-cec7-11ed-bfe3-dac502259ad0.png

RF 的端口示意圖

da2180b2-cec7-11ed-bfe3-dac502259ad0.png

SRAM 的端口示意圖

所以我們應(yīng)當把1P RF和SP SRAM,2P RF和DP SRAM比較,才有意義。

1 Port Register file 和 Single Port SRAM

同為單端口,從外部端口看,難以區(qū)分1P RF和SP SRAM的區(qū)別,但是我們可以從以下幾個方面,來進行區(qū)分。

首先我們以Memory Size:512*32的1P RF和SP SRAM為例。

da37186e-cec7-11ed-bfe3-dac502259ad0.png

此為1P RF

da49f98e-cec7-11ed-bfe3-dac502259ad0.png

此為SP SRAM

從datasheet直觀上來看,SRAM比Register file多了OEN(輸出使能)。

除此之外,Register file和SRAM兩者相比,SRAM的最大容量比RF要大。相同配置下,RF的面積更大,功耗更低。

在mem比較小的情況下用RF劃算,并且同樣的mem,RF的長寬比會更小,方便后端floorplan。大容量的時候,SRAM的速度是有優(yōu)勢的。并且SRAM速度快,面積小。同樣大小的RF,面積就很大了,速度也慢下來了。

所以簡單來說,小容量選RF,大容量選SRAM。

da68721a-cec7-11ed-bfe3-dac502259ad0.jpg

2P Register file 和 Dual Port SRAM

比起1P RF與SP SRAM的比較,2P RF與DP SRAM的差異較為直觀。

2P RF有一個輸入數(shù)據(jù)總線,一個輸出的數(shù)據(jù)總線。DP SRAM有兩個數(shù)據(jù)輸入總線,兩個數(shù)據(jù)輸出總線。

換句話說,2P RF是一組信號,讀寫端口固定;而DP SRAM則有兩組信號,讀寫不分開。

且兩組信號,每組都有自己的地址,輸入數(shù)據(jù)總線,輸出數(shù)據(jù)總線,時鐘,讀/寫控制。這兩組可以分別往存儲單元寫,或從存儲單元讀出。讀可以一直讀,寫時數(shù)據(jù)可能存儲單元數(shù)據(jù)更新,數(shù)據(jù)也可能輸出端口。

DP SRAM就好像2個SP SRAM共用存儲單元。

具體的應(yīng)用,需要結(jié)合設(shè)計人員和項目自身的需求來選用。小容量,地址少的用RF。有兩個外設(shè)要同時讀寫SRAM的,就要用DP SRAM。涉及到具體的選取,則需要由設(shè)計人員自己做判斷了。

以下為讀寫時序圖:

da7c434e-cec7-11ed-bfe3-dac502259ad0.jpg

圖源:數(shù)字IC自修室

審核編輯:湯梓紅

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

    關(guān)注

    6

    文章

    768

    瀏覽量

    114914
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    3063

    瀏覽量

    74374
  • Memory
    +關(guān)注

    關(guān)注

    1

    文章

    77

    瀏覽量

    29118
  • Register
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    13958
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1642

    瀏覽量

    49316

原文標題:科普:Register file和SRAM

文章出處:【微信號:IC學(xué)習(xí),微信公眾號:IC學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    什么是Register Renaming(寄存器重命名)/R

    什么是Register Renaming(寄存器重命名)/Resource contention(資源沖突)  Register Renaming: (寄存器重命名)把一個指令的輸出
    發(fā)表于 02-04 10:35 ?2408次閱讀

    什么是Register Pressure(寄存器不足) /

    什么是Register Pressure(寄存器不足) / Register Renaming(寄存器重命名)?   Register Pressure(寄存器不足) 軟件算法執(zhí)行時所需
    發(fā)表于 02-04 11:02 ?1354次閱讀

    什么是Remark/Register Contention/

    什么是Remark/Register Contention/Register Pressure   Remark: (芯片頻率重標識)芯片制造商為了方便自己的產(chǎn)品定級,把大部分CPU都設(shè)
    發(fā)表于 02-04 11:32 ?502次閱讀

    什么是File

    什么是File   英文原義:File Protocol 中文釋義:本地文件傳輸協(xié)議 注  解:File協(xié)議主要用于
    發(fā)表于 02-23 11:41 ?1067次閱讀

    SRAM,SRAM原理是什么?

    SRAM,SRAM原理是什么? 靜態(tài)隨機存取存儲器SRAMSRAM主要用于二級高速緩存(Level2 C ache)。它利用晶體管來存儲數(shù)據(jù)。與DRAM相比,
    發(fā)表于 03-24 16:11 ?8835次閱讀

    C語言register變量和extern及static等知識總結(jié)

    一、register變量 關(guān)鍵字regiter請求編譯器盡可能的將變量存在CPU的寄存器中。有以下幾點注意的地方。 register變量必須是能被CPU寄存器所接受的類型,這通常意味著
    發(fā)表于 11-21 10:20 ?5次下載

    Linux命令file的案例說明

    有人的地方,就有江湖。人往往是最難揣摩的。如果有一面神奇的魔鏡能看出一個人的內(nèi)心,世界會不會變得更加美好呢? Linux 的世界里,file 就是這樣一面魔鏡,它可以看到每個文件的內(nèi)心。file
    的頭像 發(fā)表于 12-24 11:41 ?2061次閱讀

    ADAU7118 Automated Register Window Builder XML File

    ADAU7118 Automated Register Window Builder XML File
    發(fā)表于 01-31 13:31 ?1次下載
    ADAU7118 Automated <b class='flag-5'>Register</b> Window Builder XML <b class='flag-5'>File</b>

    Land Pattern File

    Land Pattern File
    發(fā)表于 02-02 08:25 ?4次下載
    Land Pattern <b class='flag-5'>File</b>

    進行design partition時,為什么推薦使用register out的方式

    在進行design partition時,相比register in更推薦register out,請問為什么呢?如果前后兩個模塊時鐘域不同,register in會有什么問題?
    的頭像 發(fā)表于 08-18 11:54 ?1292次閱讀

    Gowin RAM Based Shift Register用戶指南

    電子發(fā)燒友網(wǎng)站提供《Gowin RAM Based Shift Register用戶指南.pdf》資料免費下載
    發(fā)表于 09-15 14:29 ?0次下載
    Gowin RAM Based Shift <b class='flag-5'>Register</b>用戶指南

    Gowin RAM Based Shift Register參考設(shè)計

    電子發(fā)燒友網(wǎng)站提供《Gowin RAM Based Shift Register參考設(shè)計.pdf》資料免費下載
    發(fā)表于 09-15 14:28 ?1次下載
    Gowin RAM Based Shift <b class='flag-5'>Register</b>參考設(shè)計

    科普Register fileSRAM

    Memory Compiler由供應(yīng)商提供,往往是不通用的,界面也不盡相同。同一個廠商的不同工藝下,Memory Compiler不同。相同工藝,不同廠商,Memory Compiler也不同。內(nèi)存編譯器通常是供應(yīng)商的知識產(chǎn)權(quán),其功能是根據(jù)客戶的需求生成各種類型的memory。
    的頭像 發(fā)表于 03-28 11:41 ?7710次閱讀

    電源關(guān)斷模塊中的retention register低功耗設(shè)計

    在電源關(guān)斷模塊有可能要求register對關(guān)斷前的數(shù)據(jù)進行鎖存或者在電源打開后要求對鎖存的數(shù)據(jù)進行恢復(fù),這就需要特殊的單元Retention Register
    發(fā)表于 06-29 12:46 ?571次閱讀
    電源關(guān)斷模塊中的retention <b class='flag-5'>register</b>低功耗設(shè)計

    科普EEPROM 科普 EVASH Ultra EEPROM?科普存儲芯片

    科普EEPROM 科普 EVASH Ultra EEPROM?科普存儲芯片
    的頭像 發(fā)表于 06-25 17:14 ?668次閱讀
    主站蜘蛛池模板: 亚洲人成网站色7799在线播放 | 深夜国产成人福利在线观看女同 | 草草影院私人免费入口 | 夜夜春宵翁熄性放纵30 | 色女人在线视频 | 2021久久精品国产99国产精品 | 99热成人精品热久久669 | 射久久| 最新日本免费一区二区三区中文 | 色播在线| 天天摸天天做天天爽天天弄 | 久草视频这里只有精品 | 国内一级野外a一级毛片 | 最新亚洲人成网站在线影院 | 午夜欧美在线 | 欧美午夜视频一区二区 | 99亚洲精品卡2卡三卡4卡2卡 | 国产日韩三级 | 成人啪啪免费视频 | 婷婷九月| 久久精品综合网 | 日韩怡红院 | 国产精品国产主播在线观看 | 手机看片a永久免费看大片 手机毛片 | 日本黄页网站 | 日本黄色小视频在线观看 | 日本免费大黄在线观看 | 国产深夜福利在线观看网站 | 男男h啪肉np文总受 男男h全肉耽污 | 天天干天天操天天拍 | 国模私拍福利一区二区 | 天天天天干| 操他射他影院 | 轻点灬大ji巴太粗太长了啊h | 色综合激情 | 精品久久久久国产免费 | 荡女妇边被c边呻吟久久 | 欧美肥妇性| 欧美三级视频在线 | 天天狠狠弄夜夜狠狠躁·太爽了 | 天天射天天爽 |