JPH08314775A - File memory device - Google Patents
File memory deviceInfo
- Publication number
- JPH08314775A JPH08314775A JP7137393A JP13739395A JPH08314775A JP H08314775 A JPH08314775 A JP H08314775A JP 7137393 A JP7137393 A JP 7137393A JP 13739395 A JP13739395 A JP 13739395A JP H08314775 A JPH08314775 A JP H08314775A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- microcomputer
- semiconductor memory
- sector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、ファイルメモリ装置、
更にはファイルメモリ装置に対するファイル書き込みを
高速化する技術に係り、例えば電気的に書換え可能なフ
ラッシュメモリを利用するメモリカードのガーベイジコ
レクション処理に適用して有効な技術に関する。BACKGROUND OF THE INVENTION The present invention relates to a file memory device,
Further, the present invention relates to a technique for speeding up file writing to a file memory device, for example, a technique effectively applied to a garbage collection process of a memory card using an electrically rewritable flash memory.
【0002】[0002]
【従来の技術】セクタ単位でファイルのデータを格納す
るファイルメモリ装置として、例えばフラッシュメモリ
を利用するフラッシュメモリカードがある。上記フラッ
シュメモリはエレクトリカリ・イレーザブル・アンド・
プログラマブル・リード・オンリ・メモリ(以下単にE
EPROMと記す)と同様に電気的に消去及び書込みを
行うことが可能であり、その場合はメモリブロックを一
括して電気的に消去する機能を持つ。また上記各メモリ
ブロックは複数セクタ以上の容量を有し、従って1つの
メモリブロックには複数個のセクタが含まれる。即ち、
書換えの単位はセクタの単位よりも大きくされる。これ
によりフラッシュメモリのデータを書換える場合は、そ
れに先立ってブロック単位でデータの消去が行われなけ
ればならない。2. Description of the Related Art As a file memory device for storing file data in sector units, for example, there is a flash memory card using a flash memory. The above flash memory is Electrically Erasable and
Programmable read only memory (hereinafter simply referred to as E
Like EPROM), it can be electrically erased and written, and in that case, it has a function of electrically erasing the memory blocks collectively. Further, each memory block has a capacity of a plurality of sectors or more, and therefore one memory block includes a plurality of sectors. That is,
The unit of rewriting is made larger than the unit of sector. When rewriting the data in the flash memory, the data must be erased in block units prior to the rewriting.
【0003】ここで当該フラッシュメモリにデータを書
込む場合、それに先立つデータ消去はメモリブロック単
位で行われる為、書込みに利用されるセクタはそれが属
するメモリブロックの全てのセクタが無効とされていな
ければデータを消去できない。従って有効セクタと無効
セクタとが混在するメモリブロックに属する無効セクタ
は書込みに利用することはできない。上記のようなメモ
リブロックが増加することにより、当該フラッシュメモ
リの記憶領域の使用効率が低下する。また、上記フラッ
シュメモリに書込み可能な空きセクタがなくなると、新
規データの書込みも既存データの書換えも不可能とな
る。そこで、セクタデータの書き込みに際しては、無効
セクタを含むメモリブロックに対して一括消去前に有効
データを詰めて空き領域を多くするためのガーベイジコ
レクション処理を実施する。When writing data in the flash memory, data erasing prior to that is performed in memory block units, and therefore all sectors of the memory block to which the sector is used for writing must be invalid. Data cannot be erased. Therefore, an invalid sector belonging to a memory block in which valid sectors and invalid sectors are mixed cannot be used for writing. The increase in the number of memory blocks as described above reduces the usage efficiency of the storage area of the flash memory. When there are no writable free sectors in the flash memory, it becomes impossible to write new data or rewrite existing data. Therefore, when writing the sector data, a garbage collection process is performed to increase the free area by filling the memory block including the invalid sector with valid data before batch erasing.
【0004】上述のように、フラッシュメモリのデータ
消去はブロック単位で行われる。従って有効セクタを含
むブロックのデータを消去するには、当該ブロックに格
納された有効セクタのデータを他の記憶領域に移動して
避難させる必要がある。上記有効セクタの一時避難先と
して、当該フラッシュメモリの特定の領域を確保してお
いて利用することも可能ではあるが、上記フラッシュメ
モリはデータの消去及び書込みに著しく長い時間を要す
る為、上記有効データの移動に時間がかかり得策ではな
い。更に上記フラッシュメモリは、データの消去及び書
込み時にメモリセルに印加される高電界によって当該メ
モリセルの特性が劣化する為、データの書換え可能な回
数に限度がある。従って当該フラッシュメモリのデータ
書換え回数の増加を抑える為にも、当該メモリカードに
ワーク領域を設け、データの一時的な保持には上記ワー
ク領域を利用することが望ましい。As described above, data erasing of the flash memory is performed in block units. Therefore, in order to erase the data of the block including the valid sector, it is necessary to move the data of the valid sector stored in the block to another storage area to evacuate. Although it is possible to reserve a specific area of the flash memory and use it as a temporary evacuation destination of the valid sector, the flash memory requires a significantly long time to erase and write data. Moving data is time consuming and not a good idea. Further, in the above flash memory, the characteristics of the memory cell are deteriorated by the high electric field applied to the memory cell at the time of erasing and writing data, so that there is a limit to the number of times data can be rewritten. Therefore, in order to suppress an increase in the number of times data is rewritten in the flash memory, it is desirable to provide a work area in the memory card and use the work area for temporarily holding data.
【0005】上記ワーク領域として、例えば擬似スタテ
ィック・ランダム・アクセス・メモリ(以下単にPSR
AMと記す)を利用できる。上記PSRAMは上記フラ
ッシュメモリのファイルのデータを一時的に格納する領
域を備え、例えば当該フラッシュメモリのガーベイジコ
レクション処理のときに、上記領域に上記フラッシュメ
モリより上記ファイルのデータがブロック単位で転送さ
れる。上記PSRAMにデータが転送されたブロックに
対し、データの一括消去を行う。上記ブロックの一括消
去が終了した後に、上記PSRAMに格納されたデータ
より有効セクタのみを上記フラッシュメモリに転送して
書込むことにより、不要なデータの消去を行うことがで
きる。これにより書込み可能な空きセクタが生成され、
当該フラッシュメモリに再びデータを書込むことが可能
となる。As the work area, for example, a pseudo static random access memory (hereinafter referred to simply as PSR) is used.
AM)) can be used. The PSRAM has an area for temporarily storing the data of the file in the flash memory, and for example, during the garbage collection process of the flash memory, the data of the file is transferred to the area in blocks from the flash memory. It Data is collectively erased from the block to which the data has been transferred to the PSRAM. After the batch erasing of the block is completed, unnecessary data can be erased by transferring and writing only the valid sector to the flash memory from the data stored in the PSRAM. This creates a writable free sector,
It becomes possible to write data to the flash memory again.
【0006】尚、フラッシュメモリを利用するファイル
メモリシステムの一例であるメモリカードについて記載
された文献の例として、日経BP社発行の「日経エレク
トロニクス第566号」(1992年10月26日号)
の第86項及び第87項がある。As an example of a document describing a memory card which is an example of a file memory system using a flash memory, "Nikkei Electronics No. 566" issued by Nikkei BP (October 26, 1992).
There are the 86th and 87th terms of.
【0007】[0007]
【発明が解決しようとする課題】しかしながら、従来の
技術では、ガーベイジコレクション処理においてフラッ
シュメモリよりPSRAMにデータ転送を行う上で、次
のような問題点があることが本発明者によって見出され
た。However, in the prior art, the present inventors have found that the following problems exist in transferring data from the flash memory to the PSRAM in the garbage collection process. It was
【0008】フラッシュメモリよりPSRAMにデータ
を転送する場合、フラッシュメモリのデータ読出し処理
が終了した後、PSRAMの書込み処理が行われる。即
ち、フラッシュメモリカードに内蔵された制御用マイク
ロコンピュータはロード命令(メモリからの読み出し命
令)を実行して上記フラッシュメモリからデータを読出
し、次にストア命令(メモリへの書き込み命令)を実行
してそのデータをPSRAMに書込む。書き込みに際し
ては、予めそのセクタの有効性を判定し、無効な場合に
は書き込みを行わないことによってコンパクションが実
現される。しかしながら、マイクロコンピュータは一つ
のデータをフラッシュメモリからPSRAMにデータ転
送する毎にストア及びロードの各命令を実行しなければ
ならず、フラッシュメモリからPSRAMへのデータ転
送を能率的に行うことができない。これにより、ガーベ
イジコレクション処理の所要時間が長大化してします。
このようなガーベイジコレクション処理は、ホストシス
テムより上記メモリカードに対してデータの書込みが指
示されたとき、当該メモリカードに搭載されるフラッシ
ュメモリに充分な空きセクタがないときに行われるもの
であるから、ガーベイジコレクション処理が終了する迄
データ書込みを行うことができない。従って上記ガーベ
イジコレクション処理がシステム全体の処理能力に影響
を与え、スループットの低下を招いてしまう。When data is transferred from the flash memory to the PSRAM, the writing process of the PSRAM is performed after the data reading process of the flash memory is completed. That is, the control microcomputer incorporated in the flash memory card executes a load command (read command from memory) to read data from the flash memory, and then executes a store command (write command to memory). Write the data to PSRAM. At the time of writing, the validity of the sector is determined in advance, and if it is invalid, the writing is not performed, whereby compaction is realized. However, the microcomputer has to execute the store and load instructions each time one data is transferred from the flash memory to the PSRAM, and cannot efficiently transfer the data from the flash memory to the PSRAM. This prolongs the time required for the garbage collection process.
Such a garbage collection process is performed when the host system instructs the memory card to write data, and when the flash memory mounted on the memory card does not have sufficient free sectors. Therefore, data cannot be written until the garbage collection process is completed. Therefore, the garbage collection process affects the processing capacity of the entire system, resulting in a decrease in throughput.
【0009】本発明の目的は、ガーベイジコレクション
処理におけるファイルメモリ装置内部のデータ転送、即
ち、ガーベイジコレクション処理対象領域の有効データ
を退避すると共に該領域の無効セクタをコンパクション
するためのデータ転送を、高速化できるようにすること
である。また本発明の別の目的は、外部からのセクタデ
ータ書き込み要求に対する処理の高速化を実現できるフ
ァイルメモリ装置を提供することにある。An object of the present invention is to perform data transfer inside a file memory device in a garbage collection process, that is, data transfer for saving valid data in a region subject to garbage collection and compacting invalid sectors in the region. , Is to be able to speed up. Another object of the present invention is to provide a file memory device capable of realizing high-speed processing for an external sector data write request.
【0010】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
【0011】[0011]
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。The outline of the representative one of the inventions disclosed in the present application will be briefly described as follows.
【0012】すなわち、ファイルメモリ装置は、ファイ
ルのデータをセクタ単位で格納し複数セクタ以上の記憶
容量を有するメモリブロック単位で電気的にデータ消去
可能とされる不揮発性半導体メモリ(5)と、不揮発性
半導体メモリのメモリブロックに対するガーベイジコレ
クション処理においてそのメモリブロックに存在する有
効データが格納されるガーベイジバッファ(40)及び
外部からの書き込み指示に際して書き込みデータが一時
的に格納されるライトバッファ(41)に利用される揮
発性半導体メモリ(4)と、前記不揮発性半導体メモリ
及び揮発性半導体メモリを夫々アクセス可能なマイクロ
コンピュータ(3)と、前記不揮発性半導体メモリ及び
揮発性半導体メモリとマイクロコンピュータが共有する
データバス(DBUS)と、ガーベイジコレクション処
理においてその処理の対象とされる不揮発性半導体メモ
リに対するマイクロコンピュータによるデータ読出し動
作に並行して当該読出しデータを前記揮発性半導体メモ
リに書き込み可能にする並列アクセス制御手段(2)と
を備える。前記不揮発性半導体メモリ(5)に代えて磁
気記憶手段を採用することも可能である。That is, the file memory device stores a file data in units of sectors and electrically erases data in units of memory blocks having a storage capacity of a plurality of sectors, and a nonvolatile semiconductor memory (5). Buffer (40) for storing valid data existing in the memory block of the memory block of the flexible semiconductor memory and a write buffer (41) for temporarily storing the write data when a write instruction is given from the outside. A volatile semiconductor memory (4), a microcomputer (3) capable of accessing the non-volatile semiconductor memory and the volatile semiconductor memory, and the non-volatile semiconductor memory, the volatile semiconductor memory and the microcomputer. Shared data bus (DB S) and parallel access control means for enabling the read data to be written to the volatile semiconductor memory in parallel with the data read operation by the microcomputer for the nonvolatile semiconductor memory that is the target of the garbage collection process. 2) and are provided. It is also possible to employ magnetic storage means instead of the non-volatile semiconductor memory (5).
【0013】前記並列アクセス制御手段は、ガーベイジ
コレクション処理対象とされるメモリブロックのセクタ
データをマイクロコンピュータが不揮発性半導体メモリ
から読み出すとき揮発性半導体メモリの書き込み制御信
号を生成し、揮発性半導体メモリのガーベイジバッファ
に退避され且つコンパクションされたセクタデータをマ
イクロコンピュータが読み出すとき不揮発性半導体メモ
リに対する書き込み制御信号を生成するメモリコントロ
ーラ(6)を備えることができる。The parallel access control means generates a write control signal for the volatile semiconductor memory when the microcomputer reads the sector data of the memory block to be garbage collected from the non-volatile semiconductor memory, and the volatile semiconductor memory. The memory controller (6) may generate a write control signal for the nonvolatile semiconductor memory when the microcomputer reads the sector data saved in the garbage buffer and compacted.
【0014】1セクタの中をアドレシングするための下
位アドレス信号がマイクロコンピュータから与えられる
下位アドレスバス(ABUS−L)とマイクロコンピュ
ータから上位アドレス信号が与えられる上位アドレスバ
ス(ABUS−H)を供え、前記下位アドレスバスはマ
イクロコンピュータと共に不揮発性及び揮発性双方の半
導体メモリに共通接続され、不揮発性半導体メモリの上
位アドレス信号入力端子はそれ専用の不揮発性メモリ上
位アドレスバス(FABUS−H)に結合され、揮発性
半導体メモリの上位アドレス信号入力端子はそれ専用の
揮発性メモリ上位アドレスバス(PABUS−H)に結
合され、前記並列アクセス制御手段は、前記ガーベイジ
コレクション処理対象とされるメモリブロックのセクタ
データがマイクロコンピュータによって不揮発性半導体
メモリから読み出しアクセスされるとき前記揮発性メモ
リ上位アドレスバスに所要の上位アドレスを供給するフ
ァイルバンクスレジスタ(23)と、揮発性半導体メモ
リのガーベイジバッファに退避され且つコンパクション
されたセクタデータがマイクロコンピュータによって読
み出しアクセスされるとき前記不揮発性メモリ上位アド
レスバスに所要の上位アドレスを供給するライトバンク
レジスタ(24)とを更に備えることができる。A lower address bus (ABUS-L) to which a lower address signal for addressing in one sector is applied from the microcomputer and an upper address bus (ABUS-H) to which an upper address signal is applied from the microcomputer are provided. The lower address bus is commonly connected to both the nonvolatile memory and the volatile semiconductor memory together with the microcomputer, and the upper address signal input terminal of the nonvolatile semiconductor memory is coupled to the dedicated nonvolatile memory upper address bus (FABUS-H). The upper address signal input terminal of the volatile semiconductor memory is coupled to a dedicated volatile memory upper address bus (PABUS-H), and the parallel access control means is a sector of the memory block targeted for the garbage collection process. Data is micro A file bank register (23) that supplies a required upper address to the volatile memory upper address bus when read and accessed from the nonvolatile semiconductor memory by a computer, and saved and compacted in a garbage buffer of the volatile semiconductor memory. A write bank register (24) may be further provided for supplying a required upper address to the nonvolatile memory upper address bus when sector data is read and accessed by the microcomputer.
【0015】ファイルメモリ装置はICカード若しくは
メモリカード化することができる。このとき前記データ
バスには、マイクロコンピュータが実行すべきコマンド
をホスト装置(10)から受け取り、またホスト装置と
の間でデータの受け渡しを行うインタフェース部(2
0)が結合される。The file memory device can be an IC card or a memory card. At this time, an interface unit (2) that receives a command to be executed by the microcomputer from the host device (10) and exchanges data with the host device is sent to the data bus.
0) are combined.
【0016】[0016]
【作用】上記した手段によれば、ガーベイジコレクショ
ン処理に際して、その処理対象とされるデータを不揮発
性半導体メモリから読み出すのに並行して、当該読出し
データをマイクロコンピュータに供給し且つ揮発性半導
体メモリに書き込み可能にしているから、ガーベイジコ
レクション処理対象とされるデータを不揮発性半導体メ
モリから読み出して揮発性半導体メモリに退避する書き
込み動作を同一のメモリサイクルで実現できる。According to the above means, in the garbage collection process, the data to be processed is read from the non-volatile semiconductor memory, the read data is supplied to the microcomputer in parallel with the volatile semiconductor memory. Since it is writable, the write operation of reading the data targeted for the garbage collection process from the nonvolatile semiconductor memory and saving it in the volatile semiconductor memory can be realized in the same memory cycle.
【0017】ガーベイジコレクション処理対象とされる
データはマクロコンピュータも取り込むことができるの
で、マイクロコンピュータは揮発性半導体メモリに退避
すべきデータのファイルエンド情報などを検出するまで
アドレスを更新しながらメモリアクセス動作を繰り返し
て前記転送制御を行うことができる。また、ガーベイジ
コレクション処理対象とされるデータはマクロコンピュ
ータも取り込むことができるので、そのようなデータに
セクタの有効性を示すようなセクタ管理情報を含む場合
には、マイクロコンピュータは上記同一メモリサイクル
にてコンパクションのための制御情報を得て、コンパク
ションのための処理も行うことができる。Since the data targeted for the garbage collection process can also be fetched by the macro computer, the microcomputer accesses the memory while updating the address until the file end information of the data to be saved in the volatile semiconductor memory is detected. The transfer control can be performed by repeating the operation. Further, since the data targeted for the garbage collection process can also be fetched by the macro computer, when such data includes sector management information indicating the validity of the sector, the microcomputer does not operate in the same memory cycle. At, the control information for compaction is obtained, and the process for compaction can also be performed.
【0018】マイクロコンピュータがロード命令とスト
ア命令を繰り返し実行してデータを一つづつ不揮発性半
導体メモリからマイクロコンピュータを介して揮発性半
導体メモリに転送するものに比べると、不揮発性半導体
メモリから揮発性半導体メモリへのメモリブロックのデ
ータ転送が高速化され、ファイルメモリ装置へのセクタ
データの高速書き込みが可能になる。Compared to a microcomputer in which a load instruction and a store instruction are repeatedly executed to transfer data one by one from a nonvolatile semiconductor memory to a volatile semiconductor memory via the microcomputer, the nonvolatile semiconductor memory is more volatile. The data transfer of the memory block to the semiconductor memory is accelerated, and the sector data can be written at high speed to the file memory device.
【0019】[0019]
【実施例】図2には本発明の一実施例に係るフラッシュ
メモリカード(以下単にメモリカードとも記す)1を適
用したデータ処理システムのブロック図が示される。1
0はワークステーション又はパーソナルコンピュータシ
ステムなどのホスト装置であり、代表的に示されたホス
トCPU11、メインメモリ12、及びインタフェース
コントローラ13がシステムバス14を共有している。
フラッシュメモリカード1は、特に制限されないが、イ
ンタフェースコントローラ13に着脱自在に接続され
る。同図に示されるメモリカード1は、特に制限されな
いが、JEIDAメモリカードインタフェースに適合さ
れたインタフェースを有し、例えばハードディスク装置
やフレキシブルディスク装置のような磁気記憶装置に代
替してコンピュータの補助記憶装置として利用可能なフ
ァイルメモリ装置を構成する。上記メモリカード1は、
カードコントローラ2、マイクロコンピュータ3、PS
RAM4、及びフラッシュメモリ5を備える。1 is a block diagram of a data processing system to which a flash memory card (hereinafter also simply referred to as a memory card) 1 according to an embodiment of the present invention is applied. 1
Reference numeral 0 denotes a host device such as a workstation or a personal computer system, in which a system bus 14 is shared by a host CPU 11, a main memory 12 and an interface controller 13 which are shown as representatives.
The flash memory card 1 is detachably connected to the interface controller 13, although not particularly limited thereto. Although not particularly limited, the memory card 1 shown in the figure has an interface adapted to the JEIDA memory card interface, and is replaced by a magnetic storage device such as a hard disk device or a flexible disk device, and an auxiliary storage device of a computer. A file memory device that can be used as The memory card 1 is
Card controller 2, microcomputer 3, PS
The RAM 4 and the flash memory 5 are provided.
【0020】前記フラッシュメモリ5はブロック単位で
電気的に書換え可能な不揮発性半導体記憶装置であり、
例えば2層ゲート構造の絶縁ゲート型電界効果トランジ
スタによって構成されたメモリセルがマトリクス配置さ
れる。上記メモリセルを構成するトランジスタのコント
ロールゲートは夫々対応する図示しないワード線に接続
され、上記トランジスタのドレインは夫々対応する図示
しないデータ線に接続され、上記トランジスタのソース
はブロック毎に共通の図示しないソース線に夫々接続さ
れている。フラッシュメモリ5においてメモリセルへの
データの書込み動作は、例えばコントロールゲート及び
ドレインに高電圧を印加して、例えばアバランシェ注入
によりドレイン側からフローティングゲートに電子を注
入することで実現される。この書込み動作によりメモリ
セルのトランジスタは、そのコントロールゲートからみ
たしきい値電圧が、書込み動作を行わなかった消去状態
のメモリセルに比べて高くされる。一方消去動作は、例
えばソースに高電圧を印加して、トンネル現象によりフ
ローティングゲートからソース側に電子を引き抜くこと
により実現される。従って同一のソース線に接続される
複数のメモリセルが一括消去単位としてのメモリブロッ
クとされる。上記消去動作によりメモリセルのトランジ
スタは、そのコントロールゲートからみたしきい値電圧
が低くされる。尚、一括消去単位はソース線共通のメモ
リセルのブロックに限定されない。一括消去単位のメモ
リブロックの構成若しくは範囲は書換電圧の印加形式に
よって相違される。The flash memory 5 is a nonvolatile semiconductor memory device that can be electrically rewritten in block units.
For example, memory cells composed of insulated gate field effect transistors having a two-layer gate structure are arranged in a matrix. The control gates of the transistors forming the memory cells are connected to corresponding word lines (not shown), the drains of the transistors are connected to corresponding data lines (not shown), and the sources of the transistors are not shown in common for each block. Each is connected to the source line. The operation of writing data to the memory cell in the flash memory 5 is realized by, for example, applying a high voltage to the control gate and the drain and injecting electrons from the drain side to the floating gate by, for example, avalanche injection. By this write operation, the threshold voltage of the transistor of the memory cell seen from the control gate is made higher than that of the erased memory cell in which the write operation is not performed. On the other hand, the erase operation is realized, for example, by applying a high voltage to the source and extracting electrons from the floating gate to the source side by the tunnel phenomenon. Therefore, a plurality of memory cells connected to the same source line serve as a memory block as a batch erase unit. By the erase operation, the threshold voltage of the transistor of the memory cell seen from the control gate is lowered. The batch erase unit is not limited to the block of memory cells common to the source lines. The configuration or range of the memory block in the batch erase unit differs depending on the application format of the rewrite voltage.
【0021】前記フラッシュメモリ5はファイルデータ
をセクタ単位で格納する。例えばセクタは磁気記憶装置
との互換性を考慮して512B(バイト)とされる。ま
たフラッシュメモリにおける一括消去単位としてのメモ
リブロックは1セクタの容量よりも大きな16KBとさ
れる。マイクロコンピュータ3はフラッシュメモリ5の
データをセクタ単位で操作する性質上、ファイル名で特
定されるデータがどのセクタに存在するかを示すための
ファイル情報と、夫々のセクタがどのメモリブロックの
メモリアドレスに対応され、また、個々のセクタに有効
なデータが存在するか否かを示すためのセクタ管理情報
とが、データと併せてフラッシュメモリに格納される。The flash memory 5 stores file data in sector units. For example, the sector is 512 B (byte) in consideration of compatibility with the magnetic storage device. Further, the memory block as a batch erase unit in the flash memory is set to 16 KB, which is larger than the capacity of one sector. Since the microcomputer 3 operates the data in the flash memory 5 in units of sectors, the file information for indicating in which sector the data specified by the file name exists and the memory address of each memory block in which each sector is located. And sector management information for indicating whether or not valid data exists in each sector is stored in the flash memory together with the data.
【0022】前記フラッシュメモリ5の記憶データを書
換える場合は、所望のデータの書込みに先立って、既存
のデータを消去する必要がある。消去単位は16KBの
ようなメモリブロック単位とされるので、当該ブロック
に有効セクタが含まれる場合、消去に先立ってそのよう
な有効セクタのデータを退避することが必要になる。前
記PSRAM4はそのような退避領域としてガーベイジ
コレクション処理に際してのガーベイジバッファ40に
利用される。また、PSRAM4はメモリカード1に対
してホスト装置10より書込み要求された場合、書込み
要求されたデータを一時的に保持するためのライトバッ
ファ41に利用される。When rewriting the data stored in the flash memory 5, it is necessary to erase the existing data before writing the desired data. Since the erase unit is a memory block unit such as 16 KB, when the block includes a valid sector, it is necessary to save the data of such valid sector prior to erasing. The PSRAM 4 is used as a save area for the garbage buffer 40 in the garbage collection process. When the host device 10 requests writing to the memory card 1, the PSRAM 4 is used as a write buffer 41 for temporarily holding the data requested to be written.
【0023】図1には本発明の一実施例に係るフラッシ
ュメモリカード1の詳細なブロック図が示される。前記
カードコントローラ2はインタフェース部20を介して
ホスト装置10のインタフェースコントローラ13に接
続される。インタフェース部20は、ホスト装置10か
らコマンドが書き込まれるコマンドレジスタ200、ホ
スト装置10と相互にやりとりするデータを一時的に格
納するデータレジスタ201、及びフラッシュメモリカ
ード1の内部状態がホスト装置10側から読み出し可能
にされたステータスレジスタ202などを有する。FIG. 1 shows a detailed block diagram of a flash memory card 1 according to an embodiment of the present invention. The card controller 2 is connected to the interface controller 13 of the host device 10 via the interface unit 20. The interface unit 20 includes a command register 200 in which commands are written from the host device 10, a data register 201 for temporarily storing data exchanged with the host device 10, and an internal state of the flash memory card 1 from the host device 10 side. The status register 202 is made readable.
【0024】インタフェース部20はデータバスDBU
Sを介してマイクロコンピュータ3、PSRAM4、及
びフラッシュメモリ5に結合される。マイクロコンピュ
ータ3はコマンドレジスタ200に書き込まれたコマン
ドを実行する。そのコマンド実行に伴ってPSRAM4
やフラッシュメモリ5をアクセスするためのアドレス信
号はマイクロコンピュータ3が生成する。上位アドレス
バスABUS−H及び下位アドレスバスABUS−Lは
マイクロコンピュータ3のアドレス出力端子に結合され
る。ここで、下位アドレスバスABUS−Lは1セクタ
分のメモリ領域内部をアドレシングするために必要なビ
ット数を有する。具体的には、1セクタが512Bであ
るから、バイトアドレス換算で9ビットとされる。上位
アドレスバスABUS−Hには10ビット目以上が割り
当てられる。従って上位アドレスバスABUS−Hに供
給される上位アドレスは、フラッシュメモリ5における
セクタを指定するアドレスとみなすことができる。The interface unit 20 is a data bus DBU.
It is coupled to the microcomputer 3, PSRAM 4, and flash memory 5 via S. The microcomputer 3 executes the command written in the command register 200. PSRAM4 along with the command execution
An address signal for accessing the flash memory 5 is generated by the microcomputer 3. The upper address bus ABUS-H and the lower address bus ABUS-L are coupled to the address output terminals of the microcomputer 3. Here, the lower address bus ABUS-L has the number of bits required to address the inside of the memory area for one sector. Specifically, since one sector is 512B, it is 9 bits in byte address conversion. The 10th bit or more is allocated to the upper address bus ABUS-H. Therefore, the upper address supplied to the upper address bus ABUS-H can be regarded as an address designating a sector in the flash memory 5.
【0025】下位アドレスバスABUS−LはPSRA
M4及びフラッシュメモリ5の下位側アドレス入力端子
に共通接続される。上位側アドレスバスABUS−Hは
セレクタ21,22の一方の入力端子に接続される。セ
レクタ21の他方の入力端子にはデータバスDBUSに
入力が接続されたライトバンクレジスタ23の出力が、
セレクタ22の他方の入力端子にはデータバスDBUS
に入力が接続されたファイルバンクレジスタ24の出力
が与えられる。セレクタ21の出力はフラッシュメモリ
5の上位側アドレス入力端子へのアドレス信号供給に専
用化されたアドレスバスFABUS−Hに接続され、セ
レクタ22の出力はPSRAM4の上位側アドレス入力
端子へのアドレス信号供給に専用化されたアドレスバス
PABUS−Hに接続される。The lower address bus ABUS-L is PSRA
It is commonly connected to M4 and the lower address input terminals of the flash memory 5. The upper address bus ABUS-H is connected to one input terminal of the selectors 21 and 22. The output of the write bank register 23 whose input is connected to the data bus DBUS is connected to the other input terminal of the selector 21,
The other input terminal of the selector 22 has a data bus DBUS
The output of the file bank register 24, whose input is connected to, is given. The output of the selector 21 is connected to the address bus FABUS-H dedicated to the address signal supply to the upper address input terminal of the flash memory 5, and the output of the selector 22 is the address signal supply to the upper address input terminal of the PSRAM 4. Is connected to an address bus PABUS-H dedicated to
【0026】メモリコントローラ6は、マイクロコンピ
ュータ3が出力するアドレスストローブ信号AS、ライ
ト信号WR、リード信号RDなどのアクセス制御信号、
上位アドレスバスABUS−Hの値、ガーベイジコレク
ション処理に際してのデータ退避とコンパクションの指
示信号φ1及びコンパクションされたデータを別の書き
込みデータと共に当該ガーベイジコレクション処理対象
とされたメモリバンクのセクタに書き戻す処理の指示信
号φ2などを受けて、PSRAM4及びフラッシュメモ
リ5に対するアクセス制御信号を生成する。図1ではそ
のようなアクセス制御信号としてチップセレクト信号C
S1,CS2とライトイネーブル信号WE1,WE2が
代表的に示されている。尚、フラッシュメモリ5に対す
る書換の際の高電圧印加などの制御はメモリコントロー
ラ6が行う。The memory controller 6 has access control signals such as an address strobe signal AS, a write signal WR, and a read signal RD output from the microcomputer 3,
The value of the upper address bus ABUS-H, the data saving and compaction instruction signal φ1 in the garbage collection processing, and the compacted data are written back together with another write data to the sector of the memory bank targeted for the garbage collection processing. In response to the processing instruction signal φ2 and the like, an access control signal for the PSRAM 4 and the flash memory 5 is generated. In FIG. 1, a chip select signal C is used as such an access control signal.
S1 and CS2 and write enable signals WE1 and WE2 are representatively shown. The memory controller 6 controls the application of a high voltage when rewriting the flash memory 5.
【0027】図3には前記ライトバンクレジスタ23及
びファイルバンクレジスタ24を利用したフラッシュメ
モリ5及びPSRAM4に対する制御態様が示される。
制御信号φ1にてガーベイジコレクション処理に際して
のデータ退避とコンパクションが指示されると、マイク
ロコンピュータ3はガーベイジコレクション処理対象と
すべきメモリバンクのデータをPSRAM4のガーベイ
ジバッファ40に退避するためのメモリリードアクセス
制御を行う。このとき、メモリコントローラ6はマイク
ロコンピュータ3によるメモリリードアクセスサイクル
毎に、CE2=H(チップ選択)、WE2=L(読み出
し動作指示)としてフラッシュメモリ5を読み出し動作
可能にするアクセス制御信号を出力し、また、CE1=
H(チップ選択)、WE1=H(書き込み動作指示)と
してPSRAM4を書き込み動作可能にするアクセス制
御信号を出力する。このとき、データが退避されるガー
ベイジバッファ40上のデータ格納領域の上位アドレス
は、マイクロコンピュータ3が予めデータバスDBUS
を介してファイルバンクレジスタ24にセットしてお
く。前述のように上位アドレスは1セクタの記憶領域に
相当する領域を指定するアドレスとみなされる。この状
態でマイクロコンピュータ3によるフラッシュメモリ5
のリードアクセスが開始される。例えば図3に示される
ように、上位アドレスバスABUS−Hに上位アドレス
AHdが出力された状態で下位アドレスバスABUS−
Lにアドレスが出力されると、フラッシュメモリ5上の
上位アドレスAHdを先頭アドレスとする所定のセクタ
データが読出され、読出されたデータは、PSRAM4
上の上位アドレスAHi(予めファイルバンクレジスタ
24にセットされている)を先頭アドレスとする領域に
書き込まれる。また、そのようにして読出されたセクタ
データはデータバスDBUSを介してマイクロコンピュ
ータ3にも供給される。マイクロコンピュータ3はそれ
によって供給された所定のデータ、例えば当該セクタデ
ータが有効か否かを示すセクタ管理情報を調べてコンパ
クションの対象セクタにするか否かを判定する。無効セ
クタであることを検出した場合にはそれ以降の当該セク
タに対するデータ読出し動作を継続する必要はない。無
効セクタの次のセクタに対するアクセスに際してマイク
ロコンピュータはファイルバンクレジスタ24の値を前
回のままの値にする。有効セクタであることを検出した
場合にはファイルエンドフラグを検出するまで下位アド
レスを順次更新してデータ読出し動作を継続する。有効
セクタの次のセクタに対するアクセスに際してマイクロ
コンピュータはファイルバンクレジスタ24の値を+1
更新する。これにより、図3に例示される上位アドレス
AHaとAHdをそれぞれ先頭とする有効なセクタデー
タは、その間の領域(上位アドレスAHbとAHcを夫
々先頭とする領域)に無効なセクタデータが存在されて
いても、PSRAM5上において上位アドレスAHhと
AHiをそれぞれ先頭とする連続領域に転送される。従
って、一括消去単位である一つのメモリブロック上のデ
ータは、PSRAM4上において、有効なセクタデータ
が詰められて格納される。尚、上記処理においてセレク
タ22はメモリコントローラ6の制御によってファイル
バンクレジスタ24の出力を選択し、セレクタ21はメ
モリコントローラ6の制御によって上位アドレスバスA
BUS−Hの値を選択する。FIG. 3 shows a control mode for the flash memory 5 and the PSRAM 4 using the write bank register 23 and the file bank register 24.
When data saving and compaction are instructed by the control signal φ1 during the garbage collection processing, the microcomputer 3 saves the data of the memory bank to be the garbage collection processing target in the garbage buffer 40 of the PSRAM 4. Read access control is performed. At this time, the memory controller 6 outputs an access control signal for enabling the read operation of the flash memory 5 with CE2 = H (chip selection) and WE2 = L (read operation instruction) for each memory read access cycle by the microcomputer 3. , Again, CE1 =
An access control signal that enables the write operation of the PSRAM 4 is output with H (chip selection) and WE1 = H (write operation instruction). At this time, the upper address of the data storage area on the garbage buffer 40 in which the data is saved is stored in the data bus DBUS by the microcomputer 3 in advance.
It is set in the file bank register 24 via. As described above, the upper address is regarded as an address designating an area corresponding to the storage area of one sector. In this state, the flash memory 5 by the microcomputer 3
Read access is started. For example, as shown in FIG. 3, when the upper address AHd is output to the upper address bus ABUS-H, the lower address bus ABUS-
When the address is output to L, predetermined sector data having the upper address AHd on the flash memory 5 as the start address is read, and the read data is stored in the PSRAM 4
The upper address AHi (previously set in the file bank register 24) is written in the area having the head address. The sector data thus read is also supplied to the microcomputer 3 via the data bus DBUS. The microcomputer 3 checks the predetermined data supplied thereby, for example, the sector management information indicating whether the sector data is valid or not, and determines whether or not the sector is a compaction target sector. When it is detected that the sector is an invalid sector, it is not necessary to continue the data read operation for the sector thereafter. When accessing the sector following the invalid sector, the microcomputer sets the value of the file bank register 24 to the same value as the previous value. When it is detected that the sector is a valid sector, the lower address is sequentially updated and the data read operation is continued until the file end flag is detected. When accessing the next sector after the valid sector, the microcomputer increments the value of the file bank register 24 by +1.
Update. As a result, the valid sector data headed by the upper addresses AHa and AHd illustrated in FIG. 3 have invalid sector data in the areas between them (areas headed by the upper addresses AHb and AHc, respectively). However, it is transferred to the continuous area having the upper addresses AHh and AHi on the PSRAM 5, respectively. Therefore, the data in one memory block, which is a batch erase unit, is stored in the PSRAM 4 with valid sector data packed therein. In the above processing, the selector 22 selects the output of the file bank register 24 under the control of the memory controller 6, and the selector 21 under the control of the memory controller 6.
Select the value of BUS-H.
【0028】上記無効領域に対するコンパクションが実
現された後、制御信号φ2にてフラッシュメモリへの書
き込み処理が指示されると、マイクロコンピュータ3は
ガーベイジバッファ上40にコンパクションされた有効
セクタデータを、フラッシュメモリ5上の前記ガーベイ
ジコレクション処理対象とされたメモリブロックに書き
戻すためのアクセス制御を行う。これに同期して、メモ
リコントローラ6は、マイクロコンピュータ3によるメ
モリアクセスサイクル毎に、CE2=H(チップ選
択)、WE2=H(書き込み動作指示)としてフラッシ
ュメモリ5を書き込み動作可能にするアクセス制御信号
を出力し、また、CE1=H(チップ選択)、WE1=
L(読み出し動作指示)としてPSRAM4を読み出し
動作可能にするアクセス制御信号を出力する。このと
き、ガーベイジバッファ40からフラッシュメモリ5に
書き戻すべきデータ格納領域の上位アドレスは、マイク
ロコンピュータ3が予めデータバスDBUSを介してラ
イトバンクレジスタ23にセットしておく。前述のよう
に上位アドレスは1セクタの記憶領域に相当する領域を
指定するアドレスとみなされる。この状態でマイクロコ
ンピュータ3によるPSRAM4のリードアクセスが開
始される。例えば図3に示されるように、上位アドレス
バスABUS−Hに上位アドレスAHiが出力された状
態で下位アドレスバスABUS−Lにアドレスが出力さ
れると、PSRAM4上の上位アドレスAHiを先頭ア
ドレスとする所定のセクタデータが読出され、読出され
たデータは、フラッシュメモリ5上の上位アドレスAH
b(予めライトバンクレジスタ23にセットされてい
る)を先頭アドレスとする領域に書き込まれる。これに
より、ガーベイジコレクション処理対象とされたメモリ
ブロック上では有効なセクタデータが詰められ、空き領
域が確保される。有効セクタの書き戻しに際して空き領
域には、ホスト装置10から書き込み指示されてライト
バッファ41に一時的に格納されている別のセクタデー
タを新規に書き込むことができる。尚、上記処理におい
てセレクタ22はメモリコントローラ6の制御によって
上位アドレスバスABUS−Hの値を選択し、セレクタ
21はメモリコントローラ6の制御によってライトバン
クレジスタ23の出力を選択する。After the compaction for the invalid area is realized, when the writing process to the flash memory is instructed by the control signal φ2, the microcomputer 3 flushes the compacted valid sector data on the garbage buffer 40. Access control is performed to write back to the memory block on the memory 5 which is the target of the garbage collection process. In synchronization with this, the memory controller 6 sets an access control signal that enables the flash memory 5 to perform a write operation with CE2 = H (chip selection) and WE2 = H (write operation instruction) for each memory access cycle by the microcomputer 3. , CE1 = H (chip selection), WE1 =
As L (read operation instruction), an access control signal that enables the PSRAM 4 to read is output. At this time, the microcomputer 3 previously sets the upper address of the data storage area to be written back from the garbage buffer 40 to the flash memory 5 in the write bank register 23 via the data bus DBUS. As described above, the upper address is regarded as an address designating an area corresponding to the storage area of one sector. In this state, the read access of the PSRAM 4 by the microcomputer 3 is started. For example, as shown in FIG. 3, when an address is output to the lower address bus ABUS-L while the upper address AHi is output to the upper address bus ABUS-H, the upper address AHi on the PSRAM 4 is set as the start address. Predetermined sector data is read, and the read data is stored in the upper address AH on the flash memory 5.
It is written in the area having the start address of b (set in the write bank register 23 in advance). As a result, valid sector data is packed in the memory block targeted for the garbage collection process, and a free area is secured. When writing back an effective sector, another sector data temporarily stored in the write buffer 41 in response to a write instruction from the host device 10 can be newly written in the empty area. In the above process, the selector 22 selects the value of the upper address bus ABUS-H under the control of the memory controller 6, and the selector 21 selects the output of the write bank register 23 under the control of the memory controller 6.
【0029】図4にはフラッシュメモリ5から読出され
たデータがマイクロコンピュータ3及びPSRAM4に
並列的に供給されるタイミング例が示される。同図にお
いてアクセス制御信号AS,CE1,WE1,CE2は
負論理で示される。同図に示された一つのメモリアクセ
スサイクルは一つの下位アドレスに対するサイクルを示
している。FIG. 4 shows an example of the timing when the data read from the flash memory 5 is supplied in parallel to the microcomputer 3 and the PSRAM 4. In the figure, the access control signals AS, CE1, WE1, CE2 are shown in negative logic. One memory access cycle shown in the figure shows a cycle for one lower address.
【0030】図5には前記ガーベイジコレクション処理
によってコンパクションされたデータの様子が示され
る。図においてV=1は当該セクタデータが有効である
ことを意味する。V=0は無効であることを意味する。
ガーベイジコレクション処理対象メモリブロックのデー
タは、有効データだけがPSRAM4に退避される。そ
の後、フラッシュメモリ5のガーベイジコレクション処
理対象メモリブロックは一括消去処理が行われ、消去
後、PSRAM4に退避されている有効セクタデータが
フラッシュメモリ5の当該メモリブロックに書き戻され
る。さらにハッチングで示した空き領域が確保されるの
で、この空き領域にはガーベイジコレクション処理の起
因とされるホスト装置10からの書き込み要求に応ずる
ためのデータ書き込みが行われる。FIG. 5 shows a state of data compacted by the garbage collection process. In the figure, V = 1 means that the sector data is valid. V = 0 means invalid.
As for the data of the memory block subject to the garbage collection process, only valid data is saved in the PSRAM 4. After that, the memory collection target memory block of the flash memory 5 is collectively erased, and after erasing, the valid sector data saved in the PSRAM 4 is written back to the memory block of the flash memory 5. Further, since a vacant area indicated by hatching is secured, data writing is performed in this vacant area in order to respond to the write request from the host device 10 which is the cause of the garbage collection process.
【0031】図6にはホスト装置側からセクタデータの
ライトが要求されたときに、ガーベイジコレクション処
理が発生した場合のメモリカード内部におけるライト動
作のフローチャートが示される。ホスト装置10はファ
イルデータ(セクタデータ)をメモリカードに書き込む
とき、ファイル書き込みコマンドを発行する(S1)と
共に、書き込みデータを転送する(S2)。書き込みコ
マンドはコマンドレジスタ200にセットされ、書き込
みデータは順次データレジスタ210にロードされる。
コマンドが書き込まれると、インタフェース部20はマ
イクロコンピュータ3にそれを割り込みなどによって通
知する。マイクロコンピュータ3は先ず最初に、順次デ
ータレジスタ201に転送されてくる書き込みデータを
PSRAM4のライトバッファ42に格納する(S1
0)。またセクタの利用状況を示す情報を参照し、フラ
ッシュメモリ5の利用状況を確認する。例えば全体を書
き換え可能なメモリブロックが存在すればそのメモリブ
ロックのセクタに、前記ライトバッファ41のデータを
書き込む(S15)。そのようなメモリブロックが存在
しなければ、ガーベイジコレクション処理を行う(S1
1のYES)。ガーベイジコレクション処理において
は、図3乃至図5に基づいて説明したように、対象とさ
れるメモリバンクの有効セクタのデータをPSRAMに
退避すると共に無効セクタのコンパクションが行われる
(S12)。その後、当該メモリブロックに対する一括
消去動作が行われる(S13)。消去後、退避され且つ
コンパクションされたセクタデータがPSRAM4のガ
ーベイジバッファ40からフラッシュメモリ5の当該メ
モリブロックに書き込まれ(S14)、当該メモリブロ
ックのそれに続く領域には、前記ライトバッファ41に
保持されている書き込みデータが書き込まれる(S1
5)。FIG. 6 shows a flowchart of the write operation inside the memory card when the garbage collection process occurs when the sector data is requested to be written from the host device side. When writing the file data (sector data) to the memory card, the host device 10 issues a file write command (S1) and transfers the write data (S2). The write command is set in the command register 200, and the write data is sequentially loaded in the data register 210.
When the command is written, the interface unit 20 notifies the microcomputer 3 of it by an interrupt or the like. The microcomputer 3 first stores the write data sequentially transferred to the data register 201 in the write buffer 42 of the PSRAM 4 (S1).
0). Further, the usage status of the flash memory 5 is confirmed by referring to the information indicating the usage status of the sector. For example, if there is a completely rewritable memory block, the data of the write buffer 41 is written in the sector of the memory block (S15). If no such memory block exists, garbage collection processing is performed (S1).
1 YES). In the garbage collection process, as described based on FIGS. 3 to 5, the data of the valid sector of the target memory bank is saved in the PSRAM and the compaction of the invalid sector is performed (S12). Then, the batch erase operation is performed on the memory block (S13). After erasing, the saved and compacted sector data is written from the garbage buffer 40 of the PSRAM 4 to the relevant memory block of the flash memory 5 (S14), and is held in the write buffer 41 in the area subsequent to the relevant memory block. Write data is written (S1
5).
【0032】上記実施例ではPSRAM4とフラッシュ
メモリ5に夫々専用化された上位アドレスバスPABU
S−HとFABUS−Hを用いている。この場合、カー
ドコントローラ2は夫々のバスPABUS−HとFAB
US−HをPSRAM4とフラッシュメモリ5に各別に
接続するためのインタフェース端子を備えなくてはなら
ない。そのようなカードコントローラ2の外部端子数を
減らす場合にはカードコントローラ内部にバスPABU
S−H又はFABUS−Hを選択するマルチプレクサを
設け、その出力にPSRAM4とフラッシュメモリ5の
対応アドレス入力端子を共通接続すればよい。そのよう
な構成にする場合時の動作タイミングチャートが図7に
示される。同図から明らかなようにバスPABUS−H
とFABUS−Hの値はマルチプレクスされて出力され
る。上位アドレスとしてバスPABUS−Hのアドレス
が選ばれているとき、フラッシュメモリ5はデータ出力
動作を維持しなければならない。フラッシュメモリ5の
データ出力回路は出力データラッチ回路を備えている。In the above embodiment, the upper address bus PABU dedicated to each of the PSRAM 4 and the flash memory 5 is used.
S-H and FABUS-H are used. In this case, the card controller 2 uses the respective buses PABUS-H and FAB.
An interface terminal must be provided to connect the US-H to the PSRAM 4 and the flash memory 5 separately. When reducing the number of external terminals of such a card controller 2, a bus PABU is provided inside the card controller.
A multiplexer for selecting S-H or FABUS-H may be provided, and the corresponding address input terminals of the PSRAM 4 and the flash memory 5 may be commonly connected to the output thereof. FIG. 7 shows an operation timing chart for such a configuration. As is clear from the figure, the bus PABUS-H
And FABUS-H values are multiplexed and output. When the address of the bus PABUS-H is selected as the upper address, the flash memory 5 must maintain the data output operation. The data output circuit of the flash memory 5 includes an output data latch circuit.
【0033】上記実施例によれば以下の作用効果を得る
ことができる。(1)ガーベイジコレクション処理に際
して、その処理対象とされるデータをフラッシュメモリ
5から読み出すのに並行して、当該読出しデータをマイ
クロコンピュータ3に供給し且つPSRAM4に書き込
み可能にしているから、ガーベイジコレクション処理対
象とされるデータをフラッシュメモリ5から読み出して
PSRAM4に退避する書き込み動作を同一のメモリサ
イクルで実現できる。According to the above embodiment, the following operational effects can be obtained. (1) During the garbage collection process, the read data is supplied to the microcomputer 3 and is writable to the PSRAM 4 in parallel with reading the data to be processed from the flash memory 5, so that the garbage is collected. The write operation of reading the data to be the collection processing target from the flash memory 5 and saving it in the PSRAM 4 can be realized in the same memory cycle.
【0034】(2)ガーベイジコレクション処理対象と
されるデータはマクロコンピュータ3も取り込むことが
できるので、マイクロコンピュータ3はPSRAM4に
退避すべきデータのファイルエンド情報を検出するまで
アドレスを更新しながらメモリアクセス動作を繰り返し
て前記転送制御を行うことができる。(2) Since the macro computer 3 can take in the data to be garbage-collected, the microcomputer 3 updates the address and stores the memory until the file end information of the data to be saved in the PSRAM 4 is detected. The transfer control can be performed by repeating the access operation.
【0035】(3)ガーベイジコレクション処理対象と
されるデータはマクロコンピュータ3も取り込むことが
できるので、そのようなデータにセクタの有効性を示す
ようなセクタ管理情報を含む場合には、マイクロコンピ
ュータ3は上記同一メモリサイクルにてコンパクション
のための制御情報を得て、コンパクションのための処理
も行うことができる。(3) Since the data targeted for the garbage collection process can also be taken in by the macro computer 3, when such data includes sector management information indicating the validity of the sector, a microcomputer is used. 3 can obtain control information for compaction in the same memory cycle and can also perform processing for compaction.
【0036】(4)マイクロコンピュータがロード命令
とストア命令とを繰り返し実行してデータを一つづつフ
ラッシュメモリからマイクロコンピュータを介してPS
RAMに書き込む処理を行うことによって前記データ退
避とコンパクションとを実現するものに比べると、フラ
ッシュメモリ5からPSRAM4へのメモリブロックの
データ転送を高速化でき、フラッシュメモリカード内部
のライト処理の高速化が可能になる。この結果、本実施
例のフラッシュメモリカードを用いたシステムにおいて
は、ホスト装置10側が連続ライトを行うような時のス
ループットの向上が可能である。(4) The microcomputer repeatedly executes the load instruction and the store instruction to send data one by one from the flash memory to the PS via the microcomputer.
Compared with the case where the data saving and compaction are realized by performing the process of writing in the RAM, the data transfer of the memory block from the flash memory 5 to the PSRAM 4 can be speeded up, and the speed of the write process inside the flash memory card can be increased. It will be possible. As a result, in the system using the flash memory card of the present embodiment, it is possible to improve the throughput when the host device 10 side performs continuous writing.
【0037】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。例えば、
上記実施例ではセクタデータの記憶手段をフラッシュメ
モリとして説明したが、本発明はそれに限定されず、E
EPROM,フレキシブルディスク装置及びハードディ
スク装置等であってもよい。以上の説明では主として本
発明者によってなされた発明をその背景となった利用分
野であるICカードとしてのメモリカードに適用した場
合について説明したが、本発明はそれに限定されず、ホ
スト装置と同一の回路基板に実装されるものであっても
よい。Although the invention made by the present inventor has been specifically described based on the embodiments, the present invention is not limited to the embodiments and various modifications can be made without departing from the scope of the invention. Yes. For example,
Although the flash memory is used as the storage means for the sector data in the above embodiment, the present invention is not limited to this and E
It may be an EPROM, a flexible disk device, a hard disk device, or the like. In the above description, the case where the invention made by the present inventor is mainly applied to a memory card as an IC card, which is a field of application which is the background of the invention, is not limited thereto and the same as the host device. It may be mounted on a circuit board.
【0038】[0038]
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.
【0039】すなわち、ガーベイジコレクション処理に
際して、その処理対象とされるデータを不揮発性半導体
メモリから読み出すのに並行して、当該読出しデータを
マイクロコンピュータに供給し且つ揮発性半導体メモリ
に書き込み可能にしているから、ガーベイジコレクショ
ン処理対象とされるデータを不揮発性半導体メモリから
読み出して揮発性半導体メモリに退避する書き込み動作
を同一のメモリサイクルで実現できる。That is, in the garbage collection process, in parallel with reading the data to be processed from the nonvolatile semiconductor memory, the read data is supplied to the microcomputer and can be written in the volatile semiconductor memory. Therefore, the write operation of reading the data to be garbage-collected from the nonvolatile semiconductor memory and saving it in the volatile semiconductor memory can be realized in the same memory cycle.
【0040】ガーベイジコレクション処理対象とされる
データはマクロコンピュータも取り込むことができるの
で、マイクロコンピュータは揮発性半導体メモリに退避
すべきデータのファイルエンド情報などを検出するまで
アドレスを更新しながらメモリアクセス動作を繰り返し
て前記転送制御を行うことができる。また、そのような
データにセクタの有効性を示すようなセクタ管理情報を
含む場合には、マイクロコンピュータは上記同一メモリ
サイクルにてコンパクションのための制御情報を得て、
コンパクションのための処理も行うことができる。Since the data targeted for the garbage collection process can also be fetched by the macro computer, the microcomputer accesses the memory while updating the address until it detects the file end information of the data to be saved in the volatile semiconductor memory. The transfer control can be performed by repeating the operation. Further, when such data includes sector management information indicating the effectiveness of the sector, the microcomputer obtains control information for compaction in the same memory cycle,
Processing for compaction can also be performed.
【0041】マイクロコンピュータがロード命令をスト
ア命令を繰り返し実行してデータを一つづつ不揮発性半
導体メモリからマイクロコンピュータを介して揮発性半
導体メモリに転送するものに比べると、不揮発性半導体
メモリから揮発性半導体メモリへのメモリブロックのデ
ータ転送が高速化され、ファイルメモリ装置へのセクタ
データの高速書き込みが可能になる。この結果、本発明
のファイルメモリ装置を用いたシステムにおいては、シ
ステム側が連続ライトを行うような時でもホストシステ
ムの待ち時間が短縮される。従ってシステム全体の処理
速度の向上に寄与する。Compared to a microcomputer in which a load instruction and a store instruction are repeatedly executed to transfer data one by one from a nonvolatile semiconductor memory to a volatile semiconductor memory via the microcomputer, the nonvolatile semiconductor memory is more volatile. The data transfer of the memory block to the semiconductor memory is accelerated, and the sector data can be written at high speed to the file memory device. As a result, in the system using the file memory device of the present invention, the waiting time of the host system is shortened even when the system side performs continuous writing. Therefore, it contributes to the improvement of the processing speed of the entire system.
【図1】本発明の一実施例に係るフラッシュメモリカー
ドのブロック図である。FIG. 1 is a block diagram of a flash memory card according to an embodiment of the present invention.
【図2】本発明の一実施例に係るフラッシュメモリカー
ドを適用したデータ処理システムのブロック図である。FIG. 2 is a block diagram of a data processing system to which a flash memory card according to an embodiment of the present invention is applied.
【図3】ライトバンクレジスタ及びファイルバンクレジ
スタを利用したフラッシュメモリ及びPSRAMに対す
る制御態様を示す説明図である。FIG. 3 is an explanatory diagram showing a control mode for a flash memory and a PSRAM using a write bank register and a file bank register.
【図4】フラッシュメモリから読出されたデータがマイ
クロコンピュータ及びPSRAMに並列的に供給される
様子を示すタイミングチャートである。FIG. 4 is a timing chart showing how data read from a flash memory is supplied in parallel to a microcomputer and PSRAM.
【図5】ガーベイジコレクション処理によってコンパク
ションされたデータの様子を示す説明図である。FIG. 5 is an explanatory diagram showing a state of data compacted by a garbage collection process.
【図6】ホスト装置側からのセクタライト時にガーベイ
ジコレクション処理が発生した場合のメモリカード内部
におけるライト動作のフローチャートである。FIG. 6 is a flowchart of a write operation inside the memory card when a garbage collection process occurs during sector write from the host device side.
【図7】カードコントローラの外部端子数を減らすため
にPSRAMとフラッシュメモリの上位アドレス入力端
子を共通接続し夫々に固有の上位アドレスをマルチプレ
クスして供給するようにした変形実施例のタイミングチ
ャートである。FIG. 7 is a timing chart of a modified embodiment in which the PSRAM and the upper address input terminals of the flash memory are commonly connected to reduce the number of external terminals of the card controller and a unique upper address is multiplexed and supplied to each. is there.
1 フラッシュメモリカード 2 カードコントローラ 20 インタフェース部 21,22 セレクタ 23 ライトバンクレジスタ 24 ファイルバンクレジスタ 3 マイクロコンピュータ DBUS データバス ABUS−H 上位アドレスバス ABUS−L 下位アドレスバス PBUS−H PSRAM固有の上位アドレスバス FBUS−H フラッシュメモリ固有の上位アドレスバ
ス φ1 データ退避及びコンパクション指示信号 φ2 メモリバンクへの書き戻し指示信号 4 PSRAM 40 ガーベイジバッファ 41 ライトバッファ 5 フラッシュメモリ 10 ホスト装置1 Flash Memory Card 2 Card Controller 20 Interface 21, 22 Selector 23 Write Bank Register 24 File Bank Register 3 Microcomputer DBUS Data Bus ABUS-H Upper Address Bus ABUS-L Lower Address Bus PBUS-H PSRAM Unique Upper Address Bus FBUS -H Upper address bus specific to flash memory φ1 Data save and compaction instruction signal φ2 Write back instruction signal to memory bank 4 PSRAM 40 Garbage buffer 41 Write buffer 5 Flash memory 10 Host device
───────────────────────────────────────────────────── フロントページの続き (72)発明者 菊池 隆 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 波多野 壮一 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 齋江 靖彦 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 大久保 京夫 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 鈴木 猛 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 片山 国弘 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 柿 健一 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 門脇 茂 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 (72)発明者 岸 正道 東京都小平市上水本町5丁目20番1号 日 立超エル・エス・アイ・エンジニアリング 株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Takashi Kikuchi 5-20-1 Kamimizuhoncho, Kodaira-shi, Tokyo Inside Hiritsu Cho-LS Engineering Co., Ltd. (72) Inventor Soichi Hatano Kodaira, Tokyo 5-20-1 Jitsumizu Honcho, Ichi, Japan, within Hitate Super L.S.I. Engineering Co., Ltd. (72) Inventor Yasuhiko Saie 5-20-1, Kamimizuhoncho, Kodaira, Tokyo Metropolitan Government I Engineering Co., Ltd. (72) Inventor Kyoo Okubo 5-20-1 Kamimizuhonmachi, Kodaira-shi, Tokyo Hirate RLS AI Engineering Co., Ltd. (72) Inventor Takeshi Suzuki Kodaira, Tokyo 5-20-1 Kamimizuhonmachi, Ichi, Hitate Cho-LS Engineering Co., Ltd. (72) Inventor Katayama Hiroshi 1099 Ozenji, Aso-ku, Kawasaki-shi, Kanagawa Inside the Hitachi, Ltd. System Development Laboratory (72) Inventor Kenichi Kaki 1099, Ozenji, Aso-ku, Kawasaki-shi, Kanagawa Inside the Hitachi, Ltd. System Development Laboratory (72) Inventor Kadowaki Shigeru 5-20-1 Kamimizuhoncho, Kodaira-shi, Tokyo Super RLS AI Engineering Co., Ltd. (72) Inventor Masamichi Kishi 5-20-1 Sanmizuhoncho, Kodaira-shi, Tokyo Super LSI Engineering Co., Ltd.
Claims (5)
る第1の記憶手段と、第1の記憶手段上の記憶領域に対
するガーベイジコレクション処理においてその記憶領域
に存在する有効データが格納される第2の記憶手段と、
前記第1及び第2の記憶手段を夫々アクセス可能なデー
タ処理手段と、前記第1及び第2の記憶手段とデータ処
理手段が共有するデータバスと、ガーベイジコレクショ
ン処理においてその処理の対象とされる第1の記憶憶手
段に対するデータ処理手段によるデータ読出し動作に並
行して当該読出しデータを前記第2の記憶手段に書き込
み可能にする並列アクセス制御手段と、を備えて成るも
のであることを特徴とするファイルメモリ装置。1. A first storage means for storing file data in sector units, and a second storage means for storing valid data existing in the storage area in a garbage collection process for the storage area on the first storage means. Storage means of
Data processing means that can access the first and second storage means, a data bus shared by the first and second storage means and the data processing means, and a target of the processing in the garbage collection processing. Parallel access control means for writing the read data into the second storage means in parallel with the data read operation by the data processing means for the first storage means. File memory device.
複数セクタ以上の記憶容量を有するメモリブロック単位
で電気的にデータ消去可能とされる不揮発性半導体メモ
リと、不揮発性半導体メモリのメモリブロックに対する
ガーベイジコレクション処理においてそのメモリブロッ
クに存在する有効データが格納されるガーベイジバッフ
ァ及び外部からの書き込み指示に際して書き込みデータ
が一時的に格納されるライトバッファに利用される揮発
性半導体メモリと、前記不揮発性半導体メモリ及び揮発
性半導体メモリを夫々アクセス可能なマイクロコンピュ
ータと、前記不揮発性半導体メモリ及び揮発性半導体メ
モリとマイクロコンピュータが共有するデータバスと、
ガーベイジコレクション処理においてその処理の対象と
される不揮発性半導体メモリに対するマイクロコンピュ
ータによるデータ読出し動作に並行して当該読出しデー
タを前記揮発性半導体メモリに書き込み可能にする並列
アクセス制御手段と、を備えて成るものであることを特
徴とするファイルメモリ装置。2. A non-volatile semiconductor memory in which file data is stored in units of sectors and which can be electrically erased in units of memory blocks having a storage capacity of a plurality of sectors, and a Garvey for memory blocks of the non-volatile semiconductor memories. A volatile semiconductor memory used as a garbage buffer for storing valid data existing in the memory block in the dicorrection process and a write buffer for temporarily storing write data when a write instruction is given from the outside, and the nonvolatile memory. A microcomputer capable of accessing the semiconductor memory and the volatile semiconductor memory respectively; a data bus shared by the microcomputer with the nonvolatile semiconductor memory and the volatile semiconductor memory;
Parallel access control means for writing the read data into the volatile semiconductor memory in parallel with the data read operation by the microcomputer for the nonvolatile semiconductor memory that is the target of the garbage collection processing. A file memory device comprising:
ジコレクション処理対象とされるメモリブロックのセク
タデータをマイクロコンピュータが不揮発性半導体メモ
リから読み出すとき揮発性半導体メモリの書き込み制御
信号を生成し、揮発性半導体メモリのガーベイジバッフ
ァに退避され且つコンパクションされたセクタデータを
マイクロコンピュータが読み出すとき不揮発性半導体メ
モリに対する書き込み制御信号を生成するメモリコント
ローラを備えて成るものであることを特徴とする請求項
2記載のファイルメモリ装置。3. The parallel access control means generates a write control signal of a volatile semiconductor memory when the microcomputer reads sector data of a memory block targeted for garbage collection processing from the non-volatile semiconductor memory, and is volatile. 3. A memory controller for generating a write control signal for a non-volatile semiconductor memory when a microcomputer reads sector data saved and compacted in a garbage buffer of the semiconductor memory. File memory device.
下位アドレス信号がマイクロコンピュータから与えられ
る下位アドレスバスとマイクロコンピュータから上位ア
ドレス信号が与えられる上位アドレスバスを供え、下位
アドレスバスはマイクロコンピュータと共に不揮発性及
び揮発性双方の半導体メモリに共通接続され、不揮発性
半導体メモリの上位アドレス信号入力端子はそれ専用の
不揮発性メモリ上位アドレスバスに結合され、揮発性半
導体メモリの上位アドレス信号入力端子はそれ専用の揮
発性メモリ上位アドレスバスに結合され、前記並列アク
セス制御手段は、前記ガーベイジコレクション処理対象
とされるメモリブロックのセクタデータがマイクロコン
ピュータによって不揮発性半導体メモリから読み出しア
クセスされるとき前記揮発性メモリ上位アドレスバスに
所要の上位アドレスを供給するファイルバンクスレジス
タと、揮発性半導体メモリのガーベイジバッファに退避
され且つコンパクションされたセクタデータがマイクロ
コンピュータによって読み出しアクセスされるとき前記
不揮発性メモリ上位アドレスバスに所要の上位アドレス
を供給するライトバンクレジスタとを更に備えて成るも
のであることを特徴とする請求項3記載のファイルメモ
リ装置。4. A lower address bus provided with a lower address signal for addressing in one sector from a microcomputer and an upper address bus provided with an upper address signal from the microcomputer, the lower address bus being nonvolatile together with the microcomputer. Volatile and volatile semiconductor memory are commonly connected, the upper address signal input terminal of the non-volatile semiconductor memory is coupled to the dedicated non-volatile memory upper address bus, and the upper address signal input terminal of the volatile semiconductor memory is dedicated to it Of the volatile memory upper address bus of the parallel access control means, the parallel access control means, when the sector data of the memory block targeted for the garbage collection processing is read from the nonvolatile semiconductor memory by the microcomputer and accessed. Volatile memory high-order address file bank registers to supply a required high-order address to the bus, and nonvolatile memory when the microcomputer stores and accesses the compacted sector data saved in the garbage buffer of the volatile semiconductor memory. 4. The file memory device according to claim 3, further comprising a write bank register for supplying a required upper address to the upper address bus.
ンドをホスト装置から受け取り、またホスト装置との間
でデータの受け渡しを行うインタフェース部を前記デー
タバスに結合して備え、メモリカード化されて成るもの
であることを特徴とする請求項4記載のファイルメモリ
装置。5. A memory card is provided which is provided with an interface unit for receiving a command to be executed by a microcomputer from a host device and for transferring data to and from the host device. The file memory device according to claim 4, wherein the file memory device is provided.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7137393A JPH08314775A (en) | 1995-05-11 | 1995-05-11 | File memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7137393A JPH08314775A (en) | 1995-05-11 | 1995-05-11 | File memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08314775A true JPH08314775A (en) | 1996-11-29 |
Family
ID=15197629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7137393A Withdrawn JPH08314775A (en) | 1995-05-11 | 1995-05-11 | File memory device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08314775A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11126488A (en) * | 1997-10-21 | 1999-05-11 | Hitachi Ltd | Method and device for storing and controlling data of external memory using plural flash memories |
JP2002008379A (en) * | 2000-06-12 | 2002-01-11 | Shijin Kogyo Sakushinkai | Data access method in which the number of times of erasion of flash memory can be reduced, data correction using the method, and access device |
US8171239B2 (en) | 2007-11-15 | 2012-05-01 | Samsung Electronics Co., Ltd. | Storage management method and system using the same |
US8185687B2 (en) | 2010-01-29 | 2012-05-22 | Kabushiki Kaisha Toshiba | Semiconductor storage device and method of controlling semiconductor storage device |
JP2016505180A (en) * | 2013-01-30 | 2016-02-18 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | Non-volatile memory writing mechanism |
US10482008B2 (en) | 2015-01-23 | 2019-11-19 | Hewlett Packard Enterprise Development Lp | Aligned variable reclamation |
-
1995
- 1995-05-11 JP JP7137393A patent/JPH08314775A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11126488A (en) * | 1997-10-21 | 1999-05-11 | Hitachi Ltd | Method and device for storing and controlling data of external memory using plural flash memories |
JP2002008379A (en) * | 2000-06-12 | 2002-01-11 | Shijin Kogyo Sakushinkai | Data access method in which the number of times of erasion of flash memory can be reduced, data correction using the method, and access device |
US8171239B2 (en) | 2007-11-15 | 2012-05-01 | Samsung Electronics Co., Ltd. | Storage management method and system using the same |
US8185687B2 (en) | 2010-01-29 | 2012-05-22 | Kabushiki Kaisha Toshiba | Semiconductor storage device and method of controlling semiconductor storage device |
JP2016505180A (en) * | 2013-01-30 | 2016-02-18 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | Non-volatile memory writing mechanism |
US10482008B2 (en) | 2015-01-23 | 2019-11-19 | Hewlett Packard Enterprise Development Lp | Aligned variable reclamation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11880602B2 (en) | Data writing method and storage device | |
USRE47638E1 (en) | Storage device including flash memory and capable of predicting storage device performance based on performance parameters | |
KR100754226B1 (en) | Method for programming a non-volatile data storage and apparatus thereof | |
KR101354152B1 (en) | Method for command scheduling of virtual file system embodied in non-volatile data storage and apparatus thereof | |
US9058254B2 (en) | Memory device | |
US5845332A (en) | Non-volatile memory, memory card and information processing apparatus using the same and method for software write protect control of non-volatile memory | |
US7174440B2 (en) | Method and apparatus for performing block caching in a non-volatile memory system | |
US7536500B2 (en) | Header blocks for flash memory writes | |
US8010736B2 (en) | Nonvolatile semiconductor memory device for supporting high speed search in cache memory | |
JPH11134875A (en) | Semiconductor memory and apparatus and method of controlling semiconductor memory | |
CN109471594B (en) | M L C flash memory read-write method | |
EP2356571B1 (en) | Memory device and controlling method of the same | |
KR100669342B1 (en) | Program method of nand flash memory device | |
US20050010717A1 (en) | Access and data management method using double parallel tracks for flash memory cells | |
US7562182B2 (en) | Memory access | |
JPH08314775A (en) | File memory device | |
KR20020092261A (en) | Management Scheme for Flash Memory with the Multi-Plane Architecture | |
JPH07153284A (en) | Non-volatile semiconductor memory and its control method | |
JP2023039459A (en) | Memory system and method | |
JP2000285017A (en) | Storage | |
US6898680B2 (en) | Minimization of overhead of non-volatile memory operation | |
JPH1196779A (en) | Flash type memory, its controlling method, storage device, and computer system | |
JP3123274B2 (en) | Memory programming equipment | |
JPH0877081A (en) | File memory system | |
JP4042898B2 (en) | Memory controller, memory system including the same, and flash memory control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20020806 |