一種block ram級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu)的制作方法
【專利摘要】本實(shí)用新型涉及一種BLOCKRAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其包括一列BLOCKRAM;一列BLOCKRAM內(nèi)相鄰的兩個(gè)BLOCKRAM間通過第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)使得所述兩個(gè)BLOCKRAM間進(jìn)行地址級(jí)聯(lián),以形成一個(gè)所需地址深度及數(shù)據(jù)寬度的BRAMCOMB2級(jí)聯(lián)結(jié)構(gòu),且BRAMCOMB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)的兩個(gè)BLOCKRAM均能進(jìn)行獨(dú)立訪問。本實(shí)用新型通過ASIC技術(shù)實(shí)現(xiàn)專用的級(jí)聯(lián)邏輯,支持全局級(jí)聯(lián)或者局部級(jí)聯(lián),使得既滿足用戶的存儲(chǔ)需求,又保留了可編程邏輯器件中BRAM級(jí)聯(lián)的靈活性。保留支持非級(jí)聯(lián)模式,此時(shí)可以與傳統(tǒng)可編程邏輯器件級(jí)聯(lián)模式兼容。這種實(shí)現(xiàn)結(jié)構(gòu)能在不占用外圍布線資源的情況下快速地實(shí)現(xiàn)較大地址深度和數(shù)據(jù)寬度的BRAM級(jí)聯(lián)需求,由于該級(jí)聯(lián)邏輯采用ASIC技術(shù)實(shí)現(xiàn),提升了時(shí)序性能,節(jié)約了外圍走線資源,提高了布通率。
【專利說明】
【技術(shù)領(lǐng)域】
[0001] 本實(shí)用新型涉及一種級(jí)聯(lián)結(jié)構(gòu),尤其是一種BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),屬于可編程 邏輯器件的【技術(shù)領(lǐng)域】。 -種BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu)
【背景技術(shù)】
[0002] 基于查找表以及內(nèi)置RAM的可編程邏輯器件,具有開發(fā)周期短,成本低,風(fēng)險(xiǎn)小, 集成度高,靈活性大,且便于電子系統(tǒng)維護(hù)和升級(jí),因此成為了數(shù)字芯片的主流,被廣泛應(yīng) 用在通信、控制、視頻、信息處理、消費(fèi)電子、互聯(lián)網(wǎng)、汽車以及航空航天等諸多領(lǐng)域。
[0003] BLOCK RAM和分布式RAM是可編程邏輯器件結(jié)構(gòu)中最基本和核心的存儲(chǔ)部件,其中 BLOCK RAM用于實(shí)現(xiàn)較大地址深度和數(shù)據(jù)寬度的存儲(chǔ)功能,而分布式RAM由于受其實(shí)現(xiàn)機(jī)制 限制,只適用于較小的地址深度和數(shù)據(jù)寬度的存儲(chǔ)功能。BLOCK RAM在可編程邏輯器件中是 按列分布,通常該列都是BLOCK RAM。
[0004] 由于考慮到不同用戶的使用需求和靈活性,一個(gè)BLOCK RAM (簡(jiǎn)稱BRAM) -般不會(huì) 做得很大,通常是36Kbits,內(nèi)部由兩塊18Kbit的真雙端口 RAM(簡(jiǎn)稱SRAM18K,分為A端口 和B端口)構(gòu)成,能夠提供最大地址深度為32K,此時(shí)數(shù)據(jù)位寬為lbit,或者最大數(shù)據(jù)位寬為 36bit,此時(shí)地址深度為1K ;一個(gè)BRAM內(nèi)部的兩個(gè)18Kbits的SRAM18K可以獨(dú)立使用,此時(shí) 每個(gè)SRAM18K可以提供最大地址深度為16K (對(duì)應(yīng)數(shù)據(jù)位寬為lbit),或者最大數(shù)據(jù)位寬為 18bit,此時(shí)地址深度為1K。
[0005] 當(dāng)用戶需要較大地址深度和數(shù)據(jù)寬度的存儲(chǔ)RAM時(shí),采用消耗可編程邏輯器件的 可配置邏輯模塊(CLB Configurable Logic Block)和可配置的連線資源來實(shí)現(xiàn)多個(gè)BRAM的 地址深度和數(shù)據(jù)寬度級(jí)聯(lián)功能。目前主流的可編程邏輯器件廠商都采用這樣的實(shí)現(xiàn)方式, 不僅需要占用額外的可編程邏輯器件布線和邏輯資源,此時(shí)處于同一個(gè)級(jí)聯(lián)模式下BLOCK RAM的接口信號(hào)都需要通過可編程邏輯器件的布線和邏輯資源相連,因此在級(jí)聯(lián)模式下存 儲(chǔ)RAM的訪問時(shí)序性能無法得到保證,可能無法滿足用戶的設(shè)計(jì)需求。
【發(fā)明內(nèi)容】
[0006] 本實(shí)用新型的目的是克服現(xiàn)有技術(shù)中存在的不足,提供一種BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn) 結(jié)構(gòu),其提高級(jí)聯(lián)的靈活性及配置能力,提高級(jí)聯(lián)模式下訪問時(shí)序性能,節(jié)約布線資源。
[0007] 按照本實(shí)用新型提供的技術(shù)方案,所述BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),包括一列BLOCK RAM ;所述一列BLOCK RAM內(nèi)相鄰的兩個(gè)BLOCK RAM間通過第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu) 使得所述兩個(gè)BLOCK RAM間進(jìn)行地址級(jí)聯(lián),以形成一個(gè)所需地址深度及數(shù)據(jù)寬度的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu),且BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)的兩個(gè)BLOCK RAM均能進(jìn)行獨(dú)立訪問。
[0008] 所述兩個(gè)相鄰的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)通過第三級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成 BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu),所述BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM2級(jí)聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立 訪問。
[0009] 所述兩個(gè)相鄰的BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu)通過第四級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成 BRAM GROUP級(jí)聯(lián)結(jié)構(gòu),所述BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM4級(jí)聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立 訪問。
[0010] 所述兩個(gè)相鄰的BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)通過第五級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成 BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu),所述BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM GROUP級(jí)聯(lián)結(jié)構(gòu) 均能進(jìn)行獨(dú)立訪問。
[0011] 所述兩個(gè)相鄰的BRAM HALF⑶LUMN級(jí)聯(lián)結(jié)構(gòu)通過第六級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu) 形成BRAM CULUMN級(jí)聯(lián)結(jié)構(gòu),所述BRAM CULUNM級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu) 能進(jìn)行獨(dú)立訪問。
[0012] 每個(gè)此0〇(8狀1內(nèi)包含兩個(gè)5狀1181(單元,所述兩個(gè)5狀1181(內(nèi)通過第一級(jí)451〇 級(jí)聯(lián)邏輯布線結(jié)構(gòu)進(jìn)行地址級(jí)聯(lián),以形成一個(gè)BLOCK RAM,BLOCK RAM內(nèi)的每個(gè)SRAM18K單元 均能進(jìn)行獨(dú)立訪問。
[0013] 所述兩個(gè)SRAM18K單元包括第一 SRAM18K單元及第二SRAM18K單元;所述第一 級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)包括第一選擇器、第二選擇器、第三選擇器、第四選擇器、第五選 擇器及第六選擇器;第一選擇器的輸入端與第一 SRAM18K單元的讀數(shù)據(jù)信號(hào)端口及第二 SRAM18K單元的讀數(shù)據(jù)信號(hào)端口連接,第二選擇器的輸出端與第二SRAM18K單元的工作時(shí) 鐘信號(hào)端口連接,第二選擇器的輸入端用于接收第一 SRAM18K單元、第二SRAM18K單元的工 作時(shí)鐘信號(hào);
[0014] 第三選擇器的輸出端與第二SRAM18K單元的寫數(shù)據(jù)信號(hào)端口連接,第三選擇器的 輸入端用于接收第一 SRAM18K單元、第二SRAM18K單元的寫數(shù)據(jù)信號(hào);
[0015] 所述第四選擇器的輸出端與第二SRAM18K單元的讀寫地址信號(hào)端口連接,第四選 擇器的輸入端用于接收第一 SRAM18K單元、第二SRAM18K單元的讀寫地址信號(hào);
[0016] 第五選擇器的輸出端與第二SRAM18K單元的寫使能信號(hào)端口連接,第五選擇器的 輸入端用于接收第一 SRAM18K單元、第二SRAM18K單元的寫使能信號(hào);
[0017] 第六選擇器的輸出端與第二SRAM18K單元的訪問片選信號(hào)端口連接,第六選擇器 的輸入端用于接收第一 SRAM18K單元、第二SRAM18K單元的訪問片選信號(hào)。
[0018] 本實(shí)用新型的優(yōu)點(diǎn):能根據(jù)用戶對(duì)存儲(chǔ)單元地址深度和數(shù)據(jù)寬度的自主配置,通 過可編程邏輯器件將用戶配置的存儲(chǔ)單元的地址和數(shù)據(jù)寬度參數(shù)轉(zhuǎn)換為內(nèi)定的級(jí)聯(lián)配置 模式,通過ASIC技術(shù)實(shí)現(xiàn)專用的級(jí)聯(lián)邏輯,支持全局級(jí)聯(lián)或者局部級(jí)聯(lián),使得既滿足用戶 的存儲(chǔ)需求,又保留了可編程邏輯器件中BRAM級(jí)聯(lián)的靈活性。保留支持非級(jí)聯(lián)模式,此時(shí) 可以與傳統(tǒng)可編程邏輯器件級(jí)聯(lián)模式兼容。這種實(shí)現(xiàn)結(jié)構(gòu)能在不占用外圍布線資源的情 況下快速地實(shí)現(xiàn)較大地址深度和數(shù)據(jù)寬度的BRAM級(jí)聯(lián)需求,由于該級(jí)聯(lián)邏輯采用ASIC技 術(shù)實(shí)現(xiàn),提升了時(shí)序性能,節(jié)約了外圍走線資源,提高了布通率。
【專利附圖】
【附圖說明】
[0019] 圖1為本實(shí)用新型一列BRAM進(jìn)行多級(jí)級(jí)聯(lián)的結(jié)構(gòu)示意圖。
[0020] 圖2為本實(shí)用新型一個(gè)SRAM18K單元的接口信號(hào)說明示意圖。
[0021] 圖3為本實(shí)用新型在BRAM模式下的A端口地址級(jí)聯(lián)模式下內(nèi)部邏輯信號(hào)的連接 關(guān)系不意圖。
[0022] 圖4為本實(shí)用新型在BRAM C0MB2模式下的A端口地址級(jí)聯(lián)模式下內(nèi)部邏輯信號(hào)連 接關(guān)系不意圖。
[0023] 圖5為采用本實(shí)用新型簡(jiǎn)化的可編程邏輯器件中半列BLOCK RAM級(jí)聯(lián)連接的示意 圖。
[0024] 附圖標(biāo)記說明:100-第一 SRAM18K單元、101-第二SRAM18K單元、102-第一選擇 器、103-第二選擇器、104-第三選擇器、105-第四選擇器、106-第五選擇器及107-第六選 擇器。
【具體實(shí)施方式】
[0025] 下面結(jié)合具體附圖和實(shí)施例對(duì)本實(shí)用新型作進(jìn)一步說明。
[0026] 為了能夠?qū)崿F(xiàn)所需的地址深度計(jì)數(shù)據(jù)寬度的存儲(chǔ),提升時(shí)序性能,節(jié)約外圍走 線資源,提高布通率,本實(shí)用新型包括一列BLOCK RAM ;所述一列BLOCK RAM內(nèi)相鄰的兩個(gè) BLOCK RAM間通過第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)使得所述兩個(gè)BLOCK RAM間進(jìn)行地址級(jí)聯(lián), 以形成一個(gè)所需地址深度及數(shù)據(jù)寬度的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu),且BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)的 兩個(gè)BLOCK RAM均能進(jìn)行獨(dú)立訪問。
[0027] 具體地,一列BLOCK RAM包括若干個(gè)BLOCK RAM,將其中相鄰的兩個(gè)BLOCK RAM通過 第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)進(jìn)行地址級(jí)聯(lián),以形成更大地址深度計(jì)數(shù)據(jù)寬度的級(jí)聯(lián),在 一列BLOCK RAM中,一個(gè)BLOCK RAM用于地址級(jí)聯(lián)后,不再參與另外一個(gè)相鄰的BLOCK RAM的 地址級(jí)聯(lián)中,一個(gè)BL0CKRAM只能與一個(gè)BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)對(duì)應(yīng)。形成BRAM C0MB2級(jí)聯(lián) 結(jié)構(gòu)后,兩個(gè)BLOCK RAM均能進(jìn)行獨(dú)立訪問,此時(shí),兩個(gè)BROCK RAM處于非級(jí)聯(lián)模式下。本實(shí) 用新型實(shí)施例中,第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)為本【技術(shù)領(lǐng)域】常用的電路邏輯結(jié)構(gòu),采用 ASIC技術(shù)實(shí)現(xiàn),不占用外部布線資源。
[0028] 如圖1所示,為可編程邏輯器件內(nèi)一列BLOCK RAM支持的級(jí)聯(lián)結(jié)構(gòu),是以可編程邏 輯器件一列的32個(gè)BLOCK RAM為作為示例進(jìn)行描述的。一列BRAM資源為32個(gè),即是有64 個(gè)SRAM18K單元。SRAM18K單元為最小的獨(dú)立可訪問資源,為級(jí)聯(lián)結(jié)構(gòu)中的基本單元。每個(gè) SRAM18K分為A端口和B端口,每個(gè)端口有一套獨(dú)立的訪問接口信號(hào),包括訪問地址,寫數(shù) 據(jù),寫使能(片選有效下,如果寫使能無效則表示本次為讀操作),片選信號(hào)和讀數(shù)據(jù)輸出接 口,上述信號(hào)統(tǒng)稱訪問接口信號(hào),如圖2所示。后文為了描述方便,以SRAM18K單元的A端 口級(jí)聯(lián)控制為例,同樣的級(jí)聯(lián)結(jié)構(gòu)也適用于B端口。
[0029] 如圖3所示,每個(gè)BLOCK BRAM內(nèi)包含兩個(gè)SRAM18K單元,所述兩個(gè)SRAM18K內(nèi)通過 第一級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)進(jìn)行地址級(jí)聯(lián),以形成一個(gè)BLOCK RAM,BLOCK RAM內(nèi)的每個(gè) SRAM18K單元均能進(jìn)行獨(dú)立訪問。
[0030] 所述兩個(gè)SRAM18K單元包括第一 SRAM18K單元100及第二SRAM18K單元101 ;所述 第一級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)包括第一選擇器102、第二選擇器103、第三選擇器104、第四 選擇器105、第五選擇器106及第六選擇器107 ;第一選擇器102的輸入端與第一 SRAM18K 單元100的讀數(shù)據(jù)信號(hào)端口及第二SRAM18K單元101的讀數(shù)據(jù)信號(hào)端口連接,第二選擇器 103的輸出端與第二SRAM18K單元101的工作時(shí)鐘信號(hào)端口連接,第二選擇器103的輸入端 用于接收第一 SRAM18K單元100、第二SRAM18K單元101的工作時(shí)鐘信號(hào);
[0031] 第三選擇器104的輸出端與第二SRAM18K單元101的寫數(shù)據(jù)信號(hào)端口連接,第三 選擇器104的輸入端用于接收第一 SRAM18K單元100、第二SRAM18K單元101的寫數(shù)據(jù)信 號(hào);
[0032] 所述第四選擇器105的輸出端與第二SRAM18K單元101的讀寫地址信號(hào)端口連 接,第四選擇器105的輸入端用于接收第一 SRAM18K單元100、第二SRAM18K單元101的讀 寫地址信號(hào);
[0033] 第五選擇器106的輸出端與第二SRAM18K單元101的寫使能信號(hào)端口連接,第五 選擇器106的輸入端用于接收第一 SRAM18K單元100、第二SRAM18K單元101的寫使能信 號(hào);
[0034] 第六選擇器107的輸出端與第二SRAM18K單元101的訪問片選信號(hào)端口連接,第 六選擇器107的輸入端用于接收第一 SRAM18K單元100、第二SRAM18K單元101的訪問片選 信號(hào)。
[0035] 上述第一級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)中,第一 SRAM18K單元100的工作時(shí)鐘信號(hào)、 寫數(shù)據(jù)信號(hào)、讀寫地址信號(hào)、寫使能信號(hào)、訪問片選信號(hào)直接與第一 SRAM18K單元100的對(duì) 應(yīng)A端口直接連接。上述選擇器均可采用二選一選擇器,通過選擇器使得兩個(gè)SRAM18K單 元進(jìn)行地址級(jí)聯(lián),在非級(jí)聯(lián)模式下,每個(gè)SRAM18K單元均能進(jìn)行獨(dú)立訪問。在具體實(shí)施時(shí), 根據(jù)可編程邏輯器件的用戶配置來確定地址級(jí)聯(lián)或非級(jí)聯(lián)模式的狀態(tài),為本【技術(shù)領(lǐng)域】人員 所熟知,此處不再贅述。
[0036] 進(jìn)一步地,所述兩個(gè)相鄰的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)通過第三級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié) 構(gòu)形成BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu),所述BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM2級(jí)聯(lián)結(jié)構(gòu)均能進(jìn) 行獨(dú)立訪問。
[0037] 進(jìn)一步地,所述兩個(gè)相鄰的BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu)通過第四級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié) 構(gòu)形成BRAM GROUP級(jí)聯(lián)結(jié)構(gòu),所述BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM4級(jí)聯(lián)結(jié)構(gòu)均能進(jìn) 行獨(dú)立訪問。
[0038] 進(jìn)一步地,所述兩個(gè)相鄰的BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)通過第五級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié) 構(gòu)形成BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu),所述BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM GROUP級(jí) 聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立訪問。
[0039] 進(jìn)一步地,所述兩個(gè)相鄰的BRAM HALF⑶LUMN級(jí)聯(lián)結(jié)構(gòu)通過第六級(jí)ASIC級(jí)聯(lián)邏輯 布線結(jié)構(gòu)形成BRAM CULUMN級(jí)聯(lián)結(jié)構(gòu),所述BRAM CULUNM級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM HALF CULUMN 級(jí)聯(lián)結(jié)構(gòu)能進(jìn)行獨(dú)立訪問。
[0040] 上述通過處于不同級(jí)的ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)能實(shí)現(xiàn)不同地址深度及數(shù)據(jù)寬度 的級(jí)聯(lián)結(jié)構(gòu),第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)、第三級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)、第四級(jí)ASIC 級(jí)聯(lián)邏輯布線結(jié)構(gòu)、第五級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)的具體實(shí)現(xiàn)均為本【技術(shù)領(lǐng)域】所熟知,采 用ASIC技術(shù)實(shí)現(xiàn),不占用外圍布線資源。
[0041] 基于上述實(shí)現(xiàn)結(jié)構(gòu),可以支持2個(gè)SRAM18K單元地址級(jí)聯(lián),2個(gè)BLOCK RAM地址級(jí) 聯(lián),4個(gè)BLOCK RAM地址級(jí)聯(lián),8個(gè)BLOCK RAM地址級(jí)聯(lián),16個(gè)BLOCK RAM地址級(jí)聯(lián),32個(gè)BLOCK RAM地址級(jí)聯(lián);或者2個(gè)SRAM18K單元數(shù)據(jù)并聯(lián),2個(gè)BLOCK RAM數(shù)據(jù)并聯(lián),4個(gè)BLOCK RAM 數(shù)據(jù)并聯(lián),8個(gè)BLOCK RAM數(shù)據(jù)并聯(lián),16個(gè)BLOCK RAM數(shù)據(jù)并聯(lián),32個(gè)BLOCK RAM數(shù)據(jù)并聯(lián)。 [0042] 不管是地址級(jí)聯(lián)還是數(shù)據(jù)并聯(lián),面對(duì)用戶使用,是將級(jí)聯(lián)后的存儲(chǔ)資源作為一個(gè) RAM對(duì)象進(jìn)行訪問的,一個(gè)端口只有一套公共信號(hào),即是RAM的訪問接口信號(hào)(A端口和B端 口各有一套)。不同的級(jí)聯(lián)深度模式下,選擇不同的物理位置上的SRAM18K單元的訪問接口 信號(hào),原屬于該SRAM18K單元的接口信號(hào)此時(shí)就作為用戶接口的公共信號(hào),與用戶的邏輯 相連,這樣可以使得在后端進(jìn)行布局布線時(shí)走線長(zhǎng)度均勻,利于時(shí)序收斂。
[0043] 下表表示不同級(jí)聯(lián)模式下公共信號(hào)的選擇:
[0044] 級(jí)聯(lián)模式 |地址級(jí)聯(lián)模式下訪問接|數(shù)據(jù)并聯(lián)模式下訪問接口信 __口信號(hào)來源_號(hào)來源_ BRAM SRAM18K單元0 共用SRAM18K單元0的地址 __線和片選線_^_ BRAM BRAM~單元0~W共用 BRAM 單元 0 的 COMB2 SRAM18K單元0 SRAM18K單元0的地址線和 ___片選線_ BRAM BRAM COMB2 單元 0共用 BRAM COMB2 單元 0 COMB4 中bram單元1 的中BRAM單元1的SRAM18K __SRAM18K單元0__單元0的地址線和片選線 BRAM BRAM COMB4 Φ-./? 0共BRAM COMB4 丨丫丨-兒 0 GROUP I丨丨 BRAM COMB2 Φ-兒 1 1 丨丨 BRAM COMB2 丨丫丨-兒 Μ丨 中BRAM單元 1 的BRAM 單元1的SRAM18K __SRAM18K單元0__單元0的地址線和片選線 BRAM HALF~~BRAM GROUP 丨丫丨-兒 0BRAM GROUP 'T!-yL0 1 i1 COLUMN I丨丨 BRAM COMB4 丨丫l兒 I BRAM COMB4 丨丫丨兒 1 '!' 中 BRAM COMB2 巾.兒 1 BRAM COMB2 ,丫1.兒 1 中 中BRAM單元 1 的BRAM 單元1的SRAM18K _| SRAM18K單元0_|單元0的地址線和片選線
[0045] BRAM BRAM HALF COLUMN 共相 BRAM HALF COLUMN COLUMN 丨丫丨-兒0屮BRAM GROUP丨丫丨.兒〇丨丨丨BRAM GROUP A兒1 甲·元1屮BRAM COMB4中BRAM COMB4卑元1巾 單元 1 中 BRAM COMB2 BRAM COMB2 單元 1 中 單元1中BRAM單元1的BRAM申.元1的SRAM18K _SRAM18K單元0 |單元0的地址線和片選線
[0046] 上述表中,將級(jí)聯(lián)結(jié)構(gòu)中所有相同的結(jié)構(gòu)中均劃分為單元0及單元1,如SRAM18K 具有SRAM18K單元0及SRAM18K單元1,SRAM18K單元0與SRAM18K單元1進(jìn)行地址級(jí)聯(lián) 得到BLOCK RAM,得到的BLOCK RAM中也劃分具有BRAM (BLOCK RAM)單元0及BRAM單元1, BRAM單元0與BRAM單元1進(jìn)行地址級(jí)聯(lián)得到BRAM C0MB2。在得到的BRAM C0MB2中也劃分 具有BRAM C0MB2單元0及BRAM C0MB2單元1,BRAM C0MB2單元0與BRAM C0MB2單元1進(jìn)行 地址級(jí)聯(lián)得到BRAM C0MB4,后續(xù)依次類推,此處不再贅述。上述表中,根據(jù)ASIC級(jí)聯(lián)邏輯布 線結(jié)構(gòu)選擇單元〇或單元1的訪問接口信號(hào),在具體實(shí)施時(shí),可以根據(jù)需要進(jìn)行設(shè)置單元〇 或單元1。
[0047] 采用上述實(shí)現(xiàn)結(jié)構(gòu)的另外一個(gè)好處在于ASIC實(shí)現(xiàn)過程中易于后端流程中的布局 布線操作,可以有效減少布線的阻塞度,父模塊可以復(fù)用該直接子模塊的布局布線結(jié)果,提 高整列BLOCK RAM布局布線通過率,有效減少對(duì)其他模塊的布線阻塞率,本實(shí)用新型實(shí)施 例中,父模塊是指進(jìn)行地址級(jí)聯(lián)后的模塊,子模塊是指進(jìn)行地址級(jí)聯(lián)時(shí)使用的單元模塊,下 述表述類同。比如以BLOCK RAM為單位完成初始的布局布線,那么BRAM C0MB2就是在兩 個(gè)BLOCK RAM的初始布局布線基礎(chǔ)上再增加本級(jí)的級(jí)聯(lián)邏輯布線即可;同樣可以得出BRAM C0MB4在兩個(gè)BRAM C0MB2的布局布線基礎(chǔ)上再增加本級(jí)的級(jí)聯(lián)邏輯布線即可;依次類推,最 終可以得到一列BLOCK RAM資源的布局布線結(jié)果。
[0048] 圖3中是以BRAM的A端口地址級(jí)聯(lián)構(gòu)成作為示例的,BRAM由2個(gè)SRAM18K單元組 成。在非級(jí)聯(lián)模式下,每個(gè)SRAM18K單元要求可以獨(dú)立訪問,所以作為輸入的信號(hào)有訪問時(shí) 鐘,讀寫訪問的地址,片選信號(hào),寫使能(在片選信號(hào)有效下,寫使能不有效即是表示本次為 讀訪問操作)以及寫數(shù)據(jù);作為輸出的信號(hào)有讀數(shù)據(jù)信號(hào);當(dāng)SRAM18K單元要求獨(dú)立訪問, 可配置邏輯器件的布線資源是直接與各個(gè)SRAM18K單元的輸入和輸出信號(hào)相連。當(dāng)BRAM 內(nèi)部的兩個(gè)SRAM18K單元是地址級(jí)聯(lián)時(shí),一個(gè)BRAM內(nèi)的SRAM18K單元的輸入的控制信號(hào)都 是受編號(hào)單元〇的SRAM18K輸入信號(hào)控制,輸出的讀數(shù)據(jù)信號(hào)也是由編號(hào)單元0的SRAM18K 接口輸出,讀數(shù)據(jù)與用戶邏輯相連。
[0049] 圖4中是以BRAM C0MB2的A端口地址級(jí)聯(lián)構(gòu)成作為示例的,BRAM C0MB2內(nèi)部由2 個(gè)BRAM組成,每個(gè)BRAM由2個(gè)SRAM18K單元組成;在非級(jí)聯(lián)模式下,每個(gè)SRAM18K單元要 求可以獨(dú)立訪問,所以作為輸入的信號(hào)有訪問時(shí)鐘,讀寫訪問的地址,片選信號(hào),寫使能(在 片選信號(hào)有效下,寫使能不有效即是表示本次為讀訪問操作)以及寫數(shù)據(jù);作為輸出的信號(hào) 有讀數(shù)據(jù)信號(hào);當(dāng)SRAM18K單元要求獨(dú)立訪問,可配置邏輯器件的布線資源是直接與各個(gè) SRAM18K單元的輸入和輸出信號(hào)相連。當(dāng)BRAM C0MB2內(nèi)部?jī)蓚€(gè)BRAM是獨(dú)立訪問,但BRAM 內(nèi)部的兩個(gè)SRAM18K單元是地址級(jí)聯(lián)時(shí),一個(gè)BRAM內(nèi)的SRAM18K單元的輸入信號(hào)都是受編 號(hào)單元0的SRAM18K輸入信號(hào)控制,輸出信號(hào)也是由編號(hào)單元0的SRAM18K接口輸出。當(dāng) BRAM C0MB2內(nèi)部?jī)蓚€(gè)BRAM是級(jí)聯(lián)時(shí),此時(shí)需要選擇BRAM單元1的SRAM18K單元的讀寫訪問 的地址,片選信號(hào),寫使能(在片選信號(hào)有效下,寫使能不有效即是表示本次為讀訪問操作) 以及寫數(shù)據(jù),讀數(shù)據(jù)與用戶邏輯相連。
[0050] 圖5所示的結(jié)構(gòu)為簡(jiǎn)化的可編程邏輯器件中半列BLOCK RAM資源接連的示意圖,其 中輸入箭頭表示可編程邏輯器件布線資源可見的SRAM18K單元輸入信號(hào)(如訪問地址,寫 使能,片選,寫數(shù)據(jù)信號(hào))和輸出箭頭表示可編程邏輯器件布線資源可見的SRAM18K單元輸 出信號(hào)(如讀數(shù)據(jù)信號(hào))。處于級(jí)聯(lián)結(jié)構(gòu)中每塊SRAM18K都有位置編號(hào),兩兩屬于同一個(gè)父 干支模塊。而兩兩父干支模塊則屬于同一個(gè)祖父干支,依次類推。
[0051] 每塊SRAM18K編號(hào)Sl,S2......S31,S32分別表示如下含義:
[0052] 編 4 BRAM~ BRAM I BRAM I BRAM I SRAM18K GROUP編COMB4 COMB2編號(hào)編號(hào) 號(hào) 編號(hào) 編號(hào) S1 單元0" 單元0 _單元0 單元0 單元0 _S2__單元0__單元0 單元0 單元0 單元1 53 _ 單元0 ^ 單元0 ^單元0 單疋Γ 單元0 54 單元^ 單元單元〇 單元1 元1 _S5__單元0 單元0 單元1 單元0 單元0 _S6__單元0__單元0 單元1 單元0 單元1 _S7__單元0 單元0 單元1 單元1 單元0 S8 ^ 單元0 一單元0 -單元1 單元1 單元1 ^ _S9__單元0__單元1 單元0 單元0 單元0 S10 _ 單元0" 單元1_單元0 單充0~ 單元1 sii 單元^ 單元廠單元〇 單元1 元〇 512 單元0 單元1 單元0 單元1 單元1 513 單元0" 單元1 ^單元1 單元0 單元0 _S14__單元0 單元1 單元1 單元0 單元1 515 ^ 單元0 一單元1-單元1 單元1 單元0 ^ 516 單元0 單元1 單元1 單元1 單元1 517 單元1 單元0 單元0 單元0 單元0 518 ^ 單元單元0^單元0 單元0 單元1 ^ S29 單元1 單元1 單元1 單元0 單元0 _S30__單元1 單元1 單元1 單元0 單元1
[0053] S31 |單元1 |單元1 |單元1 |單元1 |單元〇 _S32__單元1__單元1 單元1 單元1 單元1
[0054] 當(dāng)可編程邏輯器件中BLOCK RAM級(jí)聯(lián)模式不同時(shí),需要告知FPGA (Field - Programmable Gate Array)布線軟件,選擇合適的邏輯連接信號(hào),使得公用的邏輯信號(hào)在 ASIC (Application Specific Integrated Circuit)后端流程中進(jìn)行布局布線時(shí)布線延時(shí)均 勻,易于目標(biāo)時(shí)序?qū)崿F(xiàn)。
[0055] 本實(shí)用新型能根據(jù)用戶對(duì)存儲(chǔ)單元地址深度和數(shù)據(jù)寬度的自主配置,通過可編程 邏輯器件將用戶配置的存儲(chǔ)單元的地址和數(shù)據(jù)寬度參數(shù)轉(zhuǎn)換為內(nèi)定的級(jí)聯(lián)配置模式,通過 ASIC技術(shù)實(shí)現(xiàn)專用的級(jí)聯(lián)邏輯,支持全局級(jí)聯(lián)或者局部級(jí)聯(lián),使得既滿足用戶的存儲(chǔ)需求, 又保留了可編程邏輯器件中BRAM級(jí)聯(lián)的靈活性。保留支持非級(jí)聯(lián)模式,此時(shí)可以與傳統(tǒng)可 編程邏輯器件級(jí)聯(lián)模式兼容。這種實(shí)現(xiàn)結(jié)構(gòu)能在不占用外圍布線資源的情況下快速地實(shí)現(xiàn) 較大地址深度和數(shù)據(jù)寬度的BRAM級(jí)聯(lián)需求,由于該級(jí)聯(lián)邏輯采用ASIC技術(shù)實(shí)現(xiàn),提升了時(shí) 序性能,節(jié)約了外圍走線資源,提高了布通率。
【權(quán)利要求】
1. 一種BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),包括一列BLOCK RAM ;其特征是:每個(gè)BLOCK BRAM內(nèi) 包含兩個(gè)SRAM18K單元,所述兩個(gè)SRAM18K內(nèi)通過第一級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)進(jìn)行地址 級(jí)聯(lián),以形成一個(gè)BLOCK RAM,BLOCK RAM內(nèi)的每個(gè)SRAM18K單元均能進(jìn)行獨(dú)立訪問; 所述一列BLOCK RAM內(nèi)相鄰的兩個(gè)BLOCK RAM間通過第二級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu) 使得所述兩個(gè)BLOCK RAM間進(jìn)行地址級(jí)聯(lián),以形成一個(gè)所需地址深度及數(shù)據(jù)寬度的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu),且BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)的兩個(gè)BLOCK RAM均能進(jìn)行獨(dú)立訪問。
2. 根據(jù)權(quán)利要求1所述的BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其特征是:所述兩個(gè)相鄰的BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)通過第三級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu),所述BRAM C0MB2級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM2級(jí)聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立訪問。
3. 根據(jù)權(quán)利要求2所述的BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其特征是:所述兩個(gè)相鄰的BRAM C0MB4級(jí)聯(lián)結(jié)構(gòu)通過第四級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成BRAM GROUP級(jí)聯(lián)結(jié)構(gòu),所述BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM COM4級(jí)聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立訪問。
4. 根據(jù)權(quán)利要求3所述的BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其特征是:所述兩個(gè)相鄰的BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)通過第五級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu),所述 BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM GROUP級(jí)聯(lián)結(jié)構(gòu)均能進(jìn)行獨(dú)立訪問。
5. 根據(jù)權(quán)利要求4所述的BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其特征是:所述兩個(gè)相鄰的BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu)通過第六級(jí)ASIC級(jí)聯(lián)邏輯布線結(jié)構(gòu)形成BRAM CULUMN級(jí)聯(lián)結(jié)構(gòu),所 述BRAM CULUNM級(jí)聯(lián)結(jié)構(gòu)內(nèi)兩個(gè)BRAM HALF CULUMN級(jí)聯(lián)結(jié)構(gòu)能進(jìn)行獨(dú)立訪問。
6. 根據(jù)權(quán)利要求1所述的BLOCK RAM級(jí)聯(lián)實(shí)現(xiàn)結(jié)構(gòu),其特征是:所述兩個(gè)SRAM18K單元 包括第一 SRAM18K單元(100)及第二SRAM18K單元(101);所述第一級(jí)ASIC級(jí)聯(lián)邏輯布線 結(jié)構(gòu)包括第一選擇器(102)、第二選擇器(103)、第三選擇器(104)、第四選擇器(105)、第五 選擇器(106)及第六選擇器(107);第一選擇器(102)的輸入端與第一 SRAM18K單元(100) 的讀數(shù)據(jù)信號(hào)端口及第二SRAM18K單元(101)的讀數(shù)據(jù)信號(hào)端口連接,第二選擇器(103)的 輸出端與第二SRAM18K單元(101)的工作時(shí)鐘信號(hào)端口連接,第二選擇器(103)的輸入端用 于接收第一 SRAM18K單元(100)、第二SRAM18K單元(101)的工作時(shí)鐘信號(hào); 第三選擇器(104)的輸出端與第二SRAM18K單元(101)的寫數(shù)據(jù)信號(hào)端口連接,第三選 擇器(104)的輸入端用于接收第一 SRAM18K單元(100)、第二SRAM18K單元(101)的寫數(shù)據(jù) 信號(hào); 所述第四選擇器(105)的輸出端與第二SRAM18K單元(101)的讀寫地址信號(hào)端口連接, 第四選擇器(105)的輸入端用于接收第一 SRAM18K單元(100)、第二SRAM18K單元(101)的 讀寫地址信號(hào); 第五選擇器(106)的輸出端與第二SRAM18K單元(101)的寫使能信號(hào)端口連接,第五選 擇器(106)的輸入端用于接收第一 SRAM18K單元(100)、第二SRAM18K單元(101)的寫使能 信號(hào); 第六選擇器(107)的輸出端與第二SRAM18K單元(101)的訪問片選信號(hào)端口連接,第六 選擇器(107)的輸入端用于接收第一 SRAM18K單元(100)、第二SRAM18K單元(101)的訪問 片選信號(hào)。
【文檔編號(hào)】G06F3/023GK203909724SQ201420079136
【公開日】2014年10月29日 申請(qǐng)日期:2014年2月24日 優(yōu)先權(quán)日:2014年2月24日
【發(fā)明者】劉瑛, 馮盛, 萬清 申請(qǐng)人:中國(guó)電子科技集團(tuán)公司第五十八研究所