IC前后端:高扇出的危害
1、什么是高扇出?
高扇出指的是一個(gè)邏輯單元驅(qū)動的邏輯單元過多。常見于寄存器驅(qū)動過多的組合邏輯單元。至于驅(qū)動多少邏輯單元算過多,需要根據(jù)工藝,后端實(shí)現(xiàn)情況以及芯片本身類型來決定。
一般來說如果驅(qū)動邏輯大于10K以上,算是比較多的了。
2、高扇出有哪些危害?
危害1:驅(qū)動能力下降,時(shí)序緊張
扇出過高也就是也就意味了負(fù)載電容過大,電路原理基礎(chǔ)告訴咱們,負(fù)載電容越大,充放電速度越慢,電平跳變所需要的時(shí)間增加,即驅(qū)動能力下降,時(shí)序更加緊張。面對高扇出的情況,后端工具通常會通過插入buffer增加驅(qū)動能力,然后插入buff又會增加延時(shí),造成時(shí)序緊張。
危害2:不利于布局布線,會增加走線延時(shí)
高扇出的情況通常意味著負(fù)載end_point分布在block的各個(gè)位置。而驅(qū)動的start_point需要放置在相對應(yīng)的中心位置,這就意味到start_point到end_points的走線延時(shí)較大,一旦時(shí)序緊張,后端工具需要花費(fèi)很多時(shí)間去優(yōu)化,玩玩結(jié)果還不理想。
如下圖所示:黑色點(diǎn)為end_point
A圖所示,扇出高并且end_point很分散,在高扇出情況中很常見,后端工具實(shí)現(xiàn)花費(fèi)時(shí)間長,并且很難優(yōu)化,走線延時(shí)比較大,時(shí)序比較緊張。
B圖所示:扇出不高但是end_point很分散,后端工具實(shí)現(xiàn)花費(fèi)時(shí)間教長,優(yōu)化有難度,走線延時(shí)比較大,時(shí)序比較緊張。
C圖所示, 扇出不高并且end_point集中,是理想情況,后端工具實(shí)現(xiàn)簡單,走線延時(shí)比較小。
IC設(shè)計(jì)RAM相關(guān):RAM讀寫沖突返回值
1、RAM讀寫沖突返回值
在使用底層RAM IP的時(shí)候,以1R1W的ram為例,我們需要考慮 某個(gè)地址同時(shí)發(fā)生讀寫操作的時(shí)候(俗稱讀寫沖突),RAM IP輸出的data_out是什么值,不同的廠家IP會不一樣,同一個(gè)廠家的不同ram也有可能不一樣。例如:發(fā)生讀寫沖突時(shí),有些ram會輸出老值,有些ram會輸出新值,有些ram輸出不確定的值
2、從設(shè)計(jì)角度考慮RAM讀寫沖突返回值
從嚴(yán)謹(jǐn)?shù)脑O(shè)計(jì)角度看,應(yīng)該從方案設(shè)計(jì)角度避免此問題。在verilog實(shí)現(xiàn)中,ram就不允許發(fā)生同時(shí)讀寫同一個(gè)地址的情況,采用外部邏輯進(jìn)行讀寫沖突保護(hù)。原因如下:
不同ram IP在讀寫沖突時(shí),讀寫沖突返回值不一樣,容易出錯(cuò)。
不同項(xiàng)目使用的工藝不一樣,從而導(dǎo)致ram ip讀寫沖突返回值不一致,不利于代碼復(fù)用。
IC設(shè)計(jì)RAM相關(guān):ECC校驗(yàn)原理基礎(chǔ)
1、ECC校驗(yàn)基礎(chǔ)
Ram的ECC校驗(yàn)通常基于海明碼編碼原理實(shí)現(xiàn),使用海明碼編碼需要額外的bit位存儲校驗(yàn)位,ECC校驗(yàn)僅能糾正1bit的,無法糾正2bit以及以上數(shù)據(jù)錯(cuò)誤,能發(fā)現(xiàn)部分多bit位錯(cuò)誤的情況。
2、RAM ECC校驗(yàn)實(shí)現(xiàn)原理
如圖所示為1r1w的ram為例,cfg_32x119_ram_wrapper為verilog代碼直接調(diào)用層次的ram_wrapper,表示了一個(gè)深度為32,數(shù)據(jù)位寬為119bit的ram。ram_asic.v為真實(shí)的ram IP。其中119bit的數(shù)據(jù)位寬緊張ECC計(jì)算需要7bit的校驗(yàn)位,因此物理IP最少需要126bit的ram IP。通常memory產(chǎn)生工具會更具時(shí)鐘頻率,深度位寬等因素對ram進(jìn)行切分,因此本例中,使用了2個(gè)32x64的ram ip。
在data_in寫入ram_asic模塊之前,會經(jīng)過ecc_gen模塊,產(chǎn)生7bit的ecc校驗(yàn)位,隨著數(shù)據(jù)一同寫入ram_asic,其中data_in[63:0]寫入第一個(gè)ram_asic,{2’b0,ecc_in[6:0],data_in[118:64]}寫入第二個(gè)ram_asic。從ram_asic讀出的數(shù)據(jù)會經(jīng)過ecc_out模塊經(jīng)過ecc校驗(yàn),輸出校驗(yàn)后的data_out[118:0]和2bit的ecc_err_out告警。
審核編輯:湯梓紅
-
芯片
+關(guān)注
關(guān)注
456文章
51283瀏覽量
427826 -
IC設(shè)計(jì)
+關(guān)注
關(guān)注
38文章
1302瀏覽量
104327 -
RAM
+關(guān)注
關(guān)注
8文章
1369瀏覽量
115070 -
ECC
+關(guān)注
關(guān)注
0文章
97瀏覽量
20663 -
邏輯單元
+關(guān)注
關(guān)注
0文章
25瀏覽量
5147
原文標(biāo)題:IC設(shè)計(jì)知識點(diǎn):高扇出的危害、RAM相關(guān)
文章出處:【微信號:IP與SoC設(shè)計(jì),微信公眾號:IP與SoC設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
STM32相關(guān)的知識點(diǎn)
計(jì)算機(jī)組成原理考研知識點(diǎn)歸納
高一數(shù)學(xué)知識點(diǎn)總結(jié)
高二數(shù)學(xué)知識點(diǎn)總結(jié)
嵌入式知識點(diǎn)總結(jié)
![嵌入式<b class='flag-5'>知識點(diǎn)</b>總結(jié)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
一文淺析IC設(shè)計(jì)的高扇出的危害、RAM相關(guān)知識
數(shù)字電路知識點(diǎn)總結(jié)
![數(shù)字電路<b class='flag-5'>知識點(diǎn)</b>總結(jié)](https://file1.elecfans.com/web2/M00/88/DF/wKgZomR1oB2ATkOzAABYL6bXL8c171.jpg)
STM32 RTOS知識點(diǎn)
![STM32 RTOS<b class='flag-5'>知識點(diǎn)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
電阻的相關(guān)知識點(diǎn)
![電阻的<b class='flag-5'>相關(guān)</b><b class='flag-5'>知識點(diǎn)</b>](https://file1.elecfans.com/web2/M00/A4/2B/wKgaomUBHQCAYWtMAABF0MV4WPE021.png)
接口測試?yán)碚摗⒁蓡柺珍浥c擴(kuò)展相關(guān)知識點(diǎn)
![接口測試?yán)碚摗⒁蓡柺珍浥c擴(kuò)展<b class='flag-5'>相關(guān)</b><b class='flag-5'>知識點(diǎn)</b>](https://file1.elecfans.com/web1/M00/F5/18/wKgZoWc2qDuACbyVAAAX95Ea1vY915.png)
評論