欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

存儲卡、半導體裝置和半導體存儲器的控制方法

文檔序號:6620568閱讀:189來源:國知局
專利名稱:存儲卡、半導體裝置和半導體存儲器的控制方法
技術領域
本發(fā)明涉及安裝了非易失性半導體存儲器的存儲卡,特別是涉及安裝了具有規(guī)定的擦除塊尺寸的非易失性半導體存儲器的存儲卡、在該卡上安裝的半導體裝置和半導體存儲器的控制方法。
背景技術
作為在存儲卡上安裝的非易失性存儲器,大多采用NAND型閃存器。在NAND型閃存器中,將某一定的數(shù)目的存儲單元歸納在一起構成了頁這樣的單位,將某一定的數(shù)目的頁歸納在一起構成了塊這樣的單位。
此外,對于NAND型閃存器來說,在其結構方面,不能對寫入了一次數(shù)據(jù)的單元單純地再次寫入數(shù)據(jù)。為了再次寫入數(shù)據(jù),必須進行擦除。在此,只能以塊單位進行擦除。此外,一般來說,以頁單位進行讀出或寫入。特別是在寫入中,必須從物理塊內的開頭頁起按順序寫入數(shù)據(jù)。
例如,考慮NAND型閃存器內的控制器根據(jù)來自使用NAND型閃存器的主機的寫入要求對已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域(例如頁)的數(shù)據(jù)增加變更的情況。在該情況下,控制器在探尋了數(shù)據(jù)已擦除完畢的第2塊后,從開頭頁起按順序在第2塊中寫入(復制)從第1塊的開頭頁到成為變更對象的頁之前的頁為止的數(shù)據(jù),接著,在第2塊中寫入成為變更對象的頁的數(shù)據(jù),最后,將從成為變更對象的頁之后的頁到最終頁為止的數(shù)據(jù)復制到第2塊中。
再有,在日本國特開2002-133877號公報中公開了可進行高速的塊擦除的NAND型EEPROM。
但是,按照現(xiàn)有的寫入方法,在對某個塊內的開頭頁進行了寫入后對另外的塊內的最終頁進行寫入那樣的情況下,2個寫入的時間間隔變得最大。在這樣的情況下,如果在存儲卡的規(guī)格中確定了時間的制約,則產生不滿足該時間的制約的事態(tài),存在工作中產生不良情況的危險。即使在上述文獻中也引起同樣的問題。
根據(jù)這樣的情況,希望實現(xiàn)滿足關于寫入的時間制約的工作。

發(fā)明內容
與本發(fā)明的實施例有關的半導體裝置具備具有規(guī)定的擦除塊尺寸的半導體存儲器;以及控制器,在對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
此外,與本發(fā)明的實施例有關的存儲卡具備具有規(guī)定的擦除塊尺寸的非易失性半導體存儲器;以及控制器,在對上述非易失性半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
此外,與本發(fā)明的實施例有關的半導體存儲器的控制方法是具有規(guī)定的擦除塊尺寸的半導體存儲器的控制方法,在該方法中,接受對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域的數(shù)據(jù)寫入要求,與上述區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。


圖1是示出與本發(fā)明的一實施例有關的存儲卡上安裝的器件類的概略結構的立體圖;圖2是示出包含主機和上述存儲卡的結構的框圖;圖3是示出主機20設想了的閃存器與實際上使用的閃存器的數(shù)據(jù)配置的差別的圖;圖4是示出主機側系統(tǒng)和存儲卡(大塊卡)的各信息交換層次的圖;圖5A和圖5B是示出從主機側發(fā)送來的指令的格式的圖;圖6是對比主機側設想了的塊寫入操作和存儲卡(大塊卡)側實際上進行的寫入處理而示出的圖;圖7是示出大塊卡內的閃存器的塊格式(作為擦除單位的256千字節(jié)物理塊部分)的圖;圖8是示出主機對本實施例的存儲卡進行寫入時的該存儲卡的I/O引腳和R/B引腳的信號的例子的時序圖;圖9是示出存儲卡內的控制器對本實施例的存儲卡內的非易失性存儲器進行寫入時的該存儲卡內的非易失性存儲器的I/O引腳和R/B引腳的信號的例子的時序圖;圖10是用于說明NAND型閃存器中的數(shù)據(jù)寫入的順序的圖;圖11是用于說明現(xiàn)有技術的基本的數(shù)據(jù)寫入方法的一例的圖;圖12是用于說明本實施例的基本的數(shù)據(jù)寫入方法的一例的圖;圖13是用于說明現(xiàn)有技術的數(shù)據(jù)寫入方法的具體例的圖;以及圖14是用于說明本實施例的數(shù)據(jù)寫入方法的具體例的圖。
具體實施例方式
以下參照附圖,說明本發(fā)明的一實施例。
圖1是示出與本發(fā)明的一實施例有關的存儲卡上安裝的器件類的概略結構的立體圖。
對于與本實施例有關的存儲卡1來說,如圖示那樣,在PCB(印刷電路板)基板上配置了NAND型閃存器3和控制器4。在上述控制器4中安裝了CPU(中央處理單元)8或ROM(只讀存儲器)9等的功能塊。在后面敘述各器件的細節(jié)。再有,NAND型閃存器3可以是在1個存儲單元中存儲1比特的信息的2值存儲器,也可以是在1個存儲單元中存儲比1比特多的信息(例如2比特)的多值存儲器。此外,在圖1中,示出了在PCB基板上配置了NAND型閃存器3和控制器4的情況,但也可在同一LSI(大規(guī)模集成電路)基板上配置NAND型閃存器3和控制器4。
在以下的說明中使用的術語「邏輯塊地址」、「物理塊地址」分別意味著塊本身的邏輯地址、物理地址。此外,「邏輯地址」、「物理地址」主要意味著塊本身的邏輯地址、物理地址,但有時也表示相當于比塊單位細的分辨率的單位的地址。
圖2是示出包含主機和上述存儲卡的結構的框圖。再有,對與圖1為共同的要素附以同一符號。
主機設備(以下稱為主機)20具備對被連接的存儲卡進行存取用的硬件和軟件(系統(tǒng))。該主機20管理存儲卡內部的物理狀態(tài)(在哪個物理塊地址中包含了第幾邏輯扇區(qū)地址數(shù)據(jù),或哪個塊為擦除狀態(tài)),作為直接控制存儲卡內的閃存器的主機而被構筑。
此外,主機20以使用擦除時的擦除塊尺寸被確定為16千字節(jié)的NAND型閃存器為前提,以16千字節(jié)單位進行邏輯、物理地址的分配,在大多數(shù)的情況下,關于16千字節(jié)部分的邏輯地址,順序地進行寫的訪問或讀的訪問(發(fā)出相應的指令)。
存儲卡1在連接到主機20上時接受電源供給而工作,進行與來自主機20的訪問對應的處理。該存儲卡1如上所述,具有NAND型閃存器3和控制器4。
NAND型閃存器3是擦除時的擦除塊尺寸(擦除單位的塊尺寸)被確定為256千字節(jié)的非易失性存儲器,例如以16千字節(jié)單位進行寫入、讀出。該NAND型閃存器3例如使用0.09μm工藝技術來制作。即,NAND型閃存器3的設計規(guī)則為不到0.1μm。
控制器4除了上述的CPU8和ROM9外,還安裝了存儲器界面部5、主機界面部6、緩沖器7和RAM(隨機存取存儲器)10。
存儲器界面部5進行控制器4與NAND型閃存器3之間的界面處理。主機界面部6進行控制器4與主機20之間的界面處理。
緩沖器7在將從主機20發(fā)送來的數(shù)據(jù)寫入到NAND型閃存器3中時,暫時地存儲一定量的數(shù)據(jù)(例如1頁部分),在對主機20送出從NAND型閃存器3讀出的數(shù)據(jù)時,暫時地存儲一定量的數(shù)據(jù)。
CPU8管理存儲卡1整體的工作。該CPU8例如在存儲卡1接受了電源供給時,通過將ROM9中被存儲了的程序包(控制程序)裝載到RAM10上來執(zhí)行規(guī)定的處理,在RAM10上作成各種表,或從主機20接受寫入指令、讀出指令、擦除指令以執(zhí)行對于NAND型閃存器3上的該相當?shù)膮^(qū)域的訪問,或控制通過緩沖器7的數(shù)據(jù)傳送處理。
ROM9是存儲由CPU8使用的控制程序等的存儲器。RAM10作為CPU8的作業(yè)區(qū)來使用,是存儲控制程序或各種表的存儲器。
圖3示出了主機20設想了的閃存器與實際上使用的閃存器(即,存儲卡1內的NAND型閃存器3)的數(shù)據(jù)配置的差別。
在主機20設想了的閃存器中,各頁具有528字節(jié)(512字節(jié)部分的數(shù)據(jù)存儲部+16字節(jié)部分的冗余部),32頁部分成為1個擦除單位(即,16千字節(jié)+0.5千字節(jié)(在此,k為1024))。以下,有時將安裝了這樣的閃存器的卡稱為「小塊卡」。
另一方面,在實際上使用的閃存器3中,各頁具有2112字節(jié)(512字節(jié)部分的數(shù)據(jù)存儲部×4+10字節(jié)部分的冗余部×4+24字節(jié)部分的管理數(shù)據(jù)存儲部),128頁部分成為1個擦除單位(即,256千字節(jié)+8千字節(jié))。以下,有時將安裝了這樣的閃存器3的卡稱為「大塊卡」。再有,在以下的說明中,為了方便起見,將小塊卡的擦除單位稱為16千字節(jié),將大塊卡的擦除單位稱為256千字節(jié)。
此外,主機20設想了的閃存器和實際上使用的閃存器3分別具備進行對閃存器的數(shù)據(jù)輸入輸出用的頁緩沖器。在主機20設想了的閃存器中具備的頁緩沖器的存儲容量為528字節(jié)(512字節(jié)+16字節(jié))。另一方面,在實際上使用的閃存器3中具備的頁緩沖器的存儲容量為2112字節(jié)(2048字節(jié)+64字節(jié))。在數(shù)據(jù)寫入等時,各頁緩沖器以相當于自身的存儲容量的1頁部分的單位執(zhí)行對閃存器的數(shù)據(jù)輸入輸出處理。
在圖3的例子中,示出了實際上使用的閃存器3的擦除塊尺寸是主機20設想了的閃存器的擦除塊尺寸的16倍的情況,但本發(fā)明不限定于此,只要大致是整數(shù)倍就行,也可構成為另外的倍率。
為了將大塊卡作成實用上有效的制品,希望圖3中示出的閃存器3的存儲容量大于等于1G比特。在閃存器3的存儲容量例如是1G比特的情況下,256千字節(jié)塊(擦除單位)的數(shù)目為512個。
此外,在圖3中例示了擦除單位是256千字節(jié)塊的情況,但將擦除單位例如構筑為128千字節(jié)的塊在實用上也是有效的。在該情況下,128千字節(jié)的塊的數(shù)目為1024個。
此外,在圖3的例子中,示出了實際上使用的閃存器3的擦除塊尺寸比主機20設想了的閃存器的擦除塊尺寸大的情況,但本發(fā)明不限定于此,也可構成為實際上使用的閃存器3的擦除塊尺寸比主機20設想了的閃存器的擦除塊尺寸小。
圖4是示出主機20側系統(tǒng)和存儲卡1(大塊卡)的各信息交換層次的圖。
主機20側的系統(tǒng)具有應用軟件21、文件系統(tǒng)22、驅動軟件23和小塊卡物理存取層24。另一方面,存儲卡1(大塊卡)具有小塊卡物理存取層11、小塊卡物理、小塊卡邏輯變換層12、小塊卡邏輯、大塊卡物理變換層13和大塊卡物理存取層14。
例如,如果主機20側的應用軟件21對文件系統(tǒng)22要求文件的寫入,則文件系統(tǒng)22根據(jù)小塊卡的邏輯塊地址,對驅動軟件23指示順序的扇區(qū)寫入。驅動軟件23接受該指示后,在實現(xiàn)基于小塊卡的邏輯塊地址的每個16千字節(jié)塊的順序的寫入時,進行邏輯、物理塊變換,通過小塊卡物理存取層24對大塊卡發(fā)出按小塊卡的物理塊地址進行的隨機的寫入指令,進行數(shù)據(jù)傳送。
再有,在寫的訪問中,在小塊卡的情況下也好、在大塊卡的情況下也好,在協(xié)議方面都以按(1)指令、(2)頁地址(行地址)、(3)列地址、(4)數(shù)據(jù)、(5)程序確認指令這樣的順序進行信息的授受為前提。
如果大塊卡側中的小塊卡物理存取層11從主機20接受按小塊卡的物理塊地址的寫入指令,則除了取得物理塊地址或數(shù)據(jù)外,還取得附加在其上的附加數(shù)據(jù)中包含的邏輯塊地址。
小塊卡物理、小塊卡邏輯變換層12具有在數(shù)據(jù)讀出等時進行從小塊卡的物理塊地址(對應于16千字節(jié)塊部分)至小塊卡的邏輯塊地址(對應于16千字節(jié)塊部分)的變換處理用的第1表。變換層12在小塊卡物理存取層11接受寫入指令并取得了小塊卡的邏輯塊地址時,將其反映在上述第1表中。關于物理塊地址,也將其反映在上述第1表中。
小塊卡邏輯、大塊卡物理變換層13具有在數(shù)據(jù)讀出等時進行從小塊卡的邏輯塊地址(對應于順序的16千字節(jié)塊×16個部分)至大塊卡的物理塊地址(對應于256千字節(jié)物理塊部分)的變換處理用的第2表。變換層12在小塊卡物理存取層11接受寫入指令并取得了小塊卡的邏輯塊地址時,將其反映在上述第2表中。
大塊卡物理存取層14根據(jù)小塊卡物理存取層11接受寫入指令并取得了的小塊卡的邏輯塊地址決定閃存器3內部的數(shù)據(jù)配置,在256千字節(jié)物理塊內以2千字節(jié)(1頁)單位順序地寫入16千字節(jié)部分的數(shù)據(jù)。此外,大塊卡物理存取層14在閃存器3內部的管理數(shù)據(jù)區(qū)域內的規(guī)定的區(qū)域中存儲已取得的小塊卡的邏輯塊地址或物理塊地址。
這樣,由于主機20發(fā)出基于小塊卡的物理塊地址的指令,故在大塊卡側,以知道與小塊卡的物理塊地址對應的數(shù)據(jù)存在于哪個256千字節(jié)物理塊中的方式來管理。具體地說,在每個16千字節(jié)塊中管理小塊卡的邏輯、物理塊地址的對應關系,同時以知道與小塊卡的連續(xù)的256千字節(jié)部分的邏輯塊地址對應的數(shù)據(jù)被存儲在大塊卡內的哪個256千字節(jié)物理塊中的方式來管理。
圖5A和圖5B是示出從主機20側發(fā)送來的指令的格式的圖;
從主機20側發(fā)送來的指令的包,如圖5A中所示,包含了指令類別信息(在此是「寫入」)、地址(物理塊地址)、數(shù)據(jù)(內容等的實際數(shù)據(jù)和附加數(shù)據(jù)(512字節(jié)+16字節(jié)))這樣的各種信息。
在這樣的格式的包中,如圖5B中所示,在附加數(shù)據(jù)16字節(jié)中的規(guī)定的位置上配置了小塊卡的「邏輯塊地址」(與成為存取對象的16字節(jié)塊對應的邏輯地址)。大塊卡除了取得指令類別信息、物理塊地址、數(shù)據(jù)外,還特別取得上述「邏輯塊地址」。再有,在讀出指令的情況下,不附加該「邏輯塊地址」。
圖6是對比主機20側設想了的塊寫入操作和存儲卡1(大塊卡)側實際上進行的寫入處理而示出的圖。
在主機20側(該圖的左側),在基于小塊卡的邏輯地址的16千字節(jié)塊單位的順序的寫入操作的發(fā)生時,進行按小塊卡的物理塊地址的16千字節(jié)塊單位的隨機的寫入操作。
另一方面,在大塊卡側(該圖的右側),在從主機20側接收了寫入指令的情況下,在閃存器3內順序地寫入基于小塊卡的邏輯塊地址的16千字節(jié)塊單位的數(shù)據(jù)。
如上所述,主機20進行按小塊卡的物理地址的16字節(jié)單位的隨機的寫入操作。在這樣的隨機的寫入操作中,一般來說,較多地發(fā)生只改寫大塊(256千字節(jié))的一部分用的處理。在NAND型閃存器中,由于只能以塊單位進行擦除,故在只改寫塊的一部分的情況下,必須在已擦除完畢的新塊中寫入被改寫的新數(shù)據(jù),將未被改寫的剩下的數(shù)據(jù)從包含被改寫為新數(shù)據(jù)的舊數(shù)據(jù)的舊塊復制到新塊中。這樣,由于只改寫塊的一部分的處理伴隨未被改寫的數(shù)據(jù)的復制工作(以下,稱為「牽連數(shù)據(jù)復制」),故如果較多地發(fā)生只改寫塊的一部分的處理,則輔助操作的量非常地大。因此,在本實施例中,按照從主機20側能得到的邏輯地址的順序,通過在大塊卡側再次分配物理地址,減少了只是塊的一部分的寫入的發(fā)生,抑制了輔助操作的量的增大。
圖7是示出大塊卡內的NAND型閃存器3的塊格式(作為擦除單位的256千字節(jié)物理塊部分)的圖。
在大塊卡中,在作為擦除單位的256千字節(jié)物理塊中包含了16個部分的寫入相當于作為主機20側管理的單位的16千字節(jié)的數(shù)據(jù)用的塊(以下稱為主機管理塊)。在數(shù)據(jù)寫入時,按照小塊卡的邏輯塊地址的順序配置各自的數(shù)據(jù)。
各主機管理塊由8個頁構成。各頁包含4個部分的512字節(jié)數(shù)據(jù)區(qū),同時包含了與各數(shù)據(jù)區(qū)對應的10字節(jié)ECC區(qū)域。此外,在頁中的最后的512字節(jié)數(shù)據(jù)區(qū)(第4個512字節(jié)數(shù)據(jù)區(qū))之后也設置24字節(jié)管理數(shù)據(jù)區(qū)。因此,頁中的最后的10字節(jié)ECC區(qū)域成為與第4個512字節(jié)數(shù)據(jù)區(qū)和24字節(jié)管理數(shù)據(jù)區(qū)這兩者相對應的結構。
作為擦除單位的256千字節(jié)物理塊中包含的128個24字節(jié)管理數(shù)據(jù)區(qū)中,例如在最后的24字節(jié)管理數(shù)據(jù)區(qū)中歸納地存儲了與由從主機20側送來的指令取得的物理塊地址相當?shù)牡刂沸畔?以下稱為「主機管理物理地址」)和與邏輯塊地址相當?shù)牡刂沸畔?以下稱為「主機管理邏輯塊地址」)。
在各256千字節(jié)塊內被存儲了的「主機管理物理地址」和「主機管理邏輯塊地址」在作成圖4中已說明的小塊卡物理、小塊卡邏輯變換層12具有的第1表和小塊卡邏輯、大塊卡物理變換層13具有的第2表時被使用。
圖8是示出主機20對本實施例的存儲卡1進行寫入時的該存儲卡1的I/O引腳和R/B引腳的信號的例子的時序圖。
主機20假定存儲卡是具有16千字節(jié)的擦除塊尺寸的非易失性存儲器并控制存儲卡。例如在對存儲卡的寫入時,主機20對I/O引腳1~8輸入串行數(shù)據(jù)輸入指令80H(H表示16進制)。其次,主機20對I/O引腳1~8輸入列地址C/A和頁地址P/A。再有,在此,列地址C/A和頁地址P/A是主機20對存儲卡1設想了的假想物理地址空間中的列地址和頁地址。
進而,主機20對I/O引腳1~8的每一個輸入528次寫入數(shù)據(jù)。具體地說,主機20一邊定時528次對寫啟動引腳的輸入信號,一邊依次對各自的I/O引腳移入528比特(按全部的I/O引腳合計為528字節(jié))的數(shù)據(jù)。如果數(shù)據(jù)的移入結束,則主機20對I/O引腳1~8輸入程序指令10H。響應于此,存儲卡對其R/B引腳輸出低電平的信號,顯示出存儲卡處于”忙”的狀態(tài)。其后,在規(guī)定的期間后,通過對R/B引腳輸出高電平的信號,顯示出存儲卡處于”準備好”的狀態(tài)。
但是,圖8中的R/B引腳的狀態(tài)始終是對主機20顯示出存儲卡1處于怎樣的狀態(tài)。即,在圖8中,即使響應于程序指令10H的輸入,顯示出R/B引腳處于”忙”的狀態(tài)(即輸出低電平),也不一定在內部實際上進行了對NAND型閃存器3的寫入工作(即,從頁緩沖器對存儲單元陣列的數(shù)據(jù)傳送)。此外,即使R/B引腳復歸到”準備好”的狀態(tài),也不一定在內部實際上結束了對NAND型閃存器3的寫入工作。
圖9是示出存儲卡1內的控制器4對本實施例的存儲卡1內的NAND型閃存器3進行寫入時的NAND型閃存器3的I/O引腳和R/B引腳的信號的例子的時序圖。
控制器4識別了NAND型閃存器3是具有256千字節(jié)的擦除塊尺寸的非易失性存儲器。例如,在對NAND型閃存器3的寫入時,控制器4對I/O引腳1~8輸入串行數(shù)據(jù)輸入指令80H(H表示16進制)。其次,控制器4對I/O引腳1~8輸入列地址C/A和頁地址P/A。再有,在此,列地址C/A和頁地址P/A是控制器4對NAND型閃存器3設想了的實際物理地址空間中的列地址和頁地址。因而,圖8中的列地址C/A和頁地址P/A不一定一致。
進而,控制器4對I/O引腳1~8的每一個輸入2112次寫入數(shù)據(jù)。具體地說,控制器4一邊定時2112次對寫啟動引腳的輸入信號,一邊依次對各自的I/O引腳移入2112比特(按全部的I/O引腳合計為2112字節(jié))的數(shù)據(jù)。如果數(shù)據(jù)的移入結束,則控制器4對I/O引腳1~8輸入程序指令10H。響應于此,存儲卡對其R/B引腳輸入低電平的信號,顯示出存儲卡處于”忙”的狀態(tài)。其后,在規(guī)定的期間后,通過對R/B引腳輸出高電平的信號,顯示出存儲卡處于”準備好”的狀態(tài)。圖9中的R/B引腳的狀態(tài)顯示出對控制器4來說NAND型閃存器3實際上處于怎樣的狀態(tài)。
再有,在上述的圖8和圖9中,分別以1個循環(huán)示出了列地址C/A和頁地址P/A的輸入,但根據(jù)存儲卡1的容量或NAND型閃存器3的容量,也有適當?shù)貫榇笥诘扔?個循環(huán)的情況。
如上述圖8和圖9可知,由于存儲卡在”忙”的狀態(tài)下存在的時間有限制,故必須在其間進行數(shù)據(jù)寫入,在規(guī)定的期間后,在主機側顯示出該存儲卡成為”準備好”的狀態(tài)。此外,在NAND型閃存器中,在對某個物理塊內的各頁寫入數(shù)據(jù)時,關于寫入順序也存在制約。即,NAND型閃存器必須成為從物理塊內的開頭頁(相當于圖10中示出的開頭字線WL0上的單元)起順序地寫入數(shù)據(jù)的結構。在本實施例中,利用后述的方法,既滿足上述的各自的制約又實現(xiàn)有效的數(shù)據(jù)寫入。
其次,參照圖11和圖12,將本實施例的基本的數(shù)據(jù)寫入方法與現(xiàn)有技術的數(shù)據(jù)寫入方法進行對比來說明。
在此,舉出在NAND型閃存器3上對用已寫入了數(shù)據(jù)的塊A內的LBA8表示的第9個區(qū)域(即圖7中的“主機管理塊”8(由8個頁部分構成的區(qū)域))發(fā)生了數(shù)據(jù)寫入要求時的對數(shù)據(jù)擦除完畢的塊B的寫入工作作為例子。再有,在塊A內,假定未發(fā)生對該第9個區(qū)域以外的區(qū)域的數(shù)據(jù)寫入要求。該情況下的寫入工作在本實施例中由控制器4(參照圖1、圖2)來控制,具體地說,通過執(zhí)行從ROM9裝載到RAM10上的控制程序的CPU8或存儲器界面部5來控制。
在圖11中示出的現(xiàn)有技術的數(shù)據(jù)寫入方法中,在對塊A內的第9個區(qū)域(LBA8)發(fā)生了數(shù)據(jù)寫入要求的情況下,首先,將塊A內的第1~8個區(qū)域(LBA0~LBA7)的數(shù)據(jù)復制到塊B內的第1~8個區(qū)域中(步驟S11)。
接著,在塊B內的第9個區(qū)域中寫入對塊A內的第9個區(qū)域(LBA8)要求了寫入的新數(shù)據(jù)(步驟S12)。
最后,將塊A內的第10~16個區(qū)域(LBA9~LBA15)的數(shù)據(jù)復制到塊B內的第10~16個區(qū)域中(步驟S13)。
另一方面,在圖12中示出的本實施例的數(shù)據(jù)寫入方法中,在對塊A內的第9個區(qū)域(LBA8)發(fā)生了數(shù)據(jù)寫入要求的情況下,首先,將對該第9個區(qū)域(LBA8)要求了寫入的新數(shù)據(jù)寫入到塊B內的第1個(開頭)區(qū)域中(步驟S21)。此時,與成為寫入要求的對象的區(qū)域的地址(例如塊地址或頁地址)的值n無關地將要求了寫入的新數(shù)據(jù)寫入到塊B的開頭區(qū)域中,同時在共同的頁上的冗余部中寫入該地址的值n。
接著,將塊A內的第10~16個區(qū)域(LBA9~LBA15)的數(shù)據(jù)復制到塊B內的與開頭區(qū)域后續(xù)的第2~8個區(qū)域中(步驟S22)。此時,將地址的值n+1~m也分別寫入到共同的頁上的冗余部中。
最后將塊A內的第1~8個區(qū)域(LBA0~LBA7)的數(shù)據(jù)復制到塊B內的第9~16個區(qū)域中(步驟S23)。此時,將地址的值0~n-1也分別寫入到共同的頁上的冗余部中。
再有,在對塊B的數(shù)據(jù)寫入結束了后,擦除塊A上的數(shù)據(jù)。也可在顯示出存儲卡成為”準備好”的狀態(tài)后進行該擦除。
通過在每當發(fā)生數(shù)據(jù)寫入要求時進行上述的步驟S21~S23中示出的處理,可防止從某個寫入到其次的寫入為止的時間間隔的增大,可解決在現(xiàn)有技術中已說明的時間的制約的問題。此外,滿足了必須從各物理塊內的開頭區(qū)域起順序地寫入數(shù)據(jù)這樣的制約。
另一方面,在進行了上述步驟S21~S23中示出的處理后,在對塊B內的某個區(qū)域發(fā)生了數(shù)據(jù)讀出要求的情況下,控制器4根據(jù)在塊B內的開頭區(qū)域中被寫入了的地址n,可求出寫入了數(shù)據(jù)讀出對象的數(shù)據(jù)的位置。在該情況下,根據(jù)地址n和讀出要求的地址,計算出被進行了讀出要求的數(shù)據(jù)相當于塊B內的哪個地址即可。
其次,參照圖13和圖14,說明本實施例的數(shù)據(jù)寫入方法與現(xiàn)有技術的數(shù)據(jù)寫入方法的差別顯著地呈現(xiàn)的一例。
在此,舉出在NAND型閃存器3上對用已寫入了數(shù)據(jù)的塊C內的LBA0表示的開頭區(qū)域發(fā)生了數(shù)據(jù)寫入要求且對塊D內的LBA31表示的最終區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況的對數(shù)據(jù)擦除完畢的塊E和塊F的寫入工作作為例子。
在圖13中示出的現(xiàn)有技術的數(shù)據(jù)寫入方法中,首先,將對塊C內的第1個區(qū)域(LBA0)要求了寫入的新數(shù)據(jù)寫入到塊E內的第1個區(qū)域中(步驟S31)。
接著,將塊C內的第2~16個區(qū)域(LBA1~LBA15)的數(shù)據(jù)復制到塊E內的第2~16個區(qū)域中(步驟S32)。
接著,將塊D內的第1~15個區(qū)域(LBA16~LBA30)的數(shù)據(jù)復制到塊F內的第1~15個區(qū)域中(步驟S33)。
最后,將對塊D內的第32個區(qū)域(LBA31)要求了寫入的新數(shù)據(jù)寫入到塊F內的第32個區(qū)域中(步驟S34)。
在該例中,由于從步驟S31的寫入到步驟S34的寫入為止的時間間隔非常長,故存在不能滿足在現(xiàn)有技術中已說明的時間的制約的可能。
另一方面,在圖14中示出的本實施例的數(shù)據(jù)寫入方法中,首先,將對塊C內的第1個區(qū)域(LBA0)要求了寫入的新數(shù)據(jù)寫入到塊E內的第1個(開頭)區(qū)域中(步驟S41)。此時,與成為寫入要求的對象的區(qū)域的地址的值n無關地將要求了寫入的新數(shù)據(jù)寫入到塊E的開頭區(qū)域中,同時在共同的頁上的冗余部中寫入該地址的值(在此省略圖示)。
接著,將塊C內的第2~16個區(qū)域(LBA1~LBA15)的數(shù)據(jù)復制到塊E內的第2~16個區(qū)域中(步驟S42)。此時,將相當?shù)牡刂返闹?在此省略圖示)也分別寫入到共同的頁上的冗余部中。
其次,將對塊D內的第16個區(qū)域(LBA31)要求了寫入的新數(shù)據(jù)寫入到塊F內的第1個(開頭)區(qū)域中(步驟S43)。此時,與成為寫入要求的對象的區(qū)域的地址的值n無關地將要求了寫入的新數(shù)據(jù)寫入到塊F的開頭區(qū)域中,同時在共同的頁上的冗余部中寫入該地址的值(在此省略圖示)。
最后,將塊D內的第1~15個區(qū)域(LBA16~LBA30)的數(shù)據(jù)復制到塊F內的第2~16個區(qū)域中(步驟S44)。此時,將相應的地址的值(在此省略圖示)也分別寫入到共同的頁上的冗余部中。
再有,在對塊E的數(shù)據(jù)寫入結束了后,擦除塊C上的數(shù)據(jù)。同樣,在對塊F的數(shù)據(jù)寫入結束了后,擦除塊D上的數(shù)據(jù)。也可歸納在一起一次進行這些擦除。此外,也可在顯示出存儲卡成為”準備好”的狀態(tài)后進行這些擦除。
如從該圖14的例子可知,與圖13的情況不同,由于可縮短從步驟S41的寫入到步驟S44的寫入為止的時間間隔,故可滿足關于寫入的時間的制約。
再有,在以上的說明中,示出了按步驟S41~步驟S42~步驟S43~步驟S44的順序進行處理的例子,但也可代之以按步驟S41~步驟S43~步驟S42~步驟S44的順序進行處理。即,也可在進行了對塊E的開頭區(qū)域的新數(shù)據(jù)的寫入后,進行對塊F的開頭區(qū)域的新數(shù)據(jù)的寫入,其后進行對塊E的剩下的區(qū)域的數(shù)據(jù)復制,最后進行對塊F的剩下的區(qū)域的數(shù)據(jù)復制。在該情況下,也滿足了必須從各物理塊內的開頭區(qū)域順序地寫入數(shù)據(jù)這樣的制約。
此外,在上述圖12和圖14的數(shù)據(jù)寫入方法中,示出了以大塊卡為對象的例子,但也可以小塊卡為對象來實施。在該情況下,將圖中的各LBA看作1個頁來處理即可。
這樣,按照本實施例,可縮短從某個寫入到其次的寫入為止的時間間隔,可實現(xiàn)滿足由存儲卡的規(guī)格等確定了的時間的制約等的寫入工作。
在上述實施例的說明中,舉出控制器4進行對實際上使用的半導體存儲器的數(shù)據(jù)讀出、寫入的控制(包含圖12和圖14中示出的處理的控制)的情況作為例子,但也可代之以構筑為主機20側的驅動軟件23等進行該控制。在該情況下,關于主機20設想了的半導體存儲器中的地址與在實施中使用的半導體存儲器的地址的對應關系的管理等,也可構筑為在主機20側進行。
此外,在上述實施例的說明中,示出了實際上使用的閃存器3的擦除塊尺寸比主機20設想了的閃存器的擦除塊尺寸大的情況,但當然實際上使用的閃存器3的擦除塊尺寸也可以與主機20設想了的閃存器的擦除塊尺寸相同。
此外,在上述實施例的說明中,作為非易失性存儲器,舉出NAND型閃存器為例進行了說明,但非易失性存儲器不限于NAND型閃存器,也可應用其它的種類的存儲器。
如以上詳細地說明的那樣,按照本發(fā)明,可實現(xiàn)滿足關于寫入的時間的制約的工作。
權利要求
1.一種半導體裝置,其特征在于,具備具有規(guī)定的擦除塊尺寸的半導體存儲器;以及控制器,在對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
2.如權利要求1中所述的半導體裝置,其特征在于上述控制器在上述第2塊的開頭區(qū)域中與上述寫入要求的數(shù)據(jù)一起寫入上述地址。
3.如權利要求2中所述的半導體裝置,其特征在于上述控制器在對上述第2塊內的某個區(qū)域發(fā)生了數(shù)據(jù)讀出要求的情況下,根據(jù)在該第2塊內的上述開頭區(qū)域中被寫入了的上述地址,求出寫入了數(shù)據(jù)讀出對象的數(shù)據(jù)的位置。
4.如權利要求1中所述的半導體裝置,其特征在于如果對上述第1塊內的其它的區(qū)域沒有數(shù)據(jù)寫入要求,則上述控制器將除了成為上述寫入要求的對象的區(qū)域的數(shù)據(jù)外的上述第1塊內的數(shù)據(jù)復制到上述第2塊內的上述開頭區(qū)域以外的區(qū)域中。
5.一種存儲卡,其特征在于,具備具有規(guī)定的擦除塊尺寸的非易失性半導體存儲器;以及控制器,在對上述非易失性半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
6.如權利要求5中所述的存儲卡,其特征在于上述控制器包含存儲上述控制器的工作用的程序的ROM;以及執(zhí)行在上述ROM中存儲了的程序的CPU。
7.如權利要求5中所述的存儲卡,其特征在于上述非易失性半導體存儲器是NAND型閃存器。
8.如權利要求5中所述的存儲卡,其特征在于上述非易失性半導體存儲器的設計規(guī)則為不到0.1μm。
9.如權利要求5中所述的存儲卡,其特征在于上述非易失性半導體存儲器的存儲容量為大于等于1G比特。
10.一種半導體裝置,其特征在于具備具有第1擦除塊尺寸的半導體存儲器;以及對上述半導體存儲器執(zhí)行存取的控制器,上述控制器管理具有上述第1擦除塊尺寸的半導體存儲器中的第1地址與具有比上述第1擦除塊尺寸小的第2擦除塊尺寸的半導體存儲器中的第2地址的對應關系,在對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的與上述第2擦除塊尺寸相當?shù)膮^(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
11.如權利要求10中所述的半導體裝置,其特征在于上述第2地址包含邏輯塊地址,如果對上述第1塊內的其它的區(qū)域沒有數(shù)據(jù)寫入要求,則上述控制器將除了成為上述寫入要求的對象的區(qū)域的數(shù)據(jù)外的上述第1塊內的數(shù)據(jù)復制到上述第2塊中,使得上述邏輯塊地址對于在上述第2塊的開頭區(qū)域中被寫入了的數(shù)據(jù)是連續(xù)的。
12.一種具有規(guī)定的擦除塊尺寸的半導體存儲器的控制方法,其特征在于接受對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域的數(shù)據(jù)寫入要求,與上述區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
13.如權利要求12中所述的半導體存儲器的控制方法,其特征在于在上述第2塊的開頭區(qū)域中與上述寫入要求的數(shù)據(jù)一起寫入上述地址。
14.如權利要求13中所述的半導體存儲器的控制方法,其特征在于在對上述第2塊內的某個區(qū)域發(fā)生了數(shù)據(jù)讀出要求的情況下,根據(jù)在該第2塊內的上述開頭區(qū)域中被寫入了的上述地址,求出寫入了數(shù)據(jù)讀出對象的數(shù)據(jù)的位置。
15.如權利要求12中所述的半導體存儲器的控制方法,其特征在于如果對上述第1塊內的其它的區(qū)域沒有數(shù)據(jù)寫入要求,則將除了成為上述寫入要求的對象的區(qū)域的數(shù)據(jù)外的上述第1塊內的數(shù)據(jù)復制到上述第2塊內的開頭區(qū)域以外的區(qū)域中。
16.一種具有第1擦除塊尺寸的半導體存儲器的控制方法,其特征在于管理具有上述第1擦除塊尺寸的半導體存儲器中的第1地址與具有比上述第1擦除塊尺寸小的第2擦除塊尺寸的半導體存儲器中的第2地址的對應關系,在對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的與上述第2擦除塊尺寸相當?shù)膮^(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,進行用來與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)的控制。
全文摘要
半導體裝置具備具有規(guī)定的擦除塊尺寸的半導體存儲器;以及控制器,在對上述半導體存儲器中已寫入了數(shù)據(jù)的第1塊內的某個區(qū)域發(fā)生了數(shù)據(jù)寫入要求的情況下,與該區(qū)域的地址的值無關地在數(shù)據(jù)已擦除完畢的第2塊的開頭區(qū)域中寫入上述寫入要求的數(shù)據(jù)。
文檔編號G06F12/08GK1702776SQ20051007384
公開日2005年11月30日 申請日期2005年5月24日 優(yōu)先權日2004年5月27日
發(fā)明者大島貴志 申請人:株式會社東芝
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
延津县| 虹口区| 房产| 徐州市| 永靖县| 当涂县| 阿克陶县| 洪江市| 舟曲县| 海林市| 高青县| 双峰县| 天台县| 商水县| 石景山区| 申扎县| 富源县| 保康县| 宜阳县| 北票市| 碌曲县| 微山县| 公安县| 曲靖市| 钟祥市| 巴塘县| 扶绥县| 家居| 开平市| 渑池县| 中卫市| 阳城县| 天镇县| 甘肃省| 济南市| 兴安县| 师宗县| 义马市| 绥中县| 南岸区| 方山县|