国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      存儲(chǔ)器的制作方法

      文檔序號(hào):6483747閱讀:235來(lái)源:國(guó)知局
      專利名稱:存儲(chǔ)器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及具備可進(jìn)行數(shù)據(jù)改寫(xiě)的閃速存儲(chǔ)器等非易失性存儲(chǔ)器的存儲(chǔ)器。
      背景技術(shù)
      作為處理音樂(lè)數(shù)據(jù)或影像數(shù)據(jù)的便攜裝置的存儲(chǔ)器,越來(lái)越多地使用了具備可進(jìn)行數(shù)據(jù)改寫(xiě)、便攜性高、不需要因電池等原因而需進(jìn)行備份的閃速存儲(chǔ)器等非易失性存儲(chǔ)器的存儲(chǔ)器。
      但是,在閃速存儲(chǔ)器中寫(xiě)入數(shù)據(jù)的處理速度比將數(shù)據(jù)傳送到位于存儲(chǔ)器內(nèi)的緩沖器的處理速度慢,因此就發(fā)生了等待時(shí)間。
      在此,作為高效率地在閃速存儲(chǔ)器中寫(xiě)入數(shù)據(jù)的處理,例如在特開(kāi)平6-301601號(hào)公報(bào)中提出了對(duì)多個(gè)物理塊并行寫(xiě)入數(shù)據(jù)的處理。
      此外,為了對(duì)暫時(shí)寫(xiě)入到閃速存儲(chǔ)器內(nèi)的數(shù)據(jù)進(jìn)行存取,必須從邏輯地址來(lái)確定閃速存儲(chǔ)器內(nèi)的該數(shù)據(jù)的物理地址。因此,在存儲(chǔ)器具有的RAM中設(shè)置將已寫(xiě)入到閃速存儲(chǔ)器內(nèi)的數(shù)據(jù)的邏輯地址變換為閃速存儲(chǔ)器內(nèi)的物理地址的表。
      但是,近年來(lái),在便攜裝置中處理的信息量有增大的趨勢(shì),為了適應(yīng)這一點(diǎn),通過(guò)使處于存儲(chǔ)器內(nèi)的非易失性存儲(chǔ)器增加來(lái)謀求存儲(chǔ)器存儲(chǔ)容量的增大。
      但是,該存儲(chǔ)容量的增大與上述表的容量的增大相聯(lián)系,其結(jié)果,導(dǎo)致RAM容量和容積的增大。
      例如,如果將存儲(chǔ)器的存儲(chǔ)容量定為1GB(千兆字節(jié)),將該存儲(chǔ)器的邏輯塊的尺寸定為16KB(千字節(jié)),則在該存儲(chǔ)器中可構(gòu)成216個(gè)邏輯塊,因此,為指定規(guī)定邏輯塊所用的地址必須有16位。即,將邏輯地址變換為閃速存儲(chǔ)器內(nèi)的物理地址用的表的容量必須為16位×216=128KB。
      此外,如上所述,提出了高效率地在閃速存儲(chǔ)器中寫(xiě)入數(shù)據(jù)的處理,但沒(méi)有提出數(shù)據(jù)的讀出裝置等對(duì)已寫(xiě)入的數(shù)據(jù)進(jìn)行高速存取的數(shù)據(jù)的寫(xiě)入方法。
      在現(xiàn)有的寫(xiě)入方法中,例如對(duì)開(kāi)頭的第1物理塊至第5物理塊所寫(xiě)入的數(shù)據(jù)中,對(duì)寫(xiě)入到第5物理塊中的數(shù)據(jù)進(jìn)行存取的程序如下所述。
      首先,例如數(shù)據(jù)的讀出裝置讀取第1物理塊,取得在該第1物理塊的最終部分中存儲(chǔ)的第2物理塊的地址,其次,讀取第2物理塊。同樣,讀出裝置取得第2物理塊、第3物理塊、第4物理塊中保持了的第5物理塊的地址,對(duì)第5物理塊進(jìn)行存取。因而,為了對(duì)第5物理塊進(jìn)行存取,必須讀取第1物理塊至第4物理塊,這成為存取時(shí)間增大的原因。
      此外,在數(shù)據(jù)的擦除單位為物理塊單位的閃速存儲(chǔ)器等中,如果擦除存儲(chǔ)了無(wú)效數(shù)據(jù)的物理塊中的數(shù)據(jù),則該物理塊中存儲(chǔ)了的有效數(shù)據(jù)也被擦除。因此,例如數(shù)據(jù)的擦除裝置在使有效數(shù)據(jù)保存到其它存儲(chǔ)介質(zhì)中以后,擦除該物理塊的數(shù)據(jù),即進(jìn)行所謂的轉(zhuǎn)入保存處理。因而,為了高效率地進(jìn)行數(shù)據(jù)的擦除,必須提高轉(zhuǎn)入保存處理的處理效率。

      發(fā)明內(nèi)容本發(fā)明是鑒于這樣的課題而進(jìn)行的,其目的在于提供能用小型的控制電路控制大容量的存儲(chǔ)介質(zhì)并能高速地對(duì)已寫(xiě)入的數(shù)據(jù)進(jìn)行存取的存儲(chǔ)器。
      為了達(dá)到上述目的,本發(fā)明采用了以下的方法。即,為了削減具備非易失性存儲(chǔ)器的存儲(chǔ)器的RAM的容量,使用在RAM中設(shè)置的第1表和在非易失性存儲(chǔ)器中設(shè)置的第2表將邏輯地址變換為物理地址。通過(guò)使用2個(gè)表將邏輯地址變換為物理地址,可削減第1表的容量。通過(guò)削減第1表的容量,可削減RAM的容量。
      此外,本發(fā)明的存儲(chǔ)器具備由數(shù)據(jù)塊構(gòu)成的邏輯塊的結(jié)構(gòu)及為了高效率地進(jìn)行邏輯塊的讀出或擦除而具備物理塊表、邏輯塊表、項(xiàng)目計(jì)數(shù)器和地址寄存器。
      物理塊表表示作為非易失性存儲(chǔ)器的數(shù)據(jù)擦除單位的物理塊是使用中物理塊還是已擦除的物理塊。地址寄存器表示成為數(shù)據(jù)的寫(xiě)入對(duì)象的物理塊。項(xiàng)目計(jì)數(shù)器表示已寫(xiě)入到在地址寄存器中示出的物理塊中的數(shù)據(jù)量。項(xiàng)目計(jì)數(shù)器表示由上述物理塊構(gòu)成的邏輯塊的數(shù)據(jù)量。邏輯塊表表示上述邏輯塊的狀況。
      例如,寫(xiě)入裝置在非易失性存儲(chǔ)器中構(gòu)成由規(guī)定的邏輯地址確定的邏輯塊時(shí),將構(gòu)成了邏輯塊的物理塊作為使用中登記在物理塊表中,根據(jù)構(gòu)成了邏輯塊的寫(xiě)入單位來(lái)更新地址寄存器,根據(jù)該邏輯塊的數(shù)據(jù)量來(lái)更新項(xiàng)目計(jì)數(shù)器。
      此外,寫(xiě)入裝置在構(gòu)成邏輯塊時(shí),在構(gòu)成邏輯塊的寫(xiě)入單位中例如在代表寫(xiě)入單位中寫(xiě)入確定其它的寫(xiě)入單位的物理地址用的連鎖信息,以便讀出裝置等能高速地對(duì)非易失性存儲(chǔ)器中已構(gòu)成的邏輯塊進(jìn)行存取。所謂寫(xiě)入單位,是非易失性存儲(chǔ)器中的數(shù)據(jù)的寫(xiě)入單位,邏輯塊橫跨多個(gè)寫(xiě)入單位而被構(gòu)成。
      再者,寫(xiě)入裝置將確定在非易失性存儲(chǔ)器中構(gòu)成了的邏輯塊的代表寫(xiě)入單位的物理地址的信息登記在第2表中。
      如果存在由規(guī)定的邏輯地址確定的邏輯塊的讀出要求,則讀出裝置使用該邏輯地址讀取上述第2表中已登記的信息,達(dá)到代表寫(xiě)入單位的物理地址。如果讀出裝置得到代表寫(xiě)入單位的物理地址,則讀取已寫(xiě)入到代表寫(xiě)入單位中的連鎖信息。該連鎖信息是構(gòu)成與代表寫(xiě)入單位相同的邏輯塊的其它的寫(xiě)入單位的物理地址。讀出裝置讀取連鎖信息,得到其它的寫(xiě)入單位的物理地址。如果讀出裝置得到其它的寫(xiě)入單位的物理地址,則讀取已寫(xiě)入到該其它的寫(xiě)入單位中的連鎖信息,得到另一其它的寫(xiě)入單位的物理地址。這樣,讀出裝置通過(guò)讀取連鎖信息,可得到構(gòu)成成為讀出要求的對(duì)象的邏輯塊的全部的寫(xiě)入單位的物理地址。
      此外,已寫(xiě)入到代表寫(xiě)入單位中的連鎖信息可以是確定構(gòu)成與代表寫(xiě)入單位相同的邏輯塊的其它的全部寫(xiě)入單位的物理地址用的信息。此時(shí),讀出裝置通過(guò)讀取代表寫(xiě)入單位的連鎖信息,可得到構(gòu)成成為讀出要求的對(duì)象的邏輯塊的全部的寫(xiě)入單位的物理地址。
      如果讀出裝置如上所述那樣取得寫(xiě)入單位的物理地址,則讀出在該寫(xiě)入單位中已被存儲(chǔ)的數(shù)據(jù)。
      此外,擦除裝置如下述那樣擦除已選擇的物理塊中已被存儲(chǔ)的數(shù)據(jù)。擦除裝置參閱上述物理塊表、上述邏輯塊表和地址寄存器等,把握構(gòu)成了有效的邏輯塊的量少的物理塊。然后,擦除裝置將該物理塊作為擦除物理塊,將在該擦除物理塊中已被構(gòu)成的有效的邏輯塊復(fù)制到其它的物理塊中。然后,將擦除物理塊的數(shù)據(jù)擦除。通過(guò)以這種方式選擇擦除物理塊,由于可減少在擦除數(shù)據(jù)時(shí)復(fù)制有效的邏輯塊的量,故可迅速地進(jìn)行數(shù)據(jù)的擦除。


      圖1是存儲(chǔ)器的概略框圖。
      圖2示出了非易失性存儲(chǔ)器的結(jié)構(gòu)圖。
      圖3是表示物理塊表的編制程序的具體例的流程圖。
      圖4是示出物理塊表的圖。
      圖5是表示邏輯塊表的編制程序的具體例的流程圖。
      圖6是示出邏輯塊表的圖。
      圖7是表示編制第1表的程序的具體例的流程圖。
      圖8是示出第1表的圖。
      圖9是示出地址寄存器和項(xiàng)目計(jì)數(shù)器的圖。
      圖10是表示數(shù)據(jù)寫(xiě)入程序的流程圖。
      圖11是表示數(shù)據(jù)寫(xiě)入程序的流程圖。
      圖12是表示將連鎖信息寫(xiě)入到閃速存儲(chǔ)器中的具體例的圖。
      圖13是示出了取得代表頁(yè)的物理地址的程序的概念圖。
      圖14是表示數(shù)據(jù)讀出程序的流程圖。
      圖15是表示數(shù)據(jù)擦除程序的流程圖。
      圖16是表示邏輯塊表的編制程序的具體例的流程圖。
      圖17是表示第1表的編制程序的具體例的流程圖。
      具體實(shí)施方式
      如圖1中所示,本發(fā)明的存儲(chǔ)器1具備多個(gè)作為非易失性存儲(chǔ)器的閃速存儲(chǔ)器2。該閃速存儲(chǔ)器2如圖2中所示,由多個(gè)物理塊B構(gòu)成。上述物理塊B由多個(gè)頁(yè)A構(gòu)成。閃速存儲(chǔ)器2中的數(shù)據(jù)的寫(xiě)入單位是上述頁(yè)A,此外,數(shù)據(jù)的擦除單位是上述物理塊B。
      此外,在本實(shí)施例中,閃速存儲(chǔ)器2的總存儲(chǔ)容量是1GB,物理塊B的存儲(chǔ)容量是16KB,將頁(yè)A的存儲(chǔ)容量作為512B(字節(jié))來(lái)說(shuō)明,但閃速存儲(chǔ)器2、物理塊B、頁(yè)A的存儲(chǔ)容量不限定于上述容量。
      (實(shí)施例1)&lt;關(guān)于電源接通時(shí)&gt;
      如果在上述存儲(chǔ)器1中接通電源,則在編制裝置510中具備的物理塊表編制裝置521在存儲(chǔ)器1中已設(shè)置的地址控制部5的RAM上編制表示上述各物理塊B的使用狀態(tài)的物理塊表52。在此,在圖3中表示物理塊表52的編制程序的一例。
      首先,上述物理塊表編制裝置521對(duì)上述物理塊表52的值進(jìn)行初始化(圖3,S301)。作為上述物理塊表編制裝置521進(jìn)行初始化的方法,例如將物理塊表52的值全部變更為表示物理塊已擦除的值。
      接著,上述物理塊表編制裝置521參閱圖2中示出的構(gòu)成規(guī)定物理塊B的規(guī)定頁(yè)A,確認(rèn)該規(guī)定物理塊B的狀況(圖3,S302)。所謂該規(guī)定的頁(yè),指的是例如在初始狀態(tài)的物理塊B內(nèi)最初寫(xiě)入數(shù)據(jù)的頁(yè)A等。
      為了確認(rèn)物理塊B的狀況,在此,上述物理塊表編制裝置521作為判斷在規(guī)定的物理塊B中是否存在不良的不良物理塊判斷裝置522來(lái)工作。即,上述物理塊表編制裝置521確認(rèn)屬于作為確認(rèn)對(duì)象的物理塊B的規(guī)定頁(yè)A內(nèi)的信息,判斷該物理塊B是否是因缺陷而不能正常地寫(xiě)入數(shù)據(jù)的不良物理塊(圖3,S303)。
      例如在判斷為確認(rèn)對(duì)象的物理塊B1不是不良物理塊時(shí),上述物理塊表編制裝置521判斷在該確認(rèn)對(duì)象的物理塊B1內(nèi)是否有存儲(chǔ)了數(shù)據(jù)的頁(yè)A(圖3,S304)。其次,在判斷為有存儲(chǔ)了數(shù)據(jù)的頁(yè)A的情況下,上述物理塊表編制裝置521識(shí)別為確認(rèn)對(duì)象的物理塊B1使用狀態(tài)為使用中。上述物理塊表編制裝置521將該確認(rèn)對(duì)象的物理塊B1作為使用中物理塊登記在圖4中示出的物理塊表52中(圖3,S305)。在判斷為沒(méi)有存儲(chǔ)了數(shù)據(jù)的頁(yè)A的情況下,上述物理塊表編制裝置521識(shí)別為確認(rèn)對(duì)象的物理塊B1使用狀態(tài)為已擦除。然后,將該確認(rèn)對(duì)象的物理塊B1作為已擦除物理塊登記在上述物理塊表52中(圖3,S306)。
      如上所述,如果將使用中物理塊或已擦除物理塊登記在物理塊表52中,則上述物理塊表編制裝置521判斷確認(rèn)對(duì)象的物理塊B是否是最終的物理塊B(圖3,S307)。而且,在判斷為確認(rèn)對(duì)象的物理塊B不是最終的物理塊B的情況下,進(jìn)行尚未確認(rèn)狀況的其它的物理塊B的狀況確認(rèn)(圖3,S302)。如果判斷為確認(rèn)對(duì)象的物理塊B是最終的物理塊B,則物理塊表編制裝置521結(jié)束物理塊表52的編制。
      以這種方式,例如編制圖4中示出的物理塊表52。在圖4中,利用物理塊表52,分別對(duì)于物理塊B1、B2、…示出了是使用中物理塊還是已擦除物理塊。
      此外,在判斷為確認(rèn)對(duì)象的物理塊B是不良物理塊的情況下,上述不良物理塊判斷裝置522將該確認(rèn)對(duì)象的物理塊B作為使用中物理塊,登記在物理塊表52中即可(圖3,S308)。
      即,在利用不良物理塊判斷裝置522將物理塊判斷為不良的情況下,即使上述物理塊表編制裝置521作為將上述物理塊表52表示的該物理塊B的使用狀態(tài)設(shè)定為使用中的使用狀態(tài)設(shè)定裝置523,也使其工作。
      在物理塊表52中將不良物理塊作為使用中物理塊來(lái)設(shè)定的原因是,在后述的數(shù)據(jù)寫(xiě)入處理時(shí),寫(xiě)入裝置100將在上述物理塊表52被登記為已擦除物理塊的物理塊B作為數(shù)據(jù)寫(xiě)入對(duì)象的物理塊B來(lái)選擇。假定在物理塊表52中將不良物理塊作為已擦除物理塊來(lái)設(shè)定,則寫(xiě)入裝置100有時(shí)將不良物理塊作為寫(xiě)入對(duì)象的物理塊B來(lái)選擇。此時(shí),雖然寫(xiě)入裝置100在識(shí)別了不能對(duì)該物理塊B寫(xiě)入數(shù)據(jù)的情況之后改正寫(xiě)入對(duì)象的物理塊B的選擇即可,但相應(yīng)地在寫(xiě)入處理方面花費(fèi)了時(shí)間。
      如上所述,通過(guò)將不良物理塊作為使用中物理塊來(lái)登記,可將不良物理塊從寫(xiě)入對(duì)象的物理塊B中去掉,其結(jié)果,即使在以存在不良物理塊為前提而被利用的非易失性存儲(chǔ)器中,也能縮短寫(xiě)入處理的時(shí)間。
      如果在上述存儲(chǔ)器1中接通電源,則除了上述物理塊表52外,利用上述編制裝置510中具備的邏輯塊表編制裝置531在上述地址控制部5的RAM上編制邏輯塊表53。邏輯塊表53的編制可與上述物理塊表52的編制同時(shí)進(jìn)行,也可在編制物理塊表52之后進(jìn)行,也可在編制物理塊表52之前進(jìn)行。
      邏輯塊表53是表示各邏輯塊C處于有效狀態(tài)(‘有效’)還是處于無(wú)效狀態(tài)(‘無(wú)效’)的表。上述邏輯塊C是邏輯地址所示出的數(shù)據(jù)塊,橫跨1個(gè)以上的物理塊B而被構(gòu)成。圖5是表示邏輯塊表53的編制程序的一例的流程圖。
      如圖5中所示,上述邏輯塊表編制裝置531首先對(duì)上述邏輯塊表53進(jìn)行初始化(圖5,S501)。作為上述邏輯塊表編制裝置531進(jìn)行初始化的方法,有例如將邏輯塊表53的值全部變更為表示‘無(wú)效’的值的方法。
      接著,上述邏輯塊表編制裝置531參閱在表示物理地址的位串中規(guī)定的5位為‘01000’的頁(yè)A的管理區(qū)Ab中設(shè)置的標(biāo)志區(qū)90的值(圖5,S502)。此外,上述邏輯塊表編制裝置531參閱物理地址的規(guī)定的5位為‘01000’的頁(yè)A中設(shè)置的標(biāo)志區(qū)90的原因是,在本實(shí)施例的存儲(chǔ)器1中,只在該物理地址的頁(yè)A中成為存儲(chǔ)第2表80(詳細(xì)的情況在后面敘述)的規(guī)格。即,上述邏輯塊表編制裝置531只參閱能存儲(chǔ)上述第2表80的頁(yè)A的標(biāo)志區(qū)90。
      上述標(biāo)志區(qū)90的值是表示在與該標(biāo)志區(qū)90相同的管理區(qū)Ab中已存儲(chǔ)的第2表80是有效還是無(wú)效的管理信息。此外,為了邏輯塊表的編制處理的高速化,上述邏輯塊表編制裝置531沒(méi)有必要全部參閱物理地址的規(guī)定的5位為‘01000’的頁(yè)A的標(biāo)志區(qū)90。例如,邏輯塊表編制裝置531可只參閱規(guī)定的5位為‘01000’、且屬于在物理塊表52中作為使用中物理塊登記了的物理塊B的頁(yè)A的標(biāo)志區(qū)90。
      如果參閱上述標(biāo)志區(qū)90,則上述邏輯塊表編制裝置531判斷上述標(biāo)志區(qū)90的值是有效值還是無(wú)效值(圖5,S503)。在判斷為標(biāo)志區(qū)90的值是有效值時(shí),上述邏輯塊表編制裝置531將由已登記在該第2表80中的第2物理地址Ca確定的邏輯塊C作為‘有效’登記在上述邏輯塊表53中(圖5,S504)。所謂第2物理地址Ca,是確定構(gòu)成邏輯塊C的規(guī)定的1個(gè)頁(yè)A(代表頁(yè)a)的物理地址的信息。
      另一方面,在判斷為標(biāo)志區(qū)90的值是無(wú)效值時(shí),上述邏輯塊表編制裝置531將由已登記在該第2表80中的第2物理地址Ca確定的邏輯塊C作為‘無(wú)效’登記在上述邏輯塊表53中(圖5,S505)。
      如果上述邏輯塊表編制裝置531如上所述將‘有效’或‘無(wú)效’登記在上述邏輯塊表53中,則判斷是否參閱了應(yīng)參閱的全部標(biāo)志區(qū)90(圖5,S506)。
      在判斷為沒(méi)有參閱全部的標(biāo)志區(qū)90的情況下,上述邏輯塊表編制裝置531進(jìn)行尚未參閱的其它標(biāo)志區(qū)90的參閱(圖5,S502)。而且,上述邏輯塊表編制裝置531重復(fù)進(jìn)行同樣的處理,直到判斷為參閱了全部的標(biāo)志區(qū)90。
      這樣,編制圖6中示出的邏輯塊表53。在上述不良物理塊中,有作為使用中物理塊登記在上述物理塊表52中的不良物理塊。在這種不良物理塊中,包含有物理地址的規(guī)定5位為‘00000’的頁(yè)(稱為代表頁(yè)a)。邏輯塊表編制裝置531最好將在這樣的不良物理塊B上構(gòu)成的邏輯塊C作為‘有效’登記在上述邏輯塊表53中,即,作為在上述邏輯塊表53中將由上述不良物理塊構(gòu)成的邏輯塊C設(shè)定為‘有效’的有效狀態(tài)設(shè)定裝置532使上述邏輯塊表編制裝置531工作。
      這是因?yàn)?,在后述的?shù)據(jù)擦除處理中,將構(gòu)成了作為‘有效’登記在邏輯塊表53中的邏輯塊C的數(shù)目少的物理塊B作為數(shù)據(jù)擦除對(duì)象的數(shù)據(jù)來(lái)認(rèn)定。因此,通過(guò)將沒(méi)有寫(xiě)入數(shù)據(jù)的不良物理塊作為‘有效’來(lái)登記,就不會(huì)使不良物理塊成為擦除對(duì)象。
      由此,由于在不良物理塊上構(gòu)成的全部邏輯塊C作為‘有效’登記在邏輯塊表53中,故將該不良物理塊從擦除對(duì)象的物理塊中去掉。其結(jié)果,可防止無(wú)必要的數(shù)據(jù)的擦除。
      此外,除了物理塊表52、邏輯塊表53外,也在上述地址控制部5的RAM上編制第1表51。例如,如上所述,如果編制物理塊表52、邏輯塊表53,則編制裝置510中具備的第1表編制裝置511開(kāi)始第1表51的編制。在此,圖7是表示編制上述第1表51的編制程序的一例的流程圖。
      首先,上述第1表編制裝置511對(duì)上述第1表51進(jìn)行初始化(圖7,S701),接著,參閱物理地址的規(guī)定的5位為‘01000’的頁(yè)A的標(biāo)志區(qū)90。此外,第1表編制裝置511也可只參閱在物理塊表52中作為使用中物理塊登記了的物理塊B的標(biāo)志區(qū)90。
      如果參閱上述標(biāo)志區(qū)90,則上述第1表編制裝置511判斷標(biāo)志區(qū)90的值是有效值還是無(wú)效值(圖7,S702)。在判斷為標(biāo)志區(qū)90的值是有效值時(shí),第1表編制裝置511取得該標(biāo)志區(qū)90所屬的頁(yè)A的物理地址和在該頁(yè)A中已存儲(chǔ)的第2表80保持的識(shí)別編號(hào)(圖7,S703)。該識(shí)別編號(hào)是用來(lái)確定圖8中示出的第1表51內(nèi)的1個(gè)區(qū)域50的標(biāo)識(shí)符。在本實(shí)施例中,假定識(shí)別編號(hào)由13位的位串構(gòu)成。
      如圖8中所示,上述第1表編制裝置511在所取得的識(shí)別編號(hào)表示的區(qū)域50中,將存儲(chǔ)了第2表的頁(yè)A的物理地址的規(guī)定的16位作為第1物理地址來(lái)登記(圖7,S704)。在規(guī)定的16位中不包含能存儲(chǔ)第2表80的頁(yè)A的物理地址中共同的‘01000’的5位。其次示出登記這樣的規(guī)定的16位的原因。本實(shí)施例的非易失性存儲(chǔ)器2有221個(gè)頁(yè)A(1GB/512B),頁(yè)A的物理地址由21位來(lái)表示。再者,如上所述,能存儲(chǔ)第2表80的頁(yè)A其物理地址的規(guī)定的5位為‘01000’。因此,如果能確定物理地址的規(guī)定的16位,則能從在非易失性存儲(chǔ)器2內(nèi)已存儲(chǔ)的全部的第2表80中確定規(guī)定的1個(gè)第2表。
      這樣,通過(guò)預(yù)先決定第2表80能存儲(chǔ)的頁(yè)A,可減小第1表的容量。此外,在存儲(chǔ)器1內(nèi)的ROM等的存儲(chǔ)器中預(yù)先存儲(chǔ)了物理地址的規(guī)定的5位為‘01000’的頁(yè)A是存儲(chǔ)第2表80的頁(yè)A這一點(diǎn)。在本實(shí)施例中,物理地址的規(guī)定的5位為‘01000’的頁(yè)A成為存儲(chǔ)第2表80的頁(yè)A。但是,物理地址的規(guī)定的5位為‘01000’以外的頁(yè)A也可存儲(chǔ)第2表80。
      如果登記第1物理地址,則上述第1表編制裝置511判斷是否參閱了應(yīng)參閱的全部的標(biāo)志區(qū)90(圖7,S705)。在判斷為沒(méi)有參閱全部的標(biāo)志區(qū)90的情況下,上述邏輯塊表53進(jìn)行尚未參閱的其它的標(biāo)志區(qū)90的參閱(圖7,S706)。而且,重復(fù)進(jìn)行同樣的處理,直到判斷為參閱了全部的標(biāo)志區(qū)90。
      此外,在本實(shí)施例中,由于在非易失性存儲(chǔ)器2內(nèi)存儲(chǔ)了213個(gè)與表示有效值的標(biāo)志區(qū)90對(duì)應(yīng)的第2表80,故上述區(qū)域50為213個(gè)。于是,第1表51的容量為16位×213=16KB。后面敘述與表示有效值的標(biāo)志區(qū)90對(duì)應(yīng)的第2表為213個(gè)的原因。
      另一方面,在判斷為標(biāo)志區(qū)90為無(wú)效值的情況下,上述第1表編制裝置511如上所述,不將物理地址或識(shí)別編號(hào)登記在第1表51中而轉(zhuǎn)移到程序705。
      這樣就編制了物理塊表52、邏輯塊表53、第1表51,但編制這些表的順序不限定于已說(shuō)明的順序,例如也可同時(shí)編制3個(gè)表。
      此外,在上述的說(shuō)明中,分開(kāi)的表編制裝置獨(dú)立地編制了物理塊表52、邏輯塊表53、第1表51,但也可如以下所述那樣各表編制裝置聯(lián)系起來(lái)編制物理塊表52、邏輯塊表53、第1表51。
      例如,在物理塊表編制裝置521編制物理塊表52時(shí),在判斷物理塊B內(nèi)是否存儲(chǔ)了數(shù)據(jù)時(shí),有在該物理塊B中檢測(cè)第2表80的情況。這樣,如果上述物理塊表編制裝置521檢測(cè)第2表80,則上述邏輯塊表編制裝置531和上述第1表編制裝置511依次判斷與該第2表80對(duì)應(yīng)的標(biāo)志區(qū)90的值是有效值還是無(wú)效值。再者,邏輯塊表編制裝置531在標(biāo)志區(qū)90表示有效值的情況下,將由該第2表80表示的第2物理地址Ca確定的邏輯塊C作為‘有效’登記在邏輯塊表53中。另一方面,第1表編制裝置511在標(biāo)志區(qū)90表示有效值的情況下,將在該第2表80中已存儲(chǔ)的頁(yè)A的物理地址的規(guī)定的16位登記在該第2表80保持的識(shí)別編號(hào)表示的區(qū)域50中。
      此外,在電源接通時(shí),處于上述編制裝置510中的地址寄存器編制裝置551也可用以下示出的方法在上述地址控制部5的RAM上編制圖9(a)中示出的地址寄存器55和圖9(b)中示出的項(xiàng)目計(jì)數(shù)器54。
      首先,地址寄存器編制裝置551對(duì)地址寄存器55進(jìn)行初始化。然后,參閱上述物理塊表52將規(guī)定數(shù)的已擦除物理塊的物理地址登記在地址寄存器55中。
      如果登記物理塊B的物理地址,則上述地址寄存器編制裝置551如圖9(b)中所示,將已登記在地址寄存器55中的各物理塊B的寫(xiě)入了數(shù)據(jù)的頁(yè)數(shù)(即,‘0’)登記在設(shè)置在上述RAM上的項(xiàng)目計(jì)數(shù)器54中。
      此外,也可不是在電源接通時(shí)、而是在例如非易失性存儲(chǔ)器2的數(shù)據(jù)的寫(xiě)入處理時(shí)進(jìn)行地址寄存器55的更新和對(duì)項(xiàng)目計(jì)數(shù)器54的頁(yè)數(shù)的登記。此外,在以下的說(shuō)明中,說(shuō)明在項(xiàng)目計(jì)數(shù)器54中登記存儲(chǔ)了數(shù)據(jù)的頁(yè)數(shù)的情況。此外,地址寄存器編制裝置551也可在項(xiàng)目計(jì)數(shù)器54上登記沒(méi)有存儲(chǔ)數(shù)據(jù)的頁(yè)數(shù)或由各物理塊B構(gòu)成的邏輯塊C的數(shù)目。
      &lt;關(guān)于寫(xiě)入&gt;
      如果編制上述物理塊表52、邏輯塊表53、上述第1表51,則上述存儲(chǔ)器1能接受來(lái)自數(shù)據(jù)輸入輸出裝置7的數(shù)據(jù)的寫(xiě)入。此外,在本實(shí)施例中,由非易失性存儲(chǔ)器2構(gòu)成的邏輯塊C為16KB。因此,由于在該非易失性存儲(chǔ)器2中構(gòu)成1GB/16KB=216個(gè)邏輯塊C,故為了表現(xiàn)邏輯塊C,必須有16位的信息。因此,從數(shù)據(jù)輸入輸出裝置7對(duì)存儲(chǔ)器1的數(shù)據(jù)的寫(xiě)入要求由16KB的數(shù)據(jù)和16位的邏輯地址S構(gòu)成。
      從上述數(shù)據(jù)輸入輸出裝置7發(fā)送的寫(xiě)入要求由存儲(chǔ)器1中具備的輸入輸出控制部4來(lái)接受。
      如果接受數(shù)據(jù)和邏輯地址S,則邏輯地址S將已接受的數(shù)據(jù)分割為32個(gè)數(shù)據(jù)塊,其中,每個(gè)數(shù)據(jù)塊為1個(gè)寫(xiě)入單位、即512B,同時(shí)對(duì)緩沖器31~34各傳送8個(gè)數(shù)據(jù)塊。輸入輸出控制部4將已接受的寫(xiě)入要求中包含的邏輯地址S傳送給在存儲(chǔ)器1中設(shè)置的寫(xiě)入裝置100。
      如果該寫(xiě)入裝置100接受邏輯地址S,則決定由哪個(gè)物理塊B來(lái)構(gòu)成由成為寫(xiě)入對(duì)象的數(shù)據(jù)構(gòu)成的邏輯塊C。此外,在本實(shí)施例中,由于用4條總線D1~D4連接了上述緩沖器31~34與非易失性存儲(chǔ)器2,故假定上述寫(xiě)入裝置100橫跨4個(gè)物理塊B來(lái)構(gòu)成邏輯塊C1。
      首先,上述寫(xiě)入裝置100將4個(gè)物理塊的物理地址登記在地址寄存器55中。之所以登記4個(gè)物理塊,是因?yàn)樵诒緦?shí)施例中在存儲(chǔ)器1中具備4條總線D1~D4。例如,如圖9(a)中所示,如果在上述地址寄存器55中登記4個(gè)物理塊B1~B4,則寫(xiě)入裝置100將該物理塊B1~B4作為寫(xiě)入候補(bǔ)物理塊來(lái)決定(圖10,S1001)。如果登記物理塊B的物理地址,則寫(xiě)入裝置100如上所述,如圖9(b)中所示,將已登記在地址寄存器55中的各物理塊B的數(shù)據(jù)的頁(yè)數(shù)(即,‘0’)登記在上述項(xiàng)目計(jì)數(shù)器54中。此時(shí),寫(xiě)入裝置100起到地址寄存器編制裝置551的作用。
      此外,在地址寄存器55中預(yù)先登記了物理塊B的情況下,寫(xiě)入裝置100將預(yù)先登記的物理塊B作為寫(xiě)入候補(bǔ)物理塊來(lái)決定。
      其次,上述寫(xiě)入裝置100參閱上述項(xiàng)目計(jì)數(shù)器54,決定是否將上述寫(xiě)入候補(bǔ)物理塊定為寫(xiě)入物理塊(圖10,S1002)。在此,由于將成為寫(xiě)入對(duì)象的32個(gè)數(shù)據(jù)塊存儲(chǔ)在4個(gè)物理塊B中,故在1個(gè)物理塊B中存儲(chǔ)8個(gè)數(shù)據(jù)塊。因此,上述寫(xiě)入裝置100參閱與上述4個(gè)寫(xiě)入候補(bǔ)物理塊對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54的值,確認(rèn)該值是否為24以下、即是否有未寫(xiě)入8頁(yè)以上的數(shù)據(jù)的頁(yè)。
      在此,如圖9(b)中所示,由于與物理塊B1~B4對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54的值為‘8’,故上述寫(xiě)入裝置100將上述寫(xiě)入候補(bǔ)物理塊B1~B4決定為寫(xiě)入物理塊B1~B4。
      此外,在與寫(xiě)入候補(bǔ)物理塊B1~B4對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54的值保持為25以上的值的情況下,上述寫(xiě)入裝置100將該寫(xiě)入候補(bǔ)物理塊B1~B4決定為不能寫(xiě)入的物理塊。接著,上述寫(xiě)入裝置100參閱上述物理塊表52,選擇與在此已決定的不能寫(xiě)入的物理塊的數(shù)目相同的已擦除物理塊B。再者,上述寫(xiě)入裝置100將在此已選擇的已擦除物理塊B決定為寫(xiě)入物理塊,作為使用中物理塊登記在上述物理塊表52中(圖10,S1003~S1004)。上述寫(xiě)入裝置100將在此作為使用中物理塊登記在上述物理塊表52上的寫(xiě)入物理塊的物理地址登記在上述地址寄存器55中(圖10,S1005)。
      此外,之所以在地址寄存器55中保持了項(xiàng)目計(jì)數(shù)器54的值為25以上的物理塊B的物理地址,是因?yàn)樵趶那?次的寫(xiě)入處理到這次的寫(xiě)入處理為止的期間內(nèi),有不進(jìn)行地址寄存器55的更新的情況。即,如果不更新地址寄存器55,則成為利用前1次的數(shù)據(jù)的寫(xiě)入在全部頁(yè)A中將已寫(xiě)入數(shù)據(jù)的物理塊B的物理地址保持在上述地址寄存器55中的狀態(tài)。
      如上所述,如果上述寫(xiě)入裝置100決定4個(gè)寫(xiě)入物理塊,則參閱項(xiàng)目計(jì)數(shù)器54從各寫(xiě)入物理塊各選擇8頁(yè)寫(xiě)入構(gòu)成邏輯塊C的數(shù)據(jù)塊的寫(xiě)入頁(yè)(圖10,S1006)。此外,在本實(shí)施例中,上述寫(xiě)入裝置100從物理地址小的頁(yè)A起順序地寫(xiě)入數(shù)據(jù)。因此,如圖9(b)那樣,在與寫(xiě)入物理塊B1~B4對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54的值為‘8’的情況下,在構(gòu)成物理塊B1~B4的頁(yè)A中從物理地址的最小的頁(yè)A到第8小的頁(yè)A(圖12的用一點(diǎn)劃線L包圍的頁(yè))中寫(xiě)入了數(shù)據(jù)。
      因此,上述寫(xiě)入裝置100將構(gòu)成物理塊B1~B4的頁(yè)A中從物理地址的第9小的頁(yè)A到第16小的頁(yè)A作為寫(xiě)入頁(yè)來(lái)決定,存儲(chǔ)已決定的寫(xiě)入頁(yè)的物理地址。
      其次,上述寫(xiě)入裝置100使用從數(shù)據(jù)輸入輸出裝置7與數(shù)據(jù)一起傳送來(lái)的邏輯地址S的規(guī)定位S1(在本實(shí)施例中,如上所述,由于區(qū)域50有213個(gè),故是高位13位),確定上述第1表51的1個(gè)區(qū)域50(圖10,S1007)。此外,也可使用邏輯地址中規(guī)定的13位、例如低位13位來(lái)確定1個(gè)區(qū)域50。
      上述寫(xiě)入裝置100讀取登記在特定的區(qū)域50上的上述第1物理地址、即存儲(chǔ)了第2表80的頁(yè)A的物理地址的規(guī)定的16位,對(duì)該已讀取的物理地址附加‘01000’,生成存儲(chǔ)了第2表80的頁(yè)A的物理地址。
      如果上述寫(xiě)入裝置100生成存儲(chǔ)了第2表80的頁(yè)A的物理地址,則判斷是否在該已生成的物理地址的頁(yè)A中已存儲(chǔ)了例如第2物理地址等的物理地址等(圖11,S1008)。
      如果上述寫(xiě)入裝置100判斷為在頁(yè)A中已存儲(chǔ)了數(shù)據(jù)等,則將該頁(yè)A的管理區(qū)Ab中已存儲(chǔ)的第2表80作為改寫(xiě)表,在讀出緩沖器31~34等的同時(shí),將在該頁(yè)A中已存儲(chǔ)的第2表80認(rèn)定為無(wú)效表(圖11,S1009)。而且,寫(xiě)入裝置100使用邏輯地址S的其它的規(guī)定位S2、在此是低位3位,確定讀出了的改寫(xiě)表的更新區(qū)81,判斷在該更新區(qū)81中是否寫(xiě)入了第2物理地址Ca。此外,在本實(shí)施例中,改寫(xiě)表(第2表80)由8個(gè)更新區(qū)81構(gòu)成。由8個(gè)更新區(qū)81構(gòu)成的原因在后面敘述。
      只在更新區(qū)81中寫(xiě)入了第2物理地址Ca的情況下,上述寫(xiě)入裝置100將由該第2物理地址Ca確定的邏輯塊C作為‘無(wú)效’登記在邏輯塊表53中。
      其次,上述寫(xiě)入裝置100將代表上述存儲(chǔ)了的寫(xiě)入頁(yè)的代表頁(yè)的物理地址的規(guī)定的16位作為第2物理地址Ca寫(xiě)入上述已確定的更新區(qū)81中(圖11,S1010)。此外,之所以只將規(guī)定的16位登記在更新區(qū)81中,是因?yàn)樵诒緦?shí)施例中,全部代表頁(yè)a的物理地址的規(guī)定的5位為‘00000’。此外,上述寫(xiě)入裝置100可預(yù)先存儲(chǔ)了指示代表頁(yè)a是物理地址的規(guī)定的5位為‘00000’的頁(yè)A的要旨,也可使存儲(chǔ)器1內(nèi)的ROM等的存儲(chǔ)器存儲(chǔ)該要旨。
      這樣,之所以將改寫(xiě)表讀出到緩沖器31~34中來(lái)改寫(xiě)更新區(qū)81,是因?yàn)樵诜且资源鎯?chǔ)器2中不能進(jìn)行數(shù)據(jù)覆蓋寫(xiě)入。
      如上所述,如果將第2物理地址Ca寫(xiě)入到更新區(qū)81中,則上述寫(xiě)入裝置100使用總線D1~D4將處于緩沖器31~34中的數(shù)據(jù)塊寫(xiě)入到寫(xiě)入頁(yè)的數(shù)據(jù)區(qū)Aa中。此外,寫(xiě)入裝置100將上述改寫(xiě)表寫(xiě)入到規(guī)定的1個(gè)或多個(gè)寫(xiě)入頁(yè)的管理區(qū)Ab中,如以下所述,將連鎖信息寫(xiě)入到1個(gè)或多個(gè)寫(xiě)入頁(yè)的管理區(qū)Ab中(圖11,S1011)。所謂該連鎖信息,是通過(guò)讀出裝置60等讀取構(gòu)成邏輯塊C的代表頁(yè)a中已寫(xiě)入的數(shù)據(jù)來(lái)得到構(gòu)成該邏輯塊C的其它的寫(xiě)入頁(yè)的物理地址用的信息。
      例如,如圖12中所述,如果假定邏輯塊C1的代表頁(yè)a是頁(yè)1,則將邏輯塊C1的頁(yè)2的物理地址作為連鎖信息寫(xiě)入到該頁(yè)1的管理區(qū)Ab中。同樣,如果在頁(yè)N的管理區(qū)Ab中存儲(chǔ)表示頁(yè)(N+1)的物理地址的連鎖信息,則后述的讀出裝置60通過(guò)依靠該連鎖信息可得到圖12中示出的構(gòu)成邏輯塊C1的全部的頁(yè)2~32的物理地址。
      此時(shí),讀出裝置60為了得到頁(yè)20的物理地址,必須讀取在頁(yè)1至頁(yè)19中已存儲(chǔ)的連鎖信息。因而,相應(yīng)地讀出裝置60的對(duì)于也20的存取時(shí)間變長(zhǎng)。
      因此,為了縮短該存取時(shí)間,例如也可將從頁(yè)2至頁(yè)32的物理地址作為連鎖信息寫(xiě)入到代表頁(yè)a(頁(yè)1)的管理區(qū)Ab中。讀出裝置60通過(guò)讀取在也1的管理區(qū)Ab中已存儲(chǔ)的連鎖信息,可得到從頁(yè)2至頁(yè)32的物理地址。其結(jié)果,對(duì)于各頁(yè)的存取時(shí)間縮短了。
      此外,從構(gòu)成例如該邏輯塊C1的各物理塊B1~B4的起始頁(yè)1~4的物理地址可容易地得到構(gòu)成邏輯塊C1的各頁(yè)A的物理地址。如果要得到頁(yè)20的物理地址,則對(duì)頁(yè)4的物理地址加4即可。因此,可將從頁(yè)2至頁(yè)4的物理地址作為連鎖信息寫(xiě)入到頁(yè)1(代表頁(yè)a)的管理區(qū)Ab中,來(lái)代替將從頁(yè)2至頁(yè)32的物理地址作為連鎖信息來(lái)寫(xiě)入。
      此外,在上述管理區(qū)Ab中,除了連鎖信息以外,有時(shí)也寫(xiě)入例如第2表80或誤差改正信息等的管理信息。由于在管理區(qū)Ab中不能確保那么大的區(qū)域,故如果在管理區(qū)Ab中存儲(chǔ)了連鎖信息,則不能在該管理區(qū)Ab中存儲(chǔ)第2表等。
      假定例如在圖12中示出的構(gòu)成邏輯塊C1的頁(yè)1~32中的頁(yè)2、6、10、14、18、22、26、30的管理區(qū)Ab中可存儲(chǔ)第2表80。
      假定如已敘述的那樣,如果在頁(yè)N的管理區(qū)Ab中存儲(chǔ)表示頁(yè)(N+1)的物理地址的連鎖信息,則在存儲(chǔ)了第2表80的頁(yè)2、6、10、14、18、22、26、30的管理區(qū)Ab中也寫(xiě)入連鎖信息。如果在頁(yè)2、6、10、14、18、22、26、30的管理區(qū)Ab中存儲(chǔ)連鎖信息,則產(chǎn)生不能在該管理區(qū)Ab中不能確保存儲(chǔ)第2表80用的容量的情況。因此,上述寫(xiě)入裝置100在管理區(qū)Ab中在存儲(chǔ)了第2表80以外的頁(yè)A中寫(xiě)入連鎖信息。
      具體地說(shuō),將表示頁(yè){(4k+3)、k=0、1、2、…、7}的物理地址的連鎖信息C11不是寫(xiě)入到有第2表80的頁(yè)(4k+2)的管理區(qū)Ab中,而是寫(xiě)入到頁(yè)(4k+1)的管理區(qū)Ab中。于是,如圖12中所示,在頁(yè)(4k+1)的管理區(qū)Ab中寫(xiě)入表示頁(yè)(4k+2)的物理地址的連鎖信息C10和寫(xiě)入表示頁(yè)(4k+3)的物理地址的連鎖信息C11。再者,在頁(yè)(4k+3)的管理區(qū)Ab中寫(xiě)入表示頁(yè)(4k+4)的物理地址的連鎖信息C12,在頁(yè)(4k+4)的管理區(qū)Ab中寫(xiě)入表示頁(yè)(4k+1)的物理地址的連鎖信息C13。
      如果能以這種方式寫(xiě)入連鎖信息,則可在存儲(chǔ)第2表80的管理區(qū)Ab以外的管理區(qū)Ab中存儲(chǔ)連鎖信息。
      此外,如果在頁(yè)N的管理區(qū)Ab中存儲(chǔ)表示頁(yè)(N+1)的物理地址的連鎖信息,則讀出裝置60通過(guò)參閱頁(yè)N的管理區(qū)Ab可得到表示頁(yè)(N+1)的物理地址的連鎖信息。另一方面,在進(jìn)行了上述那樣的連鎖信息的寫(xiě)入的情況下,讀出裝置60即使參閱有第2表80的頁(yè)(4k+2)的管理區(qū)Ab,也不能得到表示下一頁(yè)(4k+3)的物理地址的連鎖信息。因此,讀出裝置60在對(duì)于頁(yè)(4k+1)進(jìn)行讀出時(shí),不僅讀出連鎖信息C10,也讀出全部的連鎖信息、在此是連鎖信息C11,并保持連鎖信息C11。然后,在對(duì)于頁(yè)(4k+2)進(jìn)行讀出之后,使用已保持的連鎖信息C11取得頁(yè)(4k+3)的物理地址即可。
      此外,在上述的例子中,如圖12中所示,在頁(yè)(4k+1)的管理區(qū)Ab中寫(xiě)入了連鎖信息C10、C11,但也可在在頁(yè)(4k+1)的管理區(qū)Ab中寫(xiě)入連鎖信息C12、C13。
      但是,由于也有在管理信息中只缺少誤差改正信息等的情況,故有在頁(yè)(4k+1)的管理區(qū)Ab中不能確保寫(xiě)入全部的連鎖信息C10~C13用的容量、或?qū)懭胧遣贿m當(dāng)?shù)那闆r。因此,預(yù)先決定寫(xiě)入到1個(gè)管理區(qū)Ab中的連鎖信息的數(shù)目。如果寫(xiě)入裝置100在1個(gè)管理區(qū)Ab中寫(xiě)入一定的數(shù)目的連鎖信息,則在其它的頁(yè)A的管理區(qū)Ab中寫(xiě)入尚未寫(xiě)入的連鎖信息。這里的規(guī)定的數(shù)目,可根據(jù)構(gòu)成1個(gè)邏輯塊的頁(yè)的數(shù)目的規(guī)格等來(lái)決定。
      如果數(shù)據(jù)、改寫(xiě)表、連鎖信息的寫(xiě)入處理結(jié)束,則上述寫(xiě)入裝置100將寫(xiě)入了該改寫(xiě)表的寫(xiě)入頁(yè)的物理地址的規(guī)定的16位作為第1物理地址寫(xiě)入到由改寫(xiě)表的識(shí)別編號(hào)確定的區(qū)域50中(圖11,S1012)。其次,上述寫(xiě)入裝置100將存儲(chǔ)了在上述中認(rèn)定為無(wú)效表的第2表80的頁(yè)A的標(biāo)志區(qū)90的值更新為無(wú)效值(圖11,S1013)。
      在上述中,非易失性存儲(chǔ)器2的數(shù)據(jù)的寫(xiě)入單位為頁(yè)A進(jìn)行了說(shuō)明,但在本發(fā)明的存儲(chǔ)器1中,可相對(duì)于同一頁(yè)內(nèi)的其它區(qū)域獨(dú)立更新上述標(biāo)志區(qū)90。即,在數(shù)據(jù)擦除后標(biāo)志區(qū)90的初始值為‘00’的情況下,將‘00’定為有效值,將‘FF’定為無(wú)效值。于是,上述寫(xiě)入裝置100可與其它的區(qū)域獨(dú)立地將標(biāo)志區(qū)90的值從有效值更新為無(wú)效值(即,‘00’→‘FF’)。此外,在非易失性存儲(chǔ)器2的初始狀態(tài)的標(biāo)志區(qū)90的值為‘FF’的情況下,將‘FF’定為有效值,將‘00’定為無(wú)效值。此外,也可在緩沖器31~34等中讀出改寫(xiě)表的同時(shí)進(jìn)行使標(biāo)志區(qū)90為無(wú)效值的處理。
      之所以以這種方式將無(wú)效表的標(biāo)志區(qū)90的值更新為無(wú)效值,是因?yàn)樵谇袛啻鎯?chǔ)器1的電源并在其后接通電源時(shí),上述邏輯塊表編制裝置531直到由第2物理地址Ca確定的邏輯塊C作為‘有效’來(lái)登記。此外,如果不更新標(biāo)志區(qū)90,則在多個(gè)非易失性存儲(chǔ)器2內(nèi)存在保持相同的識(shí)別編號(hào)的第2表80。為此,如果有多個(gè)識(shí)別編號(hào)相同的第2表80,則不能決定上述第1表編制裝置511登記的第1物理地址。
      這樣,通過(guò)更新為無(wú)效值,在上述更新區(qū)81的改寫(xiě)后,在切斷本發(fā)明的存儲(chǔ)器1的電源并在其后接通電源時(shí),第1表編制裝置511可取得存儲(chǔ)了標(biāo)志區(qū)90為有效的第2表80的頁(yè)A的物理地址。于是,第1表編制裝置511將有效的第2表的物理地址的規(guī)定的16位作為第1物理地址登記在第1表51上。
      如果上述寫(xiě)入裝置100在程序S1015中將標(biāo)志區(qū)90的值更新為無(wú)效值,則更新上述項(xiàng)目計(jì)數(shù)器54和邏輯塊表53(圖11,S1014)。
      關(guān)于項(xiàng)目計(jì)數(shù)器54的更新,例如將寫(xiě)入頁(yè)數(shù)加到與上述寫(xiě)入物理塊B1~B4對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54保持的值上。關(guān)于邏輯塊表53的更新,將寫(xiě)入了數(shù)據(jù)的代表頁(yè)a所屬的邏輯塊C作為‘有效’登記在上述邏輯塊表53中。
      此外,上述寫(xiě)入裝置100在程序S1008中在判斷為在存儲(chǔ)了第2表80的頁(yè)A中沒(méi)有存儲(chǔ)數(shù)據(jù)的情況下,如上所述,不將第2表作為改寫(xiě)數(shù)據(jù)在緩沖器31~34中讀出,而進(jìn)入程序1010。
      此外,例如在存儲(chǔ)器1接受了寫(xiě)入要求時(shí),或以規(guī)定的周期由地址寄存器編制裝置551來(lái)更新上述地址寄存器55。所謂該更新,是例如地址寄存器編制裝置551參閱與規(guī)定的物理塊B對(duì)應(yīng)的項(xiàng)目計(jì)數(shù)器54保持的值,從地址寄存器55中擦除例如項(xiàng)目計(jì)數(shù)器54的值為32的物理塊B的物理地址。此外,如果地址寄存器55被更新,則項(xiàng)目計(jì)數(shù)器54的值自動(dòng)地被地址寄存器編制裝置551更新為0。
      此外,在關(guān)于電源接通時(shí)的說(shuō)明中,上述物理塊表編制裝置521判斷了物理塊是否為不良。在上述寫(xiě)入裝置100進(jìn)行寫(xiě)入時(shí),上述寫(xiě)入裝置100也可判斷了寫(xiě)入物理塊是否為不良。此時(shí),使上述寫(xiě)入裝置100作為上述不良物理塊判斷裝置522、上述使用狀態(tài)設(shè)定裝置523、上述有效狀態(tài)設(shè)定裝置532來(lái)工作。
      &lt;關(guān)于數(shù)據(jù)的讀出&gt;
      如上所述,由于本發(fā)明的存儲(chǔ)器的非易失性存儲(chǔ)器2的存儲(chǔ)容量為1GB,邏輯塊C的容量為16KB,故在該非易失性存儲(chǔ)器2中構(gòu)成216個(gè)邏輯塊C。因此,為了表現(xiàn)在非易失性存儲(chǔ)器2內(nèi)已構(gòu)成的1個(gè)邏輯塊C,必須有16位的信息。
      因此,在例如從上述數(shù)據(jù)輸入輸出裝置7發(fā)送的數(shù)據(jù)的讀出要求中包含確定讀出對(duì)象的邏輯塊C用的16位的邏輯地址S。
      如果從上述數(shù)據(jù)輸入輸出裝置7對(duì)存儲(chǔ)器1發(fā)送例如圖12中示出的邏輯塊C1的讀出要求,則由上述輸入輸出控制部4接受該讀出要求,如果該輸入輸出控制部4接受讀出要求,則將該讀出要求傳送給讀出裝置60。
      如果上述讀出裝置60接受讀出要求,則如圖13中所示,使用該讀出要求中包含的邏輯地址S的高位13位S1,確定上述第1表51的1個(gè)區(qū)域50(圖14,S1401)。
      上述讀出裝置60讀取登記在特定的區(qū)域50中的第1物理地址Tn(n0~213-1),再對(duì)已讀取的第1物理地址附加‘01000’,生成存儲(chǔ)了第2表80的頁(yè)A的物理地址(Tn+01000)(圖14,S1402)。
      其次,讀出裝置60使用上述邏輯地址的低位3位S2確定在上述已生成的物理地址的頁(yè)A中存儲(chǔ)了的第2表80的1個(gè)更新區(qū)81(圖14,S1403)。讀出裝置60讀出在此確定了的更新區(qū)81中存儲(chǔ)了的第2物理地址Can(n0~23-1),對(duì)該第2物理地址Can附加‘00000;生成代表頁(yè)a的物理地址(Can+00000)(圖14,S1404)。
      這樣,通過(guò)使用2個(gè)表確定代表頁(yè)a的物理地址,如以下所示那樣,可削減在RAM上設(shè)置的第1表51的容量。
      例如,如上所述,1個(gè)第2表80由8個(gè)更新區(qū)81構(gòu)成,在能存儲(chǔ)8個(gè)第2物理地址Ca的情況下,第1表51的存儲(chǔ)容量如以下所示那樣。
      由于能用1個(gè)第2表80登記與8個(gè)代表頁(yè)a對(duì)應(yīng)的第2物理地址Ca,故在確定216個(gè)代表頁(yè)a方面所必要的第2表80的數(shù)為216/23=213個(gè)。
      由此,確定第2表80用的第1表51保持213個(gè)第1物理地址即可,于是就存在213個(gè)區(qū)域50。因而,第1表51的容量為16位×213=16KB。
      另一方面,在只用設(shè)置在RAM上的表確定第2物理地址Ca的情況下,該表必須保持216個(gè)第2物理地址Ca。此時(shí),表的容量為16位×216=128KB。這樣,在本發(fā)明的存儲(chǔ)器1中,可謀求RAM的容量的削減。
      如果生成邏輯塊C1的代表頁(yè)a(圖12的頁(yè)1)的物理地址,則讀出裝置60利用與該代表頁(yè)a連接的總線D1在緩沖器31中讀出寫(xiě)入到代表頁(yè)a中的數(shù)據(jù)和連鎖信息C10、C11(圖14,S1405)。
      其次,讀出裝置60參閱已讀出的連鎖信息C10、C11,讀出在該連鎖信息C10、C11表示的物理地址的頁(yè)A中已存儲(chǔ)的數(shù)據(jù)和連鎖信息。在此,由于連鎖信息C10示出了頁(yè)2的物理地址,連鎖信息C11示出了頁(yè)3的物理地址,讀出裝置60使用總線D2、總線D3,在緩沖器32、33中讀出在頁(yè)2、頁(yè)3中已存儲(chǔ)的數(shù)據(jù)和連鎖信息。
      在此,由于讀出裝置60可利用2條總線D2、D3讀出在頁(yè)2、頁(yè)3中已存儲(chǔ)的數(shù)據(jù)和連鎖信息,故可迅速地進(jìn)行讀出處理。此外,在(4k+1)頁(yè)的管理區(qū)Ab中存儲(chǔ)了C10、C11、C12、C13的情況下,讀出裝置60可利用4條總線D1~D4,同時(shí)在緩沖器31~34中讀出在頁(yè)(4k+1)、(4k+2)、(4k+3)、(4k+4)中已存儲(chǔ)的數(shù)據(jù)和連鎖信息。
      這樣,讀出裝置60進(jìn)行讀出連鎖信息表示的物理地址的頁(yè)A中已存儲(chǔ)的數(shù)據(jù)和連鎖信息的處理,進(jìn)行上述處理,直到邏輯塊的最后的頁(yè)。
      如果在緩沖器31~34中讀出數(shù)據(jù),則讀出裝置60將該數(shù)據(jù)經(jīng)上述輸入輸出控制部4發(fā)送給例如上述數(shù)據(jù)輸入輸出裝置7(圖14,S1406)。
      此外,在上述讀出要求中有指示只讀出與邏輯塊C1的例如在頁(yè)20中已存儲(chǔ)的數(shù)據(jù)相比其頁(yè)編號(hào)大的數(shù)據(jù)的取出前面部分的要求。在該取出前面部分的要求中,包含了上述邏輯地址S和表示成為取出前面部分的要求的對(duì)象的數(shù)據(jù)的標(biāo)題的邏輯地址的5位的邏輯地址(以下,稱為「取出前面部分的地址」)。
      如果從上述數(shù)據(jù)輸入輸出裝置7對(duì)存儲(chǔ)器1發(fā)送取出前面部分的要求,則上述輸入輸出控制部4接受該取出前面部分的要求,對(duì)上述讀出裝置60傳送該取出前面部分的要求中包含的邏輯地址S和取出前面部分的地址。
      如果上述讀出裝置60接受邏輯地址S和取出前面部分的地址,則判斷該取出前面部分的地址表示第幾頁(yè)的數(shù)據(jù)。其次,讀出裝置60使用邏輯地址S,如上所述,確定代表頁(yè)a的物理地址。如果確定代表頁(yè)a的物理地址,則讀出裝置60使用連鎖信息讀出寫(xiě)入到比取出前面部分的地址表示的頁(yè)(在此,頁(yè)20)大的頁(yè)中的數(shù)據(jù)。這樣,讀出裝置60在對(duì)成為取出前面部分的要求的讀出的對(duì)象的數(shù)據(jù)進(jìn)行存取時(shí),也可使用連鎖信息。
      但是,上述第2表80可忽略多個(gè)頁(yè)A來(lái)構(gòu)成。例如第2表80可橫跨物理地址連續(xù)的4頁(yè)來(lái)構(gòu)成。此外,在第2表80橫跨4頁(yè)來(lái)構(gòu)成的情況下,在該4頁(yè)中規(guī)定的1個(gè)頁(yè)中設(shè)置表示該第2表80的有效或無(wú)效的標(biāo)志區(qū)90。
      &lt;關(guān)于擦除&gt;
      如上所述,如果以規(guī)定的周期進(jìn)行寫(xiě)入處理,則在上述非易失性存儲(chǔ)器2中存在多個(gè)存儲(chǔ)了有效的數(shù)據(jù)和無(wú)效的數(shù)據(jù)的物理塊B。由于非易失性存儲(chǔ)器的數(shù)據(jù)的擦除單位是物理塊B,故如果打算擦除在這樣的物理塊B中已存儲(chǔ)的無(wú)效的數(shù)據(jù),則必須也擦除在該物理塊B中已存儲(chǔ)的有效的數(shù)據(jù)。
      在這樣的狀況下,為了不擦除有效的數(shù)據(jù)、只是高效率地擦除無(wú)效的數(shù)據(jù)、增加非易失性存儲(chǔ)器2的空閑的容量,如以下那樣來(lái)進(jìn)行數(shù)據(jù)的擦除。
      擦除裝置70首先參閱上述物理塊表52并參閱上述邏輯塊表53,研究由在上述物理塊表52中作為使用中物理塊已登記的物理塊B構(gòu)成的邏輯塊的狀態(tài)(圖15,S1501)。
      擦除裝置70將在上述物理塊表52中登記為使用中物理塊的物理塊B中只構(gòu)成了2個(gè)以下的邏輯塊表53中作為‘有效’登記的有效邏輯塊的物理塊B作為擦除物理塊來(lái)決定(圖15,S1502)。
      上述擦除裝置70使用與構(gòu)成擦除物理塊的有效邏輯塊C對(duì)應(yīng)的代表頁(yè)a中已存儲(chǔ)的連鎖信息,把握該有效邏輯塊C(以下,稱為「有效邏輯塊」)由哪個(gè)物理塊B構(gòu)成(圖15,S1503)。
      接著,上述擦除裝置70將由擦除物理塊構(gòu)成的有效邏輯塊C整體(也包含一部分由擦除物理塊構(gòu)成的有效邏輯塊C)作為保存數(shù)據(jù)在代表頁(yè)a中讀出。此外,在保存數(shù)據(jù)中也包含登記了確定該保存數(shù)據(jù)中包含的有效邏輯塊C的代表頁(yè)a的物理地址的第2物理地址的第2表80。
      如果讀出保存數(shù)據(jù),則擦除裝置70將在代表頁(yè)a中讀出該保存數(shù)據(jù)的要旨通知上述寫(xiě)入裝置100。
      在此,讀出裝置60用與從數(shù)據(jù)輸入輸出裝置7發(fā)送的數(shù)據(jù)的寫(xiě)入頁(yè)的選擇同樣的方法,選擇寫(xiě)入保存數(shù)據(jù)的寫(xiě)入頁(yè)(圖15,S1504)。如果選擇寫(xiě)入頁(yè),則讀出裝置60根據(jù)寫(xiě)入頁(yè)的物理地址,改寫(xiě)在保存數(shù)據(jù)中已存儲(chǔ)的連鎖信息(圖15,S1505)。例如,在代表頁(yè)a中已讀出的邏輯塊C的代表頁(yè)的管理區(qū)Ab中寫(xiě)入寫(xiě)入頁(yè)的全部的物理地址。如果改寫(xiě)連鎖信息,則讀出裝置60將在代表頁(yè)a中已讀出的保存數(shù)據(jù)寫(xiě)入到寫(xiě)入頁(yè)中(圖15,S1506)。此外,上述讀出裝置60將保存數(shù)據(jù)中包含的第2表80寫(xiě)入到保存數(shù)據(jù)的寫(xiě)入頁(yè)中物理地址的規(guī)定的5位為‘01000’的頁(yè)A中。上述讀出裝置60將根據(jù)該第2表80的識(shí)別編號(hào)確定的區(qū)域50更新為寫(xiě)入了該第2表80的頁(yè)A的物理地址的規(guī)定的16位。
      如果上述讀出裝置60寫(xiě)入保存數(shù)據(jù),則與有寫(xiě)入要求的情況同樣地從數(shù)據(jù)輸入輸出裝置7更新項(xiàng)目計(jì)數(shù)器54、邏輯塊表53。如果更新項(xiàng)目計(jì)數(shù)器54、邏輯塊表53,則上述讀出裝置60將寫(xiě)入了保存數(shù)據(jù)的要旨通知上述擦除裝置70。
      如果上述擦除裝置70接受該通知,則在擦除上述擦除物理塊中已存儲(chǔ)的數(shù)據(jù)的同時(shí),將上述擦除物理塊作為已擦除物理塊登記在上述物理塊表52中(圖15,S1507)。
      在上述中,作為決定擦除物理塊的條件,定為,①在上述物理塊表52中作為使用中物理塊已登記,②只構(gòu)成2個(gè)以下的有效邏輯塊,但也可例如在該條件中附加在地址寄存器55中沒(méi)有保持物理地址這一點(diǎn)。此外,上述條件不限于上述那樣的情況,即使是只構(gòu)成1個(gè)以下的有效邏輯塊這樣的條件也沒(méi)有關(guān)系。這樣,通過(guò)將存儲(chǔ)了多個(gè)無(wú)效的數(shù)據(jù)的物理塊B定為上述擦除物理塊,上述擦除裝置70可將少量的數(shù)據(jù)讀出到緩沖器31~34中。
      此外,無(wú)效的數(shù)據(jù)的擦除的時(shí)序不作限定,例如擦除裝置70也可以規(guī)定的周期自動(dòng)地進(jìn)行。
      此外,在關(guān)于電源接通時(shí)的說(shuō)明中,上述物理塊表編制裝置521判斷了物理塊是否為不良。在上述擦除裝置70進(jìn)行擦除時(shí),上述擦除裝置70也可判斷擦除對(duì)象的物理塊是否為不良。此時(shí),使上述擦除裝置70作為上述不良物理塊判斷裝置522、上述使用狀態(tài)設(shè)定裝置523、上述有效狀態(tài)設(shè)定裝置532來(lái)工作。
      (實(shí)施例2)上述寫(xiě)入裝置100進(jìn)行了將存儲(chǔ)了在上述中認(rèn)定為無(wú)效表的第2表80的頁(yè)A的標(biāo)志區(qū)90的值更新為無(wú)效值的處理。但是,為了盡可能高速地進(jìn)行寫(xiě)入處理,必須省略這樣的處理。
      因此,上述寫(xiě)入裝置100如以下那樣來(lái)決定寫(xiě)入在緩沖器31~34中讀出了的改寫(xiě)表的頁(yè)A,通過(guò)在已決定的頁(yè)A中寫(xiě)入第2表80來(lái)省略上述處理。
      首先,寫(xiě)入裝置100判斷在與無(wú)效表相同的物理塊B內(nèi)的頁(yè)A中是否有與存儲(chǔ)了無(wú)效表的頁(yè)A相比物理地址大的且滿足物理地址的規(guī)定的5位為‘01000’且可能被寫(xiě)入了數(shù)據(jù)這樣條件的頁(yè)A。關(guān)于規(guī)定的5位為‘01000’這樣的條件,是因?yàn)椋诒緦?shí)施例中,只有物理地址的規(guī)定的5位為‘01000’的頁(yè)A才能存儲(chǔ)上述第2表80。在有滿足該條件的頁(yè)A的情況下,上述寫(xiě)入裝置100將滿足該條件中物理地址的最小的頁(yè)A作為存儲(chǔ)改寫(xiě)表的頁(yè)A來(lái)決定。上述寫(xiě)入裝置100在以這種方式?jīng)Q定了的頁(yè)A中存儲(chǔ)改寫(xiě)表時(shí),不進(jìn)行將無(wú)效表的標(biāo)志區(qū)90的值更新為表示無(wú)效的值的處理。
      在沒(méi)有滿足該條件的頁(yè)A的情況下,上述寫(xiě)入裝置100將屬于存儲(chǔ)了無(wú)效表的物理塊B以外的規(guī)定的物理塊B的、且物理地址的規(guī)定的5位為‘01000’的頁(yè)A中物理地址最小的頁(yè)A作為改寫(xiě)表的寫(xiě)入頁(yè)來(lái)決定。在以這種方式?jīng)Q定了的頁(yè)A中存儲(chǔ)改寫(xiě)表時(shí),寫(xiě)入裝置100與實(shí)施例1相同地,將無(wú)效表的標(biāo)志區(qū)90的值更新為無(wú)效值。
      寫(xiě)入裝置100在如上所述地決定了寫(xiě)入改寫(xiě)表的頁(yè)A時(shí),上述邏輯塊表編制裝置531、第1表編制裝置511如以下那樣編制邏輯塊表53、第1表51。
      如果在存儲(chǔ)器1中接通電源,則上述邏輯塊表編制裝置531首先對(duì)上述邏輯塊表53進(jìn)行初始化(圖16,S1601)。接著,上述邏輯塊表編制裝置531在各物理塊B中進(jìn)行以下那樣的處理。
      上述邏輯塊表編制裝置531將物理地址的低位5位為‘01000’的頁(yè)A作為檢測(cè)對(duì)象頁(yè)來(lái)識(shí)別。其次,上述邏輯塊表編制裝置531從該檢測(cè)對(duì)象頁(yè)中物理地址大的檢測(cè)對(duì)象頁(yè)起按順序參閱標(biāo)志區(qū)90的值,進(jìn)行標(biāo)志區(qū)90的值為有效值的檢測(cè)對(duì)象頁(yè)的檢測(cè)(圖16,S1601)。上述邏輯塊表編制裝置531在該檢測(cè)處理中,在最初檢測(cè)出檢測(cè)對(duì)象頁(yè)時(shí),不進(jìn)行程序1603,參閱在該檢測(cè)對(duì)象頁(yè)中已存儲(chǔ)的第2表80中已登記的第2物理地址。上述邏輯塊表編制裝置531將由在第2表80中已登記的第2物理地址確定的邏輯塊C作為‘有效’登記在上述邏輯塊表53中(圖16,S1604)。然后,邏輯塊表編制裝置531將最初檢測(cè)出的第2表80保持的識(shí)別編號(hào)存儲(chǔ)在存儲(chǔ)器535中(圖16,S1605)。
      如果作為‘有效’登記,則邏輯塊表編制裝置531從與上述最初檢測(cè)出的檢測(cè)對(duì)象頁(yè)相比物理地址小的檢測(cè)對(duì)象頁(yè)中的物理地址大的頁(yè)起按順序參閱標(biāo)志區(qū)90的值,進(jìn)行該值為有效值的檢測(cè)對(duì)象頁(yè)的檢測(cè)。如果檢測(cè)出標(biāo)志區(qū)90的值為有效值的檢測(cè)對(duì)象頁(yè),則邏輯塊表編制裝置531判斷該頁(yè)A中已存儲(chǔ)的第2表80中所保持的識(shí)別編號(hào)與在上述存儲(chǔ)器535中已存儲(chǔ)的識(shí)別編號(hào)是否相同(圖16,S1603~1604)。
      如果判斷為不相同,則上述邏輯塊表編制裝置531將由在該第2表80中已登記的第2物理地址Ca確定的邏輯塊C作為‘有效’登記在邏輯塊表53中,在上述存儲(chǔ)器535中存儲(chǔ)在該第2表80中已保持的識(shí)別編號(hào)(圖16,S1605)。如果判斷為相同,則上述邏輯塊表編制裝置531不在邏輯塊表53中登記由在該第2表80中已登記的第2物理地址Ca確定的邏輯塊C,而是再次開(kāi)始上述標(biāo)志區(qū)90的值為有效值的檢測(cè)對(duì)象頁(yè)的檢測(cè)。
      這樣,上述邏輯塊表編制裝置531只將由在保持沒(méi)有存儲(chǔ)在上述存儲(chǔ)器535中的識(shí)別編號(hào)的第2表中已登記的第2物理地址Ca確定的邏輯塊C作為‘有效’登記在上述邏輯塊表53中。
      上述邏輯塊表編制裝置531進(jìn)行規(guī)定的物理塊B的全部檢測(cè)對(duì)象頁(yè)的標(biāo)志區(qū)90的參閱(圖16,S1606),對(duì)上述存儲(chǔ)器535進(jìn)行初始化,對(duì)于尚未進(jìn)行檢測(cè)對(duì)象頁(yè)的參閱的物理塊B進(jìn)行該檢測(cè)處理(圖16,S1607~1608)。
      此外,如果接通電源,則第1表編制裝置511對(duì)上述第1表51進(jìn)行初始化(圖17,S1701),與上述邏輯塊表編制裝置531同樣地對(duì)于各物理塊進(jìn)行以下那樣的處理。
      上述第1表編制裝置511從規(guī)定的物理塊B的檢測(cè)對(duì)象頁(yè)中物理地址大的頁(yè)起按順序參閱標(biāo)志區(qū)90的值,(圖17,S1702)。上述第1表編制裝置511在該檢測(cè)處理中,在最初檢測(cè)出檢測(cè)對(duì)象頁(yè)時(shí),不進(jìn)行程序1703,而是轉(zhuǎn)移到程序1704。即,將該檢測(cè)對(duì)象頁(yè)的物理地址的規(guī)定的16位作為第1物理地址登記在由在該檢測(cè)對(duì)象頁(yè)中已存儲(chǔ)的第2表80保持的識(shí)別編號(hào)表示的區(qū)域50中(圖17,S1704)。
      如果登記第1物理地址,則第1第1表編制裝置511從與上述最初檢測(cè)出的檢測(cè)對(duì)象頁(yè)相比物理地址小的檢測(cè)對(duì)象頁(yè)中的物理地址大的頁(yè)起按順序參閱標(biāo)志區(qū)90的值,進(jìn)行該值為有效值的檢測(cè)對(duì)象頁(yè)的檢測(cè)。如果檢測(cè)出標(biāo)志區(qū)90的值為有效值的檢測(cè)對(duì)象頁(yè),則第1表編制裝置511判斷該檢測(cè)對(duì)象頁(yè)中已存儲(chǔ)的第2表80中所保持的識(shí)別編號(hào)與在上述存儲(chǔ)器515中已存儲(chǔ)的識(shí)別編號(hào)是否相同(圖17,S1703~1704)。
      如果判斷為不相同,則第1表編制裝置511將存儲(chǔ)了該第2表80的檢測(cè)對(duì)象頁(yè)的物理地址的規(guī)定的16位作為第1物理地址登記在由該第2表80保持的識(shí)別編號(hào)表示的區(qū)域50中。然后第1表編制裝置511將保持有最初檢測(cè)的第2表80的識(shí)別編號(hào)存儲(chǔ)于存儲(chǔ)器515中(圖17,S1705)。如果判斷為相同,則第1表編制裝置511不在由該第2表80中已保持的識(shí)別編號(hào)表示的區(qū)域50中登記檢測(cè)對(duì)象頁(yè)的物理地址的規(guī)定的16位(第1物理地址)。
      這樣,上述第1表編制裝置511將存儲(chǔ)了保持沒(méi)有存儲(chǔ)在上述存儲(chǔ)器515中的識(shí)別編號(hào)的第2表80的檢測(cè)對(duì)象頁(yè)的物理地址的規(guī)定的16位作為第1物理地址登記在由該識(shí)別編號(hào)表示的區(qū)域50中。
      如果上述第1表編制裝置511進(jìn)行規(guī)定的物理塊B的全部檢測(cè)對(duì)象頁(yè)的標(biāo)志區(qū)90的參閱(圖17,S1706),對(duì)上述存儲(chǔ)器515進(jìn)行初始化,對(duì)于尚未進(jìn)行檢測(cè)對(duì)象頁(yè)的參閱的規(guī)定的物理塊B進(jìn)行該檢測(cè)處理(圖17,S1707~1708)。
      如上所述,通過(guò)上述邏輯塊表編制裝置531編制邏輯塊表53、上述第1表編制裝置511編制第1表51,在將改寫(xiě)表寫(xiě)入到與存儲(chǔ)了無(wú)效表的物理塊B相同的物理塊B中時(shí),即使不將與無(wú)效表對(duì)應(yīng)的標(biāo)志區(qū)90的值更新為無(wú)效,也可編制邏輯塊表53和第1表51。
      此外,關(guān)于上述條件,寫(xiě)入裝置在例如與無(wú)效表相同的物理塊B內(nèi)的頁(yè)A中有與存儲(chǔ)了無(wú)效表的頁(yè)A相比物理地址小、且物理地址的規(guī)定的5位為‘01000’的頁(yè)A時(shí),也可在該頁(yè)A中寫(xiě)入改寫(xiě)數(shù)據(jù)。此時(shí),上述寫(xiě)入裝置在沒(méi)有滿足該條件的頁(yè)時(shí),在屬于存儲(chǔ)了無(wú)效表的物理塊B以外的規(guī)定的物理塊B的、且物理地址的規(guī)定的5位為‘01000’的頁(yè)A中物理地址最大的頁(yè)A中,將改寫(xiě)數(shù)據(jù)作為寫(xiě)入頁(yè)來(lái)決定。
      在這樣的條件下,在決定了寫(xiě)入改寫(xiě)數(shù)據(jù)的頁(yè)時(shí),上述邏輯塊表編制裝置531、第1表編制裝置511從物理地址的最小檢測(cè)對(duì)象頁(yè)起按順序進(jìn)行標(biāo)志區(qū)90的參閱。
      如以上已說(shuō)明的那樣,由于本發(fā)明的存儲(chǔ)器使用上述第1表和第2表,將邏輯地址變換為物理地址,故可削減在RAM上設(shè)置了的第1表51的容量。因而,可實(shí)現(xiàn)小型且存儲(chǔ)容量大的存儲(chǔ)器。
      此外,本發(fā)明的存儲(chǔ)器通過(guò)將構(gòu)成該邏輯地址的物理地址作為連鎖信息寫(xiě)入到構(gòu)成邏輯塊的規(guī)定的寫(xiě)入單位中,可很快地對(duì)構(gòu)成該邏輯塊的全部寫(xiě)入單位進(jìn)行存取。
      由于判斷對(duì)物理塊已寫(xiě)入的數(shù)據(jù)的狀況來(lái)進(jìn)行寫(xiě)入數(shù)據(jù)的寫(xiě)入單位或擦除的物理塊的選擇,故可高效率地進(jìn)行數(shù)據(jù)的寫(xiě)入或數(shù)據(jù)的擦除。由于只在與無(wú)效表不同的物理塊中寫(xiě)入改寫(xiě)表的情況下將無(wú)效表的標(biāo)志區(qū)的值更新為無(wú)效值,故可高速地進(jìn)行寫(xiě)入處理。
      此外,通過(guò)將物理塊表表示的不良物理塊的使用狀態(tài)定為有效狀態(tài),可抑制寫(xiě)入的延遲。其結(jié)果,可謀求數(shù)據(jù)存取的高速化。再者,通過(guò)對(duì)于與不良物理塊對(duì)應(yīng)的邏輯塊將邏輯塊表表示的狀態(tài)定為有效狀態(tài),可抑制擦除的延遲。其結(jié)果,可謀求數(shù)據(jù)存取的高速化。
      權(quán)利要求
      1.一種存儲(chǔ)器,由邏輯地址得到非易失性存儲(chǔ)器內(nèi)的物理地址,其特征在于,具備第1表,得到與構(gòu)成上述邏輯地址的規(guī)定位對(duì)應(yīng)的非易失性存儲(chǔ)器上的第1物理地址;以及第2表,得到由上述第1物理地址確定且與不同于上述邏輯地址的上述規(guī)定位的其它位對(duì)應(yīng)的非易失性存儲(chǔ)器上的第2物理地址。
      2.如權(quán)利要求1中所述的存儲(chǔ)器,其特征在于上述第2物理地址是確定代表寫(xiě)入單位的物理地址的信息,上述代表寫(xiě)入單位代表構(gòu)成邏輯塊的多個(gè)寫(xiě)入單位,上述邏輯塊是上述邏輯地址所表示的數(shù)據(jù)塊。
      3.如權(quán)利要求2中所述的存儲(chǔ)器,其特征在于具備寫(xiě)入裝置,該寫(xiě)入裝置伴隨在上述非易失性存儲(chǔ)器中構(gòu)成上述邏輯塊的處理,將確定該邏輯塊的代表寫(xiě)入單位的物理地址的信息作為上述第2物理地址登記在上述第2表中。
      4.如權(quán)利要求1中所述的存儲(chǔ)器,其特征在于具備寫(xiě)入裝置,該寫(xiě)入裝置伴隨在上述非易失性存儲(chǔ)器中構(gòu)成上述邏輯塊的處理,進(jìn)行使第1物理地址確定的第2表變?yōu)闊o(wú)效的處理,其中上述第1物理地址與表示在規(guī)定寫(xiě)入單位中所存儲(chǔ)的該邏輯塊的邏輯地址的規(guī)定位對(duì)應(yīng);和進(jìn)行將第2表復(fù)制到其它寫(xiě)入單位中并將確定該其它寫(xiě)入單位的物理地址的信息作為上述第1物理地址寫(xiě)入到上述第1表中的處理,其中,上述第2表將用來(lái)確定上述邏輯塊的代表寫(xiě)入單位的物理地址的信息作為上述第2物理地址來(lái)登記。
      5.如權(quán)利要求1中所述的存儲(chǔ)器,其特征在于具備寫(xiě)入裝置,該寫(xiě)入裝置伴隨在上述非易失性存儲(chǔ)器中構(gòu)成上述邏輯塊的處理,進(jìn)行使第1物理地址確定的第2表變?yōu)闊o(wú)效的處理,其中上述第1物理地址與表示在作為該非易失性存儲(chǔ)器的數(shù)據(jù)的擦除單位的規(guī)定物理塊中所存儲(chǔ)的該邏輯塊的邏輯地址對(duì)應(yīng);和進(jìn)行將第2表復(fù)制到其它物理塊的規(guī)定頁(yè)中并將確定該頁(yè)的物理地址的信息作為上述第1物理地址寫(xiě)入到上述第1表中的處理,其中,上述第2表將用來(lái)確定上述邏輯塊的代表寫(xiě)入單位的物理地址的信息作為上述第2物理地址來(lái)登記。
      6.如權(quán)利要求1中所述的存儲(chǔ)器,其特征在于具備根據(jù)在上述第2表中保持的識(shí)別編號(hào)和該第2表的物理地址來(lái)編制上述第1表的第1表編制裝置。
      7.如權(quán)利要求4中所述的存儲(chǔ)器,其特征在于具備根據(jù)未變?yōu)闊o(wú)效的第2表的物理地址來(lái)編制上述第1表的第1表編制裝置。
      8.如權(quán)利要求5中所述的存儲(chǔ)器,其特征在于具備根據(jù)在同一物理塊內(nèi)表示第1表區(qū)域的識(shí)別編號(hào)為相同的多個(gè)第2表中最初檢測(cè)出的未被認(rèn)定為無(wú)效的第2表的物理地址,來(lái)編制上述第1表的第1表編制裝置。
      9.如權(quán)利要求2中所述的存儲(chǔ)器,其特征在于具備根據(jù)表示登記有上述第2物理地址的第2表是有效還是無(wú)效的標(biāo)志,編制表示含有由該第2物理地址確定了物理地址的代表寫(xiě)入單位的邏輯塊狀況的邏輯塊表的邏輯塊表編制裝置。
      10.如權(quán)利要求1中所述的存儲(chǔ)器,其特征在于具備物理塊表,表示作為上述非易失性存儲(chǔ)器的數(shù)據(jù)擦除單位的物理塊的狀態(tài);地址寄存器,表示成為數(shù)據(jù)寫(xiě)入對(duì)象的物理塊;以及項(xiàng)目計(jì)數(shù)器,表示在上述地址寄存器中示出的物理塊中被寫(xiě)入的數(shù)據(jù)量,還具備地址寄存器,表示構(gòu)成作為邏輯地址表示的數(shù)據(jù)塊的邏輯塊的寫(xiě)入單位;以及寫(xiě)入裝置,根據(jù)上述物理塊表、上述地址寄存器和上述項(xiàng)目計(jì)數(shù)器,在該非易失性存儲(chǔ)器中構(gòu)成新的邏輯塊。
      11.如權(quán)利要求10中所述的存儲(chǔ)器,其特征在于上述寫(xiě)入裝置根據(jù)上述新構(gòu)成的邏輯塊的狀態(tài)來(lái)更新上述物理塊表、上述地址寄存器、上述項(xiàng)目計(jì)數(shù)器和表示上述邏輯塊狀況的邏輯塊表。
      12.如權(quán)利要求10中所述的存儲(chǔ)器,其特征在于具備根據(jù)上述邏輯塊表、上述物理塊表和上述地址寄存器所表示的內(nèi)容來(lái)擦除規(guī)定物理塊的數(shù)據(jù)的擦除裝置。
      13.如權(quán)利要求10中所述的存儲(chǔ)器,其特征在于具備判斷是否在上述物理塊中寫(xiě)入了數(shù)據(jù)并根據(jù)該判斷來(lái)編制上述物理塊表的物理塊表編制裝置。
      14.如權(quán)利要求10中所述的存儲(chǔ)器,其特征在于,具備不良物理塊判斷裝置,判斷上述物理塊是否為不良;以及使用狀態(tài)設(shè)定裝置,在由上述不良物理塊判斷裝置判斷為上述物理塊為不良的情況下,將上述物理塊表表示的該物理塊的使用狀態(tài)設(shè)定為使用中。
      15.如權(quán)利要求10中所述的存儲(chǔ)器,其特征在于,具備不良物理塊判斷裝置,判斷上述物理塊是否為不良;以及有效狀態(tài)設(shè)定裝置,對(duì)與由上述不良物理塊判斷裝置判斷為不良的上述物理塊對(duì)應(yīng)的邏輯塊,將表示上述邏輯塊狀況的上述邏輯塊表所表示的狀態(tài)設(shè)定為有效狀態(tài)。
      16.如權(quán)利要求4、5、7、8中的任一項(xiàng)所述的存儲(chǔ)器,其特征在于在存儲(chǔ)了上述第2表的寫(xiě)入單位中設(shè)置了存儲(chǔ)表示第2表為有效或無(wú)效的標(biāo)志的標(biāo)志區(qū)。
      17.一種存儲(chǔ)器,其特征在于,其備構(gòu)成作為邏輯地址所表示的數(shù)據(jù)塊的邏輯塊的表,用于從上述邏輯地址中得到由存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)區(qū)和存儲(chǔ)用于管理數(shù)據(jù)的管理信息的管理區(qū)構(gòu)成的非易失性存儲(chǔ)器的寫(xiě)入單位中代表該邏輯塊的代表寫(xiě)入單位的物理地址;和寫(xiě)入裝置,在上述管理區(qū)中寫(xiě)入用于得到與上述代表寫(xiě)入單位相同的構(gòu)成邏輯塊的其它寫(xiě)入單位的物理地址的連鎖信息。
      18.如權(quán)利要求17中所述的存儲(chǔ)器,其特征在于上述寫(xiě)入裝置將上述連鎖信息寫(xiě)入在上述管理區(qū)中寫(xiě)入規(guī)定管理信息的寫(xiě)入單位以外的寫(xiě)入單位的管理區(qū)中。
      19.如權(quán)利要求17中所述的存儲(chǔ)器,其特征在于上述管理信息是規(guī)定數(shù)以上的其它連鎖信息。
      20.如權(quán)利要求17中所述的存儲(chǔ)器,其特征在于上述表由第1表和第2表構(gòu)成,上述第1表用來(lái)得到與構(gòu)成上述邏輯地址的規(guī)定位對(duì)應(yīng)的非易失性存儲(chǔ)器上的第1物理地址,上述第2表被存儲(chǔ)在由上述第1物理地址確定的寫(xiě)入單位的管理區(qū)中,用來(lái)根據(jù)與上述邏輯地址的上述規(guī)定位不同的位得到上述代表寫(xiě)入單位的物理地址,上述管理信息是上述第2表。
      21.如權(quán)利要求17中所述的存儲(chǔ)器,其特征在于具備根據(jù)上述代表寫(xiě)入單位的物理地址和上述連鎖信息讀出邏輯塊的讀出裝置。
      22.一種存儲(chǔ)器,其特征在于具備物理塊表,表示作為非易失性存儲(chǔ)器的數(shù)據(jù)擦除單位的物理塊的狀態(tài);地址寄存器,表示成為數(shù)據(jù)寫(xiě)入對(duì)象的物理塊;以及項(xiàng)目計(jì)數(shù)器,表示在上述地址寄存器中示出的物理塊中被寫(xiě)入的數(shù)據(jù)量,還具備寫(xiě)入裝置,該寫(xiě)入裝置根據(jù)上述物理塊表、上述地址寄存器和上述項(xiàng)目計(jì)數(shù)器,在該非易失性存儲(chǔ)器中構(gòu)成新的邏輯塊。
      全文摘要
      近年來(lái),在被處理的數(shù)據(jù)量增大的具備非易失性存儲(chǔ)器的存儲(chǔ)器中,要求存儲(chǔ)容量的增大而不降低便攜性等。本申請(qǐng)的發(fā)明通過(guò)在RAM和非易失性存儲(chǔ)器中具備以往只在RAM中設(shè)置的將邏輯地址變換為物理地址的表,使得RAM容積削減而不導(dǎo)致存儲(chǔ)容量的下降。
      文檔編號(hào)G06F12/16GK1376980SQ0210790
      公開(kāi)日2002年10月30日 申請(qǐng)日期2002年3月21日 優(yōu)先權(quán)日2001年3月22日
      發(fā)明者外山昌之, 關(guān)部勉 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1