(57)【要約】４つのフラッシュメモリＦ０〜Ｆ３を２つのメモリバスに２つずつ接続するか、２つのフラッシュメモリＦ０、Ｆｌを概ね等しいサイズの領域に２分割して前後半領域を形成したもの（Ｆ００〜Ｆ１１）を、２つのメモリバスに一つずつ接続するかを選択する。４メモリ構成時は、ホスト機器から指定される連続論理アドレスを所定サイズ毎に区分し、Ｆ０、Ｆ１、Ｆ２、Ｆ４をこの順で繰り返し巡回する形式にて書き込みを行う。２メモリ構成時は、Ｆ００、Ｆ１０、Ｆ０１、Ｆ１１を繰り返し巡回する形式にて書き込みを行う。こうしてコントローラに接続するフラッシュメモリの数に関わらず、コントローラ処理の共通化を図る。
2005038655.tif 000002
【特許請求の範囲】
【請求項１】
複数の不揮発性メモリと、ホスト機器からの読み書き指示に応じて前記複数の不揮発性メモリに第１のメモリバス及び第２のメモリバスを介して読み書き制御を行うコントローラと、を有する半導体メモリ装置であって、
前記第１のメモリバスに不揮発性メモリＦ０が接続され、前記第２のメモリバスに不揮発性メモリＦ１が接続される場合を２メモリ構成と呼び、前記第１のメモリバスに２つの不揮発性メモリＦ０、Ｆ２が接続され、前記第２のメモリバスに２つの不揮発性メモリＦ１、Ｆ３が接続される場合を４メモリ構成と呼ぶ場合、
前記コントローラは、
前記２メモリ構成及び前記４メモリ構成のいずれか一方を選択する選択部と、
各々の不揮発性メモリを２つの領域に分割して前半領域及び後半領域を形成し、前記ホスト機器から指定される連続論理アドレスを所定サイズ毎の論理シーケンシャルナンバーに変換するシーケンシャルナンバー変換部と、
前記論理シーケンシャルナンバーに対して４の剰余系の論理シーケンシャルモジュロナンバーを生成するモジュロナンバー生成部と、
前記ホスト機器から連続論理アドレスへの書き込み指示がなされると、前記論理シーケンシャルモジュロナンバーに基づき、前記４メモリ構成の場合は、不揮発性メモリＦ０、Ｆｌ、Ｆ２、Ｆ３を選択的に繰り返し巡回する形式で書き込みを行い、前記２メモリ構成の場合は、Ｆ０の前半領域、Ｆ１の前半領域、Ｆ０の後半領域、Ｆ１の後半領域を選択的に繰り返し巡回する形式で書き込みを行う書き込み制御部と、を備える半導体メモリ装置。
【請求項２】
前記不揮発性メモリが２以上の論理アドレス範囲に分割され、前記論理アドレス範囲毎に論理アドレスを物理アドレスに変換する論物変換テーブルを設けた請求項１記載の半導体メモリ装置。
【請求項３】
ホスト機器からの読み書き指示に応じて複数の不揮発性メモリに第１のメモリバス及び第２のメモリバスを介して読み書き制御を行うコントローラであって、
前記第１のメモリバスに不揮発性メモリＦ０が接続され、前記第２のメモリバスに不揮発性メモリＦ１が接続される場合を２メモリ構成と呼び、前記第１のメモリバスに２つの不揮発性メモリＦ０、Ｆ２が接続され、前記第２のメモリバスに２つの不揮発性メモリＦ１、Ｆ３が接続される場合を４メモリ構成と呼ぶ場合、
前記２メモリ構成及び前記４メモリ構成のいずれか一方を選択する選択部と、
各々の不揮発性メモリを２つの領域に分割して前半領域及び後半領域を形成し、前記ホスト機器から指定される連続論理アドレスを所定サイズ毎の論理シーケンシャルナンバーに変換するシーケンシャルナンバー変換部と、
前記論理シーケンシャルナンバーに対して４の剰余系の論理シーケンシャルモジュロナンバーを生成するモジュロナンバー生成部と、
前記ホスト機器から連続論理アドレスへの書き込み指示がなされると、前記論理シーケンシャルモジュロナンバーに基づき、前記４メモリ構成の場合は、不揮発性メモリＦ０、Ｆ１、Ｆ２、Ｆ３を選択的に繰り返し巡回する形式で書き込みを行い、前記２メモリ構成の場合は、Ｆ０の前半領域、Ｆ１の前半領域、Ｆ０の後半領域、Ｆ１の後半領域を選択的に繰り返し巡回する形式で書き込みを行う書き込み制御部と、を備えるコントローラ。
【請求項４】
ホスト機器からの読み書き指示に応じて複数の不揮発性メモリに第１のメモリバス及び弟２のメモリバスを介して読み書き制御を行う半導体メモリの読み書き制御方法であって、
前記第１のメモリバスに不揮発性メモリＦ０が接続され、前記第２のメモリバスに不揮発性メモリＦ１が接続される場合を２メモリ構成と呼び、前記第１のメモリバスに２つの不揮発性メモリＦ０、Ｆ２が接続され、前記第２のメモリバスに２つの不揮発性メモリＦ１、Ｆ３が接続される場合を４メモリ構成と呼ぶとき、
前記２メモリ構成及び前記４メモリ構成のいずれか一方を選択し、
各々の不揮発性メモリを２つの領域に分割して前半領域及び後半領域を形成し、前記ホスト機器から指定される連続論理アドレスを所定サイズ毎の論理シーケンシャルナンバーに変換し、
前記論理シーケンシャルナンバーに対して４の剰余系を成す論理シーケンシャルモジュロナンバーを生成し、
前記ホスト機器から連続論理アドレスへの書き込み指示がなされると、前記論理シーケンシャルモジュロナンバーに基づき、前記４メモリ構成の場合は、不揮発性メモリＦ０、Ｆ１、Ｆ２、Ｆ３を選択的に繰り返し巡回する形式で書き込みを行い、前記２メモリ構成の場合は、Ｆ０の前半領域、Ｆ１の前半領域、Ｆ０の後半領域、Ｆ１の後半領域を選択的に繰り返し巡回する形式で書き込みを行う半導体メモリの読み書き制御方法。
【発明の詳細な説明】
【技術分野】  本発明は、半導体メモリとして不揮発性メモリ（フラッシュメモリ）を用いた半導体メモリ装置及びコントローラ並びにその読み書き制御方法に関するものである。
【背景技術】  半導体メモリ装置の中で、ＳＤメモリカード（登録商標）やコンパクトフラッシュ（登録商標）等のメモリカードは、小型サイズという特徴を有している。このような特徴を活かして、メモリカードはデジタルスチルカメラ等のポータブル機器の着脱可能なメモリ装置として実用に供されている。
実用化されているメモリカードは、その内部に不揮発性メモリ（フラッシュメモリ）及びその制御回路であるコントローラＬＳＩが内蔵されている。近年、メモリカードに対して、大容量化及び高速書き込みのニーズが高くなってきている。そのため複数チップの不揮発性メモリを内蔵し、複数のメモリバス、例えば２つのメモリバスで不揮発性メモリとコントローラＬＳＩを接続して、並列に書き込みを行う等の工夫がなされている。これらの技術の一例が特開平６−１１９１２８号公報に開示されている。
しかしながら従来の半導体メモリ装置において、メモリカードの容量のバリエーション、例えば、２５６ＭＢや５１２ＭＢ等を実現するためには、単に内蔵する不揮発性メモリの実装数を変更するだけでは十分ではない。言い換えれば、不揮発性メモリの実装数に応じてコントローラＬＳＩ内部のアドレス管理処理を切り替える必要が生じる。このため内部処理が煩雑となり、その仕組みを取り入れることで、コントローラＬＳＩのコストが増加するといった欠点があった。
本発明は上記問題点に対して、内蔵する不揮発性メモリの枚数を変更しても、同一処理で制御できるコントローラＬＳＩ（以降、単にコントローラと称す）を実現することである。言い換えれば本発明は、コントローラの汎用性を高め、結果的に半導体メモリ装置の低価格化を実現することである。具体的には２つのバスを介してそれぞれ２つずつ（計４つ）の不揮発性メモリ（フラッシュメモリ）を制御することを基本とする。そしてコントローラのアドレス管理処理を簡素化し、２つのバスを介してそれぞれに１つずつ（計２つ）の不揮発性メモリを共通的に制御できるコントローラを実現することである。
【発明の開示】
本発明による半導体メモリ装置及び不揮発性メモリのコントローラは、ホスト機器からの読み書き指示に応じて複数の不揮発性メモリに第１及び第２の２つのメモリバスを介して読み書き制御を行うことを特徴にしている。
第１のメモリバスに不揮発性メモリＦ０が接続され、第２のメモリバスに不揮発性メモリＦ１が接続される場合を２メモリ構成と呼ぶ。そして第１のメモリバスに２つの不揮発性メモリＦ０、Ｆ２が接続され、第２のメモリバスに２つの不揮発性メモリＦ１、Ｆ３が接続される場合を４メモリ構成と呼ぶ。本発明はこのような２種類のメモリ構成を選択可能とする。各々の不揮発性メモリを概ね等しいサイズの領域に２分割して前後半領域を形成するとき、コントローラに対して、ホスト機器から指定される連続論理アドレスを所定サイズ毎の論理シーケンシャルナンバーに変換するシーケンシャルナンバー変換手段を設け、論理シーケンシャルナンバーに対して０から３の値を繰り返す４の剰余系を成す論理シーケンシャルモジュロナンバーを生成するモジュロナンバー生成部を設ける。ホスト機器から連続論理アドレスへの書き込み指示がなされると、論理シーケンシャルモジュロナンバーに基づき、４メモリ構成の場合は、Ｆ０、Ｆ１、Ｆ２、Ｆ３を繰り返し巡回する形式でデータの書き込みを行い、２メモリ構成の場合は、Ｆ０の前半領域、Ｆ１の前半領域、Ｆ０の後半領域、Ｆ１の後半領域を繰り返し巡回する形式でデータの書き込みを行う。
このような構成によれば、コントローラの基本アーキテクチャ（アドレス管理処理）が４フラッシュメモリ構成の制御をすることを基本としながらも、２フラッシュメモリ構成の場合はそれぞれのメモリを２つの領域に分割して仮想的に４フラッシュメモリ構成として制御可能としたので、２メモリ構成のアドレス管理処理も１つのアーキテクチャで共用化できる。言い換えれば不揮発性メモリ（フラッシュメモリ）が４つの場合と２つの場合でアドレス管理処理をそれぞれ個別に設ける必要がないので、コントローラ並びに半導体メモリ装置のコストを下げることが可能となる。
【図面の簡単な説明】  第１図は本発明の実施例によるコントローラを含む半導体メモリ装置の全体構成を示したブロック図である。
第２図は半導体メモリ装置に用いられるフラッシュメモリを４フラッシュメモリ接続とした場合のＦ０の構成図である。
第３図は半導体メモリ装置に用いられるフラッシュメモリを２フラッシュメモリ接続とした場合のＦ０の構成図である。
第４図は半導体メモリ装置におけるブロックの構成を示した概念図である。
第５図は半導体メモリ装置における論理アドレスフォーマットの構造例を示した概念図である。
第６図は半導体メモリ装置の書き込みシーケンスを示す概念図である。
【発明を実施するための最良の形態】  以下、本発明の実施例における半導体メモリ装置及びそのコントローラについて、図面を用いて説明する。第１図は本実施例による半導体メモリ装置の構成を示すブロック図である。半導体メモリ装置はコントローラ１０２と複数のフラッシュメモリ１０３〜１０６とを有している。ここでフラッシュメモリ１０３、１０４、１０５、１０６をそれぞれＦ０、Ｆｌ、Ｆ２、Ｆ３として説明する場合もある。
コントローラ１０２は、ホスト機器１０１からのデータ書き込み命令又は読み出し命令に応じて転送された連続した論理アドレス列に対して、論理アドレスから物理アドレスに変換すると共に、４つのフラッシュメモリ１０３、１０４、１０５、１０６又は２つのフラッシュメモリ１０３、１０４にデータを書き込み又は読み出しを行うものである。なお、フラッシュメモリ１０５、１０６を破線で示しているが、これは不揮発性メモリが２フラッシュメモリ構成の場合には除外されることを表す。
また、各フラッシュメモリ１０３、１０４、１０５、１０６はそれぞれチップイネーブル信号ＣＥ０、ＣＥ１、ＣＥ２、ＣＥ３によって独立に選択される。また、コントローラ１０２とフラッシュメモリ１０３〜１０７は、２つのメモリバスを用い接続されており、バス番号０のメモリバスには、フラッシュメモリ１０３、１０５が接続され、バス番号１のメモリバスには、フラッシュメモリ１０４、１０６が接続される。
なお、コントローラ１０２は、不揮発性メモリに対するデータの書き込み動作や読み出し動作の制御を行うものであるが、機能的には選択部１０２ａ、シーケンシャルナンバー変換部（ＳＮ変換部）１０２ｂ、モジュロナンバー生成部（ＭＮ生成部）１０２ｃ、読み書き制御部（Ｗ／Ｒ制御部）１０２ｄを有している。
選択部１０２ａは、フラッシュメモリが２メモリ構成であるか、又は４メモリ構成であるのかを判断し、いずれか一方を選択するものである。具体的には、電源立ち上げ直後の初期化処理において、選択部１０２ａは、コントローラ１０２におけるチップイネーブル信号ＣＥ０、ＣＥ１、ＣＥ２、ＣＥ３を送出するための各端子がフラッシュメモリに接続されているかどうか、即ちオープンなのかどうかをチェックすることによって、実装されているフラッシュメモリの数を判断する。ＳＮ変換部１０２ｂは、ホスト機器１０１から指定される論理アドレスを所定サイズ毎の論理シーケンシャルナンバーに変換するものである。ＭＮ生成部１０２ｃは、論理シーケンシャルナンバーに対して０から３の値を繰り返す４の剰余系を成す論理シーケンシャルモジュロナンバーを生成するものである。Ｗ／Ｒ制御部１０２ｄは、ホスト機器１０１から連続論理アドレスへの書き込み指示がなされると、論理シーケンシャルモジュロナンバーに基づき、４メモリ構成の場合は、Ｆ０、Ｆ１、Ｆ２、Ｆ３を選択的に繰り返し巡回する形式で書き込みを行い、２メモリ構成の場合は、Ｆ０の前半領域、Ｆ１の前半領域、Ｆ０の後半領域、Ｆ１の後半領域を選択的に繰り返し巡回する形式で書き込みを行うものである。またＷ／Ｒ制御部１０２ｄは、メモリ構成に応じて、アクセス要求のあったデータを読み出す。このような機能を有するコントローラ１０２は、具体的にはマイクロコンピュータやＲＡＭ等を有し、その周辺デバイス、ソフトウェアなどにより構成される。
第２図及び第３図は１つのフラッシュメモリの内部構成を表す。第２図に示す２０１は４フラッシュメモリ構成時のフラッシュメモリ１０３の模式図である。一方第３図に示す２０２は２フラッシュメモリ構成時のフラッシュメモリ１０３の模式図である。なお、その他のフラッシュメモリ、即ち４フラッシュメモリ構成時はフラッシュメモリ１０４、１０５、１０６もフラッシュメモリ１０３と同様の構成とする。２フラッシュメモリ構成時はフラッシュメモリ１０４もフラッシュメモリ１０３と同様の構成とする。
４メモリ構成時のフラッシュメモリは、２つの領域、即ちユニット番号０，１に分割して制御される。２メモリ構成時のフラッシュメモリは、２つの仮想フラッシュメモリ、即ちメモリＦ００、Ｆ０１に分割して制御される。なお、各フラッシュメモリは、図示するように複数のブロック（ＢＬ）単位に分割して扱われる。
第４図は、消去単位であるブロックの内部構成図であり、これは第２図及び第３図に示した各ブロック（ＢＬ）に相当する。データの書き込み単位は１ページ（２ＫＢ）である。各ページは４セクター、即ちセクター０〜３から構成される。各セクターは５１２Ｂの容量を有している。そして１ブロックは１２８ページ（ページ０〜１２７）で構成される。なお、説明の簡単化のため、各セクターや各ページの管理領域については省略している。
第５図は論理アドレスフォーマットを示す説明図である。第５図に示すように、論理アドレスフォーマットは、１ビットのユニットＮｏ、所定ビット数の論理ブロックＮｏ、７ビットのページＮｏ、１ビットのペアＮｏ、１ビットのバスＮｏ、２ビットのセクターＮｏを有する。
セクターＮｏは、第４図に示したセクター０〜３のいずれかを選択するためのビットである。バスＮｏは、第１図に示されるとおり２つのメモリバスの何れかを選択するビットである。ペアＮｏは、フラッシュメモリの組合せを選択するビットである。４メモリ構成の場合は、フラッシュメモリ１０３、１０４のペアか、フラッシュメモリ１０５、１０６のペアかを選択する。２メモリ構成の場合は、フラッシュメモリ１０３、１０４の前半領域（第１図に示すＦ００、Ｆ１０）のペアか、フラッシュメモリ１０３、１０４の後半領域（第１図に示すＦ０１、Ｆ１１）のペアかを選択する。例えば、ペアＮｏの値が０の場合、４メモリ構成時はフラッシュメモリ１０３、１０４のグループをアクセスする。２メモリ構成時はフラッシュメモリ１０３、１０４の各前半領域（Ｆ００、Ｆ１０）のグループをアクセスする。一方、ペアＮｏの値が１の場合、４メモリ構成時はフラッシュメモリ１０５、１０６のグループをアクセスする。２メモリ構成時はフラッシュメモリ１０３、１０４の各後半領域（Ｆ０１、Ｆ１１）のグループをアクセスする。
ページＮｏは、第４図に示した１ブロック当たりの全ページ数（１２８ページ）のうち、いずれかのページを選択するためのビットである。論理ブロックＮｏは、各フラッシュメモリの半分の領域、即ち第２図の２０１ではユニットＮｏ０もしくはユニットＮｏ１、第３図の２０２ではＦ００もしくはＦ０１当たりの論理ブロックＮｏであり、所定のビット数で構成される。この論理ブロックＮｏは、コントローラ１０２において論物変換テーブルによって物理ブロックＮｏに変換されてブロックの選択が行われる。論物変換テーブルとは、所定の規則に基づき論理アドレスを物理アドレスに変換する際に用いるテーブルである。
ユニットＮｏは、４メモリ構成の場合に用いられるビットで、第２図の２０１に示したように、フラッシュメモリの前後半を選択するビットである。ペアＮｏとバスＮｏの２ビットによって、４メモリ構成の場合は、４つのフラッシュメモリ１０３〜１０６の何れかを特定することができ、２メモリ構成の場合は、Ｆ００、Ｆ０１、Ｆ１０、Ｆ１１の４つの仮想的なフラッシュメモリの何れかを特定することができる。
なお、上述の論理アドレスフォーマットは、あくまで一例であり、フラッシュメモリの構造やアーキテクチャによって、ビット数や配列などが変更され得ることは言うまでもない。
第６図は、ホスト機器１０１からのデータ書き込み命令に応じて転送された連続した論理アドレス列（以降、論理シーケンシャルＮｏとする）に対応して、どのフラッシュメモリ（あるいは領域）にデータが書き込まれるかを示したタイミングチャートである。
以下、第６図を中心に本実施例による半導体メモリ装置の動作について説明する。第６図の（１）において、ホスト機器１０１からデータ書き込み命令と共に、論理シーケンシャルＮｏ（Ｌ．Ｓ．Ｎｏ）がコントローラ１０２に転送される。論理シーケンシャルＮｏは２ＫＢ（書き込み単位であるページサイズに相当）毎に番号順となっており、この番号は第５図に示す論理アドレスフォーマットにおけるバスＮｏのビットがインクリメント位置となるようにインクリメントされるものである。コントローラ１０２はこのビット位置を起点にページ単位でインクリメントしながら各フラッシュメモリへの書き込みを行う。
この論理シーケンシャルＮｏは、第６図の（２）に示すように０から３の値を取る４の剰余系に変換されるか、又は下位２ビットだけを取り出され、論理シーケンシャルモジュロＮｏ（Ｌ．Ｓ．Ｍ．Ｎｏ）としてフラッシュメモリの選択に供される。即ち、４は０、５は１というように、０、１、２、３、又は２ビット表現の場合は００、０１、１０、１１となるよう、ペアＮｏとバスＮｏがインクリメントされることになる。なお、第６図ではフラッシュメモリ１０３をＦ０、１０４をＦ１、１０５をＦ２、１０６をＦ３として表す。
したがって、４フラッシュメモリ構成（４ＦＭ）においては、ペアＮｏはフラッシュメモリＦ０、Ｆｌの時に値０となるので、書き込み順としては、第６図の（３）に示すようにＦ０、Ｆ１、Ｆ２、Ｆ３を巡回する形で繰り返されることとなる。一方、２フラッシュメモリ構成（２ＦＭ）において、ペアＮｏはフラッシュメモリＦ０の前半領域Ｆ００とフラッシュメモリＦ１の前半領域Ｆ１０の時に値０となるので、書き込み順としては、第６図の（４）に示すようにＦ００、Ｆ１０、Ｆ０１、Ｆ１１を巡回する形で繰り返されることとなる。なお、書き込みのスタートは、Ｆ０あるいはＦ００以外からであっても良い。このようにフラッシュメモリを概ね等しい２つの論理領域の２分割し、ペアＮｏの定義を変えるだけで同一のアドレス処理、即ち第５図に示す論理アドレスフォーマットを用いて４フラッシュメモリ構成及び２フラッシュメモリ構成の書き込みアドレス管理が行える。
なお、本実施例においては、１つのフラッシュメモリの全領域に対して論理アドレス範囲を２分割したが、例えば領域０〜７の８領域に分割して、前半の領域０〜３と後半の領域４〜７をそれぞれペアＮｏが０と１となるようにグルーピングしても構わない。
産業上の利用の可能性
本発明にかかる半導体メモリ装置は、特に大容量の不揮発性メモリ（フラッシュメモリ）、即ちブロック数が大きく領域分割管理した方が合理的なメモリカード等において、内蔵する不揮発性メモリの個数を変更することによってカード容量を変更する際には大変有益である。また本発明のコントローラは、不揮発性メモリが複数チップ内臓されたメモリモジュールに付加することにより、任意の容量を有する半導体メモリ装置の機能を実現することができる。
【図１】
2005038655.tif 000003
【図２】
2005038655.tif 000004
【図３】
2005038655.tif 000005
【図４】
2005038655.tif 000006
【図５】
2005038655.tif 000007
【図６】
2005038655.tif 000008
【国際調査報告】
2005038655.tif 000009
2005038655.tif 000010
2005038655.tif 000011
2005038655.tif 000012