數(shù)據(jù)儲存裝置以及易失性存儲器的數(shù)據(jù)校驗(yàn)方法【專利摘要】本發(fā)明揭示一種數(shù)據(jù)儲存裝置以及易失性存儲器的數(shù)據(jù)校驗(yàn)方法。所揭示的數(shù)據(jù)儲存裝置包括:非易失性存儲器、易失性存儲器、以及控制器??刂破鞲鶕?jù)一主機(jī)的要求操作非易失性存儲器,且以易失性存儲器暫存操作非易失性存儲器時(shí)所需的暫態(tài)數(shù)據(jù)??刂破靼▽ι鲜鰰簯B(tài)數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容,并且將所產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容與對應(yīng)的暫態(tài)數(shù)據(jù)呈至少一突發(fā)格式暫存至該易失性存儲器。如此一來,易失性存儲器無須針對錯(cuò)誤校驗(yàn)數(shù)據(jù)增加任何管腳,即可具有數(shù)據(jù)校驗(yàn)功能?!緦@f明】數(shù)據(jù)儲存裝置以及易失性存儲器的數(shù)據(jù)校驗(yàn)方法【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及一種易失性存儲器的數(shù)據(jù)校驗(yàn),特別是涉及數(shù)據(jù)儲存裝置的易失性存儲器的數(shù)據(jù)校驗(yàn)?!?br>背景技術(shù):
】[0002]數(shù)據(jù)校驗(yàn)用于數(shù)字?jǐn)?shù)據(jù)的檢查甚至校正。例如,ECC(ErrorCheckingandCorrecting,譯為「錯(cuò)誤檢查與校正」)以及Parity(譯為「奇偶校驗(yàn)」)即為常見的兩種數(shù)據(jù)校驗(yàn)技術(shù)。數(shù)據(jù)校驗(yàn)一般是對數(shù)字?jǐn)?shù)據(jù)進(jìn)行運(yùn)算產(chǎn)生對應(yīng)的錯(cuò)誤校驗(yàn)內(nèi)容,用作數(shù)字?jǐn)?shù)據(jù)的檢查甚至校正。例如產(chǎn)生錯(cuò)誤校驗(yàn)碼(ErrorCheckingCode)以及錯(cuò)誤校驗(yàn)內(nèi)容(Parity)即為常見的兩種數(shù)據(jù)校驗(yàn)技術(shù)的錯(cuò)誤校驗(yàn)內(nèi)容。[0003]為了傳輸數(shù)據(jù)校驗(yàn)所需的錯(cuò)誤校驗(yàn)內(nèi)容,一種傳統(tǒng)存儲器技術(shù)是針對錯(cuò)誤校驗(yàn)內(nèi)容多設(shè)計(jì)至少一管腳,會導(dǎo)致硬件成本較高。如何以低成本制作具有數(shù)據(jù)校驗(yàn)功能的存儲器為本【
技術(shù)領(lǐng)域:
】一項(xiàng)待解決問題。[0004]另外,以數(shù)據(jù)儲存裝置為例,其中作為使用者數(shù)據(jù)的儲存媒體的非易失性存儲器的操作相當(dāng)復(fù)雜。一般而言,數(shù)據(jù)儲存裝置中還設(shè)置有易失性存儲器作數(shù)據(jù)暫存。如何以低成本使得數(shù)據(jù)儲存裝置的易失性存儲器也有數(shù)據(jù)校驗(yàn)功能,為本【
技術(shù)領(lǐng)域:
】一項(xiàng)待解決問題。【
發(fā)明內(nèi)容】[0005]本發(fā)明揭示一種易失性存儲器的數(shù)據(jù)校驗(yàn)技術(shù),還揭示一種使用該技術(shù)的數(shù)據(jù)儲存裝置。[0006]根據(jù)本發(fā)明所揭示技術(shù)的一種實(shí)施方式所實(shí)現(xiàn)的一種數(shù)據(jù)儲存裝置,包括:非易失性存儲器、易失性存儲器、以及控制器??刂破魇歉鶕?jù)一主機(jī)的要求操作非易失性存儲器,且是以易失性存儲器暫存操作非易失性存儲器時(shí)所需的暫態(tài)數(shù)據(jù)??刂破靼▽ι鲜鰰簯B(tài)數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容,并且將所產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容與對應(yīng)的暫態(tài)數(shù)據(jù)呈至少一突發(fā)格式暫存至該易失性存儲器。如此一來,易失性存儲器無須針對錯(cuò)誤校驗(yàn)數(shù)據(jù)增加任何管腳,即可具有數(shù)據(jù)校驗(yàn)功能。[0007]另一種實(shí)施方式涉及一數(shù)據(jù)儲存裝置的易失性存儲器的數(shù)據(jù)校驗(yàn)方法,其中該數(shù)據(jù)儲存裝置包括一非易失性存儲器以及一易失性存儲器,且該方法包括:對與該非易失性存儲器相關(guān)的暫態(tài)數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;以及,將上述暫態(tài)數(shù)據(jù)以及對應(yīng)的錯(cuò)誤校驗(yàn)內(nèi)容呈至少一突發(fā)格式暫存至該易失性存儲器中。[0008]本發(fā)明所揭示技術(shù)并不意圖限定于數(shù)據(jù)儲存裝置的應(yīng)用。另一種實(shí)施方式涉及一種易失性存儲器數(shù)據(jù)校驗(yàn)方法,包括:對數(shù)據(jù)尺寸大于一第一數(shù)據(jù)量的第一型數(shù)據(jù),產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;將所述第一型數(shù)據(jù)呈多個(gè)突發(fā)格式寫入該易失性存儲器;以及,將所產(chǎn)生的所述錯(cuò)誤校驗(yàn)內(nèi)容呈另一個(gè)突發(fā)格式寫入至該易失性存儲器。[0009]本發(fā)明的前述數(shù)據(jù)儲存裝置及其易失性存儲器的數(shù)據(jù)校驗(yàn)方法,可以在不增加易失性存儲器的管腳數(shù)量的前提下,實(shí)現(xiàn)易失性存儲器所暫存的操作非易失性存儲器時(shí)所需的暫態(tài)數(shù)據(jù)的數(shù)據(jù)校驗(yàn)。此外,不同尺寸的暫態(tài)數(shù)據(jù)以及其錯(cuò)誤校驗(yàn)內(nèi)容都可以妥善由易失性存儲器暫存。[0010]下文特舉實(shí)施例,并結(jié)合附圖詳細(xì)說明本【
發(fā)明內(nèi)容】?!緦@綀D】【附圖說明】[0011]圖1示出了根據(jù)本發(fā)明所揭示技術(shù)的一種實(shí)施方式所實(shí)現(xiàn)的一數(shù)據(jù)儲存裝置100;[0012]圖2以流程圖說明控制器106對動(dòng)態(tài)隨機(jī)存取存儲器104所作的寫入操作;[0013]圖3A更詳細(xì)說明使用者數(shù)據(jù)(userdata)專屬格式User_Data的一種實(shí)施方式;[0014]圖3B更詳細(xì)說明控制器運(yùn)算數(shù)據(jù)(controllerdata)專屬格式MCU_Data的一種實(shí)施方式;[0015]圖3C更詳細(xì)說明映射表數(shù)據(jù)(如,非易失性存儲器的映射表數(shù)據(jù)/temporarydataforthemappingtableofthenon-volatilememory)專屬格式Table_Data的一種實(shí)施方式;[0016]圖4以流程圖說明控制器106對動(dòng)態(tài)隨機(jī)存取存儲器104所作的讀取操作;[0017]圖5A更詳細(xì)說明使用者數(shù)據(jù)專屬格式User_Data的錯(cuò)誤校驗(yàn);[0018]圖5B更詳細(xì)說明控制器運(yùn)算數(shù)據(jù)專屬格式MCU_Data的錯(cuò)誤校驗(yàn);且[0019]圖5C更詳細(xì)說明映射表數(shù)據(jù)專屬格式Table_Data的錯(cuò)誤校驗(yàn)。[0020]附圖符號說明[0021]100~數(shù)據(jù)儲存裝置;[0022]102~快閃存儲器;[0023]104~動(dòng)態(tài)隨機(jī)存取存儲器;[0024]106~控制器;[0025]108~主機(jī);[0026]110~數(shù)據(jù)總線;[0027]BLK1、BLK2~區(qū)塊;[0028]Data_0.5Burst~半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù);[0029]Data_Bits~(N-1)位的映射表數(shù)據(jù);[0030]Data_Burstl、Data_Burst2...Data_Burst8~多個(gè)突發(fā)格式的使用者數(shù)據(jù);[0031]Data_Checked~校驗(yàn)后的控制器運(yùn)算數(shù)據(jù);[0032]MCU_Data~控制器運(yùn)算數(shù)據(jù)的數(shù)據(jù)校驗(yàn)格式;[0033]ΡΡ..Ρ8~錯(cuò)誤校驗(yàn)字;[0034]Ρ11、Ρ12、Ρ21、Ρ22~錯(cuò)誤校驗(yàn)內(nèi)容;[0035]Parity_0.5Burst~用以容載錯(cuò)誤校驗(yàn)內(nèi)容的半個(gè)突發(fā)格式;[0036]Parity_Bit~錯(cuò)誤校驗(yàn)位;[0037]Parity_Burst~一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容;[0038]S202…S208~步驟;[0039]S402…S410~步驟;[0040]Table_Data~映射表數(shù)據(jù)的數(shù)據(jù)校驗(yàn)格式;[0041]User_Data~使用者數(shù)據(jù)的數(shù)據(jù)校驗(yàn)格式。【具體實(shí)施方式】[0042]以下敘述列舉本發(fā)明的多種實(shí)施例。以下敘述介紹本發(fā)明的基本概念,且并非意圖限制本【
發(fā)明內(nèi)容】。實(shí)際發(fā)明范圍應(yīng)依照本發(fā)明的權(quán)利要求界定。[0043]圖1示出了根據(jù)本發(fā)明所揭示技術(shù)的一種實(shí)施方式所實(shí)現(xiàn)的一數(shù)據(jù)儲存裝置100,包括:快閃存儲器(FLASHmemory)102所實(shí)現(xiàn)的一非易失性存儲器、動(dòng)態(tài)隨機(jī)存取存儲器(DRAM)104所實(shí)現(xiàn)的一易失性存儲器、以及一控制器106。該控制器106是根據(jù)一主機(jī)108的要求操作該快閃存儲器102,且是以該動(dòng)態(tài)隨機(jī)存取存儲器104暫存與該快閃存儲器102相關(guān)的暫態(tài)數(shù)據(jù)。[0044]如圖1所示,快閃存儲器102的空間劃分為多個(gè)區(qū)塊(blocks),如,BLK1、BLK2...。各區(qū)塊還劃分為多頁(pages)??扉W存儲器102的操作特性是以「區(qū)塊」為擦除單位。使用過的空間須以「區(qū)塊」為單位擦除后方能釋出再利用。如此的使用限制將使得動(dòng)態(tài)隨機(jī)存取存儲器104的暫態(tài)數(shù)據(jù)儲存需求高。動(dòng)態(tài)隨機(jī)存取存儲器104的數(shù)據(jù)校驗(yàn)(datacheckingandcorrecting)因而更為重要。[0045]本發(fā)明可以在不增加動(dòng)態(tài)隨機(jī)存取存儲器104的管腳數(shù)量的前提下,實(shí)現(xiàn)動(dòng)態(tài)隨機(jī)存取存儲器104所暫存的暫態(tài)數(shù)據(jù)的數(shù)據(jù)校驗(yàn)。如圖1所示,控制器106對前述暫態(tài)數(shù)據(jù)(與該快閃存儲器102相關(guān))產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容,并且將所產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容與對應(yīng)的暫態(tài)數(shù)據(jù)呈至少一突發(fā)格式暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。所述錯(cuò)誤校驗(yàn)內(nèi)容可依循ECC技術(shù)或是奇偶校驗(yàn)技術(shù)…等。在一實(shí)施例中,控制器106經(jīng)由一數(shù)據(jù)總線110耦接動(dòng)態(tài)隨機(jī)存取存儲器104,所述突發(fā)·格式的長度(burstlength)是該數(shù)據(jù)總線的寬度的M倍,其中M大于或等于2。舉例而言,動(dòng)態(tài)隨機(jī)存取存儲器104如果采用第三代雙倍數(shù)據(jù)率同步動(dòng)態(tài)隨機(jī)存取存儲器(Double-Data-RateThreeSynchronousDynamicRandomAccessMemory,DDR3SDRAM),根據(jù)DDR3SDRAM的規(guī)格標(biāo)準(zhǔn)(JEDEC標(biāo)準(zhǔn)JESD79-3E),所述突發(fā)格式的長度為16個(gè)字節(jié)(byte),而動(dòng)態(tài)隨機(jī)存取存儲器104具備16根數(shù)據(jù)管腳(datapins),即該數(shù)據(jù)總線的寬度為16位(bit),因此可同時(shí)并行存取16位(即2個(gè)字節(jié))的暫態(tài)數(shù)據(jù)。[0046]動(dòng)態(tài)隨機(jī)存取存儲器104的暫態(tài)數(shù)據(jù)一般有以下來源:[0047]?使用者數(shù)據(jù)(userdata),如,由主機(jī)108要求儲存至該快閃存儲器102的數(shù)據(jù),在寫入快閃存儲器102之前需要暫存在該動(dòng)態(tài)隨機(jī)存取存儲器104,待控制器106作運(yùn)算后方搬移到該快閃存儲器102,一般數(shù)據(jù)量較大;[0048]?控制器運(yùn)算數(shù)據(jù)(controllerdata),如,控制器106對該快閃存儲器102作讀寫時(shí)所作運(yùn)算所產(chǎn)生的暫態(tài)數(shù)據(jù)(如,控制器106對快閃存儲器102作有效數(shù)據(jù)收集(garbagecollection)、存儲地址運(yùn)算…等而產(chǎn)生的暫態(tài)數(shù)據(jù)),數(shù)據(jù)量一般低于上述使用者數(shù)據(jù);以及[0049]?映射表數(shù)據(jù)(temporarydataforthemappingtable),如,快閃存儲器102與主機(jī)108端之間的邏輯-物理位址映射數(shù)據(jù),數(shù)據(jù)量一般更低于上述控制器運(yùn)算數(shù)據(jù)。[0050]根據(jù)暫態(tài)數(shù)據(jù)的屬性不同,控制器106具體地可選擇適當(dāng)?shù)姆绞綄簯B(tài)數(shù)據(jù)以考量數(shù)據(jù)校驗(yàn)的方式儲存至動(dòng)態(tài)隨機(jī)存取存儲器104。[0051]如圖1所示,控制器106是以格式User_Data將使用者數(shù)據(jù)以及其錯(cuò)誤校驗(yàn)內(nèi)容暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。在一實(shí)施例中,主機(jī)108存取使用者數(shù)據(jù)是以區(qū)段(sector)為單位,一個(gè)區(qū)段舉例而言包括512字節(jié)的數(shù)據(jù)。在本發(fā)明一實(shí)施例中,快閃存儲器102以128字節(jié)為一個(gè)區(qū)塊(block)存儲使用者數(shù)據(jù),因此主機(jī)108—次存取的使用者數(shù)據(jù)包括至少4個(gè)區(qū)塊,而I個(gè)區(qū)塊的使用者數(shù)據(jù)需通過8個(gè)突發(fā)格式傳輸。如圖1所示,使用者數(shù)據(jù)以多個(gè)突發(fā)格式(bursts)Data_Burst1、Data_Burst2...Data_Burst8搭配一突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst暫存至該動(dòng)態(tài)隨機(jī)存取存儲器104。以16根數(shù)據(jù)管腳(datapins)的動(dòng)態(tài)隨機(jī)存取存儲器為例,一個(gè)突發(fā)格式可傳送16字節(jié)的數(shù)據(jù)。以32根數(shù)據(jù)管腳的動(dòng)態(tài)隨機(jī)存取存儲器為例,一個(gè)突發(fā)格式可傳送32字節(jié)的數(shù)據(jù)??刂破?06還針對所述多個(gè)突發(fā)格式的使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8中的每一個(gè)分別運(yùn)算產(chǎn)生一錯(cuò)誤校驗(yàn)字,各個(gè)錯(cuò)誤校驗(yàn)字組成所述一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst。并且于呈多個(gè)所述突發(fā)格式的使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8暫存至動(dòng)態(tài)隨機(jī)存取存儲器104之后,控制器106還將錯(cuò)誤校驗(yàn)內(nèi)容呈另一個(gè)突發(fā)格式Parity_Burst暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。[0052]另外,控制器106是以格式MCU_Data將控制器運(yùn)算數(shù)據(jù)以及其錯(cuò)誤校驗(yàn)內(nèi)容暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。格式MCU_Data整體呈一個(gè)突發(fā)格式,其中包括半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst以及規(guī)劃來儲存錯(cuò)誤校驗(yàn)內(nèi)容的半個(gè)突發(fā)格式的空間Parity_0.5Burst。于半個(gè)突發(fā)格式的空間Parity_0.5Burst的錯(cuò)誤校驗(yàn)內(nèi)容為控制器106針對所述半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst運(yùn)算產(chǎn)生。[0053]另外,控制器106是以格式Table_Data將映射表數(shù)據(jù)以及其錯(cuò)誤校驗(yàn)內(nèi)容暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。格式Table_Data包括(N_l)位的映射表數(shù)據(jù)Data_Bits以及一錯(cuò)誤校驗(yàn)位Parity_Bit。錯(cuò)誤校驗(yàn)位Parity_Bit控制器106針對所述(N-1)位的映射表數(shù)據(jù)Data_Bits運(yùn)算產(chǎn)生。[0054]根據(jù)以上設(shè)計(jì),動(dòng)態(tài)隨機(jī)存取存儲器104無須為數(shù)據(jù)校驗(yàn)設(shè)計(jì)增設(shè)任何管腳。此夕卜,不同尺寸的暫態(tài)數(shù)據(jù)以及其錯(cuò)誤校驗(yàn)內(nèi)容都可以妥善由該動(dòng)態(tài)隨機(jī)存取存儲器104暫存。[0055]圖2以流程圖說明控制器106對動(dòng)態(tài)隨機(jī)存取存儲器104所作的寫入操作。于步驟S202,控制器106作數(shù)據(jù)類型判斷,以對不同數(shù)據(jù)類型作不同操作。當(dāng)然,本發(fā)明并不限制某種屬性的暫態(tài)數(shù)據(jù)一定使用某種數(shù)據(jù)校驗(yàn)以及寫入方式,只是本發(fā)明下述的特定的屬性的暫態(tài)數(shù)據(jù)使用特定數(shù)據(jù)校驗(yàn)以及寫入方式的實(shí)施例可以提高數(shù)據(jù)存取的效率。在本發(fā)明其它實(shí)施例中,步驟S202不是必要步驟,可以不管暫態(tài)數(shù)據(jù)的屬性而在步驟S204?S208的寫入方式,步驟S210?S212的寫入方式以及步驟S214?S216的寫入方式中擇一施行。換句話說,步驟S204?S208的寫入方式,步驟S210?S212的寫入方式以及步驟S214?S216的寫入方式可以是三個(gè)獨(dú)立的對動(dòng)態(tài)隨機(jī)存取存儲器104進(jìn)行寫入操作的實(shí)施方式。[0056]若為使用者數(shù)據(jù),控制器106執(zhí)行步驟S204,對上述多個(gè)突發(fā)格式的使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8中的每一個(gè)分別產(chǎn)生一錯(cuò)誤校驗(yàn)字,并將各錯(cuò)誤校驗(yàn)字組成一錯(cuò)誤校驗(yàn)內(nèi)容??刂破?06執(zhí)行步驟S206,將使用者數(shù)據(jù)呈多個(gè)突發(fā)格式Data_Burstl、Data_Burst2...Data_Burst8暫存至動(dòng)態(tài)隨機(jī)存取存儲器104中。接下來控制器106還執(zhí)行步驟S208,將該錯(cuò)誤校驗(yàn)內(nèi)容以一個(gè)突發(fā)格式Parity_Burst暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。即是說控制器106是以突發(fā)格式將使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8以及其錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。由于本實(shí)施例中,首先對各個(gè)突發(fā)格式的使用者數(shù)據(jù)分別進(jìn)行運(yùn)算產(chǎn)生各個(gè)錯(cuò)誤校驗(yàn)字,但在傳輸時(shí)須等待多個(gè)突發(fā)格式的使用者數(shù)據(jù)暫存完畢以后,再將各個(gè)錯(cuò)誤校驗(yàn)字湊成一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容再暫存至動(dòng)態(tài)隨機(jī)存取存儲器104,因此需要將運(yùn)算產(chǎn)生的各個(gè)錯(cuò)誤校驗(yàn)字先暫存于控制器106內(nèi)的寄存器(register)中。但本發(fā)明并不限制步驟S204與S206的發(fā)生先后順序。[0057]若為控制器運(yùn)算數(shù)據(jù),控制器106執(zhí)行步驟S210,對半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)DataJ).5Burst產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;接下來控制器106執(zhí)行步驟S212,將上述半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst與所對應(yīng)產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容呈一個(gè)突發(fā)格式(Data_0.5Burst聯(lián)合ParityJ).5Burst)暫存至動(dòng)態(tài)隨機(jī)存取存儲器104??刂破?06是以格式MCU_Data將控制器運(yùn)算數(shù)據(jù)Data_0.5Burst以及其錯(cuò)誤校驗(yàn)內(nèi)容Parity_0.5Burst暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。[0058]若為映射表數(shù)據(jù),控制器106執(zhí)行步驟S214,對(N_l)位的映射表數(shù)據(jù)Data_Bits產(chǎn)生一錯(cuò)誤校驗(yàn)位Parity_Bit;接下來,控制器106執(zhí)行步驟S216,將上述(N-1)位的映射表數(shù)據(jù)Data_Bits與該錯(cuò)誤校驗(yàn)位Parity_Bit暫存至動(dòng)態(tài)隨機(jī)存取存儲器104??刂破?06是以格式Table_Data將映射表數(shù)據(jù)Data_Bits以及其錯(cuò)誤校驗(yàn)內(nèi)容Parity_Bit暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。[0059]圖3A更詳細(xì)說明使用者數(shù)據(jù)專屬格式User_Data的一種實(shí)施方式。此實(shí)施例中,一個(gè)突發(fā)格式的長度是16字節(jié),且主機(jī)108要求寫入快閃存儲器102的一個(gè)區(qū)塊的使用者數(shù)據(jù)包括128字節(jié)。動(dòng)態(tài)隨機(jī)存取存儲器104寫入操作時(shí),則一個(gè)區(qū)塊的使用者數(shù)據(jù)是以八個(gè)突發(fā)格式Data_Burstl、Data_Burst2…Data_Burst8循序?qū)懭雱?dòng)態(tài)隨機(jī)存取存儲器104,相應(yīng)的一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst最后寫入。錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst由八個(gè)錯(cuò)誤校驗(yàn)字Pl~P8組成,其分別對應(yīng)八個(gè)突發(fā)格式Data_Burstl、Data_Burst2…Data_Burst8的使用者數(shù)據(jù),其中錯(cuò)誤校驗(yàn)字Pl中的字節(jié)Pll由突發(fā)格式的使用者數(shù)據(jù)Data_Burstl的前面半個(gè)突發(fā)格式數(shù)據(jù)(例如前面8個(gè)字節(jié)的數(shù)據(jù))產(chǎn)生,錯(cuò)誤校驗(yàn)字Pl中的字節(jié)P12由突發(fā)格式的使用者數(shù)據(jù)Data_Burstl的后面半個(gè)突發(fā)格式數(shù)據(jù)(例如后面8個(gè)字節(jié)的數(shù)據(jù))產(chǎn)生。其中錯(cuò)誤校驗(yàn)字P2中的字節(jié)P21由突發(fā)格式的使用者數(shù)據(jù)Data_Burst2的前面半個(gè)突發(fā)格式數(shù)據(jù)(例如前面8個(gè)字節(jié)的數(shù)據(jù))產(chǎn)生,錯(cuò)誤校驗(yàn)字P2中的字節(jié)P22由突發(fā)格式的使用者數(shù)據(jù)Data_Burst2的后面半個(gè)突發(fā)格式數(shù)據(jù)(例如后面8個(gè)字節(jié)的數(shù)據(jù))產(chǎn)生。后續(xù)類推。[0060]圖3B更詳細(xì)說明控制器運(yùn)算數(shù)據(jù)專屬格式MCU_Data的一種實(shí)施方式。此實(shí)施例中,一個(gè)突發(fā)格式的長度是16字節(jié)。由于控制器運(yùn)算數(shù)據(jù)的數(shù)據(jù)量較的使用者數(shù)據(jù)通常小得多,可將每8個(gè)字節(jié)的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst及其錯(cuò)誤校驗(yàn)內(nèi)容P由單一個(gè)突發(fā)格式暫存至動(dòng)態(tài)隨機(jī)存取存儲器104。在一優(yōu)選實(shí)施例中,半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst所對應(yīng)生成的錯(cuò)誤校驗(yàn)內(nèi)容P(如圖所示,占據(jù)一字節(jié))規(guī)劃以半個(gè)突發(fā)格式的空間Parity_0.5Burst儲存,與該半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst占據(jù)單一個(gè)突發(fā)格式的空間。[0061]圖3C更詳細(xì)說明映射表數(shù)據(jù)專屬格式Table_Data的一種實(shí)施方式。此實(shí)施例令N為32,是對31位的映射表數(shù)據(jù)Data_Bits作異或(XOR)運(yùn)算以產(chǎn)生一錯(cuò)誤校驗(yàn)位Parity_Bit。[0062]圖4以流程圖說明控制器106對動(dòng)態(tài)隨機(jī)存取存儲器104所作的讀取操作。于步驟S402,控制器106作數(shù)據(jù)類型判斷,以對不同數(shù)據(jù)類型作不同操作。對應(yīng)圖2的寫入操作的流程圖,本發(fā)明同樣也不限制某種屬性的暫態(tài)數(shù)據(jù)一定使用某種數(shù)據(jù)校驗(yàn)以及讀取方式,暫態(tài)數(shù)據(jù)的數(shù)據(jù)校驗(yàn)以及讀取方式與其寫入操作時(shí)所采取的數(shù)據(jù)校驗(yàn)以及寫入方式對應(yīng),因此步驟S402也不是必要步驟,可以不管暫態(tài)數(shù)據(jù)的屬性而在步驟S404~S408的讀取方式,步驟S410~S412的讀取方式以及步驟S414~S416的讀取方式中擇一施行。換句話說,步驟S404~S408的讀取方式,步驟S410~S412的讀取方式以及步驟S414~S416的讀取方式可以是三個(gè)獨(dú)立的對動(dòng)態(tài)隨機(jī)存取存儲器104進(jìn)行讀取操作的實(shí)施方式。[0063]若為使用者數(shù)據(jù),控制器106執(zhí)行步驟S404,自該動(dòng)態(tài)隨機(jī)存取存儲器104讀出一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst。接著,控制器106執(zhí)行步驟S406,自動(dòng)態(tài)隨機(jī)存取存儲器104讀取對應(yīng)該個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst的多個(gè)突發(fā)格式的使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8??刂破?06再執(zhí)行步驟S408,使用該個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst對上述多個(gè)突發(fā)格式的使用者數(shù)據(jù)Data_Burst1、Data_Burst2…Data_Burst8作錯(cuò)誤校驗(yàn)。[0064]若為控制器運(yùn)算數(shù)據(jù),控制器106執(zhí)行步驟S410,以一個(gè)突發(fā)格式MCU_Data讀取暫存于動(dòng)態(tài)隨機(jī)存取存儲器104的半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst與對應(yīng)的錯(cuò)誤校驗(yàn)內(nèi)容P(由半個(gè)突發(fā)格式的空間ParityJ).5Burst取出)??刂破?06再執(zhí)行步驟S412,對上述半個(gè)突發(fā)格式Data_0.5Burst的控制器運(yùn)算數(shù)據(jù)作錯(cuò)誤校驗(yàn)。[0065]若為映射表數(shù)據(jù),控制器106執(zhí)行步驟S414,讀取暫存于動(dòng)態(tài)隨機(jī)存取存儲器104的映射表數(shù)據(jù)及其錯(cuò)誤校驗(yàn)位Parity_Bit,一共N位的數(shù)據(jù)。控制器106執(zhí)行步驟S416,以其中的錯(cuò)誤校驗(yàn)位Parity_Bit對自其中的(N-1)位的映射表數(shù)據(jù)Data_Bits作錯(cuò)誤校驗(yàn)。[0066]圖5A更詳細(xì)說明使用者數(shù)據(jù)專屬格式User_Data的錯(cuò)誤校驗(yàn)。動(dòng)態(tài)隨機(jī)存取存儲器104讀取操作時(shí),較先讀出的是一個(gè)突發(fā)格式的錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst,后續(xù)讀出的循序是八個(gè)突發(fā)格式的使用者數(shù)據(jù)Data_Burstl、Data_Burst2...Data_Burst8。錯(cuò)誤校驗(yàn)內(nèi)容Parity_Burst由八個(gè)錯(cuò)誤校驗(yàn)字Pl~P8組成,其分別對應(yīng)八個(gè)突發(fā)格式Data_Burstl>Data_Burs12...Data_Burs18的使用者數(shù)據(jù),其中錯(cuò)誤校驗(yàn)字Pl中的字節(jié)Pll用來對使用者數(shù)據(jù)Data_Burstl的前面半個(gè)突發(fā)格式數(shù)據(jù)(例如前面8個(gè)字節(jié)的數(shù)據(jù))作錯(cuò)誤校驗(yàn),以獲得校驗(yàn)后的使用者數(shù)據(jù)。錯(cuò)誤校驗(yàn)字Pl中字節(jié)P12用來對使用者數(shù)據(jù)Data_Burstl的后面半個(gè)突發(fā)格式數(shù)據(jù)(例如前面8個(gè)字節(jié)的數(shù)據(jù))作錯(cuò)誤校驗(yàn),以獲得校驗(yàn)后的使用者數(shù)據(jù)。其中錯(cuò)誤校驗(yàn)字P2中的字節(jié)P21用來對使用者數(shù)據(jù)Data_Burst2的前面半個(gè)突發(fā)格式數(shù)據(jù)作錯(cuò)誤校驗(yàn),以獲得校驗(yàn)后的使用者數(shù)據(jù)。錯(cuò)誤校驗(yàn)字P2中的字節(jié)P22用來對使用者數(shù)據(jù)Data_Burst2的后面半個(gè)突發(fā)格式數(shù)據(jù)作錯(cuò)誤校驗(yàn),以獲得校驗(yàn)后的使用者數(shù)據(jù)。后續(xù)類推。[0067]圖5B更詳細(xì)說明控制器運(yùn)算數(shù)據(jù)專屬格式MCU_Data的錯(cuò)誤校驗(yàn)。半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)Data_0.5Burst是由半個(gè)突發(fā)格式的空間Parity_0.5Burst儲存的錯(cuò)誤校驗(yàn)內(nèi)容P作錯(cuò)誤校驗(yàn),以獲得校驗(yàn)后的控制器運(yùn)算數(shù)據(jù)Data_Checked。[0068]圖5C更詳細(xì)說明映射表數(shù)據(jù)專屬格式Table_Data的錯(cuò)誤校驗(yàn)。此實(shí)施例令N為32,是對31位的映射表數(shù)據(jù)Data_Bits與錯(cuò)誤校驗(yàn)位Parity_Bit作異或(XOR)運(yùn)算,以獲得一指標(biāo)顯示目前31位的映射表數(shù)據(jù)Data_Bits是否正確。[0069]數(shù)據(jù)儲存裝置100中的非易失性存儲器與易失性存儲器不限定以快閃存儲器102以及動(dòng)態(tài)隨機(jī)存取存儲器104實(shí)現(xiàn)。此外,所揭示的易失性存儲器數(shù)據(jù)校驗(yàn)技術(shù)不限定應(yīng)用于數(shù)據(jù)儲存裝置。任何電子裝置只要安裝有易失性存儲器都可使用所揭示的數(shù)據(jù)校驗(yàn)技術(shù)。[0070]總之,凡是以格式User_Data以和/或格式MCU_Data以和/或格式Table_Data達(dá)到數(shù)據(jù)校驗(yàn)的易失性存儲器操作,皆屬于本發(fā)明所意圖保護(hù)的范圍。[0071]一種實(shí)施方式是根據(jù)暫態(tài)數(shù)據(jù)的尺寸決定該以何種格式達(dá)成易失性存儲器的數(shù)據(jù)校驗(yàn)。數(shù)據(jù)尺寸大于一第一數(shù)據(jù)量的第一型數(shù)據(jù)可以上述格式User_Data實(shí)現(xiàn)易失性存儲器的數(shù)據(jù)校驗(yàn)。數(shù)據(jù)尺寸不超過該第一數(shù)據(jù)量但高于一第二數(shù)據(jù)量的第二型數(shù)據(jù)可以上述格式MCU_Data實(shí)現(xiàn)易失性存儲器的數(shù)據(jù)校驗(yàn)。數(shù)據(jù)尺寸不高于該第二數(shù)據(jù)量的第三型數(shù)據(jù)可以上述格式Table_Data實(shí)現(xiàn)易失性存儲器的數(shù)據(jù)校驗(yàn)。[0072]雖然本發(fā)明已以較佳實(shí)施例揭示如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的精神和范圍的前提下,可做些許更動(dòng)與潤飾,因此本發(fā)明的保護(hù)范圍是以本發(fā)明的權(quán)利要求為準(zhǔn)?!緳?quán)利要求】1.一種數(shù)據(jù)儲存裝置,包括:一非易失性存儲器;一易失性存儲器;以及一控制器,根據(jù)一主機(jī)的要求操作該非易失性存儲器,且以該易失性存儲器暫存與該非易失性存儲器相關(guān)的暫態(tài)數(shù)據(jù),其中,該控制器對上述暫態(tài)數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容,并且將所產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容與對應(yīng)的暫態(tài)數(shù)據(jù)呈至少一突發(fā)格式暫存至該易失性存儲器。2.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其中該控制器經(jīng)由一數(shù)據(jù)總線耦接該易失性存儲器,所述突發(fā)格式的長度是該數(shù)據(jù)總線的寬度的M倍,其中M大于或等于2。3.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其中所述突發(fā)格式的長度為16個(gè)字節(jié),該數(shù)據(jù)總線的寬度為16位。4.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其中該暫態(tài)數(shù)據(jù)是該主機(jī)要求寫入該非易失性存儲器的使用者數(shù)據(jù),其中:該控制器將所述使用者數(shù)據(jù)呈多個(gè)所述突發(fā)格式暫存至該易失性存儲器中,該控制器還針對上述每個(gè)呈所述突發(fā)格式暫存的使用者數(shù)據(jù)分別產(chǎn)生一錯(cuò)誤校驗(yàn)字,并將各錯(cuò)誤校驗(yàn)字組成所述錯(cuò)誤校驗(yàn)內(nèi)容,并且于所述使用者數(shù)據(jù)呈多個(gè)所述突發(fā)格式暫存至該易失性存儲器中之后,該控制器還將所述錯(cuò)誤校驗(yàn)內(nèi)容呈另一個(gè)突發(fā)格式暫存至該易失性存儲器。5.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,該暫態(tài)數(shù)據(jù)是該主機(jī)操作該非易失性存儲器的控制器運(yùn)算數(shù)據(jù),其中:該控制器將所述控制器運(yùn)算數(shù)據(jù)呈半個(gè)所述突發(fā)格式暫存至該易失性存儲器中,該控制器還對上述控制器運(yùn)算數(shù)據(jù)產(chǎn)生所述錯(cuò)誤校驗(yàn)內(nèi)容,將上述控制器運(yùn)算數(shù)據(jù)與所述錯(cuò)誤校驗(yàn)內(nèi)容呈一個(gè)突發(fā)格式暫存至該易失性存儲器。6.如權(quán)利要求1所述的數(shù)據(jù)儲存裝置,其中:該控制器還對(N-1)位的映射表數(shù)據(jù)產(chǎn)生一錯(cuò)誤校驗(yàn)位,并將上述(N-1)位的映射表數(shù)據(jù)與該錯(cuò)誤校驗(yàn)位暫存至該易失性存儲器。7.一種數(shù)據(jù)儲存裝置的易失性存儲器的數(shù)據(jù)校驗(yàn)方法,其中該數(shù)據(jù)儲存裝置包括一非易失性存儲器以及一易失性存儲器,該方法包括:對與該非易失性存儲器相關(guān)的暫態(tài)數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;以及將上述暫態(tài)數(shù)據(jù)以及對應(yīng)的錯(cuò)誤校驗(yàn)內(nèi)容呈至少一突發(fā)格式暫存至該易失性存儲器中。8.如權(quán)利要求7所述的數(shù)據(jù)校驗(yàn)方法,其中所述突發(fā)格式的長度是該易失性存儲器的總線寬度的M倍,其中M大于或等于2。9.如權(quán)利要求7所述的數(shù)據(jù)校驗(yàn)方法,其中該暫態(tài)數(shù)據(jù)是一主機(jī)要求寫入該非易失性存儲器的使用者數(shù)據(jù),該方法還包括:針對呈多個(gè)所述突發(fā)格式的使用者數(shù)據(jù)中的每一個(gè)分別產(chǎn)生一錯(cuò)誤校驗(yàn)字,并將所產(chǎn)生的錯(cuò)誤校驗(yàn)字組成所述錯(cuò)誤校驗(yàn)內(nèi)容;將呈多個(gè)所述突發(fā)格式的使用者數(shù)據(jù)暫存至該易失性存儲器中;以及將所述錯(cuò)誤校驗(yàn)內(nèi)容呈另一個(gè)突發(fā)格式暫存至該易失性存儲器。10.如權(quán)利要求7所述的數(shù)據(jù)校驗(yàn)方法,其中該暫態(tài)數(shù)據(jù)是一主機(jī)操作該非易失性存儲器的控制器運(yùn)算數(shù)據(jù),該方法還包括:對半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)產(chǎn)生所述錯(cuò)誤校驗(yàn)內(nèi)容;以及將上述半個(gè)突發(fā)格式的控制器運(yùn)算數(shù)據(jù)與所述錯(cuò)誤校驗(yàn)內(nèi)容呈一個(gè)突發(fā)格式暫存至該易失性存儲器。11.如權(quán)利要求7所述的數(shù)據(jù)校驗(yàn)方法,還包括:對(N-1)位的映射表數(shù)據(jù)產(chǎn)生一錯(cuò)誤校驗(yàn)位;以及將上述(N-1)位的映射表數(shù)據(jù)與該錯(cuò)誤校驗(yàn)位暫存至該易失性存儲器。12.—種易失性存儲器的數(shù)據(jù)校驗(yàn)方法,包括:對數(shù)據(jù)尺寸大于一第一數(shù)據(jù)量的第一型數(shù)據(jù),產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;將所述第一型數(shù)據(jù)呈多個(gè)突發(fā)格式寫入該易失性存儲器;以及將所產(chǎn)生的所述錯(cuò)誤校驗(yàn)內(nèi)容呈另一個(gè)突發(fā)格式寫入至該易失性存儲器。13.如權(quán)利要求12所述的數(shù)據(jù)校驗(yàn)方法,還包括:關(guān)于數(shù)據(jù)尺寸不超過該第一數(shù)據(jù)量但高于一第二數(shù)據(jù)量的第二型數(shù)據(jù),取半個(gè)突發(fā)格式的所述第二型數(shù)據(jù)產(chǎn)生錯(cuò)誤校驗(yàn)內(nèi)容;以及將呈半個(gè)突發(fā)格式的所述第二型數(shù)據(jù)與所對應(yīng)產(chǎn)生的錯(cuò)誤校驗(yàn)內(nèi)容呈一個(gè)突發(fā)格式寫入該易失性存儲器。14.如權(quán)利要求12所述的數(shù)據(jù)校驗(yàn)方法,還包括:`關(guān)于數(shù)據(jù)尺寸不高于一第二數(shù)據(jù)量的第三型數(shù)據(jù),取(N-1)位產(chǎn)生一錯(cuò)誤校驗(yàn)位;以及將該錯(cuò)誤校驗(yàn)位與所對應(yīng)的(N-1)位的第三型數(shù)據(jù)寫入該易失性存儲器?!疚臋n編號】G06F11/10GK103744744SQ201410046036【公開日】2014年4月23日申請日期:2014年2月8日優(yōu)先權(quán)日:2014年2月8日【發(fā)明者】馮雷申請人:威盛電子股份有限公司