基于當代DRAM結構的存儲器控制器設計
4.1模擬環(huán)境及基準
Imagine流存儲系統包括2個(gè)地址產(chǎn)生器,4個(gè)交叉存儲體控制器,2個(gè)記錄緩沖按正確順序放置流數據在SRF。所有這些單元在同一芯片Imagine處理器核中。地址產(chǎn)生器支持3種地址模式:常量跨步,間接尋址,位翻轉。地址產(chǎn)生器可以產(chǎn)生任何長(cháng)度的存儲器訪(fǎng)問(wèn)流,只要數據適合SRF。對于跨步訪(fǎng)問(wèn),地址產(chǎn)生器利用基址、跨步、長(cháng)度,連續的地址依照基地址增加跨步常量。對于間接尋址,基地址加上來(lái)自SRF的變址計算地址。實(shí)驗運行在一組微基準上,如表1。本文引用地址:http://dyxdggzs.com/article/163365.htm
表1. 基準
4.2性能表現分析
存儲器控制器以執行沒(méi)有重排序作為性能比較的基礎。即控制器使用按序策略:列存取只執行最早掛起的訪(fǎng)問(wèn)。如圖2黑色的條狀代表按序策略性能。unit load取得DRAM峰值帶寬(2GB/s)的97%,3%的開(kāi)銷(xiāo)是有時(shí)預充電/激活延遲;unit load到unit持續帶寬14%的下降是因為讀和寫(xiě)交叉,讀訪(fǎng)問(wèn)和寫(xiě)訪(fǎng)問(wèn)轉換需要1周期的數據引腳高阻態(tài);unit conflict由于體內行來(lái)回交換使得帶寬下降到峰值得51%;random只有unit load 的15%帶寬,因為存取一個(gè)字需要7 DRAM周期。
4.3.1 簡(jiǎn)單調度
簡(jiǎn)單的First-ready存取調度策略平均提高25%性能。First-ready調度采用ordered優(yōu)先,如表1,來(lái)決定所有的調度。First-ready調度者考慮所有的掛起訪(fǎng)問(wèn)并且為不違反時(shí)序和資源限制的最早掛起的訪(fǎng)問(wèn)調度1個(gè)DRAM操作。這個(gè)調度算法最明顯的好處就是當等待為了最早掛起訪(fǎng)問(wèn)的預充電或者激活操作時(shí),可以同時(shí)對其他體進(jìn)行存取,DRAM內部多體并行。
圖2. 按序和first-ready存取調度下的存儲器帶寬
圖2,first-ready調度算法比按序在微基準最多增加性能79%。unit load提高較??;Random提高125%,因為他們能夠顯著(zhù)提高每次行激活列存取的數量。
4.3.2 復雜調度
更加具有挑戰性的調度算法能夠進(jìn)一步提高性能,這部分將研究4種調度算法進(jìn)一步提高存儲器帶寬。如圖3,包含random的基準偏向關(guān)預充電策略,這種策略只要激活行沒(méi)有掛起訪(fǎng)問(wèn)就進(jìn)行體預充電。對于大部分其他基準,開(kāi)和關(guān)預充電策略相差甚微。除了Unit load用col/closed算法表現差,其他基準都有較大性能提高。
圖3.各種存取調度算法情況下的存儲器帶寬
5、結論
本文創(chuàng )新點(diǎn):存儲器存取調度大大地增加了DRAM存取帶寬的利用,緩沖存儲器訪(fǎng)問(wèn)命令,按照某個(gè)順序選擇執行,既有體間并行又最大化利用每個(gè)行命令的列存取數量,使得系統性能提高。在大部分基準下,關(guān)閉頁(yè)調度策略是有利的。這部分地因為DRAM有合并最后列存取請求的體預充電的能力。調度算法是否行優(yōu)先或者列優(yōu)先在性能上差異較小。最后,調度讀優(yōu)先于寫(xiě)可提高性能。存儲器存取調度是最大利用日益寶貴的存儲器帶寬資源的重要技術(shù)。
評論