本發(fā)明是有關(guān)于存儲(chǔ)器裝置,特別是有關(guān)于存儲(chǔ)器裝置的存儲(chǔ)器區(qū)塊使用方法。
背景技術(shù):
隨著快閃存儲(chǔ)器工藝規(guī)格持續(xù)演進(jìn),更加微縮導(dǎo)致快閃存儲(chǔ)器越來(lái)越難達(dá)到應(yīng)有的元件特性。這導(dǎo)致快閃存儲(chǔ)器執(zhí)行編程(program)操作/抹除(erase)操作的效率低落而使數(shù)據(jù)流失。快閃存儲(chǔ)器芯片的讀寫耐用度隨之下滑。有鑒于此,本發(fā)明提出一種存儲(chǔ)器電路及存儲(chǔ)器區(qū)塊使用方法以增加快閃存儲(chǔ)器芯片的讀寫耐用度。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的一實(shí)施例提供一種存儲(chǔ)器裝置。該存儲(chǔ)器裝置包括一存儲(chǔ)器、一快閃存儲(chǔ)器陣列、一區(qū)塊解碼器以及一控制邏輯電路。該存儲(chǔ)器用以存儲(chǔ)一旗標(biāo)和多個(gè)模式位。該快閃存儲(chǔ)器陣列包括多個(gè)存儲(chǔ)器區(qū)塊。該區(qū)塊解碼器連接至該存儲(chǔ)器和該快閃存儲(chǔ)器陣列,用以依據(jù)該等模式位設(shè)定該等存儲(chǔ)器區(qū)塊被該存儲(chǔ)器裝置使用的先后順序。該控制邏輯電路包括至少一計(jì)數(shù)器,并連接至該存儲(chǔ)器、該區(qū)塊解碼器和該快閃存儲(chǔ)器陣列,其中該至少一計(jì)數(shù)器用以計(jì)數(shù)使用中的該存儲(chǔ)器區(qū)塊的一操作次數(shù);其中當(dāng)該至少一計(jì)數(shù)器的該操作次數(shù)大于一既定次數(shù)時(shí),該控制邏輯電路設(shè)定該存儲(chǔ)器中的該旗標(biāo)在一第一狀態(tài);以及其中在該快閃存儲(chǔ)器陣列的該等存儲(chǔ)器區(qū)塊被全部抹除之后,該控制邏輯電路檢測(cè)該旗標(biāo)是否在該第一狀態(tài),若是則該控制邏輯電路在該等模式位之中選取未被選取過的該模式位,使該區(qū)塊解碼器依據(jù)該未被選取過的該模式位設(shè)定該等存儲(chǔ)器區(qū)塊被該存儲(chǔ)器裝置使用的先后順序。
本發(fā)明的一實(shí)施例一種存儲(chǔ)器區(qū)塊使用方法,包括設(shè)定一存儲(chǔ)器所存儲(chǔ)的一旗標(biāo)和多個(gè)模式位;計(jì)數(shù)一快閃存儲(chǔ)器陣列的多個(gè)存儲(chǔ)器區(qū)塊的每一個(gè)對(duì)應(yīng)的一操作次數(shù);檢測(cè)該等存儲(chǔ)器區(qū)塊之一對(duì)應(yīng)的該操作次數(shù)是否大于一既定次數(shù);當(dāng)該等計(jì)數(shù)器之一的該操作次數(shù)大于該既定次數(shù)時(shí),設(shè)定該存儲(chǔ)器中的該旗標(biāo)在一第一狀態(tài);在該快閃 存儲(chǔ)器陣列的該等存儲(chǔ)器區(qū)塊被全部抹除之后,檢測(cè)該旗標(biāo)是否在該第一狀態(tài);以及若檢測(cè)到該旗標(biāo)在該第一狀態(tài),則在該等模式位之中選取未被選取過的該模式位,以設(shè)定該等存儲(chǔ)器區(qū)塊被使用的先后順序。
本發(fā)明的有益效果在于,通過實(shí)施本發(fā)明,可進(jìn)一步增加產(chǎn)品附加價(jià)值,使消費(fèi)者在固定存儲(chǔ)區(qū)域當(dāng)中享有集成電路的長(zhǎng)效壽命。
附圖說(shuō)明
圖1是依據(jù)本發(fā)明的一第一實(shí)施例實(shí)現(xiàn)的一存儲(chǔ)器裝置10的區(qū)塊圖。
圖2是依據(jù)本發(fā)明的一第二實(shí)施例舉例說(shuō)明區(qū)塊解碼器130如何設(shè)定該等存儲(chǔ)器區(qū)塊被使用的先后順序。
圖3是依據(jù)本發(fā)明的一第三實(shí)施例實(shí)現(xiàn)區(qū)塊解碼器130的區(qū)塊圖。
圖4a和圖4b是依據(jù)本發(fā)明的一第四實(shí)施例舉例說(shuō)明如何設(shè)定旗標(biāo)位alarm-flag的一流程圖。
圖5是依據(jù)本發(fā)明的一第五實(shí)施例舉例說(shuō)明如何設(shè)定旗標(biāo)位alarm-flag的一流程圖。
圖6是依據(jù)本發(fā)明的一第六實(shí)施例實(shí)現(xiàn)一種存儲(chǔ)器區(qū)塊使用方法的一流程圖。
附圖標(biāo)號(hào)
10~存儲(chǔ)器裝置
11~快閃存儲(chǔ)器陣列
12~存儲(chǔ)器
121、122~迷你存儲(chǔ)器陣列
13~x解碼器
130~區(qū)塊解碼器
131~控制邏輯電路
132~地址解碼器
133、134、135、136~與門
14~地址邏輯電路
15~y多工器
16~感測(cè)放大器
17~輸入緩沖器
18~輸出緩沖器
a<18:0>、x<18:8>、y<7:0>、a<18:16>~地址數(shù)據(jù)
iq<7:0>~寫入數(shù)據(jù)
sa0-sa7~存儲(chǔ)器區(qū)塊
alarm-flag~旗標(biāo)位
mode0-mode3~模式位
sa<7:0>~區(qū)塊地址數(shù)據(jù)
scramble0-scramble3~地址轉(zhuǎn)換模式
具體實(shí)施方式
本發(fā)明所附圖示的實(shí)施例或例子將如以下說(shuō)明。本發(fā)明的范疇并非以此為限。本領(lǐng)域技術(shù)人員應(yīng)能知悉在不脫離本發(fā)明的精神和架構(gòu)的前提下,當(dāng)可作些許更動(dòng)、替換和置換。在本發(fā)明的實(shí)施例中,元件符號(hào)可能被重復(fù)地使用,本發(fā)明的多種實(shí)施例可能共用相同的元件符號(hào),但為一實(shí)施例所使用的特征元件不必然為另一實(shí)施例所使用。
一般或非門快閃存儲(chǔ)器(norflash)主要應(yīng)用于存儲(chǔ)基本輸入輸出系統(tǒng)(bios)的存儲(chǔ)器裝置。終端產(chǎn)品在開機(jī)時(shí),中央處理器會(huì)載入bios里的開機(jī)碼,以初始化終端產(chǎn)品的硬件和軟件設(shè)定。從各領(lǐng)域消費(fèi)型電子應(yīng)用中得知,客戶端會(huì)對(duì)快閃存儲(chǔ)器執(zhí)行編程操作/抹除操作,但快閃存儲(chǔ)器之中不是每個(gè)存儲(chǔ)器區(qū)塊都會(huì)被大量執(zhí)行編程操作/抹除操作。往往只有幾個(gè)存儲(chǔ)器區(qū)塊的小區(qū)域進(jìn)行編程/抹除動(dòng)作。因此,本發(fā)明新提出存儲(chǔ)器區(qū)塊使用方法以附予新功能在芯片抹除(erase)指令中,以將快閃存儲(chǔ)器的扇區(qū)(sector)或是區(qū)塊(block)的地址進(jìn)行重新配置,進(jìn)而提供健康存儲(chǔ)器區(qū)域作為預(yù)定執(zhí)行編程操作/抹除操作的區(qū)域。本發(fā)明新提出存儲(chǔ)器區(qū)塊使用方法亦將劣化區(qū)域轉(zhuǎn)去其他位置,以提升可能數(shù)倍于原先的編程操作次數(shù)/抹除操作次數(shù)。本發(fā)明新提出存儲(chǔ)器區(qū)塊使用方法進(jìn)一步增加產(chǎn)品附加價(jià)值,使消費(fèi)者在固定存儲(chǔ)區(qū)域當(dāng)中享有集成電路的長(zhǎng)效壽命。
圖1是依據(jù)本發(fā)明的一第一實(shí)施例實(shí)現(xiàn)的一存儲(chǔ)器裝置10的區(qū)塊圖。在本發(fā)明第一實(shí)施例中,存儲(chǔ)器裝置10包括一快閃存儲(chǔ)器陣列11、一存儲(chǔ)器12、一x解碼器13、一地址邏輯電路14、一y多工器15、一感測(cè)放大器16、一輸入緩沖器17和一輸出緩沖器18。存儲(chǔ)器裝置10接收地址數(shù)據(jù)a<18:0>、信號(hào)輸入
在本發(fā)明第一實(shí)施例中,快閃存儲(chǔ)器陣列11包括多個(gè)存儲(chǔ)器區(qū)塊(未圖示),其中每一存儲(chǔ)器區(qū)塊各自的p型阱互不相連。因此,每一存儲(chǔ)器區(qū)塊各自為獨(dú)立的存儲(chǔ)器區(qū)塊,但本發(fā)明并不限定于此。在本發(fā)明第一實(shí)施例中,存儲(chǔ)器12是另一尺寸比快閃存儲(chǔ)器陣列11小的快閃存儲(chǔ)器陣列,但本發(fā)明并不限定于此。存儲(chǔ)器12用以存儲(chǔ)一旗標(biāo)和多個(gè)模式位,其中每一模式位分別對(duì)應(yīng)至這些存儲(chǔ)器區(qū)塊被存儲(chǔ)器裝置10的x解碼器13使用的不同先后順序。x解碼器13包括一區(qū)塊解碼器130和一控制邏輯電路131。區(qū)塊解碼器130分別連接至快閃存儲(chǔ)器陣列11和存儲(chǔ)器12,并用以設(shè)定這些存儲(chǔ)器區(qū)塊被存儲(chǔ)器裝置10的x解碼器13使用的先后順序??刂七壿嬰娐?31分別連接至快閃存儲(chǔ)器陣列11、存儲(chǔ)器12和區(qū)塊解碼器130??刂七壿嬰娐?31包括至少一計(jì)數(shù)器,其中至少一計(jì)數(shù)器用以計(jì)數(shù)使用中的存儲(chǔ)器區(qū)塊的一操作次數(shù)。區(qū)塊解碼器130和控制邏輯電路131并不限定于設(shè)置于x解碼器13之中。在另一實(shí)施例中,區(qū)塊解碼器130和控制邏輯電路131被設(shè)置于x解碼器13的外部。
在本發(fā)明第一實(shí)施例中,當(dāng)至少一計(jì)數(shù)器的操作次數(shù)大于一既定次數(shù)(例如,28=256次)時(shí),控制邏輯電路131設(shè)定存儲(chǔ)器12中的旗標(biāo)在一第一狀態(tài)(例如,設(shè)定旗標(biāo)的位值為0)。
在本發(fā)明第一實(shí)施例中,在快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊被全部抹除之后,控制邏輯電路131檢測(cè)存儲(chǔ)器12中的旗標(biāo)是否在第一狀態(tài)。若控制邏輯電路131 檢測(cè)旗標(biāo)在第一狀態(tài),則控制邏輯電路131在這些模式位之中選取未被選取過的模式位,以設(shè)定這些存儲(chǔ)器區(qū)塊被存儲(chǔ)器裝置10的x解碼器13使用的先后順序。在本發(fā)明第一實(shí)施例中,控制邏輯電路131在這些模式位之中選取未被選取過的模式位之后,設(shè)定存儲(chǔ)器12中的旗標(biāo)在一第二狀態(tài)(例如,設(shè)定旗標(biāo)的位值為1)。
在本發(fā)明第一實(shí)施例中,前述操作次數(shù)可為存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行抹除操作的操作次數(shù)、執(zhí)行編程操作的操作次數(shù)或是執(zhí)行后編程操作的操作次數(shù)??刂七壿嬰娐?31可分別具有不同的計(jì)數(shù)器,以分別統(tǒng)計(jì)上述抹除操作次數(shù)、編程操作次數(shù)或是后編程操作次數(shù)。在本發(fā)明另一實(shí)施例中,控制邏輯電路131亦可采用單一個(gè)計(jì)數(shù)器分別統(tǒng)計(jì)上述抹除操作次數(shù)、編程操作次數(shù)和后編程操作次數(shù)。
圖2是依據(jù)本發(fā)明的一第二實(shí)施例舉例說(shuō)明區(qū)塊解碼器130如何設(shè)定這些存儲(chǔ)器區(qū)塊被使用的先后順序。在本發(fā)明第二實(shí)施例中,快閃存儲(chǔ)器陣列11被劃分為存儲(chǔ)器區(qū)塊sa0、存儲(chǔ)器區(qū)塊sa1、存儲(chǔ)器區(qū)塊sa2、存儲(chǔ)器區(qū)塊sa3、存儲(chǔ)器區(qū)塊sa4、存儲(chǔ)器區(qū)塊sa5、存儲(chǔ)器區(qū)塊sa6和存儲(chǔ)器區(qū)塊sa7。存儲(chǔ)器12包括一迷你存儲(chǔ)器陣列121和一迷你存儲(chǔ)器陣列122。迷你存儲(chǔ)器陣列121用以存儲(chǔ)一旗標(biāo)位alarm-flag,而迷你存儲(chǔ)器陣列122用以存儲(chǔ)多個(gè)模式位mode0、mode1、mode2和mode3。區(qū)塊解碼器130接收模式位mode0~mode3和地址數(shù)據(jù)a<18:16>,并依此輸出區(qū)塊地址數(shù)據(jù)sa<7:0>至快閃存儲(chǔ)器陣列11,其中地址數(shù)據(jù)a<18:16>和存儲(chǔ)器區(qū)塊sa0~sa7的對(duì)應(yīng)關(guān)系表示于表一如下:
表一
在本發(fā)明第二實(shí)施例中,控制邏輯電路131分別連接至迷你存儲(chǔ)器陣列121和迷你存儲(chǔ)器陣列122??刂七壿嬰娐?31依據(jù)接收自迷你存儲(chǔ)器陣列121中的旗標(biāo)位alarm-flag設(shè)定迷你存儲(chǔ)器陣列122中的模式位mode0~mode3。
在本發(fā)明第二實(shí)施例中,若存儲(chǔ)器裝置10是一并列式(parallel)快閃存儲(chǔ)器,則這些存儲(chǔ)器區(qū)塊sa0~sa7以扇區(qū)(sector)的不同進(jìn)行劃分,亦即快閃存儲(chǔ)器陣列11所具有的8個(gè)扇區(qū)進(jìn)行劃分;若存儲(chǔ)器裝置10是一序列式(serial)快閃存儲(chǔ)器,則這些存儲(chǔ)器區(qū)塊sa0~sa7以區(qū)塊(block)的不同進(jìn)行劃分,亦即快閃存儲(chǔ)器陣列11所具有的8個(gè)區(qū)塊進(jìn)行劃分。在區(qū)塊解碼器130未對(duì)快閃存儲(chǔ)器陣列11做任何設(shè)定的情形下,快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用的預(yù)設(shè)順序?yàn)椋簊a0→sa1→sa2→sa3→sa4→sa5→sa6→sa7。
同前述第一實(shí)施例,在本發(fā)明第二實(shí)施例中,存儲(chǔ)器區(qū)塊sa0~sa7的每一個(gè)皆具有統(tǒng)計(jì)上述抹除操作次數(shù)、編程操作次數(shù)和后編程操作次數(shù)的三個(gè)計(jì)數(shù)器。當(dāng)這些計(jì)數(shù)器之一的操作次數(shù)大于一既定次數(shù)(例如,28=256次)時(shí),存儲(chǔ)器12中的旗標(biāo)位alarm-flag被控制邏輯電路131設(shè)定在一第一狀態(tài)(例如,設(shè)定旗標(biāo)位alarm-flag的位值為0)。
在本發(fā)明第二實(shí)施例中,存儲(chǔ)器12所存儲(chǔ)的多個(gè)模式位分別為mode0、mode1、mode2和mode3。每一模式位mode0~mode3分別對(duì)應(yīng)至這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的不同先后順序,并表示于表二如下:
表二
由表二可知,當(dāng)區(qū)塊解碼器130采用模式位mode1時(shí),快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的先后順序?yàn)椋? sa1→sa0→sa3→sa2→sa5→sa4→sa7→sa6。再者由表二可知,對(duì)于不同的模式位mode0~mode3而言,第一個(gè)被使用的存儲(chǔ)器區(qū)塊皆不相同,且存儲(chǔ)器區(qū)塊的更換順序亦皆不相同。
在本發(fā)明第二實(shí)施例中,在快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊sa0~sa7被全部抹除之后,區(qū)塊解碼器130先判斷旗標(biāo)位alarm-flag是否被設(shè)定在第一狀態(tài)(例如,旗標(biāo)位alarm-flag的位值是否為0)。若是,則區(qū)塊解碼器130讀取存儲(chǔ)器12目前所存儲(chǔ)的模式位mode0~mode3,并依據(jù)模式位mode0~mode3和地址數(shù)據(jù)a<18:16>改變區(qū)塊地址數(shù)據(jù)sa<7:0>。區(qū)塊解碼器130再輸出區(qū)塊地址數(shù)據(jù)sa<7:0>至快閃存儲(chǔ)器陣列11,以決定這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的不同先后順序。
在本發(fā)明第二實(shí)施例中,若區(qū)塊解碼器130判斷旗標(biāo)位alarm-flag并未被設(shè)定在第一狀態(tài)(例如,旗標(biāo)位alarm-flag的位值為1時(shí)),則區(qū)塊解碼器130并未讀取存儲(chǔ)器12目前所存儲(chǔ)的模式位mode0~mode3,即是依據(jù)先前所使用的模式位mode0~mode3和地址數(shù)據(jù)a<18:16>改變區(qū)塊地址數(shù)據(jù)sa<7:0>。區(qū)塊解碼器130再輸出區(qū)塊地址數(shù)據(jù)sa<7:0>至快閃存儲(chǔ)器陣列11,以決定這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的不同先后順序。
圖3是依據(jù)本發(fā)明的一第三實(shí)施例實(shí)現(xiàn)區(qū)塊解碼器130的區(qū)塊圖。在本發(fā)明第三實(shí)施例中,區(qū)塊解碼器130包括地址解碼器132和與門133~136。地址解碼器132接收與門133~136輸出的多個(gè)地址轉(zhuǎn)換模式scramble0~scramble3和地址數(shù)據(jù)a<18:16>,并依此輸出區(qū)塊地址數(shù)據(jù)sa<7:0>至快閃存儲(chǔ)器陣列11。與門133~136分別讀取存儲(chǔ)在迷你存儲(chǔ)器陣列122的模式位mode0~mode3。
在本發(fā)明第三實(shí)施例中,在快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊sa0~sa7被全部抹除之后,控制邏輯電路131判斷旗標(biāo)位alarm-flag是否被設(shè)定在這些一狀態(tài)(例如,旗標(biāo)位alarm-flag的位值是否為0)。若是,則控制邏輯電路131在這些模式位mode0~mode3之中選取(設(shè)定)一個(gè)未被選取過(未被設(shè)定過)的模式位。例如,模式位mode0~mode3的位值分別為0、1、1、1,其中0代表已被使用過,1代表尚未被使用過。此時(shí),控制邏輯電路131依據(jù)與門133~136的輸入信號(hào)設(shè)計(jì)將未被設(shè)定的模式位mode1~mode3之一的位值依序設(shè)定為0(每次僅將一個(gè)未被選取過的模式位設(shè)定為0),并將新的設(shè)定值寫入存儲(chǔ)器12的迷你存儲(chǔ)器陣列122。因此,控制 邏輯電路131將模式位mode1的位值設(shè)定為0(在本發(fā)明另一實(shí)施例中,亦可依據(jù)與門133~136的不同的輸入信號(hào)設(shè)計(jì)將模式位mode2的位值或模式位mode3的位值設(shè)定為0)。
接著,地址解碼器132才會(huì)讀取與門133~136輸出的這些地址轉(zhuǎn)換模式scramble0~scramble3得知哪一個(gè)的值為1,其中這些地址轉(zhuǎn)換模式scramble0~scramble3分別對(duì)應(yīng)至表二所示mode0~mode3。最后,地址解碼器132使用選取地址轉(zhuǎn)換模式scramble1(例如,當(dāng)?shù)刂忿D(zhuǎn)換模式scramble1為1時(shí))和地址數(shù)據(jù)a<18:16>改變區(qū)塊地址數(shù)據(jù)sa<7:0>。區(qū)塊解碼器130再輸出區(qū)塊地址數(shù)據(jù)sa<7:0>至快閃存儲(chǔ)器陣列11,以決定這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的先后順序(例如,地址轉(zhuǎn)換模式scramble1(mode1)所對(duì)應(yīng)的使用順序sa1→sa0→sa3→sa2→sa5→sa4→sa7→sa6)。
在本發(fā)明第三實(shí)施例中,若旗標(biāo)位alarm-flag并未被設(shè)定在第一狀態(tài)(例如,旗標(biāo)位alarm-flag的位值為1時(shí)),此時(shí),地址解碼器132維持原先這些存儲(chǔ)器區(qū)塊sa0~sa7被存儲(chǔ)器裝置10的x解碼器13使用/讀取的先后順序,亦即依據(jù)上一次設(shè)定過的地址轉(zhuǎn)換模式scramble0~scramble3的其中一個(gè)(例如,繼續(xù)使用地址轉(zhuǎn)換模式scramble1)和地址數(shù)據(jù)a<18:16>改變區(qū)塊地址數(shù)據(jù)sa<7:0>。
此外值得注意的是圖3所示控制邏輯電路131和與門133~136僅為特定邏輯電路。本領(lǐng)域普通技術(shù)人員可以知道控制邏輯電路131和與門133~136亦可以為其他邏輯電路。因此,任何可實(shí)現(xiàn)圖3所示控制邏輯電路131和與門133~136邏輯功能的邏輯電路皆不脫離本發(fā)明的專利保護(hù)范圍。
圖4a和圖4b是依據(jù)本發(fā)明的一第四實(shí)施例舉例說(shuō)明如何設(shè)定旗標(biāo)位alarm-flag的一流程圖。在步驟s401中,一存儲(chǔ)器區(qū)塊接收到一抹除指令。在步驟s402中,存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行一預(yù)編程(pre-program)操作。在步驟s403中,存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行一抹除操作,控制邏輯電路131的一抹除計(jì)數(shù)器計(jì)數(shù)執(zhí)行抹除操作的一區(qū)塊抹除操作次數(shù),并進(jìn)入步驟s404。在步驟s404中,控制邏輯電路131判定區(qū)塊抹除操作次數(shù)是否大于一最大次數(shù)(例如,1024次)。若是進(jìn)入步驟s405;反之則進(jìn)入步驟s406。在步驟s405中,存儲(chǔ)器裝置10判定快閃存儲(chǔ)器陣列11已經(jīng)損壞。在步驟s406中,控制邏輯電路131判定區(qū)塊抹除操作次數(shù)是否大于一既定次數(shù)(例如,256次)。若是進(jìn)入步驟s407;反之則進(jìn)入步驟s408。在步驟 s407中,控制邏輯電路131設(shè)定存儲(chǔ)器12中的旗標(biāo)位alarm-flag在一第一狀態(tài)(例如,設(shè)定旗標(biāo)位alarm-flag的位值為0),并進(jìn)入步驟s408。
在步驟s408中,存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行一后編程(post-program)操作,控制邏輯電路131的一后編程計(jì)數(shù)器計(jì)數(shù)執(zhí)行后編程操作的一區(qū)塊后編程操作次數(shù),并進(jìn)入步驟s409。在步驟s409中,控制邏輯電路131判定區(qū)塊后編程操作次數(shù)是否大于一最大次數(shù)(例如,1024次)。若是進(jìn)入步驟s410;反之則進(jìn)入步驟s411。在步驟s410中,存儲(chǔ)器裝置10判定快閃存儲(chǔ)器陣列11已經(jīng)損壞。在步驟s411中,控制邏輯電路131判定區(qū)塊后編程操作次數(shù)是否大于一既定次數(shù)(例如,256次)。若是進(jìn)入步驟s412;反之則進(jìn)入步驟s413。在步驟s412中,控制邏輯電路131設(shè)定存儲(chǔ)器12中的旗標(biāo)位alarm-flag在一第一狀態(tài)(例如,設(shè)定旗標(biāo)位alarm-flag的位值為0),并進(jìn)入步驟s413。若旗標(biāo)位alarm-flag已經(jīng)在第一狀態(tài),則直接進(jìn)入步驟s413。在步驟s413中,存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行一再新(refresh)操作。值得注意的是,上述步驟s413的執(zhí)行僅限定于存儲(chǔ)器裝置10是一串列周邊接口或非門(spi-nor)快閃存儲(chǔ)器。若存儲(chǔ)器裝置10并非為串列周邊接口或非門快閃存儲(chǔ)器,則跳過上述步驟s413。
圖5是依據(jù)本發(fā)明的一第五實(shí)施例舉例說(shuō)明如何設(shè)定旗標(biāo)位alarm-flag的一流程圖。在步驟s501中,一存儲(chǔ)器區(qū)塊接收到一編程(program)指令。在步驟s502中,存儲(chǔ)器裝置10對(duì)存儲(chǔ)器區(qū)塊執(zhí)行一編程操作。在步驟s503中,控制邏輯電路131的一編程計(jì)數(shù)器計(jì)數(shù)執(zhí)行編程操作的一編程操作次數(shù),并進(jìn)入步驟s504。在步驟s504中,控制邏輯電路131判定編程操作次數(shù)是否大于一最大次數(shù)(例如,1024次)。若是進(jìn)入步驟s505;反之則進(jìn)入步驟s506。在步驟s505中,存儲(chǔ)器裝置10判定快閃存儲(chǔ)器陣列11已經(jīng)損壞。在步驟s506中,控制邏輯電路131判定編程操作次數(shù)是否大于一既定次數(shù)(例如,256次)。若是進(jìn)入步驟s507;反之則流程結(jié)束。在步驟s507中,控制邏輯電路131設(shè)定存儲(chǔ)器12中的旗標(biāo)位alarm-flag在一第一狀態(tài)(例如,設(shè)定旗標(biāo)位alarm-flag的位值為0)。
圖6是依據(jù)本發(fā)明的一第六實(shí)施例實(shí)現(xiàn)一種存儲(chǔ)器區(qū)塊使用方法的一流程圖。在步驟s601中,存儲(chǔ)器裝置10在接收一全抹除指令后,將快閃存儲(chǔ)器陣列11的這些存儲(chǔ)器區(qū)塊全部抹除。在步驟s602中,控制邏輯電路131判定存儲(chǔ)器12存儲(chǔ)的旗標(biāo)位alarm-flag是否被設(shè)定在一第一狀態(tài)(例如,判定旗標(biāo)位alarm-flag的位值是否為 0)。若是進(jìn)入步驟s603,反之則進(jìn)入步驟s606。在步驟s603中,控制邏輯電路131檢查這些模式位是否皆已被選取過(已被設(shè)定過)。若是進(jìn)入步驟s606,反之則進(jìn)入步驟s604。在步驟s604中,控制邏輯電路131在這些模式位之中選取(設(shè)定)未被選取過(未被設(shè)定過)的模式位,設(shè)定所選取的模式位并將所選取的模式位存儲(chǔ)至存儲(chǔ)器12的迷你存儲(chǔ)器陣列122,進(jìn)入步驟s605。在步驟s605中,控制邏輯電路131設(shè)定存儲(chǔ)器12中的旗標(biāo)位alarm-flag在一第二狀態(tài)(例如,將旗標(biāo)位alarm-flag的位值設(shè)定為1),進(jìn)入步驟s606。在步驟s606中,控制邏輯電路131判定上述抹除計(jì)數(shù)器、上述后編程計(jì)數(shù)器或是上述編程計(jì)數(shù)器是否大于一最大次數(shù)(例如,1024次)。若是進(jìn)入步驟s607;反之流程結(jié)束。在步驟s607中,存儲(chǔ)器裝置10判定快閃存儲(chǔ)器陣列11已經(jīng)損壞。
本發(fā)明雖以較佳實(shí)施例揭露如上,使得本領(lǐng)域普通技術(shù)人員能夠更清楚地理解本發(fā)明的內(nèi)容。然而,本領(lǐng)域普通技術(shù)人員應(yīng)理解到他們可輕易地以本發(fā)明作為基礎(chǔ),設(shè)計(jì)或修改流程以及操作不同的存儲(chǔ)器裝置及存儲(chǔ)器區(qū)塊使用方法進(jìn)行相同的目的和/或達(dá)到這里介紹的實(shí)施例的相同優(yōu)點(diǎn)。因此本發(fā)明的保護(hù)范圍當(dāng)視權(quán)利要求所界定者為準(zhǔn)。