專利名稱:存儲器存取速度的動態(tài)控制的制作方法
技術領域:
本發(fā)明大體而言涉及存儲器,且更具體而言,涉及對存儲器存取速度的動態(tài)控制。
背景技術:
目前,存儲器在數(shù)字系統(tǒng)中廣泛地用于存儲各種處理實體所需的數(shù)據(jù)。存儲器系 統(tǒng)通常包括管理對存儲器的存取的存儲器控制器。典型的存儲器通常具有由存儲單元 的行與列形成的矩陣結構,其中每一存儲單元都能夠存儲數(shù)據(jù)。處理實體或其他源可 通過向存儲器控制器提供適宜的行及列地址來存取存儲單元。行與列地址可通過總線 發(fā)送,其中行地址占用總線上的較低階位,列地址占用總線上的較高階位。本文中將 行與列地址統(tǒng)稱為"地址"。
存儲器控制器可用于根據(jù)地址為存儲器產生適宜的控制信號。更具體而言,存儲 器控制器可向存儲器提供"行存取選通",以將內部指針移動至適宜的行。通常將此視 為在存儲器中打開"頁面"。 一旦頁面打開,存儲器控制器可向存儲器提供"列存取選 通",以在所選擇的行中存取存儲單元。因此,可易知,與任何存儲器操作相關聯(lián)的延 遲取決于處理實體正嘗試存取存儲器中的開放頁面還是未開放頁面。如果處理實體正 嘗試存取存儲器中的未開放頁面,則存儲器控制器必須向存儲器提供行存取選通,以 在提供列存取選通前移動指針。另一方面,如果處理實體正嘗試存取存儲器中的開放 頁面,則存儲器控制器只需向存儲器提供列存取選通。
隨著基于功能更強大的處理器的軟件程序的出現(xiàn),對存儲器的要求提高了。因此, 具有高速存取的高性能存儲器在市場中變得更加普遍。與性能較低的存儲器系統(tǒng)相比, 這些高性能存儲器系統(tǒng)往往消耗更多的功率。這在例如蜂窩式及無線電話、膝上型計 算機、個人數(shù)字助理(PDA)等依靠電池操作的裝置中尤其重要。在這些裝置以及其 他應用中,節(jié)電考慮可決定了在存儲器存取速度方面的設計性能偏低。這些較低性能 的設計往往延長電池的壽命,但卻經常使一個或多個處理實體必須等待存取存儲器。
發(fā)明內容
在本發(fā)明一個方面中,提供一種存儲器系統(tǒng),其包括存儲器;及存儲器控制器,
其經配置以產生多個控制信號來存取所述存儲器,所述存儲器控制器進一步經配置以 調節(jié)所述控制信號間的定時,以根據(jù)與所述存儲器系統(tǒng)的操作有關的參數(shù)來改變存儲 器存取速度。
本發(fā)明另一個方面中,提供一種用于在存儲器系統(tǒng)中存取存儲器的方法,其包括: 產生多個控制信號以存取所述存儲器;及調整所述控制信號之間的定時,以根據(jù)與所 述存儲器系統(tǒng)的操作有關的參數(shù)來改變存儲器存取速度。
在本發(fā)明又一個方面中,提供一種存儲器系統(tǒng),其包括存儲器;及存儲器控制 器,其包含用于產生多個控制信號以存取所述存儲器的裝置;及用于調節(jié)所述控制 信號之間的定時以根據(jù)與所述存儲器系統(tǒng)的操作有關的參數(shù)來改變存儲器存取速度的 裝置。
應了解,根據(jù)下文的詳細闡述,所屬領域的技術人員將易知本發(fā)明的其它實施例, 其中本發(fā)明的各種實施例均以圖解說明的方式加以顯示及闡述。應了解,本發(fā)明能夠 具有其它且不同的實施例,并能夠在各種其它方面對其數(shù)個細節(jié)予以修改,此均不違 背本發(fā)明的精神及范圍。因此,應將這些附圖及詳細說明視為例示性而非限制性的。
圖l是概念性方塊圖,其圖解說明存儲器系統(tǒng)的實例;
圖2是圖解說明由存儲器控制器產生以用于進行高速存儲器存取的各種控制信號 的實例的時序圖3是圖解說明由存儲器控制器產生以用于進行低速存儲器存取的各種控制信號 的實例的時序圖4是功能性方塊圖,其圖解說明可如何調節(jié)存儲器控制信號的一個實例。
具體實施例方式
下文結合附圖所闡述的詳細說明意在說明本發(fā)明的各種實施例,而非代表本發(fā)明 僅可實施為這些實施例。詳細說明包括具體細節(jié),以便達成對本發(fā)明的透徹了解。然 而,所屬領域的技術人員應了解,本發(fā)明的實施也可以不使用這些具體細節(jié)。在某些 實例中,以方塊圖的形式顯示各眾所周知的結構及組件,以免淡化對本發(fā)明的說明。
在存儲器系統(tǒng)的一個實施例中,可基于一個或多個參數(shù)(例如當前對存儲器系統(tǒng) 的要求)動態(tài)地調節(jié)存取速度。在這個實例中,當對存儲器的要求較高時,存儲器控 制器可通過調節(jié)存儲器的各種控制信號之間的定時來提高存取速度。此可通過以存儲 器所能處理的速度從存儲器控制器發(fā)出行及列存取選通信號來實現(xiàn)。更具體而言,可
將兩個連續(xù)的列存取選通信號之間的延遲(tccD)設定成為存取存儲器中的開放頁面 所需的最短時間,可將行存取選通信號及列存取選通信號之間的延遲(tRCD)設定成 為存取存儲器中新的頁面所需的最短時間,且可將兩個連續(xù)的行存取選通之間的延遲 (tRRD)設定為頁面必須保持開放直到新頁面可打開的最短時間。當對存儲器的要求 降低時,可將行存取選通信號與列存取選通信號之間的延遲動態(tài)地提高以減少功率消 耗。
圖l是概念性方塊圖,其圖解說明存儲器系統(tǒng)的實例。存儲器系統(tǒng)100包括存儲 器102,存儲器102可以是同步動態(tài)隨機存取存儲器(SDRAM)或任何其它類型的存 儲器。存儲器控制器104可用于管理各種處理實體(未顯示)對存儲器102的存取。 存儲器系統(tǒng)100也可包括數(shù)據(jù)隊列106,以為在各種處理實體與存儲器102之間傳輸 的數(shù)據(jù)提供雙向緩沖,且可包含命令隊列108,以緩沖與所述數(shù)據(jù)相關聯(lián)的存儲器存 取命令。每一命令可包括對存儲器102中特定地址的讀取或寫入操作請求。存儲器控 制器104可用于通過向存儲器102提供控制信號來執(zhí)行命令隊列108中的命令??刂?信號可包括行及列存取選通、以及讀取/寫入啟用信號。
圖2是圖解說明存儲器控制器所產生的各種控制信號的實例的時序圖。時鐘214 可用于將對存儲器的存取同步。在第一時鐘周期201中,存儲器控制器可從命令隊列 中檢索請求對存儲器中的新頁面進行寫入操作的命令。作為響應,存儲器控制器向存 儲器提供行存取選通信號216。在這個實例中,存儲器需要至少兩個時鐘周期來移動
其內部指針至所選擇的行,因此,存儲器控制器將tKCD設定為2。
在第三時鐘周期203中,存儲器控制器向存儲器提供列存取選通信號218,以激 活所選擇的行中適宜的列。在列存取選通信號218期間,存儲器對讀取/寫入啟用信號 220進行采樣,以確定正在請求寫入操作。響應于寫入操作請求,存儲器控制器從數(shù) 據(jù)隊列中釋放數(shù)據(jù)至存儲器中。
存儲器控制器可從命令隊列中檢索請求對存儲器中的新頁面進行讀取操作的另 一命令。然而,在這個實例中,存儲器中的頁面必須將開放狀態(tài)保持至少四個時鐘周 期,以確保正確的操作,因此,存儲器控制器將tRRD設定為4。結果,存儲器控制器 在第四時鐘周期204中向存儲器提供行存取選通信號216。作為響應,存儲器控制器 移動其內部指針至對應于存儲器中新頁面的行。
在向存儲器提供列存取選通信號218之前,存儲器控制器再多等待兩個時鐘周期, 直到第六時鐘周期206。在列存取選通信號218期間,存儲器對讀取/寫入啟用信號220 進行采樣以確定正在請求讀取操作。響應于讀取操作請求,存儲器可開始傳送數(shù)據(jù)222 至數(shù)據(jù)隊列。
存儲器控制器可從命令隊列中檢索請求對存儲器中同一頁面進行讀取操作的另 一命令。在這個實例中,在兩個連續(xù)列地址選通信號之間的最短延遲為2,因此,存 儲器控制器將tccD設定為2。結果,存儲器控制器在第八時鐘周期208中向存儲器提 供列存取選通信號218。在列存取選通信號218期間,存儲器對讀取/寫入啟用信號220 進行采樣,以確定正在請求讀取操作。響應于讀取操作請求,存儲器可開始傳送數(shù)瑪 222至數(shù)據(jù)隊列。
在圖2圖解說明的實例中,存儲器控制器設定控制信號來以最高速度存取存儲器。 如果某些操作條件改變,則存儲器控制器可調節(jié)這些控制信號及/或其它控制信號以降 低存儲器存取速度。舉例而言,當對存儲器的要求較低時,存儲器控制器可提高行存 取選通信號與列存取選通信號之間的延遲以節(jié)省功率。存儲器控制器用以確定對存儲
器的要求的方式可呈多種形式。在一個實施例中,存儲器控制器可基于命令隊列中命 令的數(shù)目來調節(jié)一個或多個控制信號。當命令隊列中命令的數(shù)目上升至高于第一閾值 時,存儲器控制器可通過縮短行存取選通信號與列存取選通信號之間的延遲來將存儲 器設定為進行高速存取。當命令隊列中命令的數(shù)目下降至低于第二閾值時,存儲器控 制器可將存儲器設定為進行低速存取。第一閾值與第二閾值可以相同或不同。在后一 種情況下,滯后可防止存儲器控制器使存儲器在高存取速度與低存取速度之間間歇地 轉變。舉例而言,第一閾值可設定成使命令隊列為30%滿的命令數(shù)目,第二閾值可設 定成使命令隊列為20%滿的命令數(shù)目,從而在20%與30%之間產生10%的滯后帶。
或者,滯后帶可用于為媒體對存儲器的存取速度設定一個或多個控制信號。用于 任何特定應用的實際閾值水平可取決于各種因素,包括系統(tǒng)性能要求以及總體設計約 束條件。
在存儲器系統(tǒng)的某些實施例中,存儲器控制器可經配置以基于除對存儲器的要求 以外的其它考慮因素來調節(jié)一個或多個控制信號的定時。舉例而言,存儲器控制器可 基于溫度來調節(jié)一個或多個控制信號的定時。如果溫度過高,即使在對存儲器的要求 較高的周期期間,存儲器控制器也可禁止對存儲器的高速存取。這可通過將行存取選 通信號與列存取選通信號之間的延遲隨溫度的提高而提高來實現(xiàn)。
在存儲器系統(tǒng)的相同及/或替代實施例中,存儲器控制器可經配置以基于命令隊列 中命令的齡期調節(jié)一個或多個控制信號的定時。該方法可非常適合于使用多個存儲庫 且每一存儲庫一單獨命令隊列的存儲器系統(tǒng)。在該配置中, 一個存儲庫的命令塊可隨 著存儲器控制器執(zhí)行其他存儲庫的命令而老化。當這種情況發(fā)生時,即使對存儲器及/ 或存儲庫的總體要求較低,存儲器控制器也可通過其命令隊列中的老化命令來調節(jié)存 儲器以用于對存儲庫進行高速存取。
圖3是圖解說明存儲器控制器所產生的用于對存儲器進行低速存取的各種控制信 號的另一實例的時序圖。在這個實例中,行存取選通信號與列存取選通信號之間的延 遲tRCD已從兩個時鐘周期提高到三個時鐘周期,兩個連續(xù)的行存取選通信號之間的延 遲tRRD已從四個時鐘周期提高到六個時鐘周期,且兩個連續(xù)的列存取選通信號之間的 延遲tCCD己從兩個時鐘周期提高到三個時鐘周期。
參照圖3,存儲器控制器可從命令隊列中檢索請求對存儲器中新頁面進行寫入操 作的一命令。作為響應,存儲器控制器在第一時鐘周期201中向存儲器提供行存取選 通信號216,且在第四時鐘周期204中向存儲器提供列存取選通信號218以激活所選 擇的行中適宜的列。在列存取選通信號218期間,存儲器對讀取/寫入啟用信號220進 行采樣以確定正在請求寫入操作。響應于寫入操作請求,存儲器控制器從數(shù)據(jù)隊列中 釋放數(shù)據(jù)至存儲器中。
存儲器控制器可從命令隊列中檢索請求對存儲器中的新頁面進行讀取操作的另 一命令。在這個實例中,存儲器控制器在第六個時鐘周期206中向存儲器提供行存取 選通信號216,且在第九個時鐘周期209中向存儲器提供列存取選通信號218。在列存
取選通信號218期間,存儲器對讀取/寫入啟用信號220進行采樣以確定正在請求讀取 操作。響應于讀取操作請求,存儲器可開始傳送數(shù)據(jù)222至數(shù)據(jù)隊列。
存儲器控制器可從命令隊列中檢索請求對存儲器中同一頁面進行讀取操作的另 一命令。在這個實例中,存儲器控制器在第十二時鐘周期212中向存儲器提供列存取 選通信號218。在列存取選通218期間,存儲器對讀取/寫入啟用信號220進行采樣以 確定正在請求讀取操作。響應于讀取操作請求,存儲器可開始傳送數(shù)據(jù)222至數(shù)據(jù)隊 列。
存儲器控制器可通過各種方式調節(jié)控制信號之間的定時。圖4是功能性方±央圖, 其圖解說明可如何調節(jié)控制信號的一個實例。定時參數(shù)寄存器402可用于存儲用于對 存儲器進行高速存取的定時參數(shù)值。舉例而言,定時參數(shù)值可以是為存取存儲器中的 開放頁面所需的最短時間(tCCD)、為存取存儲器中的新頁面所需的最短時間(tRCD) 以及頁面必須保持開放直到新頁面可以打開的最短時間(tRRD)。
加法器404可用于基于當前的操作情況來提高定時參數(shù)值。定時參數(shù)的提高量可 由多路復用器406來確定,在這個實例中,多路復用器406基于對存儲器及對操作溫 度兩者的要求來選擇延遲值以加至定時參數(shù)值中??筛鶕?jù)命令隊列所產生的指示其排 滿程度的信號確定對存儲器的要求,且可根據(jù)一個或多個溫度傳感器所產生的信號確 定操作溫度??蓪⒍〞r參數(shù)值與延遲值的總和在適宜的時間載入計數(shù)器408,并在每 一時鐘周期中對計數(shù)器408進行倒計數(shù)。當計數(shù)器408達到零時,可向存儲器提供控 制信號。
現(xiàn)在,將結合行存取選通信號與列存取選通信號之間的定時kcD闡述一實例。在 此種情況下,多路復用器408基于命令隊列中命令的數(shù)目及操作溫度來選擇延遲值。 舉例而言,當命令隊列排滿到較高水平時,如果操作溫度較低,則可選擇延遲值"O", 且如果操作溫度較高,則可選擇延遲值"1"。這不僅能在存儲器存取速度方面實現(xiàn)最 高的性能,而且還使存儲器的存取速度在操作溫度升高時能夠回調。當命令隊列中的 命令下降到較低的水平時,如果操作溫度較低,則可選擇延遲值"2",且如果操作溫 度較高,則可選擇延遲值"3"??傊蓪⑺x擇的延遲值加至定時參數(shù)值,且可將 得出的總和提供至計數(shù)器408的輸入。存儲器控制器產生的行存取選通信號可用于載 入計數(shù)器。計數(shù)器408隨后在每一時鐘周期中進行倒計數(shù),直到其達到零為止。來自 計數(shù)器408的零輸出可作為列存取選通信號提供至存儲器。
結合本文所揭示實施例闡述的各種例示性邏輯塊、模塊、電路、元件及/或組件可 通過通用處理器、數(shù)字信號處理器(DSP)、應用專用集成電路(ASIC)、現(xiàn)場可編程 門陣列(FPGA)或其它可編程邏輯組件、離散門或晶體管邏輯、離散硬件組件、或設 計用于執(zhí)行本文所述功能的其任何組合來實施或執(zhí)行。通用處理器可為微處理器,但 另一選擇為,處理器也可為任何常規(guī)處理器、控制器、微控制器、或狀態(tài)機。處理器 也可實施為計算組件的組合,例如DSP與微處理器的組合、多個微處理器的組合、一 個或多個微處理器與DSP核心的組合、或任何其它這種配置。
結合本文所揭示實施例闡述的方法或算法可直接實施在硬件、可由處理器執(zhí)行的
軟體模塊、或兩者的組合中。軟件模塊可常駐于RAM存儲器、閃速存儲器、ROM存 儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、可裝卸磁盤、CD-ROM、 或現(xiàn)有技術中已知的任何其它形式的存儲媒體中。存儲媒體可耦接至處理器,以使處 理器可自存儲媒體讀取信息或向存儲媒體寫入信息。或者,存儲媒體可為處理器的組 成部分。
提供上述有關所揭示實施例的說明意在使任何所屬領域的技術人員都能夠制作 或使用本發(fā)明。所屬領域的技術人員將易知這些實施例的各種修改,且本文所定義的 一般原理也可適用于其它實施例,此并不違背本發(fā)明的精神或范圍。因此,本發(fā)明并 非意在限定為本文所示實施例,而是意在符合與權利要求書相一致的全部范圍,其中 除非明確指明,否則,以單數(shù)形式提及的元件并非意在表示"一個且只有一個",而是 "一個或多個"的意思。所有所屬領域的一般技術人員所熟知或此后將熟知的貫穿本 揭示內容所闡述的各種實施例的元件的結構及功能等效物都明確地以引用方式并入本 文中并意在涵蓋于權利要求書中。此外,無論是否在權利要求書中明確引用此揭示內 容,本文的揭示內容均并意在奉獻給大眾。權利要求書的要素都不根據(jù)35U.S.C. § 112 第六段的規(guī)定加以解釋,除非使用短語"用于…的裝置"明確描述所述要素,或在方 法項中使用短語"用于…的步驟"描述所述要素。
權利要求
1、一種存儲器系統(tǒng),其包含存儲器;及存儲器控制器,其經配置以產生多個控制信號來存取所述存儲器,所述存儲器控制器進一步經配置以調節(jié)所述控制信號之間的定時,以根據(jù)與所述存儲器系統(tǒng)的操作有關的參數(shù)改變所述存儲器存取速度。
2、 如權利要求1所述的存儲器系統(tǒng),其中所述參數(shù)與對所述存儲器的要求有關。
3、 如權利要求1所述的存儲器系統(tǒng),其進一步包含命令隊列,所述命令隊列經 配置以自一個或多個源接收多個存儲器存取命令,且其中所述參數(shù)與所述命令隊列中 的所述命令的數(shù)目有關。
4、 如權利要求3所述的存儲器系統(tǒng),其中如果所述命令隊列中所述命令的數(shù)目 上升至高于第一閾值,則所述存儲器控制器進一步經配置以調節(jié)所述控制信號之間的 定時,以將所述存儲器存取速度改變?yōu)榈?一存取速度,且如果所述命令隊列中所述命 令的數(shù)目下降至低于第二閾值,則將所述存儲器存取速度改變?yōu)榈诙嫒∷俣龋?第一存取速度快于所述第二存取速度。
5、 如權利要求4所述的存儲器系統(tǒng),其中所述第一與第二閾值是相同的。
6、 如權利要求4所述的存儲器系統(tǒng),其中所述第一與第二閾值是不同的。
7、 如權利要求1所述的存儲器系統(tǒng),其中所述控制信號包含行存取選通信號及 列存取選通信號。
8、 如權利要求7所述的存儲器系統(tǒng),其中所述存儲器控制器進一步經配置以通 過改變所述行存取選通信號中的兩者、所述列存取選通信號中的兩者、或所述行存取 選通信號中的一者與所述列存取選通信號中的一者之間的延遲來調節(jié)所述控制信號之 間的所述定時。
9、 如權利要求1所述的存儲器系統(tǒng),其中所述參數(shù)進一步與所述存儲器系統(tǒng)的 溫度有關。
10、 如權利要求1所述的存儲器系統(tǒng),其進一步包含命令隊列,所述命令隊列經 配置以自一個或多個源接收多個存儲器存取命令,且其中所述參數(shù)與所述命令隊列中 一個或多個所述命令的齡期有關。
11、 如權利要求1所述的存儲器系統(tǒng),其進一步包含命令隊列,所述命令隊列經 配置以自一個或多個源接收多個存儲器存取命令,且其中所述參數(shù)與所述命令隊列中 所述命令的數(shù)目及所述存儲器系統(tǒng)的溫度有關,且其中所述控制信號包含行存取選通 信號及列存取選通信號。
12、 一種用于存取存儲器系統(tǒng)中的存儲器的方法,其包含 產生多個控制信號,以存取所述存儲器;及 對所述控制信號之間的定時進行調節(jié),以根據(jù)與所述存儲器系統(tǒng)的操作有關的參 數(shù)來改變所述存儲器存儲速度。
13、 如權利要求12所述的方法,其中所述參數(shù)與對所述存儲器的要求有關。
14、 如權利要求12所述的方法,其進一步包含將多個存儲器存取命令自一個或多個源接收至命令隊列中,且其中所述參數(shù)與所述命令隊列中所述命令的數(shù)目有關。
15、 如權利要求14所述的方法,其中響應于所述命令隊列中所述命令的數(shù)目上 升至高于第一閾值,調節(jié)所述控制信號之間的所述定時以將所述存儲器存取速度改變 為第一存取速度,及響應于所述命令隊列中所述命令的數(shù)目下降至低于第二閾值,將 所述存儲器存取速度改變?yōu)榈诙嫒∷俣龋龅谝淮嫒∷俣瓤煊谒龅诙嫒∷俣取?br>
16、 如權利要求15所述的方法,其中所述第一及第二閾值是相同的。
17、 如權利要求15所述的方法,其中所述第一及第二閾值是不同的。
18、 如權利要求12所述的方法,其中所述控制信號包含行存取選通信號及列存 取選通信號。
19、 如權利要求18所述的方法,其中通過改變所述行存取選通信號中的兩者、 所述列存取選通信號中的兩者、或所述行存取選通信號中的一者與所述列存取選通信 號中的一者之間的所述延遲來調節(jié)所述控制信號之間的所述定時。
20、 如權利要求12所述的方法,其中所述參數(shù)進一步與所述存儲器系統(tǒng)的溫度 有關。
21、 如權利要求12所述的方法,其進一步包含將多個存儲器存取命令自一個 或多個源接收至命令隊列中,且其中所述參數(shù)與所述命令隊列中一個或多個命令的齡 期有關。
22、 如權利要求12所述的方法,其進一步包含將多個存儲器存取命令自一個 或多個源接收至命令隊列中,及監(jiān)視所述存儲器系統(tǒng)的溫度,且其中所述參數(shù)與所述 命令隊列中所述命令的數(shù)目及所述所監(jiān)視的溫度有關,且其中所述控制信號包含行存 取選通信號及列存取選通信號。
23、 一種存儲器系統(tǒng),其包含 存儲器;及存儲器控制器,其包含用于產生多個控制信號以存取所述存儲器的裝置,及用于調節(jié)所述控制信號之間的定時以根據(jù)與所述存儲器系統(tǒng)的操作有關的參數(shù)來改變所 述存儲器存取速度的裝置。
全文摘要
本發(fā)明揭示一種其中可調節(jié)存取速度的存儲器系統(tǒng)。所述存儲器系統(tǒng)可包括存儲器及存儲器控制器。所述存儲器控制器可經配置以產生多個控制信號來存取所述存儲器,且調節(jié)控制信號之間的定時,以根據(jù)與存儲器系統(tǒng)操作有關的參數(shù)來改變存儲器存取速度。
文檔編號G06F13/16GK101103344SQ200580046939
公開日2008年1月9日 申請日期2005年11月22日 優(yōu)先權日2004年11月24日
發(fā)明者羅伯特·邁克爾·沃克 申請人:高通股份有限公司