專利名稱:存儲(chǔ)器功率管理的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及一種存儲(chǔ)系統(tǒng)、存儲(chǔ)系統(tǒng)的模塊以及用于管理所述存儲(chǔ)系統(tǒng)功耗的方 法。
背景技術(shù):
典型的計(jì)算機(jī)系統(tǒng)包括中央處理器、輸入/輸出設(shè)備和存儲(chǔ)器。所述中央處理器 (Central Processing Unit, CPU)可包括邏輯處理電路和算術(shù)處理電路,并且所述中央處 理器還可包括用于存儲(chǔ)直接由CPU使用的指令和數(shù)據(jù)的高速存儲(chǔ)器。輔助存儲(chǔ)器用于存儲(chǔ) 由計(jì)算機(jī)系統(tǒng)使用的額外的指令和數(shù)據(jù),并且所述存儲(chǔ)器可以為易失性存儲(chǔ)器或非易失性 存儲(chǔ)器,以及依賴成本、存取速率、存儲(chǔ)容量、存取時(shí)間以及吞吐量的考慮,所述存儲(chǔ)器可以 是各種類型??偟膩碚f,計(jì)算機(jī)系統(tǒng)中的存儲(chǔ)量通常大大超出由CPU在短期基礎(chǔ)上存取的 指令和數(shù)據(jù)的數(shù)量。
發(fā)明內(nèi)容
本發(fā)明公開了一種存儲(chǔ)系統(tǒng),所述存儲(chǔ)系統(tǒng)包括第一存儲(chǔ)模塊、第二存儲(chǔ)模塊、總 線接口和存儲(chǔ)電路,每一個(gè)存儲(chǔ)模塊具有可配置成發(fā)布刷新指令的控制器。所述第一存儲(chǔ) 模塊和第二存儲(chǔ)模塊通過根存儲(chǔ)模塊與存儲(chǔ)控制器通信,并且所述第一存儲(chǔ)模塊的功率狀 態(tài)獨(dú)立于所述第二存儲(chǔ)模塊的功率狀態(tài)。一方面,本發(fā)明描述了一種存儲(chǔ)系統(tǒng),所述存儲(chǔ)系統(tǒng)包括具有模塊控制器的多個(gè) 存儲(chǔ)模塊、總線接口和存儲(chǔ)電路。所述多個(gè)存儲(chǔ)模塊通過根模塊與存儲(chǔ)控制器連接,并且一 組存儲(chǔ)模塊的擦除操作由所述存儲(chǔ)控制器協(xié)調(diào)。一種具有多個(gè)存儲(chǔ)模塊的存儲(chǔ)系統(tǒng)中的存儲(chǔ)模塊包括總線接口、配置成發(fā)布存儲(chǔ) 刷新指令的控制器和易失性存儲(chǔ)電路。當(dāng)數(shù)據(jù)沒有正被讀取或者沒有正被寫入所述存儲(chǔ)電 路時(shí),則所述總線接口、控制器和易失性存儲(chǔ)電路中至少有一個(gè)置于低功率狀態(tài),并且當(dāng)所 述存儲(chǔ)電路處于所述低功率狀態(tài)時(shí),所述易失性存儲(chǔ)電路的刷新操作開始。一種管理存儲(chǔ)系統(tǒng)的方法包括如下步驟提供多個(gè)存儲(chǔ)模塊,所述存儲(chǔ)模塊具有 總線接口、存儲(chǔ)電路和控制器;提供總線,所述總線提供所述多個(gè)存儲(chǔ)模塊和存儲(chǔ)控制器之 間的連通性。對(duì)于每一個(gè)存儲(chǔ)模塊,確定在所述存儲(chǔ)模塊的存儲(chǔ)電路上否正在執(zhí)行讀取或 寫入操作,當(dāng)讀取或?qū)懭氩僮鳑]有執(zhí)行時(shí),至少使所述存儲(chǔ)模塊的存儲(chǔ)電路處于低功率狀 態(tài),并且向所述存儲(chǔ)電路發(fā)布刷新指令。本發(fā)明公開了一種計(jì)算機(jī)程序產(chǎn)品,所述產(chǎn)品可儲(chǔ)存在存儲(chǔ)器中,并且所述產(chǎn)品 包括可由存儲(chǔ)模塊的控制器執(zhí)行的指令以實(shí)現(xiàn)如下功能確定讀取或?qū)懭氩僮魇欠癖徽?qǐng)求 或者是否正在本地存儲(chǔ)器上執(zhí)行;當(dāng)讀取或?qū)懭氩僮鳑]有正被請(qǐng)求或者沒有正在所述本地 存儲(chǔ)器上執(zhí)行時(shí),則將所述本地存儲(chǔ)器置于低功率狀態(tài);以及,向所述本地存儲(chǔ)器發(fā)布刷新 指令使所述本地存儲(chǔ)器執(zhí)行刷新操作。
圖1是具有可配置開關(guān)元件(Configurable Switching Element, CSE)的存儲(chǔ)模 塊的簡(jiǎn)化框圖。圖2是具有分支樹結(jié)構(gòu)的存儲(chǔ)系統(tǒng)的一部分。圖3是CSE的狀態(tài)轉(zhuǎn)換圖。圖4是具有多個(gè)存儲(chǔ)電路的存儲(chǔ)模塊的框圖。圖5是商用存儲(chǔ)電路的框圖。圖6是存儲(chǔ)電路的狀態(tài)轉(zhuǎn)換圖。圖7是存儲(chǔ)系統(tǒng)的時(shí)序圖,該時(shí)序圖示出用在獨(dú)立磁盤冗余陣列(Redundant Array of Independent Disk, RAID)組中的存儲(chǔ)模塊,以及示出當(dāng)操作存儲(chǔ)器以便允許同 時(shí)讀取四個(gè)存儲(chǔ)模塊時(shí)每一個(gè)存儲(chǔ)模塊的變化狀態(tài)。圖8是以具有多重根的樹形結(jié)構(gòu)排列的存儲(chǔ)系統(tǒng)的多個(gè)存儲(chǔ)模塊的框圖。
具體實(shí)施例方式參考附圖可更好地理解作為例證的實(shí)施方式,但是這些實(shí)施例無意限制本發(fā)明。 在相同或不同的附圖中的相同編號(hào)的元件執(zhí)行相同的功能。元件可以被編號(hào)或者由縮寫標(biāo) 明,或者同時(shí)被編號(hào)和由縮寫標(biāo)明,并且選擇用編號(hào)還是用縮寫還是同時(shí)用編號(hào)和縮寫表 示僅僅是為了清楚起見,所以基于此,不應(yīng)該區(qū)分由數(shù)字標(biāo)明的元件和由縮寫標(biāo)明或由字 母數(shù)字符號(hào)標(biāo)明的相同元件。當(dāng)描述特定的實(shí)施例時(shí),所述實(shí)施例可包括特定的特征、結(jié)構(gòu)或特性,但是每一個(gè) 實(shí)施例可以不必須包括所述特定的特征、結(jié)構(gòu)或特性。這不應(yīng)視為如下示意或暗示兩個(gè)或 兩個(gè)以上實(shí)施例的特征、結(jié)構(gòu)或特性不應(yīng)該或者不能被結(jié)合,除了當(dāng)明確排除這種結(jié)合的 時(shí)候之外。當(dāng)描述特定的特征、結(jié)構(gòu)或特性與某一實(shí)施例有關(guān)時(shí),無論是否明確描述,本領(lǐng) 域的技術(shù)人員可以將所述特征、結(jié)構(gòu)或特性與其他實(shí)施例聯(lián)系起來。應(yīng)當(dāng)理解,本文所述的具體的硬件結(jié)構(gòu)或操作系統(tǒng)的特征僅為舉例子,以便有助 于描述本申請(qǐng)的主題,并且不限制本申請(qǐng)的保護(hù)范圍。存儲(chǔ)系統(tǒng)正處于持續(xù)的發(fā)展中,并且 存儲(chǔ)模塊的例如總線連接、運(yùn)行速度、容量、功耗、電子技術(shù)以及諸如此類的具體的特征僅 僅是為了便于描述。在可以用于計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器的類型之中,一些存儲(chǔ)器被稱作主存儲(chǔ)器并且可 以為易失性存儲(chǔ)器或非易失性存儲(chǔ)器。所述存儲(chǔ)器通常被認(rèn)為是隨機(jī)存取存儲(chǔ)器,在所述 隨機(jī)存取存儲(chǔ)器中,任何存儲(chǔ)單元可以獨(dú)立于任何其他的存儲(chǔ)單元而被讀取,并且確實(shí)可 建立所述存儲(chǔ)器以便允許這種存取。然而,許多計(jì)算機(jī)操作系統(tǒng)以被稱為緩存行的數(shù)據(jù)塊 的方式存取主存儲(chǔ)器,所述數(shù)據(jù)塊被傳輸?shù)脚c中央處理器(CPU)相關(guān)聯(lián)的更高速率存取的 高速緩沖存儲(chǔ)器。典型的緩存行可以為128字節(jié),然而,所述緩存行的大小可以比128字節(jié) 更大或更小。一些存儲(chǔ)器類型可以是以隨機(jī)方式從單獨(dú)的存儲(chǔ)地址讀取或者寫入單獨(dú)的存 儲(chǔ)地址的存儲(chǔ)器。其他的存儲(chǔ)器類型可以是以塊的方式存取的存儲(chǔ)器。其中使用諸如閃存之類的存儲(chǔ)器,所述存儲(chǔ)器產(chǎn)品可具有如下局限性可讀取的 數(shù)據(jù)塊的大小最小為例如512字節(jié)一頁,或者一些其他大小,可以更大或者更小。不是所有 的從所述存儲(chǔ)器讀取的數(shù)據(jù)可以被傳輸?shù)剿鼍彺婊蛘吣康牡亍?br>
在存儲(chǔ)器中儲(chǔ)存的數(shù)據(jù)可足夠重要從而需要避免由于存儲(chǔ)器故障、電源故障或 瞬態(tài)事件而引起的數(shù)據(jù)丟失。除了提供與所述數(shù)據(jù)的儲(chǔ)存和傳輸相關(guān)聯(lián)的糾錯(cuò)碼(Error Correcting Code, ECC)之外,所述數(shù)據(jù)可按冗余格式儲(chǔ)存,或者以別的方式備份。當(dāng)冗余 數(shù)據(jù)儲(chǔ)存在存儲(chǔ)系統(tǒng)的相同部分(例如主存儲(chǔ)器,一種稱作RAID(最初的廉價(jià)磁盤冗余陣 列)的技術(shù))時(shí),則憑借如下方式將所述數(shù)據(jù)在多個(gè)存儲(chǔ)模塊之間分區(qū)為防備所述存儲(chǔ)系 統(tǒng)的元件的瞬態(tài)故障或永久故障,可根據(jù)殘余數(shù)據(jù)重建數(shù)據(jù)字。還可備份數(shù)據(jù)或者將所述數(shù)據(jù)儲(chǔ)存在旋轉(zhuǎn)磁性介質(zhì)(磁盤驅(qū)動(dòng)器)、磁帶或其他 介質(zhì)上。這些介質(zhì)通常比用作主存儲(chǔ)器的存儲(chǔ)器類型具有更長(zhǎng)的存取時(shí)間和更小的吞吐 量??墒褂门c主存儲(chǔ)器類似的輔助存儲(chǔ)器,其相比備份介質(zhì)具有與那種典型的主存儲(chǔ)器更 接近的存取時(shí)間,這種存儲(chǔ)模塊可稱為“存儲(chǔ)設(shè)備”。在本文中,為方便起見將使用一般術(shù)語 “存儲(chǔ)器”或“存儲(chǔ)器系統(tǒng)”。然而,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解本文的實(shí)施例可適用于主存 儲(chǔ)器、存儲(chǔ)模塊、存儲(chǔ)設(shè)備、任何存儲(chǔ)器陣列或類似物。一種存儲(chǔ)系統(tǒng)可包括通過總線系統(tǒng)與CPU連接的多個(gè)存儲(chǔ)模塊。在CPU與所述 存儲(chǔ)系統(tǒng)之間的媒介可以是存儲(chǔ)控制器、橋或類似物,所述媒介可被認(rèn)為是CPU的一部 分、存儲(chǔ)系統(tǒng)的一部分或者單獨(dú)的功能。存儲(chǔ)總線通常可稱作CPU或存儲(chǔ)控制器(Memory Controller,MC)等之間的電互聯(lián),并且存儲(chǔ)系統(tǒng)由存儲(chǔ)模塊(Memory Module,MM)組成???線系統(tǒng)的描述可在例如11/405,083號(hào)美國專利申請(qǐng)中找到。然而,許多其他的總線系統(tǒng)是 公知的,并且可與本文所述的裝置和方法一起使用。在實(shí)施例中,可認(rèn)為所述存儲(chǔ)系統(tǒng)具有一個(gè)或一個(gè)以上“根”模塊,其中根模塊為 最接近所述存儲(chǔ)控制器的存儲(chǔ)模塊。由于可能會(huì)有一個(gè)以上計(jì)算機(jī)或存儲(chǔ)控制器,存儲(chǔ)系 統(tǒng)可能具有一個(gè)以上根模塊。為了簡(jiǎn)明地解釋,本發(fā)明的說明書采用單根模塊為例。例如,總線可傳輸由MC到匪的指令(例如READ,WRITE)、將從匪讀取的數(shù)據(jù)傳 輸?shù)組C、從MC傳輸寫入到MM的數(shù)據(jù)。其他的指令、響應(yīng)和狀態(tài)信息通常通過所述總線傳 輸。在某些情形,所述信息中的一些通過其他的傳輸機(jī)制傳輸,所述傳輸機(jī)制可以為另一條 總線,或者為點(diǎn)到點(diǎn)連接;這可稱為“帶外”信號(hào)。數(shù)據(jù)還可能不通過MC在存儲(chǔ)模塊MM之 間傳輸。數(shù)據(jù)在存儲(chǔ)系統(tǒng)的存儲(chǔ)模塊和CPU之間通過單根和MC傳輸?shù)乃俣瓤煞Q為總線容 量。所述總線容量可表示為GB/s (千兆字節(jié)/秒)。通常采用被稱為基準(zhǔn)程序的計(jì)算機(jī)程 序來測(cè)量所述總線容量,以便于將運(yùn)行過程中任何無效率的行為(所謂“輔助操作”)考慮 進(jìn)去。具有不同對(duì)象的不同的基準(zhǔn)程序可產(chǎn)生不同的結(jié)果。在本文中,為便于描述而采用 原始總線容量,并且本領(lǐng)域的技術(shù)人員能夠理解如何使這種描述適應(yīng)于特定的存儲(chǔ)系統(tǒng)或 最佳實(shí)施方式。所述原始總線容量可估量為以位為單位的數(shù)據(jù)總線的數(shù)據(jù)部分的寬度乘以 時(shí)鐘頻率。舉例來說,一種具有比特率為lGb/s的16位寬總線,可以說成是具有原始總線 容量為((16/8)xlxl09) =2GB/s。假如所述存儲(chǔ)模塊可至少以這種合成速率讀出數(shù)據(jù),則 在所述根處的原始總線容量可充分用于從所述存儲(chǔ)系統(tǒng)到CPU的數(shù)據(jù)傳輸。在存儲(chǔ)系統(tǒng)中的存儲(chǔ)模塊可包括總線接口和單獨(dú)的存儲(chǔ)電路。各種總線系統(tǒng)和存 儲(chǔ)電路是已知的或者正得到發(fā)展。雖然下面提供了詳細(xì)的實(shí)施例,但是總線接口的形式或 者所述存儲(chǔ)模塊上的存儲(chǔ)元件的具體類型或結(jié)構(gòu)不應(yīng)該認(rèn)為是一種限制。在一種實(shí)施例中,存儲(chǔ)模塊MM可如圖1所示。所述存儲(chǔ)模塊可包括存儲(chǔ)電路和總線接口,例如,可以是序列號(hào)為11/405,083的美國申請(qǐng)中的CSE (可配置開關(guān)元件)。這種 總線接口可包括到所述總線、以及控制器和本地存儲(chǔ)器的電氣和協(xié)議接口??偩€的線組可 組織成端口。所述存儲(chǔ)模塊可具有單輸入端口和單輸出端口,以上行和下行方向,這對(duì)于意 在用于線性總線結(jié)構(gòu)的存儲(chǔ)模塊可能是典型的,或者所述存儲(chǔ)模塊可具有上行端口(端口 1),和兩個(gè)或兩個(gè)以上的下行端口(端口 2和端口 3),用于分支或樹形存儲(chǔ)器系統(tǒng)。一方 面,端口可具有雙向特性以致于能夠朝向和遠(yuǎn)離所述根模塊移動(dòng)數(shù)據(jù)。每個(gè)存儲(chǔ)模塊可具有多個(gè)存儲(chǔ)電路,并且所述存儲(chǔ)電路可具有不同的內(nèi)部結(jié)構(gòu)、 電氣技術(shù)和取決于所用的特定技術(shù)的分組結(jié)構(gòu)或者,例如,變化的工業(yè)標(biāo)準(zhǔn)和協(xié)議。存儲(chǔ)電 路可高水平地組織成以致于能夠以所述計(jì)算機(jī)系統(tǒng)可用的形式讀取或?qū)懭霐?shù)據(jù)(所述數(shù) 據(jù)可以包括可執(zhí)行的代碼指令)。通常數(shù)據(jù)大小是字節(jié),即8個(gè)二進(jìn)制比特。這樣,存儲(chǔ)電 路(可能是一個(gè)或一個(gè)以上集成電路或類似裝置)的容量可以以字節(jié)描述例如IGB(千兆 字節(jié))=IO9字節(jié)(不失一般性,在對(duì)于實(shí)際二進(jìn)制量的十進(jìn)制近似值是有意義的情形下 不用刻意區(qū)分,例如,1KB = 1024字節(jié)。)存儲(chǔ)電路可以說具有存儲(chǔ)帶寬。另外,有各種不同的度量所述帶寬的標(biāo)準(zhǔn),為了簡(jiǎn) 單起見本說明書采用原始帶寬。所述原始帶寬可以是所述輸出數(shù)據(jù)總線的寬度乘以所述 存儲(chǔ)器的輸出時(shí)鐘頻率。現(xiàn)有存儲(chǔ)電路,例如,具有64位總線接口(例如,由8個(gè)8位寬 DDR400內(nèi)存模塊組成)的個(gè)人電腦( 001匪可具有大約32001 /^的最大原始存儲(chǔ)帶寬。圖2示出了 η階二進(jìn)制樹內(nèi)的多個(gè)存儲(chǔ)模塊的應(yīng)用,其中僅顯示了所述二進(jìn)制樹 的一個(gè)分支。這種樹的大小,當(dāng)由存儲(chǔ)模塊完全組裝時(shí)為(2η_1)。在分支的每個(gè)所述存儲(chǔ) 模塊MM(0,1,4,8,16)傳輸數(shù)據(jù)到所述存儲(chǔ)控制器MC,且通過MMtl傳輸?shù)那闆r下,提供所述 數(shù)據(jù)到MC的總的原始存儲(chǔ)帶寬為5X3200MB/S,其中認(rèn)為每個(gè)所述存儲(chǔ)模塊具有一個(gè)帶寬 為3200MB/S的存儲(chǔ)電路。在這個(gè)實(shí)施例中,與相鄰存儲(chǔ)模塊電氣連接的任何數(shù)據(jù)總線的容 量認(rèn)為是相同的并且可能為例如16GB/S。這樣,當(dāng)從每個(gè)存儲(chǔ)模塊讀取的數(shù)據(jù)在與MC連接 的MMtl上行端口合并時(shí),從每個(gè)存儲(chǔ)模塊讀的數(shù)據(jù)的數(shù)據(jù)帶寬是累積的,并且所述累積的數(shù) 據(jù)率為16GB/S。也就是說,在這個(gè)實(shí)施例中,所述存儲(chǔ)帶寬可完全占據(jù)所述總線帶寬。此外,每個(gè)存儲(chǔ)模塊可具有多個(gè)存儲(chǔ)電路,并且單個(gè)存儲(chǔ)模塊MM上的存儲(chǔ)電路的 實(shí)際數(shù)據(jù)帶寬可因而超過單個(gè)存儲(chǔ)電路的存儲(chǔ)帶寬。在圖2的實(shí)施例中,在僅顯示了所述二進(jìn)制樹的一個(gè)分支的情況下,具有5個(gè)存儲(chǔ) 模塊,還有另外26個(gè)具有向所述存儲(chǔ)控制器MC提供數(shù)據(jù)的能力的存儲(chǔ)模塊。然而,在這個(gè) 實(shí)施例中,具有一定總線容量的到所述存儲(chǔ)控制器的總線接口,不能夠傳遞來自其他一些 模塊的附加數(shù)據(jù),因?yàn)橐呀?jīng)達(dá)到了所述總線容量。一方面,倘若在其他一些鏈路(例如當(dāng)前可能沒有完全使用的MM4和MM9之間的鏈 路)上進(jìn)行數(shù)據(jù)的傳輸,即使已經(jīng)達(dá)到了 MM0和所述MC之間總線鏈路的總線容量,數(shù)據(jù)也 是可以在存儲(chǔ)系統(tǒng)的其他一些存儲(chǔ)模塊之間傳輸。這樣的傳輸可能在存儲(chǔ)器維護(hù)中有用, 例如有關(guān)RAID組的重建、或從較慢的存儲(chǔ)模塊向較快的存儲(chǔ)模塊傳輸數(shù)據(jù),因?yàn)槠渲蠨RAM 和閃存二者都用于存儲(chǔ)系統(tǒng)中。在存儲(chǔ)模塊不是正用于從一個(gè)模塊到另外一個(gè)模塊或所述根傳遞數(shù)據(jù),或者不能 被存取(所述存取例如用于讀或?qū)憯?shù)據(jù)到所述存儲(chǔ)模塊上的存儲(chǔ)電路)的情況下,所述存 儲(chǔ)模塊的一些電路可被置于低功率狀態(tài),以減少功耗和熱量產(chǎn)生。這樣的狀態(tài)可稱為存儲(chǔ)模塊空閑狀態(tài)(MMI)。所述MMI狀態(tài)可包括中斷各種不同時(shí)鐘的運(yùn)行,禁用一些或所有與其 他一些存儲(chǔ)模塊連接的鏈路或接口,或通過設(shè)置一些或所有的存儲(chǔ)電路處于較低功率消耗 狀態(tài)。因而,可認(rèn)為所述MMI狀態(tài)能夠具有次狀態(tài),取決于所述電子線路的哪些特定部分被 置于較低功耗狀態(tài)。在所述MMI狀態(tài)下運(yùn)行的功能可包括例如,保持存儲(chǔ)模塊之間的時(shí)鐘 同步、決定所述存儲(chǔ)模塊是否正被存取、響應(yīng)帶內(nèi)或帶外指令、刷新存儲(chǔ)器等等。當(dāng)存儲(chǔ)模塊被用于從一個(gè)模塊向另外一個(gè)模塊或所述根傳遞數(shù)據(jù),并且目前不能 被存取(存取是為了讀或?qū)憯?shù)據(jù)到所述存儲(chǔ)模塊上的一個(gè)或一個(gè)以上存儲(chǔ)電路)時(shí),存儲(chǔ) 電路的電路可被置于低功率狀態(tài),以減少功耗和熱量產(chǎn)生。這種狀態(tài)可被稱為存儲(chǔ)電路空 閑狀態(tài)(MI),在這種狀態(tài),CSE的電路或存儲(chǔ)器接口可以至少一部分處于激活狀態(tài)(MMA), 在存儲(chǔ)模塊之間接收和傳輸數(shù)據(jù),并且執(zhí)行所需的其他任何維護(hù)功能。然而所述存儲(chǔ)電路 仍保持在低功率狀態(tài)。所述MI狀態(tài)是這樣一種狀態(tài)在該狀態(tài)下保持存儲(chǔ)在所述存儲(chǔ)器中 的數(shù)據(jù),所以當(dāng)所述存儲(chǔ)電路被置于存儲(chǔ)電路激活(MA)狀態(tài)時(shí),可以從所述存儲(chǔ)電路中讀 取所述事先存儲(chǔ)的數(shù)據(jù)。可選地,數(shù)據(jù)可寫入所述存儲(chǔ)電路。因而,在所有存儲(chǔ)模塊MM處 于MA或匪I狀態(tài)時(shí)可以存在所述MI狀態(tài)。表1總結(jié)了用于本例的一些狀態(tài)條件。表 1 在本說明書中,考慮了每個(gè)存儲(chǔ)模塊僅一個(gè)存儲(chǔ)電路。然而在存儲(chǔ)模塊上存在一 個(gè)以上存儲(chǔ)電路的情況下,每個(gè)所述存儲(chǔ)電路可以是激活或空閑,這取決于數(shù)據(jù)是否被寫 入或從所述特定存儲(chǔ)電路被讀取。圖3示出了 MM的CSE的狀態(tài)圖。所述狀態(tài)圖沒有顯示與初始化有關(guān)的CSE的運(yùn) 行、時(shí)鐘同步的維持、CSE的配置等方面,這些通常被認(rèn)為是輔助操作,并且是伴隨于讀、寫 和傳輸數(shù)據(jù)的存儲(chǔ)系統(tǒng)的功能。當(dāng)所述CSE處于空閑或低功率狀態(tài)時(shí),可以執(zhí)行這樣的輔 助功能。當(dāng)沒有數(shù)據(jù)將被讀取、寫入或通過或穿過所述存儲(chǔ)器傳輸時(shí),可以進(jìn)入空閑狀態(tài)。 所述空閑狀態(tài)是較低功率狀態(tài)而不是所述激活狀態(tài),然而,諸如時(shí)鐘同步等等之類的功能 可以周期性地執(zhí)行。CSE在這個(gè)實(shí)施例中用作本地控制器,并且可包括例如,微處理器或類似的計(jì)算 裝置、暫存和程序存儲(chǔ)器、各種不同的時(shí)鐘(包括存儲(chǔ)刷新時(shí)鐘)和到總線和存儲(chǔ)器的接 口。通過離散電路,通過一個(gè)以上處理器、時(shí)鐘等等可以執(zhí)行一些功能,并且所有的所述元 件可以不在一個(gè)單電子包裝中。
術(shù)語“低功率狀態(tài)”或“空閑狀態(tài)”可指多個(gè)運(yùn)行條件中的任何一個(gè),其中電路或其 部分的功率消耗通過暫時(shí)禁用或限制功能、減慢時(shí)鐘速率等等以響應(yīng)調(diào)度、接收到的指令、 感知另外一個(gè)電路的狀態(tài)等等。本文的實(shí)施例不意在限制可能配置或用到的低功率狀態(tài)的 特點(diǎn)或數(shù)目,以及不是可能的低功率狀態(tài)的組合。一方面,路由選擇或指令信號(hào)的出現(xiàn)可以通過信號(hào)出現(xiàn)指示器檢測(cè)或者,例如,通 過維持,例如,所述總線接口的線或信號(hào)出現(xiàn)指示器處于激活狀態(tài)以便路由選擇信號(hào)可以 被接收、翻譯或傳送。在信號(hào)出現(xiàn)指示器或路由選擇信號(hào)包含與本地存儲(chǔ)模塊的功能有關(guān) 的信息的情況下,路由選擇或指令被翻譯并且執(zhí)行適當(dāng)?shù)膭?dòng)作。在數(shù)據(jù)或指令不是意在用 于所述本地模塊這樣的路由選擇情況下,可以激活所述CSE的一部分以便傳遞所述指令或 數(shù)據(jù)到適當(dāng)?shù)妮敵龆丝冢⑶译S后所述CSE可返回到空閑狀態(tài)。盡管沒有示出,但可存在其 他狀態(tài),所以,例如,反向總線路徑可預(yù)激活用于預(yù)定時(shí)間段之后的來自下行模塊的響應(yīng)。在路由選擇信息或指令意在用于本地模塊的情況下,所述指令可以,例如,用于讀 或?qū)懖僮鳌4鎯?chǔ)器可處于低功率或存儲(chǔ)電路空閑(MI)狀態(tài),可能需要被激活以便執(zhí)行所述 指令的功能。通常這樣的功能是讀或?qū)懖僮鳎部梢詧?zhí)行其他一些存儲(chǔ)器操作。在執(zhí)行所 述讀或?qū)懖僮髦?,所述讀或?qū)懖僮骺赡茚槍?duì)特定大小的數(shù)據(jù)元素,例如字節(jié)、段、頁或塊, 所述存儲(chǔ)器通過可以稱為關(guān)閉存儲(chǔ)器的操作返回到低功率狀態(tài),在所述操作之后所述CSE 和/或匪可返回到空閑狀態(tài)。圖4圖示了具有CSE或控制器50和多個(gè)存儲(chǔ)電路M的存儲(chǔ)模塊MM。每個(gè)存儲(chǔ)電 路M可具有以某種形式存儲(chǔ)數(shù)據(jù)的能力,在以所述形式存儲(chǔ)數(shù)據(jù)的情況下,字節(jié)、字、字組、 頁等可以被存取以讀或?qū)憯?shù)據(jù),所述讀或?qū)憯?shù)據(jù)基于由所述存儲(chǔ)模塊接收并且由所述CSE 翻譯的路由選擇信息或指令。例如,在數(shù)據(jù)由存儲(chǔ)電路M1讀或?qū)懙那闆r下,存儲(chǔ)電路M2-M5 可仍然保持在空閑狀態(tài)?!矫?,所述存儲(chǔ)電路可使用閃存或動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM),作為非易失性 和易失性存儲(chǔ)器類型的例子。眾所周知,即使當(dāng)電源中斷時(shí),閃存也保留存儲(chǔ)在其中的數(shù) 據(jù)。然而,DRAM存儲(chǔ)電路存儲(chǔ)所述信息為電容電路中的電荷,并且由于電阻路徑所述電荷緩 慢地從所述電容器泄露。因此,為了防止存儲(chǔ)器中數(shù)據(jù)的損失,需要存在所述電源,并且在 特定的時(shí)間間隔內(nèi)每個(gè)電容元件上的所述電荷需要更新(刷新)。所述過程可以稱為“刷新 存儲(chǔ)器”。可以通過電池、不間斷電源供應(yīng)器等在模塊或系統(tǒng)級(jí)上執(zhí)行維持所述電源供應(yīng)。 然而,也可以使用依賴于主電源并且不具有電源維持能力(例如備用電池或其他一些不 間斷電源)的電源。在這樣的實(shí)施例中,供電主電源故障可能導(dǎo)致存儲(chǔ)在DRAM存儲(chǔ)器中的 數(shù)據(jù)或保持在中間存儲(chǔ)器中的數(shù)據(jù)損失,然而如果使用備用存儲(chǔ)器,這樣的數(shù)據(jù)可以恢復(fù)。刷新存儲(chǔ)器通常在存儲(chǔ)電路上執(zhí)行,盡管該過程可以在別處被控制或開始,例如, 通過本地控制器(例如CSE)或存儲(chǔ)控制器MC。為了例證,并且不作為限制,DRAM存儲(chǔ)電路可以是滿足雙倍數(shù)據(jù)率DRAM要求的存 儲(chǔ)電路,如JEDEC公布的,并且可以是目前在工業(yè)標(biāo)準(zhǔn)化DIMM(雙重同軸存儲(chǔ)模塊)產(chǎn)品中 使用的。可以在所述產(chǎn)品中使用的存儲(chǔ)電路的例子為MT48LC128M4A2同步DRAM (SDRAM)裝 置,在MiconTechnology,Inc. (Boise, ID)可獲得。圖5顯示了所述存儲(chǔ)電路(如由Micron 公布的存儲(chǔ)電路)的框圖。所述存儲(chǔ)電路中的每個(gè)存儲(chǔ)體按照4位組成8182行乘4096列。 到DRAM電路的讀和寫存取是以脈沖定向的。這就是說,存取以選定的位置開始并且按在編程次序中的位置的程序號(hào)碼連續(xù)。為了本次說明,圖5所示的DRAM電路的一般操作可為本 領(lǐng)域的普通技術(shù)人員理解,并且僅進(jìn)詳細(xì)討論所述操作的特定部分。DRAM的操作的特征在于“打開”和“關(guān)閉”所述存儲(chǔ)器的存儲(chǔ)體。所述過程對(duì)于讀 和寫是類似的,并且為了簡(jiǎn)單起見,在不打算限制本說明的一般性的條件下,所述過程將會(huì) 描述為讀。在執(zhí)行讀指令之前,所述存儲(chǔ)體必須是“打開的”。所述存儲(chǔ)體的行保持打開以 用于獲取存儲(chǔ)在所述存儲(chǔ)體的行的數(shù)據(jù)直到所述存儲(chǔ)體關(guān)閉,或通過PRECHARGE指令去激 活。所述PRECHARGE指令必須在打開相同存儲(chǔ)體的另外一行或其他存儲(chǔ)體之前發(fā)布。根據(jù) 所述計(jì)算機(jī)操作系統(tǒng)的設(shè)計(jì)和其他一些因素,存儲(chǔ)體在讀操作之后可被置于激活狀態(tài),在 讀操作之后關(guān)閉,或者任一操作的組合,根據(jù)其他一些系統(tǒng)參數(shù)而定。所述PRECHARGE指令可以用于去激活特定存儲(chǔ)體內(nèi)的打開的行,或所有存儲(chǔ)體內(nèi) 打開的行。在一段時(shí)間間隔tKP(通常20ns)之后,所述存儲(chǔ)體將會(huì)可用于隨后行的存取。為了保持?jǐn)?shù)據(jù)的完整性,DRAM存儲(chǔ)電路的每一行需要定時(shí)刷新,或至少在規(guī)定的 時(shí)間間隔內(nèi)刷新一次以避免數(shù)據(jù)損失或損壞。按照用于Micron存儲(chǔ)電路的說明,且對(duì)于溫 度低于85°C的情況,每行大約每64ms (tKEF)至少刷新一次??梢允褂脙煞N不同形式的刷新 指令A(yù)UT0REFRESH和 SELF REFRESH。AUTO REFRESH指令是非持續(xù)的,而且對(duì)于 512M DRAM, 8,192AUT0 REFRESH指令(每7. 81 μ s可以作為單個(gè)指令發(fā)布),將符合規(guī)定的刷新要求并 且確保每一行被刷新??蛇x地,AUT0REFRESH指令的脈沖可以以最小循環(huán)速率間隔(tKF)發(fā) 布。對(duì)于存儲(chǔ)電路的待刷新的行的地址可以內(nèi)部產(chǎn)生,可以不需要由本地控制器、存 儲(chǔ)控制器或其他一些外部裝置提供。另一方面,PRECHARGE指令和外部提供的地址會(huì)達(dá)到 類似的目的,但是可能有較大的開銷。SELF REFRESH指令可以用來保持DRAM內(nèi)的數(shù)據(jù)完整性,即使所述存儲(chǔ)系統(tǒng)的其 余部分處于低功率狀態(tài)。換句話說,當(dāng)在自刷新模式時(shí),DRAM在沒有外部激勵(lì)的情況下保 持?jǐn)?shù)據(jù)。一旦啟用自刷新模式,DRAM提供它自身的內(nèi)部計(jì)時(shí)以便執(zhí)行刷新周期。然而,所 述DRAM可能需要保持在自刷新模式下持續(xù)最小時(shí)期,所述最小時(shí)期可高達(dá)約2 μ S。在自刷新模式期間,所述存儲(chǔ)電路通過DRAM陣列循環(huán),執(zhí)行必須的最小數(shù)量刷新 活動(dòng)以保持?jǐn)?shù)據(jù)。為了實(shí)現(xiàn)這一點(diǎn),所述存儲(chǔ)電路維護(hù)一種存儲(chǔ)控制器不能反問的內(nèi)部行/ 存儲(chǔ)體地址計(jì)數(shù)器。當(dāng)出現(xiàn)自刷新模式時(shí),所述存儲(chǔ)控制器不知道在自刷新模式下哪一行 剛被刷新,因此不能繼續(xù)明確的刷新操作,除非所述存儲(chǔ)控制器對(duì)每一行逐一執(zhí)行集中式 刷新(burstrefresh)。然而這種情況可適應(yīng)于如下應(yīng)用所述自刷新模式的目的是將所述 存儲(chǔ)電路置于低功率消耗模式持續(xù)延長(zhǎng)的時(shí)段,例如對(duì)于便攜式設(shè)備,集中式刷新的每次 中斷自刷新模式用于讀或?qū)懖僮鞯牡男枰氪罅块_銷。存儲(chǔ)電路的電流要求在運(yùn)行的各種不同模式之間變化相當(dāng)大。例如,在SELF REFRESH或STANDBY模式下的平均電流可能大約6mA,然而在讀或?qū)懖僮髌陂g的工作電流 可能大約115mA或者更大。當(dāng)所述存儲(chǔ)器處于激活等待模式時(shí),所述工作電流可能大約 45mA。當(dāng)不讀或?qū)憯?shù)據(jù)時(shí),存儲(chǔ)電路的功率消耗可因此減少,通過使所述存儲(chǔ)電路運(yùn)行在 SELFREFRESH模式,或者運(yùn)行在具有喚醒功能以執(zhí)行AUT0REFRESH的STANDBY模式或ACTIVE STANDBY 模式。當(dāng)描述較高功率狀態(tài)和較低功率狀態(tài)時(shí),就討論的特定電子元件而言,所述術(shù)語意在作為相對(duì)的術(shù)語來理解。一種元件的較低功率狀態(tài)在數(shù)量表示的功率消耗上可能比另 外一種電子元件的高功率狀態(tài)高。另外,一些低功率狀態(tài)可能具有低平均功率消耗,具有偶 爾的高功率消耗間隔。一個(gè)這樣的實(shí)施例可以是如下情形存儲(chǔ)電路具有禁用的時(shí)鐘(CKE low)并且周期性地啟動(dòng)該時(shí)鐘(CKE high)以使AUT0REFRESH可以執(zhí)行,并隨后又禁用所述 時(shí)鐘。圖6顯示了存儲(chǔ)電路的狀態(tài)的實(shí)施例,其中一些狀態(tài)可能導(dǎo)致較低的整體功率消 耗。當(dāng)未正在進(jìn)行讀或?qū)懖僮鲿r(shí),所述存儲(chǔ)電路可能處于空閑狀態(tài)(Ml)。在MI狀態(tài)期間, 所述命令行CKE可能為低,這將禁用內(nèi)部電路以便節(jié)約/減少功率消耗。以周期為基準(zhǔn),例 如大約每7. 81 μ s,所述CKE可能為高以便啟動(dòng)所述內(nèi)部電路,發(fā)布AUT0REFRESH指令以便 刷新所述存儲(chǔ)電路的一個(gè)或一個(gè)以上存儲(chǔ)體的行。隨后通過返回所述CKE到低狀態(tài),所述 存儲(chǔ)電路返回到MI狀態(tài)。這種操作順序使得在規(guī)定的時(shí)間內(nèi)周期性地刷新所述存儲(chǔ)電路 的每一行以保持存儲(chǔ)數(shù)據(jù)的完整性。只要整體的效果是在規(guī)定的時(shí)段內(nèi)刷新所述每一行, 還可以使用發(fā)布AUT0REFRESH指令的其他一些順序,包括AUT0REFRESH指令的脈沖。當(dāng)存儲(chǔ)模塊上的CSE已接收到讀或?qū)懖僮鲗⒁谒龃鎯?chǔ)模塊的存儲(chǔ)電路上執(zhí) 行的指令時(shí),所述CSE發(fā)布指令以便使所述存儲(chǔ)電路的適當(dāng)編址后的行激活。使用JEDEC 標(biāo)準(zhǔn)的術(shù)語,/RAS指令被確認(rèn)?!?”讀作劃線,并且翻譯為所述指令由指令行上的低數(shù)據(jù)狀 態(tài)確認(rèn)。在激活狀態(tài),選定的行可用于讀或?qū)?,并且通過確認(rèn)用于寫操作的/CAS+/WE,或者 通過確認(rèn)用于讀操作的/CAS來選定所述功能。當(dāng)所述操作完成,或存儲(chǔ)電路的行上的一系 列操作完成時(shí),通過PRECHARGE指令關(guān)閉所述行,這也使該存儲(chǔ)電路返回到空閑狀態(tài)。所述PRECHARGE指令可作為所述CSE發(fā)布/RAS+/WE指令的結(jié)果發(fā)布,或在所述讀 或?qū)懼噶畎ˋUTO PRECHARGE指令的情況下發(fā)布。基于所述CSE的狀態(tài),AUTO REFRESH指令可以由所述CSE發(fā)布,并且不需要維持 單個(gè)存儲(chǔ)模塊MM和存儲(chǔ)控制器MC之間的作用連通性以管理所述存儲(chǔ)電路的刷新。單個(gè)存 儲(chǔ)模塊MM根據(jù)存儲(chǔ)電路的使用可以管理關(guān)聯(lián)存儲(chǔ)電路M的刷新。所述存儲(chǔ)電路的使用依 賴于將被讀或?qū)懙臄?shù)據(jù),例如,被CPU或外部裝置讀或?qū)憽T谝环N實(shí)施例中,圖4的存儲(chǔ)模塊可具有6組存儲(chǔ)電路,每組電路具有存儲(chǔ)IGB數(shù) 據(jù)的能力,所以該MM的總存儲(chǔ)容量為6GB。每個(gè)存儲(chǔ)電路組可具有3200MB/S的存儲(chǔ)帶寬。 如果存儲(chǔ)模塊之間的總線具有16GB/S的容量,那么單組存儲(chǔ)電路的不能產(chǎn)生足夠的數(shù)據(jù) 速率來占據(jù)所述整個(gè)總線容量。然而,在所述6個(gè)存儲(chǔ)電路組中的5組正在同時(shí)讀取的情 況下,那么將會(huì)達(dá)到所述總線容量。在這個(gè)實(shí)施例中,僅存儲(chǔ)模塊樹中的一個(gè)存儲(chǔ)模塊足夠 滿足在所述根部的總線容量。因此,所述存儲(chǔ)器系統(tǒng)的其他一些存儲(chǔ)模塊MM可能處于如下 狀態(tài)CSE(包括總線接口)或存儲(chǔ)電路M中至少一個(gè)處于空閑狀態(tài)。通過將被讀取的存儲(chǔ)電路描述成置于單個(gè)存儲(chǔ)模塊簡(jiǎn)化了實(shí)施例,然而,本領(lǐng)域 的技術(shù)人員會(huì)認(rèn)識(shí)到被讀取的存儲(chǔ)電路可以是分布式的以便放置在多個(gè)存儲(chǔ)模塊MM上。在另外的實(shí)施例中,對(duì)于高速緩存行或其他數(shù)據(jù)大小的數(shù)據(jù)可以以RAID形式存 儲(chǔ);例如,以RAID4+1結(jié)構(gòu),如圖7所示。所述數(shù)據(jù)分布在4個(gè)單獨(dú)的存儲(chǔ)模塊中,可以執(zhí)行 像對(duì)所述數(shù)據(jù)的異或操作的奇偶校驗(yàn)以便將所述奇偶校驗(yàn)數(shù)據(jù)存儲(chǔ)在第五模塊。如果所述 5個(gè)模塊中的任何一個(gè)故障的話,或者所述數(shù)據(jù)因?yàn)榱硗獾脑騺G失,這種存儲(chǔ)數(shù)據(jù)的方法 允許所述數(shù)據(jù)的恢復(fù)。在這樣的系統(tǒng)中,每個(gè)用于高速緩存行的讀請(qǐng)求將會(huì)激活5個(gè)存儲(chǔ)模塊,而不是前面例子的中的一個(gè)模塊。然而,除了由所述奇偶校驗(yàn)信息的存儲(chǔ)引起的數(shù)據(jù) 量的增長(zhǎng)之外,整體數(shù)據(jù)速率不變,并且因而單個(gè)存儲(chǔ)電路可能激活持續(xù)較短的一段時(shí)間。本次論述沒有考慮與增加的指令數(shù)目、錯(cuò)誤校驗(yàn)等有關(guān)的輔助操作的變化,但是 表明RAID系統(tǒng)的性能和功率消耗應(yīng)該與之前描述的類似。得到的實(shí)際的性能將取決于裝 載模式、存取的塊大小等。一方面,存儲(chǔ)器系統(tǒng)的存儲(chǔ)模塊MM可在所述存儲(chǔ)電路M上預(yù)定并獨(dú)立于存儲(chǔ)控制 器MC執(zhí)行刷新操作。本地控制器,例如所述CSE可開始或控制用于與之相關(guān)的存儲(chǔ)電路的 刷新操作,例如,基于沒有即將發(fā)生的或預(yù)見的讀或?qū)懖僮?。所述刷新操作可以按周期順?執(zhí)行,或按照集中模式執(zhí)行,其中多個(gè)存儲(chǔ)器刷新操作以快速順序執(zhí)行。這樣的猝發(fā)順序可 以用來最小化所述刷新操作與讀或?qū)懖僮髦g的相互作用。這樣,每個(gè)所述存儲(chǔ)模塊可預(yù) 定用于與該模塊相關(guān)的存儲(chǔ)電路的刷新操作,而無需與存儲(chǔ)控制器同步。如圖7所示,一方面,例如在所述存儲(chǔ)器作為RAID存儲(chǔ)器工作的情況下,存儲(chǔ)模塊 可能與在RAID組中的位置有關(guān),其中單個(gè)存儲(chǔ)模塊匪或存儲(chǔ)電路M的操作是同步的,這 樣,例如,在4+1RAID結(jié)構(gòu)(例如在US12/079,364中所描述)中,所述5個(gè)存儲(chǔ)模塊中的4 個(gè)模塊可以直接被訪問用于讀操作。在這樣的結(jié)構(gòu)中,存儲(chǔ)器組通過存儲(chǔ)控制器MC可以同 步,所以在任何時(shí)候(或者在閃存、擦除或程序操作的情況下)僅一個(gè)與所述RAID組有關(guān) 的存儲(chǔ)模塊執(zhí)行刷新操作。這樣的刷新操作可以以集中模式執(zhí)行,而不是在整個(gè)刷新間隔 (tEEF)內(nèi)以均勻的周期間隔執(zhí)行。如果所述刷新操作在所述請(qǐng)求的時(shí)候正在進(jìn)行的話,執(zhí) 行所述刷新操作的存儲(chǔ)模塊可能不返回響應(yīng)讀請(qǐng)求的數(shù)據(jù)。然而,通過使用RAID結(jié)構(gòu)的數(shù) 據(jù)恢復(fù)特性,所述請(qǐng)求的數(shù)據(jù)無需增加恢復(fù)時(shí)間就可以獲得。如序列號(hào)為12/079,364的美 國申請(qǐng)中所述,其中使用4+1RAID結(jié)構(gòu),5個(gè)存儲(chǔ)模塊MM中的4個(gè)模塊可用于任何讀操作。 不可用的第五存儲(chǔ)模塊應(yīng)該將信息指定為數(shù)據(jù)而不是奇偶校驗(yàn)信息,所述奇偶校驗(yàn)信息可 從被讀取的4個(gè)模塊中的1個(gè)模塊中獲得,所述奇偶校驗(yàn)信息可以用于使用XOR計(jì)算重建 數(shù)據(jù)。當(dāng)所述存儲(chǔ)模塊將DRAM存儲(chǔ)電路作為存儲(chǔ)電路時(shí),執(zhí)行所述刷新操作的間隔可能比 ^EEF 短 °所述存儲(chǔ)器MM組的刷新操作可以由所述存儲(chǔ)控制器MC調(diào)度以便使所述存儲(chǔ)模塊 和RAID組關(guān)聯(lián)??蛇x地,單個(gè)存儲(chǔ)電路M可能與RAID組有關(guān),所述組內(nèi)的每個(gè)存儲(chǔ)電路的 所述刷新計(jì)時(shí)可以控制,以便即時(shí)存取至少最小數(shù)目的存儲(chǔ)電路,從而重建RAID數(shù)據(jù)。在典型的DRAM電路中,按照規(guī)定所述存儲(chǔ)器需要大約每64兆秒就完全更新,以避 免數(shù)據(jù)損失。這稱為所述靜態(tài)刷新時(shí)間或刷新間隔,并且可以通過分配所述刷新操作來執(zhí) 行,所以每7. 81 μ S執(zhí)行一次刷新操作。然而,執(zhí)行所述刷新操作的時(shí)間大約為75ns。這 樣,在7. 81 μ s的刷新間隔之間的期間(與一個(gè)分布式刷新間隔有關(guān))可以執(zhí)行多達(dá)大約 104次刷新操作。當(dāng)RAID組中的5個(gè)存儲(chǔ)模塊中的4個(gè)模塊總是可用于讀取,對(duì)于任何讀操作,刷 新DRAM存儲(chǔ)器的影響并不明顯。對(duì)于一個(gè)所述模塊來說,用于寫操作的最大恢復(fù)時(shí)間可能 是單個(gè)分布式刷新間隔??蛇x地,在存在即將發(fā)生的寫請(qǐng)求的任何時(shí)候,所述集中式刷新操 作可能被暫停。另一方面,可以預(yù)定多個(gè)較小的集中式刷新操作以使所述操作可以在對(duì)所 述寫操作恢復(fù)時(shí)間沒有顯著影響的情況下完成。以這種方式,對(duì)于易失性存儲(chǔ)器所述刷新 操作對(duì)所述讀或?qū)懟謴?fù)時(shí)間的影響可以最小化或避免。
以類似的方式,當(dāng)使用閃存時(shí),可以采用存儲(chǔ)模塊MM的較低功率狀態(tài)用于輔助操 作,例如當(dāng)沒有正在執(zhí)行所述本地存儲(chǔ)器上的讀或?qū)懖僮饕皂憫?yīng)所述存儲(chǔ)控制器MC的請(qǐng) 求時(shí),進(jìn)行存儲(chǔ)器清理、測(cè)試等等。圖8是具有多個(gè)模塊并以類似樹形結(jié)構(gòu)連接的存儲(chǔ)器系統(tǒng)的實(shí)施例。每個(gè)所述存 儲(chǔ)模塊MM被編號(hào),數(shù)字從0到83,并且存儲(chǔ)模塊MM之間的相互連接顯示為連接每個(gè)模塊上 的三個(gè)端口(可能為雙向端口)中的每個(gè)端口到其它一些模塊的線。這種布置形式的詳情 可以在序列號(hào)為11/405,083的美國申請(qǐng)中找到。正如所配置的,存儲(chǔ)器系統(tǒng)具有6個(gè)根存 儲(chǔ)模塊,即編號(hào)為14,15,16,41,43和68的那些模塊,連接到具有端口 A-E的存儲(chǔ)控制器, 以便萬一模塊故障時(shí)保持連通性,并允許故障的存儲(chǔ)模塊進(jìn)行熱切換。一方面,可以使用高 速總線以便在所述存儲(chǔ)模塊中可以采用混合的存儲(chǔ)器種類,并且由所述模塊上的控制器協(xié) 調(diào)所述接口特征。所述控制器可以是CSE??梢赃\(yùn)行存儲(chǔ)模塊MM 0-83中的每一個(gè)模塊,這樣獨(dú)立于每一個(gè)其他模塊執(zhí)行模 塊上所述存儲(chǔ)器刷新操作,并且無需從存儲(chǔ)控制器持續(xù)不斷的傳輸指令??蛇x地,存儲(chǔ)模塊 組可以具有刷新或擦除操作,例如,同步的或預(yù)定的,如已描述的,以便當(dāng)所述存儲(chǔ)器全部 地或部分地運(yùn)行作為RAID存儲(chǔ)裝置時(shí),減少所述存儲(chǔ)器上的讀或?qū)懖僮鞯幕謴?fù)時(shí)間。在存儲(chǔ)控制器MC和一個(gè)或一個(gè)以上計(jì)算機(jī)之間可提供多個(gè)連接點(diǎn),可以是PCI Express總線接口或其他接口。存儲(chǔ)控制器可以是多個(gè)存儲(chǔ)控制器以便在硬件故障的情況 下提供冗余??梢圆贾盟瞿K、存儲(chǔ)控制器和計(jì)算機(jī)接口的連通性以便在硬件故障的情 況下允許重新配置數(shù)據(jù)路徑,并且在不用將所述存儲(chǔ)器系統(tǒng)取出不用的情況下可以允許替 換故障模塊。在存儲(chǔ)系統(tǒng)中,例如在圖8的實(shí)施例中,不是所有的存儲(chǔ)模塊MM可以起作用。這 可以在如下情況中出現(xiàn)如果使用來自所述存儲(chǔ)器系統(tǒng)的數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)對(duì)存儲(chǔ)在該存 儲(chǔ)器系統(tǒng)的數(shù)據(jù)沒有高要求,或者,如果位于所述存儲(chǔ)器系統(tǒng)各種不同位置的數(shù)據(jù)總線的 帶寬由響應(yīng)讀或?qū)懼噶畹拇鎯?chǔ)模塊的數(shù)據(jù)速率占據(jù)。如前面所述,在一個(gè)或一個(gè)以上的模 塊不處于正自其讀取或向其寫入數(shù)據(jù)的狀態(tài)的情況下,所述模塊可以處于較低功率消耗狀 態(tài)。一方面,當(dāng)每個(gè)存儲(chǔ)模塊上的與之相關(guān)的存儲(chǔ)電路是空閑或正在通過AUT0REFRESH或 類似的功能刷新時(shí),該存儲(chǔ)模塊可被認(rèn)為處于較低功率狀態(tài)。所述存儲(chǔ)模塊可以處于較低 功率消耗狀態(tài)的另外的形式,其中所述存儲(chǔ)模塊接口沒有正在進(jìn)行處理或以自所述目標(biāo)存 儲(chǔ)模塊的上行或下行方式傳送指令或數(shù)據(jù)到其他一些模塊。存儲(chǔ)模塊可因此配置成處于較低功率消耗狀態(tài),并為了實(shí)現(xiàn)如下目的而轉(zhuǎn)變?yōu)楹?適的較高功率狀態(tài)例如,為了所述存儲(chǔ)模塊的存儲(chǔ)器上的讀或?qū)懖僮?,或者從一個(gè)存儲(chǔ) 模塊到另外的存儲(chǔ)模塊或存儲(chǔ)控制器傳輸數(shù)據(jù)或指令。進(jìn)入較高功率狀態(tài)的存儲(chǔ)模塊可 以保持在所述狀態(tài)直到完成所指示的操作,例如讀取數(shù)據(jù),并且隨后估計(jì)該存儲(chǔ)模塊的操 作要求。假如沒有其他讀或?qū)懖僮骷磳l(fā)生,并且該存儲(chǔ)模塊的刷新狀態(tài)符合要求,那么 所述存儲(chǔ)模塊可進(jìn)入較低功率狀態(tài)。在較低功率狀態(tài)期間,所述存儲(chǔ)電路的刷新操作通 過以下方式可按要求執(zhí)行如前面所述,在一種實(shí)施例中,通過開啟存儲(chǔ)器時(shí)鐘以及發(fā)布 AUT0REFRESH指令或類似的功能的方式。因此,所述存儲(chǔ)模塊是處于高功率狀態(tài)還是較低功率狀態(tài)可能是數(shù)據(jù)依賴結(jié)果, 并且所述存儲(chǔ)模塊的狀態(tài)可以動(dòng)態(tài)變化。然而,因?yàn)楫?dāng)不用響應(yīng)服務(wù)需求時(shí)所述存儲(chǔ)模塊可轉(zhuǎn)換到較低功率狀態(tài),所以減少了總的功率消耗??梢詫?shí)現(xiàn)這一點(diǎn)同時(shí)保持適當(dāng)?shù)乃⑿?速率以避免數(shù)據(jù)損失。在多個(gè)存儲(chǔ)模塊集成在存儲(chǔ)器系統(tǒng)中的情況下,可以設(shè)置所述模塊 以使在各個(gè)模塊之間的功率狀態(tài)的確定或刷新操作的計(jì)時(shí)相互獨(dú)立。對(duì)于由所述制造商規(guī)定的DRAM存儲(chǔ)電路,所要求的刷新間隔可能是在最高工作 溫度下的刷新間隔,在較低工作溫度下可能有較大的刷新間隔。適當(dāng)?shù)乃⑿滤俾士梢曰?以下因素確定模塊組中的模塊的溫度、模塊組中任意模塊的最高溫度等,依賴于所述刷新 速率是否模塊本地確定的或基于更多的全局溫度測(cè)量確定。在做出了溫度的更全局的決定 的情況下,控制所述刷新速率的溫度或其他參數(shù)可作為信號(hào)發(fā)送給模塊。由存儲(chǔ)控制器發(fā)起的指令可用來通過以下方式部分地或全部地激活存儲(chǔ)模塊,所 述方式為通過發(fā)送前導(dǎo)指令到所述存儲(chǔ)模塊以便最小化一旦接收到所述指令響應(yīng)所述指 令的恢復(fù)時(shí)間。然而,到較低功率狀態(tài)的轉(zhuǎn)換可以由每個(gè)存儲(chǔ)模塊獨(dú)立實(shí)現(xiàn),因?yàn)閷?duì)于所述 存儲(chǔ)模塊而言涉及的考慮因素是本地的?!矫?,操作存儲(chǔ)器系統(tǒng)的方法可以包括提供多個(gè)存儲(chǔ)模塊,所述存儲(chǔ)模塊通過 數(shù)據(jù)總線能夠連接到存儲(chǔ)控制器。每個(gè)所述存儲(chǔ)模塊可有數(shù)據(jù)總線,本地控制器和本地存 儲(chǔ)器。所述存儲(chǔ)器通過所述存儲(chǔ)控制器可以用來存儲(chǔ)數(shù)據(jù)和指令以供處理器存取,或者可 以由所述存儲(chǔ)模塊本地使用。每個(gè)所述存儲(chǔ)模塊可決定直接地或間接地接收到的來自所述 存儲(chǔ)控制器或來自其他一些模塊的數(shù)據(jù)或指令的特性。所述指令可以是用于將在所述存儲(chǔ) 模塊的存儲(chǔ)器上執(zhí)行的讀或?qū)懖僮?,以及有關(guān)數(shù)據(jù),或可以是由其他一些存儲(chǔ)模塊使用的 數(shù)據(jù)或指令,并且其中當(dāng)前存儲(chǔ)模塊被用來轉(zhuǎn)送所述信息到另外模塊。在沒有數(shù)據(jù)從當(dāng)前存儲(chǔ)模塊讀或?qū)懙那闆r下,所述存儲(chǔ)模塊的電子電路的至少一 部分可以置于較低功率狀態(tài)。這樣的狀態(tài)可包括“off”狀態(tài)或者所述電路全部或部分處于 空閑的狀態(tài)。在執(zhí)行讀或?qū)懖僮骱螅鎯?chǔ)模塊可進(jìn)入較低功率狀態(tài)。這樣的狀態(tài)將所述存 儲(chǔ)電路置于“空閑模式”。周期性地,在所述空閑模式期間,可以使所述存儲(chǔ)電路的時(shí)鐘電路 能夠工作,并由本地控制器發(fā)布刷新指令??梢钥刂七@樣的指令的數(shù)目和計(jì)時(shí)以滿足正在 使用的特定存儲(chǔ)電路的刷新計(jì)時(shí)要求。在所述指令以周期方式單獨(dú)發(fā)布的情況下,所述存 儲(chǔ)電路的時(shí)鐘電路可以再次被禁用以進(jìn)入空閑狀態(tài)。在沒有數(shù)據(jù)待轉(zhuǎn)送或預(yù)定將轉(zhuǎn)送到另外一個(gè)模塊,并且在當(dāng)前模塊上沒有即將發(fā) 生的讀或?qū)懖僮鞯那闆r下,所述模塊電路的其他部分可以置于較低功率狀態(tài),這可包括暫 ?;驕p少某些時(shí)鐘的速率,禁用一些或所有總線接口等。另一方面,閃存的擦除可以由存儲(chǔ)控制器協(xié)調(diào),這樣存儲(chǔ)模塊組可以與RAID組關(guān) 聯(lián)起來所以數(shù)據(jù)和奇偶校驗(yàn)數(shù)據(jù)可存儲(chǔ)在所述模塊上。與RAID組關(guān)聯(lián)的存儲(chǔ)模塊的控制 器可以由所述存儲(chǔ)控制器控制以相對(duì)于共同時(shí)間基準(zhǔn)運(yùn)行,這樣所述存儲(chǔ)模塊中的一個(gè)模 塊執(zhí)行擦除操作,然而剩下的存儲(chǔ)模塊禁止執(zhí)行擦除操作,所以可以從所述剩下的存儲(chǔ)模 塊中立即讀取足夠的數(shù)據(jù)以重建存儲(chǔ)在RAID中的數(shù)據(jù)。預(yù)定RAID組中的存儲(chǔ)模塊的擦除 操作以便在任何時(shí)候在N+1RAID組中僅一個(gè)模塊執(zhí)行擦除??蛇x地,當(dāng)RAID組中的第一存儲(chǔ)模塊完成擦除操作時(shí),可發(fā)送狀態(tài)信息到RAID組 中的另外一個(gè)模塊,這樣可以啟動(dòng)擦除操作。這可以看成擦除使能記號(hào)并且由所述RAID組 的成員傳遞。因而,在當(dāng)前不需要所述RAID組的存儲(chǔ)模塊之一進(jìn)行擦除操作時(shí),可以使其 他存儲(chǔ)模塊執(zhí)行擦除操作。
15
在本文使用術(shù)語CPU(中央處理器)、處理器、控制器、計(jì)算機(jī)等情況下,它們通常 可以互換使用。這些術(shù)語表示數(shù)字計(jì)算裝置,所述裝置能夠運(yùn)行程序指令以便配置該裝置 的電路來執(zhí)行依賴于所述指令、或數(shù)據(jù)的功能,并且大小、速度、內(nèi)部存儲(chǔ)器容量(若有的 話)受各種各樣的配置限制,這取決于所述裝置的制造商和設(shè)計(jì)者選擇的特定的布置形 式??蛇x地,一些或所有操作可以通過特定的硬件元件或通過編程的計(jì)算機(jī)元件和自 定義的硬件元件(包括模擬電路)的任何結(jié)合執(zhí)行,所述特定的硬件元件包含用于執(zhí)行所 述操作的硬件邏輯或固件指令。可以提供本文所描述的所述方法(所方法的至少一部分)作為可包括機(jī)器可讀介 質(zhì)的計(jì)算機(jī)程序產(chǎn)品,其中所述機(jī)器可讀介質(zhì)具有儲(chǔ)存在其上的可以用來編程指令計(jì)算機(jī) (或其他一些電子裝置)來執(zhí)行所述方法的指令。為了詳細(xì)說明,術(shù)語“機(jī)器可讀介質(zhì)”應(yīng) 當(dāng)包括能夠存儲(chǔ)或編碼用于通過計(jì)算機(jī)器或特殊用途硬件執(zhí)行的指令序列或數(shù)據(jù)的任何 介質(zhì),并且所述介質(zhì)可使所述機(jī)器或特殊用途硬件執(zhí)行本發(fā)明的任何一個(gè)方法或功能。因 此,術(shù)語“機(jī)器可讀介質(zhì)”應(yīng)該包括但不限于固態(tài)存儲(chǔ)器,磁光盤,磁存儲(chǔ)器,光學(xué)存儲(chǔ)器, 以及載波信號(hào)。盡管通過計(jì)算機(jī)執(zhí)行,但方法的描述應(yīng)當(dāng)不排除通過人執(zhí)行的同樣的方法。例如,但不作為限制,機(jī)器可讀介質(zhì)可包括只讀存儲(chǔ)器(ROM);所有類型的隨機(jī) 存取存儲(chǔ)器(RAM)(例如,S-RAM,D-RAM,P-RAM);可編程只讀存儲(chǔ)器(PROM);電子可編程只 讀存儲(chǔ)器(EPROM);磁隨機(jī)存取存儲(chǔ)器;磁盤存儲(chǔ)介質(zhì);閃存;或電學(xué)、光學(xué)、聲學(xué)數(shù)據(jù)存儲(chǔ) 介質(zhì)等等。雖然本文公開的方法是參考按照特定順序執(zhí)行特定步驟進(jìn)行描述和說明,但應(yīng)當(dāng) 理解在不脫離本發(fā)明教導(dǎo)的條件下這些步驟可以組合、分解、或重新排列以形成等同的方 法。因此,除非本文特別指出,本發(fā)明并不限制步驟的順序和分組。盡管本發(fā)明只有一些示例性實(shí)施方式在上面得到詳細(xì)描述,但是本領(lǐng)域的技術(shù)人 員應(yīng)該容易意識(shí)到在不脫離本發(fā)明新穎的教導(dǎo)和有益效果的條件下對(duì)所述示例性實(shí)施方 式進(jìn)行多種改變是可能的。因此,所有這樣的改變意在包括在本發(fā)明的范圍之內(nèi)。
1權(quán)利要求
一種存儲(chǔ)系統(tǒng),包括第一存儲(chǔ)模塊和第二存儲(chǔ)模塊,每一個(gè)存儲(chǔ)模塊具有控制器、總線接口和存儲(chǔ)電路;其中,所述第一存儲(chǔ)模塊和第二存儲(chǔ)模塊通過根存儲(chǔ)模塊與存儲(chǔ)控制器通信,并且所述第一存儲(chǔ)模塊的功率狀態(tài)獨(dú)立于所述第二存儲(chǔ)模塊的功率狀態(tài)。
2.如權(quán)利要求1所述的存儲(chǔ)系統(tǒng),其中,所述功率狀態(tài)為高功率狀態(tài)和低功率狀態(tài)之ο
3.如權(quán)利要求2所述的存儲(chǔ)系統(tǒng),其中,所述功率狀態(tài)為低功率狀態(tài),此時(shí)所述總線接 口的至少一部分處于低功率狀態(tài)。
4.如權(quán)利要求2所述的存儲(chǔ)系統(tǒng),其中,所述功率狀態(tài)為低功率狀態(tài),此時(shí)所述存儲(chǔ)電 路的時(shí)鐘被禁止。
5.如權(quán)利要求2所述的存儲(chǔ)系統(tǒng),其中,所述功率狀態(tài)為低功率狀態(tài),此時(shí)所述存儲(chǔ)電 路的時(shí)鐘被減慢。
6.如權(quán)利要求1所述的存儲(chǔ)系統(tǒng),其中,當(dāng)所述存儲(chǔ)電路處于低功率狀態(tài)時(shí),開始所述 存儲(chǔ)電路的存儲(chǔ)刷新操作。
7.如權(quán)利要求6所述的存儲(chǔ)系統(tǒng),其中,當(dāng)所述存儲(chǔ)電路上沒有正在執(zhí)行讀取或?qū)懭?操作時(shí),所述存儲(chǔ)電路進(jìn)入低功率狀態(tài)。
8.如權(quán)利要求6所述的存儲(chǔ)系統(tǒng),其中,可通過啟用所述存儲(chǔ)電路的時(shí)鐘、發(fā)布刷新操 作指令和禁用所述存儲(chǔ)電路的時(shí)鐘來執(zhí)行存儲(chǔ)刷新操作。
9.如權(quán)利要求8所述的存儲(chǔ)系統(tǒng),其中所述刷新操作為自動(dòng)刷新操作。
10.如權(quán)利要求1所述的存儲(chǔ)系統(tǒng),其中,所述第一存儲(chǔ)模塊的存儲(chǔ)電路的刷新操作獨(dú) 立于所述第二存儲(chǔ)模塊的存儲(chǔ)電路的刷新操作。
11.如權(quán)利要求1所述的存儲(chǔ)系統(tǒng),其中所述第一存儲(chǔ)模塊的存儲(chǔ)電路的的刷新操作 或所述第二存儲(chǔ)模塊的存儲(chǔ)電路的刷新操作由各自的模塊控制器控制。
12.如權(quán)利要求6所述的存儲(chǔ)系統(tǒng),其中,當(dāng)在所述存儲(chǔ)電路上沒有正在執(zhí)行讀取或?qū)?入操作時(shí),使所述存儲(chǔ)電路處于低功率狀態(tài)。
13.如權(quán)利要求5所述的存儲(chǔ)系統(tǒng),其中,當(dāng)沒有數(shù)據(jù)正被發(fā)送給所述存儲(chǔ)模塊以將所 述數(shù)據(jù)轉(zhuǎn)送到另一個(gè)存儲(chǔ)模塊并且所述存儲(chǔ)模塊沒有正在執(zhí)行讀取或?qū)懭氩僮鲿r(shí),使所述 模塊控制器處于低功率狀態(tài)。
14.如權(quán)利要求1所述的存儲(chǔ)系統(tǒng),所述存儲(chǔ)系統(tǒng)還包括總線、存儲(chǔ)控制器和根模塊。
15.一種存儲(chǔ)系統(tǒng),包括具有模塊控制器、總線接口和存儲(chǔ)電路的多個(gè)存儲(chǔ)模塊;其中,所述多個(gè)存儲(chǔ)模塊與存儲(chǔ)控制器連接,并且所述多個(gè)存儲(chǔ)模塊的擦除操作由所 述存儲(chǔ)控制器協(xié)調(diào)。
16.如權(quán)利要求15所述的存儲(chǔ)系統(tǒng),其中,所述受協(xié)調(diào)的多個(gè)模塊包括獨(dú)立磁盤冗余 陣列組。
17.如權(quán)利要求14所述的存儲(chǔ)系統(tǒng),其中,使所述獨(dú)立磁盤冗余陣列組的多個(gè)存儲(chǔ)模 塊中僅有一個(gè)存儲(chǔ)模塊能夠在間隔期間執(zhí)行擦除操作,并且使所述獨(dú)立磁盤冗余陣列組的 每一個(gè)存儲(chǔ)模塊都能夠在所述獨(dú)立磁盤冗余陣列組的多個(gè)存儲(chǔ)模塊中的任一個(gè)存儲(chǔ)模塊 于另一時(shí)間執(zhí)行所述擦除操作之前執(zhí)行所述擦除操作。
18.一種具有多個(gè)存儲(chǔ)模塊的存儲(chǔ)系統(tǒng)中的存儲(chǔ)模塊,包括總線接口 ;配置成發(fā)布存儲(chǔ)刷新指令的控制器;和易失性存儲(chǔ)電路;其中,當(dāng)數(shù)據(jù)沒有正被讀取或者寫入所述存儲(chǔ)電路時(shí),所述總線接口、控制器和易失性 存儲(chǔ)電路中至少有兩個(gè)置于低功率狀態(tài),并且當(dāng)所述存儲(chǔ)電路處于低功率狀態(tài)時(shí),所述易 失性存儲(chǔ)電路的刷新操作由所述控制器開始。
19.如權(quán)利要求18所述的存儲(chǔ)模塊,其中,所述存儲(chǔ)電路配置成當(dāng)所述存儲(chǔ)控制器處 于低功率狀態(tài)并且沒有正執(zhí)行刷新操作時(shí)處于低功率狀態(tài)。
20.如權(quán)利要求18所述的存儲(chǔ)模塊,其中,所述易失性存儲(chǔ)電路為多個(gè)存儲(chǔ)電路,并且 第一存儲(chǔ)電路的功率狀態(tài)獨(dú)立于第二存儲(chǔ)電路的功率狀態(tài)。
21.如權(quán)利要求18所述的存儲(chǔ)模塊,其中,所述易失性存儲(chǔ)電路為多個(gè)存儲(chǔ)電路,并且 第一存儲(chǔ)電路的刷新操作獨(dú)立于第二存儲(chǔ)電路的刷新操作。
22.如權(quán)利要求19所述的存儲(chǔ)模塊,其中,所述刷新操作通過如下方式執(zhí)行啟用所述 存儲(chǔ)電路的時(shí)鐘,發(fā)布存儲(chǔ)刷新指令,以及在執(zhí)行所述刷新操作之后禁用所述存儲(chǔ)電路的 時(shí)鐘。
23.如權(quán)利要求22所述的存儲(chǔ)模塊,其中,所述存儲(chǔ)刷新指令為在啟用所述時(shí)鐘的間 隔期間發(fā)布的多個(gè)存儲(chǔ)刷新指令。
24.如權(quán)利要求22所述的存儲(chǔ)模塊,其中,基于所述存儲(chǔ)電路的溫度確定用來執(zhí)行所 述存儲(chǔ)刷新指令的時(shí)間間隔。
25.如權(quán)利要求24所述的存儲(chǔ)模塊,其中,所述時(shí)間間隔取決于所述存儲(chǔ)模塊上的多 個(gè)存儲(chǔ)電路中的任何存儲(chǔ)電路的最高溫度。
26.如權(quán)利要求22所述的存儲(chǔ)模塊,其中,通過發(fā)布周期性存儲(chǔ)刷新指令執(zhí)行所述刷 新操作。
27.如權(quán)利要求18所述的存儲(chǔ)模塊,其中,多個(gè)存儲(chǔ)模塊與總線連接,并且第一存儲(chǔ)模 塊的刷新操作獨(dú)立于第二存儲(chǔ)模塊的刷新操作。
28.—種管理存儲(chǔ)系統(tǒng)的方法,所述方法包括提供多個(gè)存儲(chǔ)模塊,所述存儲(chǔ)模塊具有總線接口、存儲(chǔ)電路和控制器;提供總線,所述總線提供所述多個(gè)存儲(chǔ)模塊和存儲(chǔ)控制器之間的連通性,使得所述多 個(gè)存儲(chǔ)模塊中的第一存儲(chǔ)模塊和第二存儲(chǔ)模塊通過根存儲(chǔ)模塊與存儲(chǔ)控制器連接;對(duì)于每一個(gè)存儲(chǔ)模塊,確定所述存儲(chǔ)模塊的存儲(chǔ)電路上是否正在執(zhí)行讀取或?qū)懭氩僮鳎划?dāng)讀取或?qū)懭氩僮鳑]有正在執(zhí)行時(shí),至少使所述存儲(chǔ)模塊的存儲(chǔ)電路處于低功率狀 態(tài);并且向該存儲(chǔ)電路發(fā)布刷新指令。
29.如權(quán)利要求28所述的方法,其中,當(dāng)讀取或?qū)懭氩僮饔伤龃鎯?chǔ)控制器控制時(shí),將 所述存儲(chǔ)電路置于高功率狀態(tài)。
30.如權(quán)利要求29所述的方法,所述方法還包括確定所述存儲(chǔ)控制器是否已經(jīng)請(qǐng)求所 述存儲(chǔ)模塊上的讀取或?qū)懭氩僮?,以及?dāng)在所述存儲(chǔ)模塊的存儲(chǔ)電路上沒有即將發(fā)生的讀取或?qū)懭氩僮鲿r(shí),將所述存儲(chǔ)模塊的控制器置于低功率狀態(tài)。
31.如權(quán)利要求29所述的方法,所述方法還包括確定數(shù)據(jù)是否正被傳輸至另一個(gè)存儲(chǔ) 模塊,或者確定是否預(yù)計(jì)從另一個(gè)存儲(chǔ)模塊接收數(shù)據(jù),以及當(dāng)沒有數(shù)據(jù)正被傳輸或者預(yù)計(jì) 被傳輸時(shí),將所述存儲(chǔ)模塊的一個(gè)或一個(gè)以上的總線接口置于低功率狀態(tài)。
32.—種計(jì)算機(jī)程序產(chǎn)品,該產(chǎn)品可儲(chǔ)存在存儲(chǔ)器中,所述產(chǎn)品包括可由存儲(chǔ)模塊的 控制器執(zhí)行的指令以實(shí)現(xiàn)如下功能確定讀取或?qū)懭氩僮魇欠癖徽?qǐng)求或者是否正在本地存儲(chǔ)器上執(zhí)行; 當(dāng)讀取或?qū)懭氩僮鳑]有正被請(qǐng)求或者沒有正在所述本地存儲(chǔ)器上執(zhí)行時(shí),將所述控制 器和本地存儲(chǔ)器置于低功率狀態(tài);向所述本地存儲(chǔ)器發(fā)布刷新指令使所述本地存儲(chǔ)器執(zhí)行刷新操作。
33.如權(quán)利要求32所述的計(jì)算機(jī)程序產(chǎn)品,其中,將所述本地存儲(chǔ)器置于低功率狀態(tài) 包括禁用所述本地存儲(chǔ)器的時(shí)鐘。
34.如權(quán)利要求33所述的計(jì)算機(jī)程序產(chǎn)品,其中,發(fā)布刷新指令包括啟用所述本地存 儲(chǔ)器的時(shí)鐘,發(fā)布刷新指令,以及在刷新操作已經(jīng)完成之后禁用所述時(shí)鐘。
35.一種存儲(chǔ)系統(tǒng),包括第一存儲(chǔ)模塊和第二存儲(chǔ)模塊,每一個(gè)存儲(chǔ)模塊具有模塊控制器、總線接口和存儲(chǔ)電路;其中,所述第一存儲(chǔ)模塊和第二存儲(chǔ)模塊通過根存儲(chǔ)模塊與存儲(chǔ)控制器通信,并且所 述第一存儲(chǔ)模塊的刷新操作獨(dú)立于所述第二存儲(chǔ)模塊的刷新操作。
36.如權(quán)利要求35所述的存儲(chǔ)系統(tǒng),其中,所述第一存儲(chǔ)模塊的功率狀態(tài)獨(dú)立于所述 第二存儲(chǔ)模塊的功率狀態(tài)。
全文摘要
本發(fā)明描述了一種存儲(chǔ)系統(tǒng),在所述存儲(chǔ)系統(tǒng)中,多個(gè)存儲(chǔ)模塊與存儲(chǔ)控制器連接。依賴于所述存儲(chǔ)模塊所執(zhí)行的功能,每一個(gè)存儲(chǔ)模塊的功率狀態(tài)受到控制。當(dāng)在特定的存儲(chǔ)模塊上沒有正在執(zhí)行讀取或?qū)懭氩僮鲿r(shí),則可以使電路的至少一部分以低功率模式運(yùn)行。通過禁用時(shí)鐘可將與所述存儲(chǔ)模塊相關(guān)聯(lián)的存儲(chǔ)電路置于低功率模式。可通過在所述存儲(chǔ)電路處于低功率模式的同時(shí)發(fā)布刷新指令來保證所述存儲(chǔ)電路的數(shù)據(jù)完整性,所述刷新指令通過如下方式發(fā)布啟用時(shí)鐘,發(fā)布刷新指令,以及在所述刷新操作完成之后禁用時(shí)鐘。
文檔編號(hào)G06F12/00GK101884033SQ200880105724
公開日2010年11月10日 申請(qǐng)日期2008年8月28日 優(yōu)先權(quán)日2007年8月31日
發(fā)明者喬恩·C·R·班尼特, 馬克西姆·阿德爾曼 申請(qǐng)人:提琴存儲(chǔ)器公司