專利名稱:用于增強(qiáng)外部計(jì)算設(shè)備的性能的自適應(yīng)存儲(chǔ)系統(tǒng)的制作方法
用于增強(qiáng)外部計(jì)算設(shè)備的性能的自適應(yīng)存儲(chǔ)系統(tǒng) 相關(guān)申請(qǐng)的交叉引用
本申請(qǐng)要求2007年1月lO日提交的美國臨時(shí)申請(qǐng)No. 60/884,378 的優(yōu)先權(quán)。
背景技術(shù):
現(xiàn)代的計(jì)算設(shè)備通常具有多個(gè)且不同類型的內(nèi)部存儲(chǔ)器組件,要 求這些存儲(chǔ)器組件支持不同的終端應(yīng)用。這些存儲(chǔ)器組件以及它們相 關(guān)的特征是通過其能夠測(cè)量計(jì)算設(shè)備的性能的 一些關(guān)鍵度量?,F(xiàn)代的 計(jì)算設(shè)備通常還能夠和通過各種內(nèi)建的信道(例如PCI總線、火線 (Firewire )端口 、 USB端口或?qū)iT的多媒體卡(MMC )端口 )添加 的存儲(chǔ)器組件一起運(yùn)行。所有這些內(nèi)部的和添加的存儲(chǔ)器組件由易失 性的或非易失性的存儲(chǔ)器或者其某種組合組成。與非(Nand)閃存以 及或非(Nor)閃存是常見類型的非易失性存儲(chǔ)器。動(dòng)態(tài)隨機(jī)存取存 儲(chǔ)器(DRAM)和靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)是易失性存儲(chǔ)器類 型。存儲(chǔ)器類型可以根據(jù)性能和密度來分類。高性能存儲(chǔ)器(例如 SRAM)較大,實(shí)現(xiàn)起來較費(fèi)錢,并且消耗較多功率。較高密度的存 儲(chǔ)器(例如DRAM)較經(jīng)濟(jì)合算,但是通常具有較差的由單個(gè)元件的 存取時(shí)間和由帶寬測(cè)得的性能,或者具有較差的將存儲(chǔ)內(nèi)容傳送到要 求包含在存儲(chǔ)系統(tǒng)中的數(shù)據(jù)或指令的處理元件的速率。
當(dāng)將這些現(xiàn)代的存儲(chǔ)系統(tǒng)實(shí)現(xiàn)在移動(dòng)設(shè)備(例如膝上型PC、蜂 窩式電話、PDA或者任何其它各種超便攜的個(gè)人計(jì)算設(shè)備)中時(shí),這 些相關(guān)的權(quán)衡尤其關(guān)鍵。在這樣的設(shè)備中,對(duì)功耗和形狀因子的額外 考慮使最佳地配置和利用存儲(chǔ)器資源變得很關(guān)鍵。幸運(yùn)的是,增大計(jì) 算機(jī)產(chǎn)品集成的級(jí)別已經(jīng)使將多個(gè)存儲(chǔ)器類型封裝到單個(gè)完整存儲(chǔ) 系統(tǒng)封裝體中成為可能,這具有顯著改進(jìn)存儲(chǔ)器數(shù)據(jù)傳送和相關(guān)的處理速度的特性。
其中這樣的集成封裝有用的一種特定的應(yīng)用為高速緩沖存儲(chǔ)系
統(tǒng)。最新的計(jì)算系統(tǒng)具有集成的高速緩存系統(tǒng),其包含1級(jí)和2級(jí) SRAM高速緩存。通常,處理器使用高速援存來減少從存儲(chǔ)器存取類 似數(shù)據(jù)的平均時(shí)間。SRAM高速緩存是低容量的、快速存儲(chǔ)器類型, 其存儲(chǔ)從主存儲(chǔ)單元(memory location )頻繁存取的數(shù)據(jù)的拷貝。
當(dāng)處理器嘗試從主存儲(chǔ)單元讀取或者寫入主存儲(chǔ)單元時(shí),它首先 檢查高速緩沖存儲(chǔ)單元來看看先前存儲(chǔ)的類似數(shù)據(jù)的拷貝是否可用。 處理器通過將數(shù)據(jù)地址存儲(chǔ)單元與高速緩存進(jìn)行比較來看看是否存 在高速緩存命中(數(shù)據(jù)存在于高速緩存中)來進(jìn)行檢查。如果處理器 未發(fā)現(xiàn)數(shù)據(jù)在高速緩存中,則出現(xiàn)高速緩存未命中并且處理器必須在 慢得多的數(shù)據(jù)檢索速率下運(yùn)行,因?yàn)樗枰獜母闹鞔鎯?chǔ)單元(例 如硬盤或者閃速存儲(chǔ)器即閃存)存取數(shù)據(jù)。以某些方式增大高速緩存 命中以便減少對(duì)存取最慢存儲(chǔ)器類型來發(fā)現(xiàn)頻繁存取數(shù)據(jù)的需要,會(huì) 是有利的。
此外,最新的添加的高速緩沖存儲(chǔ)系統(tǒng)包括閃速存儲(chǔ)器和RAM 存儲(chǔ)器,其中閃存控制發(fā)生在電路外(off-circuit),在外部計(jì)算設(shè)備 的處理器處。這類系統(tǒng)是低效的,因?yàn)楸仨毻ㄟ^將數(shù)據(jù)從添加的存儲(chǔ) 系統(tǒng)的閃存路由穿過外部的處理器總線到達(dá)外部計(jì)算設(shè)備處理器并 且往回穿過外部的處理器總線到達(dá)添加的存儲(chǔ)系統(tǒng)的RAM,來幫助閃 存和RAM存儲(chǔ)器之間的傳送。
發(fā)明內(nèi)容
該發(fā)明內(nèi)容被提供來以簡(jiǎn)化形式引入概念的選擇,將在下面的具 體實(shí)施方式中進(jìn)一步描述所述概念。該發(fā)明內(nèi)容不意圖確認(rèn)所要求保 護(hù)的主題的關(guān)鍵特征,它也不意圖用于在確定所要求保護(hù)的主題的范 圍方面給予幫助。
鑒于與如在上面背景技術(shù)部分中所討論的現(xiàn)有技術(shù)存儲(chǔ)系統(tǒng)相 關(guān)的低效,本申請(qǐng)的發(fā)明人已經(jīng)發(fā)明了自適應(yīng)存儲(chǔ)設(shè)備,其使用價(jià)格
10比較低廉的DRAM技術(shù)幫助高速緩存擴(kuò)展,而同時(shí)允許在同一個(gè)添加 的存儲(chǔ)系統(tǒng)的存儲(chǔ)器組件之間進(jìn)行直接存儲(chǔ)器傳送。此外,本發(fā)明可 以有利地并入專門的高速緩存算法以利用擴(kuò)展的高速緩存和內(nèi)部存 儲(chǔ)器存取。
根據(jù)本發(fā)明一個(gè)實(shí)施例,提供了 一種用于改進(jìn)外部計(jì)算設(shè)備的性 能的自適應(yīng)存儲(chǔ)系統(tǒng)(adaptive memory system )。該自適應(yīng)存儲(chǔ)系 統(tǒng)包括單個(gè)控制器、第一存儲(chǔ)器類型(例如,靜態(tài)隨機(jī)存取存儲(chǔ)器或 SRAM)、第二存儲(chǔ)器類型(例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器或DRAM)、 第三存儲(chǔ)器類型(例如,閃存)、內(nèi)部總線系統(tǒng)以及外部總線接口。 該單個(gè)控制器被配置為(i)使用該內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器 類型通信;(ii)使用該外部總線接口與外部計(jì)算設(shè)備通信;以及(iii) 將高速緩存數(shù)據(jù)存儲(chǔ)指派(assignment)分配到第一存儲(chǔ)器類型內(nèi)的 存儲(chǔ)空間,并且在第 一存儲(chǔ)器類型內(nèi)的該存儲(chǔ)空間被確定為滿的之 后,將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第二存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間。
根據(jù)本發(fā)明的一個(gè)方面,第一和第二存儲(chǔ)器類型是不同的易失性 存儲(chǔ)器類型(例如,SRAM和DRAM)而第三存儲(chǔ)器類型是非易失性 的類型(例如,閃存),并且該單個(gè)控制器還被配置為使第一和第二 存儲(chǔ)器類型的沒有被寫入的部分掉電,以使功耗最小化。
根據(jù)本發(fā)明的另 一方面,該單個(gè)控制器還可以被配置為將高速緩 存數(shù)據(jù)從該SRAM或者該閃速存儲(chǔ)器傳送到該DRAM。如果該高速緩 存數(shù)據(jù)存在于該SRAM內(nèi),則將該高速緩存數(shù)據(jù)從該SRAM傳送到該 DRAM。如果該高速緩存數(shù)據(jù)不存在于該SRAM內(nèi),而存在于該閃速 存儲(chǔ)器內(nèi),則將該高速緩存數(shù)據(jù)從該閃速存儲(chǔ)器傳送到該DRAM。
根據(jù)本發(fā)明的又一方面,該單個(gè)控制器還可以被配置為根據(jù)數(shù)據(jù) 先行方案將來自該閃速存儲(chǔ)器的數(shù)據(jù)高速緩存到該SRAM和DRAM。
根據(jù)本發(fā)明的另 一實(shí)施例,提供了 一種用于控制自適應(yīng)存儲(chǔ)系統(tǒng) 的方法,其中該自適應(yīng)存儲(chǔ)系統(tǒng)包括單個(gè)控制器、第一存儲(chǔ)器類型、 第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、內(nèi)部總線系統(tǒng)以及外部總線接口。 該方法通常包括三個(gè)步驟(i)使用內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信;(ii)使用該外部總線接口與外部計(jì)算設(shè)備通信;以及(iii) 將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間,并且 在第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間被確定為滿的之后,在第二存儲(chǔ)器類 型的存儲(chǔ)空間內(nèi)分配高速緩存數(shù)據(jù)存儲(chǔ)指派。
根據(jù)本發(fā)明的又一實(shí)施例,提供了一種包括計(jì)算機(jī)可執(zhí)行程序的 計(jì)算機(jī)可讀介質(zhì),用于控制自適應(yīng)存儲(chǔ)系統(tǒng)的單個(gè)控制器的操作。該
自適應(yīng)存儲(chǔ)系統(tǒng)還包括第一存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ) 器類型、內(nèi)部總線系統(tǒng)以及外部總線接口。該計(jì)算機(jī)可執(zhí)行程序在被 執(zhí)行時(shí)使得該單個(gè)控制器執(zhí)行通常包括三個(gè)步驟的方法(i)使用該 內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信;(ii)使用該外部總線接 口與外部計(jì)算設(shè)備通信;以及(Hi)將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到
第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間,并且在第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間 被確定為滿的之后,將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第二存儲(chǔ)器類型 內(nèi)的存儲(chǔ)空間。
根據(jù)本發(fā)明的還一實(shí)施例,提供了 一種包括計(jì)算機(jī)可執(zhí)行程序的 計(jì)算機(jī)可讀介質(zhì),用于實(shí)現(xiàn)自適應(yīng)存儲(chǔ)系統(tǒng)的單個(gè)控制器的數(shù)據(jù)先行 高速緩存方案。該自適應(yīng)存儲(chǔ)系統(tǒng)還包括第一存儲(chǔ)器類型、第二存儲(chǔ) 器類型、第三存儲(chǔ)器類型、內(nèi)部總線系統(tǒng)以及外部總線接口。該計(jì)算 機(jī)可執(zhí)行程序在被執(zhí)行時(shí)使得該單個(gè)控制器執(zhí)行通常包括四個(gè)步驟 的方法(i)從運(yùn)行在外部計(jì)算設(shè)備上的應(yīng)用獲得扇區(qū)數(shù)據(jù)的序列;
(ii)將所獲得的扇區(qū)數(shù)據(jù)的序列與多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列 進(jìn)行比較以確定是否存在高概率匹配;(iii)如果在所獲得的扇區(qū)數(shù) 據(jù)的序列與該多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之間確定了高概率匹 配,則用所確定的高概率匹配來至少高速緩存第一存儲(chǔ)器類型;以及
(iv)如果在所獲得的扇區(qū)數(shù)據(jù)的序列與該多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù) 的序列之間沒有確定高概率匹配,則確定是否能夠從該多個(gè)先前存儲(chǔ) 的扇區(qū)數(shù)據(jù)的序列中選出最可能的扇區(qū)數(shù)據(jù)的序列。
根據(jù)本發(fā)明的一個(gè)方面,如果能夠選出最可能的扇區(qū)數(shù)據(jù)的序 列,則將所選的最可能的扇區(qū)數(shù)據(jù)的序列高速緩存到第一存儲(chǔ)器類型或第二存儲(chǔ)器類型中;并且如果不能選出最可能的扇區(qū)數(shù)據(jù)的序列, 則啟動(dòng)高速緩存數(shù)據(jù)訓(xùn)練序列(training sequence )。
根據(jù)本發(fā)明的另 一方面,該高速緩存數(shù)據(jù)訓(xùn)練序列在第 一存儲(chǔ)器 類型或者第二存儲(chǔ)器類型內(nèi)存儲(chǔ)所獲得的扇區(qū)數(shù)據(jù)的序列,并且在第 三存儲(chǔ)器類型中存儲(chǔ)該序列的非易失性的拷貝。
根據(jù)本發(fā)明的再一 實(shí)施例,提供了 一種用于實(shí)現(xiàn)自適應(yīng)存儲(chǔ)系統(tǒng) 的單個(gè)控制器的數(shù)據(jù)先行高速緩存方案的方法。該自適應(yīng)存儲(chǔ)系統(tǒng)包 括單個(gè)控制器、第一存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、 內(nèi)部總線系統(tǒng)以及外部總線接口。該方法通常包括四個(gè)步驟(i)從 運(yùn)行在外部計(jì)算設(shè)備上的應(yīng)用獲得扇區(qū)數(shù)據(jù)的序列;(ii)將所獲得 的扇區(qū)數(shù)據(jù)的序列與多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列進(jìn)行比較以確 定是否存在高概率匹配;(iii)如果在所獲得的扇區(qū)數(shù)據(jù)的序列與該 多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之間確定了高概率匹配,則將所確定 的高概率匹配數(shù)據(jù)至少高速緩存到第一存儲(chǔ)器類型;以及(iv)如果 在所獲得的扇區(qū)數(shù)據(jù)的序列與該多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之 間沒有確定高概率匹配,則確定是否能夠從該多個(gè)先前存儲(chǔ)的扇區(qū)數(shù) 據(jù)的序列中選出最可能的扇區(qū)數(shù)據(jù)的序列。
通過參考以下結(jié)合附圖的詳細(xì)描述,本發(fā)明的上述方面和許多伴 隨的優(yōu)點(diǎn)將變得更容易明白,并且同樣變得更好理解,在附圖中 圖l是根據(jù)本發(fā)明一個(gè)實(shí)施例的自適應(yīng)存儲(chǔ)系統(tǒng)(AMS )的框圖; 圖2是示出了根據(jù)現(xiàn)有技術(shù)的與外部計(jì)算設(shè)備接口連接的傳統(tǒng)存 儲(chǔ)系統(tǒng)的框圖3是示出了根據(jù)本發(fā)明 一個(gè)實(shí)施例的AMS文件系統(tǒng)分區(qū)的框
圖4是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、由AMS控制器幫助的、 在AMS存儲(chǔ)器組件和處理器之間的詳細(xì)數(shù)據(jù)流的框圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的、示出了在不同操作處理級(jí)時(shí)的
13數(shù)據(jù)流轉(zhuǎn)移的AMS控制器的狀態(tài)機(jī)圖6是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、用于填充AMSSRAM和 DRAM高速緩存的部分的AMS控制器高速緩存數(shù)據(jù)先行方案的流程 圖7是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、與AMS控制器高速緩存 數(shù)據(jù)先行方案有關(guān)的訓(xùn)練序列的流程圖8是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、與AMS控制器高速緩存 數(shù)據(jù)先行方案有關(guān)的調(diào)整序列(timing sequence )的流程圖9是示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、AMS控制器的數(shù)據(jù)流和 相關(guān)帶寬分配的框圖。
具體實(shí)施例方式
本發(fā)明涉及自適應(yīng)存儲(chǔ)系統(tǒng)(AMS),其包含易失性的和非易 失性的存儲(chǔ)器組件以及控制器組件,該控制器組件被配置為管理存儲(chǔ) 器組件之間的數(shù)據(jù)傳送和存儲(chǔ)器組件與外部計(jì)算設(shè)備之間的數(shù)據(jù)傳 送。存儲(chǔ)器組件和控制器組件(在此被統(tǒng)稱為AMS組件)被具體實(shí)現(xiàn) 在多芯片封裝集成電路(MCP)上,其能夠被可配置地設(shè)計(jì)成可拆裝 地插入任何傳統(tǒng)的個(gè)人計(jì)算設(shè)備(例如臺(tái)式PC、膝上型PC、蜂窩式 電話、PDA或者超移動(dòng)PC)中。本發(fā)明還涉及由AMS控制器組件實(shí) 現(xiàn)的數(shù)據(jù)傳送控制方案,其增強(qiáng)與AMS和外部計(jì)算設(shè)備之間的數(shù)據(jù)傳 送有關(guān)的綜合性能。
根椐一個(gè)實(shí)施例,圖1中示出的AMS IO包括多個(gè)AMS存儲(chǔ)器組 件類型,該多個(gè)AMS存儲(chǔ)器組件類型包括靜態(tài)隨機(jī)存取存儲(chǔ)器 (SRAM) 14、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM) 16以及閃速存儲(chǔ)器18。 應(yīng)當(dāng)理解,本實(shí)施例的存儲(chǔ)器組件類型僅僅是能夠在AMS內(nèi)運(yùn)行的存 儲(chǔ)器類型的實(shí)例,而本發(fā)明不限于本實(shí)施例中使用的確切的存儲(chǔ)器類 型。AMS控制器組件(或者簡(jiǎn)稱為"控制器")12被配置為通過內(nèi)部總 線系統(tǒng)20與SRAM、 DRAM和閃速存儲(chǔ)器組件通信并且通過外部總線 接口22與外部計(jì)算設(shè)備(未示出)通信。該配置允許AMS控制器12完全管理存儲(chǔ)器組件之間的數(shù)據(jù)流,而與外部計(jì)算設(shè)備無關(guān)。
在如圖2中所示出的包含類似的存儲(chǔ)器組件類型的傳統(tǒng)MCP存 儲(chǔ)設(shè)備中,對(duì)于閃速存儲(chǔ)器數(shù)據(jù)傳送的控制發(fā)生在外部計(jì)算設(shè)備。例 如,當(dāng)應(yīng)用在外部計(jì)算設(shè)備上運(yùn)行并且要求應(yīng)用數(shù)據(jù)在MCP存儲(chǔ)設(shè)備 30的RAM存儲(chǔ)器組件32、 34與閃速存儲(chǔ)器組件36之間傳送時(shí)(例如, 當(dāng)高速緩存應(yīng)用頁數(shù)椐時(shí)),外部計(jì)算設(shè)備40的處理器使用集成的閃 存控制器42控制閃存數(shù)據(jù)的傳送。在該系統(tǒng)中,可傳送的閃存數(shù)據(jù)必 須由外部計(jì)算設(shè)備的處理器40從MCP存儲(chǔ)設(shè)備的閃速存儲(chǔ)器組件36 路由穿過閃存接口 39和外部的閃存總線46、并且往回穿過RAM雙倍數(shù) 據(jù)率(DDR)總線48和RAM接口38到達(dá)MCP存儲(chǔ)設(shè)備的RAM存儲(chǔ)器 組件32、 34。該數(shù)據(jù)路由方案對(duì)于在非易失性存儲(chǔ)器組件(例如,閃 存)和同一MCP存儲(chǔ)設(shè)備上的易失性存儲(chǔ)器組件(例如,RAM)之 間傳送(高速緩存)數(shù)據(jù)是低效的。
例如如圖l中所示出的,根據(jù)本發(fā)明各個(gè)實(shí)施例的AMS MCP技 術(shù)通過幫助AMS閃存(18)和RAM (14、 16)存儲(chǔ)器組件之間的直 接存儲(chǔ)器存取(DMA)而不需要使用外部計(jì)算設(shè)備的處理器來解決該 低效的問題。本發(fā)明的電路上的(on-circuit) AMS控制器12控制閃速 存儲(chǔ)器組件18和RAM存儲(chǔ)器組件14、 16之間的數(shù)據(jù)傳送,使得能夠通 過內(nèi)部總線系統(tǒng)20將閃存數(shù)據(jù)直接傳送到期望的RAM存儲(chǔ)器組件位 置14、 16。由于該DMA數(shù)據(jù)傳送控制方案不需要使用外部計(jì)算設(shè)備的 處理器,因此它有效地減少了外部總線帶寬的使用,其中該外部總線 是在AMS和外部計(jì)算設(shè)備之間的總線。根據(jù)本發(fā)明的各個(gè)實(shí)施例,以 這種方式,能夠優(yōu)化外部總線帶寬以允許外部計(jì)算設(shè)備的處理器用高 得多的速率從AMS存儲(chǔ)器組件讀取數(shù)據(jù)以及將數(shù)據(jù)寫到AMS存儲(chǔ)器 組件。此外,在AMS閃速存儲(chǔ)器組件18和AMSRAM存儲(chǔ)器組件14、 16之間更短的物理DMA互連提供了與上面討論的傳統(tǒng)傳送方案相比 更低的寄生電容。已知電路中過大的寄生電容會(huì)減少帶寬、提高外來 干擾的可能性并且增大在正常電路操作條件期間的功耗。當(dāng)在這些 AMS存儲(chǔ)器組件之間反復(fù)地傳送數(shù)據(jù)時(shí)(例如,當(dāng)高速緩存頁數(shù)據(jù)時(shí)),在本發(fā)明中實(shí)現(xiàn)的更短的導(dǎo)線長度數(shù)據(jù)傳送提供了顯著的節(jié)電 量。
消除外部計(jì)算設(shè)備的處理器對(duì)AMS存儲(chǔ)器組件數(shù)據(jù)傳送控制的 影響的另一個(gè)優(yōu)點(diǎn)在于在裝載之前實(shí)際的文件管理功能被嵌入在 AMS內(nèi)。這允許外部計(jì)算設(shè)備將AMS看作標(biāo)準(zhǔn)文件系統(tǒng)。標(biāo)準(zhǔn)文件系 統(tǒng)能夠由標(biāo)準(zhǔn)操作系統(tǒng)級(jí)驅(qū)動(dòng)器來支持,由此消除了在操作系統(tǒng)級(jí)維 持專門的依賴閃存的設(shè)備驅(qū)動(dòng)器的需要。AMS的自含的 (self-contained )閃存驅(qū)動(dòng)器軟件被包含在附圖中示出的AMS文件系 統(tǒng)分區(qū)50的嵌入式SRAM/DRAM/閃存可安裝文件系統(tǒng)分區(qū)54內(nèi)。在 所示出的實(shí)施例中,其它AMS文件系統(tǒng)分區(qū)包括標(biāo)準(zhǔn)的FAT文件系統(tǒng) 分區(qū)52以及包括引導(dǎo)(Boot)分區(qū)和閃存接口數(shù)據(jù)的設(shè)備配置分區(qū)56。 嵌入式閃存驅(qū)動(dòng)器軟件不需要在與操作系統(tǒng)集成的時(shí)候進(jìn)行附加的 測(cè)試。該獨(dú)立的存儲(chǔ)器驅(qū)動(dòng)器控制有利地允許幾乎任何操作系統(tǒng)認(rèn)出 AMS,而不需要在外部計(jì)算設(shè)備上額外地安裝專門的存儲(chǔ)器驅(qū)動(dòng)器軟 件。
AMS控制器12還可以被配置為通過選擇性地選通(gate )到AMS SRAM和DRAM易失性存儲(chǔ)器組件14、 16的部分的功率流來使功耗最 小化。這樣的節(jié)電技術(shù)是優(yōu)選的,因?yàn)槿绫绢I(lǐng)域中眾所周知的,SRAM 和DRAM易失性存儲(chǔ)器類型都需要恒定的功率汲取(power-draw )來 維持或者刷新保存在它們的各個(gè)存儲(chǔ)區(qū)的部分內(nèi)的現(xiàn)有數(shù)據(jù)。為了使 AMS中的該功率汲取最小化,在本發(fā)明的各個(gè)示例性實(shí)施例中,控制 器12監(jiān)視RAM存儲(chǔ)器組件以檢測(cè)何時(shí)SRAM或者DRAM 14、 16的部 分沒有被安排被寫入并且已經(jīng)不保存數(shù)據(jù)。一旦檢測(cè)到RAM的不活動(dòng) 的部分,控制器12就使SRAM或DRAM14、 16的那些不活動(dòng)的部分掉 電以將功率損耗最小化。以這種方式,能夠從AMS設(shè)備內(nèi)部動(dòng)態(tài)地調(diào) 節(jié)功耗,而不需要來自外部計(jì)算設(shè)備的處理器的任何輸入。
根據(jù)本發(fā)明的各個(gè)示例性實(shí)施例,AMS (例如圖l中所看到的) 被配置為用作高速自適應(yīng)的高速緩存,其中SRAM 14的部分用作1級(jí) 和2級(jí)高速緩存分區(qū),并且DRAM16的部分用作3級(jí)高速緩存分區(qū)。高速的高速緩存能夠與外部計(jì)算設(shè)備的已有高速緩存系統(tǒng)結(jié)合起來操
作,以自適應(yīng)地增強(qiáng)該組合系統(tǒng)的數(shù)據(jù)存儲(chǔ)和檢索。優(yōu)選地將AMS 集成的高速緩存用于與下面操作有關(guān)的數(shù)據(jù)傳送和數(shù)據(jù)存儲(chǔ),該操作 與引導(dǎo)代碼鏡像(Boot Code Mirror )、程序數(shù)據(jù)、程序代碼和應(yīng)用 數(shù)據(jù)相關(guān)。根據(jù)配置設(shè)定和所需的性能度量來動(dòng)態(tài)地分配用于這樣功 能的高速緩存的大小和級(jí)別。
引導(dǎo)代碼鏡像和程序代碼
將引導(dǎo)代碼從閃存18復(fù)制到SRAM高速緩存14以快速地初始化 設(shè)備處理器。這表示SRAM高速緩存14的初始使用。附加的程序代碼 被識(shí)別為從閃存18請(qǐng)求的數(shù)據(jù)。根據(jù)所分配的高速緩存大小和可用 性,可以將該附加的程序代碼復(fù)制到SRAM或者DRAM高速緩存14 、 16。優(yōu)選地,在填充DRAM高速緩存16之前填充SRAM高速緩存14, 因?yàn)橛捎谛枰粩嗟厮⑿翫RAM數(shù)據(jù)而導(dǎo)致使用DRAM高速緩存比 SRAM高速緩存消耗更多的功率。
詳細(xì)數(shù)據(jù)流和分區(qū)
圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的、在AMS存儲(chǔ)器組件和AMS 控制器60之間的數(shù)據(jù)傳送。在該圖示中,閃存數(shù)據(jù)的分立的塊被稱為 "頁"。初始將這些數(shù)據(jù)頁從閃存80傳送到SRAM62,如路徑P1所示出 的。然后將該頁集中在一起并且經(jīng)由路徑P2高速緩存,以生成一塊引 導(dǎo)代碼數(shù)據(jù)64,然后該引導(dǎo)代碼數(shù)據(jù)64經(jīng)由路徑P3傳送到控制器60。 作為初始化序列或者引導(dǎo)的部分,控制器60將配置DRAM高速緩存72 以允許包括DRAM存取的正常操作。然后控制器60使用經(jīng)由路徑P5 從SRAM高速緩存62傳送的程序代碼66來工作,該程序代碼66經(jīng)由路 徑P4從SRAM數(shù)據(jù)頁高速緩存,最初從閃存80經(jīng)由路徑P1發(fā)送該 SRAM數(shù)據(jù)頁。當(dāng)超過了SRAM高速緩存62的有限的容量時(shí),將要求 被高速緩存的代碼的附加頁從SRAM高速緩存62經(jīng)由路徑P6傳送到 DRAM高速緩存72,或者如果SRAM高速緩存62被確定為滿的并且附加頁已經(jīng)不存在于SRAM高速緩存62中,則將它們直接從閃存80經(jīng)由 路徑P7傳送到DRAM 72??刂破?0然后能夠執(zhí)行存儲(chǔ)在DRAM高速 緩存72中的、經(jīng)由路徑P12存取的程序代碼74。
程序數(shù)據(jù)和應(yīng)用數(shù)據(jù)
程序和應(yīng)用數(shù)據(jù)從內(nèi)部總線系統(tǒng)20 (參見圖l)內(nèi)部填充AMS存 儲(chǔ)空間。如圖4中所示出的,控制器60可以使用路徑P10、 Pll、 P14 和P13存取SRAM 62或者DRAM高速緩存72中的應(yīng)用數(shù)據(jù)或者程序數(shù) 據(jù)的塊68、 70、 76和78。為了將應(yīng)用數(shù)據(jù)提交到閃存80中,必須首先 將一頁或者多頁信息在SRAM62或者DRAM高速緩存72中集合。當(dāng)內(nèi) 容已經(jīng)被確認(rèn)時(shí),控制器60指示該頁或者多頁要被"提交"到閃存80。 這由路徑P15"提交"并且由路徑P16"提交"來指示。然后使用路徑P1 將所提交的頁寫到閃存80。控制器60還可以請(qǐng)求在SRAM和DRAM塊 68、 76之間傳送應(yīng)用數(shù)據(jù)。 一旦要求,就如路徑P8和P9所指出的安排 和執(zhí)行傳送。
控制器邏輯和數(shù)據(jù)流
根據(jù)本發(fā)明的各個(gè)示例性實(shí)施例,AMS控制器邏輯的算法功能 被配置為執(zhí)行以下
1 、動(dòng)態(tài)地分配致力于高速緩存頁數(shù)據(jù)的SRAM和DRAM的部分, 并且基于存儲(chǔ)在閃速存儲(chǔ)器中的啟發(fā)式的(heuristics)、預(yù)配置的設(shè) 定和歷史的存儲(chǔ)器存取信息來調(diào)節(jié)這樣的分配。分配請(qǐng)求包括來自處 理器的讀取和寫入數(shù)據(jù)到AMS存儲(chǔ)器組件的請(qǐng)求以及DMA傳送請(qǐng) 求。在圖5以及相關(guān)表格(下面的表1和表2)中示出了存儲(chǔ)器分配算 法的實(shí)現(xiàn)方式。
2、 使用圖6-8中示出的數(shù)據(jù)先行方案,用從其它存儲(chǔ)塊鏡象的數(shù) 據(jù)填充SRAM和DRAM高速緩存的部分。該數(shù)據(jù)分配使用可調(diào)節(jié)的數(shù) 據(jù)總線寬度并且以被確定為使功耗最小化的速率發(fā)生。
3、 使沒有被寫入并且被確定沒有在使用中的易失性SRAM和DRAM高速緩存的部分掉電。起初,將這些存儲(chǔ)器組件標(biāo)記為沒有被 寫入,并且存儲(chǔ)器的每個(gè)部分僅僅根據(jù)高速緩存數(shù)據(jù)的需要而被上 電。
圖5以狀態(tài)機(jī)形式示出了 AMS控制器數(shù)據(jù)流的圖。表1列出了對(duì) 應(yīng)的狀態(tài)定義而表2列出了與數(shù)據(jù)流圖相關(guān)的對(duì)應(yīng)狀態(tài)轉(zhuǎn)移。
表l: AMS控制器數(shù)據(jù)流圖狀態(tài)定義
NO.名稱描述DMA操作DRAM電力SRAM電力
1 引導(dǎo)處理器啟動(dòng)。將引導(dǎo)代碼斷開為引導(dǎo)所需
沒有配置從閃存復(fù)制的組件接
DRAM高速到SRAM,處通,其它斷
緩存。理 器 從開
SRAM引導(dǎo)。
2 程序處理器運(yùn)行將閃存頁復(fù)接通接通
初始應(yīng)用,5殳制到SRAM、
有數(shù)據(jù)被寫DRAM高速
入。緩存。執(zhí)行
DMA請(qǐng)求。
3 計(jì)算處理器運(yùn)行將閃存頁復(fù)接通接通
帶有數(shù)據(jù)處制到SRAM、
理的應(yīng)用。DRAM高速
緩存。將
SRAM高速
緩存溢出傳
送到DRAM。
執(zhí)行DMA請(qǐng) 求。功使來自處理SRAM備份接通 接通 , 器側(cè)的總線到DRAM并 線空閑。 且提交到閃
閑 存。執(zhí)行DMA
__^_
5 待機(jī)使來自處理 接通 斷開
器側(cè)的總線 空閑。等待激 活或者掉電。
6掉電處理器請(qǐng)求低功率待機(jī)
低功率狀態(tài)。
表2: AMS控制器數(shù)據(jù)流圖狀態(tài)轉(zhuǎn)移轉(zhuǎn)移起始狀態(tài)到達(dá)狀態(tài)標(biāo)準(zhǔn)
I上電1引導(dǎo)系統(tǒng)復(fù)位有效
II1引導(dǎo)2程序內(nèi)部引導(dǎo)初始化序列完成
m2程序3計(jì)算系統(tǒng)復(fù)位無效;系統(tǒng)掉電無效;寫
周期的數(shù)目超過閾值
IV2程序1引導(dǎo)系統(tǒng)復(fù)位有效
V2程序6掉電系統(tǒng)掉電有效
VI3計(jì)算4低功率,在持續(xù)時(shí)間超時(shí)1內(nèi)沒有總線存取
總線空閑請(qǐng)求
VII3計(jì)算6掉電系統(tǒng)掉電有效
VIII3計(jì)算1引導(dǎo)系統(tǒng)復(fù)位有效
低率總空
4IX4低功率5待機(jī)系統(tǒng)掉電無效;在持續(xù)時(shí)間超時(shí)2
內(nèi)沒有總線存取請(qǐng)求
X4低功率6掉電系統(tǒng)掉電有效
XI4低功率3計(jì)算系統(tǒng)掉電無效;檢測(cè)到系統(tǒng)總線存
取請(qǐng)求
XII5待機(jī)6掉電系統(tǒng)掉電有效
XIII5待機(jī)2程序系統(tǒng)掉電無效;檢測(cè)到系統(tǒng)總線存
取請(qǐng)求
XIV6掉電2程序檢測(cè)到系統(tǒng)總線存取請(qǐng)求
AMS控制器數(shù)據(jù)先行高速緩存方案被設(shè)計(jì)成預(yù)期什么特定的數(shù) 據(jù)請(qǐng)求將由外部計(jì)算設(shè)備的處理器啟動(dòng)。能夠?qū)⑴c所預(yù)期的數(shù)據(jù)請(qǐng)求
有關(guān)的特定代碼或者數(shù)據(jù)預(yù)載到高速存儲(chǔ)器設(shè)備中(即,被高速緩存) 以使它能夠在處理器請(qǐng)求類似的代碼或數(shù)據(jù)時(shí)被快速地檢索。
圖6示出了用扇區(qū)數(shù)據(jù)的序列填充AMS SRAM和DRAM高速緩 存14、 16的部分的該數(shù)據(jù)先行方案的運(yùn)行。數(shù)據(jù)的扇區(qū)是操作系統(tǒng)可 尋址的數(shù)據(jù)的最小的塊,其通常為大約512字節(jié)。扇區(qū)數(shù)據(jù)的序列93 是以其長度為特征的、扇區(qū)數(shù)據(jù)的任意有序的集合。本發(fā)明的先行高 速緩存方案有利地允許1級(jí)和2級(jí)SRAM高速緩存14的部分以及3級(jí) DRAM高速緩存16的部分被用高速緩存數(shù)據(jù)的預(yù)測(cè)的序列預(yù)加栽,所 述預(yù)測(cè)的序列通過在下面將描述的塊96、 102中將歷史的高速緩存數(shù) 據(jù)與運(yùn)行時(shí)的(run-time)應(yīng)用數(shù)據(jù)進(jìn)行比較來選擇性地確定。
當(dāng)在外部計(jì)算設(shè)備上運(yùn)行應(yīng)用時(shí)(如在塊90、 92中),將所獲得 的應(yīng)用扇區(qū)數(shù)據(jù)的序列93與先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列中的每一個(gè) 相比較(如在塊94、 96中),以在塊98中確定是否能夠發(fā)現(xiàn)高概率匹 配。以下將詳細(xì)描述高概率匹配的發(fā)現(xiàn)。如果對(duì)于每個(gè)存儲(chǔ)的序列比
21較地確定(在塊98處為"是")這樣的高概率匹配,則將先前存儲(chǔ)的序 列匹配標(biāo)記為高概率匹配并且在塊104中根據(jù)優(yōu)選的SRAM高速緩存 是否已經(jīng)被填滿而預(yù)加載到SRAM或DRAM高速緩存中。這樣的高概 率匹配的確定基于高概率閾值(或者高概率匹配(HPM)值),拿該 高概率閾值和在所獲得的應(yīng)用扇區(qū)數(shù)據(jù)的特定序列93與如塊94、 100 中的每個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之間所確定的差值來進(jìn)行比較。 在一個(gè)實(shí)施例中,高概率閾值涉及在所獲得的應(yīng)用序列與先前存儲(chǔ)的 序列之間的匹配序列扇區(qū)的百分比值(即,90-95°/。)。在這樣的實(shí)施 例中,所確定的差值也會(huì)涉及百分比值以方便按百分比來進(jìn)行比較。 如果對(duì)于任何先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列而言所確定的差值小于高 概率閾值,并且還小于任何其它先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列與所獲得 的應(yīng)用扇區(qū)數(shù)據(jù)的相同序列的所確定差值(在塊98處為"是"),則該 先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列被確定為與所獲得的應(yīng)用扇區(qū)數(shù)據(jù)的特 定序列93相關(guān)的高概率匹配。
然而,如果由于先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列中沒有一個(gè)序列的所 確定差值低于高概率閾值而不能確定高概率匹配(在塊98處為"否"), 則在塊102中,最低的所確定差值與更低精度的最可能的序列閾值(或 者最可能的序列匹配(MLSM)值)相比較。在一個(gè)實(shí)施例中,最可 能的序列閾值也涉及在所獲得的應(yīng)用序列與先前存儲(chǔ)的序列之間的 匹配序列扇區(qū)的百分比值(即,70-75%)。在這樣的實(shí)施例中,所確 定的差值也會(huì)涉及百分比值以方便按百分比來進(jìn)行比較。當(dāng)最低的所 確定差值測(cè)得為高于高概率閾值但是低于最可能的序列閾值(在塊98 處為"否"而在塊102處為"是")時(shí),那么該先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序 列被確定為與所獲得的應(yīng)用扇區(qū)數(shù)據(jù)的特定序列相關(guān)的最可能的序 列匹配。在該情況下,當(dāng)最可能的序列匹配被確定時(shí)(在塊102處為 "是,,),將相關(guān)的先前存儲(chǔ)的序列匹配標(biāo)記為最可能的序列匹配并且 在塊104中根據(jù)優(yōu)選的SRAM高速緩存14是否已經(jīng)被填滿而預(yù)加栽到 SRAM或DRAM高速緩存中。
對(duì)于更低精度的最可能的序列匹配,還可以標(biāo)記序列用于重新調(diào)整,如下面將參考圖8詳細(xì)描述的。對(duì)重新調(diào)整的需要由其中序列被 識(shí)別為最可能序列匹配的重復(fù)情形具體地指出,因?yàn)檫@些序列更可能 需要調(diào)整調(diào)節(jié)(即,扇區(qū)數(shù)據(jù)的重新排序)。
如果由于先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列中沒有一個(gè)序列的所確定 差值低于最可能的序列閾值而不能確定最可能的序列匹配(在塊102 處為"否"),則在塊106中AMS控制器12基于錯(cuò)誤確定的可能性來確 定是否應(yīng)該存儲(chǔ)應(yīng)用扇區(qū)數(shù)據(jù)的特定的所獲得的序列。如果在塊106 處為"否",則執(zhí)行再測(cè)試比較。如果在塊106處為"是",則應(yīng)該通過 啟動(dòng)高速緩存訓(xùn)練序列來將應(yīng)用扇區(qū)數(shù)據(jù)的特定的所獲得的序列預(yù) 加栽到高速緩存中,如下面將參考圖7詳細(xì)描述的。
圖7示出了用扇區(qū)數(shù)據(jù)的特定序列113填充AMS SRAM和DRAM 高速緩存14、16的部分的AMS控制器高速緩存數(shù)據(jù)先行訓(xùn)練序列的運(yùn) 行,該扇區(qū)數(shù)據(jù)的特定序列113從運(yùn)行在外部計(jì)算設(shè)備上的應(yīng)用獲得, 如在塊IIO、 112中。在應(yīng)用扇區(qū)數(shù)據(jù)的序列完成加載、超時(shí)或者超過 預(yù)定的大小限制(如塊114中所示的)之后,訓(xùn)練序列進(jìn)行到序列數(shù) 據(jù)簡(jiǎn)化塊118,并且隨后在塊120中對(duì)于先前記錄的扇區(qū)數(shù)據(jù)的序列 116、 122將數(shù)據(jù)存儲(chǔ)高速緩存。在到易失性的SRAM 14或DRAM 16 高速緩存的序列數(shù)據(jù)存儲(chǔ)120時(shí),AMS控制器還將指定用于高速緩存 指派的 一份序列數(shù)據(jù)發(fā)送到作為備份數(shù)據(jù)存儲(chǔ)設(shè)備的非易失性閃存。 在塊118中通過用由扇區(qū)數(shù)據(jù)的有序的范圍(range)組成的序列取代 無序的扇區(qū)數(shù)據(jù)的序列來執(zhí)行數(shù)據(jù)簡(jiǎn)化(data reduction )。該簡(jiǎn)化產(chǎn) 生更有效率的高速緩沖存儲(chǔ)和檢索機(jī)制。
圖8示出了用于調(diào)整AMS SRAM和DRAM高速緩存14 、 16的部分 的AMS控制器高速緩存數(shù)據(jù)先行調(diào)整序列的運(yùn)行,使得存儲(chǔ)的扇區(qū)數(shù) 據(jù)的已有序列136與應(yīng)用扇區(qū)數(shù)據(jù)的所獲得的序列127相比較,如在塊 124、 126、 128和130中。隨后在塊132中將結(jié)果形成的扇區(qū)數(shù)據(jù)的無 序序列調(diào)整到扇區(qū)數(shù)據(jù)的有序序列中,并且在塊134中被存為有序序 列136的范圍。如果調(diào)整序列的初始運(yùn)行沒有有效地提煉(refine)扇 區(qū)數(shù)據(jù)的全部序列的順序,則將重復(fù)調(diào)整序列。圖9示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的AMS控制器的數(shù)據(jù)流和相 關(guān)帶寬分配。在該實(shí)施例中,AMS控制器138包含SRAM內(nèi)部存儲(chǔ)器 接口140、 DRAM DDR內(nèi)部存儲(chǔ)器接口 142和閃存內(nèi)部存儲(chǔ)器接口 144,以及RAM外部處理器接口146和DDR外部處理器接口148。這些 組合的控制器接口140、 142、 144、 146和148具有總的總線帶寬,其 明顯大于外部計(jì)算設(shè)備的處理器總線接口 (未示出)的帶寬。該過量 的總線數(shù)據(jù)傳送能力允許AMS控制器138在存儲(chǔ)設(shè)備之間直接傳送高 速緩存數(shù)據(jù)(DMA )并且同時(shí)允許外部計(jì)算設(shè)備的處理器分別從AMS 存儲(chǔ)器組件存取數(shù)據(jù)。該交叉存取的數(shù)據(jù)傳送有利地允許AMS控制器 138在增大的總數(shù)據(jù)傳送速率下工作。
用于每個(gè)AMS存儲(chǔ)器組件設(shè)備類型(SRAM14、 DRAM16和閃 存18)的實(shí)際總線可以根據(jù)每個(gè)執(zhí)行的存儲(chǔ)器組件的特定大小和容量 特性而被配置為具有相同的基數(shù)(base)或者相同基數(shù)的倍數(shù)。圖9 示出了當(dāng)N = 4時(shí)在內(nèi)部接口組件140、 142和144的內(nèi)部總線寬度和外 部處理器接口組件146、 148的外部總線寬度之間的4:1差值的實(shí)例,以 及當(dāng)L-4時(shí)用于SRAM的相同的總線配置,以及當(dāng)M-4時(shí)的閃存。
當(dāng)外部計(jì)算設(shè)備的處理器通過兩個(gè)不同的內(nèi)部數(shù)據(jù)總線B1和B2 存取DRAM存儲(chǔ)器時(shí),能夠利用AMS控制器138的過量的總線容量。 該交叉存取的存取允許兩個(gè)不同的內(nèi)部DRAM數(shù)據(jù)總線B1 、B2輪流地 供應(yīng)來自連續(xù)DRAM地址的高速緩存數(shù)據(jù)。該并行的DRAM數(shù)據(jù)傳送 允許DDR外部處理器總線在比內(nèi)部總線上所需的更快的數(shù)據(jù)傳送速 率下工作。與該存取同時(shí),能夠使用數(shù)據(jù)總線B3和B4在閃存18和包含 在SRAM或DRAM存儲(chǔ)設(shè)備14、 16中的高速緩存之間發(fā)生DMA數(shù)據(jù)傳 送。
應(yīng)當(dāng)理解,由于在實(shí)際內(nèi)部和外部總線實(shí)現(xiàn)之間的等待時(shí)間設(shè)定 和周期時(shí)間上存在差異,因此實(shí)際總線帶寬差值將不同于理論的4:1 系數(shù)。內(nèi)部總線支持多總線傳送協(xié)議,其可能不反映(reflect)外部 處理器總線使用的相同的協(xié)議。例如,DDR外部處理器協(xié)議使用的版 本和設(shè)定可能基本上不同于內(nèi)部總線協(xié)議使用的那些。一種增大將數(shù)據(jù)寫入非易失性存儲(chǔ)器(例如,閃存)或者從非易 失性存儲(chǔ)器讀取數(shù)據(jù)的數(shù)據(jù)傳送速率(通常按兆字節(jié)/秒計(jì)量)的方式 是同時(shí)讀取或?qū)懭霐?shù)據(jù)到多個(gè)存儲(chǔ)器組件。利用該并行數(shù)據(jù)傳送方 案,能夠使用多個(gè)不同的存儲(chǔ)器組件盡可能有效率地傳送大塊的數(shù) 據(jù)。
能夠使計(jì)算設(shè)備的操作系統(tǒng)容易具有盡可能小的讀寫數(shù)據(jù)單元 大小將是有利的。利用較小的最小單元大小(即,數(shù)據(jù)扇區(qū))避免了 在從存儲(chǔ)器讀取較小片信息或?qū)⑤^小片信息寫到存儲(chǔ)器時(shí)(例如,在 用許多小片信息編碼文件目錄信息時(shí))不必要地浪費(fèi)存儲(chǔ)器存儲(chǔ)空 間。此外,利用較小單元的數(shù)據(jù)還避免了可能用壞給定記錄介質(zhì)的不 必要的寫入操作。
不幸的是,實(shí)現(xiàn)更快的數(shù)據(jù)傳送速率和更小的扇區(qū)大小這兩個(gè)目 標(biāo)通常是矛盾的。期望一種增大數(shù)據(jù)傳送速率而同時(shí)維持更小單元的
數(shù)據(jù)大小的裝置。另外,期望用最小的功率損耗和在MCP組件之間的 最小所需互連來實(shí)現(xiàn)該裝置。
如圖9所示,AMS控制器138包括多個(gè)非易失性組件接口144 (例 如,閃存接口)。這些多個(gè)接口便于同時(shí)從多個(gè)非易失性組件讀取和 寫入到多個(gè)非易失性組件,由此增大到單個(gè)非易失性設(shè)備的多個(gè)組件 的讀取和寫入數(shù)據(jù)傳送速率。不幸的是,在存儲(chǔ)更小塊的數(shù)據(jù)時(shí)這引
入了固有的缺點(diǎn)。為了克服該缺點(diǎn),本發(fā)明的獨(dú)立的非易失性閃存接 口 144包括在單個(gè)讀取或?qū)懭氩僮髌陂g啟用(enable )獨(dú)立閃存組件中 的每一個(gè)的功能部件。能夠?qū)崿F(xiàn)達(dá)到啟用或禁用(disable)組件的該 目標(biāo)的多個(gè)技術(shù)。第 一種技術(shù)是為每個(gè)非易失性組件使用獨(dú)立的啟用 信號(hào)。該技術(shù)具有通過在給定的讀取或?qū)懭氩僮髌陂g禁用不用的設(shè)備 來使功率損耗最小化的優(yōu)點(diǎn)。第二種技術(shù)是修改在給定的寫入操作期 間-使用的地址。
如本領(lǐng)域中眾所周知的,非易失性存儲(chǔ)設(shè)備(例如閃存)具有某 些已知是有缺陷的且因此不能用于存儲(chǔ)信息的地址位置。對(duì)于第二種 技術(shù),將不希望被寫入的獨(dú)立組件的地址位置設(shè)置為已知有缺陷的位置。過量的寫入操作不會(huì)破壞有效的存儲(chǔ)信息,因?yàn)樵摰刂肺恢靡呀?jīng) 被標(biāo)記為有缺陷的,并且決不會(huì)從該位置檢索信息。這還不需要附加 的到組件的連接,因?yàn)閷?duì)于正常操作已經(jīng)要求地址信息被呈現(xiàn)于組 件。因此在控制器和非易失性存儲(chǔ)器組件之間沒有連接的附加成本的 情況下達(dá)到寫入組件的子集的目標(biāo)。
用于AMS的附加的接口
如圖l中所示出的,在本發(fā)明的一個(gè)實(shí)施例中,AMS MCP集成 電路被設(shè)計(jì)成包括要與附加的DRAM和閃速存儲(chǔ)器組件耦接的擴(kuò)展 閃存總線26和擴(kuò)展DRAM總線24。如本領(lǐng)域技術(shù)人員會(huì)理解的,附加 的DRAM和閃速存儲(chǔ)器組件應(yīng)該被配置為和已有的驅(qū)動(dòng)器軟件一起 運(yùn)行,該已有的驅(qū)動(dòng)器軟件存在于已有的AMS文件系統(tǒng)分區(qū)50內(nèi)的嵌 入式SRAM/DRAM/閃存可安裝文件系統(tǒng)54中(參見圖3)。另外,增 加的DRAM或閃速存儲(chǔ)器組件將需要更新已有的AMS存儲(chǔ)器組件驅(qū) 動(dòng)器,使得能夠在安裝時(shí)避免不可預(yù)知的錯(cuò)誤。
此外,在本發(fā)明的一個(gè)實(shí)施例中,AMSMCP集成電路^/沒計(jì)成 包括擴(kuò)展總線接口28 (在圖l中示出),由此控制器能夠通過擴(kuò)展總 線與次級(jí)(secondary)計(jì)算設(shè)備通信。僅僅為了方便和清楚起見,該 擴(kuò)展總線接口28被示出為與擴(kuò)展DRAM總線24和擴(kuò)展閃存總線26無 關(guān),然而,應(yīng)當(dāng)認(rèn)識(shí)到能夠可配置地將擴(kuò)展總線接口28并入擴(kuò)展 DRAM總線24或者擴(kuò)展閃存總線26中,以減少AMS控制器管腳數(shù)。擴(kuò) 展總線接口 28有效地允許AMS控制器同時(shí)通信和傳送所存儲(chǔ)的數(shù)據(jù) 到多個(gè)外部計(jì)算設(shè)備。
如上所述,還應(yīng)當(dāng)理解,本實(shí)施例的SRAM14、 DRAM 16和閃 存18存儲(chǔ)器組件(在圖1中示出)僅僅是能夠在AMS內(nèi)運(yùn)行的存儲(chǔ) 器類型的實(shí)例,而本發(fā)明不限于本實(shí)施例中使用的精確的存儲(chǔ)器類 型。存在提供與上述存儲(chǔ)器類型類似的特征和功能的可替代技術(shù)。例 如SRAM 14的實(shí)現(xiàn)能夠用 一種偽SRAM ( PSRAM)替換;DRAM 16的實(shí)現(xiàn)能夠用一種零電容器RAM (ZRAM)或者雙晶體管RAM(TTRAM)替換;并且閃存18的實(shí)現(xiàn)能夠被具體地指定為與非 (NAND)或者或非(NOR)型閃存,或者能夠用一種相變存儲(chǔ)器 (PCM、 PRAM)來替換。顯而易見,上面列出的可替代的存儲(chǔ)器組
件類型不是窮舉的,并且可以進(jìn)行許多其它改變,而同時(shí)還允許本發(fā)
明如上所述的工作。
權(quán)利要求
1、一種用于改進(jìn)外部計(jì)算設(shè)備的性能的自適應(yīng)存儲(chǔ)系統(tǒng),其中所述自適應(yīng)存儲(chǔ)系統(tǒng)包括單個(gè)控制器、第一存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、內(nèi)部總線系統(tǒng)以及外部總線接口,所述單個(gè)控制器被配置為使用所述內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信;使用所述外部總線接口與所述外部計(jì)算設(shè)備通信;以及將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間,并且在第一存儲(chǔ)器類型內(nèi)的所述存儲(chǔ)空間被確定為滿的之后,將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第二存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間。
2、 根據(jù)權(quán)利要求l的自適應(yīng)存儲(chǔ)系統(tǒng),其中笫一存儲(chǔ)器類型是靜 態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存儲(chǔ) 器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
3、 根據(jù)權(quán)利要求l的自適應(yīng)存儲(chǔ)系統(tǒng),其中第一存儲(chǔ)器類型和第 二存儲(chǔ)器類型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是非易 失性存儲(chǔ)器類型;并且其中所述單個(gè)控制器還被配置為使第一和第二存儲(chǔ)器類型的沒有被寫入的部分掉電,以使功耗最小化。
4、 根據(jù)權(quán)利要求2的自適應(yīng)存儲(chǔ)系統(tǒng),其中所述單個(gè)控制器還被 配置為將高速緩存數(shù)據(jù)從所述SRAM或者所述閃速存儲(chǔ)器傳送到所述 DRAM;其中如果所述高速緩存數(shù)據(jù)存在于所述SRAM內(nèi),則將所述高速 緩存數(shù)據(jù)從所述SRAM傳送到所述DRAM;以及其中如果所述高速緩存數(shù)據(jù)不存在于所述SRAM內(nèi),而存在于所述閃速存儲(chǔ)器內(nèi),則將所述高速緩存數(shù)據(jù)從所述閃速存儲(chǔ)器傳送到所述DRAM。
5、 根據(jù)權(quán)利要求2的自適應(yīng)存儲(chǔ)系統(tǒng),其中所述單個(gè)控制器還被 配置為根據(jù)數(shù)據(jù)先行方案將來自所述閃速存儲(chǔ)器的數(shù)據(jù)高速緩存到所 述SRAM和DRAM。
6、 一種用于控制自適應(yīng)存儲(chǔ)系統(tǒng)的方法,其中所述自適應(yīng)存儲(chǔ) 系統(tǒng)包括單個(gè)控制器、第一存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ) 器類型、內(nèi)部總線系統(tǒng)以及外部總線接口,所述方法包含以下步驟使用所述內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信; 使用所述外部總線接口與外部計(jì)算設(shè)備通信;以及 將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間, 并且在第一存儲(chǔ)器類型內(nèi)的所述存儲(chǔ)空間被確定為滿的之后,在第二存儲(chǔ)器類型的存儲(chǔ)空間內(nèi)分配高速緩存數(shù)據(jù)存儲(chǔ)指派。
7、 根據(jù)權(quán)利要求6的方法,其中第一存儲(chǔ)器類型是靜態(tài)隨機(jī)存取 存儲(chǔ)器(SRAM ),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM ), 并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
8、 根據(jù)權(quán)利要求6的方法,其中第一存儲(chǔ)器類型和第二存儲(chǔ)器類 型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是非易失性存儲(chǔ)器 類型,并且其中所述方法還包含以下步驟使第一和第二存儲(chǔ)器類型的沒有被寫入的部分掉電,以使功耗最小化。
9、 根據(jù)權(quán)利要求7的方法,其中所述方法還包含以下步驟 將高速緩存數(shù)據(jù)從所述SRAM或者所述閃速存儲(chǔ)器傳送到所述DRAM;其中如果所述高速緩存數(shù)據(jù)存在于所述SRAM內(nèi),則將所述高速 緩存數(shù)據(jù)從所述SRAM傳送到所述DRAM;以及其中如果所述高速緩存數(shù)據(jù)不存在于所述SRAM內(nèi),而存在于所 述閃速存儲(chǔ)器內(nèi),則將所述高速緩存數(shù)據(jù)從所述閃速存儲(chǔ)器傳送到所 述DRAM。
10、 根據(jù)權(quán)利要求7的方法,還包含以下步驟 根據(jù)數(shù)據(jù)先行方案將來自所述閃速存儲(chǔ)器的數(shù)據(jù)高速緩存到所述SRAM和DRAM。
11、 一種計(jì)算機(jī)可讀介質(zhì),包括用于控制自適應(yīng)存儲(chǔ)系統(tǒng)的單個(gè) 控制器的操作的計(jì)算機(jī)可執(zhí)行程序,所述自適應(yīng)存儲(chǔ)系統(tǒng)還包括第一 存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、內(nèi)部總線系統(tǒng)以及 外部總線接口 ,所述計(jì)算機(jī)可執(zhí)行程序在被執(zhí)行時(shí)使得所述單個(gè)控制 器執(zhí)行包括下列步驟的方法使用所述內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信; 使用所述外部總線接口與外部計(jì)算設(shè)備通信;以及 將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間, 并且在第一存儲(chǔ)器類型內(nèi)的所述存儲(chǔ)空間被確定為滿的之后,將高速 緩存數(shù)據(jù)存儲(chǔ)指派分配到第二存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間。
12、 根據(jù)權(quán)利要求il的計(jì)算機(jī)可讀介質(zhì),其中第一存儲(chǔ)器類型是靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存 儲(chǔ)器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
13、 根據(jù)權(quán)利要求ll的計(jì)算機(jī)可讀介質(zhì),其中第一存儲(chǔ)器類型和 第二存儲(chǔ)器類型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是非易失性存儲(chǔ)器類型,并且其中由所述計(jì)算機(jī)可執(zhí)行程序執(zhí)行的所述方法還包含以下步驟使第一和第二存儲(chǔ)器類型的沒有被寫入的部分掉電,以使功耗最小化。
14、 根據(jù)權(quán)利要求12的計(jì)算機(jī)可讀介質(zhì),其中由所述計(jì)算機(jī)可執(zhí) 行程序執(zhí)行的所述方法還包含以下步驟將數(shù)據(jù)從所述SRAM或者所述閃速存儲(chǔ)器高速緩存到所述 DRAM;其中如果所述高速緩存數(shù)據(jù)存在于所述SRAM內(nèi),則將所述高速 緩存數(shù)據(jù)從所述SRAM傳送到所述DRAM;以及其中如果所述高速緩存數(shù)據(jù)不存在于所述SRAM內(nèi),而存在于所 述閃速存儲(chǔ)器內(nèi),則將所述高速緩存數(shù)據(jù)從所述閃速存儲(chǔ)器傳送到所 述DRAM。
15、 根據(jù)權(quán)利要求12的計(jì)算機(jī)可讀介質(zhì),其中由所述計(jì)算機(jī)可執(zhí) 行程序執(zhí)行的所述方法還包含以下步驟根據(jù)數(shù)椐先行方案將來自所述閃速存儲(chǔ)器的高速緩存數(shù)據(jù)傳送 到所述SRAM和DRAM。
16、 一種計(jì)算機(jī)可讀介質(zhì),包括用于實(shí)現(xiàn)自適應(yīng)存儲(chǔ)系統(tǒng)的單個(gè) 控制器的數(shù)據(jù)先行高速緩存方案的計(jì)算機(jī)可執(zhí)行程序,所述自適應(yīng)存 儲(chǔ)系統(tǒng)還包括第一存儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、 內(nèi)部總線系統(tǒng)以及外部總線接口 ,所述計(jì)算機(jī)可執(zhí)行程序在被執(zhí)行時(shí) 使得所述單個(gè)控制器執(zhí)行包括下列步驟的方法從運(yùn)行在外部計(jì)算設(shè)備上的應(yīng)用獲得扇區(qū)數(shù)據(jù)的序列; 將所獲得的扇區(qū)數(shù)據(jù)的序列與多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列進(jìn)行比較以確定是否存在高概率匹配;其中如果在所獲得的扇區(qū)數(shù)據(jù)的序列與所述多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之間確定了高概率匹配,則用所確定的高概率匹配來至少高速緩存第一存儲(chǔ)器類型;以及其中如果在所獲得的扇區(qū)數(shù)據(jù)的序列與所述多個(gè)先前存儲(chǔ)的扇 區(qū)數(shù)據(jù)的序列之間沒有確定高概率匹配,則確定是否能夠從所述多個(gè) 先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列中選出最可能的扇區(qū)數(shù)據(jù)的序列。
17、 根據(jù)權(quán)利要求16的計(jì)算機(jī)可讀介質(zhì),其中第一存儲(chǔ)器類型是 靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存 儲(chǔ)器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
18、 根據(jù)權(quán)利要求16的計(jì)算機(jī)可讀介質(zhì),其中,如果能夠選出最 可能的扇區(qū)數(shù)據(jù)的序列,則將所選的最可能的扇區(qū)數(shù)據(jù)的序列高速緩 存到第一存儲(chǔ)器類型或者第二存儲(chǔ)器類型中;以及如果不能選出最可能的扇區(qū)數(shù)據(jù)的序列,則啟動(dòng)高速緩存數(shù)據(jù)訓(xùn) 練序列。
19、 根據(jù)權(quán)利要求18的計(jì)算機(jī)可讀介質(zhì),其中所述高速緩存數(shù)據(jù) 訓(xùn)練序列在第一存儲(chǔ)器類型或者第二存儲(chǔ)器類型內(nèi)存儲(chǔ)所獲得的扇 區(qū)數(shù)據(jù)的序列,并且在第三存儲(chǔ)器類型中存儲(chǔ)所述序列的非易失性的 拷貝。
20、 根據(jù)權(quán)利要求19的計(jì)算機(jī)可讀介質(zhì),其中第一存儲(chǔ)器類型是 靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存 儲(chǔ)器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
21、 一種用于實(shí)現(xiàn)自適應(yīng)存儲(chǔ)系統(tǒng)的單個(gè)控制器的數(shù)據(jù)先行高速 緩存方案的方法,其中所述自適應(yīng)存儲(chǔ)系統(tǒng)包括單個(gè)控制器、第一存 儲(chǔ)器類型、第二存儲(chǔ)器類型、第三存儲(chǔ)器類型、內(nèi)部總線系統(tǒng)以及外 部總線接口,所述方法包含以下步驟從運(yùn)行在外部計(jì)算設(shè)備上的應(yīng)用獲得扇區(qū)數(shù)據(jù)的序列;將所獲得的扇區(qū)數(shù)據(jù)的序列與多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列進(jìn)行比較以確定是否存在高概率匹配;其中如果在所荻得的扇區(qū)數(shù)據(jù)的序列與所述多個(gè)先前存儲(chǔ)的扇 區(qū)數(shù)據(jù)的序列之間確定了高概率匹配,則將所確定的高概率匹配數(shù)據(jù) 至少高速緩存到第一存儲(chǔ)器類型;以及其中如果在所獲得的扇區(qū)數(shù)據(jù)的序列與所述多個(gè)先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列之間沒有確定高概率匹配,則確定是否能夠從所述多個(gè) 先前存儲(chǔ)的扇區(qū)數(shù)據(jù)的序列中選出最可能的扇區(qū)數(shù)據(jù)的序列。
22、 根據(jù)權(quán)利要求21的方法,其中第一存儲(chǔ)器類型是靜態(tài)隨機(jī)存 取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
23、 根據(jù)權(quán)利要求21的方法,其中如果能夠選出最可能的扇區(qū)數(shù) 據(jù)的序列,則將所選的最可能的扇區(qū)數(shù)據(jù)的序列高速緩存到第一存儲(chǔ) 器類型或第二存儲(chǔ)器類型中;以及如果不能選出最可能的扇區(qū)數(shù)據(jù)的序列,則啟動(dòng)高速緩存數(shù)據(jù)訓(xùn) 練序列。
24、 根據(jù)權(quán)利要求23的方法,其中所述高速緩存數(shù)據(jù)訓(xùn)練序列在 笫一存儲(chǔ)器類型或者第二存儲(chǔ)器類型內(nèi)存儲(chǔ)所獲得的扇區(qū)數(shù)據(jù)的序 列,并且在第三存儲(chǔ)器類型中存儲(chǔ)所述序列的非易失性的拷貝。
25、 根據(jù)權(quán)利要求24的方法,其中第一存儲(chǔ)器類型是靜態(tài)隨機(jī)存 取存儲(chǔ)器(SRAM),第二存儲(chǔ)器類型是動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM),并且第三存儲(chǔ)器類型是閃速存儲(chǔ)器。
26、 根據(jù)權(quán)利要求l的自適應(yīng)存儲(chǔ)系統(tǒng),其中第一存儲(chǔ)器類型和 第二存儲(chǔ)器類型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是非易失性存儲(chǔ)器類型;并且其中所述單個(gè)控制器還被配置為包括至少一個(gè)擴(kuò)展存儲(chǔ)器總線,用其與外部存儲(chǔ)器通信以擴(kuò)展可用存 儲(chǔ)器的容量。
27、 根據(jù)權(quán)利要求l的自適應(yīng)存儲(chǔ)系統(tǒng),其中第一存儲(chǔ)器類型和 第二存儲(chǔ)器類型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是非易失性存儲(chǔ)器類型;并且其中所述單個(gè)控制器還被配置為包括 至少一個(gè)擴(kuò)展存儲(chǔ)器接口,用其與次級(jí)外部計(jì)算設(shè)備通信。
28、 根據(jù)權(quán)利要求l的自適應(yīng)存儲(chǔ)系統(tǒng),其中笫一存儲(chǔ)器類型和 第二存儲(chǔ)器類型是不同的易失性存儲(chǔ)器類型而第三存儲(chǔ)器類型是包含多個(gè)組件的非易失性存儲(chǔ)器類型;并且其中所述單個(gè)控制器還被配置為選擇性地啟用所述多個(gè)組件中的一個(gè)或多個(gè);以及 選擇性地禁用所述多個(gè)組件中的 一個(gè)或多個(gè)。
29、 根據(jù)權(quán)利要求28的自適應(yīng)存儲(chǔ)系統(tǒng),其中所述單個(gè)控制器通 過將啟用信號(hào)發(fā)送給那些要被啟用的組件來選擇性地啟用所述多個(gè)組件中的一個(gè)或多個(gè)。
30、 根據(jù)權(quán)利要求28的自適應(yīng)存儲(chǔ)系統(tǒng),其中所述單個(gè)控制器通 過將要被禁用的那些組件的地址位置設(shè)置為已知的有缺陷的地址位 置來選擇性地禁用所述多個(gè)組件中的一個(gè)或多個(gè)。
全文摘要
本發(fā)明提供了一種用于改進(jìn)外部計(jì)算設(shè)備的性能的自適應(yīng)存儲(chǔ)系統(tǒng)。該自適應(yīng)存儲(chǔ)系統(tǒng)包括單個(gè)控制器、第一存儲(chǔ)器類型(例如,靜態(tài)隨機(jī)存取存儲(chǔ)器或SRAM)、第二存儲(chǔ)器類型(例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器或DRAM)、第三存儲(chǔ)器類型(例如,閃存)、內(nèi)部總線系統(tǒng)以及外部總線接口。該單個(gè)控制器被配置為(i)使用該內(nèi)部總線系統(tǒng)與全部三個(gè)存儲(chǔ)器類型通信;(ii)使用該外部總線接口與外部計(jì)算設(shè)備通信;以及(iii)將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第一存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間,并且在第一存儲(chǔ)器類型內(nèi)的該存儲(chǔ)空間被確定為滿的之后,將高速緩存數(shù)據(jù)存儲(chǔ)指派分配到第二存儲(chǔ)器類型內(nèi)的存儲(chǔ)空間。
文檔編號(hào)G06F13/16GK101611387SQ200880002127
公開日2009年12月23日 申請(qǐng)日期2008年1月10日 優(yōu)先權(quán)日2007年1月10日
發(fā)明者L·C·費(fèi)舍爾, M·S·艾哈邁德尼亞, S·V·R·黑爾里格爾 申請(qǐng)人:移動(dòng)半導(dǎo)體公司