新四季網

基於相變存儲器的分頁、ecc校驗及多位預取方法及其結構的製作方法

2023-04-25 01:14:01

專利名稱:基於相變存儲器的分頁、ecc校驗及多位預取方法及其結構的製作方法
技術領域:
本發明涉及基於相變存儲器的分頁、ECC校驗及多位預取方法及其結構。
背景技術:
相變存儲器(Phase-change memory,簡稱PCM)是一種新型的非易失性存儲器,其基本成分是以硫系化合物為基礎的相變材料。利用硫系化合物相變材料存儲信息,主要根據硫系化合物在無序(非晶態)與有序(晶態)兩態時差距明顯的電阻值來實現數據存儲的O和I態,其中非晶態的電阻值比晶態的電阻值高出3-4個數量級。硫系化合物能在電流脈衝下出現快速相變,在兩個物理狀態(晶態和非晶態)之間快速轉換,由其構成的相變存儲器也因此表現出了可編程的電氣特性,能夠有效的存儲數據。相變存儲器具有非易失性,支持隨機讀寫。與現有的常用半導體存儲器相比,相變存儲器具有優秀的性能:與SDRAM、SRAM相比,相變存儲器具有非易失性;與快閃記憶體相比,其有更高的讀寫速度、更低的功耗和更長的使用壽命。另外,隨著製造工藝的發展,相變存儲器的性能將更加優秀,而SRAM、DRAM和快閃記憶體等存儲器的製造工藝已經趨近極限,發展逐漸放緩。在當前的研究和應用中,大容量的存儲設備通常以Nand Flash或者磁碟等為存儲介質,如硬碟和記憶卡等,相變存儲器多被用來替換Nor Flash作為ROM存儲,這主要是應用了相變存儲器的隨機讀寫能力和非易失性,例如三星公司已經在部分手機設計中應用了相變存儲器來替換Nor Flash作為ROM。但相變存儲器具有更高的讀寫速度、更長的使用壽命和更低的工作功耗等優點,這使其能夠更好的取代Nand Flash和磁碟等存儲介質,應用於大容量存儲設備中,並表現更優異的性能。目前基於相變存儲器的各項研究在大容量存儲方面所得突破甚少,相變存儲器應用於大容量存儲設備面臨諸多問題。大容量存儲設備的存儲介質,需要有合適的分頁結構以便於計算機系統對其管理和使用,尤其需要適應於文件系統的最小存儲管理單位——簇,但相變存儲器在存儲原理決定了其硬體結構中並不包含分頁結構,僅僅以容量比較大的塊(Block)的形式劃分。而在目前的各種研究和應用中,作為ROM等存儲設備的相變存儲器並沒有分頁方法,因此使相變存儲器難以應用於大容量存儲設備。應用於大容量存儲設備的存儲介質必須通過分頁管理,比如有IOOG容量的硬碟,(PU和作業系統都不能實現直接管理100G的存儲地址,因為它不能對這100G字節的空閒情況都做標記,因為那樣又需要另外的100G存儲空間來存儲這些信息;它只對存儲設備的頁進行管理,只記錄每一頁是否被使用了。如果100G容量的存儲設備中的頁面積為1K,那只需要100M的容量就可以記錄每一個頁是否被使用了。這是目前的作業系統和文件系統對大容量存儲設備管理的標準方法。傳統的大容量存儲設備都是用NandFlash或者磁性碟片構成的,比如固態硬碟和機械硬碟。這兩種存儲介質都是有更小的存儲單元。比如NandFlash:—塊NandFlash晶片包含了很多個塊,而每個塊又由很多個頁組成,這些頁的大小有512B、1KB、2KB、4KB。這種結構是NandFlash的組成原理所決定的。NandFlash的特性就是以塊為最小單位擦除(NandFlash —旦存入數據就不可再次存入或更改,需要採用擦除操作將已經存儲的數據清空,然後才能再次寫入數據),以頁為最小單位讀寫,即每次讀或者寫操作都只能讀出一頁的數據,或者寫入頁的數據,一頁內的數據可以連續的讀寫,不同頁內的數據不能連續讀寫。這是NandFlash的結構特性,是其內部的存儲陣列本身帶有的特性。磁性碟片同樣具有這種小容量的存儲單元,即扇區,通常容量為512B,這也是其本身的特性。這種小容量的存儲單元,能夠滿足作業系統的需求,構成文件系統簇。而相變存儲器的只是由多個塊構成的,每個塊的容量通常為100K以上,不能滿足作業系統的需求,因此要在每一塊內劃分多個頁。目前的NORFlash同樣不含有頁的概念,不過在構成大容量存儲設備時,NandFlash能夠替代NorFlashJfW NorFlash並不用來做大容量存儲。NandFlash的速度、擦寫壽命、功耗等都遠不如相變存儲器,所以要提升大容量存儲設備的性能,使用相變存儲器替換NandFlash是有效的方法。而目前並沒有可以替代PCM來做大容量存儲設備的具有分頁方法的存儲器。相變存儲器作為半導體存儲器,其工作時會不可避免的出現一些錯誤,從而導致計算機系統中致命的問題。這些錯誤分為兩種,一種是硬體損壞導致的硬體錯誤,這種錯誤只能通過硬體修復來處理;第二種是軟體錯誤,可能因為在數據傳輸或存儲過程中受到電磁幹擾或者電壓不穩等因素影響所導致,這類錯誤相對於硬體錯誤而言更容易出現,對存儲設備的穩定性傷害極大,但可以通過對存儲設備的合適管理來大大降低其出現概率。因此,大容量的固態存儲設備都需要一定的錯誤發現和糾正方法,比如奇偶校驗、ECC (ErrorCorrecting Code)校驗和CRC校驗等。其中ECC校驗是快閃記憶體固態硬碟等大容量存儲設備最常用的錯誤發現和糾正技術,其採用奇偶校驗的原理,對由多個字節構成的8位列寬矩陣做奇偶校驗並生成一定位數的校驗碼,以實現發現矩陣中兩位錯誤和更改一位錯誤的能力。在大容量存儲中,通常採用對存儲介質某一頁的數據做ECC校驗的方法來確保存儲設備的準確性。在目前的研究中,相變存儲器並未應用於大容量的存儲中,也沒有分頁方法,因此也並沒有適合於相變存儲器的ECC校驗方法,因此相變存儲器的準確性得不到保證。相變存儲器的讀寫速度雖然已經高於快閃記憶體,但仍然不能滿足計算機系統對大容量存儲設備的速度需求。在DDR SDRAM系列存儲器中,通過多位預取(prefetch)技術可以成倍提高DDR的讀寫速度,在讀操作時,先從多片相對低速的DRAM中一次取出多個DRAM位寬的數據,然後以更高的速度將這多個位寬的數據以串行的方式通過一個位寬的數據通道依次傳出,寫操作時,則將串行輸入的一個位寬數據流拆分為多個位寬的數據分別存入多片低速DRAM,從而成倍的提高DDR的傳輸速度。這種預取技術根據預取位寬個數不同可以分為2-nprefetch(2位預取)、4_nprefetch (4位預取)、8_nprefetch (8位預取)等,分別應用於DDR1、DDR2、DDR3等。當前的相變存儲器研究和應用中,並不採用多位預取方法,如R0M,因此其速度遠不能滿足高速大容量存儲設備的需求。

發明內容
本發明的目的是為克服上述現有技術的不足,提供了基於相變存儲器的分頁、ECC校驗及多位預取方法及其結構。本發明基於相變存儲器設計了其專用的分頁方法,使其更易於在計算機系統中進行管理,可應用於大容量存儲設備中;並設計了與分頁方法相匹配的ECC校驗方法,以提高相變存儲器的準確性和安全性;同時還將多位預取技術應用於分頁後的相變存儲器,使其能夠提供更高的讀寫速率。為實現上述目的,本發明採用下述技術方案:基於相變存儲器的分頁、ECC校驗及多位預取方法,具體步驟如下:I)分頁步驟,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號,作為數據區;同時,在相變存儲器中設定一固定區域作為頁表區,順序存儲每一頁的屬性信息、ECC校驗碼和頁號,每個頁表項固定的指向唯一的一個確定的頁,只有某一頁被更改時,該頁表項才會更改,從而使得頁表區的損耗均衡與數據區一致,便於管理;通過分頁方法,作業系統在管理和使用由相變存儲器構成的大容量存儲設備時,不必像現有的相變存儲器那樣直接面對巨大而繁瑣的地址空間,而是通過管理少量的頁,間接管理相變存儲器所有的存儲單元;2)ECC校驗步驟,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息;3)多位預取步驟,用於通過並行η片m bit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸,從而實現了相變存儲器數據傳輸速率的提高,同時,預取的位數還約束了相變存儲器的頁面積。所述步驟I)的具體方法是:設相變存儲器的數據位寬為d,頁面積為N Byte,多位預取方法中的預取位數為n,根據ECC校驗的最佳數據矩陣構成將ECC校驗的基本單位確定為a字節的數據,文件系統的對外存的最小存儲管理單位——簇的大小為b Kbyte,根據公式:dXN=b ;N=a* (d + n) e,e為大於等於零的整數;N取符合所述公式的最小值,推算出N的值。作業系統對大容量的存儲設備進行管理和應用時,都是將存儲設備的存儲空間劃分成小容量的最小存儲管理單位。為了便於作業系統通過簇等基本存儲單位對相變存儲器構成的存儲設備進行管理,需要對相變存儲器進行分頁(page),使作業系統的最小存儲管理單位能夠由一個或多個頁組成,這樣可以避免簇等最小存儲管理單位直接面對存儲設備巨大的尋址空間,同時為作業系統對存儲設備的分區提供了硬體基礎。在作業系統中,文件系統等存儲設備管理模塊的最小存儲管理單位大小通常有4KB和8KB等。而ECC校驗方法是對某一連續數據塊進行校驗,這個數據塊的大小將影響到ECC校驗的準確性和存儲器的存儲效率:數據塊太大將降低ECC校驗的準確性,而數據塊太小則需要更多的額外存儲空間來存儲ECC校驗值。因此,合理的ECC校驗數據塊大小為256B或者512B。為了方便對相變存儲器進行ECC校驗,需要將其每頁的大小與ECC校驗數據塊大小匹配;考慮到現有的相變存儲器多為16位數據總線,而ECC校驗的數據塊行位寬為8位,所以相變存儲器的頁容量需要設計為ECC校驗數據塊的兩倍。同時,預取技術主要通過將多片相變存儲器晶片陣列的數據總線並行讀寫來實現,在本發明中通過並行8片16位數據總線的相變存儲器來實現8位預取。為了使相變存儲器的頁面積(page size)能夠適應作業系統的文件系統塊,需要使這8片相變存儲器的頁面積之和小於或等於文件系統塊的大小。已知ECC校驗的最佳數據矩陣構成為256行X8列和512行X8列,即每256位元組或512位元組的數據作為ECC校驗的基本單位進行一次校驗,而文件系統的對外存的最小存儲管理單位——簇的大小為4Kbyte或8Kbyte,將相變存儲器的頁容量設定為ECC校驗數據塊的兩倍,8片相變存儲器的頁面積之和小於或等於文件系統塊的大小,設分頁方法中每頁的大小為N,N的單位為Byte,約束條件如下:8父#41(或者81(;N=256*2e,e為大於等於零的整數;N取符合所述公式的最小值,從而推算出N的值為512Byte,即相變存儲器的頁面積 page size 為 512Byte。為了管理每一個頁,需要設計一個頁表以確定每個頁的具體地址等信息。同時,相變存儲器具有有限的寫壽命,因此需要設計合適的損耗均衡機制,使每一頁都被以相同的頻率使用,避免部分頁被過於頻繁的使用而過早損壞,從而儘可能的提高相變存儲器的整體使用壽命,因此需要設計一個虛擬頁表,用來存儲每一頁的虛擬頁號,即上層作業系統等授予的頁號。物理頁號(即每一頁的實際頁號)和虛擬頁號之間需要滿足如下映射關係:任意虛擬頁號都能找到唯一與之相對應的物理頁號,即作業系統等通過其已知的某個虛擬頁號,可以訪問唯一一個物理頁。當某一物理頁的數據被改變時,採用區域外更新技術,將這一頁在頁表中標記為廢頁,將其新內容存到另一個新頁中,並將其虛擬頁號更改為原先廢頁的虛擬頁號。在本發明的分頁方法中,相變存儲器中設定一小部分固定空間用來存儲每頁的頁號和屬性信息等,構成一個頁表區。頁表區為每一個頁都保存了一個頁表項,包含若干字節,用來保存每一頁的ECC校驗信息、屬性信息和虛擬頁號;各個頁表項在頁表區中按其所指向的物理頁的地址依次順序排列,因此根據頁表項的地址即可確定其所指向頁的物理地址和物理頁號,頁表項的順序號即為物理頁號。上層作業系統在訪問相變存儲器時會給出一個虛擬頁號,根據這個虛擬頁號,在頁表區中能夠找到其所對應的頁表項,從而確定作業系統所需要的物理頁。同時,每個頁表項只在其所指向的物理頁發生改變時才會回改變,頁表區的更改頻率與數據區的一致,只需控制數據區的損耗均衡就能保證頁表區的損耗均衡,從而解決了以往大容量存儲中頁表區損耗均衡不能統一管理的問題。所述步驟2)的具體方法是:21)將相變存儲器的每個頁分成兩個ECC校驗數據塊分別進行ECC校驗,每個字的高低字節分別作為兩個ECC校驗數據塊的一行,形成兩個8X256的校驗矩陣,並各生成一個22位的校驗碼,在22位校驗碼中,有6位列校驗碼和16位行校驗碼;將ECC校驗矩陣分別生成合適的校驗碼,並在校驗碼中附加標識碼,用來記錄該ECC校驗矩陣的行在相變存儲器數據總線中的位置;當相變存儲器的數據位寬大於8位時(通常為8的倍數),每頁被分成多個ECC校驗矩陣,這多個校驗矩陣復用同一個ECC校驗模塊。添加ECC校驗後,相變存儲器的準確性比現在沒有ECC校驗保護的相變存儲器提高了很多;22)這22位校驗碼存儲時佔用三個連續字節,其中三個字節的最高位恆置1,次高位標示該校驗碼的行來源:1標示該校驗碼的行取該頁每個字的高字節,O則標示取自低字節。為了便於管理這些校驗碼,設定校驗碼存儲於的頁表中;23 )每個頁所分成的兩個ECC校驗數據塊由同一個ECC校驗模塊進行校驗,並採用流水線方式依次輪流通過ECC校驗模塊。所述步驟23)中,當16位外部數據通過ECC校驗模塊時,每個字的高字節和低字節依次先後進入ECC校驗模塊,然後在進入相變存儲器時合併為一個字同時進入。所述步驟3)中,多位預取方法是:8片16位相變存儲器並行連接成一個16位存儲陣列,8片相變存儲器的數據總線並發傳輸數據,即構成了 128位的數據總線,同時將這128位數據總線分8次傳給存儲陣列的16位數據總線。上述基於相變存儲器的分頁、ECC檢驗及多位預取方法所採用的硬體結構,包括:分頁模塊,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號;同時,在相變存儲器中動態設定一區域作為頁表區,順序存儲每一頁的屬性信息和頁號;ECC校驗模塊,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息;多位預取模塊,用於通過並行η片m bit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸。本發明的有益效果是,本發明提供了基於相變存儲器的分頁方法,填補了目前對這方面研究的空白,使相變存儲器能夠取代NandFlash應用於高速的大容量存儲設備,解決了相變存儲器沒有合適的頁單位這一問題,同時還提供了相應的ECC校驗方法,有效的提高了相變存儲器的準確性,並應用了多位預取技術來提高相變存儲器的讀寫速度。現有的相變存儲器應用中不採用分頁方法,沒有有效的多位預取方法,數據傳輸速率遠不如本發明。本發明的分頁方法是針對大容量存儲的,是使用相變存儲器替代NandFlash來做大容量存儲,而且,相變存儲器的速度更快、功耗更低、壽命更長,本發明有效解決了相變存儲器在應用於大容量存儲設備時的問題。


圖1是預取方法的流程圖;圖2是相變存儲器的分頁結構圖;圖3是相變存儲器的ECC校驗結構圖;圖4是相變存儲器的多位預取結構圖;圖5是相變存儲器的分頁方法整體結構圖;圖6是頁表區結構示意圖。
具體實施例方式下面結合附圖和實施例對本發明進行進一步的闡述,應該說明的是,下述說明僅是為了解釋本發明,並不對其內容進行限定。基於相變存儲器的分頁、ECC校驗及多位預取方法,具體步驟如下:
I)分頁步驟,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號,作為數據區;同時,在相變存儲器中設定一固定區域作為頁表區,順序存儲每一頁的屬性信息、ECC校驗碼和頁號,每個頁表項固定的指向唯一的一個確定的頁,只有某一頁被更改時,該頁表項才會更改,從而使得頁表區的損耗均衡與數據區一致,便於管理;通過分頁方法,作業系統在管理和使用由相變存儲器構成的大容量存儲設備時,不必像現有的相變存儲器那樣直接面對巨大而繁瑣的地址空間,而是通過管理少量的頁,間接管理相變存儲器所有的存儲單元;2)ECC校驗步驟,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息;3)多位預取步驟,用於通過並行η片m bit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸,從而實現了相變存儲器數據傳輸速率的提高,同時,預取的位數還約束了相變存儲器的頁面積。其結構圖如圖4所示。所述步驟I)的具體方法是:已知ECC校驗的最佳數據矩陣構成為256行X8列和512行X8列,即每256位元組或512位元組的數據作為ECC校驗的基本單位進行一次校驗,而文件系統的對外存的最小存儲管理單位——簇的大小為4Kbyte或8Kbyte,將相變存儲器的頁容量設定為ECC校驗數據塊的兩倍,8片相變存儲器的頁面積之和小於或等於文件系統塊的大小,設分頁方法中每頁的大小為N,N的單位為Byte,約束條件如下:8父#41(或者81(;N=256*2e,e為大於等於零的整數;N取符合所述公式的最小值,從而推算出N的值為512Byte,即相變存儲器的頁面積 page size 為 512Byte。作業系統對大容量的存儲設備進行管理和應用時,都是將存儲設備的存儲空間劃分成小容量的最小存儲管理單位。為了便於作業系統通過簇等基本存儲單位對相變存儲器構成的存儲設備進行管理,需要對相變存儲器進行分頁(page),使作業系統的最小存儲管理單位能夠由一個或多個頁組成,這樣可以避免簇等最小存儲管理單位直接面對存儲設備巨大的尋址空間,同時為作業系統對存儲設備的分區提供了硬體基礎。在作業系統中,文件系統等存儲設備管理模塊的最小存儲管理單位大小通常有4KB和8KB等。而ECC校驗方法是對某一連續數據塊進行校驗,這個數據塊的大小將影響到ECC校驗的準確性和存儲器的存儲效率:數據塊太大將降低ECC校驗的準確性,而數據塊太小則需要更多的額外存儲空間來存儲ECC校驗值。因此,合理的ECC校驗數據塊大小為256B或者512B。為了方便對相變存儲器進行ECC校驗,需要將其每頁的大小與ECC校驗數據塊大小匹配;考慮到現有的相變存儲器多為16位數據總線,而ECC校驗的數據塊行位寬為8位,所以相變存儲器的頁容量需要設計為ECC校驗數據塊的兩倍。同時,預取技術主要通過將多片相變存儲器晶片陣列的數據總線並行讀寫來實現,在本發明中通過並行8片16位數據總線的相變存儲器來實現8位預取。為了使相變存儲器的頁面積(page size)能夠適應作業系統的文件系統塊,需要使這8片相變存儲器的頁面積之和小於或等於文件系統塊的大小。分頁結構圖如圖2所示。為了管理每一個頁,需要設計一個頁表以確定每個頁的具體地址等信息。同時,相變存儲器具有有限的寫壽命,因此需要設計合適的損耗均衡機制,使每一頁都被以相同的頻率使用,避免部分頁被過於頻繁的使用而過早損壞,從而儘可能的提高相變存儲器的整體使用壽命,因此需要設計一個虛擬頁表,用來存儲每一頁的虛擬頁號,即上層作業系統等授予的頁號。物理頁號(即每一頁的實際頁號)和虛擬頁號之間需要滿足如下映射關係:任意虛擬頁號都能找到唯一與之相對應的物理頁號,即作業系統等通過其已知的某個虛擬頁號,可以訪問唯一一個物理頁。當某一物理頁的數據被改變時,採用區域外更新技術,將這一頁在頁表中標記為廢頁,將其新內容存到另一個新頁中,並將其虛擬頁號更改為原先廢頁的虛擬頁號。在本發明的分頁方法中,相變存儲器中設定一小部分固定空間用來存儲每頁的頁號和屬性信息等,構成一個頁表區。頁表區為每一個頁都保存了一個頁表項,包含若干字節,用來保存每一頁的ECC校驗信息、屬性信息和虛擬頁號;各個頁表項在頁表區中按其所指向的物理頁的地址依次順序排列,因此根據頁表項的地址即可確定其所指向頁的物理地址和物理頁號,頁表項的順序號即為物理頁號。上層作業系統在訪問相變存儲器時會給出一個虛擬頁號,根據這個虛擬頁號,在頁表區中能夠找到其所對應的頁表項,從而確定作業系統所需要的物理頁。同時,每個頁表項只在其所指向的物理頁發生改變時才會回改變,頁表區的更改頻率與數據區的一致,只需控制數據區的損耗均衡就能保證頁表區的損耗均衡,從而解決了以往大容量存儲中頁表區損耗均衡不能統一管理的問題。頁表區結構見圖6。步驟2)中,所述ECC校驗方法的具體方法是: 21)將相變存儲器的每個頁分成兩個ECC校驗數據塊分別進行ECC校驗,參見圖3,每個字的高低字節分別作為兩個ECC校驗數據塊的一行,形成兩個8 X 256的校驗矩陣,並各生成一個22位的校驗碼,在22位校驗碼中,有6位列校驗碼和16位行校驗碼;將ECC校驗矩陣分別生成合適的校驗碼,並在校驗碼中附加標識碼,用來記錄該ECC校驗矩陣的行在相變存儲器數據總線中的位置;當相變存儲器的數據位寬大於8位時(通常為8的倍數),每頁被分成多個ECC校驗矩陣,這多個校驗矩陣復用同一個ECC校驗模塊。添加ECC校驗後,相變存儲器的準確性比現在沒有ECC校驗保護的相變存儲器提高了很多;22)這22位校驗碼存儲時佔用三個連續字節,其中三個字節的最高位恆置1,次高位標示該校驗碼的行來源:1標示該校驗碼的行取該頁每個字的高字節,O則標示取自低字節。為了便於管理這些校驗碼,設定校驗碼存儲於的頁表中;23 )每個頁所分成的兩個ECC校驗數據塊由同一個ECC校驗模塊進行校驗,並採用流水線方式依次輪流通過ECC校驗模塊。所述步驟23)中,當16位外部數據通過ECC校驗模塊時,每個字的高字節和低字節依次先後進入ECC校驗模塊,然後在進入相變存儲器時合併為一個字同時進入。所述步驟3)是:8片16位相變存儲器並行連接成一個16位存儲陣列,8片相變存儲器的數據總線並發傳輸數據,即構成了 128位的數據總線,同時將這128位數據總線分8次傳給存儲陣列的16位數據總線。本發明對相變存儲器每個晶片的每一頁生成兩段ECC校驗碼,每段校驗碼能糾正半頁中的一位錯誤,發現兩位錯誤,因此每頁總體而言能夠通過ECC校驗糾正大部分的兩位錯誤,發現大部分的四位錯誤,與當前通用的不加ECC校驗的相變存儲器相比,顯著的提高了安全性和準確性。本發明中還設計了適用於相變存儲器的8位預取技術(8-nprefetch),使以此技術設計的大容量存儲設備能夠實現單片相變存儲器8倍的速度。綜合上述技術,通過FPGA設計相變存儲器的控制器,實現了相變存儲器的分頁方法、ECC方法和多位預取技術。整體結構圖見圖5。上述基於相變存儲器的分頁、ECC檢驗及多位預取方法所採用的硬體結構,包括:分頁模塊,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號;同時,在相變存儲器中動態設定一區域作為頁表區,順序存儲每一頁的屬性信息和頁號;ECC校驗模塊,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息;多位預取模塊,用於通過並行η片m bit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸。上述雖然結合附圖對本發明的具體實施方式
進行了描述,但並非對本發明保護範圍的限制,在本發明的技術方案的基礎上,本領域技術人員不需要付出創造性勞動即可做出的各種修改或變形仍在本發明的保護範圍以內。
權利要求
1.基於相變存儲器的分頁、ECC校驗及多位預取方法,其特徵在於,具體步驟如下: 1)分頁步驟,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號,作為數據區;同時,在相變存儲器中設定一固定區域作為頁表區,順序存儲每一頁的屬性信息、ECC校驗碼和頁號,每個頁表項固定的指向一個確定的頁,只有某一頁被更改時,該頁表項才會更改,從而使得頁表區的損耗均衡與數據區一致; 2)ECC校驗步驟,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息; 3)多位預取步驟,用於通過並行η片mbit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸。
2.根據權利要求1所述的基於相變存儲器的分頁、ECC校驗及多位預取方法,其特徵在於,所述步驟I)的具體方法是:設相變存儲器的數據位寬為d,頁面積為N Byte,多位預取方法中的預取位數為n ,根據ECC校驗的最佳數據矩陣構成將ECC校驗的基本單位確定為a字節的數據,文件系統的對外存的最小存儲管理單位——簇的大小為b Kbyte,根據公式:dXN=b ; N=a* (d + n) % e為大於等於零的整數; 推算出N的值。
3.根據權利要求1所述的基於相變存儲器的分頁、ECC校驗及多位預取方法,其特徵在於,所述步驟2)的具體方法是: 21)將相變存儲器的每個頁分成兩個ECC校驗數據塊分別進行ECC校驗,每個字的高低字節分別作為兩個ECC校驗數據塊的一行,形成兩個8 X 256的校驗矩陣,並各生成一個22位的校驗碼,在22位校驗碼中,有6位列校驗碼和16位行校驗碼; 22)這22位校驗碼存儲時佔用三個連續字節,其中三個字節的最高位恆置1,次高位標示該校驗碼的行來源:1標示該校驗碼的行取該頁每個字的高字節,O則標示取自低字節。為了便於管理這些校驗碼,設定校驗碼存儲於的頁表中; 23)每個頁所分成的兩個ECC校驗數據塊由同一個ECC校驗模塊進行校驗,並採用流水線方式依次輪流通過ECC校驗模塊。
4.根據權利要求4所述的基於相變存儲器的分頁、ECC校驗及多位預取方法,其特徵在於,所述步驟23)中,當16位外部數據通過ECC校驗模塊時,每個字的高字節和低字節依次先後進入ECC校驗模塊,然後在進入相變存儲器時合併為一個字同時進入。
5.根據權利要求4所述的基於相變存儲器的分頁、ECC校驗及多位預取方法,其特徵在於,所述步驟3)中,8片16位相變存儲器並行連接成一個16位存儲陣列,8片相變存儲器的數據總線並發傳輸數據,即構成了 128位的數據總線,同時將這128位數據總線分8次傳給存儲陣列的16位數據總線。
6.上述任一項權利要求所述方法所採用的硬體結構,其特徵在於,包括: 分頁模塊,用於實現確定每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號;同時,在相變存儲器中動態設定一區域作為頁表區,順序存儲每一頁的屬性信息和頁號;ECC校驗模塊,用於實現ECC校驗,以頁表區儲存每一頁的ECC校驗碼和使用情況的屬性信息; 多位預取模塊,用於通過並行η片m bit位寬的相變存儲器,將η片相變存儲器的η個m bit位寬數據總線每次傳輸的數據依次排列,合併為一個m bit位寬的高速串行數據流,並通過上層接口的m bit位寬數據總線依次傳輸。
全文摘要
本發明公開了基於相變存儲器的分頁、ECC校驗及多位預取方法及其結構。本發明基於相變存儲器設計了其專用的分頁方法,使其易於管理並可應用於大容量存儲設備中;設計了與分頁方法相匹配的ECC校驗方法,以提高相變存儲器的準確性和安全性;還將多位預取技術應用於分頁後的相變存儲器,使其讀寫速率更高。具體步驟如下1)分頁步驟確定相變存儲器分頁方法中每一頁的面積,進而將相變存儲器中的每一塊劃分為若干個相同大小的連續的頁,並按照包含的地址順序對其編號;在相變存儲器中動態設定一區域作為頁表區,順序存儲每一頁的屬性信息和頁號;2)ECC校驗步驟;3)多位預取步驟。
文檔編號G06F12/02GK103164343SQ20131006174
公開日2013年6月19日 申請日期2013年2月27日 優先權日2013年2月27日
發明者賈智平, 李新, 劉鵬, 申兆巖 申請人:山東大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀