改善冗余載入效率的制作方法
【專利摘要】一種系統(tǒng),包括處理器以及內(nèi)存,其中,所述內(nèi)存包括指令,當由所述處理器執(zhí)行時實施一種方法。該方法包括載入冗余數(shù)據(jù)組的第一部分進入該處理器的寄存器,對于多個冗余扇區(qū)(sector)的每一個冗余扇區(qū)。冗余數(shù)據(jù)組的第二部分也被載入易失性(volatile)內(nèi)存,對于該多個冗余扇區(qū)的每一個冗余扇區(qū)。載入該冗余數(shù)據(jù)組的該第二部分包括載入冗余數(shù)據(jù)的第三部分,該冗余數(shù)據(jù)包括冗余數(shù)據(jù)的多個第二部分,對于該多個冗余扇區(qū)。
【專利說明】改善冗余載入效率
【技術領域】
[0001] 本揭露一般地涉及電源開啟讀?。╬ower-on-read)時間的需求,并且尤指在電源 開啟讀取時間期間的讀取冗余信息。
【背景技術】
[0002] 在某些應用程式,電源開啟讀?。≒OR)時間可能是顧客所強調(diào)的重要規(guī)格。于一 例示性實施例中,當電源供應至內(nèi)存裝置,該內(nèi)存裝置經(jīng)過一連串的初始化階段。在這個 POR時間中,執(zhí)行了電源開啟讀取演算法。該POR演算法可執(zhí)行所需要的步驟,以使該內(nèi)存 裝置(例如,快閃內(nèi)存的微控制器、SRAM,以及寄存器)進入準備好接收命令的狀態(tài),該命令 例如為讀取/寫入以及抹去要求。
[0003] 電源開啟讀取時間的一個成分為用于載入冗余信息所需要的時間。這樣的信息 (可能花費大于10百分比的總POR時間)用于維持冗余扇區(qū)的軌道。一例示性內(nèi)存裝置可 分為幾個扇區(qū),其中所有數(shù)目的可提供扇區(qū)分為一般運算扇區(qū)以及冗余扇區(qū)。當一般運算 扇區(qū)鑒別且被標記為不良,冗余扇區(qū)的其中之一將用于取代該不良扇區(qū)。于一例示性實施 例中,冗余寄存器可以冗余扇區(qū)的其中之一的位址替換該不良扇區(qū)的位址。如下文將討論 的細節(jié),快閃內(nèi)存裝置可包含多個一般扇區(qū)、多個冗余扇區(qū)以及存儲冗余信息的查找表,該 信息將包含有關當前使用的冗余扇區(qū)的信息(特定的冗余扇區(qū)當前是否正用于取代不良 的一般扇區(qū))。
[0004] 設計POR時間以符合顧客需求越來越具挑戰(zhàn),尤其當快閃內(nèi)存裝置變得更先進并 且有更大的內(nèi)存密度。舉例來說,當一個例示性256Mb內(nèi)存裝置具有8個冗余扇區(qū),一個例 示性16Gb內(nèi)存裝置則具有64個冗余扇區(qū)。目前,有兩種選擇方案應用于提升POR時間的 速度:純硬體實施以及改進軟體效率。對于純硬體實施,至少有三個缺點。第一,沒有靈活 性。一旦特定的硬體實施例被實際實現(xiàn)(realized physically),要進行修改就不是一件 容易的事。第二,對于硬體,這類的修改通常將導致晶片大小的增加。制造已導致增加晶片 大小的新硬體實施例,可能也導致增加生產(chǎn)成本。第三,純硬體實施可能較軟體實施更為復 雜。
[0005] 因此,對于電源開啟讀取實施,軟體實施是較好的選擇,當存在嚴峻的POR時間要 求的時候。然而,軟體實施也有對應屬于自己的挑戰(zhàn)以及缺點。舉例來說,大于10百分比的 實際電源開啟讀取時間可能花費在載入該冗余信息。另外對于顧慮到冗余信息的延長載入 時間,更大的內(nèi)存裝置需要載入或存儲越來越大數(shù)量的冗余信息。因為可提供的存儲空間 也十分珍貴,尤其在具有額外內(nèi)存需求的BiST載入方案中;用于有效率的冗余信息載入的 軟體解決方案有時候不可能用于更大的內(nèi)存裝置。這樣的冗余信息的載入是沒有效率的, 并且如上文所討論,隨著更大的內(nèi)存容量而更加惡化。因此,需要改善該冗余信息載入以減 低該POR時間。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明提供一種解決方案,對于在電源開啟讀取時間中載入冗余信息的固有挑 戰(zhàn)。在根據(jù)本發(fā)明的一個實施例的方法中,揭露一種用于載入冗余信息的方法。該方法包括 對于多個冗余扇區(qū)的每一個冗余扇區(qū),載入冗余數(shù)據(jù)組的第一部分進入易失性內(nèi)存。對于 該多個冗余扇區(qū)的每一個冗余扇區(qū),冗余數(shù)據(jù)組的第二部分也被載入至該易失性內(nèi)存。對 于每一個冗余扇區(qū),載入該冗余數(shù)據(jù)組的該第二部分包括載入包括冗余數(shù)據(jù)的多個第二部 分的冗余數(shù)據(jù)的第三部分,對于多個冗余扇區(qū)。
[0007] 在根據(jù)本發(fā)明的一個實施例的系統(tǒng)中,揭露一種用于載入冗余信息的系統(tǒng)。該系 統(tǒng)包括處理器以及內(nèi)存,其中,所述內(nèi)存包括指令,當由所述處理器執(zhí)行時實施一種方法。 該方法包括對于多個冗余扇區(qū)的每一個冗余扇區(qū),載入冗余數(shù)據(jù)組的第一部分進入易失性 內(nèi)存。對于該多個冗余扇區(qū)的每一個冗余扇區(qū),冗余數(shù)據(jù)組的第二部分也被載入至該易失 性內(nèi)存。對于每一個冗余扇區(qū),載入該冗余數(shù)據(jù)組的該第二部分包括載入包括冗余數(shù)據(jù)的 多個第二部分的冗余數(shù)據(jù)的第三部分,對于多個冗余扇區(qū)。
[0008] 在根據(jù)本發(fā)明的一個實施例的系統(tǒng)中,揭露一種用于載入冗余信息的系統(tǒng)。該系 統(tǒng)包括處理器、易失性內(nèi)存、非易失性內(nèi)存以及查找表。在該非易失性內(nèi)存通入電源,在該 查找表中的冗余數(shù)據(jù)載入至該易失性內(nèi)存。載入該冗余數(shù)據(jù),包括:對于在該非易失性內(nèi)存 中的多個冗余扇區(qū)的每一個冗余扇區(qū),載入冗余數(shù)據(jù)組的第一部分進入該易失性內(nèi)存。對 于該多個冗余扇區(qū)的每一個冗余扇區(qū),冗余數(shù)據(jù)組的第二部分隨后載入至該易失性內(nèi)存。 載入該冗余數(shù)據(jù)組的該第二部分包括載入冗余數(shù)據(jù)的第三部分。該冗余數(shù)據(jù)的第三部分包 括冗余數(shù)據(jù)的多個第二部分,對于在非易失性內(nèi)存中的多個冗余扇區(qū)。
【專利附圖】
【附圖說明】
[0009] 通過閱讀以下詳細的描述,配合所附圖式,將更為明白本發(fā)明,其中相同的符號表 示相同的元件,以及其中:
[0010] 圖1說明根據(jù)本發(fā)明的實施例的例示性簡化方塊圖,其為微處理器從查找表載入 冗余信息進入靜態(tài)隨機存取內(nèi)存中;
[0011] 圖2說明根據(jù)先前技術,對于每一個冗余扇區(qū)安排成兩個字節(jié)的例示性冗余信息 位;
[0012] 圖3說明根據(jù)先前技術,對于例示性256Mb內(nèi)存裝置的每一個冗余扇區(qū)安排成兩 個字節(jié)的例示性冗余信息位;
[0013] 圖4說明根據(jù)本發(fā)明的實施例,對于例示性256Mb內(nèi)存裝置的每一個冗余扇區(qū)安 排成字節(jié)的例示性冗余信息位;以及
[0014] 圖5說明根據(jù)本發(fā)明的實施例的例示性流程圖,其為對于內(nèi)存裝置的每一個冗余 扇區(qū),載入冗余信息的方法。
【具體實施方式】
[0015] 通過本發(fā)明的最佳實施例,所附圖式中所圖示說明的例子,將提供詳細的參考。當 本發(fā)明描述于相關的最佳實施例,應了解到這并不意味限制本發(fā)明于這些實施例中。相反 的,本發(fā)明意圖涵蓋替代方案、修改以及同等物,在包含于所附的權利要求書所定義的本發(fā) 明的精神與范圍內(nèi)。更進一步來說,以下所描述的本發(fā)明的實施例,數(shù)個特定的細節(jié)被描 述,為了提供對于本發(fā)明的徹底理解。然而,本領域的技術人員應理解本發(fā)明可在沒有這些 特定細節(jié)下實施。在其他的實例中,廣為人知的方法、程序、元件以及電路不做詳細的描述, 避免本發(fā)明的實施例中不必要混淆。繪示本發(fā)明實施例的圖式為半圖解,并且未按照比例, 以及特別是,一些尺寸是為了表現(xiàn)上的清晰并且夸大的顯示于所繪圖式中。同樣的,盡管為 了方便描述,圖式中的視點一般顯示相同的方向,圖式中的這些繪圖在大多數(shù)的情況下是 任意的。一般來說,本發(fā)明可在任何方向下運作。
[0016] 以及術語:
[0017] 細節(jié)描述的某些部分,如下文,將顯示在計算機內(nèi)存中的數(shù)據(jù)位上運算的程序、步 驟、邏輯塊(logic blocks)、處理過程以及的其他符號表示。這些描述以及表示為在數(shù)據(jù)處 理領域的技術人員所使用的意義,以最有效率地傳達他們工作的實質(zhì)部分給其他本領域的 技術人員。在此,程序、計算機執(zhí)行步驟、邏輯塊、處理過程等等,以及一般而言,設想為自相 一致的步驟序列或是指令引導至所需的結果。該步驟為物理量所需的物理操作。通常,盡 管不是必須,這些由電子或磁性訊號所取得的數(shù)量能夠被存儲、轉送、結合、比較以及其他 操作在計算機系統(tǒng)中。有時候方便被證明,主要為了一般使用的理由,表示這些信號為位、 數(shù)值、元素、符號、特性、項目、數(shù)字、或諸如此類。
[0018] 然而,應牢記,這些全部以及類似的項目為相關聯(lián)于適當?shù)奈锢砹浚⑶覂H為采用 于這些數(shù)量的方便標示。除非特別聲明,否則如同下文所討論顯而易見的,應當理解整個本 發(fā)明中,討論所采用的項目像是"處理"或"存取"或"執(zhí)行"或"存儲"或"轉列(rendering) " 或諸如此類,表示計算機系統(tǒng)的動作以及處理程序,或是類似的電子計算裝置,操作并且轉 換數(shù)據(jù),該數(shù)據(jù)表示為在該計算機系統(tǒng)的寄存器以及內(nèi)存和其他計算機可讀取的媒體中的 物理(電子)數(shù)量,轉換為類似地表示為在計算機系統(tǒng)內(nèi)存或寄存器或其他類似的信息存 儲器、傳輸或顯示裝置中的物體量的其他數(shù)據(jù)。當一元件顯示于數(shù)個實施例中,使用相同表 示數(shù)字代表該元件為原始實施例中所圖示說明的相同元件。
[0019] 本發(fā)明的實施例提供了一種解決方案,對于維持簡短的冗余信息載入時間的固有 挑戰(zhàn),該挑戰(zhàn)隨著日漸增加的內(nèi)存裝置存儲容量而增加。更進一步來說,本發(fā)明的實施例也 提供一種解決方案,通過減少對于所給定的內(nèi)存裝置所要求的載入以及存儲數(shù)據(jù)的數(shù)量, 來解決增加的存儲以及載入需求。如以下的詳細描述,本案揭露的多種實施例提供一個冗 余信息載入的方案,其劃分用于特定冗余扇區(qū)的該冗余信息位為"低(low) "部分以及"高 (high) "部分(于一實施例,該低部分為一字節(jié)的數(shù)據(jù):低字節(jié),同時該高部分也是一字節(jié) 的數(shù)據(jù):高字節(jié))。如同以下也詳細描述的,多個冗余扇區(qū)的該高字節(jié)可結合進入至少一個 結合的高字節(jié)。于其他的實施例中,該低部分以及高部分可能是一些其他數(shù)量的位。如以 下的詳細討論,該冗余信息載入時間可通過載入每一個冗余扇區(qū)的低字節(jié)以及至少一個包 括該冗余扇區(qū)的多個高字節(jié)的結合的高字節(jié)而縮短。這樣的載入方案可導致對于給定的內(nèi) 存裝置必須載入的冗余數(shù)據(jù)數(shù)量的減少。
[0020] 于一例示性實施例,如圖1所示,對于冗余扇區(qū)110的最佳化的冗余信息可被存儲 在快閃內(nèi)存裝置100的TRIM扇區(qū)102。于一實施例,在TRIM扇區(qū)102中的該冗余信息被存 儲為查找表。于一實施例中,存儲在TRIM扇區(qū)102中的該冗余信息通過微控制器106被最 佳化。在最佳化后,該冗余信息暫時存儲在SRAM 104,該最佳化的冗余信息可轉送至TRM 扇區(qū)102予以存儲。如下文所討論,在POR演算法的執(zhí)行期間,存儲在TRIM扇區(qū)102的該 冗余信息可轉送至在快閃內(nèi)存100中的冗余寄存器108。于一實施例,冗余寄存器108為 多個正反器(flip-flop)。于一實施例,在該冗余信息于POR演算法期間被載入至該冗余 寄存器108,該載入的冗余信息可輕易且快速地存取,每當讀取、寫入或是抹去命令的時候。 快閃內(nèi)存裝置100隨后可通過其中一個該冗余扇區(qū)建立(found)列表于該冗余寄存器中, 檢查是否目標扇區(qū)已修復(例如被取代),并且根據(jù)需要,可重新導向該命令至替代的冗余 扇區(qū)。
[0021] 如上文所討論,并且也圖示說明于圖1中,快閃內(nèi)存可在微控制器106實施軟體解 決方案以達成靈活性的狀況下被實行,。于一例示性實施例中,可使用8位微控制器(MCU) 以達成軟體靈活性,但也導致較慢的POR時間,當與硬體解決方案相比較而言。如下文將詳 細討論的,8位微控制器將需要該冗余數(shù)據(jù)以一次一字節(jié)(例如8位)的方式,載入進冗余 寄存器108。
[0022] 進一步而言,具有32個冗余扇區(qū)的例示性2Gb內(nèi)存裝置,具有32個冗余信息組, 對于每一個冗余扇區(qū),冗余數(shù)據(jù)一組為12個位。于一實施例,像是具有8位微控制器(MCU), 該12位可分為2個字節(jié)。于一實施例,冗余信息的該字節(jié)以一次一字節(jié)的方式被載入。因 此在對于2Gb內(nèi)存裝置的冗余信息的載入期間,需要載入總共64字節(jié)的數(shù)據(jù),對于該32組 的冗余信息而言。
[0023] 下文的第1表格說明對于利用例示性8位微控制器(MCU) 106的不同的內(nèi)存裝置 密度,現(xiàn)有的冗余信息載入以及POR時間。在300 μ s的例示性PRO時間規(guī)格下,該現(xiàn)有的 實施方式對于8Gb密度及之后(onward)的內(nèi)存裝置將失效(fail)。如上文所討論,因為此 例示性實施例使用8位微控制器106,該冗余信息可劃分為低字節(jié)以及高字節(jié)。如第1表格 所圖示說明,在對于每一個冗余扇區(qū)該冗余信息劃分為兩字節(jié)的狀況下,根據(jù)先前技術的 例示性256Mb內(nèi)存裝置將需要載入16字節(jié)的冗余信息,當在其他的極端值,16Gb內(nèi)存裝置 將需要載入128字節(jié)的冗余信息。
[0024] 又如同第1表格所圖示說明,對于256Mb內(nèi)存裝置至16Gb內(nèi)存裝置的例示性冗余 數(shù)據(jù)載入時間,分別變化從8. 32 μ s至66. 56 μ s。因此,又如同第1表格所圖示說明,在冗 余載入時間增加的狀況下,8Gb以及更大的內(nèi)存裝置將失效于300 μ s的例示性規(guī)格需求。 如上文所討論,使用現(xiàn)有的軟體解決方案對于載入冗余信息而言,不可能用于8Gb或更大 的內(nèi)存裝置。
【權利要求】
1. 一種方法,包括: 載入冗余數(shù)據(jù)組的第一部分進入微控制器的寄存器,對于多個冗余扇區(qū)的每一個冗余 扇區(qū); 載入該冗余數(shù)據(jù)組的第二部分進入該寄存器,對于該多個冗余扇區(qū)的每一個冗余扇 區(qū),其中,載入該冗余數(shù)據(jù)組的該第二部分包括載入冗余數(shù)據(jù)的第=部分,該冗余數(shù)據(jù)包括 冗余數(shù)據(jù)的多個第二部分,對于該多個冗余扇區(qū)。
2. 根據(jù)權利要求1項所述的方法,其中,冗余數(shù)據(jù)組的第一部分為由該微控制器的頻 寬所界定的最大數(shù)目位。
3. 根據(jù)權利要求1項所述的方法,其中,冗余數(shù)據(jù)組的第一部分為冗余數(shù)據(jù)的字節(jié)。
4. 根據(jù)權利要求2項所述的方法,其中,冗余數(shù)據(jù)組的第二部分為由該微控制器的該 頻寬所界定的該最大數(shù)目位的一部分。
5. 根據(jù)權利要求4項所述的方法,其中,該最大數(shù)目位的該部分是小于由該微控制器 的該頻寬所界定的該最大數(shù)目位。
6. 根據(jù)權利要求3項所述的方法,其中,冗余數(shù)據(jù)組的第二部分為冗余數(shù)據(jù)的字節(jié)的 一部分。
7. 根據(jù)權利要求6項所述的方法,其中,冗余數(shù)據(jù)的字節(jié)的該部分是小于冗余數(shù)據(jù)的 字節(jié)。
8. 根據(jù)權利要求2項所述的方法,其中,冗余數(shù)據(jù)的第=部分為由該微控制器的頻寬 所界定的該最大數(shù)目位的一部分。
9. 根據(jù)權利要求8項所述的方法,其中,冗余數(shù)據(jù)的該第=部分為由該微控制器的該 頻寬所界定的最大數(shù)目位。
10. 根據(jù)權利要求8項所述的方法,其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)的一 部分。
11. 根據(jù)權利要求8項所述的方法,其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)。
12. 根據(jù)權利要求1項所述的方法,其中,冗余數(shù)據(jù)的該第=部分包括冗余數(shù)據(jù)的多個 第二部分。
13. -種系統(tǒng),其包括處理器W及內(nèi)存,其中,所述內(nèi)存包括指令,當由所述處理器執(zhí)行 時實施一種方法,包括 載入冗余數(shù)據(jù)組的第一部分進入該處理器的寄存器,對于多個冗余扇區(qū)的每一個冗余 扇區(qū); 載入該冗余數(shù)據(jù)組的第二部分進入該寄存器,對于該多個冗余扇區(qū)的每一個冗余扇 區(qū),其中,載入該冗余數(shù)據(jù)組的該第二部分包括載入冗余數(shù)據(jù)的第=部分,該冗余數(shù)據(jù)包括 冗余數(shù)據(jù)的多個第二部分,對于該多個冗余扇區(qū)。
14. 根據(jù)權利要求13項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第一部分為由該處理器的頻 寬所界定的最大數(shù)目位。
15. 根據(jù)權利要求13項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第一部分為冗余數(shù)據(jù)的字節(jié)。
16. 根據(jù)權利要求14項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第二部分為由該處理器的該 頻寬所界定的該最大數(shù)目位的一部分。
17. 根據(jù)權利要求16項所述的系統(tǒng),其中,該最大數(shù)目位的該部分是小于由該處理器 的該頻寬所界定的該最大數(shù)目位。
18.根據(jù)權利要求15項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第二部分為冗余數(shù)據(jù)的字節(jié) 的一部分。
19.根據(jù)權利要求18項所述的系統(tǒng),其中,冗余數(shù)據(jù)的字節(jié)的該部分是小于冗余數(shù)據(jù) 的字節(jié)。
20. 根據(jù)權利要求14項所述的系統(tǒng),其中,冗余數(shù)據(jù)的第=部分為由該處理器的頻寬 所界定的該最大數(shù)目位的一部分。
21. 根據(jù)權利要求20項所述的系統(tǒng),其中,冗余數(shù)據(jù)的該第=部分為由該處理器的該 頻寬所界定的最大數(shù)目位。
22. 根據(jù)權利要求20項所述的系統(tǒng),其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)的 一部分。
23.根據(jù)權利要求20項所述的系統(tǒng),其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)。
24.根據(jù)權利要求13項所述的系統(tǒng),其中,冗余數(shù)據(jù)的該第=部分包括冗余數(shù)據(jù)的多 個第二部分。
25. -種系統(tǒng),其包括: 包括有寄存器的處理器; 易失性內(nèi)存; 非易失性內(nèi)存;W及 查找表,其中,當電源通入該非易失性內(nèi)存,在該查找表中的冗余數(shù)據(jù)被載入該寄存 器,其中,載入該冗余資料包括: 載入冗余數(shù)據(jù)組的第一部分進入該易失性內(nèi)存,對于在該非易失性內(nèi)存中的多個冗余 扇區(qū)的每一個冗余扇區(qū); 載入該冗余數(shù)據(jù)組的第二部分進入該易失性內(nèi)存,對于在該非易失性內(nèi)存中的該多個 冗余扇區(qū)的每一個冗余扇區(qū),其中,載入該冗余數(shù)據(jù)組的該第二部分包括載入冗余數(shù)據(jù)的 第=部分,該冗余數(shù)據(jù)包括冗余數(shù)據(jù)的多個第二部分,對于在該非易失性內(nèi)存中的該多個 冗余扇區(qū)。
26.根據(jù)權利要求25項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第一部分為冗余數(shù)據(jù)的字節(jié)。
27.根據(jù)權利要求25項所述的系統(tǒng),其中,冗余數(shù)據(jù)組的第二部分為冗余數(shù)據(jù)的字節(jié) 的一部分。
28.根據(jù)權利要求27項所述的系統(tǒng),其中,冗余數(shù)據(jù)的字節(jié)的該部分是小于冗余數(shù)據(jù) 的字節(jié)。
29.根據(jù)權利要求25項所述的系統(tǒng),其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)的 一部分。
30.根據(jù)權利要求29項所述的系統(tǒng),其中,冗余數(shù)據(jù)的第=部分為冗余數(shù)據(jù)的字節(jié)。
31.根據(jù)權利要求25項所述的系統(tǒng),其中,冗余數(shù)據(jù)的該第=部分包括冗余數(shù)據(jù)的多 個第二部分。
【文檔編號】G06F12/16GK104471550SQ201380020561
【公開日】2015年3月25日 申請日期:2013年2月8日 優(yōu)先權日:2012年2月17日
【發(fā)明者】王偉健, 馬日鳳, 劉世偉, 洪恩保 申請人:斯班遜有限公司