專利名稱:基于相變存儲(chǔ)器的分頁、ecc校驗(yàn)及多位預(yù)取方法及其結(jié)構(gòu)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法及其結(jié)構(gòu)。
背景技術(shù):
相變存儲(chǔ)器(Phase-change memory,簡(jiǎn)稱PCM)是一種新型的非易失性存儲(chǔ)器,其基本成分是以硫系化合物為基礎(chǔ)的相變材料。利用硫系化合物相變材料存儲(chǔ)信息,主要根據(jù)硫系化合物在無序(非晶態(tài))與有序(晶態(tài))兩態(tài)時(shí)差距明顯的電阻值來實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)的O和I態(tài),其中非晶態(tài)的電阻值比晶態(tài)的電阻值高出3-4個(gè)數(shù)量級(jí)。硫系化合物能在電流脈沖下出現(xiàn)快速相變,在兩個(gè)物理狀態(tài)(晶態(tài)和非晶態(tài))之間快速轉(zhuǎn)換,由其構(gòu)成的相變存儲(chǔ)器也因此表現(xiàn)出了可編程的電氣特性,能夠有效的存儲(chǔ)數(shù)據(jù)。相變存儲(chǔ)器具有非易失性,支持隨機(jī)讀寫。與現(xiàn)有的常用半導(dǎo)體存儲(chǔ)器相比,相變存儲(chǔ)器具有優(yōu)秀的性能:與SDRAM、SRAM相比,相變存儲(chǔ)器具有非易失性;與閃存相比,其有更高的讀寫速度、更低的功耗和更長(zhǎng)的使用壽命。另外,隨著制造工藝的發(fā)展,相變存儲(chǔ)器的性能將更加優(yōu)秀,而SRAM、DRAM和閃存等存儲(chǔ)器的制造工藝已經(jīng)趨近極限,發(fā)展逐漸放緩。在當(dāng)前的研究和應(yīng)用中,大容量的存儲(chǔ)設(shè)備通常以Nand Flash或者磁盤等為存儲(chǔ)介質(zhì),如硬盤和記憶卡等,相變存儲(chǔ)器多被用來替換Nor Flash作為ROM存儲(chǔ),這主要是應(yīng)用了相變存儲(chǔ)器的隨機(jī)讀寫能力和非易失性,例如三星公司已經(jīng)在部分手機(jī)設(shè)計(jì)中應(yīng)用了相變存儲(chǔ)器來替換Nor Flash作為ROM。但相變存儲(chǔ)器具有更高的讀寫速度、更長(zhǎng)的使用壽命和更低的工作功耗等優(yōu)點(diǎn),這使其能夠更好的取代Nand Flash和磁盤等存儲(chǔ)介質(zhì),應(yīng)用于大容量存儲(chǔ)設(shè)備中,并表現(xiàn)更優(yōu)異的性能。目前基于相變存儲(chǔ)器的各項(xiàng)研究在大容量存儲(chǔ)方面所得突破甚少,相變存儲(chǔ)器應(yīng)用于大容量存儲(chǔ)設(shè)備面臨諸多問題。大容量存儲(chǔ)設(shè)備的存儲(chǔ)介質(zhì),需要有合適的分頁結(jié)構(gòu)以便于計(jì)算機(jī)系統(tǒng)對(duì)其管理和使用,尤其需要適應(yīng)于文件系統(tǒng)的最小存儲(chǔ)管理單位——簇,但相變存儲(chǔ)器在存儲(chǔ)原理決定了其硬件結(jié)構(gòu)中并不包含分頁結(jié)構(gòu),僅僅以容量比較大的塊(Block)的形式劃分。而在目前的各種研究和應(yīng)用中,作為ROM等存儲(chǔ)設(shè)備的相變存儲(chǔ)器并沒有分頁方法,因此使相變存儲(chǔ)器難以應(yīng)用于大容量存儲(chǔ)設(shè)備。應(yīng)用于大容量存儲(chǔ)設(shè)備的存儲(chǔ)介質(zhì)必須通過分頁管理,比如有IOOG容量的硬盤,(PU和操作系統(tǒng)都不能實(shí)現(xiàn)直接管理100G的存儲(chǔ)地址,因?yàn)樗荒軐?duì)這100G字節(jié)的空閑情況都做標(biāo)記,因?yàn)槟菢佑中枰硗獾?00G存儲(chǔ)空間來存儲(chǔ)這些信息;它只對(duì)存儲(chǔ)設(shè)備的頁進(jìn)行管理,只記錄每一頁是否被使用了。如果100G容量的存儲(chǔ)設(shè)備中的頁面積為1K,那只需要100M的容量就可以記錄每一個(gè)頁是否被使用了。這是目前的操作系統(tǒng)和文件系統(tǒng)對(duì)大容量存儲(chǔ)設(shè)備管理的標(biāo)準(zhǔn)方法。傳統(tǒng)的大容量存儲(chǔ)設(shè)備都是用NandFlash或者磁性盤片構(gòu)成的,比如固態(tài)硬盤和機(jī)械硬盤。這兩種存儲(chǔ)介質(zhì)都是有更小的存儲(chǔ)單元。比如NandFlash:—塊NandFlash芯片包含了很多個(gè)塊,而每個(gè)塊又由很多個(gè)頁組成,這些頁的大小有512B、1KB、2KB、4KB。這種結(jié)構(gòu)是NandFlash的組成原理所決定的。NandFlash的特性就是以塊為最小單位擦除(NandFlash —旦存入數(shù)據(jù)就不可再次存入或更改,需要采用擦除操作將已經(jīng)存儲(chǔ)的數(shù)據(jù)清空,然后才能再次寫入數(shù)據(jù)),以頁為最小單位讀寫,即每次讀或者寫操作都只能讀出一頁的數(shù)據(jù),或者寫入頁的數(shù)據(jù),一頁內(nèi)的數(shù)據(jù)可以連續(xù)的讀寫,不同頁內(nèi)的數(shù)據(jù)不能連續(xù)讀寫。這是NandFlash的結(jié)構(gòu)特性,是其內(nèi)部的存儲(chǔ)陣列本身帶有的特性。磁性盤片同樣具有這種小容量的存儲(chǔ)單元,即扇區(qū),通常容量為512B,這也是其本身的特性。這種小容量的存儲(chǔ)單元,能夠滿足操作系統(tǒng)的需求,構(gòu)成文件系統(tǒng)簇。而相變存儲(chǔ)器的只是由多個(gè)塊構(gòu)成的,每個(gè)塊的容量通常為100K以上,不能滿足操作系統(tǒng)的需求,因此要在每一塊內(nèi)劃分多個(gè)頁。目前的NORFlash同樣不含有頁的概念,不過在構(gòu)成大容量存儲(chǔ)設(shè)備時(shí),NandFlash能夠替代NorFlashJfW NorFlash并不用來做大容量存儲(chǔ)。NandFlash的速度、擦寫壽命、功耗等都遠(yuǎn)不如相變存儲(chǔ)器,所以要提升大容量存儲(chǔ)設(shè)備的性能,使用相變存儲(chǔ)器替換NandFlash是有效的方法。而目前并沒有可以替代PCM來做大容量存儲(chǔ)設(shè)備的具有分頁方法的存儲(chǔ)器。相變存儲(chǔ)器作為半導(dǎo)體存儲(chǔ)器,其工作時(shí)會(huì)不可避免的出現(xiàn)一些錯(cuò)誤,從而導(dǎo)致計(jì)算機(jī)系統(tǒng)中致命的問題。這些錯(cuò)誤分為兩種,一種是硬件損壞導(dǎo)致的硬件錯(cuò)誤,這種錯(cuò)誤只能通過硬件修復(fù)來處理;第二種是軟件錯(cuò)誤,可能因?yàn)樵跀?shù)據(jù)傳輸或存儲(chǔ)過程中受到電磁干擾或者電壓不穩(wěn)等因素影響所導(dǎo)致,這類錯(cuò)誤相對(duì)于硬件錯(cuò)誤而言更容易出現(xiàn),對(duì)存儲(chǔ)設(shè)備的穩(wěn)定性傷害極大,但可以通過對(duì)存儲(chǔ)設(shè)備的合適管理來大大降低其出現(xiàn)概率。因此,大容量的固態(tài)存儲(chǔ)設(shè)備都需要一定的錯(cuò)誤發(fā)現(xiàn)和糾正方法,比如奇偶校驗(yàn)、ECC (ErrorCorrecting Code)校驗(yàn)和CRC校驗(yàn)等。其中ECC校驗(yàn)是閃存固態(tài)硬盤等大容量存儲(chǔ)設(shè)備最常用的錯(cuò)誤發(fā)現(xiàn)和糾正技術(shù),其采用奇偶校驗(yàn)的原理,對(duì)由多個(gè)字節(jié)構(gòu)成的8位列寬矩陣做奇偶校驗(yàn)并生成一定位數(shù)的校驗(yàn)碼,以實(shí)現(xiàn)發(fā)現(xiàn)矩陣中兩位錯(cuò)誤和更改一位錯(cuò)誤的能力。在大容量存儲(chǔ)中,通常采用對(duì)存儲(chǔ)介質(zhì)某一頁的數(shù)據(jù)做ECC校驗(yàn)的方法來確保存儲(chǔ)設(shè)備的準(zhǔn)確性。在目前的研究中,相變存儲(chǔ)器并未應(yīng)用于大容量的存儲(chǔ)中,也沒有分頁方法,因此也并沒有適合于相變存儲(chǔ)器的ECC校驗(yàn)方法,因此相變存儲(chǔ)器的準(zhǔn)確性得不到保證。相變存儲(chǔ)器的讀寫速度雖然已經(jīng)高于閃存,但仍然不能滿足計(jì)算機(jī)系統(tǒng)對(duì)大容量存儲(chǔ)設(shè)備的速度需求。在DDR SDRAM系列存儲(chǔ)器中,通過多位預(yù)取(prefetch)技術(shù)可以成倍提高DDR的讀寫速度,在讀操作時(shí),先從多片相對(duì)低速的DRAM中一次取出多個(gè)DRAM位寬的數(shù)據(jù),然后以更高的速度將這多個(gè)位寬的數(shù)據(jù)以串行的方式通過一個(gè)位寬的數(shù)據(jù)通道依次傳出,寫操作時(shí),則將串行輸入的一個(gè)位寬數(shù)據(jù)流拆分為多個(gè)位寬的數(shù)據(jù)分別存入多片低速DRAM,從而成倍的提高DDR的傳輸速度。這種預(yù)取技術(shù)根據(jù)預(yù)取位寬個(gè)數(shù)不同可以分為2-nprefetch(2位預(yù)取)、4_nprefetch (4位預(yù)取)、8_nprefetch (8位預(yù)取)等,分別應(yīng)用于DDR1、DDR2、DDR3等。當(dāng)前的相變存儲(chǔ)器研究和應(yīng)用中,并不采用多位預(yù)取方法,如R0M,因此其速度遠(yuǎn)不能滿足高速大容量存儲(chǔ)設(shè)備的需求。
發(fā)明內(nèi)容
本發(fā)明的目的是為克服上述現(xiàn)有技術(shù)的不足,提供了基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法及其結(jié)構(gòu)。本發(fā)明基于相變存儲(chǔ)器設(shè)計(jì)了其專用的分頁方法,使其更易于在計(jì)算機(jī)系統(tǒng)中進(jìn)行管理,可應(yīng)用于大容量存儲(chǔ)設(shè)備中;并設(shè)計(jì)了與分頁方法相匹配的ECC校驗(yàn)方法,以提高相變存儲(chǔ)器的準(zhǔn)確性和安全性;同時(shí)還將多位預(yù)取技術(shù)應(yīng)用于分頁后的相變存儲(chǔ)器,使其能夠提供更高的讀寫速率。為實(shí)現(xiàn)上述目的,本發(fā)明采用下述技術(shù)方案:基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,具體步驟如下:I)分頁步驟,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào),作為數(shù)據(jù)區(qū);同時(shí),在相變存儲(chǔ)器中設(shè)定一固定區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息、ECC校驗(yàn)碼和頁號(hào),每個(gè)頁表項(xiàng)固定的指向唯一的一個(gè)確定的頁,只有某一頁被更改時(shí),該頁表項(xiàng)才會(huì)更改,從而使得頁表區(qū)的損耗均衡與數(shù)據(jù)區(qū)一致,便于管理;通過分頁方法,操作系統(tǒng)在管理和使用由相變存儲(chǔ)器構(gòu)成的大容量存儲(chǔ)設(shè)備時(shí),不必像現(xiàn)有的相變存儲(chǔ)器那樣直接面對(duì)巨大而繁瑣的地址空間,而是通過管理少量的頁,間接管理相變存儲(chǔ)器所有的存儲(chǔ)單元;2)ECC校驗(yàn)步驟,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息;3)多位預(yù)取步驟,用于通過并行η片m bit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸,從而實(shí)現(xiàn)了相變存儲(chǔ)器數(shù)據(jù)傳輸速率的提高,同時(shí),預(yù)取的位數(shù)還約束了相變存儲(chǔ)器的頁面積。所述步驟I)的具體方法是:設(shè)相變存儲(chǔ)器的數(shù)據(jù)位寬為d,頁面積為N Byte,多位預(yù)取方法中的預(yù)取位數(shù)為n,根據(jù)ECC校驗(yàn)的最佳數(shù)據(jù)矩陣構(gòu)成將ECC校驗(yàn)的基本單位確定為a字節(jié)的數(shù)據(jù),文件系統(tǒng)的對(duì)外存的最小存儲(chǔ)管理單位——簇的大小為b Kbyte,根據(jù)公式:dXN=b ;N=a* (d + n) e,e為大于等于零的整數(shù);N取符合所述公式的最小值,推算出N的值。操作系統(tǒng)對(duì)大容量的存儲(chǔ)設(shè)備進(jìn)行管理和應(yīng)用時(shí),都是將存儲(chǔ)設(shè)備的存儲(chǔ)空間劃分成小容量的最小存儲(chǔ)管理單位。為了便于操作系統(tǒng)通過簇等基本存儲(chǔ)單位對(duì)相變存儲(chǔ)器構(gòu)成的存儲(chǔ)設(shè)備進(jìn)行管理,需要對(duì)相變存儲(chǔ)器進(jìn)行分頁(page),使操作系統(tǒng)的最小存儲(chǔ)管理單位能夠由一個(gè)或多個(gè)頁組成,這樣可以避免簇等最小存儲(chǔ)管理單位直接面對(duì)存儲(chǔ)設(shè)備巨大的尋址空間,同時(shí)為操作系統(tǒng)對(duì)存儲(chǔ)設(shè)備的分區(qū)提供了硬件基礎(chǔ)。在操作系統(tǒng)中,文件系統(tǒng)等存儲(chǔ)設(shè)備管理模塊的最小存儲(chǔ)管理單位大小通常有4KB和8KB等。而ECC校驗(yàn)方法是對(duì)某一連續(xù)數(shù)據(jù)塊進(jìn)行校驗(yàn),這個(gè)數(shù)據(jù)塊的大小將影響到ECC校驗(yàn)的準(zhǔn)確性和存儲(chǔ)器的存儲(chǔ)效率:數(shù)據(jù)塊太大將降低ECC校驗(yàn)的準(zhǔn)確性,而數(shù)據(jù)塊太小則需要更多的額外存儲(chǔ)空間來存儲(chǔ)ECC校驗(yàn)值。因此,合理的ECC校驗(yàn)數(shù)據(jù)塊大小為256B或者512B。為了方便對(duì)相變存儲(chǔ)器進(jìn)行ECC校驗(yàn),需要將其每頁的大小與ECC校驗(yàn)數(shù)據(jù)塊大小匹配;考慮到現(xiàn)有的相變存儲(chǔ)器多為16位數(shù)據(jù)總線,而ECC校驗(yàn)的數(shù)據(jù)塊行位寬為8位,所以相變存儲(chǔ)器的頁容量需要設(shè)計(jì)為ECC校驗(yàn)數(shù)據(jù)塊的兩倍。同時(shí),預(yù)取技術(shù)主要通過將多片相變存儲(chǔ)器芯片陣列的數(shù)據(jù)總線并行讀寫來實(shí)現(xiàn),在本發(fā)明中通過并行8片16位數(shù)據(jù)總線的相變存儲(chǔ)器來實(shí)現(xiàn)8位預(yù)取。為了使相變存儲(chǔ)器的頁面積(page size)能夠適應(yīng)操作系統(tǒng)的文件系統(tǒng)塊,需要使這8片相變存儲(chǔ)器的頁面積之和小于或等于文件系統(tǒng)塊的大小。已知ECC校驗(yàn)的最佳數(shù)據(jù)矩陣構(gòu)成為256行X8列和512行X8列,即每256字節(jié)或512字節(jié)的數(shù)據(jù)作為ECC校驗(yàn)的基本單位進(jìn)行一次校驗(yàn),而文件系統(tǒng)的對(duì)外存的最小存儲(chǔ)管理單位——簇的大小為4Kbyte或8Kbyte,將相變存儲(chǔ)器的頁容量設(shè)定為ECC校驗(yàn)數(shù)據(jù)塊的兩倍,8片相變存儲(chǔ)器的頁面積之和小于或等于文件系統(tǒng)塊的大小,設(shè)分頁方法中每頁的大小為N,N的單位為Byte,約束條件如下:8父#41(或者81(;N=256*2e,e為大于等于零的整數(shù);N取符合所述公式的最小值,從而推算出N的值為512Byte,即相變存儲(chǔ)器的頁面積 page size 為 512Byte。為了管理每一個(gè)頁,需要設(shè)計(jì)一個(gè)頁表以確定每個(gè)頁的具體地址等信息。同時(shí),相變存儲(chǔ)器具有有限的寫壽命,因此需要設(shè)計(jì)合適的損耗均衡機(jī)制,使每一頁都被以相同的頻率使用,避免部分頁被過于頻繁的使用而過早損壞,從而盡可能的提高相變存儲(chǔ)器的整體使用壽命,因此需要設(shè)計(jì)一個(gè)虛擬頁表,用來存儲(chǔ)每一頁的虛擬頁號(hào),即上層操作系統(tǒng)等授予的頁號(hào)。物理頁號(hào)(即每一頁的實(shí)際頁號(hào))和虛擬頁號(hào)之間需要滿足如下映射關(guān)系:任意虛擬頁號(hào)都能找到唯一與之相對(duì)應(yīng)的物理頁號(hào),即操作系統(tǒng)等通過其已知的某個(gè)虛擬頁號(hào),可以訪問唯一一個(gè)物理頁。當(dāng)某一物理頁的數(shù)據(jù)被改變時(shí),采用區(qū)域外更新技術(shù),將這一頁在頁表中標(biāo)記為廢頁,將其新內(nèi)容存到另一個(gè)新頁中,并將其虛擬頁號(hào)更改為原先廢頁的虛擬頁號(hào)。在本發(fā)明的分頁方法中,相變存儲(chǔ)器中設(shè)定一小部分固定空間用來存儲(chǔ)每頁的頁號(hào)和屬性信息等,構(gòu)成一個(gè)頁表區(qū)。頁表區(qū)為每一個(gè)頁都保存了一個(gè)頁表項(xiàng),包含若干字節(jié),用來保存每一頁的ECC校驗(yàn)信息、屬性信息和虛擬頁號(hào);各個(gè)頁表項(xiàng)在頁表區(qū)中按其所指向的物理頁的地址依次順序排列,因此根據(jù)頁表項(xiàng)的地址即可確定其所指向頁的物理地址和物理頁號(hào),頁表項(xiàng)的順序號(hào)即為物理頁號(hào)。上層操作系統(tǒng)在訪問相變存儲(chǔ)器時(shí)會(huì)給出一個(gè)虛擬頁號(hào),根據(jù)這個(gè)虛擬頁號(hào),在頁表區(qū)中能夠找到其所對(duì)應(yīng)的頁表項(xiàng),從而確定操作系統(tǒng)所需要的物理頁。同時(shí),每個(gè)頁表項(xiàng)只在其所指向的物理頁發(fā)生改變時(shí)才會(huì)回改變,頁表區(qū)的更改頻率與數(shù)據(jù)區(qū)的一致,只需控制數(shù)據(jù)區(qū)的損耗均衡就能保證頁表區(qū)的損耗均衡,從而解決了以往大容量存儲(chǔ)中頁表區(qū)損耗均衡不能統(tǒng)一管理的問題。所述步驟2)的具體方法是:21)將相變存儲(chǔ)器的每個(gè)頁分成兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊分別進(jìn)行ECC校驗(yàn),每個(gè)字的高低字節(jié)分別作為兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊的一行,形成兩個(gè)8X256的校驗(yàn)矩陣,并各生成一個(gè)22位的校驗(yàn)碼,在22位校驗(yàn)碼中,有6位列校驗(yàn)碼和16位行校驗(yàn)碼;將ECC校驗(yàn)矩陣分別生成合適的校驗(yàn)碼,并在校驗(yàn)碼中附加標(biāo)識(shí)碼,用來記錄該ECC校驗(yàn)矩陣的行在相變存儲(chǔ)器數(shù)據(jù)總線中的位置;當(dāng)相變存儲(chǔ)器的數(shù)據(jù)位寬大于8位時(shí)(通常為8的倍數(shù)),每頁被分成多個(gè)ECC校驗(yàn)矩陣,這多個(gè)校驗(yàn)矩陣復(fù)用同一個(gè)ECC校驗(yàn)?zāi)K。添加ECC校驗(yàn)后,相變存儲(chǔ)器的準(zhǔn)確性比現(xiàn)在沒有ECC校驗(yàn)保護(hù)的相變存儲(chǔ)器提高了很多;22)這22位校驗(yàn)碼存儲(chǔ)時(shí)占用三個(gè)連續(xù)字節(jié),其中三個(gè)字節(jié)的最高位恒置1,次高位標(biāo)示該校驗(yàn)碼的行來源:1標(biāo)示該校驗(yàn)碼的行取該頁每個(gè)字的高字節(jié),O則標(biāo)示取自低字節(jié)。為了便于管理這些校驗(yàn)碼,設(shè)定校驗(yàn)碼存儲(chǔ)于的頁表中;23 )每個(gè)頁所分成的兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊由同一個(gè)ECC校驗(yàn)?zāi)K進(jìn)行校驗(yàn),并采用流水線方式依次輪流通過ECC校驗(yàn)?zāi)K。所述步驟23)中,當(dāng)16位外部數(shù)據(jù)通過ECC校驗(yàn)?zāi)K時(shí),每個(gè)字的高字節(jié)和低字節(jié)依次先后進(jìn)入ECC校驗(yàn)?zāi)K,然后在進(jìn)入相變存儲(chǔ)器時(shí)合并為一個(gè)字同時(shí)進(jìn)入。所述步驟3)中,多位預(yù)取方法是:8片16位相變存儲(chǔ)器并行連接成一個(gè)16位存儲(chǔ)陣列,8片相變存儲(chǔ)器的數(shù)據(jù)總線并發(fā)傳輸數(shù)據(jù),即構(gòu)成了 128位的數(shù)據(jù)總線,同時(shí)將這128位數(shù)據(jù)總線分8次傳給存儲(chǔ)陣列的16位數(shù)據(jù)總線。上述基于相變存儲(chǔ)器的分頁、ECC檢驗(yàn)及多位預(yù)取方法所采用的硬件結(jié)構(gòu),包括:分頁模塊,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào);同時(shí),在相變存儲(chǔ)器中動(dòng)態(tài)設(shè)定一區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息和頁號(hào);ECC校驗(yàn)?zāi)K,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息;多位預(yù)取模塊,用于通過并行η片m bit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸。本發(fā)明的有益效果是,本發(fā)明提供了基于相變存儲(chǔ)器的分頁方法,填補(bǔ)了目前對(duì)這方面研究的空白,使相變存儲(chǔ)器能夠取代NandFlash應(yīng)用于高速的大容量存儲(chǔ)設(shè)備,解決了相變存儲(chǔ)器沒有合適的頁單位這一問題,同時(shí)還提供了相應(yīng)的ECC校驗(yàn)方法,有效的提高了相變存儲(chǔ)器的準(zhǔn)確性,并應(yīng)用了多位預(yù)取技術(shù)來提高相變存儲(chǔ)器的讀寫速度?,F(xiàn)有的相變存儲(chǔ)器應(yīng)用中不采用分頁方法,沒有有效的多位預(yù)取方法,數(shù)據(jù)傳輸速率遠(yuǎn)不如本發(fā)明。本發(fā)明的分頁方法是針對(duì)大容量存儲(chǔ)的,是使用相變存儲(chǔ)器替代NandFlash來做大容量存儲(chǔ),而且,相變存儲(chǔ)器的速度更快、功耗更低、壽命更長(zhǎng),本發(fā)明有效解決了相變存儲(chǔ)器在應(yīng)用于大容量存儲(chǔ)設(shè)備時(shí)的問題。
圖1是預(yù)取方法的流程圖;圖2是相變存儲(chǔ)器的分頁結(jié)構(gòu)圖;圖3是相變存儲(chǔ)器的ECC校驗(yàn)結(jié)構(gòu)圖;圖4是相變存儲(chǔ)器的多位預(yù)取結(jié)構(gòu)圖;圖5是相變存儲(chǔ)器的分頁方法整體結(jié)構(gòu)圖;圖6是頁表區(qū)結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)行進(jìn)一步的闡述,應(yīng)該說明的是,下述說明僅是為了解釋本發(fā)明,并不對(duì)其內(nèi)容進(jìn)行限定。基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,具體步驟如下:
I)分頁步驟,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào),作為數(shù)據(jù)區(qū);同時(shí),在相變存儲(chǔ)器中設(shè)定一固定區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息、ECC校驗(yàn)碼和頁號(hào),每個(gè)頁表項(xiàng)固定的指向唯一的一個(gè)確定的頁,只有某一頁被更改時(shí),該頁表項(xiàng)才會(huì)更改,從而使得頁表區(qū)的損耗均衡與數(shù)據(jù)區(qū)一致,便于管理;通過分頁方法,操作系統(tǒng)在管理和使用由相變存儲(chǔ)器構(gòu)成的大容量存儲(chǔ)設(shè)備時(shí),不必像現(xiàn)有的相變存儲(chǔ)器那樣直接面對(duì)巨大而繁瑣的地址空間,而是通過管理少量的頁,間接管理相變存儲(chǔ)器所有的存儲(chǔ)單元;2)ECC校驗(yàn)步驟,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息;3)多位預(yù)取步驟,用于通過并行η片m bit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸,從而實(shí)現(xiàn)了相變存儲(chǔ)器數(shù)據(jù)傳輸速率的提高,同時(shí),預(yù)取的位數(shù)還約束了相變存儲(chǔ)器的頁面積。其結(jié)構(gòu)圖如圖4所示。所述步驟I)的具體方法是:已知ECC校驗(yàn)的最佳數(shù)據(jù)矩陣構(gòu)成為256行X8列和512行X8列,即每256字節(jié)或512字節(jié)的數(shù)據(jù)作為ECC校驗(yàn)的基本單位進(jìn)行一次校驗(yàn),而文件系統(tǒng)的對(duì)外存的最小存儲(chǔ)管理單位——簇的大小為4Kbyte或8Kbyte,將相變存儲(chǔ)器的頁容量設(shè)定為ECC校驗(yàn)數(shù)據(jù)塊的兩倍,8片相變存儲(chǔ)器的頁面積之和小于或等于文件系統(tǒng)塊的大小,設(shè)分頁方法中每頁的大小為N,N的單位為Byte,約束條件如下:8父#41(或者81(;N=256*2e,e為大于等于零的整數(shù);N取符合所述公式的最小值,從而推算出N的值為512Byte,即相變存儲(chǔ)器的頁面積 page size 為 512Byte。操作系統(tǒng)對(duì)大容量的存儲(chǔ)設(shè)備進(jìn)行管理和應(yīng)用時(shí),都是將存儲(chǔ)設(shè)備的存儲(chǔ)空間劃分成小容量的最小存儲(chǔ)管理單位。為了便于操作系統(tǒng)通過簇等基本存儲(chǔ)單位對(duì)相變存儲(chǔ)器構(gòu)成的存儲(chǔ)設(shè)備進(jìn)行管理,需要對(duì)相變存儲(chǔ)器進(jìn)行分頁(page),使操作系統(tǒng)的最小存儲(chǔ)管理單位能夠由一個(gè)或多個(gè)頁組成,這樣可以避免簇等最小存儲(chǔ)管理單位直接面對(duì)存儲(chǔ)設(shè)備巨大的尋址空間,同時(shí)為操作系統(tǒng)對(duì)存儲(chǔ)設(shè)備的分區(qū)提供了硬件基礎(chǔ)。在操作系統(tǒng)中,文件系統(tǒng)等存儲(chǔ)設(shè)備管理模塊的最小存儲(chǔ)管理單位大小通常有4KB和8KB等。而ECC校驗(yàn)方法是對(duì)某一連續(xù)數(shù)據(jù)塊進(jìn)行校驗(yàn),這個(gè)數(shù)據(jù)塊的大小將影響到ECC校驗(yàn)的準(zhǔn)確性和存儲(chǔ)器的存儲(chǔ)效率:數(shù)據(jù)塊太大將降低ECC校驗(yàn)的準(zhǔn)確性,而數(shù)據(jù)塊太小則需要更多的額外存儲(chǔ)空間來存儲(chǔ)ECC校驗(yàn)值。因此,合理的ECC校驗(yàn)數(shù)據(jù)塊大小為256B或者512B。為了方便對(duì)相變存儲(chǔ)器進(jìn)行ECC校驗(yàn),需要將其每頁的大小與ECC校驗(yàn)數(shù)據(jù)塊大小匹配;考慮到現(xiàn)有的相變存儲(chǔ)器多為16位數(shù)據(jù)總線,而ECC校驗(yàn)的數(shù)據(jù)塊行位寬為8位,所以相變存儲(chǔ)器的頁容量需要設(shè)計(jì)為ECC校驗(yàn)數(shù)據(jù)塊的兩倍。同時(shí),預(yù)取技術(shù)主要通過將多片相變存儲(chǔ)器芯片陣列的數(shù)據(jù)總線并行讀寫來實(shí)現(xiàn),在本發(fā)明中通過并行8片16位數(shù)據(jù)總線的相變存儲(chǔ)器來實(shí)現(xiàn)8位預(yù)取。為了使相變存儲(chǔ)器的頁面積(page size)能夠適應(yīng)操作系統(tǒng)的文件系統(tǒng)塊,需要使這8片相變存儲(chǔ)器的頁面積之和小于或等于文件系統(tǒng)塊的大小。分頁結(jié)構(gòu)圖如圖2所示。為了管理每一個(gè)頁,需要設(shè)計(jì)一個(gè)頁表以確定每個(gè)頁的具體地址等信息。同時(shí),相變存儲(chǔ)器具有有限的寫壽命,因此需要設(shè)計(jì)合適的損耗均衡機(jī)制,使每一頁都被以相同的頻率使用,避免部分頁被過于頻繁的使用而過早損壞,從而盡可能的提高相變存儲(chǔ)器的整體使用壽命,因此需要設(shè)計(jì)一個(gè)虛擬頁表,用來存儲(chǔ)每一頁的虛擬頁號(hào),即上層操作系統(tǒng)等授予的頁號(hào)。物理頁號(hào)(即每一頁的實(shí)際頁號(hào))和虛擬頁號(hào)之間需要滿足如下映射關(guān)系:任意虛擬頁號(hào)都能找到唯一與之相對(duì)應(yīng)的物理頁號(hào),即操作系統(tǒng)等通過其已知的某個(gè)虛擬頁號(hào),可以訪問唯一一個(gè)物理頁。當(dāng)某一物理頁的數(shù)據(jù)被改變時(shí),采用區(qū)域外更新技術(shù),將這一頁在頁表中標(biāo)記為廢頁,將其新內(nèi)容存到另一個(gè)新頁中,并將其虛擬頁號(hào)更改為原先廢頁的虛擬頁號(hào)。在本發(fā)明的分頁方法中,相變存儲(chǔ)器中設(shè)定一小部分固定空間用來存儲(chǔ)每頁的頁號(hào)和屬性信息等,構(gòu)成一個(gè)頁表區(qū)。頁表區(qū)為每一個(gè)頁都保存了一個(gè)頁表項(xiàng),包含若干字節(jié),用來保存每一頁的ECC校驗(yàn)信息、屬性信息和虛擬頁號(hào);各個(gè)頁表項(xiàng)在頁表區(qū)中按其所指向的物理頁的地址依次順序排列,因此根據(jù)頁表項(xiàng)的地址即可確定其所指向頁的物理地址和物理頁號(hào),頁表項(xiàng)的順序號(hào)即為物理頁號(hào)。上層操作系統(tǒng)在訪問相變存儲(chǔ)器時(shí)會(huì)給出一個(gè)虛擬頁號(hào),根據(jù)這個(gè)虛擬頁號(hào),在頁表區(qū)中能夠找到其所對(duì)應(yīng)的頁表項(xiàng),從而確定操作系統(tǒng)所需要的物理頁。同時(shí),每個(gè)頁表項(xiàng)只在其所指向的物理頁發(fā)生改變時(shí)才會(huì)回改變,頁表區(qū)的更改頻率與數(shù)據(jù)區(qū)的一致,只需控制數(shù)據(jù)區(qū)的損耗均衡就能保證頁表區(qū)的損耗均衡,從而解決了以往大容量存儲(chǔ)中頁表區(qū)損耗均衡不能統(tǒng)一管理的問題。頁表區(qū)結(jié)構(gòu)見圖6。步驟2)中,所述ECC校驗(yàn)方法的具體方法是: 21)將相變存儲(chǔ)器的每個(gè)頁分成兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊分別進(jìn)行ECC校驗(yàn),參見圖3,每個(gè)字的高低字節(jié)分別作為兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊的一行,形成兩個(gè)8 X 256的校驗(yàn)矩陣,并各生成一個(gè)22位的校驗(yàn)碼,在22位校驗(yàn)碼中,有6位列校驗(yàn)碼和16位行校驗(yàn)碼;將ECC校驗(yàn)矩陣分別生成合適的校驗(yàn)碼,并在校驗(yàn)碼中附加標(biāo)識(shí)碼,用來記錄該ECC校驗(yàn)矩陣的行在相變存儲(chǔ)器數(shù)據(jù)總線中的位置;當(dāng)相變存儲(chǔ)器的數(shù)據(jù)位寬大于8位時(shí)(通常為8的倍數(shù)),每頁被分成多個(gè)ECC校驗(yàn)矩陣,這多個(gè)校驗(yàn)矩陣復(fù)用同一個(gè)ECC校驗(yàn)?zāi)K。添加ECC校驗(yàn)后,相變存儲(chǔ)器的準(zhǔn)確性比現(xiàn)在沒有ECC校驗(yàn)保護(hù)的相變存儲(chǔ)器提高了很多;22)這22位校驗(yàn)碼存儲(chǔ)時(shí)占用三個(gè)連續(xù)字節(jié),其中三個(gè)字節(jié)的最高位恒置1,次高位標(biāo)示該校驗(yàn)碼的行來源:1標(biāo)示該校驗(yàn)碼的行取該頁每個(gè)字的高字節(jié),O則標(biāo)示取自低字節(jié)。為了便于管理這些校驗(yàn)碼,設(shè)定校驗(yàn)碼存儲(chǔ)于的頁表中;23 )每個(gè)頁所分成的兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊由同一個(gè)ECC校驗(yàn)?zāi)K進(jìn)行校驗(yàn),并采用流水線方式依次輪流通過ECC校驗(yàn)?zāi)K。所述步驟23)中,當(dāng)16位外部數(shù)據(jù)通過ECC校驗(yàn)?zāi)K時(shí),每個(gè)字的高字節(jié)和低字節(jié)依次先后進(jìn)入ECC校驗(yàn)?zāi)K,然后在進(jìn)入相變存儲(chǔ)器時(shí)合并為一個(gè)字同時(shí)進(jìn)入。所述步驟3)是:8片16位相變存儲(chǔ)器并行連接成一個(gè)16位存儲(chǔ)陣列,8片相變存儲(chǔ)器的數(shù)據(jù)總線并發(fā)傳輸數(shù)據(jù),即構(gòu)成了 128位的數(shù)據(jù)總線,同時(shí)將這128位數(shù)據(jù)總線分8次傳給存儲(chǔ)陣列的16位數(shù)據(jù)總線。本發(fā)明對(duì)相變存儲(chǔ)器每個(gè)芯片的每一頁生成兩段ECC校驗(yàn)碼,每段校驗(yàn)碼能糾正半頁中的一位錯(cuò)誤,發(fā)現(xiàn)兩位錯(cuò)誤,因此每頁總體而言能夠通過ECC校驗(yàn)糾正大部分的兩位錯(cuò)誤,發(fā)現(xiàn)大部分的四位錯(cuò)誤,與當(dāng)前通用的不加ECC校驗(yàn)的相變存儲(chǔ)器相比,顯著的提高了安全性和準(zhǔn)確性。本發(fā)明中還設(shè)計(jì)了適用于相變存儲(chǔ)器的8位預(yù)取技術(shù)(8-nprefetch),使以此技術(shù)設(shè)計(jì)的大容量存儲(chǔ)設(shè)備能夠?qū)崿F(xiàn)單片相變存儲(chǔ)器8倍的速度。綜合上述技術(shù),通過FPGA設(shè)計(jì)相變存儲(chǔ)器的控制器,實(shí)現(xiàn)了相變存儲(chǔ)器的分頁方法、ECC方法和多位預(yù)取技術(shù)。整體結(jié)構(gòu)圖見圖5。上述基于相變存儲(chǔ)器的分頁、ECC檢驗(yàn)及多位預(yù)取方法所采用的硬件結(jié)構(gòu),包括:分頁模塊,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào);同時(shí),在相變存儲(chǔ)器中動(dòng)態(tài)設(shè)定一區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息和頁號(hào);ECC校驗(yàn)?zāi)K,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息;多位預(yù)取模塊,用于通過并行η片m bit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸。上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式
進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。
權(quán)利要求
1.基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,其特征在于,具體步驟如下: 1)分頁步驟,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào),作為數(shù)據(jù)區(qū);同時(shí),在相變存儲(chǔ)器中設(shè)定一固定區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息、ECC校驗(yàn)碼和頁號(hào),每個(gè)頁表項(xiàng)固定的指向一個(gè)確定的頁,只有某一頁被更改時(shí),該頁表項(xiàng)才會(huì)更改,從而使得頁表區(qū)的損耗均衡與數(shù)據(jù)區(qū)一致; 2)ECC校驗(yàn)步驟,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息; 3)多位預(yù)取步驟,用于通過并行η片mbit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸。
2.根據(jù)權(quán)利要求1所述的基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,其特征在于,所述步驟I)的具體方法是:設(shè)相變存儲(chǔ)器的數(shù)據(jù)位寬為d,頁面積為N Byte,多位預(yù)取方法中的預(yù)取位數(shù)為n ,根據(jù)ECC校驗(yàn)的最佳數(shù)據(jù)矩陣構(gòu)成將ECC校驗(yàn)的基本單位確定為a字節(jié)的數(shù)據(jù),文件系統(tǒng)的對(duì)外存的最小存儲(chǔ)管理單位——簇的大小為b Kbyte,根據(jù)公式:dXN=b ; N=a* (d + n) % e為大于等于零的整數(shù); 推算出N的值。
3.根據(jù)權(quán)利要求1所述的基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,其特征在于,所述步驟2)的具體方法是: 21)將相變存儲(chǔ)器的每個(gè)頁分成兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊分別進(jìn)行ECC校驗(yàn),每個(gè)字的高低字節(jié)分別作為兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊的一行,形成兩個(gè)8 X 256的校驗(yàn)矩陣,并各生成一個(gè)22位的校驗(yàn)碼,在22位校驗(yàn)碼中,有6位列校驗(yàn)碼和16位行校驗(yàn)碼; 22)這22位校驗(yàn)碼存儲(chǔ)時(shí)占用三個(gè)連續(xù)字節(jié),其中三個(gè)字節(jié)的最高位恒置1,次高位標(biāo)示該校驗(yàn)碼的行來源:1標(biāo)示該校驗(yàn)碼的行取該頁每個(gè)字的高字節(jié),O則標(biāo)示取自低字節(jié)。為了便于管理這些校驗(yàn)碼,設(shè)定校驗(yàn)碼存儲(chǔ)于的頁表中; 23)每個(gè)頁所分成的兩個(gè)ECC校驗(yàn)數(shù)據(jù)塊由同一個(gè)ECC校驗(yàn)?zāi)K進(jìn)行校驗(yàn),并采用流水線方式依次輪流通過ECC校驗(yàn)?zāi)K。
4.根據(jù)權(quán)利要求4所述的基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,其特征在于,所述步驟23)中,當(dāng)16位外部數(shù)據(jù)通過ECC校驗(yàn)?zāi)K時(shí),每個(gè)字的高字節(jié)和低字節(jié)依次先后進(jìn)入ECC校驗(yàn)?zāi)K,然后在進(jìn)入相變存儲(chǔ)器時(shí)合并為一個(gè)字同時(shí)進(jìn)入。
5.根據(jù)權(quán)利要求4所述的基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法,其特征在于,所述步驟3)中,8片16位相變存儲(chǔ)器并行連接成一個(gè)16位存儲(chǔ)陣列,8片相變存儲(chǔ)器的數(shù)據(jù)總線并發(fā)傳輸數(shù)據(jù),即構(gòu)成了 128位的數(shù)據(jù)總線,同時(shí)將這128位數(shù)據(jù)總線分8次傳給存儲(chǔ)陣列的16位數(shù)據(jù)總線。
6.上述任一項(xiàng)權(quán)利要求所述方法所采用的硬件結(jié)構(gòu),其特征在于,包括: 分頁模塊,用于實(shí)現(xiàn)確定每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào);同時(shí),在相變存儲(chǔ)器中動(dòng)態(tài)設(shè)定一區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息和頁號(hào);ECC校驗(yàn)?zāi)K,用于實(shí)現(xiàn)ECC校驗(yàn),以頁表區(qū)儲(chǔ)存每一頁的ECC校驗(yàn)碼和使用情況的屬性信息; 多位預(yù)取模塊,用于通過并行η片m bit位寬的相變存儲(chǔ)器,將η片相變存儲(chǔ)器的η個(gè)m bit位寬數(shù)據(jù)總線每次傳輸?shù)臄?shù)據(jù)依次排列,合并為一個(gè)m bit位寬的高速串行數(shù)據(jù)流,并通過上層接口的m bit位寬數(shù)據(jù)總線依次傳輸。
全文摘要
本發(fā)明公開了基于相變存儲(chǔ)器的分頁、ECC校驗(yàn)及多位預(yù)取方法及其結(jié)構(gòu)。本發(fā)明基于相變存儲(chǔ)器設(shè)計(jì)了其專用的分頁方法,使其易于管理并可應(yīng)用于大容量存儲(chǔ)設(shè)備中;設(shè)計(jì)了與分頁方法相匹配的ECC校驗(yàn)方法,以提高相變存儲(chǔ)器的準(zhǔn)確性和安全性;還將多位預(yù)取技術(shù)應(yīng)用于分頁后的相變存儲(chǔ)器,使其讀寫速率更高。具體步驟如下1)分頁步驟確定相變存儲(chǔ)器分頁方法中每一頁的面積,進(jìn)而將相變存儲(chǔ)器中的每一塊劃分為若干個(gè)相同大小的連續(xù)的頁,并按照包含的地址順序?qū)ζ渚幪?hào);在相變存儲(chǔ)器中動(dòng)態(tài)設(shè)定一區(qū)域作為頁表區(qū),順序存儲(chǔ)每一頁的屬性信息和頁號(hào);2)ECC校驗(yàn)步驟;3)多位預(yù)取步驟。
文檔編號(hào)G06F12/02GK103164343SQ20131006174
公開日2013年6月19日 申請(qǐng)日期2013年2月27日 優(yōu)先權(quán)日2013年2月27日
發(fā)明者賈智平, 李新, 劉鵬, 申兆巖 申請(qǐng)人:山東大學(xué)