存儲(chǔ)器技術(shù)的發(fā)展使存儲(chǔ)器系統(tǒng)的性能得到提高,盡管峰值速率依然是存儲(chǔ)器技術(shù)最重要的參數(shù)之一,但其它結(jié)構(gòu)參數(shù)也極大地影響存儲(chǔ)器系統(tǒng)的性能。本文將重點(diǎn)介紹存儲(chǔ)器架構(gòu)對(duì)系統(tǒng)性能的影響。 存儲(chǔ)器技術(shù)大多數(shù)根據(jù)其運(yùn)行速度來命名。例如,PC100 SDRAM器件是指數(shù)據(jù)速率為100MHz的存儲(chǔ)技術(shù),PC133則表示數(shù)據(jù)速率為133MHz,等等。盡管這種命名的習(xí)慣隨著時(shí)間發(fā)展而變化,但通常還是能給潛在買家提供關(guān)于存儲(chǔ)器運(yùn)行速度的信息。事實(shí)上,今天的主流存儲(chǔ)技術(shù)都是按照其峰值數(shù)據(jù)速率來命名的,這將繼續(xù)成為評(píng)估存儲(chǔ)系統(tǒng)性能的要素之一。不過,在實(shí)際系統(tǒng)中,沒有存儲(chǔ)器能完全工作在其峰值速率下。 從寫命令轉(zhuǎn)換到讀命令,在某個(gè)時(shí)間訪問某個(gè)地址,以及刷新數(shù)據(jù)等操作都要求數(shù)據(jù)總線在一定時(shí)間內(nèi)保持休止?fàn)顟B(tài),這樣就不能充分利用存儲(chǔ)器通道。此外,寬并行總線和DRAM內(nèi)核預(yù)取都經(jīng)常導(dǎo)致不必要的大數(shù)據(jù)量存取。在指定的時(shí)間段內(nèi),存儲(chǔ)器控制器能存取的有用數(shù)據(jù)稱為有效數(shù)據(jù)速率,這很大程度上取決于系統(tǒng)的特定應(yīng)用。有效數(shù)據(jù)速率隨著時(shí)間而變化,常低于峰值數(shù)據(jù)速率。在某些系統(tǒng)中,有效數(shù)據(jù)速率可下降到峰值速率的10[%]以下?! ”?:每百周期發(fā)生兩個(gè)總線轉(zhuǎn)換時(shí)的有效數(shù)據(jù)速率和峰值數(shù)據(jù)速率。
通常,這些系統(tǒng)受益于那些能產(chǎn)生更高有效數(shù)據(jù)速率的存儲(chǔ)器技術(shù)的變化。在CPU方面存在類似的現(xiàn)象,最近幾年諸如AMD和 Transmeta等公司已經(jīng)指出,在測量基于CPU的系統(tǒng)的性能時(shí),時(shí)鐘頻率不是唯一的要素。存儲(chǔ)器技術(shù)已經(jīng)很成熟,峰值速率和有效數(shù)據(jù)速率或許并不比以前匹配的更好。盡管峰值速率依然是存儲(chǔ)器技術(shù)最重要的參數(shù)之一,但其他結(jié)構(gòu)參數(shù)也可以極大地影響存儲(chǔ)器系統(tǒng)的性能。 影響有效數(shù)據(jù)速率的參數(shù) 有幾類影響有效數(shù)據(jù)速率的參數(shù),其一是導(dǎo)致數(shù)據(jù)總線進(jìn)入若干周期的停止?fàn)顟B(tài)。在這類參數(shù)中,總線轉(zhuǎn)換、行周期時(shí)間、CAS延時(shí)以及RAS到CAS的延時(shí)(tRCD)引發(fā)系統(tǒng)結(jié)構(gòu)中的大部分延遲問題。 總線轉(zhuǎn)換本身會(huì)在數(shù)據(jù)通道上產(chǎn)生非常長的停止時(shí)間。以GDDR3系統(tǒng)為例,該系統(tǒng)對(duì)存儲(chǔ)器的開放頁不斷寫入數(shù)據(jù)。在這期間,存儲(chǔ)器系統(tǒng)的有效數(shù)據(jù)速率與其峰值速率相當(dāng)。不過,假設(shè)100個(gè)時(shí)鐘周期中,存儲(chǔ)器控制器從讀轉(zhuǎn)換到寫。由于這個(gè)轉(zhuǎn)換需要6個(gè)時(shí)鐘周期,有效的數(shù)據(jù)速率下降到峰值速率的 94[%]。在這100個(gè)時(shí)鐘周期中,如果存儲(chǔ)器控制器將總線從寫轉(zhuǎn)換到讀的話,將會(huì)丟失更多的時(shí)鐘周期。這種存儲(chǔ)器技術(shù)在從寫轉(zhuǎn)換到讀時(shí)需要15個(gè)空閑周期,這會(huì)將有效數(shù)據(jù)速率進(jìn)一步降低到峰值速率的79[%]。表1顯示出針幾種高性能存儲(chǔ)器技術(shù)類似的計(jì)算結(jié)果。 顯然,所有的存儲(chǔ)器技術(shù)并不相同。需要很多總線轉(zhuǎn)換的系統(tǒng)設(shè)計(jì)師可以選用諸如XDR、RDRAM或者DDR2這些更高效的技術(shù)來提升性能。另一方面,如果系統(tǒng)能將處理事務(wù)分組成非常長的讀寫序列,那么總線轉(zhuǎn)換對(duì)有效帶寬的影響最小。不過,其他的增加延遲現(xiàn)象,例如庫(bank)沖突會(huì)降低有效帶寬,對(duì)性能產(chǎn)生負(fù)面影響。 DRAM技術(shù)要求庫的頁或行在存取之前開放。一旦開放,在一個(gè)最小周期時(shí)間,即行周期時(shí)間(tRC)結(jié)束之前,同一個(gè)庫中的不同頁不能開放。對(duì)存儲(chǔ)器開放庫的不同頁存取被稱為分頁遺漏,這會(huì)導(dǎo)致與任何tRC間隔未滿足部分相關(guān)的延遲。對(duì)于還沒有開放足夠周期以滿足tRC間隙的庫而言,分頁遺漏被稱為庫沖突。而tRC決定了庫沖突延遲時(shí)間的長短,在給定的DRAM上可用的庫數(shù)量直接影響庫沖突產(chǎn)生的頻率。 表2:不同存儲(chǔ)技術(shù)的總峰值帶寬以及控制器管腳數(shù)的總線帶寬。
大多數(shù)存儲(chǔ)器技術(shù)有4個(gè)或者8個(gè)庫,在數(shù)十個(gè)時(shí)鐘周期具有tRC值。在隨機(jī)負(fù)載情況下,那些具有8個(gè)庫的內(nèi)核比具有4個(gè)庫的內(nèi)核所發(fā)生的庫沖突更少。盡管tRC與庫數(shù)量之間的相互影響很復(fù)雜,但是其累計(jì)影響可用多種方法量化。 存儲(chǔ)器讀事務(wù)處理 考慮三種簡單的存儲(chǔ)器讀事務(wù)處理情況。第一種情況,存儲(chǔ)器控制器發(fā)出每個(gè)事務(wù)處理,該事務(wù)處理與前一個(gè)事務(wù)處理產(chǎn)生一個(gè)庫沖突??刂破鞅仨氃诖蜷_一個(gè)頁和打開后續(xù)頁之間等待一個(gè)tRC時(shí)間,這樣增加了與頁循環(huán)相關(guān)的最大延遲時(shí)間。在這種情況下的有效數(shù)據(jù)速率很大程度上決定于I/O,并主要受限于DRAM內(nèi)核電路。最大的庫沖突頻率將有效帶寬削減到當(dāng)前最高端存儲(chǔ)器技術(shù)峰值的20[%]到30[%]。 在第二種情況下,每個(gè)事務(wù)處理都以隨機(jī)產(chǎn)生的地址為目標(biāo)。此時(shí),產(chǎn)生庫沖突的機(jī)會(huì)取決于很多因素,包括tRC和存儲(chǔ)器內(nèi)核中庫數(shù)量之間的相互作用。tRC值越小,開放頁循環(huán)地越快,導(dǎo)致庫沖突的損失越小。此外,存儲(chǔ)器技術(shù)具有的庫越多,隨機(jī)地址存取庫沖突的機(jī)率就越小。 第三種情況,每個(gè)事務(wù)處理就是一次頁命中,在開放頁中尋址不同的列地址??刂破鞑槐卦L問關(guān)閉頁,允許完全利用總線,這樣就得到一種理想的情況,即有效數(shù)據(jù)速率等于峰值速率。 第一種和第三種情況都涉及到簡單的計(jì)算,隨機(jī)情況受其他的特性影響,這些特性沒有包括在DRAM或者存儲(chǔ)器接口中。存儲(chǔ)器控制器仲裁和排隊(duì)會(huì)極大地改善庫沖突頻率,因?yàn)楦锌赡艹霈F(xiàn)不產(chǎn)生沖突的事務(wù)處理,而不是那些導(dǎo)致庫沖突的事務(wù)處理。 然而,增加存儲(chǔ)器隊(duì)列深度未必增加不同存儲(chǔ)器技術(shù)之間的相對(duì)有效數(shù)據(jù)速率。例如,即使增加存儲(chǔ)器控制隊(duì)列深度,XDR的有效數(shù)據(jù)速率也比 GDDR3高20[%]。存在這種增量主要是因?yàn)閄DR具有更高的庫數(shù)量以及更低的tRC值。一般而言,更短的tRC間隔、更多的庫數(shù)量以及更大的控制器隊(duì)列能產(chǎn)生更高的有效帶寬。 實(shí)際上,很多效率限制現(xiàn)象是與行存取粒度相關(guān)的問題。tRC約束本質(zhì)上要求存儲(chǔ)器控制器從新開放的行中存取一定量的數(shù)據(jù),以確保數(shù)據(jù)管線保持充滿。事實(shí)上,為保持?jǐn)?shù)據(jù)總線無中斷地運(yùn)行,在開放一個(gè)行之后,只須讀取很少量的數(shù)據(jù),即使不需要額外的數(shù)據(jù)。 另外一種減少存儲(chǔ)器系統(tǒng)有效帶寬的主要特性被歸類到列存取粒度范疇,它規(guī)定了每次讀寫操作必須傳輸?shù)臄?shù)據(jù)量。與之相反,行存取粒度規(guī)定每個(gè)行激活(一般指每個(gè)RAS的CAS操作)需要多少單獨(dú)的讀寫操作。列存取粒度對(duì)有效數(shù)據(jù)速率具有不易于量化的巨大影響。因?yàn)樗?guī)定一個(gè)讀或?qū)懖僮髦行枰獋鬏數(shù)淖钚?shù)據(jù)量,列存取粒度給那些一次只需要很少數(shù)據(jù)量的系統(tǒng)帶來了問題。例如,一個(gè)需要來自兩列各8字節(jié)的16字節(jié)存取粒度系統(tǒng),必須讀取總共32字節(jié)以存取兩個(gè)位置。因?yàn)橹恍枰?2個(gè)字節(jié)中的16個(gè)字節(jié),系統(tǒng)的有效數(shù)據(jù)速率降低到峰值速率的50[%]??偩€帶寬和脈沖時(shí)間長度這兩個(gè)結(jié)構(gòu)參數(shù)規(guī)定了存儲(chǔ)器系統(tǒng)的存取粒度。 表3:目前主流存儲(chǔ)技術(shù)的存取粒度和總線帶寬值。
總線帶寬是指連接存儲(chǔ)器控制器和存儲(chǔ)器件之間的數(shù)據(jù)線數(shù)量。它設(shè)定最小的存取粒度,因?yàn)閷?duì)于一個(gè)指定的存儲(chǔ)器事務(wù)處理,每條數(shù)據(jù)線必須至少傳遞一個(gè)數(shù)據(jù)位。而脈沖時(shí)間長度則規(guī)定對(duì)于指定的事務(wù)處理,每條數(shù)據(jù)線必須傳遞的位數(shù)量。每個(gè)事務(wù)處理中的每條數(shù)據(jù)線只傳一個(gè)數(shù)據(jù)位的存儲(chǔ)技術(shù),其脈沖時(shí)間長度為1??偟牧写嫒×6群芎唵危毫写嫒×6?總線寬度×脈沖時(shí)間長度。 很多系統(tǒng)架構(gòu)僅僅通過增加DRAM器件和存儲(chǔ)總線帶寬就能增加存儲(chǔ)系統(tǒng)的可用帶寬。畢竟,如果4個(gè)400MHz數(shù)據(jù)速率的連接可實(shí)現(xiàn) 1.6GHz的總峰值帶寬,那么8個(gè)連接將得到3.2GHz。增加一個(gè)DRAM器件,電路板上的連線以及ASIC的管腳就會(huì)增多,總峰值帶寬相應(yīng)地倍增。 首要的是,架構(gòu)師希望完全利用峰值帶寬,這已經(jīng)達(dá)到他們通過物理設(shè)計(jì)存儲(chǔ)器總線所能達(dá)到的最大值。具有256位甚或512位存儲(chǔ)總線的圖形控制器已并不鮮見,這種控制器需要1,000個(gè),甚至更多的管腳。封裝設(shè)計(jì)師、ASIC底層規(guī)劃工程師以及電路板設(shè)計(jì)工程師不能找到采用便宜的、商業(yè)上可行的方法來對(duì)這么多信號(hào)進(jìn)行布線的硅片區(qū)域。僅僅增加總線寬度來獲得更高的峰值數(shù)據(jù)速率,會(huì)導(dǎo)致因?yàn)榱写嫒×6认拗贫档陀行挕? 假設(shè)某個(gè)特定存儲(chǔ)技術(shù)的脈沖時(shí)間長度等于1,對(duì)于一個(gè)存儲(chǔ)器處理,512位寬系統(tǒng)的存取粒度為512位(或者64字節(jié))。如果控制器只需要一小段數(shù)據(jù),那么剩下的數(shù)據(jù)就被浪費(fèi)掉,這就降低了系統(tǒng)的有效數(shù)據(jù)速率。例如,只需要存儲(chǔ)系統(tǒng)32字節(jié)數(shù)據(jù)的控制器將浪費(fèi)剩余的32字節(jié),進(jìn)而導(dǎo)致有效的數(shù)據(jù)速率等于50[%]的峰值速率。這些計(jì)算都假定脈沖時(shí)間長度為1。隨著存儲(chǔ)器接口數(shù)據(jù)速率增加的趨勢,大多數(shù)新技術(shù)的最低脈沖時(shí)間長度都大于1。 內(nèi)核預(yù)取 一種稱為內(nèi)核預(yù)取的功能主要負(fù)責(zé)增加最小的脈沖時(shí)間長度。DRAM內(nèi)核電路不能跟上I/O電路速度的速增。由于數(shù)據(jù)不能再連續(xù)地從內(nèi)核中取出以確??刂破餍枨?,內(nèi)核通常為I/O提供比DRAM總線寬度更大的數(shù)據(jù)集。 本質(zhì)上,內(nèi)核傳輸足夠的數(shù)據(jù)到接口電路,或者從接口電路傳輸足夠的數(shù)據(jù),以使接口電路保持足夠長時(shí)間的繁忙狀態(tài),以便讓內(nèi)核準(zhǔn)備下一個(gè)操作。例如,假設(shè)DRAM內(nèi)核每個(gè)納秒才能對(duì)操作響應(yīng)一次。不過,接口可以支持每納秒兩位的數(shù)據(jù)速率。 DRAM內(nèi)核每次操作取兩個(gè)數(shù)據(jù)位,而不是一個(gè)數(shù)據(jù)位,因而不必浪費(fèi)接口一半的容量。在接口傳輸數(shù)據(jù)之后,內(nèi)核已經(jīng)準(zhǔn)備好響應(yīng)下一個(gè)請(qǐng)求,而不需增加延時(shí)。增加的內(nèi)核預(yù)取導(dǎo)致最小脈沖時(shí)間長度增加為2,這將直接影響列存取粒度。 對(duì)于每個(gè)增加到總線寬度的額外信號(hào),存儲(chǔ)器接口將傳輸兩個(gè)額外的數(shù)據(jù)位。因此具有最小脈沖時(shí)間長度為2的512位寬的存儲(chǔ)系統(tǒng),其取粒度為 1,024位(128字節(jié))。很多系統(tǒng)對(duì)最小存取粒度的問題并不敏感,因?yàn)樗鼈兇鎯?chǔ)大量的數(shù)據(jù)。不過,某些系統(tǒng)依賴存儲(chǔ)器系統(tǒng)提供小的數(shù)據(jù)單元,并獲益于更窄、更有效的存儲(chǔ)器技術(shù)。 小結(jié) 隨著存儲(chǔ)技術(shù)向峰值數(shù)據(jù)速率發(fā)展,有效的數(shù)據(jù)速率變的越來越重要。在選擇存儲(chǔ)器時(shí),設(shè)計(jì)師必須深入了解已公布的存儲(chǔ)器規(guī)范,并明白某個(gè)特定的技術(shù)特性將對(duì)應(yīng)用設(shè)計(jì)產(chǎn)生怎樣的影響。存儲(chǔ)器系統(tǒng)設(shè)計(jì)師必須超越峰值數(shù)據(jù)速率規(guī)范,就像CPU設(shè)計(jì)師不再用千兆Hz作為唯一的性能衡量標(biāo)準(zhǔn)一樣。盡管對(duì)于存儲(chǔ)器接口而言,峰值數(shù)據(jù)速率依然是最終要的性能規(guī)范,但有效的數(shù)據(jù)速率已開始為系統(tǒng)設(shè)計(jì)師和架構(gòu)師提供更大的空間。未來產(chǎn)品的性能將極大地取決于其存儲(chǔ)器系統(tǒng)的有效利用程度。
相關(guān)資訊
穎展電子最新產(chǎn)品
同類文章排行
- 走進(jìn)十大最常用電子元器件,你了解幾個(gè)?
- 什么是ic驅(qū)動(dòng)電源芯片 如何配置在LED燈具上?
- 3月幫電容廠打工,4月幫電阻廠商打工,5月MLCC又來收租!
- 國內(nèi)權(quán)威專家:我國光電子高端芯片研制已具備基本條件
- 重磅!恒大進(jìn)軍半導(dǎo)體!1000億!
- 智能ic芯片提升機(jī)器人技術(shù)應(yīng)用領(lǐng)域
- 電子元器件行業(yè)2017年度投資策略:關(guān)注集成電路和汽車電子
- 這類產(chǎn)品比石油還稀缺,中國8年逆差上萬億美元
- 存儲(chǔ)器架構(gòu)對(duì)系統(tǒng)性能的影響
- 2016下半年電子元器件行業(yè)最新動(dòng)態(tài)行情
最新資訊文章
您的瀏覽歷史
