[go: up one dir, main page]

JP4561110B2 - MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD - Google Patents

MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD Download PDF

Info

Publication number
JP4561110B2
JP4561110B2 JP2004020762A JP2004020762A JP4561110B2 JP 4561110 B2 JP4561110 B2 JP 4561110B2 JP 2004020762 A JP2004020762 A JP 2004020762A JP 2004020762 A JP2004020762 A JP 2004020762A JP 4561110 B2 JP4561110 B2 JP 4561110B2
Authority
JP
Japan
Prior art keywords
flash memory
chips
memory
flash
chip
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.)
Expired - Lifetime
Application number
JP2004020762A
Other languages
Japanese (ja)
Other versions
JP2005215918A (en
Inventor
琢真 光永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TDK Corp
Original Assignee
TDK Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by TDK Corp filed Critical TDK Corp
Priority to JP2004020762A priority Critical patent/JP4561110B2/en
Publication of JP2005215918A publication Critical patent/JP2005215918A/en
Application granted granted Critical
Publication of JP4561110B2 publication Critical patent/JP4561110B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Read Only Memory (AREA)

Description

本発明は、メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法に関する。   The present invention relates to a memory controller, a flash memory system including the memory controller, and a flash memory control method.

近年、メモリカードやシリコンディスクなどのメモリシステムに用いられる半導体メモリとして、フラッシュメモリが用いられることが多い。このフラッシュメモリは不揮発性メモリの一種であり、電源が投入されているか否かに関わらず、データが保持されていることが要求される。   In recent years, a flash memory is often used as a semiconductor memory used in a memory system such as a memory card or a silicon disk. This flash memory is a kind of non-volatile memory, and is required to retain data regardless of whether power is turned on.

上記のような装置に用いられるNAND型フラッシュメモリは、メモリセルを消去状態(論理値の「1」)から書込状態(論理値の「0」)に変化させる場合には、メモリセル単位で行うことができるが、メモリセルを書込状態(論理値の「0」)から消去状態(論理値の「1」)に変化させる場合には、メモリセル単位で行うことができず、複数のメモリセルからなる所定の消去単位(ブロック)でしかこれを行うことができない。ここで、メモリセルを消去状態(論理値の「1」)から書込状態(論理値の「0」)に変化させる場合や、書込状態(論理値の「0」)から消去状態(論理値の「1」)に変化させる場合は、メモリセルに高電圧を印加して、電子の注入や排出を行なっている。   The NAND flash memory used in the above-described device has a memory cell unit when a memory cell is changed from an erased state (logical value “1”) to a written state (logical value “0”). However, when a memory cell is changed from a written state (logical value “0”) to an erased state (logical value “1”), it cannot be performed in units of memory cells. This can only be done with a predetermined erase unit (block) of memory cells. Here, the memory cell is changed from the erased state (logical value “1”) to the written state (logical value “0”), or from the written state (logical value “0”) to the erased state (logical value “0”). When the value is changed to “1”), a high voltage is applied to the memory cell to inject and discharge electrons.

又、フラッシュメモリに書込まれるデータは、一旦、フラッシュメモリ内のレジスタに保持された後、レジスタからメモリセルアレイを構成する各メモリセルに複写される。この複写を行なっている間、フラッシュメモリは、他の処理を受付けないビジー状態となるため、このビジー状態が解除されるまで、フラッシュメモリにアクセスすることができない。この複写を実行するときは、上述のようにメモリセルに高電圧を印加して、電子を注入しなければならないため、複写の実行によるビジー状態の期間は長くなり、書込み処理の処理効率を悪化させる要因になっている。   Data written to the flash memory is once held in a register in the flash memory and then copied from the register to each memory cell constituting the memory cell array. While the copying is being performed, the flash memory is in a busy state that does not accept other processing, and therefore, the flash memory cannot be accessed until the busy state is canceled. When performing this copying, a high voltage must be applied to the memory cell and electrons must be injected as described above, so the busy period during execution of the copying becomes longer and the processing efficiency of the writing process deteriorates. It is a factor to make.

この問題を解決するために、特許文献1(特開平10ー63442号公報)では、複数チップのフラッシュメモリで装置を構成し、ビジー状態が解除されていることが検出されたフラッシュメモリから順に処理を行なっている。
特開平10ー63442号公報
In order to solve this problem, in Patent Document 1 (Japanese Patent Laid-Open No. 10-63442), a device is constituted by a plurality of chips of flash memory, and processing is sequentially performed from the flash memory in which the busy state is detected to be released. Is doing.
Japanese Patent Laid-Open No. 10-63442

特許文献1(特開平10ー63442)の場合、各フラッシュメモリが出力するビジー状態を示す信号を個別に検出しなければならないため、ビジー状態を検出する検出回路や信号ラインを各フラッシュメモリ毎に設けなければならない。又、この処理を制御するメモリコントローラを、ICとしてパッケージ化するときは、制御するラッシュメモリのチップ数分の入力端子(フラッシュメモリが出力するビジー状態を示す信号を受取る端子)を設けなければならない。従って、各フラッシュメモリ毎にビジー状態を検出するようにすると、実装効率が低下する。   In the case of Patent Document 1 (Japanese Patent Laid-Open No. 10-63442), a signal indicating a busy state output from each flash memory must be detected individually. Therefore, a detection circuit and a signal line for detecting a busy state are provided for each flash memory. Must be provided. When the memory controller that controls this processing is packaged as an IC, it is necessary to provide as many input terminals (terminals that receive a signal indicating the busy state output from the flash memory) as the number of chips of the rush memory to be controlled. . Therefore, if the busy state is detected for each flash memory, the mounting efficiency is lowered.

そこで、本発明は、各フラッシュメモリ毎にビジー状態を検出することなく、複数チップのフラッシュメモリに対する書込み処理の効率を向上させることができるメモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法を提供することを目的とする。   Accordingly, the present invention provides a memory controller that can improve the efficiency of write processing to a flash memory of a plurality of chips without detecting a busy state for each flash memory, a flash memory system including the memory controller, and a flash memory It is an object to provide a control method.

本発明に係る目的は、ホストシステムからの要求に基づいて、共通のバスに接続された複数チップのフラッシュメモリに対するアクセスを制御するメモリコントローラであって、前記バスを介して、前記複数チップのフラッシュメモリ内のデータ保持部に書込みデータを転送するデータ転送機能と、前記データ保持部に保持されている書込みデータを、前記フラッシュメモリ内のメモリセルに複写する複写処理を開始する指示を、前記バスを介して、前記複数チップのフラッシュメモリに与える指示機能と、前記複数チップのフラッシュメモリの活性化状態を個別に制御する制御機能とを備え、前記転送機能が動作している期間は、前記制御機能が前記複数チップのフラッシュメモリを1つずつ順次活性化させていくことにより、前記ホストシステムから与えられる書込みデータが前記複数チップのフラッシュメモリに順次振り分けられ、前記指示機能が動作している期間は、前記制御機能が前記複数チップのフラッシュメモリの全てを活性化させることにより、前記複数チップのフラッシュメモリが共通の指示に基づいて前記複写処理を開始することを特徴とするメモリコントローラによって達成される。又、本発明に係る目的は、前記メモリコントローラとフラッシュメモリを備えることを特徴とするフラッシュメモリシステムによっても達成される。 The purpose of the present invention, based on the request of the host system or al, a memory controller that controls access to the flash memory of the plurality of connected chips to a common bus, via the bus, said plurality of chips A data transfer function for transferring write data to the data holding unit in the flash memory, and an instruction to start a copy process for copying the write data held in the data holding unit to the memory cell in the flash memory , An instruction function given to the flash memories of the plurality of chips via the bus, and a control function of individually controlling the activation state of the flash memories of the plurality of chips, and the period during which the transfer function is operating, The control function sequentially activates the plurality of chips of flash memory one by one, whereby the host The write data given from the system is sequentially distributed to the plurality of chips of flash memory, and the control function activates all of the plurality of chips of flash memory during the period when the instruction function is operating. flash memory chips is achieved by a memory controller, wherein the benzalkonium to start the copying process based on a common instruction. The object of the present invention is also achieved by a flash memory system comprising the memory controller and a flash memory.

つまり、上記メモリコントローラを用いた書込み処理では、フラッシュメモリ内のデータ保持部(例えば、レジスタ)からメモリセルへの複写を、複数チップのフラッシュメモリが同時に行なうので、いずれかのフラッシュメモリがビジー状態(処理要求の受付を拒否している状態)になっている期間の総和を削減することができる。   In other words, in the writing process using the memory controller, a plurality of flash memories simultaneously copy data from a data holding unit (for example, a register) in the flash memory to a memory cell, so that any one of the flash memories is busy. It is possible to reduce the sum total of the periods in which the processing request is not accepted.

又、本発明によれば、前記複数チップのフラッシュメモリからそれぞれ出力される信号であって、前記複写処理を実行していることを示すビジー信号を、共通の信号線を介して検出する検出機能を更に備え、前記検出機能がビジー信号を検出している期間は、前記転送機能及び前記指示機能が動作しないように構成されていることを特徴とすることが好ましい。 Further, according to the present invention, a signal which is output from the flash memory of the plurality of chips, a busy signal indicating that it is executing the copy processing, the detection function of detecting via a common signal line It is preferable that the transfer function and the instruction function do not operate during a period in which the detection function detects a busy signal .

又、本発明に係る目的は、ホストシステムからの要求に基づいて、共通のバスに接続された複数チップのフラッシュメモリに対するアクセスを制御するフラッシュメモリの制御方法であって、前記バスを介して、前記複数チップのフラッシュメモリ内のデータ保持部に書込みデータを転送する転送処理と、前記データ保持部に保持されてい書込みデータを、前記フラッシュメモリ内のメモリセルに複写する複写処理を開始する指示を、前記バスを介して、前記複数チップのフラッシュメモリに与える指示処理と、前記複数チップのフラッシュメモリの活性化状態を個別に制御する制御処理とを含み、前記転送処理の実行中は、前記制御処理により前記複数チップのフラッシュメモリを1つずつ順次活性化させていくことにより、前記ホストシステムから与えられる書込みデータが前記複数チップのフラッシュメモリに順次振り分けられ、前記指示処理の実行中は、前記制御処理により前記複数チップのフラッシュメモリを全て活性化させることにより、前記複数チップのフラッシュメモリが共通の指示に基づいて前記複写処理を開始することを特徴とするフラッシュメモリの制御方法によって達成される。 The object of the present invention, based on the request of the host system or al, A method of controlling a flash memory to control access to the flash memory of the plurality of connected chips to a common bus, via the bus Te, start a transfer process of transferring write data in the data holding unit in the flash memory of the plurality of chips, the write data that is held in the data holding unit, a copying process for copying the memory cell in the flash memory Including an instruction process for giving an instruction to the flash memories of the plurality of chips via the bus, and a control process for individually controlling an activation state of the flash memories of the plurality of chips, while the transfer process is being executed. By sequentially activating the flash memories of the plurality of chips one by one by the control process, the host The write data given from the system is sequentially distributed to the flash memories of the plurality of chips, and during the execution of the instruction process, the flash memories of the plurality of chips are activated by activating all the flash memories of the plurality of chips by the control process. Is achieved by a flash memory control method characterized in that the copying process is started based on a common instruction .

つまり、前記転送処理と前記複写処理からなる書込み処理では、前記複写処理が複数チップのフラッシュメモリで同時に行なわれる。従って、前記複写処理に基づいて、いずれかのフラッシュメモリがビジー状態(処理要求の受付を拒否している状態)になっている期間の総和を削減することができる。   That is, in the writing process composed of the transfer process and the copying process, the copying process is simultaneously performed in a flash memory of a plurality of chips. Therefore, based on the copying process, it is possible to reduce the total sum of periods during which any of the flash memories is busy (a state where processing requests are rejected).

又、本発明によれば、複数チップのフラッシュメモリからそれぞれ出力される信号であって、前記複写処理を実行していることを示すビジー信号を、共通の信号線を介して検出する検出処理を更に含み、前記検出処理によりビジー信号が検出されている期間は、前記転送処理及び前記指示処理が実行されないことが好ましい。 In addition, according to the present invention, a detection process for detecting a busy signal indicating that the copying process is being executed, which is output from each of the flash memories of a plurality of chips , through a common signal line. Further, it is preferable that the transfer process and the instruction process are not executed during a period in which a busy signal is detected by the detection process .

本発明によれば、フラッシュメモリ内で行なわれる、データ保持部(例えば、レジスタ)からメモリセルへのデータの複写を、複数チップのフラッシュメモリが同時に行なうよ
うにしたので、いずれかのフラッシュメモリが処理要求の受付を拒否している状態(例えば、後述するビジー状態)になっている期間の総和を削減することができる。又、データ保持部(例えば、レジスタ)からメモリセルへのデータの複写するコマンドを、複数チップのフラッシュメモリに対して同時に出力するので、コマンドを出力している期間の総和も削減することができる。又、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドを、複数チップのフラッシュメモリに対して同時に出力するようにすれば、コマンドを出力している期間の総和を、更に削減することができる。
According to the present invention, since copying of data from a data holding unit (for example, a register) to a memory cell, which is performed in the flash memory, is performed simultaneously by a plurality of chip flash memories, any one of the flash memories It is possible to reduce the total sum of periods during which processing requests are not accepted (for example, a busy state to be described later). In addition, since the command for copying data from the data holding unit (for example, register) to the memory cell is simultaneously output to the flash memory of a plurality of chips, the total period during which the command is output can be reduced. . If the command for transferring the write data to the register in the flash memory is simultaneously output to the flash memories of a plurality of chips, the total period during which the command is output can be further reduced.

従って、本発明を用いれば、各フラッシュメモリ毎にビジー状態を検出することなく、複数チップのフラッシュメモリに対する書込み処理の効率を向上させることができる。又、各フラッシュメモリ毎にビジー状態を検出するための検出回路や、検出回路用のライン、端子等を設ける必要もないので、実装効率を低下させることもない。   Therefore, by using the present invention, it is possible to improve the efficiency of write processing for a plurality of chips of flash memory without detecting a busy state for each flash memory. Further, since it is not necessary to provide a detection circuit for detecting the busy state for each flash memory, a line for the detection circuit, a terminal, and the like, the mounting efficiency is not lowered.

以下、図面に基づき、本発明の実施の形態について詳細に説明する。
[フラッシュメモリシステム1の説明]
図1は、本発明に係るフラッシュメモリシステム1を概略的に示すブロック図である。図1に示したようにフラッシュメモリシステム1は、フラッシュメモリ2と、それを制御するコントローラ3で構成されている。又、フラッシュメモリシステム1は、通常ホストシステム4に着脱可能に装着されて使用され、ホストシステム4に対して一種の外部記憶装置として用いられる。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[Description of flash memory system 1]
FIG. 1 is a block diagram schematically showing a flash memory system 1 according to the present invention. As shown in FIG. 1, the flash memory system 1 includes a flash memory 2 and a controller 3 that controls the flash memory 2. The flash memory system 1 is normally used by being detachably attached to the host system 4, and is used as a kind of external storage device for the host system 4.

尚、ホストシステム4としては、文字、音声、あるいは画像情報等の種々の情報を処理するパーソナルコンピュータやデジタルスチルカメラをはじめとする各種情報処理装置が挙げられる。   Examples of the host system 4 include various information processing apparatuses such as a personal computer and a digital still camera that process various information such as characters, sounds, and image information.

フラッシュメモリ2は、ページ単位で読出し又は書込みを、ブロック単位で消去を実行するデバイスであり、例えば、1ブロックは32ページで構成され、1ページは512バイトのユーザ領域と16バイトの冗長領域で構成されている。   The flash memory 2 is a device that executes reading or writing in units of pages and erasing in units of blocks. For example, one block is composed of 32 pages, and one page is a 512-byte user area and a 16-byte redundant area. It is configured.

コントローラ3は、ホストインターフェース制御ブロック5と、マイクロプロセッサ6と、ホストインターフェースブロック7と、ワークエリア8と、バッファ9と、フラッシュメモリインターフェースブロック10と、ECC(エラー・コレクション・コード)ブロック11と、フラッシュメモリシーケンサブロック12とから構成される。これら機能ブロックによって構成されるコントローラ3は、一つの半導体チップ上に集積されている。以下に各ブロックの機能を説明する。   The controller 3 includes a host interface control block 5, a microprocessor 6, a host interface block 7, a work area 8, a buffer 9, a flash memory interface block 10, an ECC (error collection code) block 11, And a flash memory sequencer block 12. The controller 3 constituted by these functional blocks is integrated on one semiconductor chip. The function of each block will be described below.

マイクロプロセッサ6は、コントローラ3を構成する各機能ブロック全体の動作を制御する機能ブロックである。   The microprocessor 6 is a functional block that controls the operation of the entire functional blocks constituting the controller 3.

ホストインターフェース制御ブロック5は、ホストインターフェースブロック7の動作を制御する機能ブロックである。ここで、ホストインターフェース制御ブロック5は、ホストインターフェースブロック7の動作を設定する動作設定レジスタ(図示せず)を備えており、この動作設定レジスタに基づきホストインターフェースブロック7は動作する。   The host interface control block 5 is a functional block that controls the operation of the host interface block 7. Here, the host interface control block 5 includes an operation setting register (not shown) for setting the operation of the host interface block 7, and the host interface block 7 operates based on the operation setting register.

ホストインターフェースブロック7は、ホストシステム4とデータ、アドレス情報、ステータス情報及び外部コマンド情報の授受を行なう機能ブロックである。すなわち、フラッシュメモリシステム1がホストシステム4に装着されると、フラッシュメモリシステム1とホストシステム4は、外部バス13を介して相互に接続され、かかる状態において、ホストシステム4よりフラッシュメモリシステム1に供給されるデータ等は、ホストイン
ターフェースブロック7を入口としてコントローラ3の内部に取り込まれ、フラッシュメモリシステム1からホストシステム4に供給されるデータ等は、ホストインターフェースブロック7を出口としてホストシステム4に供給される。
The host interface block 7 is a functional block that exchanges data, address information, status information, and external command information with the host system 4. That is, when the flash memory system 1 is attached to the host system 4, the flash memory system 1 and the host system 4 are connected to each other via the external bus 13, and in this state, the host system 4 connects to the flash memory system 1. The supplied data is taken into the controller 3 through the host interface block 7 as an entrance, and the data supplied from the flash memory system 1 to the host system 4 is supplied to the host system 4 through the host interface block 7 as an exit. Is done.

さらに、ホストインターフェースブロック7は、ホストシステム4より供給されるホストアドレス及び外部コマンドを一時的に格納するタスクファイルレジスタ(図示せず)及びエラーが発生した場合にセットされるエラーレジスタ(図示せず)等を有している。   Further, the host interface block 7 includes a task file register (not shown) for temporarily storing a host address and an external command supplied from the host system 4 and an error register (not shown) set when an error occurs. ) Etc.

ワークエリア8は、フラッシュメモリ2の制御に必要なデータが一時的に格納される作業領域であり、複数のSRAM(Static Random Access Memory)セルによって構成される機能ブロックである。   The work area 8 is a work area in which data necessary for controlling the flash memory 2 is temporarily stored, and is a functional block configured by a plurality of SRAM (Static Random Access Memory) cells.

バッファ9は、フラッシュメモリ2から読出したデータ及びフラッシュメモリ2に書込むデータを一時的に保持する機能ブロックである。すなわち、フラッシュメモリ2から読出したデータは、ホストシステム4が受け取り可能な状態になるまでバッファ9に保持され、フラッシュメモリ2に書込むデータは、フラッシュメモリ2が書込み可能な状態となるまでバッファ9に保持される。   The buffer 9 is a functional block that temporarily holds data read from the flash memory 2 and data to be written to the flash memory 2. That is, data read from the flash memory 2 is held in the buffer 9 until the host system 4 can receive the data, and data to be written to the flash memory 2 is stored in the buffer 9 until the flash memory 2 becomes writable. Retained.

フラッシュメモリシーケンサブロック12は、内部コマンドに基づきフラッシュメモリ2の動作を制御する機能ブロックである。フラッシュメモリシーケンサブロック12は、複数のレジスタ(図示せず)を備え、この複数のレジスタに内部コマンドを実行する際に必要な情報が設定される。この複数のレジスタに内部コマンドを実行する際に必要な情報が設定されると、フラッシュメモリシーケンサブロック12は、その情報に基づいて処理を実行する。ここで、「内部コマンド」とは、コントローラ3からフラッシュメモリ2に与えられるコマンドであり、ホストシステム4からフラッシュメモリシステム1に与えられるコマンドである「外部コマンド」と区別される。   The flash memory sequencer block 12 is a functional block that controls the operation of the flash memory 2 based on internal commands. The flash memory sequencer block 12 includes a plurality of registers (not shown), and information necessary for executing an internal command is set in the plurality of registers. When information necessary for executing an internal command is set in the plurality of registers, the flash memory sequencer block 12 executes processing based on the information. Here, the “internal command” is a command given from the controller 3 to the flash memory 2 and is distinguished from an “external command” which is a command given from the host system 4 to the flash memory system 1.

フラッシュメモリインターフェースブロック10は、内部バス14を介して、フラッシュメモリ2とデータ、アドレス情報、ステータス情報、内部コマンド情報及びデバイスID情報等の授受を行う機能ブロックである。   The flash memory interface block 10 is a functional block that exchanges data, address information, status information, internal command information, device ID information, and the like with the flash memory 2 via the internal bus 14.

ECCブロック11は、フラッシュメモリ2に書込むデ―タに付加されるエラーコレクションコードを生成するとともに、読出しデータに付加されたエラーコレクションコードに基づいて、読出したデータに含まれる誤りを検出・訂正する機能ブロックである。
[メモリセルの説明]
次に、図2及び3参照して図1に示したフラッシュメモリ2を構成するメモリセル16の具体的な構造について説明する。
The ECC block 11 generates an error correction code to be added to data to be written to the flash memory 2, and detects and corrects errors included in the read data based on the error correction code added to the read data. Function block.
[Description of memory cell]
Next, a specific structure of the memory cell 16 constituting the flash memory 2 shown in FIG. 1 will be described with reference to FIGS.

図2は、フラッシュメモリを構成するメモリセル16の構造を概略的に示す断面図である。同図に示したように、メモリセル16は、P型半導体基板17に形成されたN型のソース拡散領域18及びドレイン拡散領域19と、ソース拡散領域18とドレイン拡散領域19との間のP型半導体基板17を覆って形成されたトンネル酸化膜20と、トンネル酸化膜20上に形成されたフローティングゲ―ト電極21と、フローティングゲート電極21上に形成された絶縁膜22と、絶縁膜22上に形成されたコントロールゲ―ト電極23とから構成される。このような構成を有するメモリセル16が、フラッシュメモリ内で複数個直列に接続されている。   FIG. 2 is a cross-sectional view schematically showing the structure of the memory cell 16 constituting the flash memory. As shown in the figure, the memory cell 16 includes an N-type source diffusion region 18 and a drain diffusion region 19 formed in the P-type semiconductor substrate 17, and a P between the source diffusion region 18 and the drain diffusion region 19. Tunnel oxide film 20 formed to cover type semiconductor substrate 17, floating gate electrode 21 formed on tunnel oxide film 20, insulating film 22 formed on floating gate electrode 21, and insulating film 22 The control gate electrode 23 is formed on the top. A plurality of memory cells 16 having such a configuration are connected in series in the flash memory.

メモリセル16は、フローティングゲート電極21に電子が注入されているか否かによって、「消去状態(電子が蓄積されていない状態)」と「書込状態(電子が蓄積されている状態)」のいずれかの状態が示される。ここで、1つのメモリセル16は1ビットのデ
ータに対応し、メモリセル16の「消去状態」が論理値の「1」のデータに対応し、メモリセル16の「書込状態」が論理値の「0」のデータに対応する。
The memory cell 16 has either an “erased state (a state where no electrons are accumulated)” or a “written state (a state where electrons are accumulated)” depending on whether electrons are injected into the floating gate electrode 21 or not. Is shown. Here, one memory cell 16 corresponds to 1-bit data, the “erased state” of the memory cell 16 corresponds to data of “1” of the logical value, and the “written state” of the memory cell 16 corresponds to the logical value. Corresponds to “0” data.

「消去状態」においては、フローティングゲート電極21に電子が蓄積されていないため、コントロールゲート電極23に読出し電圧(高レベル電圧)が印加されていないときには、ソース拡散領域18とドレイン拡散領域19との間の、P型半導体基板17の表面にチャネルが形成されず、ソース拡散領域18とドレイン拡散領域19は電気的に絶縁される。一方、コントロールゲート電極23に読出し電圧(高レベル電圧)が印加されると、ソース拡散領域18とドレイン拡散領域19との間の、P型半導体基板17の表面にチャネル(図示せず)が形成され、ソース拡散領域18とドレイン拡散領域19は、このチャネルによって電気的に接続される。   In the “erased state”, since electrons are not accumulated in the floating gate electrode 21, when the read voltage (high level voltage) is not applied to the control gate electrode 23, the source diffusion region 18 and the drain diffusion region 19 In the meantime, no channel is formed on the surface of the P-type semiconductor substrate 17, and the source diffusion region 18 and the drain diffusion region 19 are electrically insulated. On the other hand, when a read voltage (high level voltage) is applied to the control gate electrode 23, a channel (not shown) is formed on the surface of the P-type semiconductor substrate 17 between the source diffusion region 18 and the drain diffusion region 19. The source diffusion region 18 and the drain diffusion region 19 are electrically connected by this channel.

すなわち、「消去状態」においてはコントロールゲート電極23に読出し電圧(高レベル電圧)が印加されていない状態では、ソース拡散領域18とドレイン拡散領域19とは電気的に絶縁され、コントロールゲート電極23に読出し電圧(高レベル電圧)が印加された状態では、ソース拡散領域18とドレイン拡散領域19とは電気的に接続される。   That is, in the “erased state”, when the read voltage (high level voltage) is not applied to the control gate electrode 23, the source diffusion region 18 and the drain diffusion region 19 are electrically insulated, and the control gate electrode 23 In the state where the read voltage (high level voltage) is applied, the source diffusion region 18 and the drain diffusion region 19 are electrically connected.

図3は、「書込状態」であるメモリセル16を概略的に示す断面図である。同図に示したように、「書込状態」とは、フローティングゲート電極21に電子が蓄積されている状態を指す。フローティングゲート電極21はトンネル酸化膜20及び絶縁膜22に挟まれているため、一旦、フローティングゲート電極21に注入された電子は、きわめて長時間フローティングゲート電極21内にとどまる。この「書込状態」においては、フローティングゲート電極21に電子が蓄積されているので、コントロールゲート電極23に読出し電圧(高レベル電圧)が印加されているか否かに関わらず、ソース拡散領域18とドレイン拡散領域19との間の、P型半導体基板17の表面にはチャネル24が形成される。したがって、「書込状態」においてはソース拡散領域18とドレイン拡散領域19とは、コントロ―ルゲート電極23に読出し電圧(高レベル電圧)が印加されているか否かに関わらず、チャネル24によって常に電気的に接続状態となる。   FIG. 3 is a cross-sectional view schematically showing the memory cell 16 in the “written state”. As shown in the figure, the “written state” refers to a state in which electrons are accumulated in the floating gate electrode 21. Since the floating gate electrode 21 is sandwiched between the tunnel oxide film 20 and the insulating film 22, the electrons once injected into the floating gate electrode 21 stay in the floating gate electrode 21 for a very long time. In this “write state”, since electrons are accumulated in the floating gate electrode 21, regardless of whether or not a read voltage (high level voltage) is applied to the control gate electrode 23, A channel 24 is formed on the surface of the P-type semiconductor substrate 17 between the drain diffusion region 19. Therefore, in the “written state”, the source diffusion region 18 and the drain diffusion region 19 are always electrically connected by the channel 24 regardless of whether or not a read voltage (high level voltage) is applied to the control gate electrode 23. Connection state.

又、上記メモリセル16が消去状態であるか書込状態であるかは、次のようにして読み出すことができる。メモリセル16はフラッシュメモリ内で複数個直列に接続されている。この直列体の中で選択するメモリセル16に低レベル電圧を印加し、それ以外のメモリセル16のコントロールゲート電極23に高レベル電圧を印加する。この状態でメモリセル16の直列体が導通状態であるか否かの検出が行われる。その結果、この直列体が導通状態であれば、選択されたメモリセル16は書込状態であると判断され、絶縁状態であれば、選択されたフラッシュメモリセル16は消去状態であると判断される。このようにして、直列体に含まれる任意のメモリセル16に保持されたデータが「0」であるのか「1」であるのかを読み出すことができる。   Whether the memory cell 16 is in an erased state or a written state can be read as follows. A plurality of memory cells 16 are connected in series in the flash memory. A low level voltage is applied to the memory cell 16 selected in the series body, and a high level voltage is applied to the control gate electrode 23 of the other memory cells 16. In this state, it is detected whether or not the serial body of the memory cells 16 is in a conductive state. As a result, if the serial body is in a conductive state, it is determined that the selected memory cell 16 is in a written state, and if it is in an isolated state, it is determined that the selected flash memory cell 16 is in an erased state. The In this way, it is possible to read out whether the data held in any memory cell 16 included in the serial body is “0” or “1”.

又、消去状態であるメモリセル16を書込状態に変化させる場合は、コントロールゲート電極23が高電位側となる高電圧を印加し、トンネル酸化膜20を介してフローティングゲート電極21へ電子を注入する。この際、FN(ファウラ―ノルトハイム)トンネル電流が流れフロ―ティングゲート電極21に電子が注入される。一方、書込状態であるフラッシュメモリセル16を消去状態に変化させる場合は、コントロールゲート電極23が低電位側となる高電圧を印加し、トンネル酸化膜20を介してフローティングゲート電極21に蓄積された電子を排出する。
[フラッシュメモリのメモリ構造の説明]
次に、フラッシュメモリのメモリ構造を説明する。図4は、フラッシュメモリのメモリ構造を概略的に示す図である。図4に示したように、フラッシュメモリはデータの読出し及び書込みにおける処理単位であるページと、データの消去単位であるブロックで構成さ
れている。
When the memory cell 16 in the erased state is changed to the written state, a high voltage is applied so that the control gate electrode 23 is on the high potential side, and electrons are injected into the floating gate electrode 21 through the tunnel oxide film 20. To do. At this time, an FN (Fowler-Nordheim) tunnel current flows and electrons are injected into the floating gate electrode 21. On the other hand, when changing the flash memory cell 16 in the written state to the erased state, a high voltage is applied to the control gate electrode 23 on the low potential side, and the voltage is stored in the floating gate electrode 21 via the tunnel oxide film 20. Discharge electrons.
[Description of flash memory structure]
Next, the memory structure of the flash memory will be described. FIG. 4 schematically shows a memory structure of the flash memory. As shown in FIG. 4, the flash memory is composed of pages, which are processing units for reading and writing data, and blocks, which are data erasing units.

上記ページは、例えば512バイトのユーザ領域25と、16バイトの冗長領域26によって構成される。ユーザ領域25は、主に、ホストシステム4から供給されるデ―タが格納される領域であり、冗長領域26は、エラーコレクションコード、対応論理ブロックアドレス及びブロックステータス等の付加情報が格納される領域である。   The page is composed of, for example, a user area 25 of 512 bytes and a redundant area 26 of 16 bytes. The user area 25 is an area mainly storing data supplied from the host system 4, and the redundant area 26 stores additional information such as an error collection code, a corresponding logical block address and a block status. It is an area.

エラ―コレクションコードは、ユーザ領域25に格納されたデータに含まれる誤りを訂正するための付加情報であり、ECCブロックによって生成される。このエラ―コレクションコードに基づき、ユーザ領域25に格納されたデータに含まれる誤りが所定数以下であれば、その誤りが訂正される。   The error collection code is additional information for correcting an error included in the data stored in the user area 25, and is generated by an ECC block. Based on the error collection code, if the number of errors included in the data stored in the user area 25 is equal to or less than a predetermined number, the error is corrected.

対応論理ブロックアドレスは、そのブロックにデータが格納されている場合に、そのブロックがどの論理ブロックアドレスに対応するかを示している。尚、そのブロックにデータが格納されていない場合は、対応論理ブロックアドレスも格納されていないので、対応論理ブロックアドレスが格納されているか否かで、そのブロックが消去済ブロックであるか否かを判断することができる。つまり、対応論理ブロックアドレスが格納されていない場合は消去済ブロックであると判断する。   The corresponding logical block address indicates to which logical block address the block corresponds when data is stored in the block. If no data is stored in the block, the corresponding logical block address is not stored. Therefore, whether or not the block is an erased block depends on whether or not the corresponding logical block address is stored. Judgment can be made. That is, if the corresponding logical block address is not stored, it is determined that the block is an erased block.

ブロックステータスは、そのブロックが不良ブロック(正常にデータの書込み等を行なうことができないブロック)であるか否かを示すフラグであり、そのブロックが不良ブロックであると判断された場合には、不良ブロックであることを示すフラグが設定される。   The block status is a flag indicating whether or not the block is a bad block (a block in which data cannot be normally written). If it is determined that the block is a bad block, the block status is bad. A flag indicating a block is set.

又、フラッシュメモリはデータの上書きができないため、データの書替えを行なう場合には、ブロック消去されている消去済ブロックに新たなデータ(書替後のデータ)を書込み、古いデータ(書替前のデータ)が書込まれていたブロックを消去するという処理を行なわなければならない。この際、消去はブロック単位で処理されるため、古いデータ(書替前のデータ)が書込まれていたページが含まれるブロックの、全ページのデータが消去されてしまう。従って、データの書替えを行なう場合、書替えるページが含まれるブロックの、他のページのデータについても、消去済ブロックに移動させる処理が必要となる。   In addition, since data cannot be overwritten in the flash memory, when data is rewritten, new data (data after rewriting) is written to the erased block that has been erased, and old data (before rewriting) is written. A process of erasing a block in which (data) has been written must be performed. At this time, since erasure is processed in units of blocks, data of all pages of a block including a page in which old data (data before rewriting) is written is erased. Therefore, when data is rewritten, it is necessary to perform processing for moving the data of other pages of the block including the page to be rewritten to the erased block.

上記のようにデータを書替える場合、書替後のデータは書替前と異なるブロックに書込まれるため、ホストシステム側から与えられる論理ブロックアドレスと、フラッシュメモリ内でのブロックアドレスである物理ブロックアドレスとの対応関係は、データを書替える毎に動的に変化する。このため、論理ブロックアドレスと物理ブロックアドレスの対応関係を示したアドレス変換テーブルが必要となる。尚、このアドレス変換テーブルは、フラッシュメモリの冗長領域に書込まれている対応論理ブロックアドレスに基づいて作成され、データが書替えられる毎に、その書替えに関わった部分の対応関係が更新される。
[フラッシュメモリに対する書込み処理の説明]
フラッシュメモリの内部では、受信したデータが、一旦、レジスタに保持され、レジスタに保持されたデータが、メモリセルアレイを構成する各メモリセルに書込まれる。このレジスタからメモリセルアレイへの複写動作では、上述のように、メモリセルに高電圧を印加して、そのメモリセルに対応するビットの論理値を変化させているので、実行時間が長くなり、書込処理の処理効率を低下させている。
When rewriting data as described above, since the data after rewriting is written in a different block from before rewriting, the logical block address given from the host system side and the physical block which is the block address in the flash memory The correspondence with the address changes dynamically every time data is rewritten. For this reason, an address conversion table showing the correspondence between logical block addresses and physical block addresses is required. This address conversion table is created based on the corresponding logical block address written in the redundant area of the flash memory, and each time the data is rewritten, the correspondence relationship of the part involved in the rewriting is updated.
[Description of writing to flash memory]
Within the flash memory, the received data is temporarily held in a register, and the data held in the register is written into each memory cell constituting the memory cell array. In the copying operation from this register to the memory cell array, as described above, a high voltage is applied to the memory cell and the logical value of the bit corresponding to the memory cell is changed. The processing efficiency of embedded processing is reduced.

又、レジスタからメモリセルアレイへのデータ複写を実行している間、フラッシュメモリはビジー状態を示す信号(以下、ビジー状態であるか否かを示す信号をビジー信号と言う。)を出力し、他の処理要求を受付けない状態になる。ここで、ビジー信号を各チップ(フラッシュメモリのチップ)毎に検出するようにすれば、ビジー状態のチップとビジー状態でないチップを判別することができる。しかし、メモリコントローラ内に、ビジー信
号を検出する検出回路を各チップ毎に設け、各チップと検出回路をライン接続しなければならない。一方、各チップが出力するビジー信号を1つの検出回路で検出するようにすると、各チップが出力するビジー信号が共通ラインに出力されることになる。従って、複数チップのうちいずれかのチップがビジー状態であることは分かるが、ビジー状態のチップとビジー状態でないチップを判別することができない。つまり、ビジー信号を出力するラインを共通ラインとした場合、ビジー信号を出力する検出回路やラインは1つ設けるだけでよいが、いずれかのチップがビジー状態のときに他の処理を行なえなくなる。そこで、本発明に係る書込み処理では、ビジー信号を出力するライン(共通ライン)がビジー状態を示している期間(いずれかのチップがビジー状態になっている期間)を短くすることにより、書込み処理の処理効率を向上させている。
Further, while executing data copying from the register to the memory cell array, the flash memory outputs a signal indicating a busy state (hereinafter, a signal indicating whether it is in a busy state is referred to as a busy signal), and the like. The processing request is not accepted. Here, if the busy signal is detected for each chip (chip of the flash memory), it is possible to distinguish between a busy chip and a non-busy chip. However, a detection circuit for detecting a busy signal must be provided for each chip in the memory controller, and each chip and the detection circuit must be connected in a line. On the other hand, when the busy signal output from each chip is detected by one detection circuit, the busy signal output from each chip is output to the common line. Accordingly, it can be understood that any one of the plurality of chips is busy, but a chip that is busy and a chip that is not busy cannot be distinguished. In other words, if the line that outputs the busy signal is a common line, only one detection circuit or line that outputs the busy signal may be provided, but no other processing can be performed when any of the chips is busy. Therefore, in the write process according to the present invention, the write process is performed by shortening the period during which the line outputting the busy signal (common line) shows the busy state (the period during which any chip is in the busy state). The processing efficiency is improved.

ここで、本発明に係る書込み処理と比較するために、従来の書込み処理(ビジー信号を出力するラインを共通ラインとした場合)について、図7を参照して説明する。図7には、チップ0のフラッシュメモリに対する書込み処理における信号波形と、チップ1のフラッシュメモリに対する書込み処理における信号波形が示されている。   Here, in order to compare with the writing process according to the present invention, a conventional writing process (when a line outputting a busy signal is a common line) will be described with reference to FIG. FIG. 7 shows signal waveforms in the writing process to the flash memory of chip 0 and signal waveforms in the writing process to the flash memory of chip 1.

図7で、S21はフラッシュメモリのデータバスに供給される信号を示し、S22はチップ0のフラッシュメモリのチップイネーブル端子に供給される信号を示し、S23はチップ1のフラッシュメモリのチップイネーブル端子に供給される信号を示し、S24はフラッシュメモリがビジー信号を出力するライン(共通ライン)の信号を示している。ここで、データバスはチップ0とチップ1のフラッシュメモリが共有し、ビジー信号を出力するラインはチップ0とチップ1のフラッシュメモリの共通ラインになっている。又、チップ0とチップ1のフラッシュメモリは、チップイネーブル端子に供給される信号が低レベルのときに活性化する。又、チップ0とチップ1のフラッシュメモリは、ビジー状態になっている期間中、ビジー状態を示す低レベルの信号を出力する。   7, S21 indicates a signal supplied to the data bus of the flash memory, S22 indicates a signal supplied to the chip enable terminal of the flash memory of chip 0, and S23 indicates a chip enable terminal of the flash memory of chip 1. S24 indicates a signal to be supplied, and S24 indicates a signal of a line (common line) from which the flash memory outputs a busy signal. Here, the data bus is shared by the flash memories of chip 0 and chip 1, and the line for outputting the busy signal is a common line of the flash memories of chip 0 and chip 1. The flash memories of chip 0 and chip 1 are activated when the signal supplied to the chip enable terminal is at a low level. Further, the flash memories of chip 0 and chip 1 output a low level signal indicating the busy state during the busy state.

チップ0のフラッシュメモリに対する書込み処理では、チップ0のフラッシュメモリのチップイネーブル端子に供給される信号が低レベルとなり(S22)、この低レベルの期間中に、データバスに対して、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドC、書込み先のアドレスA、書込みデータD0〜Dn、及びレジスタに保持されているデータを、メモリセルアレイを構成するメモリセルに複写するコマンドC’が順次供給される(S21)。ここで、チップ0のフラッシュメモリが、コマンドC’に基づいて、アドレスAで指定されたメモリセルに、レジスタに保持されているデータを複写する動作を開始すると、チップ0のフラッシュメモリはビジー状態となり、ビジー状態を示す低レベルの信号を出力する。又、チップ0のフラッシュメモリが、ビジー状態を示す低レベルの信号を出力するため、ビジー信号を出力する共通ラインもビジー状態を示す低レベルになる(S24)。   In the writing process to the flash memory of the chip 0, the signal supplied to the chip enable terminal of the flash memory of the chip 0 becomes a low level (S22), and the write data is flashed to the data bus during this low level period. A command C for transferring to a register in the memory, a write destination address A, write data D0 to Dn, and a command C ′ for copying the data held in the register to the memory cells constituting the memory cell array are sequentially supplied. (S21). Here, when the flash memory of the chip 0 starts the operation of copying the data held in the register to the memory cell specified by the address A based on the command C ′, the flash memory of the chip 0 is busy. And a low level signal indicating a busy state is output. Further, since the flash memory of the chip 0 outputs a low level signal indicating the busy state, the common line for outputting the busy signal is also set to the low level indicating the busy state (S24).

ビジー信号を出力する共通ラインがビジー状態を示す低レベルの期間は、いずれのフラッシュメモリに対してもアクセスを行なうことができないので、ビジー状態が解除されてビジー信号を出力する共通ラインが高レベルになった後に、次の処理が開始される。つまり、チップ1のフラッシュメモリに対する書込み処理は、ビジー信号を出力する共通ラインが高レベルになった後に開始される。このチップ1のフラッシュメモリに対する書込み処理では、チップ1のフラッシュメモリのチップイネーブル端子に供給される信号が低レベルとなり(S23)、この低レベルの期間中に、データバスに対して、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドC、書込み先のアドレスA、書込みデータD0〜Dn、及びレジスタに保持されているデータを、メモリセルアレイを構成するメモリセルに複写するコマンドC’が順次供給される(S21)。ここで、チップ1のフラッシュメモリが、コマンドC’に基づいて、アドレスAで指定されたメモリセルに、レジスタに保持されているデータを複写する動作を開始すると、チップ1のフラッシュメモ
リはビジー状態となり、ビジー状態を示す低レベルの信号を出力する。又、チップ1のフラッシュメモリが、ビジー状態を示す低レベルの信号を出力するため、ビジー信号を出力する共通ラインもビジー状態を示す低レベルになる(S24)。
During the low level period when the common line that outputs the busy signal is in a busy state, no flash memory can be accessed, so the common line that outputs the busy signal after the busy state is released is at the high level. Then, the next process is started. That is, the writing process to the flash memory of the chip 1 is started after the common line for outputting the busy signal becomes high level. In the writing process to the flash memory of the chip 1, the signal supplied to the chip enable terminal of the flash memory of the chip 1 becomes a low level (S23), and the write data is transferred to the data bus during the low level period. A command C to be transferred to a register in the flash memory, a write destination address A, write data D0 to Dn, and a command C ′ for copying the data held in the register to the memory cells constituting the memory cell array are sequentially supplied. (S21). Here, when the flash memory of the chip 1 starts the operation of copying the data held in the register to the memory cell designated by the address A based on the command C ′, the flash memory of the chip 1 is busy. And a low level signal indicating a busy state is output. Further, since the flash memory of the chip 1 outputs a low level signal indicating the busy state, the common line for outputting the busy signal is also set to the low level indicating the busy state (S24).

上述のように、従来の書込み処理では、書込み処理の処理単位である1ページ分のデータを書込む毎に、ビジー信号を出力する共通ラインがビジー状態を示す低レベルになる。従って、1回の書込み処理で発生するビジー状態の期間をTとすれば、Mページ分の書込み処理で発生するビジー状態の期間(総計)は、T×Mになる。   As described above, in the conventional writing process, every time data for one page, which is a processing unit of the writing process, is written, the common line for outputting the busy signal becomes a low level indicating a busy state. Accordingly, if the busy state period generated by one write process is T, the busy state period (total) generated by the write process for M pages is T × M.

次に、本発明に係る書込み処理について、図5を参照して説明する。図5は、チップ0〜チップNのフラッシュメモリに対して書込み処理を行なう場合の信号波形を示している。図5で、S11はフラッシュメモリのデータバスに供給される信号を示し、S12はチップ0のフラッシュメモリのチップイネーブル端子に供給される信号を示し、S13はチップ1のフラッシュメモリのチップイネーブル端子に供給される信号を示し、S14はチップNのフラッシュメモリのチップイネーブル端子に供給される信号を示し、S15はチップ0〜チップNのフラッシュメモリがビジー信号を出力するライン(共通ライン)の信号を示している。ここで、データバスはチップ0〜チップNのフラッシュメモリが共有し、ビジー信号を出力するラインはチップ0〜チップNのフラッシュメモリの共通ラインになっている。又、チップ0〜チップNのフラッシュメモリは、チップイネーブル端子に供給される信号が低レベルのときに活性化する。又、チップ0〜チップNのフラッシュメモリは、ビジー状態になっている期間中、ビジー状態を示す低レベルの信号を出力する。   Next, the writing process according to the present invention will be described with reference to FIG. FIG. 5 shows signal waveforms when writing processing is performed on the flash memories of chip 0 to chip N. In FIG. 5, S11 indicates a signal supplied to the data bus of the flash memory, S12 indicates a signal supplied to the chip enable terminal of the flash memory of chip 0, and S13 indicates a chip enable terminal of the flash memory of chip 1. S14 indicates a signal supplied to the chip enable terminal of the flash memory of chip N, and S15 indicates a signal of a line (common line) from which the flash memory of chip 0 to chip N outputs a busy signal. Show. Here, the data bus is shared by the flash memories of chip 0 to chip N, and a line for outputting a busy signal is a common line of the flash memories of chip 0 to chip N. The flash memories of chip 0 to chip N are activated when the signal supplied to the chip enable terminal is at a low level. The flash memories of chip 0 to chip N output a low level signal indicating the busy state during the busy state.

図5に示した書込み処理では、チップ0〜チップNのフラッシュメモリ内のレジスタに、書込みデータが順次転送され、その後、レジスタからメモリセルアレイへの複写が、チップ0〜チップNのフラッシュメモリ内で同時に行なわれる。   In the write processing shown in FIG. 5, the write data is sequentially transferred to the registers in the flash memory of chip 0 to chip N, and then the copy from the register to the memory cell array is performed in the flash memory of chip 0 to chip N. Done at the same time.

チップ0〜チップNのフラッシュメモリ内のレジスタに、書込みデータを転送する動作では、チップ0〜チップNのフラッシュメモリのチップイネーブル端子に供給される信号が順次低レベルとなり(S12、S13、S14)、この低レベルの期間中に、データバスに対して、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドC、書込み先のアドレスA、及び書込みデータD0〜Dnが順次供給される(S11)。ここで、チップ0のフラッシュメモリのチップイネーブル端子に供給される信号が低レベルの期間中に(S12)、データバスに供給される信号(コマンドC、アドレスA、データD0〜Dn)はチップ0のフラッシュメモリに対して有効になり、チップ1のフラッシュメモリのチップイネーブル端子に供給される信号が低レベルの期間中に(S13)、データバスに供給される信号(コマンドC、アドレスA、データD0〜Dn)はチップ1のフラッシュメモリに対して有効になり、以下同様にして、チップNのフラッシュメモリのチップイネーブル端子に供給される信号が低レベルの期間中に(S14)、データバスに供給される信号(コマンドC、アドレスA、データD0〜Dn)はチップNのフラッシュメモリに対して有効になる。   In the operation of transferring the write data to the registers in the flash memories of chip 0 to chip N, the signals supplied to the chip enable terminals of the flash memories of chip 0 to chip N are sequentially lowered (S12, S13, S14). During this low level period, a command C for transferring write data to a register in the flash memory, a write destination address A, and write data D0 to Dn are sequentially supplied to the data bus (S11). Here, during the period when the signal supplied to the chip enable terminal of the flash memory of chip 0 is at a low level (S12), the signals (command C, address A, data D0 to Dn) supplied to the data bus are During the period when the signal supplied to the chip enable terminal of the flash memory of chip 1 is at a low level (S13), the signal supplied to the data bus (command C, address A, data D0 to Dn) are valid for the flash memory of chip 1, and in the same manner, during the period when the signal supplied to the chip enable terminal of the flash memory of chip N is at a low level (S14), The supplied signals (command C, address A, data D0 to Dn) are valid for the flash memory of chip N.

前記転送動作で、チップ0〜チップNのフラッシュメモリ内のレジスタに転送された書込みデータを、メモリセルアレイを構成するメモリセルに複写する動作では、チップ0〜チップNのフラッシュメモリのチップイネーブル端子に供給される信号が全て低レベルとなり(S12、S13、S14)、この低レベルの期間中に、データバスに対して、レジスタに保持されているデータを、メモリセルアレイを構成するメモリセルに複写するコマンドC’が供給される(S11)。ここで、コマンドC’は、チップ0〜チップNの全てフラッシュメモリに対して有効になるので、チップ0〜チップNの各フラッシュメモリ内で、アドレスAで指定されたメモリセルに、レジスタに保持されているデータを複写する動作が開始される。この複写動作が開始されると、チップ0〜チップNのフラッシュメモ
リが全てビジー状態となり、ビジー状態を示す低レベルの信号を出力するため、ビジー信号を出力する共通ラインもビジー状態を示す低レベルになる(S15)。ビジー信号を出力する共通ラインは、チップ0〜チップNのフラッシュメモリのビジー状態が全て解除されるまで低レベルで保持されが、チップ0〜チップNのフラッシュメモリにおける複写動作は、同時進行するので、ビジー信号を出力する共通ラインが低レベルの期間は、チップ0〜チップNの各フラッシュメモリが、単独で複写動作しているときに発生するビジー状態の期間とほとんど変らない。
In the transfer operation, the write data transferred to the registers in the flash memory of chip 0 to chip N is copied to the memory cells constituting the memory cell array. All the supplied signals become low level (S12, S13, S14), and during this low level period, the data held in the register is copied to the memory cells constituting the memory cell array for the data bus. Command C ′ is supplied (S11). Here, since the command C ′ is valid for all the flash memories from chip 0 to chip N, the command C ′ is held in the register in the memory cell specified by address A in each flash memory of chip 0 to chip N. The operation of copying the stored data is started. When this copying operation is started, all the flash memories of chip 0 to chip N are in a busy state and output a low level signal indicating the busy state. Therefore, the common line for outputting the busy signal is also a low level indicating the busy state. (S15). The common line for outputting the busy signal is held at a low level until the busy states of the flash memories of chip 0 to chip N are all released, but the copying operation in the flash memories of chip 0 to chip N proceeds simultaneously. The period when the common line for outputting the busy signal is low is almost the same as the period of the busy state that occurs when each of the flash memories of chip 0 to chip N is performing the copying operation alone.

本発明に係る書込み処理では、ビジー信号を出力する共通ラインが低レベルの期間が、複写動作を同時に行なうフラッシュメモリの数(チップ数)に応じて削減される。例えば、1回の書込み処理(複写動作)で発生するビジー状態の期間をTとして、従来の書込み処理でMページ分の書込み処理を行なった場合、ビジー信号を出力する共通ラインが低レベルになる期間は総計でT×Mになる。一方、本発明に係る書込み処理(N+1個のチップのフラッシュメモリが同時に複写動作をする書込み処理)で、同じページ数の書込み処理を行なった場合、ビジー信号を出力する共通ラインが低レベルになる期間は総計でT×M/(N+1)になる。又、レジスタに保持されているデータを、メモリセルアレイを構成するメモリセルに複写するコマンドC’を出力する回数もM回からM/(N+1)回に削減されるので、コマンドC’の出力にかかる時間も短縮される。   In the writing process according to the present invention, the period during which the common line for outputting the busy signal is at a low level is reduced according to the number of flash memories (the number of chips) simultaneously performing the copying operation. For example, when a period of busy state that occurs in one writing process (copying operation) is T and a writing process for M pages is performed in the conventional writing process, the common line that outputs the busy signal becomes low level. The total period is TxM. On the other hand, when the write process of the same number of pages is performed in the write process according to the present invention (the write process in which the flash memory of N + 1 chips simultaneously performs the copying operation), the common line for outputting the busy signal becomes low level. The total period is T × M / (N + 1). In addition, since the number of times of outputting the command C ′ for copying the data held in the register to the memory cells constituting the memory cell array is reduced from M times to M / (N + 1) times, the command C ′ is output. Such time is also shortened.

又、図5に示した書込み処理では、チップ0〜チップNの各フラッシュメモリ毎に、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドCを供給したが、図6に示した書込み処理のように、コマンドCについてもチップ0〜チップNの各ラッシュメモリに同時に供給するようにしてもよい。この処理では、チップ0〜チップNのフラッシュメモリのチップイネーブル端子に供給される信号を全て低レベルとした状態で(S12、S13、S14)、書込みデータをフラッシュメモリ内のレジスタに転送するコマンドCが供給される(S11’)。コマンドCは、チップ0〜チップNの全てフラッシュメモリに対して有効になるので、その後、各フラッシュメモリに対しては、書込み先のアドレスA、及び書込みデータD0〜Dnが順次供給される(S11’)。従って、この処理では、コマンドCの出力にかかる時間が短縮される。   In the write process shown in FIG. 5, a command C for transferring write data to a register in the flash memory is supplied to each flash memory of chip 0 to chip N. As shown in the write process of FIG. In addition, the command C may be simultaneously supplied to the rush memories of the chip 0 to the chip N. In this process, a command C for transferring write data to a register in the flash memory with all the signals supplied to the chip enable terminals of the flash memories of chip 0 to chip N being at a low level (S12, S13, S14). Is supplied (S11 ′). Since the command C is valid for all the flash memories of the chip 0 to the chip N, the write destination address A and the write data D0 to Dn are sequentially supplied to each flash memory thereafter (S11). '). Therefore, in this process, the time taken to output the command C is shortened.

尚、本発明に係る書込み処理では、同時に複写動作をするフラッシュメモリのチップ数は特に限定されないが、少なくとも2チップのフラッシュメモリが複写動作を同時に行なえば、ビジー信号を出力する共通ラインが低レベルになる期間が50%削減される。   In the write processing according to the present invention, the number of chips of the flash memory that simultaneously performs the copying operation is not particularly limited. However, if at least two chips of the flash memory simultaneously perform the copying operation, the common line that outputs the busy signal has a low level. Is reduced by 50%.

図1は、本発明に係るフラッシュメモリシステムを概略的に示すブロック図である。FIG. 1 is a block diagram schematically showing a flash memory system according to the present invention. 図2は、フラッシュメモリを構成するメモリセルの構造を概略的に示す断面図である。FIG. 2 is a cross-sectional view schematically showing the structure of the memory cell constituting the flash memory. 図3は、書込状態であるメモリセルを概略的に示す断面図である。FIG. 3 is a cross-sectional view schematically showing a memory cell in a written state. 図4は、フラッシュメモリのアドレス空間の構造を概略的に示す図である。FIG. 4 is a diagram schematically showing the structure of the address space of the flash memory. 図5は、フラッシュメモリに入力される信号とフラッシュメモリから出力される信号を示す波形図である(本発明に係る書込み処理)。FIG. 5 is a waveform diagram showing signals input to the flash memory and signals output from the flash memory (write processing according to the present invention). 図6は、フラッシュメモリに入力される信号とフラッシュメモリから出力される信号を示す波形図である(本発明に係る書込み処理)。FIG. 6 is a waveform diagram showing signals input to the flash memory and signals output from the flash memory (write processing according to the present invention). 図7は、フラッシュメモリに入力される信号とフラッシュメモリから出力される信号を示す波形図である(従来の書込み処理)。FIG. 7 is a waveform diagram showing signals input to the flash memory and signals output from the flash memory (conventional write processing).

符号の説明Explanation of symbols

1 フラッシュメモリシステム
2 フラッシュメモリ
3 コントローラ
4 ホストコンピュータ
5 ホストインターフェース制御ブロック
6 マイクロプロセッサ
7 ホストインターフェースブロック
8 ワークエリア
9 バッファ
10 フラッシュメモリインターフェースブロック
11 ECCブロック
12 フラッシュメモリシーケンサブロック
13 外部バス
14 内部バス
16 メモリセル
17 P型半導体基板
18 ソース拡散領域
19 ドレイン拡散領域
20 トンネル酸化膜
21 フローティングゲート電極
22 絶縁膜
23 コントロールゲート電極
24 チャネル
25 ユーザ領域
26 冗長領域
DESCRIPTION OF SYMBOLS 1 Flash memory system 2 Flash memory 3 Controller 4 Host computer 5 Host interface control block 6 Microprocessor 7 Host interface block 8 Work area 9 Buffer 10 Flash memory interface block 11 ECC block 12 Flash memory sequencer block 13 External bus 14 Internal bus 16 Memory Cell 17 P-type semiconductor substrate 18 Source diffusion region 19 Drain diffusion region 20 Tunnel oxide film 21 Floating gate electrode 22 Insulating film 23 Control gate electrode 24 Channel 25 User region 26 Redundant region

Claims (5)

ホストシステムからの要求に基づいて、共通のバスに接続された複数チップのフラッシュメモリに対するアクセスを制御するメモリコントローラであって、
前記バスを介して、前記複数チップのフラッシュメモリ内のデータ保持部に書込みデータを転送するデータ転送機能と、
前記データ保持部に保持されている書込みデータを、前記フラッシュメモリ内のメモリセルに複写する複写処理を開始する指示を、前記バスを介して、前記複数チップのフラッシュメモリに与える指示機能と、
前記複数チップのフラッシュメモリの活性化状態を個別に制御する制御機能とを備え、
前記転送機能が動作している期間は、前記制御機能が前記複数チップのフラッシュメモリを1つずつ順次活性化させていくことにより、前記ホストシステムから与えられる書込みデータが前記複数チップのフラッシュメモリに順次振り分けられ、
前記指示機能が動作している期間は、前記制御機能が前記複数チップのフラッシュメモリの全てを活性化させることにより、前記複数チップのフラッシュメモリが共通の指示に基づいて前記複写処理を開始することを特徴とするメモリコントローラ。
Based on the request of the host system or al, a memory controller that controls access to the flash memory of the plurality of connected chips to a common bus,
A data transfer function for transferring write data to a data holding unit in the flash memory of the plurality of chips via the bus ;
An instruction function for giving an instruction to start a copying process for copying write data held in the data holding unit to a memory cell in the flash memory to the flash memories of the plurality of chips via the bus ;
A control function for individually controlling the activation state of the flash memory of the plurality of chips ,
During the period when the transfer function is operating, the control function sequentially activates the flash memories of the plurality of chips one by one, so that the write data given from the host system is transferred to the flash memories of the plurality of chips. Sorted sequentially,
During the period when the instruction function is operating, the control function activates all of the flash memories of the plurality of chips, so that the flash memories of the plurality of chips start the copying process based on a common instruction. A memory controller featuring.
前記複数チップのフラッシュメモリからそれぞれ出力される信号であって、前記複写処理を実行していることを示すビジー信号を、共通の信号線を介して検出する検出機能を更に備え、
前記検出機能がビジー信号を検出している期間は、前記転送機能及び前記指示機能が動作しないように構成されていることを特徴とする請求項1記載のメモリコントローラ。
Wherein a plurality of chips signals outputted from the flash memory, a busy signal indicating that it is executing the copy processing, further comprising a detection function of detecting via a common signal line,
The memory controller of claim 1 wherein the detection period that detects a busy signal, characterized in that the transfer function and the indicating function is configured not to operate.
請求項1又は2に記載のメモリコントローラと複数チップのフラッシュメモリを備えることを特徴とするフラッシュメモリシステム。 Flash memory system comprising: a flash memory of the memory controller and a plurality of chips according to claim 1 or 2. ホストシステムからの要求に基づいて、共通のバスに接続された複数チップのフラッシュメモリに対するアクセスを制御するフラッシュメモリの制御方法であって、
前記バスを介して、前記複数チップのフラッシュメモリ内のデータ保持部に書込みデータを転送する転送処理と、
前記データ保持部に保持されてい書込みデータを、前記フラッシュメモリ内のメモリセルに複写する複写処理を開始する指示を、前記バスを介して、前記複数チップのフラッシュメモリに与える指示処理と、
前記複数チップのフラッシュメモリの活性化状態を個別に制御する制御処理とを含み、
前記転送処理の実行中は、前記制御処理により前記複数チップのフラッシュメモリを1つずつ順次活性化させていくことにより、前記ホストシステムから与えられる書込みデータが前記複数チップのフラッシュメモリに順次振り分けられ、
前記指示処理の実行中は、前記制御処理により前記複数チップのフラッシュメモリを全て活性化させることにより、前記複数チップのフラッシュメモリが共通の指示に基づいて前記複写処理を開始することを特徴とするフラッシュメモリの制御方法。
Based on the request of the host system or al, A method of controlling a flash memory to control access to the flash memory of the plurality of connected chips to a common bus,
A transfer process for transferring write data to a data holding unit in the flash memory of the plurality of chips via the bus ;
The write data that is held in the data holding unit, an instruction to start the copying process for copying the memory cell in the flash memory, via said bus, the instruction processing to be supplied to the flash memory of the plurality of chips,
Control processing for individually controlling the activation state of the flash memory of the plurality of chips ,
During the execution of the transfer process, the plurality of chips of flash memory are sequentially activated one by one by the control process, so that write data given from the host system is sequentially distributed to the plurality of chips of flash memory. ,
During execution of the instruction process, the control process activates all the flash memories of the plurality of chips, so that the flash memories of the plurality of chips start the copying process based on a common instruction. Flash memory control method.
複数チップのフラッシュメモリからそれぞれ出力される信号であって、前記複写処理を実行していることを示すビジー信号を、共通の信号線を介して検出する検出処理を更に含み、
前記検出処理によりビジー信号が検出されている期間は、前記転送処理及び前記指示処理が実行されないことを特徴とする請求項4に記載のフラッシュメモリの制御方法。
A detection process for detecting, via a common signal line, a busy signal indicating that the copying process is being performed, which is a signal output from each of the flash memories of a plurality of chips ,
5. The flash memory control method according to claim 4 , wherein the transfer process and the instruction process are not executed during a period in which a busy signal is detected by the detection process.
JP2004020762A 2004-01-29 2004-01-29 MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD Expired - Lifetime JP4561110B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004020762A JP4561110B2 (en) 2004-01-29 2004-01-29 MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004020762A JP4561110B2 (en) 2004-01-29 2004-01-29 MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD

Publications (2)

Publication Number Publication Date
JP2005215918A JP2005215918A (en) 2005-08-11
JP4561110B2 true JP4561110B2 (en) 2010-10-13

Family

ID=34904597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004020762A Expired - Lifetime JP4561110B2 (en) 2004-01-29 2004-01-29 MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD

Country Status (1)

Country Link
JP (1) JP4561110B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4991811B2 (en) * 2009-09-16 2012-08-01 株式会社東芝 Nonvolatile semiconductor memory device and test method thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06324937A (en) * 1993-05-13 1994-11-25 Ricoh Co Ltd Memory card
JPH08171623A (en) * 1994-12-19 1996-07-02 Sharp Corp Parallel processing method for ic card and flash memory
JPH11144479A (en) * 1997-11-10 1999-05-28 New Koa Technology Kk Nonvolatile semiconductor multivalue memory device
WO2003030181A1 (en) * 2001-09-28 2003-04-10 Tokyo Electron Device Limited Data writing apparatus, data writing method, and program
WO2003060722A1 (en) * 2002-01-09 2003-07-24 Renesas Technology Corp. Memory system and memory card

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06324937A (en) * 1993-05-13 1994-11-25 Ricoh Co Ltd Memory card
JPH08171623A (en) * 1994-12-19 1996-07-02 Sharp Corp Parallel processing method for ic card and flash memory
JPH11144479A (en) * 1997-11-10 1999-05-28 New Koa Technology Kk Nonvolatile semiconductor multivalue memory device
WO2003030181A1 (en) * 2001-09-28 2003-04-10 Tokyo Electron Device Limited Data writing apparatus, data writing method, and program
WO2003060722A1 (en) * 2002-01-09 2003-07-24 Renesas Technology Corp. Memory system and memory card

Also Published As

Publication number Publication date
JP2005215918A (en) 2005-08-11

Similar Documents

Publication Publication Date Title
JP4834676B2 (en) System and method using on-chip non-volatile memory write cache
US7409473B2 (en) Off-chip data relocation
JP2004507007A (en) Novel method and structure for performing a reliable data copy process on non-volatile memory
KR100626393B1 (en) Nonvolatile Memory Device and Its Multi-Page Copyback Method
US11221945B2 (en) Semiconductor memory device
JP4236485B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP2010128697A (en) Memory system
JP4561110B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4433792B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4177292B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM, AND FLASH MEMORY CONTROL METHOD
JP4461754B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP2005292925A (en) Memory controller, flash memory system, and control method for flash memory
JP4213053B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4177301B2 (en) Memory controller, flash memory system, and flash memory control method
JP4419525B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4282410B2 (en) Flash memory control circuit, and memory controller and flash memory system provided with the control circuit
JP4304167B2 (en) Memory controller, flash memory system, and flash memory control method
JP4194518B2 (en) Memory controller, flash memory system, and flash memory control method
JP4068594B2 (en) Flash memory controller, flash memory system, and flash memory control method
JP4332108B2 (en) Memory controller, flash memory system, and flash memory control method
US8886989B2 (en) Memory device
JP4282401B2 (en) Flash memory control circuit, and memory controller and flash memory system provided with the control circuit
JP4222879B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4366283B2 (en) Memory controller and flash memory system including the memory controller
JP4251950B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100617

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100706

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100719

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4561110

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

EXPY Cancellation because of completion of term