亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一并擦除型非易失性存儲器和快速存儲器的的控制方法

文檔序號:6417513閱讀:208來源:國知局

專利名稱::一并擦除型非易失性存儲器和快速存儲器的的控制方法
技術(shù)領(lǐng)域
:本發(fā)明涉及內(nèi)置了記錄非易失性數(shù)據(jù)的快速EEPROM(以下,稱為快速存儲器)的一并擦除型非易失性存儲器和快速存儲器的控制方法。在現(xiàn)有的攜帶電話機等的裝入(built-in)型系統(tǒng)中,在存儲系統(tǒng)的程序的情況下,使用可隨機存取的快速存儲器,另一方面,在記錄改寫頻度高的數(shù)據(jù)或數(shù)據(jù)量比較小的非易失性數(shù)據(jù)的情況下,使用EEPROM,此外,在記錄大規(guī)模的非易失性數(shù)據(jù)的情況下,使用串行寫入的快速存儲器或帶有后備電源的SRAM。在此,EEPROM與快速存儲器相比,每位的存儲元件的數(shù)目多,每位的價格增大。此外,在帶有后備電源的SRAM中,由于帶有電源,故成本增大。通過用快速存儲器來存儲上述的分別存儲的數(shù)據(jù),具有減少器件的安裝面積和成本的優(yōu)點。裝入型系統(tǒng)的現(xiàn)有的快速存儲器,在系統(tǒng)程序的寫入處理的執(zhí)行中,不能讀入其它的系統(tǒng)程序,在系統(tǒng)程序的寫入時,進(jìn)行特殊的處理來寫入程序,但最近,由于出現(xiàn)在數(shù)據(jù)的寫入處理的執(zhí)行中能從其它未進(jìn)行寫入的區(qū)域讀入數(shù)據(jù)的一并擦除型非易失性存儲器(以下,稱為BGO(backgroundoperation后臺操作)快速存儲器),故即使只是一個快速存儲器,也能將存儲了數(shù)據(jù)的快速存儲器合并到存儲了程序的快速存儲器中。作為在快速存儲器中存儲數(shù)據(jù)的使用例,有在特公平7-50558號公報中示出的那種半導(dǎo)體盤(參照圖14)。在該系統(tǒng)中,將快速存儲器4作為半導(dǎo)體盤來使用,為了進(jìn)行該半導(dǎo)體盤的控制,設(shè)置了控制裝置1、RAM2、總線控制部3和內(nèi)部總線5,但快速存儲器4存在EEPROM及SRAM中沒有的限制。即,數(shù)據(jù)的寫入只能在從0至1或從1至0的一個方向上進(jìn)行。因此,在一度結(jié)束寫入的場所再次進(jìn)行寫入時,必須在一并擦除包含打算寫入的場所的整個塊并使整個塊為0或1之后進(jìn)行數(shù)據(jù)的寫入。因此,難以象EEPROM及SRAM那樣以字節(jié)為單位進(jìn)行寫入和擦除。由于現(xiàn)有的一并擦除型非易失性存儲器如以上那樣來構(gòu)成,故如果一并擦除包含執(zhí)行了數(shù)據(jù)的寫入處理的場所的整個塊,則可再次在同一場所寫入數(shù)據(jù),但快速存儲器的可擦除次數(shù)與EEPROM相比,只能保證約十分之一,存在難以適應(yīng)改寫頻度高的數(shù)據(jù)的存儲的問題。本發(fā)明是為了解決上述的問題而進(jìn)行的,其目的在于得到一種對于改寫頻度高的數(shù)據(jù)的存儲也能適應(yīng)的一并擦除型非易失性存儲器和快速存儲器的控制方法。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,同時更新該未使用區(qū)域的地址信息。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在叢集(cluster)中不存在未使用區(qū)域的情況下,在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除該不存在未使用區(qū)域的叢集。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理時,使不存在未使用區(qū)域的叢集的復(fù)制標(biāo)志(copyflag)變得有效。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備了至少1個以上的未使用叢集。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器中,如果發(fā)生對于叢集的未使用區(qū)域或未使用叢集的數(shù)據(jù)的寫入錯誤,則在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除發(fā)生了數(shù)據(jù)的寫入錯誤的叢集。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備了至少2個以上的未使用叢集。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器中,在應(yīng)用程序使用的叢集中登錄唯一的ID(標(biāo)識符),另一方面,在未使用叢集中登錄表示可寫入的ID。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器中,如果發(fā)生數(shù)據(jù)的寫入錯誤,則在發(fā)生了數(shù)據(jù)的寫入錯誤的叢集中登錄表示不能寫入的ID。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在各叢集的標(biāo)題區(qū)內(nèi)確保2個以上的存儲ID的ID存儲區(qū)。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在各叢集的標(biāo)題區(qū)內(nèi)將表示存儲器的使用狀況的比特表(bittable)作為未使用區(qū)域的地址信息來存儲。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在執(zhí)行數(shù)據(jù)的寫入處理時,緊挨著已寫入的數(shù)據(jù)之后進(jìn)行寫入。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器中,在扇區(qū)由多個數(shù)據(jù)塊構(gòu)成的情況下,參照在扇區(qū)的標(biāo)題區(qū)內(nèi)被存儲的表示數(shù)據(jù)塊的使用狀況的使用狀況標(biāo)志,在該數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在數(shù)據(jù)塊中不存在未使用區(qū)域的情況下,在其它數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。與本發(fā)明有關(guān)的一并擦除型非易失性存儲器在易失性存儲器中形成表示存儲了數(shù)據(jù)的數(shù)據(jù)塊的塊位置的指針(pointer)。與本發(fā)明有關(guān)的快速存儲器的控制方法中,如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,同時更新該未使用區(qū)域的地址信息。圖1是示出本發(fā)明的實施例的一并擦除型非易失性存儲器的結(jié)構(gòu)圖。圖2是BGO快速存儲器的內(nèi)部結(jié)構(gòu)和叢集管理區(qū)的說明圖。圖3是表示數(shù)據(jù)回收(reclaim)的處理的流程圖。圖4是示出數(shù)據(jù)回收時的叢集ID的分配的說明圖。圖5是示出應(yīng)用程序中的內(nèi)部數(shù)據(jù)的結(jié)構(gòu)圖。圖6是示出數(shù)據(jù)的讀入順序的說明圖。圖7是示出存儲位置偏移信息與數(shù)據(jù)的對應(yīng)關(guān)系的說明圖。圖8是示出數(shù)據(jù)的寫入順序的流程圖。圖9是示出應(yīng)用程序中的內(nèi)部數(shù)據(jù)的結(jié)構(gòu)圖。圖10是頁內(nèi)使用中塊標(biāo)志和頁內(nèi)使用完畢塊標(biāo)志與數(shù)據(jù)塊的對應(yīng)圖。圖11是數(shù)據(jù)區(qū)使用狀況與數(shù)據(jù)區(qū)的對應(yīng)圖。圖12是表示數(shù)據(jù)檢索用指針的初始子程序的流程圖。圖13是示出數(shù)據(jù)的寫入順序的流程圖。圖14是表示在快速存儲器中存儲數(shù)據(jù)的半導(dǎo)體盤的結(jié)構(gòu)圖。以下,說明本發(fā)明的一實施例。實施例1圖1是示出本發(fā)明的實施例1的一并擦除型非易失性存儲器的結(jié)構(gòu)圖,在圖中,11是由具有多個扇區(qū)的叢集(擦除塊)構(gòu)成的BGO快速存儲器(地址信息存儲裝置),在各叢集的最前面的扇區(qū)中存儲了未使用區(qū)域的地址信息。BGO快速存儲器11,如上所述,是可在數(shù)據(jù)的寫入處理的執(zhí)行中從其它未進(jìn)行寫入的區(qū)域讀入數(shù)據(jù)的一并擦除型非易失性存儲器。12是控制BGO快速存儲器11的微型計算機,13是微型計算機12的RAM,14是微型計算機12的CPU,CPU14構(gòu)成下述部分地址信息存儲裝置,將未使用區(qū)域的地址信息存儲在各叢集的最前面的扇區(qū)中;數(shù)據(jù)寫入裝置,如果接受數(shù)據(jù)的寫入要求,則參照該叢集中的未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理;地址信息更新裝置,更新該未使用區(qū)域的地址信息;ID管理裝置,在各叢集中登錄ID;以及指針形成裝置。再有,將使用本系統(tǒng)的攜帶電話機等的外圍器件連接到圖1的系統(tǒng)的外圍。其次,說明工作情況。首先,一邊參照圖2,一邊說明BGO快速存儲器11的物理地址、叢集管理區(qū)和應(yīng)用程序。其中,如果擦除數(shù)據(jù),則BGO快速存儲器11為FFh,數(shù)據(jù)的改寫方向定為從1至0。在圖2中,各叢集、即擦除塊由n頁構(gòu)成,在0頁的最前面,設(shè)置了4字節(jié)的叢集管理區(qū)。叢集管理區(qū)由3個叢集ID和1個復(fù)制標(biāo)志構(gòu)成。在3個叢集ID中存儲相同的值,在2個以上的叢集ID一致時,判斷為叢集ID有效。叢集管理區(qū)的各叢集ID由1字節(jié)來表示,故可表示除了00h和FFh之外的254個叢集。這樣,將由相同的3個叢集ID構(gòu)成的唯一的叢集ID分配給各叢集,對各應(yīng)用程序分配1個或一個以上的叢集(即,這些叢集ID)。此外,由于FFh為初始狀態(tài),故FFh為未使用叢集ID(FFh表示是能寫入的叢集)、00h為無效叢集ID(00h表示是不能寫入的叢集)。但是,可同時存在多個叢集ID只是FFh和00h的情況。在3個叢集ID之后,確保1字節(jié)的復(fù)制標(biāo)志,除了各叢集(擦除塊)的叢集管理區(qū)的4字節(jié)之外的區(qū)域為應(yīng)用程序區(qū)。該應(yīng)用程序區(qū)是被分配給該叢集的應(yīng)用程序可自由地使用的區(qū)域。各應(yīng)用程序不是直接保存存儲了自身的數(shù)據(jù)的地址,而是保存自身的應(yīng)用程序ID。作為制約事項,該應(yīng)用程序ID在使用系統(tǒng)的全部應(yīng)用程序中必須是唯一的。實際上,應(yīng)用程序在使用BGO快速存儲器11的情況下檢索與自身的應(yīng)用程序ID一致的叢集ID之一,檢索與該叢集對應(yīng)的物理地址,由此,再計算自身的打算讀寫的數(shù)據(jù)的地址。由于BGO快速存儲器11必須以塊為單位(叢集單位)進(jìn)行數(shù)據(jù)的擦除,故即使在只擦除塊內(nèi)的某個區(qū)域的情況下,也必須在保存必要的數(shù)據(jù)之后進(jìn)行塊的擦除。在RAM13中進(jìn)行必要數(shù)據(jù)的保存這一點,從成本、使用BGO快速存儲器11的目的和數(shù)據(jù)的可靠性方面考慮,是不理想的。因此,必須在BGO快速存儲器11上進(jìn)行數(shù)據(jù)的保存,但為此,必須有未寫入數(shù)據(jù)的未使用區(qū)域、即空白叢集。將獲得空白叢集以保存必要數(shù)據(jù)并擦除原來的塊的處理稱為數(shù)據(jù)回收(reclaim),是在BGO快速存儲器11中不能避免的處理。在此,一邊參照圖3和圖4,一邊說明數(shù)據(jù)回收時的處理。例如,如果叢集A的數(shù)據(jù)回收變得必要(步驟ST1),則叢集A的應(yīng)用程序檢索BGO快速存儲器11上的空白叢集(步驟ST2)。例如,在叢集D是空白叢集的情況下(參照圖4(a)),參照叢集D的叢集ID,取得空白叢集的地址(步驟ST4)。但是,在不存在空白叢集的情況下,一并擦除無效叢集,形成空白叢集(步驟ST3),取得該空白叢集的地址(步驟ST4)。然后,如果取得空白叢集的地址,則叢集A的應(yīng)用程序?qū)F(xiàn)在使用中的叢集A的復(fù)制標(biāo)志定為01h(步驟ST5),在空白叢集(叢集D)上登錄自身的應(yīng)用程序ID(步驟ST6,參照圖4(b))。叢集A的應(yīng)用程序如果在空白叢集(叢集D)上登錄自身的應(yīng)用程序ID,則在空白叢集中復(fù)制必要數(shù)據(jù)(步驟ST7),如果復(fù)制結(jié)束,則一并擦除作為老的叢集的叢集A或使其無效,結(jié)束處理(步驟ST8、ST9,參照圖4(c))。但是,如果在數(shù)據(jù)回收中發(fā)生斷電等的障礙,則存在叢集ID是相同的叢集的情況。由于存在除FFh、00h以外不能重復(fù)叢集ID這樣的制約事項,故必須在系統(tǒng)啟動時消除這樣的情況。因此,在系統(tǒng)啟動時檢驗重復(fù)叢集的存在,但如果檢測出重復(fù)叢集,則刪除重復(fù)叢集中的復(fù)制標(biāo)志為FFh的叢集。其原因是,在進(jìn)行一并擦除或數(shù)據(jù)的無效化之前,如果發(fā)生系統(tǒng)的障礙,則難以查明數(shù)據(jù)回收的處理到何處結(jié)束。因此,將復(fù)制標(biāo)志已改變的判斷為復(fù)制源(參照圖3的步驟ST5),刪除復(fù)制終點。這是因為,如果保持復(fù)制源,則可避免數(shù)據(jù)的內(nèi)容被破壞、寫入變得不可能的不良情況。其次,如果在數(shù)據(jù)的寫入時發(fā)生器件錯誤(寫入錯誤),則有必要再次執(zhí)行數(shù)據(jù)的寫入處理。為了對付這樣的情況,預(yù)先準(zhǔn)備2個叢集以上的空白叢集。此外,如果發(fā)生數(shù)據(jù)的寫入錯誤,則將發(fā)生了寫入錯誤的叢集ID變更為無效叢集,取得新的空白叢集,執(zhí)行回收處理。即使在無效叢集中,如果一旦進(jìn)行一并擦除,則也有叢集的狀態(tài)返回到原來的正常狀態(tài)的情況,故在電源接通時或系統(tǒng)處于閑暇時等,一并擦除無效叢集。這是對于器件的突發(fā)的錯誤有效的手段。圖5是示出應(yīng)用程序中的內(nèi)部數(shù)據(jù)的結(jié)構(gòu)圖。叢集由n頁的扇區(qū)構(gòu)成,在第0頁上確保了標(biāo)題,在第1頁以后確保了數(shù)據(jù)區(qū)。其中,0頁的最前面4字節(jié)作為叢集ID和復(fù)制用標(biāo)志來使用,在其后存儲32字節(jié)的存儲頁信息。寫入數(shù)據(jù)長度預(yù)先由系統(tǒng)來決定,在該系統(tǒng)內(nèi)是不變的。圖6是示出數(shù)據(jù)的讀入順序的圖,而應(yīng)用程序參照叢集ID讀出存儲頁信息,取得作為存儲了數(shù)據(jù)的扇區(qū)的頁號碼。如果應(yīng)用程序識別例如數(shù)據(jù)被存儲在第x頁的情況,則參照在第x頁的最前面的位置上被存儲的存儲位置偏移信息,識別在x頁的何處存儲了數(shù)據(jù)。在此,存儲頁信息和存儲位置偏移信息由比特表來表示,兩者都確保32字節(jié)的區(qū)域,存在256個比特。各比特的值在每次扇區(qū)的使用狀態(tài)變化時,從1變更為0。即,關(guān)于存儲頁信息,例如如果從第1頁到第x頁存儲數(shù)據(jù),則從LSB到x比特,比特值從1變更為0,0的數(shù)目的總數(shù)與指定頁對應(yīng)。另一方面,關(guān)于存儲位置偏移信息,如圖7中所示,數(shù)據(jù)區(qū)的1字節(jié)與存儲位置偏移信息的1比特對應(yīng),在每次從數(shù)據(jù)區(qū)的最前面的字節(jié)開始依次存儲數(shù)據(jù)時,從存儲位置偏移信息的LSB開始依次1比特從1變更為0。由此,如果應(yīng)用程序從存儲頁信息中的0的比特的合計識別存儲了數(shù)據(jù)的頁號碼,則從存儲位置偏移信息的LSB開始依次搜索比特的值,識別從數(shù)據(jù)區(qū)的最前面開始到何處為止存儲了數(shù)據(jù)。例如,從存儲位置偏移信息的LSB開始到24比特為止為0的情況下,識別為從數(shù)據(jù)區(qū)的最前面開始到24字節(jié)為止存儲了數(shù)據(jù)。然后,如果應(yīng)用程序識別存儲了數(shù)據(jù)的最終位置,則由于從該處返回到數(shù)據(jù)長度部分前的位置是數(shù)據(jù)的最前面的地址,故從該最前面的地址開始執(zhí)行讀出數(shù)據(jù)的處理。圖8是示出數(shù)據(jù)的寫入順序的流程圖。首先,如果應(yīng)用程序用與數(shù)據(jù)的讀出時相同的順序識別存儲了數(shù)據(jù)的最終位置,則調(diào)查在該頁內(nèi)是否存在空白區(qū)(未使用區(qū)域)(步驟ST11)。在存在空白區(qū)的情況下,將存儲了數(shù)據(jù)的最終位置的下一個位置作為最前面地址,在執(zhí)行與寫入要求有關(guān)的數(shù)據(jù)的寫入處理的同時,更新存儲位置偏移信息(步驟ST12)。即,將與存儲了數(shù)據(jù)的最終位置的下一個位置對應(yīng)的比特從1變更為0。另一方面,在現(xiàn)在的頁內(nèi)不存在空白區(qū)的情況下,調(diào)查在叢集內(nèi)是否存在下一頁(步驟ST13)。在存在下一頁的情況下,參照下一頁的存儲位置偏移信息,調(diào)查下一頁是否是空白(步驟ST14)。這是因為,如果存在在下一頁中的過去的數(shù)據(jù)寫入時發(fā)生了斷電等的障礙的情況,則存在遺留了寫入過程中的數(shù)據(jù)的情況(如果遺留了寫入過程中的數(shù)據(jù),則發(fā)生不能寫入新的數(shù)據(jù)的不良情況)。應(yīng)用程序在下一頁是空白的情況下,在數(shù)據(jù)區(qū)的最前面的位置執(zhí)行與寫入要求有關(guān)的數(shù)據(jù)的寫入處理的同時,更新存儲位置偏移信息(步驟ST15)。此外,應(yīng)用程序還更新存儲頁信息(步驟ST16)。即,將與下一頁對應(yīng)的比特從1變更為0。在下一頁不是空白的情況下,調(diào)查再下一頁是否是空白,如果下一頁不存在,則執(zhí)行上述的數(shù)據(jù)回收,在其它未使用叢集中的第1頁的數(shù)據(jù)區(qū)的最前面的位置執(zhí)行與寫入要求有關(guān)的數(shù)據(jù)的寫入處理(步驟ST17)。從以上所述可明白,按照本實施例1,如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,由于作成這樣的結(jié)構(gòu),故在叢集中存在未使用區(qū)域的情況下,可進(jìn)行數(shù)據(jù)的寫入,而不是一并擦除該叢集,其結(jié)果,可起到增加BGO快速存儲器11的改寫次數(shù)的效果。實施例2在上述實施例1中,示出了在頁內(nèi)存在空白區(qū)的情況下,緊挨著已寫入的數(shù)據(jù)之后寫入最新的數(shù)據(jù)的情況,即,示出了在頁內(nèi)確保存儲多個數(shù)據(jù)的區(qū)域,只使最后存儲了的數(shù)據(jù)(最新數(shù)據(jù))成為有效的情況,但也可如圖9中所示那樣,在扇區(qū)(頁)內(nèi)構(gòu)成多個數(shù)據(jù)塊,參照表示在扇區(qū)的標(biāo)題區(qū)內(nèi)被存儲了的數(shù)據(jù)塊的使用狀況的使用狀況標(biāo)志(頁內(nèi)使用中塊標(biāo)志、頁內(nèi)使用完畢塊標(biāo)志),在各數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。圖9是示出應(yīng)用程序中的內(nèi)部數(shù)據(jù)的結(jié)構(gòu)圖。在叢集的各頁中作成頁標(biāo)題和多個數(shù)據(jù)塊。在頁標(biāo)題中將叢集ID和復(fù)制用標(biāo)志放在最前面,在其后放置3字節(jié)的頁內(nèi)使用中塊標(biāo)志、3字節(jié)的頁內(nèi)使用完畢塊標(biāo)志。再有,在數(shù)據(jù)塊內(nèi)各放置1字節(jié)的數(shù)據(jù)NO和數(shù)據(jù)區(qū)使用狀況,在其后將8字節(jié)作為數(shù)據(jù)區(qū)來使用。圖10是頁內(nèi)使用中塊標(biāo)志和頁內(nèi)使用完畢塊標(biāo)志與數(shù)據(jù)塊的對應(yīng)圖。為了檢索使用中的塊,求出頁內(nèi)使用中塊標(biāo)志與頁內(nèi)使用完畢塊標(biāo)志的“異或”運算值,與運算結(jié)果為1的比特對應(yīng)的數(shù)據(jù)塊是使用中的數(shù)據(jù)塊(在圖10的例中,數(shù)據(jù)塊P)。通過指定數(shù)據(jù)ID來進(jìn)行數(shù)據(jù)的讀寫。其中,將00h定為使用完畢數(shù)據(jù)ID,將FFh定為空白數(shù)據(jù)ID??扇〕酥獾?54種數(shù)據(jù)ID。分配給各ID的數(shù)據(jù)尺寸可取從1字節(jié)到8字節(jié)為止的值,在程序中,假定不改變數(shù)據(jù)尺寸。此外,應(yīng)用程序的指針形成裝置在RAM13中作成數(shù)據(jù)檢索用的指針(表示存儲了數(shù)據(jù)的數(shù)據(jù)塊的塊位置的指針)。在指針的內(nèi)部存儲頁號碼和數(shù)據(jù)區(qū)的塊號碼。當(dāng)RAM13的內(nèi)容在并斷電源時等被擦除時,通過在電源接通時對全部數(shù)據(jù)區(qū)進(jìn)行搜索并進(jìn)行檢索,來保持其內(nèi)容。在讀出時,應(yīng)用程序檢索表示數(shù)據(jù)ID的數(shù)據(jù)塊,參照數(shù)據(jù)區(qū)使用狀況(參照圖11),執(zhí)行數(shù)據(jù)的讀入處理。即,數(shù)據(jù)區(qū)使用狀況的8比特與數(shù)據(jù)區(qū)的8字節(jié)的使用狀況相對應(yīng),數(shù)據(jù)區(qū)使用狀況的比特為0的場所是使用完畢的場所。圖12是表示在RAM13上恢復(fù)數(shù)據(jù)檢索用指針用的初始子程序的流程圖。在電源接通時等的初始子程序中,應(yīng)用程序檢索使用叢集的地址,在頁內(nèi)存在數(shù)據(jù)的情況下,更新指針的數(shù)據(jù)(步驟ST21~ST23)。雖然是頁內(nèi)的使用數(shù)據(jù)的檢索方法,但如果檢索全部塊,則數(shù)據(jù)數(shù)目非常多,故與數(shù)據(jù)的讀入時相同,參照頁標(biāo)題的頁內(nèi)使用中塊標(biāo)志和頁內(nèi)使用完畢塊標(biāo)志,檢索使用數(shù)據(jù)。然后,在全部的頁的檢索結(jié)束之前,重復(fù)上述的處理(步驟ST24、ST25),在最后的頁的檢索結(jié)束的時刻,指針的作成結(jié)束。圖13是表示數(shù)據(jù)的寫入順序的流程圖。首先,應(yīng)用程序檢索存儲了數(shù)據(jù)的數(shù)據(jù)塊的空白區(qū),在數(shù)據(jù)塊內(nèi)存在能寫入數(shù)據(jù)的空白區(qū)的情況下,在該數(shù)據(jù)塊的數(shù)據(jù)區(qū)(空白區(qū))內(nèi)執(zhí)行數(shù)據(jù)的寫入處理(步驟ST31、ST32)。另一方面,在數(shù)據(jù)塊內(nèi)不存在能寫入數(shù)據(jù)的空白區(qū)的情況下,判斷能否取得其它新的數(shù)據(jù)塊(步驟ST33)。在能取得新的數(shù)據(jù)塊的情況下,執(zhí)行在新的數(shù)據(jù)塊中寫入數(shù)據(jù)ID、數(shù)據(jù)區(qū)和頁內(nèi)使用中塊標(biāo)志的處理(步驟ST34、ST35)。此外,也同時執(zhí)行頁內(nèi)使用完畢塊標(biāo)志和數(shù)據(jù)塊的ID的寫入(步驟ST36、ST37)。再有,在不能重新取得數(shù)據(jù)塊的情況下,執(zhí)行數(shù)據(jù)回收(步驟ST38)。從以上所述可明白,按照本實施例2,在扇區(qū)由多個數(shù)據(jù)塊構(gòu)成的情況下,參照表示在扇區(qū)的標(biāo)題區(qū)內(nèi)被存儲了的數(shù)據(jù)塊的使用狀況的使用狀況標(biāo)志(頁內(nèi)使用中塊標(biāo)志、頁內(nèi)使用完畢塊標(biāo)志)等,在該數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,由于這樣來構(gòu)成,故可起到能以從1字節(jié)到8字節(jié)為單位自由地改寫最多254種數(shù)據(jù)的效果。實施例3在上述的實施例1和實施例2中,示出了在BGO快速存儲器11中寫入數(shù)據(jù)的情況,但不限于此,即使在其它的快速存儲器中當(dāng)然也能使用。如上所述,按照本發(fā)明,如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,同時更新該未使用區(qū)域的地址信息,由于這樣來構(gòu)成,故在叢集中存在未使用區(qū)域的情況下,不一并擦除叢集就可進(jìn)行數(shù)據(jù)的寫入,其結(jié)果,具有增加存儲器的改寫次數(shù)的效果。按照本發(fā)明,在叢集中不存在未使用區(qū)域的情況下,在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除不存在該未使用區(qū)域的叢集,由于這樣來構(gòu)成,故具有即使在叢集中不存在未使用區(qū)域的情況下也能執(zhí)行數(shù)據(jù)的寫入處理的效果。按照本發(fā)明,在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理時,使不存在未使用區(qū)域的叢集的復(fù)制標(biāo)志變得有效,由于這樣來構(gòu)成,故具有即使在數(shù)據(jù)回收中發(fā)生斷電等的障礙也能防止數(shù)據(jù)的損失的效果。按照本發(fā)明,除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備至少1個以上的未使用叢集,由于這樣來構(gòu)成,故具有即使在叢集中不存在未使用區(qū)域的情況下也能執(zhí)行數(shù)據(jù)的寫入處理的效果。按照本發(fā)明,如果發(fā)生對于叢集的未使用區(qū)域或未使用叢集的數(shù)據(jù)的寫入錯誤,則在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除發(fā)生了數(shù)據(jù)的寫入錯誤的叢集,由于這樣來構(gòu)成,故具有即使發(fā)生數(shù)據(jù)的寫入錯誤也能執(zhí)行數(shù)據(jù)的寫入處理的效果。按照本發(fā)明,除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備至少2個以上的未使用叢集,由于這樣來構(gòu)成,故具有與寫入錯誤的發(fā)生對應(yīng)的處理的可靠性得到提高的效果。按照本發(fā)明,在應(yīng)用程序使用的叢集中登錄唯一的ID,另一方面,在未使用叢集中登錄表示可寫入的ID,由于這樣來構(gòu)成,故能不用地址而是用ID來管理叢集,其結(jié)果,具有能使多個應(yīng)用程序同時存在的效果。按照本發(fā)明,如果發(fā)生數(shù)據(jù)的寫入錯誤,則在發(fā)生了數(shù)據(jù)的寫入錯誤的叢集中登錄表示不能寫入的ID,由于這樣來構(gòu)成,故具有能識別不能寫入的叢集的效果。按照本發(fā)明,在各叢集的標(biāo)題區(qū)內(nèi)確保2個以上的存儲ID的ID存儲區(qū),由于這樣來構(gòu)成,故具有對于叢集ID的管理的可靠性得到提高的效果。按照本發(fā)明,在各叢集的標(biāo)題區(qū)內(nèi)將表示存儲器的使用狀況的比特表作為未使用區(qū)域的地址信息來存儲,由于這樣來構(gòu)成,故具有能迅速地識別存儲器的使用狀況的效果。按照本發(fā)明,在執(zhí)行數(shù)據(jù)的寫入處理時,緊挨著已寫入的數(shù)據(jù)之后進(jìn)行寫入,由于這樣來構(gòu)成,故具有在提高存儲器的使用效率的同時能迅速地識別存儲器的使用狀況的效果。按照本發(fā)明,在扇區(qū)由多個數(shù)據(jù)塊構(gòu)成的情況下,參照在扇區(qū)的標(biāo)題區(qū)內(nèi)被存儲的表示數(shù)據(jù)塊的使用狀況的使用狀況標(biāo)志,在該數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,由于這樣來構(gòu)成,故具有能以從1字節(jié)到8字節(jié)為單位自由地改寫最多254種數(shù)據(jù)的效果。按照本發(fā)明,在數(shù)據(jù)塊中不存在未使用區(qū)域的情況下,在其它數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,由于這樣來構(gòu)成,故具有即使在數(shù)據(jù)塊中不存在未使用區(qū)域的情況下也能執(zhí)行數(shù)據(jù)的寫入處理的效果。按照本發(fā)明,在易失性存儲器中形成表示存儲了數(shù)據(jù)的數(shù)據(jù)塊的塊位置的指針,由于這樣來構(gòu)成,故具有能迅速地實施數(shù)據(jù)的讀寫的效果。按照本發(fā)明,如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理,同時更新該未使用區(qū)域的地址信息,由于這樣來構(gòu)成,故在叢集中存在未使用區(qū)域的情況下,不一并擦除叢集就可進(jìn)行數(shù)據(jù)的寫入,其結(jié)果,具有增加存儲器的改寫次數(shù)的效果。權(quán)利要求1.一種一并擦除型非易失性存儲器,其特征在于,包括地址信息存儲裝置,存儲由多個扇區(qū)構(gòu)成的叢集中的未使用區(qū)域的地址信息;數(shù)據(jù)寫入裝置,如果接受數(shù)據(jù)的寫入要求,則參照該未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行該數(shù)據(jù)的寫入處理;以及地址信息更新裝置,如果上述數(shù)據(jù)寫入裝置執(zhí)行數(shù)據(jù)的寫入處理,則更新該未使用區(qū)域的地址信息。2.如權(quán)利要求1中所述的一并擦除型非易失性存儲器,其特征在于數(shù)據(jù)寫入裝置在叢集中不存在未使用區(qū)域的情況下,在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除該不存在未使用區(qū)域的叢集。3.如權(quán)利要求2中所述的一并擦除型非易失性存儲器,其特征在于數(shù)據(jù)寫入裝置在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理時,使不存在未使用區(qū)域的叢集的復(fù)制標(biāo)志變得有效。4.如權(quán)利要求2中所述的一并擦除型非易失性存儲器,其特征在于除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備了至少1個以上的未使用叢集。5.如權(quán)利要求2中所述的一并擦除型非易失性存儲器,其特征在于如果發(fā)生對于叢集的未使用區(qū)域或未使用叢集的數(shù)據(jù)的寫入錯誤,則數(shù)據(jù)寫入裝置在其它未使用叢集中執(zhí)行數(shù)據(jù)的寫入處理,同時一并擦除發(fā)生了數(shù)據(jù)的寫入錯誤的叢集。6.如權(quán)利要求5中所述的一并擦除型非易失性存儲器,其特征在于除了應(yīng)用程序使用的叢集之外,還準(zhǔn)備了至少2個以上的未使用叢集。7.如權(quán)利要求2中所述的一并擦除型非易失性存儲器,其特征在于設(shè)置了ID管理裝置,在應(yīng)用程序使用的叢集中登錄唯一的ID,另一方面,在未使用叢集中登錄表示可寫入的ID。8.如權(quán)利要求7中所述的一并擦除型非易失性存儲器,其特征在于如果發(fā)生數(shù)據(jù)的寫入錯誤,則ID管理裝置在發(fā)生了數(shù)據(jù)的寫入錯誤的叢集中登錄表示不能寫入的ID。9.如權(quán)利要求8中所述的一并擦除型非易失性存儲器,其特征在于在各叢集的標(biāo)題區(qū)內(nèi)確保3個以上的存儲ID的ID存儲區(qū)。10.如權(quán)利要求2中所述的一并擦除型非易失性存儲器,其特征在于地址信息存儲裝置在各叢集的標(biāo)題區(qū)內(nèi)將表示存儲器的使用狀況的比特表作為未使用區(qū)域的地址信息來存儲。11.如權(quán)利要求10中所述的一并擦除型非易失性存儲器,其特征在于數(shù)據(jù)寫入裝置在執(zhí)行數(shù)據(jù)的寫入處理時,緊挨著已寫入的數(shù)據(jù)之后進(jìn)行寫入。12.如權(quán)利要求1中所述的一并擦除型非易失性存儲器,其特征在于數(shù)據(jù)寫入裝置在扇區(qū)由多個數(shù)據(jù)塊構(gòu)成的情況下,參照在扇區(qū)的標(biāo)題區(qū)內(nèi)被存儲的表示數(shù)據(jù)塊的使用狀況的使用狀況標(biāo)志,在該數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。13.如權(quán)利要求12中所述的一并擦除型非易失性存儲器,其特征在于數(shù)據(jù)寫入裝置在數(shù)據(jù)塊中不存在未使用區(qū)域的情況下,在其它數(shù)據(jù)塊的未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。14.如權(quán)利要求13中所述的一并擦除型非易失性存儲器,其特征在于設(shè)置了在易失性存儲器中形成表示存儲了數(shù)據(jù)的數(shù)據(jù)塊的塊位置的指針的指針形成裝置。15.一種快速存儲器的控制方法,其特征在于存儲由多個扇區(qū)構(gòu)成的快速存儲器的叢集中的未使用區(qū)域的地址信息,如果接受數(shù)據(jù)的寫入要求,則參照該未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行該數(shù)據(jù)的寫入處理,同時更新該未使用區(qū)域的地址信息。全文摘要存在快速存儲器的可擦除次數(shù)與EEPROM比較只能保證約十分之一、故難以適應(yīng)改寫頻度高的數(shù)據(jù)的存儲的情況等的課題。解決辦法是,如果接受數(shù)據(jù)的寫入要求,則參照未使用區(qū)域的地址信息,在該未使用區(qū)域中執(zhí)行數(shù)據(jù)的寫入處理。文檔編號G06F15/76GK1258046SQ9912673公開日2000年6月28日申請日期1999年12月14日優(yōu)先權(quán)日1998年12月14日發(fā)明者永吉弘尚,石本真一申請人:三菱電機半導(dǎo)體系統(tǒng)株式會社,三菱電機株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1