首頁 資訊 > 科技 > 正文

實際底層的RAM尺寸到底是多少呢?就是32x119嗎?


(資料圖片)

ASIC設(shè)計中,我們使用FIFO或者RAM的時候經(jīng)常會用到校驗位,例如奇偶校驗或者ECC(海明碼)校驗,當(dāng)然,也有可能不使用任何校驗位。那么我們需要一個深度為32,數(shù)據(jù)位寬為119bit的ram(cfg_32x119_ram_wrapper),那么實際底層的ram尺寸到底是多少呢?就是32x119 嗎?大概率不是。

1.一個ram wrapper可能是拼接而成的

RAM的位寬和深度不是任意的,是根據(jù)設(shè)計人員的需求,然后由工具產(chǎn)生相應(yīng)的ram。我們需要的是32x119的ram,實際分配給設(shè)計人員的可能是兩個32x64的ram,深度和寬度都可能存在冗余。Ram的產(chǎn)生通常有兩種方式,由設(shè)計人員或者中端人員提供ram信息列表。至少包含如下信息:Memory生成工具會根據(jù)實際需要的位寬,深度,讀寫時鐘頻率才進(jìn)行決策,產(chǎn)生相應(yīng)的Memory。

RAM_NAMERAM_TYPEDEPTHWIDTHECC/PARITYWclk_freqRdclk_req
afifo_16x72_wrapper1r1w1672112001000

一顆大的ram可能是有多個小的ram拼接起來的。在布局布線時,多個小的方形的ram大概率會比長條形狀的ram更容易擺放(不絕對)。

2.ram/fifo 校驗位需要額外的數(shù)據(jù)位寬

如圖所示為1r1w的ram為例,cfg_32x119_ram_wrapper為verilog代碼直接調(diào)用層次的ram_wrapper,表示了一個深度為32,數(shù)據(jù)位寬為119bit的ram。ram_asic.v為真實的ram IP。其中119bit的數(shù)據(jù)位寬緊張ECC計算需要7bit的校驗位,因此物理IP最少需要126bit的ram IP。通常memory產(chǎn)生工具會更具時鐘頻率,深度位寬等因素對ram進(jìn)行切分,因此本例中,使用了2個32x64的ram ip。

在data_in寫入ram_asic模塊之前,會經(jīng)過ecc_gen模塊,產(chǎn)生7bit的ecc校驗位,隨著數(shù)據(jù)一同寫入ram_asic,其中data_in[63:0]寫入第一個ram_asic,{2’b0,ecc_in[6:0],data_in[118:64]}寫入第二個ram_asic。從ram_asic讀出的數(shù)據(jù)會經(jīng)過ecc_out模塊經(jīng)過ecc校驗,輸出校驗后的data_out[118:0]和2bit的ecc_err_out告警。

審核編輯:劉清

關(guān)鍵詞:

最近更新

關(guān)于本站 管理團(tuán)隊 版權(quán)申明 網(wǎng)站地圖 聯(lián)系合作 招聘信息

Copyright © 2005-2023 創(chuàng)投網(wǎng) - www.mallikadua.com All rights reserved
聯(lián)系我們:39 60 29 14 2@qq.com
皖I(lǐng)CP備2022009963號-3