JP3747213B1 - シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ - Google Patents

シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ Download PDF

Info

Publication number
JP3747213B1
JP3747213B1 JP2005232516A JP2005232516A JP3747213B1 JP 3747213 B1 JP3747213 B1 JP 3747213B1 JP 2005232516 A JP2005232516 A JP 2005232516A JP 2005232516 A JP2005232516 A JP 2005232516A JP 3747213 B1 JP3747213 B1 JP 3747213B1
Authority
JP
Japan
Prior art keywords
data
flash memory
nand flash
host system
address
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.)
Active
Application number
JP2005232516A
Other languages
English (en)
Other versions
JP2007048090A (ja
Inventor
雄司 大石
浩道 織部
貴秀 北島
Original Assignee
株式会社ハギワラシスコム
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 株式会社ハギワラシスコム filed Critical 株式会社ハギワラシスコム
Priority to JP2005232516A priority Critical patent/JP3747213B1/ja
Application granted granted Critical
Publication of JP3747213B1 publication Critical patent/JP3747213B1/ja
Publication of JP2007048090A publication Critical patent/JP2007048090A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】シーケンシャルROMインターフェースを具備するホストシステムをNAND型フラッシュメモリーにアクセス可能に改良すること、及び、該改良されたホストシステムからアクセス可能なNAND型フラッシュメモリーデバイスの提供。
【解決手段】ホストシステムのシーケンシャルROMインターフェースにWait信号入力部を設け、前記Wait信号入力部にWaitが挿入されている間、アクセス対象に対するデータ読み出し信号の送出を待機するよう構成した。また、NAND型フラッシュメモリーデバイスを、コントローラとNAND型フラッシュメモリーとで構成し、コントローラには、Wait信号出力端子を有するシーケンシャルROMインターフェースを設けた。
【選択図】図1

Description

本発明は、ホストシステムのシーケンシャルROMインターフェースからアクセス可能なNAND型フラッシュメモリーデバイス及びそのコントローラに関する。
ストレージ用として様々なメモリが提供されている。例えばマスクROMは製造時にデータが書き込まれるもので、データのランダム読み出しの他、シーケンシャル読み出しにも使用されている。
また近年、フラッシュメモリーと呼ばれる半導体メモリが普及している。とりわけNAND型フラッシュメモリーはアレイ構造上シーケンシャル読み出しに向いている。特にコンピュータプログラムのコードデータ、画像データ、音声データなどは、その性質上、シーケンシャルに読み出されることが好ましい。
ところで、ホストシステムからメモリへアクセスするには、ホストシステムとメモリのそれぞれの共通するインターフェースを介して行われる必要がある。例えば、NAND型フラッシュメモリーにアクセスするには、ホストシステムにNANDI/Fを具備する必要がある。この点、マスクROM用に設けたホストシステムのシーケンシャルROMインターフェース(MACRONIX社資料「MX23L51212」参照)から直接NAND型フラッシュメモリーにアクセスすることはできない。この場合、ホストシステムにNANDI/Fを具備すればよいが、ホストシステムの大幅な設計変更が必要となるという問題がある。
MACRONIX社資料「MX23L51212」
本発明は、上記問題点に鑑みてなされたもので、その目的とするところは、シーケンシャルROMインターフェースを具備するホストシステムからNAND型フラッシュメモリーにアクセス可能な改良されたNAND型フラッシュメモリーデバイス及びそのコントローラを提供することにある。特に、NAND型フラッシュメモリーをシーケンシャルROM互換にするにあたり、不良ブロックや不良ビットのない完全なメモリーとしてホストシステムが扱えるようにするNAND型フラッシュメモリー及びそのコントローラを提供することにある。
上記目的を達成するため、本発明のNANDフラッシュメモリーデバイスは、請求項1乃至5のいずれか1項記載の通り構成される。さらに本発明のNAND型フラッシュメモリーデバイスのコントローラは請求項6記載の通り構成される。
以下、本発明が適用された実施例について図面及び表を用いて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態の形態を採りうる。
図1のブロック図を用いて、本発明のシーケンシャルROMインターフェース対応NAND型フラッシュメモリーデバイス及び該デバイスにアクセスしてシーケンシャルリードを行うホストシステムについて説明する。
本発明のNAND型フラッシュメモリーデバイス1は、NAND型フラッシュメモリー11と、シーケンシャルROMインターフェースを具備するホストシステム2からの指令に従いNAND型フラッシュメモリー11に直接アクセスしてデータの読出しを行うコントローラ12とからなる。
コントローラ12が具備するシーケンシャルROMインターフェース121は、ホストシステム2からの読出し指令、即ち、アドレスと制御信号を入力するとともに、読み出されたデータをホストシステム2へ出力する。端子構造としては、周知のCE(チップイネーブル)、ALEH(アドレスラッチイネーブルhigh)、ALEL(アドレスラッチイネーブルLow)、RD(リードストローブ)の各信号入力端子、AD0〜AD15のアドレス入力/データ出力端子の他、本願発明のホストシステム2の構成的特長の一つであるWait信号出力端子を有する。
ホストシステム2のシーケンシャルROMインターフェース21のAD端子(図示せず)からは、シーケンシャルROMインターフェース121のAD端子に対し、データを読み出すべきアドレスが通知される。このアドレスは、データを読み出すべきアクセス対象のページを指定するページアドレスと、そのページを含むブロックを指定するブロックアドレスである。
アクセス対象がマスクROMであればそのまま実行すればよいが、アクセス対象がNAND型フラッシュメモリーの場合は、論理ブロックアドレスと物理ブロックアドレスの関係で管理されているため、シーケンシャルROMインターフェースから通知されるアドレス情報中のブロック番号に関する情報を、NAND型フラッシュメモリーの論理ブロックアドレスに対するものとして扱う必要がある。そして、その論理ブロックアドレスに対応する物理ブロックアドレスを割り出し、その物理ブロックアドレスで特定されるブロック中の指定されたページアドレスからデータを読み出す必要がある。NAND型フラッシュメモリーの論理ブロックアドレスから物理ブロックアドレスの割り出しは、NAND型フラッシュメモリー11に対するデータの書込みが前提となるため、以下にこれにつき説明する。
(データの書き込み)
NAND型フラッシュメモリー11に対しては、その論理ブロックアドレス(LBA)順にデータが書き込まれる。シーケンシャルリードを前提すると、論理ブロックアドレスと物理ブロックアドレス(PBA)はイコールの関係(LBAx=PBAx、xは0または正の整数)、即ち、物理ブロックアドレス順に、各ブロックにデータが書き込まれることが望ましい。
しかしながらNAND型フラッシュメモリーの場合は、製造上不良ブロックが存在し、該不良ブロックにはデータを書き込むことができない。このため、論理ブロックアドレスとイコールの関係にある物理ブロックアドレスのブロックにはデータを書き込めない場合が生じる。
この場合、不良ブロックを飛ばして、次の良ブロックにデータを書き込んでもよいが、論理ブロックアドレスと物理ブロックアドレスの関係にずれを生じる(両者のアドレスがイコールであると言う関係が崩れる)。このため本願では、不良ブロックを他の良ブロックで代替してデータ書き込みを実行する。以下これについて表1を用いて説明する。
(表1)
<アドレス管理テーブル>
LBA PBA
0 0
1 10(不良ブロックPBA1の代替)
2 2
3 3
4 4
5 5
6 11(不良ブロックPBA6の代替)
7 7
8 12(不良ブロックPBA8の代替)
9 9
10(スヘ゜ア) −
11(スヘ゜ア) −
12(スヘ゜ア) −
表1で、LBAは論理ブロックアドレス(Logical Block Address)、PBAは、物理ブロックアドレス(Phygical Block Address)である。表1は、データ書き込み後の論理ブロックアドレスと物理ブロックアドレスの関係を示した「アドレス管理テーブル」の内容例である。このテーブルはメモリの管理領域に書き込まれる。
表1では、説明を簡略化するために、物理ブロック数が13(PBA0〜12)、論理ブロック数が10(LBA0〜9、スペアLBA10〜12)として設定されている。表1では、LBA1に対応するPBA1が不良であるためこれをPBA10で代替してデータを書き込み、LBA6が不良であるためこれをPBA11で代替し、さらにLBA8に対応するPBA8が不良であるため、これをPBA12で代替していることを示す。
不良ブロックに関する情報およびその代替テーブル(「不良ブロック代替テーブル」という)は、NAND型フラッシュメモリーの管理領域に、製造者により書き込まれている。表2に不良ブロック代替テーブル例を示す。
(表2)
<不良ブロック代替テーブル>
不良ブロックアドレス 代替ブロックアドレス
PBA1 → PBA10
PBA6 → PBA11
PBA8 → PBA12
この「不良ブロック代替テーブル」は、電源投入時にCPU1200によりNAND型フラッシュメモリー11の管理領域からRAM1202に展開されるので、データ書き込み時において、書き込み対象ブロックが不良ブロックである場合は、表2の不良ブロック代替テーブルを用いて、その代替ブロックにデータの書き込みを行う。
そして、前記不良ブロック代替テーブルを用いたデータ書き込みによって、表3に示す「アドレス変換テーブル」を作成する。この表は、左側の論理ブロックアドレス(LBA)に対して、矢印右側の物理ブロックアドレス(PBA)にデータが書き込まれており、表3に記載のない他の論理ブロックアドレスに対しては、その論理ブロックアドレスとイコールの関係にある物理ブロックアドレスにデータが書き込まれていることを意味する。即ち、代替された物理ブロックとその論理ブロックのアドレスの関係だけを抽出したものである。このアドレス変換テーブルは、メインファームウエア120のRAM1202に展開することができる。
(表3)
<アドレス変換テーブル>
LBA1 → PBA10
LBA6 → PBA11
LBA8 → PBA12
NAND型フラッシュメモリー11に対する上記データの書き込みは、必ずしも本発明のNAND型フラッシュメモリーデバイス1において実行される必要はなく、他の装置でNAND型フラッシュメモリー11に書き込んでおき、これをコントローラ12と組み合わせて、NAND型フラッシュメモリーデバイス11を構成してもよい。
ところで、NAND型フラッシュメモリーには、2値小ブロックと多値大ブロックの2種類が存在する。2値小ブロックは、例えば1ブロックが4ページで構成されている。この1ページは、512Byteのメインデータと16Byteの冗長データ(ECCその他の情報)で構成されている。
多値大ブロックは、例えば1ブロックが16ページで構成される。本実施例では、512Byteのメインデータ+16Byteの冗長データを1ECCセクター単位と定義し、1ページを4ECCセクター単位で構成する(図3参照)。
本発明は、2値小ブロックと多値大ブロックの両者に適応できる。
(データの読み出し)
システムに電源が投入されると、CPU1200は、表3のアドレス変換テーブルをROM1201からRAM1202に展開する。ホストシステム2よりデータを読み出すべきアドレスがAD0乃至AD15を介して通知されると、CPU1200は、ホストシステム2から通知されたアドレスを論理ブロックアドレスとして、その対応する物理ブロックアドレスを割り出す。このとき、前記アドレス変換テーブルを用いる。
例えば、ホストシステムから読み出し指令を受けたアドレスが、LBA1、LBA6、LBA8のいずれかに対するものであった場合、アドレス変換テーブルを参照し、対応する物理ブロックアドレスが、それぞれ、PBA10、PBA11、PBA12であることを割り出す。それ以外の論理ブロックアドレスに対する読み出し指令に対しては、論理ブロックアドレスと物理ブロックアドレスがイコールの関係(LBAx=PBAx)であると看做してシーケンシャルリードを続行する。
データを読み出すべき物理ブロックアドレスが判明すると、CPU1200は、ハードウエアシーケンサ123に対し、実際にアクセスすべき物理ブロックのページアドレスをプログラムする。ハードウエアシーケンサ123は、このアドレスを基に、NAND型フラッシュメモリー11から1ページ分のデータを読み出すためのアドレス、制御信号、コマンドをNAND I/Fから、NAND型フラッシュメモリー11のNAND I/F(図示せず)に送る。ハードウエアシーケンサ123はNAND型フラッシュメモリー11から1ページ分のデータを読み出す。この場合のアクセス、即ちデータの読み出しは、通常のNAND型フラッシュメモリーで実行されるものと同じである。
多値大ブロックの場合は、1ページのデータが上述の通り4ECCセクター単位構成となっているため、4ECCセクター単位分のデータ(528Byte×4)が読み出されることになる。このときNAND型フラッシュメモリー11は、Byte単位で読み出しアドレスを指定することができるので、1ECCセクター単位ずつ計4回に分けてデータを読み出すことができる。これは後述するエラーチェックを行う際有効である。尚、データは、NAND型フラッシュメモリー11のI/O端子(I/O0からI/O7:図示せず)から、8ビットずつ読み出される。
データの読み出しにおいて、表1で述べたアドレス管理テーブルを用いることはもとより可能であるが、上記の通り、アドレス変換テーブルを用いれば、アドレス管理テーブルを用いる場合のように、ホストシステムよりアドレス指定された際、全ての論理ブロックアドレスと物理ブロックアドレスの対応をいちいち確認せずに済むので効率がよい。即ちデータの高速読み出しが可能である。また、不良ブロックを飛ばして次の良ブロックにデータを書き込むことによって生じる論理ブロックアドレスと物理ブロックアドレスのずれ、さらに当該ずれにより生じる読み出し遅延を防止できる。また、製造者によって提供されている不良ブロック代替テーブルを有効に活用することができる。
尚、CPU1200は、ROM1201に格納している駆動用プログラムを基に、本NAND型フラッシュメモリーデバイス1を統括的に制御するものである。またRAM1202は、前述の通り、CPU1200の作業領域として使用される。
ハードウエアシーケンサ123によって読み出された1ECCセクター単位のデータ52bByteは、ECC ENDEC/CORRECTOR部124に送出される。多値大ブロックの場合は、1ページが4ECCセクター単位構成となっているため、計4回送出されることになる。そしてECC ENDECのDECODERによりメインデータ(512Byte)に誤りがないか確認される(エラーチェック)。多値大ブロックの場合は、第1番目のECCセクター単位のメインデータのエラーチェックが終了し、次のECCセクター単位のメインデータのエラーチェックを開始できるようになってから、第2番目のセクターデータ単位のデータ(528Byte)がNAND型フラッシュメモリー11から読み出され、ECC ENDEC/CORRECTORに送出される。
そしてメインデータ512Byteは、ハードウエアシーケンサ123に戻され、バッファマネージャー122を介してRAM125に格納される。RAM125は、1ページのメインデータ分の記憶容量を有している。2値小ブロックの場合は512Byteであり、多値大ブロックの場合はその4倍、即ち2048Byteである。尚、バッファマネージャー122は図示しないバッファメモリーを有し、前記読み出しデータ格納用RAMに該バッファメモリーを介して格納され、若しくは前記読み出しデータ格納用RAMから該バッファメモリーを介して読み出されるデータの緩衝制御を行う。
ハードウエアシーケンサ123からバッファマネージャー122に対しては、ハードウエアシーケンサ123に読み出された8ビットのデータを2回シリアルにして、16ビットのデータが順次転送される。バッファマネージャー122からRAM125に対しても、16ビットのデータが送出される。
途中、ECC ENDEC/CORRECTOR124のDECORDERによるチェックの結果、もしデータエラー(ECCエラー)が発見された場合は、その旨がハードウエアシーケンサ123に通知される。このエラー検出は、ハードウエアシーケンサ123のMPU(ファームウエア1230内/図示せず)が行ってもよいし、メインファームウエア120のCPU1200が行ってもよい。MPUで行う場合は、エラーチェックの高速化を図ることができる。エラーチェック中、ハードウエアシーケンサ123はNAND型フラッシュメモリー11からのデータ読み出しを停止する。
データエラーがあると、ECC ENDEC/CORRECTOR124のCORRECTORは、データを訂正し、訂正データをバッファマネージャー122に送出する。そしてバッファマネージャー122は、訂正データをRAM125に格納するとともに(先に格納したデータの上書き)、当該データに、ホストシステム2に対する出力がOKであることを示すフラグを設定する。
一方データエラーがないことが判明した場合は、ECC ENDEC/CORRECTOR124からハードウエアシーケンサ123にその旨通知され、ハードウエアシーケンサ123は、これを受けてData OKの通知をバッファマネージャー122に対して行うとともに、ホストシステム2に対する出力がOKであることを示すフラグを設定する。
このホストシステム2に対する出力がOKであることを示すフラグは、2値小ブロックの場合も多値大ブロックの場合も、1ECCセクター単位(正確にはそのメインデータ単位)で設定される。
データ出力OKのフラグが設定され、RAM125に格納したデータがホストシステム2に出力可能になると、バッファマネージャー122はシーケンシャルROMインターフェース121に対しREADY信号を送る。
以下、図2のタイミングダイヤグラムを用いて、ホストシステム2に対するデータの出力について説明する。
メインファームウエア120は、シーケンシャルROMインターフェース121のWait出力端子に対し、ALEL若しくはALEHの立下り時点でWait信号をHighで出力し、シーケンシャルROMインターフェース121に前記READY信号の入力があると、これをLowにする。
Wait信号出力端子はホストシステム2のWait信号入力端子(図示せず)に繋がっており、且つこのWait信号入力端子にWaitが挿入されている間、ホストシステム2はデバイス1に対するデータの読み出し信号(RD信号)の送出を保留し、Waitが解除されるのを待つ。そして、Wait信号がLowになった段階で、ホストシステム2はRAM125に格納されているデータの出力の指示、即ちRD信号をシーケンシャルROMインターフェース121のRD入力端子に出力する。
コントローラ12は、これを受けて、シーケンシャルROMインターフェース121のAD端子(AD0〜AD15)からRAM125に格納されているデータを出力する。このとき、バッファマネージャー122は、RAM125からシーケンシャルROMインターフェース121に転送されるデータの緩衝を制御する。
尚、本実施例において、RD信号は、取り込むデータのByte数、即ち、2値小ブロックの場合は512回のトグル動作(LowとHighの繰り返し)により送出し、この512回のRD信号に従って、1Byteずつ計512Byteのデータがホストシステム2に取り込まれる。
多値大ブロックの場合は、RD信号を2048回送出し、計2048Byteのデータがホストシステム2に取り込まれる。この取り込まれるデータは、RAM125に4分割して格納されていた1ページ分のメインデータ(512×4)がFIFO方式で16ビットずつ出力されるものである。
Waitの挿入により、NAND型フラッシュシュメモリ特有のエラー訂正によって、読み出したデータをホストシステム2へ出力可能になるまでの時間にばらつきがあっても、ホストシステム2はRAM125から効率よくデータを取り込むことができる。
尚、前記入力したWait信号を、ホストシステム2のCPUに伝達し、RD信号の管理を該CPU自体が行ってもよいし、あるいは、Direct Memory Access(DMA)方式により、CPUを介さずにアクセス対象からデータを読み出してもよい。後者の場合、CPUに付随するDMAコントローラなどに前記Wait信号を伝達し、該DMAコントローラがホストシステム2の他の入出力モジュールを直接コントロールして、NAND型フラッシュメモリーデバイス1からデータを読み出す構成とすればよい。こうすれば、データの転送速度を向上させ、CPUの負担を減らすことができる。
ホストシステム2は、当該アドレスで指示したデータの取り込みを完了すると、次に読み出すべきアドレスを制御信号とともにNAND型フラッシュメモリーデバイス1のシーケンシャルROMインターフェース121に通知し、コントローラ12はこれを受けて当該アドレスに対応するデータの読み出しを同様に実行し、これをホストシステム2へ出力する。
ホストシステム2は、NAND型フラッシュメモリー11に記憶している全データの読み出しが完了するまで、以上の処理を繰り返し行うが、先読み処理をおこなってもよい。即ち、ホストシステム2より通知された1のアドレス分のデータをNAND型フラッシュメモリー11から読み出してRAM125に格納した後、ホストシステムより次のアドレスが通知される前にこれを見越してデータの読み出しを実行してもよい。先読み処理は、ホストシステム2から送出されたアドレスをラッチして置き、これをコントローラ12内部でインクリメント処理して実行することができる。
例えば、RAM125をNAND型フラッシュメモリー11のメインデータ2ページ分以上の容量とし、先読みしたデータをRAM125に格納しておけば、そのアドレスが通知された段階で既に出力できる状態になっていれば、ホストシステム2にWaitを掛けることなく、RD信号の入力に従い即出力する。このようにすれば、エラー訂正によりデータの出力に遅延が生じることがあっても、トータル的に出力時間を短縮することができる。
尚、NAND型フラッシュメモリー11とコントローラ12は、一つのLSIパッケージに収納して構成してもよいし、それぞれ別個のモジュールで構成してもよい。
又、ECC ENDEC/CORRECTOR部124のECC ENDECは、ECC DECORDERの他、ECC ENCORDERを含むが、これはデータの書き込み時に冗長領域にECCを書き込むためのものである。
本発明の効果は以下の通りである。
1.本発明のホストシステムによれば、ホストシステムよりNAND型フラッシュメモリーにアクセスするにあたり、ホストシステムにシーケンシャルROMインターフェースしか具備されていない場合であっても、シーケンシャルROMインターフェースにWait入力部を設けることによりNAND型フラッシュメモリーから確実にデータを読み出すことができる。また従来のマスクROMに対するシーケンシャルアクセスにも同様に対応できる(上位互換)。これにより、ホストシステム製造者は、既存の資産を有効活用することができる。
2.本発明のNANDフラッシュデメモリバイスによれば、ホストシステムの前記改良されたシーケンシャルROMインターフェースを介して、NAND型フラッシュメモリーからデータをシーケンシャルに読み出してこれをホストシステムに出力することができる。またこの場合、NANDフラッシュメモリーの不良ブロックや、データエラーに対応する手段を設けたので、ホストシステムに不良ブロックに対応するための手段を設ける必要がなく、また、ホストシステムに取り込まれたデータにはエラーがなく、従ってNAND型フラッシュメモリーをシーケンシャルROM(マスクROM)互換とすることができる。
本発明のNAND型フラッシュメモリーデバイスのブロック図である。 本発明のNAND型フラッシュメモリーデバイスのタイミングダイヤグラムである。 多値大ブロック1ページのデータ構成例(表1)アドレス管理テーブルの内容を表す表である。(表2)不良ブロック代替テーブルの内容を表す表である。(表3)アドレス変換テーブルの内容を表す表である。
符号の説明
1 本発明のNAND型フラッシュメモリーデバイス
2 ホストシステム
11 NAND型フラシュメモリ
12 コントローラ
21 シーケンシャルROMインターフェース(ホストシステム側)
120 メインファームウエア
121 シーケンシャルROM
インターフェース(デバイス側)
122 バッファマネージャー
123 ハードウエアシーケンサ
124 ECC ENDEC/CORRECTOR
125 RAM

Claims (6)

  1. NAND型フラッシュメモリーと、ホストシステムのシーケンシャルROMインターフェースからのシーケンシャル読出し指令に対応して前記メモリーからデータの読み出しを行ってこれを前記ホストシステムのシーケンシャルROMインターフェースに出力するコントローラとを具備するNAND型フラッシュメモリーデバイスであって、
    該コントローラは、
    1)ホストシステムからアドレスと制御信号を入力するとともに、データを前記ホストシステムへ出力するシーケンシャルROMインターフェースと、
    2) NAND型フラッシュメモリーと通信を行うNANDインターフェースを含み、該NANDインターフェースを介してNAND型フラッシュメモリーからデータを読み出すためのアドレス、コマンド及び制御信号を出力するハードウエアシーケンサと、
    3)ホストシステムから読み出し指定されたアドレスからNAND型フラッシュメモリーの物理ブロックアドレスを割り出してNAND型フラッシュメモリーの実際にアクセスすべきアドレスを前記ハードウエアシーケンサにプログラムするとともに、該コントローラを統括的に制御するメインファームウエアと、
    4)ホストシステムに出力するためのデータを一時格納する読み出しデータ格納用RAMと、
    5)バッファメモリーを有し、前記読み出しデータ格納用RAMに該バッファメモリーを介して格納され、若しくは前記読み出しデータ格納用RAMから該バッファメモリーを介して読み出されるデータの緩衝制御を行うバッファマネージャーと、
    6)NAND型フラッシュメモリーから読み出されたデータにエラーがないか判定するECC DECORDERと、
    7)前記ECC DECORDERによりデータにエラーが発見された場合に、当該エラーを訂正するCORRECTORと、
    を有し、さらに、
    8)前記シーケンシャルROMインターフェースは、前記データ格納用RAMに格納しているデータが前記ホストシステムに出力可能になるまでホストシステムにWaitを挿入するWait出力部を具備し、該Waitの挿入をALEH若しくはALELの立下りを基点として実行するとともに、Waitの解除を、前記バッファマーネージーが前記データ格納用RAMにホストシステム送出用のデータの準備できたか否かを管理してこれを実行することを特徴とするシーケンシャルROMインターフェース対応NAND型フラッシュメモリーデバイス。
  2. NAND型フラッシュメモリーに対するデータの書き込みは、論理ブロックアドレスと物理ブロックアドレスがイコールの関係になるように順次実行され、所定の論理ブロックアドレスに対応するアドレスの物理ブロックが不良ブロックである場合は予備の良ブロックで代替して書き込みが実行されるものであることを特徴とする請求項1記載のシーケンシャルROMインターフェース対応NAND型フラッシュメモリーデバイス。
  3. 前記物理ブロックを代替した論理ブロックアドレスと当該代替物理ブロックのアドレスの関係を、アドレス変換テーブルとして当該フラッシュメモリーに記憶しておき、フラッシュメモリーからのデータの読み出しは、前記アドレス変換テーブルを用いて実行されることを特徴とする請求項2記載のNAND型フラッシュメモリーデバイス。
  4. ホストシステムから入力したアドレスに対応するデータの読み出しを終了後、次回のアドレスの入力前に、該アドレスの入力があるものと見越して次のデータの読出しを実行することを特徴とする請求項3記載のシーケンシャルROMインターフェース対応NAND型フラッシュメモリーデバイス。
  5. NAND型フラッシュメモリーとコントローラは、一つのLSIパッケージに収納されてなることを特徴とする請求項1記載のシーケンシャルROMインターフェース対応NAND型フラッシュメモリーデバイス。
  6. ホストシステムのシーケンシャルROMインターフェースからのシーケンシャル読出し指令に対応してNAND型フラッシュメモリーからデータの読み出しを行ってこれをホストシステムの前記シーケンシャルROMインターフェースに出力するコントローラであって、
    該コントローラは、
    1)ホストシステムからアドレスと制御信号を入力するとともに、データを前記ホストシステムへ出力するシーケンシャルROMインターフェースと、
    2) NAND型フラッシュメモリーと通信を行うNANDインターフェースを含み、該NANDインターフェースを介してNAND型フラッシュメモリーからデータを読み出すためのアドレス、コマンド及び制御信号を出力するハードウエアシーケンサと、
    3)ホストシステムから読み出し指定されたアドレスからNAND型フラッシュメモリーの物理ブロックアドレスを割り出してNAND型フラッシュメモリーの実際にアクセスすべきアドレスを前記ハードウエアシーケンサにプログラムするとともに、該コントローラを統括的に制御するメインファームウエアと、
    4)ホストシステムに出力するためのデータを一時格納する読み出しデータ格納用RAMと、
    5)バッファメモリーを有し、前記読み出しデータ格納用RAMに該バッファメモリーを介して格納され、若しくは前記読み出しデータ格納用RAMから該バッファメモリーを介して読み出されるデータの緩衝制御を行うバッファマネージャーと、
    6)NAND型フラッシュメモリーから読み出されたデータにエラーがないか判定するECC DECORDERと、
    7)前記ECC DECORDERによりデータにエラーが発見された場合に、当該エラーを訂正するCORRECTORと、
    を有し、さらに、
    8)前記シーケンシャルROMインターフェースは、前記データ格納用RAMに格納しているデータが前記ホストシステムに出力可能になるまでホストシステムにWaitを挿入するWait出力部を具備し、該Waitの挿入をALEH若しくはALELの立下りを基点として実行するとともに、Waitの解除を、前記バッファマーネージーが前記データ格納用RAMにホストシステム送出用のデータの準備できたか否かを管理してこれを実行することを特徴とするコントローラ。
JP2005232516A 2005-08-10 2005-08-10 シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ Active JP3747213B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005232516A JP3747213B1 (ja) 2005-08-10 2005-08-10 シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005232516A JP3747213B1 (ja) 2005-08-10 2005-08-10 シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ

Publications (2)

Publication Number Publication Date
JP3747213B1 true JP3747213B1 (ja) 2006-02-22
JP2007048090A JP2007048090A (ja) 2007-02-22

Family

ID=36032083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005232516A Active JP3747213B1 (ja) 2005-08-10 2005-08-10 シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ

Country Status (1)

Country Link
JP (1) JP3747213B1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008119341A (ja) * 2006-11-15 2008-05-29 Daiman:Kk 遊技機
JP2012130785A (ja) * 2012-04-09 2012-07-12 Daiichi Shokai Co Ltd 遊技機

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5604313B2 (ja) * 2011-01-12 2014-10-08 株式会社メガチップス メモリアクセス制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008119341A (ja) * 2006-11-15 2008-05-29 Daiman:Kk 遊技機
JP2012130785A (ja) * 2012-04-09 2012-07-12 Daiichi Shokai Co Ltd 遊技機

Also Published As

Publication number Publication date
JP2007048090A (ja) 2007-02-22

Similar Documents

Publication Publication Date Title
US10049005B2 (en) Flash memory control apparatus utilizing buffer to temporarily storing valid data stored in storage plane, and control system and control method thereof
US8386699B2 (en) Method for giving program commands to flash memory for writing data according to a sequence, and controller and storage system using the same
US7302517B2 (en) Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same
US8812784B2 (en) Command executing method, memory controller and memory storage apparatus
KR100708128B1 (ko) 낸드 플래시 메모리 제어 장치 및 방법
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
US9990138B2 (en) Out of order SGL read sorting in a mixed system with PRP read or system that supports only SGL reads
US8510502B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
TWI443513B (zh) 記憶體儲存裝置、記憶體控制器與資料寫入方法
US20030206442A1 (en) Flash memory bridiging device, method and application system
US9304900B2 (en) Data reading method, memory controller, and memory storage device
JP2004005699A (ja) Nandフラッシュメモリインタフェース装置
JP2012526323A (ja) 管理型不揮発性メモリのための低レイテンシ読み取り動作
US20100169546A1 (en) Flash memory access circuit
JP5287301B2 (ja) ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法
US20130159604A1 (en) Memory storage device and memory controller and data writing method thereof
JP2009123191A (ja) Norインターフェイスフラッシュメモリ装置及びそのアクセス方法
US6684267B2 (en) Direct memory access controller, and direct memory access control method
JP3747213B1 (ja) シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ
JP4751037B2 (ja) メモリカード
JP2005115561A (ja) フラッシュrom制御装置
US8738847B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
JP2010026584A (ja) メモリコントローラおよび不揮発性記憶装置
JP2005115562A (ja) フラッシュrom制御装置
TWI852599B (zh) 記憶裝置、快閃記憶體控制器及其控制方法

Legal Events

Date Code Title Description
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: 20051118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051128

R150 Certificate of patent or registration of utility model

Ref document number: 3747213

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081202

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111202

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20111202

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20111202

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20111202

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121202

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20121202

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131202

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250