基于0.13微米CMOS工藝下平臺式FPGA中可重構RAM模塊的一種設計方法
存儲器模塊的存儲單元陣列采用的是256x64的結構,即每列為256個存儲單元,每行為64個存儲單元。讀操作過程中,由于我們能夠?qū)崿F(xiàn)的最大位寬的存儲器結構為512x32,所以在預充電電路與靈敏放大器之間我們加入了一個2選1的選擇器,這樣進入靈敏放大器的位線有32對,32個靈敏放大器是必需的。 32位數(shù)據(jù)從靈敏放大器輸出后就進入輸出列選擇器,如圖5(a)所示,我們用到了五個二選一的選擇器,各由一位地址選擇,同時其工作狀態(tài)由配置信息控制,各選擇器的輸出按照配置信息或者提供相應結構的數(shù)據(jù)或者被置為高阻態(tài)。被選出的數(shù)據(jù)經(jīng)過輸出總線選擇開關矩陣,最后到達數(shù)據(jù)總線。在寫操作過程中,數(shù)據(jù)總線上的輸入數(shù)據(jù)首先進入輸入總線選擇開關矩陣(與輸出總線選擇開關矩陣相似),然后進入輸入列選擇器(與輸出列選擇器相似,圖5(b)所示),輸入列選擇器的輸出經(jīng)過緩沖器后(圖3.a中DW, DWN)被直接寫入選中的存儲單元。本文引用地址:http://m.butianyuan.cn/article/152168.htm
圖 3. 位線結 (a) 讀列選擇器 (b) 寫列選擇器 圖4 .讀/寫列選擇器
2.4 存儲器模塊的體系結構
圖5給出了存儲器模塊的總體結構[3]。每個存儲器模塊的存儲單元陣列被分為兩部分,分別為256x32,即每列256個存儲單元,每行32個存儲單元[6],[7]。A,B兩端口分別擁有獨自的行譯碼器,預充電電路,靈敏放大器,輸入/輸出列選擇器,輸入/輸出總線選擇開關矩陣,時鐘產(chǎn)生器以及輸入輸出緩沖電路。預充電電路用于在讀操作前將耦合位線預充至某一相同電壓值。行譯碼器采用兩級譯碼,從而提高讀寫操作速度。時鐘產(chǎn)生器用來產(chǎn)生內(nèi)部時鐘以控制譯碼器,靈敏放大器,多路選擇器,預充電電路以及輸入輸出寄存器[3]。
3. 讀寫操作仿真結果
關鍵路徑我們選擇位于位線結構頂端的存儲單元,對該存儲單元的讀寫操作反映了最壞情況下的延時[4]。由于存儲器模塊可以配置為不同的結構,所以各種結構的關鍵路徑長度并不相等,顯然512x32這種結構中數(shù)據(jù)經(jīng)過最少的選擇器,所以關鍵路徑最短,而16kx1結構的關鍵路徑最長,因為數(shù)據(jù)要經(jīng)過最多的選擇器。我們對這兩種關鍵路徑做了重點仿真,這也足以反應存儲器模塊的性能。
我們用Synoposys的工具Nanosim針對各種讀寫操作基于0.13微米CMOS工藝做了詳細的仿真。圖7給出了512x32 和16Kx1這兩種工作模式下的關鍵路徑上的讀取時間。時鐘上升沿到數(shù)據(jù)讀出有效之間的延時分別是1.4ns和2.5ns,讀取時間不同的原因在于對于不同的工作模式數(shù)據(jù)經(jīng)過的關鍵路徑的長短不同,512x32模式下經(jīng)過的關鍵路徑最短,而16Kx1模式下關鍵路徑最長,所以這兩種模式之間的各種模式下的讀取時間在1.4ns和2.5ns之間。
圖 6. 存儲器模塊體系結構 圖 7.存儲器讀取操作的仿真結果
4. 結論
本文介紹了基于0.13微米CMOS工藝下平臺式FPGA中可重構RAM模塊的一種設計方法。該RAM模塊是一個16Kb的高速低功耗可重構模塊,通過不同的配置信息,可以實現(xiàn)多種功能。重點介紹了一種用于可重構靜態(tài)存儲器的全新的存儲器單元電路結構以及實現(xiàn)該靜態(tài)存儲器各種重構功能的電路結構。仿真結果表明我們設計的該存儲器模塊能夠很好的實現(xiàn)各種重構功能,而且速度高,功耗較低。
本文作者創(chuàng)新觀點:本文所設計的存儲器采用了一種新穎的三端口存儲單元,同時在外圍電路采用了可配置的列選擇器,從而可以通過不同的配置信息把存儲器配置到多種工作模式,該存儲器具備了良好的可重構性能。
評論