專利名稱:用于閃速存儲器的交錯策略的制作方法
技術(shù)領(lǐng)域:
各種實現(xiàn)總的來說可涉及訪問存儲器,并且特定的實現(xiàn)可涉及用 于訪問存儲器的交錯策略(interleaving policy)的方法和系統(tǒng)。
背景技術(shù):
隨著計算裝置在性能和特點方面的增強(qiáng),對數(shù)據(jù)存儲裝置的需要 不斷增加。例如,數(shù)據(jù)存儲裝置可用于存儲可由處理器執(zhí)行的程序指 令(即,代碼)。數(shù)據(jù)存儲裝置還用于存儲其它類型的數(shù)據(jù),包括作 為示例的音頻、圖像和/或文本信息。最近,具有能夠存儲實質(zhì)數(shù)據(jù)內(nèi) 容(例如,歌曲、音樂視頻等)的數(shù)據(jù)存儲裝置的系統(tǒng)在便攜式終端 中可廣泛使用。
這種便攜式裝置包括數(shù)據(jù)存儲器,所述數(shù)據(jù)存儲器具有較小的形 狀因子并且能夠在諸如電池的便攜式電源下操作。某些便攜式終端中 的數(shù)據(jù)存儲裝置可提供非易失性存儲器,所述非易失性存儲器能夠在 從電源斷開時保持?jǐn)?shù)據(jù)。便攜式裝置使用各種非易失性數(shù)據(jù)存儲裝置, 諸如硬盤驅(qū)動器、EEPROM (電可擦可編程序只讀存儲器)和閃速存 儲器。
閃速存儲器已成為廣泛使用類型的半導(dǎo)體存儲器。閃速存儲器可 例如提供便攜式電子裝置以及消費類應(yīng)用設(shè)備中的非易失性存儲器。
存在NOR閃存和NAND閃存這兩種類型的閃速存儲器。通常, NOR閃速可在某些方面不同于NAND閃存。例如,NOR閃存典型地
8提供就地執(zhí)行代碼的性能,并且可隨機(jī)訪問(即,如同RAM)。例 如,NOR閃存可在便攜式電子裝置、蜂窩式電話和PDA中提供代碼 存儲和直接執(zhí)行。
比較起來,NAND閃速可典型地更加快速地擦除數(shù)據(jù),以突發(fā)組 (例如,512字節(jié)的組段)來訪問數(shù)據(jù),并且可提供使用期限比相比 較的NOR閃存更長的擦除次數(shù)。NAND閃存通常提供每比特較低成 本的非易失性存儲器作為用于消費類裝置的高密度文件存儲介質(zhì),所 述消費類裝置諸如作為示例的數(shù)碼相機(jī)和MP3播放器。NAND閃存 還可用于諸如相機(jī)蜂窩式電話中的數(shù)據(jù)存儲器的應(yīng)用設(shè)備中。
在某些數(shù)據(jù)存儲系統(tǒng)中,可在多個存儲器位置間交錯進(jìn)行存儲器 訪問。在RAID-0類型的系統(tǒng)中,例如,可將數(shù)據(jù)分成N塊,將它們 同時寫入N個存儲器位置或者同時從N個存儲器位置讀取它們。交錯 系統(tǒng)可同時將2k的塊寫入4個不同的存儲器位置中的每一個,而不必 等待系統(tǒng)將8k寫入一個存儲器位置。
發(fā)明內(nèi)容
在各種實現(xiàn)中,產(chǎn)品以及相關(guān)方法和系統(tǒng)涉及與選擇寫入交錯策 略無關(guān)地來選擇讀取交錯策略。在各種實現(xiàn)中,所述選擇在操作期間 可以是靜態(tài)或動態(tài)的。在動態(tài)選擇讀取交錯策略和寫入交錯策略的實 現(xiàn)中,所述選擇可基于各種操作條件,諸如溫度、電源、電池電壓和 操作模式。操作模式的示例可包括(1)當(dāng)連接到外部電源時對閃速 存儲器進(jìn)行讀取或?qū)懭耄?2)當(dāng)由便攜式電源(例如,電池)供電時 從閃速存儲器讀取,以及(3)當(dāng)由便攜式電源供電時向閃速存儲器寫 入。
某些實現(xiàn)可提供一個或多個優(yōu)點。例如,對于便攜式電源應(yīng)用設(shè) 備,可延長電池壽命??瑟毩⒌卦O(shè)置或選擇讀取和寫入交錯策略以實 現(xiàn)所期望的性能,從而在可接受的電功率消耗(例如,峰值電流)特 性下最小化存儲器訪問時間??筛鶕?jù)各種操作條件調(diào)整對讀取和寫入 交錯策略的選擇。某些實現(xiàn)可例如基于操作條件在減少訪問時間和最小化峰值電流之間動態(tài)選擇,所述操作條件諸如溫度信息、電源可用 性、電池電壓和/或操作模式。
在以下的附圖和說明書中闡述本發(fā)明的一個或多個實現(xiàn)的細(xì)節(jié)。 通過說明書和附圖以及權(quán)利要求,本發(fā)明的其它特點、目的和優(yōu)點將 變得清楚。
圖l是示出包括閃速存儲器的系統(tǒng)的示例的框圖。
圖2是示出在圖l的系統(tǒng)中選擇讀取和寫入交錯策略的方法的流程圖。
圖3是示出當(dāng)請求存儲器訪問操作時應(yīng)用選擇的交錯策略的方法 的流程圖。
相同的標(biāo)號在各個附圖中指示相同的部件。
具體實施例方式
圖1示出能夠使用閃速存儲器來存儲和檢取數(shù)據(jù)的系統(tǒng)100的示 例。例如,系統(tǒng)100可以是手持便攜式裝置,諸如MP3播放器、蜂窩 式電話、PDA(便攜式數(shù)字助理)、全球定位系統(tǒng)、便攜式處理裝置、 便攜式音頻/視頻記錄裝置、便攜式視頻播放器等。系統(tǒng)100能夠使用 和/并選擇適當(dāng)?shù)挠糜谧x取操作的交錯策略以及適當(dāng)?shù)挠糜趯懭氩僮?的交錯策略。在某些實現(xiàn)中,所選擇的讀取交錯策略可不同于所選擇 的讀取交錯策略。在某些實現(xiàn)中,可動態(tài)地和/或彼此獨立地選擇讀取 和寫入交錯策略。
所述系統(tǒng)100包括微處理器102、存儲器控制器104以及一個 或多個閃速存儲器106a、 106b、 106c和106d。微處理器102可在選 擇讀取或?qū)懭虢诲e策略之后執(zhí)行讀取或?qū)懭氩僮?。例如,微處理?02 可通過將選擇的讀取交錯策略和讀取命令發(fā)送到存儲器控制器104來 發(fā)起從閃速存儲器106a、 106b、 106c和106d的讀取。存儲器控制器 104隨后根據(jù)選擇的讀取交錯策略來執(zhí)行讀取命令。微處理器102可通過將選擇的寫入交錯策略和寫入命令發(fā)送到存儲器控制器104來發(fā) 起向閃速存儲器的寫入。存儲器控制器104隨后根據(jù)選擇的寫入交錯 策略來執(zhí)行寫入命令??蓪⑾到y(tǒng)100配置為選擇適于當(dāng)前操作條件的 交錯策略,所述操作條件諸如作為示例的電源、電池電壓、溫度和/ 或操作模式。
所選擇的讀取和/或?qū)懭虢诲e策略確定對閃速存儲器106a、 106b、 106c和106d進(jìn)行同時訪問的數(shù)量。通過使用交錯,存儲器控制器104 可同時讀取或?qū)懭朐诙鄠€存儲裝置間交錯的數(shù)據(jù)??啥x交錯策略以 選擇適于操作條件的交錯比率。例如,4:1的交錯比率可相應(yīng)于系統(tǒng)
100在單個操作中將數(shù)據(jù)的四個字寫入存儲器,即,將每個字同時寫 入閃速存儲器106a-106d中的不同位置。2:1的交錯比率可相應(yīng)于系統(tǒng) 100使用兩個操作將數(shù)據(jù)的四個字寫入存儲器,即,將兩個字同時寫 入。1:1的交錯比率可相應(yīng)于系統(tǒng)100使用四個操作將數(shù)據(jù)的四個字 寫入存儲器,即, 一次寫入一個字。
較高的交錯比率可花費較少的時間對閃速存儲器進(jìn)行讀取或?qū)?入,但是與存儲器操作相關(guān)的峰值電流會較高。較低的交錯比率會花 費較長的時間對閃速存儲器進(jìn)行讀取或?qū)懭?,但是與存儲器操作相關(guān) 的峰值電流會較低。在某些操作條件中,可將系統(tǒng)100配置為限制或 最小化峰值電流或最小存儲器訪問時間。例如,如果電池電壓下降到 閾值以下,則可將系統(tǒng)100配置為選擇較低的用于讀取操作的交錯比 率。
當(dāng)存儲器控制器104接收到讀取命令或?qū)懭朊顣r,它將根據(jù)由 微處理器選擇的讀取或?qū)懭虢诲e策略來執(zhí)行所述命令。在某些實現(xiàn)中, 微處理器102和存儲器控制器104可以是分離的裝置(例如,獨立的 集成電路)。在其它實現(xiàn)中,可將微處理器102和存儲器控制器104 集成為單個裝置(例如,ASIC微控制器)。在這一示例中,存儲器 控制器104包括介質(zhì)接口 108。介質(zhì)接口 108包括4個寄存器110a、 110b、 110c和110d。所述4個寄存器110a-110d中的每一個可臨時存 儲將分別發(fā)送到閃速存儲器106a-106d的數(shù)據(jù)的字(或字節(jié)、長字、四倍長字等)或分別從閃速存儲器106a-106d接收的數(shù)據(jù)的字(或字
節(jié)、長字、四倍長字等)。
在某一示例中,系統(tǒng)100可如下選擇和使用用于讀取和寫入命令
的交錯策略。微處理器102可發(fā)起繼之以讀取命令的寫入命令。所述
寫入命令可涉及將數(shù)據(jù)的四個字寫入四個閃速存儲器106a、 106b、
106c、 106d中的四個位置,讀取命令可涉及從四個閃速存儲器106a、
106b、 106c、 106d中的四個位置讀取數(shù)據(jù)的四個字。微處理器102首 先將寫入命令和選擇的寫入交錯策略發(fā)送到存儲器控制器104。在所
述示例中,所選擇的寫入交錯策略可以是4:1。為了完成寫入命令的 執(zhí)行,存儲器控制器104隨后可同時將存儲在寄存器110a、 110b、 110c、 110d中的數(shù)據(jù)寫入閃速存儲器106a、 106b、 106c、 106d。
在寫入命令完成之后,微處理器102可將讀取命令和選擇的讀取 交錯策略發(fā)送到存儲器控制器104。在所述示例中,所選擇的讀取交 錯策略可以是1:1。為了完成讀取命令的執(zhí)行,存儲器控制器104可 使用四個存儲器操作,每次一個地從閃速存儲器106a、 106b、 106c、 106d讀取存儲在寄存器110a、 110b、 110c、 110d中的數(shù)據(jù)。例如, 存儲器控制器104可將存儲在閃速存儲器106a中的數(shù)據(jù)傳送到寄存器 110a。然后,存儲器控制器104可將存儲在閃速存儲器106b中的數(shù)據(jù) 傳送到寄存器110b。其后,存儲器控制器104可將存儲在閃速存儲器 106c中的數(shù)據(jù)傳送到寄存器110c。最后,存儲器控制器104可將存儲 在閃速存儲器106d中的數(shù)據(jù)傳送到寄存器110d。
在所述示例中,每個閃速存儲器106a、 106b、 106c、 106d包括 四個閃速存儲器管芯、控制器和寄存器112。寄存器112可存儲每個 閃速存儲器106a-106d的最小工作電壓。每個閃速存儲器106a-106d 的最小工作電壓會影響對交錯策略的選擇。例如,如果電池電壓在寫 入操作期間低于在每個閃速存儲器106a-106d的最小工作電壓之上的 閾值余量,則微處理器可選擇具有較高交錯比率的寫入交錯策略???將寫入操作的閾值余量信息存儲在與寫入交錯策略130相關(guān)的NVM 124中,可將讀取操作的閾值余量信息存儲在與讀取策略130相關(guān)的
12NVM 124中。
在所示的示例中,最小工作電壓可以是3.1伏特,對于寫入交錯 策略,可以將電壓余量設(shè)置在0.5伏特(將閾值置于3.6伏特),并且 對于讀取交錯策略,可以將電壓余量設(shè)置在0.2伏特(將閾值置于3.3 伏特)。當(dāng)電池電壓下降到3.6伏特以下時,微處理器102可將寫入 交錯比率從2:1減少到1:1。當(dāng)電池電壓下降到3.3伏特以下時,微處 理器102可將讀取交錯比率從4:1減少到2:1。這些值僅是示例性的, 并且不受限于電池電壓的范圍。在某些實現(xiàn)中,可將滯后帶應(yīng)用于電 壓閾值。
可通過外部電源輸入114或通過電池116來提供系統(tǒng)100的電功 率。外部電源輸入114和電池116將電源傳遞到調(diào)壓器118。調(diào)壓器 118可包括線性調(diào)壓器、開關(guān)模式的DC到DC變換器和/或低漏失調(diào) 節(jié)器(未示出),調(diào)壓器118包括電源管理器120,其存儲系統(tǒng)100 的電狀態(tài)122的列表。例如,監(jiān)視的狀態(tài)信息可包括外部電源輸入 114是否連接到電源;電池是否存在;以及電池電壓信息。在某些實 現(xiàn)中,微處理器102可根據(jù)電狀態(tài)122選擇交錯策略。例如,可將微 處理器102配置為當(dāng)系統(tǒng)100連接到外部電源時,選擇具有最大交錯 比率的交錯策略以減少存儲器訪問時間,由此允許相對較高的峰值電 流。
微處理器102可與非易失性存儲器124通信。非易失性存儲器 (NVM) 124存儲測試代碼126、控制代碼128和交錯策略130,所 述交錯策略130包括讀取交錯策略和寫入交錯策略。微處理器102執(zhí) 行測試代碼126以檢查系統(tǒng)100中的各種條件。例如,測試代碼126 可包括檢查電源、電池電壓、溫度和/或操作模式的代碼。微處理器102 隨后執(zhí)行控制代碼128??刂拼a128可包括用于選擇讀取交錯策略 和寫入交錯策略的規(guī)則。在選擇之后,微處理器102可將選擇的交錯 策略存儲在NVM 124中。交錯策略信息130可包括當(dāng)前選擇的讀取 交錯策略和當(dāng)前選擇的寫入交錯策略。
微處理器102可通過數(shù)據(jù)接口 130將數(shù)據(jù)發(fā)送到外部裝置,或通過數(shù)據(jù)接口 132接收數(shù)據(jù)。可將在數(shù)據(jù)接口 132和微處理器102之間 傳送的數(shù)據(jù)臨時存儲在緩沖器134中。
數(shù)據(jù)接口 132的操作模式可影響對交錯策略的選擇。例如,如果 數(shù)據(jù)接口 132正在從外部源接收數(shù)據(jù),則微處理器102可選擇具有較 高交錯比率的讀取交錯策略。如果系統(tǒng)IOO正用作接收閃速存儲器的 數(shù)據(jù)的便攜式裝置,則微處理器102可選擇具有較低交錯比率的寫入 交錯策略。
系統(tǒng)IOO還可監(jiān)視當(dāng)前操作條件。例如,系統(tǒng)100包括用于測量 系統(tǒng)100中的溫度的熱傳感器136。例如,如果系統(tǒng)100的溫度高于 選擇的閾值溫度,則微處理器102可選擇較低的交錯策略。
系統(tǒng)IOO還包括用戶接口 138、音頻輸出裝置140和顯示器142。 用戶可使用用戶接口 138向系統(tǒng)IOO提供指令,所述用戶接口 138諸 如作為示例的觸摸板、鍵盤或蘋果的點擊輪盤(TM)輸入(可由蘋 果計算機(jī)公司在市場上提供)。用戶選擇的交錯策略可至少部分地基 于用戶輸入。例如,用戶可選擇電池節(jié)約模式,其被設(shè)計用來最大化 電池壽命。例如,增加電池壽命會要求較低的用于讀取和/或?qū)懭虢诲e 策略的交錯比率。在另一示例中,用戶可選擇最小延遲模式,其被設(shè) 計用來最小化用于存儲器訪問操作的時間。例如,減少存儲器訪問時 間會要求較高的用于寫入交錯策略的交錯比率。
在某些實現(xiàn)中,可以將這種用戶選擇的輸入推翻。例如,當(dāng)外部 電源連接到外部電源輸入114時,即使作為示例用于選擇了最大電池 壽命模式,微處理器102也可選擇最大可實現(xiàn)交錯比率。在另一示例 中,當(dāng)系統(tǒng)100的溫度超過預(yù)設(shè)閾值時,例如即使用戶選擇了最小延 遲時間模式并且外部電源連接到外部電源輸入114,微處理器102也 可選擇最小可實現(xiàn)交錯比率。
在各個實現(xiàn)中,音頻輸出裝置140可以是內(nèi)部揚(yáng)聲器、蜂鳴器和 /或其它音響指示器。在某些實現(xiàn)中,可將放大器耦合到輸出連接器, 所述輸出連接器適合于向一個或多個耳機(jī)或外部揚(yáng)聲器(其可以被外 部放大)組提供包含音頻信息的信號。某些實現(xiàn)可提供系統(tǒng)IOO和外部音頻轉(zhuǎn)換器裝置之間的有線或無線(例如,藍(lán)牙或其它RF)接口。 在某些實現(xiàn)中,顯示器142可以是作為示例的LCD或TFT顯示 器,其向用戶提供基于文本的界面和/或圖形界面。顯示器142的亮度 和/或光強(qiáng)可以是可調(diào)節(jié)的。在某些實現(xiàn)中,微處理器102可以在顯示 器142操作在較高亮度和/或光強(qiáng)的情況下時選擇較低的交錯策略,以 保持電池壽命。
系統(tǒng)100還包括相機(jī)150和麥克風(fēng)152,其分別用于向微處理器 102提供圖像和音頻信息。在某些實現(xiàn)中,可將音頻和/或視頻信息編 碼成諸如MPEG、 JPEG、 .wav、 bitmap的標(biāo)準(zhǔn)格式或其它廣泛采用 的數(shù)據(jù)格式。例如,可將相機(jī)150配置為捕獲靜止和/或運動圖像(例 如,幀)信息,可使用圖像壓縮領(lǐng)域的技術(shù)人員已知的技術(shù)對所述靜 止和/或運動圖像信息進(jìn)行壓縮和/或編碼??蓪Ⅺ溈孙L(fēng)152操作為捕 獲音頻信息,其可以與圖像信息同步,也可以不與圖像信息同步。可 根據(jù)寫入交錯策略將從相機(jī)150和麥克風(fēng)152接收的音頻和/或圖像信 息存儲在閃速存儲器106a-106d中。
例如,在相機(jī)150和/或微處理器152正在進(jìn)行數(shù)據(jù)的流傳輸并 且系統(tǒng)由電池供電的操作模式下,微處理器102可選擇具有足夠交錯 比率的寫入交錯策略以處理最大數(shù)據(jù)率。在某一示例中,對于組合的 音頻和視頻信息,足夠交錯比率可以是4:1,對于單獨的視頻信息, 足夠交錯比率可以是2:1,對于靜止圖像或音頻信息,足夠交錯比率 可以是l:l。
對于另一示例,在系統(tǒng)100通過電池116操作,同時從閃存 106a-106d讀取的操作模式下,微處理器102可選擇較低的讀取交錯 策略以最大化電池壽命。例如,所述操作模式會發(fā)生在被用作用于重 放存儲在閃速存儲器106a-106d中的視頻、音頻和/或其它(例如,文 本)信息的便攜式裝置時。
作為另一示例,在系統(tǒng)100由外部電源供電,同時從閃存 106a-106d讀取或向閃存106a-106d寫入的操作模式下,微處理器102 可選擇讀取和/或?qū)懭虢诲e策略以最小化訪問時間。在某一應(yīng)用中,可按最大可實現(xiàn)數(shù)據(jù)率向閃存106a-106d或從閃存106a-106d傳送數(shù)據(jù) (例如,歌曲、視頻),以最小化完成傳送操作所需的時間。
或者,可獨立地對讀取和寫入交錯策略進(jìn)行確定、存儲或其它方 式的預(yù)設(shè),而不必根據(jù)電池電壓、溫度或操作模式來動態(tài)調(diào)節(jié)。
微處理器102可根據(jù)各種方法執(zhí)行諸如測試代碼126或控制代碼 128的指令的程序,將分別參照圖2到圖3來描述其示例。
在圖2中,流程圖200示出孩t處理器102可在執(zhí)行測試代碼126 的實現(xiàn)時執(zhí)行的操作的示例。盡管圖1所示的示例示出由微處理器102 執(zhí)行的存儲在NVM 124中的測試代碼126的單個方框,但是其它處 理器或邏輯電路可執(zhí)行所示操作中的某些或全部,并且可使用存儲在 諸如RAM(未示出)的不同于NVM124中的位置的指令。
在所述示例中,當(dāng)微處理器102請求更新交錯策略130時,所述 方法在步驟205開始。將參照圖3更加詳細(xì)地描述可促使微處理器發(fā) 起對交錯策略130的更新的條件。
微處理器102通過查詢或以其它方式讀取熱傳感器136在步驟 210檢查溫度。如果在步驟215所述溫度高于預(yù)設(shè)閾值溫度,則微處 理器102在步驟220選擇具有最小交錯比率的用于讀取和寫入兩者的 交錯策略,所述最小交錯比率諸如作為示例的1:1。接著,微處理器 102在步驟225將選擇的讀取和寫入交錯策略130存儲在NVM 124中, 并且所述方法在步驟230結(jié)束。
如果在步驟215溫度沒有高于預(yù)設(shè)閾值溫度,則微處理器102在 步驟235檢查電源。如果在步驟240系統(tǒng)IOO正在使用外部電源,則 微處理器102在步驟245選擇具有最大交錯比率的用于讀取和寫入兩 者的交錯策略,所述最大交錯比率諸如作為示例的4:1。接著,微處 理器102在步驟225將選擇的讀取和寫入交錯策略130寫入NVM 124 中,并且所述方法在步驟230結(jié)束。
在步驟240,如果系統(tǒng)100正在將電池116用作電源,則微處理 器102通過讀取調(diào)壓器118中的電源管理器120的狀態(tài)寄存器122在 步驟250檢查電池電壓。接著,微處理器102在步驟255檢查系統(tǒng)100
16的操作模式。例如,操作模式可以包括系統(tǒng)100當(dāng)前執(zhí)行的操作以及
用戶選擇的操作模式,諸如最大電池壽命模式或最小延遲模式。作為
另一示例,微處理器102可檢查數(shù)據(jù)接口 132中的數(shù)據(jù)流、顯示器142 的操作條件以及音頻輸出裝置140中的輸出。如果這些裝置吸取大量 的電流,則微處理器102可選擇具有較低交錯比率的交錯策略。在檢 查電池電壓和操作模式之后,微處理器102獨立地在步驟260選擇寫 入交錯策略并在步驟265選擇讀取交錯策略。接著,微處理器102在 步驟225將選擇的讀取和寫入交錯策略130存儲在NVM 124中,并 且所述方法在步驟230結(jié)束。
在圖3中,流程圖300示出微處理器102在執(zhí)行控制代碼128的 實現(xiàn)時可執(zhí)行的操作的示例。微處理器102可執(zhí)行控制代碼128以選 擇適當(dāng)?shù)慕诲e策略并將選擇的交錯策略發(fā)送到存儲器控制器104。在 所述示例中,當(dāng)微處理器102接收到用于訪問閃速存儲器106a-106d 的命令時,所述方法在步驟305開始。在步驟310,微處理器102接 收到寫入或讀取命令。例如,當(dāng)用戶通過數(shù)據(jù)接口 132將數(shù)據(jù)下載到 閃速存儲器106a-106d時,微處理器102可接收寫入命令。作為另一 示例,當(dāng)用戶使用用戶接口 138來指示系統(tǒng)IOO播放存儲在閃速存儲 器106a-106d中的視頻時,微處理器102可接收讀取命令。
微處理器102隨后在步驟315確定是否需要更新交錯策略。如果 在步驟350微處理器102確定需要更新交錯策略,則如流程圖200所 示,微處理器102執(zhí)行測試代碼126以選擇并存儲交錯策略。例如, 當(dāng)溫度、電源、電池電壓和/或操作模式中的任何一個發(fā)生改變時,會 需要改變交錯策略。在另一示例中,可根據(jù)日程(例如,每小時、每 日、每周等)周期性地更新交錯策略。
如果微處理器102在步驟315確定不需要更新交錯策略,則微處 理器102在步驟320檢查所述命令是讀取命令還是寫入命令。如果接 收的命令是寫入命令,則微處理器102在步驟325將寫入交錯策略發(fā) 送到存儲器控制器104。接著,在步驟330,微處理器102將寫入命令 發(fā)送到存儲器控制器104,并且所述方法在步驟335結(jié)束。
17在步驟320,如果所述命令是讀取命令,則微處理器102在步驟 340將讀取交錯策略發(fā)送到存儲器控制器104。接著,在步驟345,微 處理器102將讀取命令發(fā)送到存儲器控制器104,并且所述方法在步 驟335結(jié)束。
在處理器102已經(jīng)選擇并存儲交錯策略之后,所述處理返回到步 驟320。
盡管已經(jīng)描述了所述方法的一種實現(xiàn),但是其它實現(xiàn)可按照不同 的順序執(zhí)行所述步驟,或者可執(zhí)行用于實現(xiàn)相同的主要功能的修改方 式,所述主要功能用于選擇對閃速存儲器進(jìn)行讀取和寫入的適當(dāng)交錯 策略。
盡管已經(jīng)參照圖l描述了可以是便攜式的系統(tǒng)的示例,但是在諸 如桌上型或聯(lián)網(wǎng)環(huán)境的其它處理應(yīng)用中可采用其它實現(xiàn)。
可將某些系統(tǒng)實現(xiàn)為可根據(jù)本發(fā)明的實現(xiàn)使用的計算機(jī)系統(tǒng)。例 如,各種實現(xiàn)可包括數(shù)字和/或模擬電路、計算機(jī)硬件、固件、軟件 或其組合??梢栽谟行蔚匕谛畔⑤d體中的計算機(jī)程序產(chǎn)品中實現(xiàn) 所述設(shè)備,以便由可編程處理器來執(zhí)行,所述信息載體例如機(jī)器可讀 存儲裝置或傳播的信號;并且可由執(zhí)行指令程序的可編程處理器來執(zhí) 行所述方法,以便通過對輸入數(shù)據(jù)進(jìn)行操作并產(chǎn)生輸出來執(zhí)行本發(fā)明 的功能??捎欣卦谝粋€或更多計算機(jī)程序中實現(xiàn)所述方法,所述計 算機(jī)程序可以在可編程系統(tǒng)中執(zhí)行,所述可編程系統(tǒng)包括至少一個可 編程處理器、至少一個輸入裝置和/或至少一個輸出裝置,其中,所述 可編程處理器被耦合用于從數(shù)據(jù)存儲系統(tǒng)接收數(shù)據(jù)和指令,并將數(shù)據(jù) 和指令發(fā)送到數(shù)據(jù)存儲裝置。計算機(jī)程序是可以在計算機(jī)中直接或間 接使用以便執(zhí)行特定活動或產(chǎn)生特定結(jié)果的指令的集合??梢杂萌魏?形式的編程語言來寫計算機(jī)程序,所述編程語言包括編譯或解釋語言, 可以按任何形式使用所述計算機(jī)程序,包括作為獨立于操作系統(tǒng)的程 序,或者作為模塊、部件、子程序或適合在計算環(huán)境中使用的其它單 元.
作為示例,用于執(zhí)行指令的程序的適合處理器包括通用 處理器和專用微處理器兩者,它們可包括單處理器或任何種類計算機(jī)的多處 理器之一。通常,處理器將從只讀存儲器或隨機(jī)存取存儲器或者以上 兩者接收指令和數(shù)據(jù)。計算機(jī)的必要部件是用于執(zhí)行指令的處理器以 及用于存儲指令和數(shù)據(jù)的一個或多個存儲器。通常,計算機(jī)將還包括 用于存儲數(shù)據(jù)文件的一個或多個大容量存儲器或在操作上耦合為與所
述大容量存儲器進(jìn)行通信;這種裝置包括諸如內(nèi)部硬盤和可拆卸盤的 磁盤、磁光盤和光盤。適于有形地包含計算機(jī)程序指令和數(shù)據(jù)的存儲 裝置包括所有形式的非易失性存儲器,作為示例,其包括諸如 EPROM、 EPPROM和閃速存儲裝置的半導(dǎo)體存儲裝置、諸如內(nèi)部硬 盤和可拆卸盤的磁盤、磁光盤以及CD-ROM和DVD-ROM盤。可通 過ASIC (專用集成電路)來補(bǔ)充處理器和存儲器,或者將所述處理 器和存儲器并入ASIC中。
在某些實現(xiàn)中,可用相同或相似的信息來對每個系統(tǒng)100進(jìn)行編 程,并且/或者用存儲在易失性和/或非易失性存儲器中的基本等同的 信息來初始化每個系統(tǒng)100。例如,可將一數(shù)據(jù)接口配置為當(dāng)耦合到 諸如桌上型計算機(jī)或服務(wù)器的適當(dāng)主機(jī)裝置時,執(zhí)行自動配置、自動 下載和/或自動更新功能。
在某些實現(xiàn)中,可將一個或多個用戶接口特點自定義配置為執(zhí)行 特定功能。可在包括圖形用戶界面和/或互聯(lián)網(wǎng)瀏覽器的計算機(jī)系統(tǒng)中 實現(xiàn)本發(fā)明。為了向用戶提供相互作用,可在這樣的計算機(jī)上實行某 些實現(xiàn),所述計算機(jī)具有諸如CRT (陰極射線管)或LCD (液晶顯 示器)監(jiān)視器的用于向用戶顯示信息的顯示裝置、鍵盤和點擊設(shè)備, 所述點擊設(shè)備諸如鼠標(biāo)或光標(biāo)運動球,通過它們,用戶可向計算機(jī)提 供輸入。
在各種實現(xiàn)中,系統(tǒng)100可使用適當(dāng)?shù)耐ㄐ欧椒?、設(shè)備和技術(shù)來 進(jìn)行通信。例如,系統(tǒng)100可使用點對點通信與相關(guān)裝置(例如,能 夠向/從系統(tǒng)100傳送數(shù)據(jù)的裝置)進(jìn)行通信,在點對點通信中,通過 專用物理鏈路(例如,光纖鏈路、點對點寫入、菊花鏈)將消息直接 從源傳輸?shù)浇邮諜C(jī)。所述系統(tǒng)的部件可通過包括通信網(wǎng)絡(luò)上基于分組的消息的模擬或數(shù)字?jǐn)?shù)據(jù)通信的任何形式或介質(zhì)來交換信息。例如,
通信網(wǎng)絡(luò)的示例包括LAN (局域網(wǎng))、WAN (廣域網(wǎng))、MAN (城 域網(wǎng))、無線和/或光網(wǎng)絡(luò)和形成互聯(lián)網(wǎng)的計算機(jī)和網(wǎng)絡(luò)。其它實現(xiàn)可 通過向經(jīng)由通信網(wǎng)絡(luò)耦合在一起的所有裝置或基本上所有裝置進(jìn)行廣 播來傳輸消息,例如,通過使用全向射頻(RF)信號。其它實現(xiàn)可傳 輸由高度方向性所表征的消息,諸如使用定向(或窄束)天線發(fā)送的 RF信號或可選地通過聚焦光學(xué)器件使用的紅外信號。其它實現(xiàn)可使 用適當(dāng)?shù)慕涌诤蛥f(xié)議,諸如作為示例而非限制的USB 2.0、火線、 ATA/IDE、 RS國232、 RS-422、 RS-485、 802.11a/b/g、 Wi-Fi、以太網(wǎng)、 IrDA、 FDDI (光纖分布式接口 )、令牌環(huán)網(wǎng)或基于頻分、時分或碼 分的復(fù)用技術(shù)。某些實現(xiàn)可選地結(jié)合有諸如對數(shù)據(jù)完整性進(jìn)行誤差檢 查與校正(ECC)的特點或者諸如加密(例如,WEP)和密碼保護(hù)的 安全性措施。
已經(jīng)描述了本發(fā)明的一些實現(xiàn)。然而,應(yīng)該理解在不脫離本發(fā) 明的精神和范圍的情況下,可進(jìn)行各種修改。例如,如果以不同的順 序執(zhí)行所公開技術(shù)的步驟,如果以不同方式組合所公開系統(tǒng)的部件, 或者如果由其它部件來替換或補(bǔ)充所述部件,則可能會實現(xiàn)有利的結(jié) 果??稍谟布?、軟件或兩者的組合中執(zhí)行所述功能和處理(包括算法), 某些實現(xiàn)可在不同于所公開的模塊或硬件上執(zhí)行。因此,其它實現(xiàn)也 在所附權(quán)利要求的范圍之內(nèi)。
20
權(quán)利要求
1、一種使用交錯存儲器來處理數(shù)據(jù)的系統(tǒng),所述系統(tǒng)包括多個存儲單元;存儲器控制器,用于選擇性地控制用于同時訪問所述多個存儲單元的交錯比率,其中所述交錯比率定義同時訪問的所述多個存儲單元的數(shù)量;以及處理器,用于接收對于訪問存儲單元的請求,識別可操作地耦接到所述多個存儲單元的電源的類型以供訪問所述多個存儲單元使用,如果所述電源被識別為第一類型的電源,則選擇以其執(zhí)行接收到的訪問請求的第一交錯比率,如果所述電源被識別為第二類型的電源,則選擇以其執(zhí)行接收到的訪問請求的第二交錯比率,所述第二交錯比率不同于所述第一交錯比率,以及向所述存儲器控制器識別所選擇的交錯比率。
2、 如權(quán)利要求l所述的系統(tǒng),其中,所述多個存儲單元包括閃 速存儲器。
3、 如權(quán)利要求l所述的系統(tǒng),其中,所述第二類型的電源包括 便攜式儲能源。
4、 如權(quán)利要求3所述的系統(tǒng),其中,選擇第二交錯比率包括選 擇小于最大可用交錯比率的交錯比率。
5、 一種選擇用于訪問閃速存儲器的交錯策略的方法,所述閃速 存儲器被配置為存儲交錯數(shù)據(jù),所述方法包括接收對于從閃速存儲器進(jìn)行讀取的請求,其中所述閃速存儲器包 括多個存儲單元,并且所述閃速存儲器被配置成按照定義了對所述多 個存儲單元進(jìn)行同時訪問的數(shù)量的交錯比率,選擇性地訪問所述多個 存儲單元;識別與所述閃速存儲器相關(guān)的特定一組操作條件; 基于第一組準(zhǔn)則對于所識別的所述特定一組操作條件的應(yīng)用,識 別用于從所述閃速存儲器中進(jìn)行讀取的讀取交錯比率;接收對于向所述閃速存儲器進(jìn)行寫入的請求;以及 基于第二組準(zhǔn)則對于所識別的所述特定一組操作條件的應(yīng)用,識別用于向所迷閃速存儲器進(jìn)行寫入的寫入交錯比率,其中,所識別的讀取交錯比率和所識別的寫入交錯比率是不同的。
6、 如權(quán)利要求5所述的方法,其中,第一組準(zhǔn)則包括與可用于 向所述閃速存儲器供電的電源電壓或電流中的至少一個相關(guān)的準(zhǔn)則。
7、 如權(quán)利要求5所述的方法,其中,當(dāng)可用于向所述閃速存儲 器供電的電源電壓或電流超過第一閾值時,基于所述第一組準(zhǔn)則的應(yīng) 用將所述所識別的讀取交錯比率選擇為大于最小可用讀取交錯比率。
8、 如權(quán)利要求7所述的方法,其中,當(dāng)可用于向所述閃速存儲 器供電的電源電壓或電流超過第二閾值時,基于所述第二組準(zhǔn)則的應(yīng) 用將所述所識別的寫入交錯比率選擇為大于最小可用寫入交錯比率, 其中,所述第二閾值不同于所述第一閾值。
9、 如權(quán)利要求5所述的方法,其中如果不使用從便攜式儲能源 吸取的功率來操作所述閃速存儲器,則基于所述第一組準(zhǔn)則的應(yīng)用將 所述所識別的讀取交錯比率選擇為最大可用讀取交錯比率。
10、 如權(quán)利要求5所述的方法,其中,基于所述第二組準(zhǔn)則的應(yīng) 用將所述所識別的寫入交錯比率選擇為固定的交錯比率。
11、 如權(quán)利要求5所述的方法,其中,基于與將寫入所述閃速存 儲器的數(shù)據(jù)相關(guān)的數(shù)據(jù)傳送速率,根據(jù)所述第二組準(zhǔn)則的應(yīng)用選擇所 識別的寫入交錯比率。
12、 如權(quán)利要求11所述的方法,其中,所述寫入交錯比率包括 足以按所述數(shù)據(jù)傳送速率將數(shù)據(jù)寫入所述閃速存儲器的比率。
13、 如權(quán)利要求12所述的方法,其中,基于所述第二組準(zhǔn)則的 應(yīng)用將用于包括視頻和音頻信息的數(shù)據(jù)流的所述所識別的寫入交錯比 率選擇為高于用于包括音頻信息而沒有視頻信息的數(shù)據(jù)流的寫入交錯 比率。
14、 如權(quán)利要求12所述的方法,其中,基于所述第二組準(zhǔn)則的 應(yīng)用將用于包括視頻信息的數(shù)據(jù)流的所識別的寫入交錯比率選擇為高于用于包括靜止圖像信息的數(shù)據(jù)流的寫入交錯比率。
15、 如權(quán)利要求5所述的方法,其中,所述第一組準(zhǔn)則和所述第 二組準(zhǔn)則中的至少一個的應(yīng)用在檢測到溫度超過閾值時分別導(dǎo)致減少 的讀取交錯比率或減少的寫入交錯比率。
16、 如權(quán)利要求5所述的方法,其中,所述第一組準(zhǔn)則和所述第 二組準(zhǔn)則中的至少一個的應(yīng)用響應(yīng)于用于最小化功耗的信號分別導(dǎo)致 減少的讀取交錯比率或減少的寫入交錯比率。
17、 如權(quán)利要求5所述的方法,其中,識別所述讀取交錯比率以 控制用于處理所述讀取請求所吸取的最大電流電平。
18、 如權(quán)利要求5所述的方法,其中,識別所述寫入交錯比率以 控制用于處理所述寫入請求所吸取的最大電流電平。
19、 一種i殳備,包括用于接收對于訪問存儲器的請求的裝置;用于識別用于同時訪問所述存儲器中的存儲單元的交錯策略的 裝置,其中通過基于第一組準(zhǔn)則從讀取交錯策略中進(jìn)行選擇或基于第 二組準(zhǔn)則從寫入交錯策略中進(jìn)行選擇,識別用于執(zhí)行所請求的訪問的 交錯策略,所述第一組準(zhǔn)則和所述第二組準(zhǔn)則包括在至少一個操作條 件下不同的至少一個準(zhǔn)則,其中所述第一組準(zhǔn)則包括由溫度、電源類 型、和電池電壓構(gòu)成的組中的一個或多個成員;以及用于使用所識別的交錯策略發(fā)送信號以執(zhí)行所請求的存儲器訪 問的裝置。
20、 如權(quán)利要求19所述的設(shè)備,其中,第二組準(zhǔn)則包括下述組 中的一個或多個成員,所述組包括溫度、操作模式、數(shù)據(jù)傳送速率、 電源類型、和電池電壓。
21、 如權(quán)利要求19所述的設(shè)備,還包括用于使用所識別的交錯策略來訪問多個閃速存儲器塊的裝置。
22、 如權(quán)利要求19所述的設(shè)備,還包括用于更新所述讀取交錯比率和所述寫入交錯比率中的至少一個 的裝置。
23、 如權(quán)利要求22所述的設(shè)備,其中,用于更新所述讀取交錯 比率和所述寫入交錯比率中的至少一個的裝置包括用于識別從下述組中選擇的至少一個參數(shù)的改變的裝置,所述組 包括溫度、電源類型、電池電壓、和操作模式。
24、 如權(quán)利要求19所述的設(shè)備,還包括用于當(dāng)檢測到溫度超過預(yù)定閾值時,減少由讀取交錯策略定義的 讀取交錯比率和由寫入交錯策略定義的寫入交錯比率中的至少一個的 裝置。
25、 一種選擇用于訪問閃速存儲器的交錯策略的設(shè)備,所述閃速 存儲器被配置為存儲交錯數(shù)據(jù),所述設(shè)備包括用于接收對于從閃速存儲器進(jìn)行讀取的請求的裝置,其中所述閃 速存儲器包括多個存儲單元,并且所述閃速存儲器被配置成按照定義 了對所述多個存儲單元進(jìn)行同時訪問的數(shù)量的交錯比率,選擇性地訪 問所述多個存儲單元;用于識別與所述閃速存儲器相關(guān)的特定一組操作條件的裝置; 用于基于第一組準(zhǔn)則對于所識別的所述特定一組操作條件的應(yīng)用,識別用于從所述閃速存儲器中進(jìn)行讀取的讀取交錯比率的裝置; 用于接收對于向所述閃速存儲器進(jìn)行寫入的請求的裝置;以及 用于基于第二組準(zhǔn)則對于所識別的所述特定一組操作條件的應(yīng) 用,識別用于向所述閃速存儲器進(jìn)行寫入的寫入交錯比率的裝置,其 中,所識別的讀取交錯比率和所識別的寫入交錯比率是不同的。
26、 如權(quán)利要求25所述的設(shè)備,其中,第一組準(zhǔn)則包括與可用 于向所述閃速存儲器供電的電源電壓或電流中的至少一個相關(guān)的準(zhǔn) 則。
27、 如權(quán)利要求25所述的設(shè)備,還包括用于當(dāng)可用于向所述 閃速存儲器供電的電源電壓或電流超過第一闊值時,基于所述第一組 準(zhǔn)則的應(yīng)用將所述所識別的讀取交錯比率選擇為大于最小可用讀取交 錯比率的裝置。
28、 如權(quán)利要求27所述的設(shè)備,還包括用于當(dāng)可用于向所述閃速存儲器供電的電源電壓或電流超過第二閾值時,基于所述笫二組 準(zhǔn)則的應(yīng)用將所述所識別的寫入交錯比率選擇為大于最小可用寫入交 錯比率的裝置,其中,所述第二閾值不同于所述第一閾值。
29、 如權(quán)利要求25所述的設(shè)備,還包括用于如果不使用從便 攜式儲能源吸取的功率來操作所述閃速存儲器,則基于所述第 一組準(zhǔn) 則的應(yīng)用將所述所識別的讀取交錯比率選擇為最大可用讀取交錯比率 的裝置。
30、 如權(quán)利要求25所述的設(shè)備,還包括用于基于所述第二組 準(zhǔn)則的應(yīng)用將所述所識別的寫入交錯比率選擇為固定的交錯比率的裝 置。
31、 如權(quán)利要求25所述的設(shè)備,還包括用于基于與將寫入所 述閃速存儲器的數(shù)據(jù)相關(guān)的數(shù)據(jù)傳送速率,根據(jù)所述第二組準(zhǔn)則的應(yīng) 用選擇所識別的寫入交錯比率的裝置。
32、 如權(quán)利要求31所述的設(shè)備,其中,所述寫入交錯比率包括 足以按所述數(shù)據(jù)傳送速率將數(shù)據(jù)寫入所述閃速存儲器的比率。
33、 如權(quán)利要求32所述的設(shè)備,還包括用于基于所述第二組 準(zhǔn)則的應(yīng)用將用于包括視頻和音頻信息的數(shù)據(jù)流的所述所識別的寫入 交錯比率選擇為高于用于包括音頻信息而沒有視頻信息的數(shù)據(jù)流的寫 入交錯比率的裝置。
34、 如權(quán)利要求32所述的設(shè)備,還包括用于基于所述第二組 準(zhǔn)則的應(yīng)用將用于包括視頻信息的數(shù)據(jù)流的所識別的寫入交錯比率選 擇為高于用于包括靜止圖像信息的數(shù)據(jù)流的寫入交錯比率的裝置。
35、 如權(quán)利要求25所述的設(shè)備,其中,所述第一組準(zhǔn)則和所述 第二組準(zhǔn)則中的至少 一個的應(yīng)用在檢測到溫度超過閾值時分別導(dǎo)致減 少的讀取交錯比率或減少的寫入交錯比率。
36、 如權(quán)利要求25所述的設(shè)備,其中,所述第一組準(zhǔn)則和所述 第二組準(zhǔn)則中的至少一個的應(yīng)用響應(yīng)于用于最小化功耗的信號分別導(dǎo) 致減少的讀取交錯比率或減少的寫入交錯比率。
37、 如權(quán)利要求25所述的設(shè)備,還包括用于識別所迷讀取交錯比率以控制用于處理所述讀取請求所吸取的最大電流電平的裝置。
38、如權(quán)利要求25所述的設(shè)備,還包括識別所述寫入交錯比 率以控制用于處理所述寫入請求所吸取的最大電流電平的裝置。
全文摘要
產(chǎn)品以及相關(guān)方法和系統(tǒng)涉及與選擇寫入交錯策略無關(guān)地來選擇讀取交錯策略。在各種實現(xiàn)中,所述選擇在操作期間可以是靜態(tài)或動態(tài)的。在動態(tài)選擇讀取交錯策略和寫入交錯策略的實現(xiàn)中,所述選擇可基于各種操作條件,諸如溫度、電源、電池電壓和操作模式。操作模式的示例可包括(1)當(dāng)連接到外部電源時對閃速存儲器進(jìn)行讀取或?qū)懭耄?2)當(dāng)由便攜式電源(例如,電池)供電時從閃速存儲器讀取,以及(3)當(dāng)由便攜式電源供電時向閃速存儲器寫入。
文檔編號G06F12/06GK101661434SQ20091016918
公開日2010年3月3日 申請日期2007年1月17日 優(yōu)先權(quán)日2006年1月18日
發(fā)明者克里斯托弗·P.·杜得特, 邁克爾·J.·康威爾 申請人:蘋果公司