JP4740233B2 - 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム - Google Patents

不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム Download PDF

Info

Publication number
JP4740233B2
JP4740233B2 JP2007509297A JP2007509297A JP4740233B2 JP 4740233 B2 JP4740233 B2 JP 4740233B2 JP 2007509297 A JP2007509297 A JP 2007509297A JP 2007509297 A JP2007509297 A JP 2007509297A JP 4740233 B2 JP4740233 B2 JP 4740233B2
Authority
JP
Japan
Prior art keywords
nonvolatile memory
information
memory
read
controller
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 - Fee Related
Application number
JP2007509297A
Other languages
English (en)
Other versions
JPWO2006101123A1 (ja
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007509297A priority Critical patent/JP4740233B2/ja
Publication of JPWO2006101123A1 publication Critical patent/JPWO2006101123A1/ja
Application granted granted Critical
Publication of JP4740233B2 publication Critical patent/JP4740233B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7206Reconfiguration of flash memory system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、不揮発性メモリを使用した不揮発性記憶装置、及び不揮発性記憶装置のコントローラに関する。
近年、フラッシュメモリのような不揮発性メモリを搭載したメモリカードはデジタルカメラや携帯電話に使用される記録媒体として、その市場を拡大している。メモリカード市場の広がりに伴い、従来寡占状態であったメモリカード用のNANDフラッシュメモリの市場への新規参入メーカが増え、その結果としてNANDフラッシュメモリの仕様が細かなレベルで多様化してきた。さらに、NANDフラッシュメモリとは異なる新たなタイプの不揮発性メモリも提案されており、不揮発性メモリの仕様は、今後より一層様々な種類が混在する状況が想定される。
また、メモリカード内部において、不揮発性メモリを制御して、ホスト機器との一般化されたインターフェースを提供するコントローラも、多様な不揮発性メモリの仕様に対応するために多種多様なものが必要とされる。
特許文献1では、フラッシュカードの開発期間を短縮し、その利便性を高めることを目的として、フラッシュメモリにマイクロコンピュータ用のプログラムを格納することが提案されている。これにより、開発段階での不備に対応する修正を容易に行うことが可能となる。
特開2000−82122号公報
様々な種類の不揮発性メモリを制御するためには様々な種類の不揮発性メモリに対応したデータフォーマットやアーキテクチャーを備える必要があり、特許文献1の方法ではこれを実現できない。
多様な不揮発性メモリに対応するために多種多様なコントローラを開発することは多大な工数がかかると共に、開発に要する時間も長くなる。また、経営的な観点から考えても多種のコントローラを製造することは在庫を増加させる原因となりマイナス要因となる。
本発明は上記課題を解決すべくなされたものであり、その目的とするところは、不揮発性メモリの種別に関わらず一つのコントローラで制御を可能とした半導体記憶装置を提供することにある。
本発明の第1の態様において、不揮発性メモリと、不揮発性メモリに対するデータの書き込み、及び、読み出しの制御を行なうコントローラとを備えた不揮発性記憶装置が提供される。不揮発性メモリは、固有の識別情報と、コントローラが不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有する。コントローラは、複数の種類の不揮発性メモリのそれぞれから制御情報を読み出すために用いられる、複数の読み出し情報と、識別情報を不揮発性メモリから読み出して不揮発性メモリの種類を判別する判別部と、不揮発性メモリの種類に対応する読み出し情報の内の一つを選択する選択部と、選択された読み出し情報に基づいて、不揮発性メモリからの制御情報を取得し、不揮発性メモリへのデータの書き込み、及び、読み出しを制御する制御部と、を有する。読み出し情報は、制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータをコントローラに転送する機能及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む
本発明の第2の態様において、不揮発性メモリに対してデータの書き込み、及び、読み出しの制御を行うコントローラが提供される。不揮発性メモリは、固有の識別情報と、コントローラが不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有する。コントローラは、複数の種類の不揮発性メモリのそれぞれから制御情報を読み出すために用いられる、複数の読み出し情報と、識別情報を不揮発性メモリから読み出して不揮発性メモリの種類を判別する判別部と、不揮発性メモリの種類に対応する読み出し情報の内の一つを選択する選択部と、選択された読み出し情報に基づいて、不揮発性メモリからの制御情報を取得し、不揮発性メモリへのデータの読み込み、及び、読み出しを制御する制御部と、を有する。読み出し情報は、制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータをコントローラに転送する機能及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む
本発明の第3の態様において、不揮発性メモリに対するデータの書き込み、及び、読み出しをコントローラにより制御する不揮発性記憶システムが提供される。不揮発性メモリは、固有の識別情報と、コントローラが不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有する。コントローラは、複数の種類の不揮発性メモリのそれぞれから制御情報を読み出すために用いられる、複数の読み出し情報を有し、識別情報を不揮発性メモリから読み出して不揮発性メモリの種類を判別し、不揮発性メモリの種類に対応する読み出し情報の内の一つを選択し、選択された読み出し情報に基づいて、不揮発性メモリからの制御情報を取得し、不揮発性メモリへのデータの書き込み、及び、読み出しを制御する。読み出し情報は、制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータをコントローラに転送する機能及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む


本発明によれば、コントローラが不揮発性メモリからその制御情報を取得して格納(ロード)するため、搭載する不揮発性メモリに応じてコントローラの設計変更の必要がなく、搭載されている不揮発性メモリの種類が異なっても、同一のコントローラチップで制御を行うことが可能となる。
以下、添付の図面を参照し、本発明の実施の形態について説明する。
(実施の形態1)
1.メモリカードの構成
図1は、本発明の不揮発性記憶装置の一実施形態であるメモリカードの構成を示したブロック図である。
図1において、メモリカード100はホスト102によりアクセスされる。メモリカード100は、コントローラ103と、そのコントローラ103によって制御されるフラッシュメモリ104とを含む。
フラッシュメモリ104は、制御情報として、そのフラッシュメモリ104に対するデータの書き込み、読出し制御をするために実行される制御プログラムを格納する。なお、フラッシュメモリ104は不揮発性メモリの一つの例として示しており、コントローラ103によって制御される不揮発性メモリは、フラッシュメモリに限定されず、フラッシュメモリと異なる方式による他の種類の不揮発性メモリであってもよい。
コントローラ103は、ホスト102とのインターフェースの制御を行うと共に、フラッシュメモリ104の制御を行う。コントローラ103は、ホスト・インターフェース(ホストI/F)105と、フラッシュ・インターフェース(フラッシュI/F)106と、ROM(リード・オンリー・メモリ)107と、ページバッファ108と、ECC回路(誤り検出訂正回路)109と、MPU(小型演算装置)110と、フラッシュ制御デジタル信号処理装置(フラッシュ制御DSP)111と、IRAM(インストラクション・ランダム・アクセス・メモリ)112とを含む。
ホストI/F105は、ホスト102とページバッファ108の間に介在し、ホスト102とのインターフェースを制御する。
フラッシュI/F106は、フラッシュメモリ104とページバッファ108の間に介在し、フラッシュメモリ104に対するデータの書き込み、読み出しを制御する。
ROM107は、64KBの容量を備えた、書換え不可能な読み出し専用メモリである。ROM107は、MPU110を動作させるためのプログラム(MPU用プログラム)と、フラッシュメモリ104から制御プログラムを読み出すための、複数の制御情報読出しプログラムを格納する。
ページバッファ108は、ホストI/F105とフラッシュI/F106との間に介在し、ホスト102からフラッシュメモリ104への書込みデータや、フラッシュメモリ104からホスト102への読み出しデータを一時的に保存するための書換え可能な揮発性メモリである。その容量はフラッシュメモリ104に書込みを行えるデータの容量と同容量であり、ここでは2KBである。
ECC回路109は、フラッシュメモリ104にデータを書込む際にデータに付加すべきECC符号を演算するエンコーダの機能と、フラッシュメモリ104からデータを読み出す際にデータとECC符号を基に誤りの有無を演算により検出するデコーダの機能とを持つと共に、複数の訂正能力を切り替えて使用できる機能も有する。
MPU110は、ROM107から、MPU用プログラムのインストラクションを順次読み出しながら所定の機能を実現する。
MPU110は、ホスト102からのコマンドをホストI/F105を介して受信し、必要に応じてフラッシュ制御DSP111を制御して動作させることにより、ホスト102から受信したコマンドを実行する。MPU110は、フラッシュメモリ104の種類を判別して、フラッシュメモリ104から制御プログラムを読み出すための手順を決定する機能と、制御プログラムをフラッシュメモリ104から読み出し、IRAM112にロードする機能とを有する。
フラッシュ制御DSP111は、IRAM112に格納されているプログラムを読み出しながら、MPU110の制御に従い、ホストI/F105、フラッシュI/F106、ページバッファ108、及びECC回路109を制御して、ホスト102からフラッシュメモリ104へのデータの書込みや、フラッシュメモリ104からホスト102へのデータの読み出しを制御する。
また、ROM107は、フラッシュメモリ104の種類を判定するための最低限度の数十ワードのデータを保持している。フラッシュメモリ104の種類を判定するためのデータは、フラッシュメモリデバイスに固有の識別情報(ID)であり、例えば、製造者を示すメーカコード、デバイスの容量を示すデバイスコード、デバイス内部のメモリセル構成を示すコードが含まれる。
IRAM112は、フラッシュ制御DSP111を動作させるためのインストラクションコードを格納するメモリで、書換え可能な2KBの容量の揮発性メモリで構成される。本実施の形態では、制御対象であるフラッシュメモリ104の種類に応じて異なるインストラクションコードをIRAM112に種々格納することで、多様な不揮発性メモリの制御を可能にしている。
2.動作シーケンス
図2は、本実施形態のメモリカード(不揮発性記憶装置)の初期化動作時におけるコントローラとフラッシュメモリ間の動作シーケンスを説明した図である。
(1)メモリカードの電源がオンされると、初期化動作が開始される。コントローラ103からフラッシュメモリ104に、フラッシュメモリ104の種類について問い合わせを行う。フラッシュメモリ104は、この問い合わせに応答して、フラッシュメモリ104の種類についての識別情報(例えば、製造者を示すメーカコード、デバイスの容量を示すデバイスコード、デバイス内部のメモリセル構成を示すコード等)を回答する。なお、フラッシュメモリの種類について問い合わせを行うのは、フラッシュメモリの種類に応じて異なるデータの読み出し手段を決定するためである。例えば、フラッシュメモリの種類により、読み出しコマンド及びアドレス指定方法、読み出し単位、適用するECCの範囲及び性能が異なる。
(2)コントローラ103は、フラッシュメモリ104から、その種類についての情報を回答として取得すると、その取得した情報に基づきフラッシュメモリ104の種類を特定する。
(3)続いてコントローラ103は、フラッシュメモリ104の種類に応じて、フラッシュメモリ104から制御情報を取得するための手続き(手順)を選択する。制御情報は、不揮発性メモリに対するデータの書き込み、読み出しの制御方法を指定する情報であり、制御プログラムや制御パラメータ等である。
(4)選択した手続き(手順)にしたがいフラッシュメモリ104から制御情報を取得する。
(5)取得した制御情報を用いて、フラッシュメモリ104にアクセスする際の動作モードを設定する。
以上のように、本実施形態では初期化動作時においてコントローラ103に対してフラッシュメモリ104に適した制御情報が設定される。
3.フローチャート
図3は、実施の形態1のメモリカードにおける、不揮発性メモリに応じた制御プログラムをIRAM112にロードする処理を示したフローチャートである。本処理はMPU110により実行される。
メモリカード100がホスト102に接続され、電源がオンされると、MPU110は不揮発性メモリとして接続されるフラッシュメモリ104に対して、メモリの種類の問い合わせ、すなわち、デバイスの認識を行う(S11)。具体的には、デバイスの認識は、フラッシュメモリ104から、その識別情報(ID)を取得することで行われる。
次に、MPU110は、識別情報に基づいてメモリデバイスに対応した制御情報読み出しプログラムを選択し、IRAM112にロードする(S12)。具体的には、MPU110は、フラッシュメモリ104から読み出した識別情報に基づき、ROM107に予め格納されている複数の制御情報読み出しプログラムの中から、フラッシュメモリ104に対応する1つのプログラムを選択し、その選択したプログラムをIRAM112のプログラム格納領域へ転送する。この際、MPU110は、MPU用プログラムにしたがいフラッシュメモリ104に対応した動作を行ってもよい。
制御情報読み出しプログラムは、少なくともフラッシュメモリ104の1ページ分のデータをページバッファ108へ転送する機能と、フラッシュメモリ104に書き込まれるデータに付加されるECCの訂正機能とを実現する。制御情報読み出しプログラムは、フラッシュメモリ104に書き込まれるECC符号の配置を含むデータのフォーマットによって決定される、フラッシュメモリ104にユニークなプログラムである。
メモリカード100に搭載可能な多様な不揮発性メモリは、それぞれ、データ保持能力等の信頼性数値が異なるので、不揮発性メモリに応じた適切な能力のECC符号を付加してデータを書込む。従って読み出す際にも付加されたECC符号の能力に応じた読み出しを行う必要がある。ステップS12において、MPU110が、フラッシュメモリ104に応じた適切な制御情報読み出しプログラムをIRAM112にロードすることによって、フラッシュメモリ104が必要とするECC符号の訂正能力に応じたデータの書き込み及び読み出しがフラッシュ制御DSP111によって実行可能となる。
次に、IRAM112にロードされた制御情報読み出しプログラムにしたがい、制御プログラムが読み出される(S13)。具体的には、MPU110はフラッシュ制御DSP111を制御して、フラッシュメモリ104から制御プログラムを読み出す。つまり、フラッシュ制御DSP111は、IRAM112にロードされた制御情報読み出しプログラムをインストラクションコードとして、フラッシュメモリ104から制御プログラムを読み出し、ページバッファ108へ転送する。
この制御プログラムの読み出しにおいて誤り訂正が可能なエラーがあった場合、フラッシュ制御DSP111は制御情報読み出しプログラムを使用することにより、ページバッファ108におけるデータの誤りを訂正する。
制御プログラムは、フラッシュ制御DSP111がフラッシュメモリ104を制御するためのプログラムを格納しており、種々のフラッシュメモリの特徴に合わせてカスタマイズされたプログラムである。
最後に、読み出した制御プログラムをIRAM112へロードする(S14)。具体的には、MPU110は、ページバッファ108へ読み出した制御プログラムをIRAM112のプログラム格納領域へ転送する。これにより、フラッシュ制御DSP111はIRAM112にロードされた制御プログラムによってフラッシュメモリ104の制御が可能となる。
以上のように、本実施形態では、最初にメモリデバイスを認識し、メモリデバイスに応じた制御情報読み出しプログラムを選択し、その選択された制御情報読み出しプログラムに基づき、フラッシュメモリ104に応じた制御プログラムをフラッシュメモリ104から読み出して、IRAM112へロードする。このような方法で、コントローラ103はフラッシュメモリ104の種類に応じた動作モードの設定を行うことが可能となる。
また、フラッシュメモリ104に格納できる制御プログラムは、コントローラ103に接続される可能性がある多様な不揮発性メモリの各々に対して任意に設定できるので、コントローラ103を、その仕様を変更せずに、種々の不揮発性メモリに対応させて動作させることができる。
4.まとめ
本実施形態のメモリカードによれば、コントローラが不揮発性メモリ(フラッシュメモリ)の制御に必要な情報(制御プログラム)を、不揮発性メモリに応じた方法で、不揮発性メモリから読み出して使用する。つまり、不揮発性記憶装置に搭載された不揮発性メモリの種類が異なっても、同一のコントローラで不揮発性メモリの制御を行うことができるため、不揮発性メモリ毎に異なる仕様を有するコントローラを開発する必要がなく、不揮発性記憶装置の設計、製造時のコストを低減できる。
(実施の形態2)
本発明の別の実施の形態を説明する。本実施形態のメモリカードは、図1に示す構成を有し、その動作シーケンスも図2に示すものと同様である。
図4を参照して、本実施形態のメモリカードにおけるフラッシュメモリに応じた制御プログラムをコントローラにロードする処理を説明する。
メモリカード100の電源がオンされると、MPU110はROM107に格納されたID読出しプログラムをIRAM112にロードする(S21)。フラッシュ制御DSP111は、IRAM112に格納されたID読出しプログラムにしたがい、ある問合せ手順でフラッシュメモリ104に対してフラッシュメモリ104に固有の識別情報(ID)を問い合わせる(S22)。なお、MPU110は複数の問合せ手順を備えており、必要に応じて各問合せ手順を順次試行可能なものとする。
フラッシュメモリ104は識別情報をフラッシュ制御DSP111に返信する。MPU110は、フラッシュ制御DSP111を介してフラッシュメモリ104の識別情報を取得し、その取得した識別情報に基づき、コントローラ103に接続するフラッシュメモリ104がコントローラ103により処理可能なメモリであるか否かを判断する(S23)。具体的には、フラッシュメモリ104から取得した識別情報と、ROM107に格納された識別情報とを照合し、一致するものがあった場合に、フラッシュメモリ104がコントローラ103により処理可能なメモリであると判断する。
コントローラ103に接続するフラッシュメモリ104が、コントローラ103により処理可能なメモリであると判断されたときは、制御情報取得処理を実行する(S24)。そうでないときは、未試行の問合せ手順があるか否かを判断し(S25)、ある場合は、次の問合せ手順で識別情報(ID)を再度問合わせる(S22)。
いずれの問合せ手順を用いても、フラッシュメモリ104が、コントローラ103により処理可能なメモリであると判断されなかったときは、異常終了させる。この場合、例えば、「異常終了」である旨をホスト102上に表示させてもよい。
次に、図5を参照し、上記ステップS24の制御情報取得処理を説明する。フラッシュメモリ104がコントローラ103により処理可能なメモリである場合、MPU110は、ROM107に格納されている複数の制御情報読み出しプログラムの中から、識別情報(ID)に対応する制御情報読出しプログラムを選択し、IRAM112のプログラム格納領域へ転送する(S201)。次に、MPU110は、IRAM112に格納された制御情報読み出しプログラムにしたがいフラッシュ制御DSP111を制御し、フラッシュメモリ104から制御情報として制御プログラムを読み出す(S202)。読み出した制御プログラムをIRAM112のプログラム格納領域に格納する(S203)。
本実施形態においても、コントローラ103においてフラッシュメモリ104の仕様に応じた制御プログラムが設定されるため、不揮発性記憶装置に搭載されている不揮発性メモリの種類が異なっても同一のコントローラで不揮発性メモリの制御を行うことができるため、不揮発性メモリ毎に異なる仕様を有するコントローラを開発する必要がなく、不揮発性記憶装置の設計、製造時のコストを低減できる。
(実施の形態3)
本発明のさらに別の実施の形態を説明する。図6は、本発明の不揮発性記憶装置のさらに別の実施の形態であるメモリカードの構成を示したブロック図である。
本実施形態のメモリカード100bは図1に示すメモリカードの構成に加えて、さらにフラッシュ制御DSP111に接続したROM120を備える。
実施の形態1、2では、ID読出しプログラムはMPU110に接続するROM107に格納されていたが、本実施形態では、フラッシュ制御DSP111に接続したROM120に格納される。このように、本実施形態のメモリカード100bは、実施の形態1、2のものとは、ID読出しプログラムの読み出し先が異なるのみで、その他の処理は、図3または図4及び図5に示す処理と同様である。
本実施形態においても、フラッシュメモリ104から読み出した制御プログラムをコントローラ103bにロードすることで、コントローラ103bによるフラッシュメモリ104の仕様に応じたアクセスが可能となる。
(実施の形態4)
本発明のさらに別の実施の形態を説明する。本実施形態では、プログラムの実行に不可欠な複数のパラメータをプログラムと別に管理する。そして、複数のパラメータから、フラッシュメモリの種類に応じた1つを選択し、その選択したパラメータを用いてプログラムを実行することで、フラッシュメモリに対応した制御を可能とする。
図7は、本発明の不揮発性記憶装置のさらに別の実施の形態であるメモリカードの構成を示したブロック図である。
本実施形態のメモリカード100cは図1に示すメモリカードの構成に加えて、さらにフラッシュ制御DSP111に接続したROM121を備える。
本実施形態では、MPU110に接続するROM107は、MPU用プログラムに加えて、複数の制御情報読出しパラメータを格納する。フラッシュ制御DSP111に接続したROM121は、ID読出しプログラムと、制御情報読出しプログラムと、制御プログラムとを格納する。
制御情報読出しパラメータはフラッシュメモリの種類毎に設定される。制御情報読出しパラメータを用いて、制御情報読出しプログラムを実行することで、フラッシュメモリの種類に応じた制御パラメータの読み出しが実現できる。制御プログラムは、制御パラメータを参照して実行される。制御パラメータは、フラッシュメモリ104内に格納されており、メモリカードの電源オン時にフラッシュメモリ104から読み出されて、制御プログラムの実行時に使用される。
以上の構成を有するメモリカードの動作フローは基本的には図4に示すとおりである。すなわち、メモリカード100の電源がオンされると、MPU110はROM107に格納されたID読出しプログラムをIRAM112にロードする(S21)。フラッシュ制御DSP111は、IRAM112に格納されたID読出しプログラムにしたがい、フラッシュメモリ104に対してフラッシュメモリ104の識別情報(ID)を問い合わせる(S22)。フラッシュメモリ104は識別情報をフラッシュ制御DSP111に返信する。MPU110は、フラッシュ制御DSP111を介してフラッシュメモリ104の識別情報を取得し、その取得した識別情報にしたがい、コントローラ103cに接続するフラッシュメモリ104が、コントローラ103cにより処理可能なメモリであるか否かを判断する(S23)。
フラッシュメモリ104がコントローラ103cにより処理可能なメモリである場合、制御情報所得処理(ステップS24)を実行する。図8のフローチャートを参照し、本実施形態における制御情報所得処理の詳細を説明する。
フラッシュメモリ104がコントローラ103cにより処理可能なメモリである場合、MPU110は、ROM107に格納されている複数の制御情報読み出しパラメータの中から、識別情報(ID)に対応する制御情報読出しパラメータを選択し、IRAM112のパラメータ格納領域へ転送する(S211)。次に、フラッシュ制御DSP111は、IRAM112に格納されたパラメータを使用して、ROM121に格納された制御情報読み出しプログラムを実行し、これにより、フラッシュメモリ104に応じた適切な読み出し制御を行い、フラッシュメモリ104から制御情報として制御パラメータを読み出す(S212)。読み出した制御パラメータは、IRAM112のパラメータ格納領域に格納する(S213)。このようにして読み出された制御パラメータはフラッシュメモリ104の特性を示す情報を有し、よって、フラッシュ制御DSP111は、この制御パラメータを使用して制御プログラムを実行することで、フラッシュメモリ104の仕様に応じたアクセスが可能となる。
一般にパラメータはプログラムよりもデータ量が小さいため、本実施の形態のように、プログラムの代わりに、フラッシュメモリの仕様に応じたパラメータを複数格納することで、必要なROM容量を削減できる。
本発明は、特定の実施形態について説明されてきたが、当業者にとっては他の多くの変形例、修正、他の利用が明らかである。それゆえ、本発明は、ここでの特定の開示に限定されず、添付の請求の範囲によってのみ限定され得る。なお、本出願は日本国特許出願、特願2005−083072号(2005年3月23日提出)に関連し、それらの内容は参照することにより本文中に組み入れられる。
本発明は、不揮発性メモリと、それを制御するコントローラとを備えた不揮発性記憶装置に有用である。
本発明の実施の形態1によるメモリカード(不揮発性記憶装置)の構成を示すブロック図 本発明の実施の形態1によるメモリカードの初期化動作時の動作シーケンス 本発明の実施の形態1によるメモリカードの制御情報のロード動作を示すフローチャート 本発明の実施の形態2によるメモリカードの制御情報のロード動作を示すフローチャート 本発明の実施の形態2によるメモリカードの制御情報取得処理を示すフローチャート 本発明の実施の形態3によるメモリカード(不揮発性記憶装置)の構成を示すブロック図 本発明の実施の形態4によるメモリカード(不揮発性記憶装置)の構成を示すブロック図 本発明の実施の形態4によるメモリカードの制御情報取得処理を示すフローチャート
符号の説明
100、100b、100c メモリカード
102 ホスト
103、103b、103c コントローラ
104 フラッシュメモリ
105 ホストI/F
106 フラッシュI/F
107、120、121 ROM
108 ページバッファ
109 ECC回路
110 MPU
111 フラッシュ制御DSP
112 IRAM

Claims (13)

  1. 不揮発性メモリと、前記不揮発性メモリに対するデータの書き込み、及び、読み出しの制御を行なうコントローラとを備えた不揮発性記憶装置であり、
    前記不揮発性メモリは、
    固有の識別情報と、
    前記コントローラが前記不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有し、
    前記コントローラは、
    複数の種類の揮発性メモリのそれぞれから前記制御情報を読み出すために用いられる、複数の読み出し情報と、
    前記識別情報を前記不揮発性メモリから読み出して前記不揮発性メモリの種類を判別する判別部と、
    前記不揮発性メモリの種類に対応する前記読み出し情報の内の一つを選択する選択部と、
    前記選択された読み出し情報に基づいて、前記不揮発性メモリからの前記制御情報を取得し、前記不揮発性メモリへのデータの書き込み、及び、読み出しを制御する制御部と、を有し、
    前記読み出し情報は、前記制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータを前記コントローラに転送する機能及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む
    ことを特徴とした不揮発性記憶装置。
  2. 前記識別情報は、少なくとも前記不揮発性メモリの容量を示す情報、前記不揮発性メモリ製造メーカを特定する情報、及び前記不揮発性メモリのメモリセル構成を示す情報のいずれかを含む、ことを特徴とした請求項1記載の不揮発性記憶装置。
  3. 前記読み出し情報は、不揮発性メモリに書き込まれるECC符号の配置を含むデータのフォーマットにより決定される、ことを特徴とした請求項1記載の不揮発性記憶装置。
  4. 前記制御情報は、前記不揮発性メモリに対するアクセスを制御するプログラムあるいはパラメータである、ことを特徴とした請求項1記載の不揮発性記憶装置。
  5. 前記読み出し情報に応じて、前記不揮発性メモリから読み出した制御情報に対するECC訂正能力が異なる、ことを特徴とした請求項1記載の不揮発性記憶装置。
  6. 不揮発性メモリに対してデータの書き込み、及び、読み出しの制御を行うコントローラであり、
    前記不揮発性メモリは、
    固有の識別情報と、
    前記コントローラが前記不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有し、
    前記コントローラは、
    複数の種類の揮発性メモリのそれぞれから前記制御情報を読み出すために使用される複数の読み出し情報と、
    前記識別情報を前記不揮発性メモリから読み出して前記不揮発性メモリの種類を判別する判別部と、
    前記不揮発性メモリの種類に対応する前記読み出し情報の内の一つを選択する選択部と、
    前記選択された読み出し情報に基づいて、前記不揮発性メモリからの前記制御情報を取得し、前記不揮発性メモリへのデータの読み込み、及び、読み出しを制御する制御部と、を有し、
    前記読み出し情報は、前記制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータを前記コントローラに転送する機能、及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む
    ことを特徴とした不揮発性メモリのコントローラ。
  7. 前記読み出し情報は、前記不揮発性メモリに書き込まれるECC符号の配置を含むデータのフォーマットにより決定される、ことを特徴とした請求項6記載のコントローラ。
  8. 前記読み出し情報に応じて、前記不揮発性メモリから読み出した制御情報に対するECC訂正能力が異なる、ことを特徴とした請求項6記載のコントローラ。
  9. 不揮発性メモリに対するデータの書き込み、及び、読み出しをコントローラにより制御する不揮発性記憶システムであり、
    前記不揮発性メモリは、
    固有の識別情報と、
    前記コントローラが前記不揮発性メモリへのデータの書き込み、及び、読み出しを制御するための制御情報と、を有し、
    前記コントローラは、
    複数の種類の揮発性メモリのそれぞれから前記制御情報を読み出すために使用される複数の読み出し情報を有し、
    前記識別情報を前記不揮発性メモリから読み出して前記不揮発性メモリの種類を判別し、
    前記不揮発性メモリの種類に対応する前記読み出し情報の内の一つを選択し、
    前記選択された読み出し情報に基づいて、前記不揮発性メモリからの前記制御情報を取得し、前記不揮発性メモリへのデータの書き込み、及び、読み出しを制御
    前記読み出し情報は、前記制御情報を読み出すために用いられ、不揮発性メモリの1ページ分のデータを前記コントローラに転送する機能及び不揮発性メモリに書き込まれるデータに付加されるECCの訂正機能に関する情報を含む
    ことを特徴とした不揮発性記憶システム。
  10. 前記識別情報は、少なくとも前記不揮発性メモリの容量を示す情報、前記不揮発性メモリ製造メーカを特定する情報、及び前記不揮発性メモリのメモリセル構成を示す情報のいずれかを含む、ことを特徴とした請求項9記載の不揮発性記憶システム。
  11. 前記読み出し情報は、不揮発性メモリに書き込まれるECC符号の配置を含むデータのフォーマットにより決定される、ことを特徴とした請求項9記載の不揮発性記憶システム。
  12. 前記制御情報は、前記不揮発性メモリに対するアクセスを制御するプログラムあるいはパラメータである、ことを特徴とした請求項9記載の不揮発性記憶システム。
  13. 前記読み出し情報に応じて、前記不揮発性メモリから読み出した制御情報に対するECC訂正能力が異なる、ことを特徴とした請求項9記載の不揮発性記憶システム。
JP2007509297A 2005-03-23 2006-03-22 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム Expired - Fee Related JP4740233B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007509297A JP4740233B2 (ja) 2005-03-23 2006-03-22 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005083072 2005-03-23
JP2005083072 2005-03-23
JP2007509297A JP4740233B2 (ja) 2005-03-23 2006-03-22 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム
PCT/JP2006/305699 WO2006101123A1 (ja) 2005-03-23 2006-03-22 不揮発性記憶装置及び不揮発性記憶装置の制御情報のロード方法

Publications (2)

Publication Number Publication Date
JPWO2006101123A1 JPWO2006101123A1 (ja) 2008-09-04
JP4740233B2 true JP4740233B2 (ja) 2011-08-03

Family

ID=37023783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007509297A Expired - Fee Related JP4740233B2 (ja) 2005-03-23 2006-03-22 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム

Country Status (3)

Country Link
US (1) US8214714B2 (ja)
JP (1) JP4740233B2 (ja)
WO (1) WO2006101123A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8428484B2 (en) * 2005-03-04 2013-04-23 Sharp Laboratories Of America, Inc. Methods and systems for peripheral accounting
JP2008158991A (ja) * 2006-12-26 2008-07-10 Ricoh Co Ltd Nand型フラッシュメモリの制御システム
CN101162449B (zh) * 2007-10-08 2010-06-02 福州瑞芯微电子有限公司 Nand flash控制器及其与nand flash芯片的数据交互方法
CN101751338B (zh) * 2008-12-15 2012-03-07 中芯国际集成电路制造(上海)有限公司 数据存取控制装置及数据存取方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002069127A1 (fr) * 2001-02-26 2002-09-06 Tokyo Electron Device Limited Procede de commande d'un support de stockage, commande du support de stockage, et adaptateur de support de stockage
WO2004044755A2 (en) * 2002-11-13 2004-05-27 Sandisk Corporation Universal non-volatile memory card used with various different standard cards containing a memory controller
JP2004234129A (ja) * 2003-01-28 2004-08-19 Matsushita Electric Ind Co Ltd 半導体集積回路における記憶装置識別回路

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4443865A (en) * 1981-10-26 1984-04-17 Allen-Bradley Co. Processor module for a programmable controller
US6804760B2 (en) * 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
JP2000082122A (ja) 1998-09-07 2000-03-21 Hitachi Ltd メモリカード
US20070080930A1 (en) 2005-10-11 2007-04-12 Logan James R Terminal device for voice-directed work and information exchange
KR100746036B1 (ko) * 2006-02-23 2007-08-06 삼성전자주식회사 플래시 메모리를 제어하는 장치 및 방법
JP4418439B2 (ja) * 2006-03-07 2010-02-17 パナソニック株式会社 不揮発性記憶装置およびそのデータ書込み方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002069127A1 (fr) * 2001-02-26 2002-09-06 Tokyo Electron Device Limited Procede de commande d'un support de stockage, commande du support de stockage, et adaptateur de support de stockage
WO2004044755A2 (en) * 2002-11-13 2004-05-27 Sandisk Corporation Universal non-volatile memory card used with various different standard cards containing a memory controller
JP2004234129A (ja) * 2003-01-28 2004-08-19 Matsushita Electric Ind Co Ltd 半導体集積回路における記憶装置識別回路

Also Published As

Publication number Publication date
US8214714B2 (en) 2012-07-03
JPWO2006101123A1 (ja) 2008-09-04
US20090077445A1 (en) 2009-03-19
WO2006101123A1 (ja) 2006-09-28

Similar Documents

Publication Publication Date Title
US7543137B2 (en) Information processing device and information processing method
US6851018B2 (en) Exchanging operation parameters between a data storage device and a controller
US20070214309A1 (en) Nonvolatile storage device and data writing method thereof
US20060106973A1 (en) Nonvolatile memory card
US9785382B2 (en) Method and apparatus for read retry sequence for boot ROM
US20070043901A1 (en) Optical disc recording system with shared non-volatile memory design
US20100235617A1 (en) System recovery method and embedded system with automatic recovery function
US20060282558A1 (en) Control chip for optical disk drive and method for updating firmware in the control chip
US7398425B2 (en) Information processing apparatus including NAND flash memory, and information processing method for the same
JP4740233B2 (ja) 不揮発性記憶装置、不揮発性メモリのコントローラ、及び不揮発性記憶システム
US20120017071A1 (en) Apparatus and Method Thereof for Reliable Booting from NAND Flash Memory
US20050207232A1 (en) Access method for a NAND flash memory chip, and corresponding NAND flash memory chip
US20060174148A1 (en) Controller and method for power-down mode in memory card system
US7096351B2 (en) Single-chip microcomputer and boot region switching method thereof
JP4177360B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US8010734B2 (en) Method and system for reading instructions from NAND flash memory and writing them into SRAM for execution by a processing device
US6883078B2 (en) Microcomputer with reduced memory usage and associated method
JP2008251154A (ja) 不揮発性半導体記憶装置
US6148362A (en) Microcomputer using nonvolatile semiconductor memory to store user code/data
JP2007234212A (ja) Nandフラッシュメモリのプログラム方法及びメモリシステムのプログラム方法
JP2007052558A (ja) フラッシュメモリ書換え装置、フラッシュメモリ書換え方法及びフラッシュメモリ書換えプログラム
JP4213140B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2002207715A (ja) マイクロコンピュータ及びそれに用いるメモリ制御方法
JP4235624B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4656559B2 (ja) マイクロコンピュータとメモリアクセス方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110328

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110419

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: 20110428

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees