JP2008077468A - メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 - Google Patents
メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 Download PDFInfo
- Publication number
- JP2008077468A JP2008077468A JP2006256937A JP2006256937A JP2008077468A JP 2008077468 A JP2008077468 A JP 2008077468A JP 2006256937 A JP2006256937 A JP 2006256937A JP 2006256937 A JP2006256937 A JP 2006256937A JP 2008077468 A JP2008077468 A JP 2008077468A
- Authority
- JP
- Japan
- Prior art keywords
- address
- flash memory
- code
- block
- operation instruction
- 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.)
- Granted
Links
Images
Abstract
【解決手段】フラッシュメモリに対するアクセスを制御するために実行される制御動作を指示する動作命令コードを複数個含むコードセットを記憶しているコードセット記憶手段と、動作命令コードのアドレスを保持するアドレス保持手段と、ホストシステムから外部コマンドが与えられたときに、その外部コマンドに対応するコードセットに含まれる動作命令コードのアドレスをアドレス保持手段に設定するコードセット選択手段と、アドレス保持手段に設定されているアドレスに従ってコードセット記憶手段から動作命令コードを読み出して制御動作を実行する制御動作実行手段と、制御動作実行手段が制御動作を実行する毎に、前記アドレス保持手段に設定されているアドレスを、次に実行すべき制御動作に対応する動作命令コードのアドレスに変更するアドレス更新手段を備える。
【選択図】図3
Description
フラッシュメモリ2は、不揮発性メモリであり、レジスタとメモリセルアレイとから構成される。フラッシュメモリ2は、レジスタとメモリセルアレイとの間でデータの複写を行って、データの書き込みまたは読み出しを行う。
コントローラ3は、図1に示すように、マイクロプロセッサ6と、ホストインターフェースブロック7と、ワークエリア8と、バッファ9と、フラッシュメモリインターフェースブロック10と、ECCブロック11と、ROM(Read Only Memory)12と、から構成される。これら機能ブロックによって構成されるコントローラ3は、一つの半導体チップ上に集積される。以下に各機能ブロックについて説明する。
本実施形態に係るフラッシュメモリシステム1では、複数の物理ブロックでゾーンを形成し、各ゾーンに対して、予め設定された論理アドレスの領域を割り当てている。
次に、ホストシステム4から指示情報が与えられた場合の処理について説明する。
(S61)ホストシステム4から与えられる指示情報に含まれるアクセス領域を指示する情報に基づいてアクセス対象領域が含まれる論理ブロックを求め、更に、論理ブロックと対応する物理ブロックの物理ブロックアドレス(PBA)をアドレス変換処理により求める。つまり、S61では、まず、アクセス対象領域が含まれる論理ブロックの論理ブロック番号(LBN)が求められる。続いて、論理ブロック番号(LBN)と物理ブロックアドレス(PBA)の対応関係を示したアドレス変換テーブルを参照して、アクセス対象領域が含まれる論理ブロックと対応する物理ブロックの物理ブロックアドレス(PBA)が求められる。
(S64)フラッシュメモリインターフェースブロック10が動作中のときは、動作が終了するのを待ち、動作が終了しているときはS62に進む。ここで、フラッシュメモリインターフェースブロック10が動作中か否かは、フラッシュメモリインターフェースブロック10からの割り込みがあったかどうかで判断する。
(S62)フラッシュメモリインターフェースブロック10の物理ブロックアドレスレジスタ21、サブページ番号レジスタ22及びカウンタ23にフラッシュメモリ内の領域を指示する情報を設定する。具体的には、S61で求めた物理ブロックアドレス(PBA)を物理ブロックアドレスレジスタ21に設定する。次に、アクセス対象領域の先頭セクタに対応するLBAの下位8ビット(0〜255)をサブページ番号レジスタ22に設定する。最後に、アクセス対象領域に含まれるセクタ数をカウンタ23に設定する。ここで、アクセス領域が複数の論理ブロックに跨っていない場合、ホストシステム4からの指示情報に含まれるセクタ数がカウンタ23に設定される値に一致する。一方、ホストシステム4から指示されるアクセス領域が、複数の論理ブロックに跨っている場合、各論理ブロック内におけるアクセス対象領域に含まれるセクタ数をカウンタ23に設定する。
(S63)フラッシュメモリインターフェースブロック10のプログラムカウンタ24に動作命令コードのアドレスを設定する。ここでは、ホストシステム4からの指示情報に含まれるコマンドに対応したコードセットの先頭動作命令コードのアドレスをプログラムカウンタ24に設定する。例えば、コマンドが読み出し指示するコマンドの場合、読み出しのときにフラッシュメモリインターフェースブロック10が実行する一連の制御動作に対応したコードセットの先頭動作命令コードのアドレスをプログラムカウンタ24に設定する。このプログラムカウンタ24に動作命令コードのアドレスが設定された後、フラッシュメモリインターフェースブロック10は後述する図7に示した一連の制御動作を開始する。
(S71)フラッシュメモリ2にコマンドとアドレスを供給しデータを送受信する。例えば、読み出し処理の場合、まず、フラッシュメモリ2に読み出しを指示する内部コマンド(リードコマンド)を供給する。続いて、読み出すデータが記憶されているページを指定するロウアドレスと、ページ内の読み出し開始位置(0バイト〜2111バイト)を指定するカラムアドレスとをフラッシュメモリ2に供給する。先頭サブページからデータを読み出す場合には、カラムアドレスで先頭のサブページに対応するアドレスを指定する。ここで、フラッシュメモリ2はメモリセルアレイからレジスタへのデータの読み出し(複写)を実行するためビジー状態になる。フラッシュメモリ2のビジー状態が解除された後、フラッシュメモリ2のリードイネーブル端子にハイレベルとローレベルの信号を交互に入力し、フラッシュメモリ2内のレジスタから先頭のサブページに対応するデータを読み出す。
(S72)フラッシュメモリインターフェースブロック10内のサブページ番号レジスタ22及びカウンタ23に設定されている値を更新する。この更新では、サブページ番号レジスタ22に設定されている値をインクリメント(1ずつ加算)し、カウンタ23に設定されている値をデクリメント(1ずつ減算)する。つまり、1セクタ分の読み出し又は書き込みが終了する毎に、サブページ番号レジスタ22に設定されている値が1ずつ増加し、カウンタ23に設定されている値が1ずつ減少する。
(S73)カウンタ23に設置されている値が0の場合は、S74に進み、0でない場合は、S71に進む。例えば、サブページ番号レジスタ22に値mを設定し、カウンタ23に値nを設定した読み出し処理では、サブページ番号#m〜#m+n−1のサブページに記憶されたnセクタのデータが読み出された後にS74に進む。
(S74)一連の制御動作が終了したことをマイクロプロセッサ6に通知する割り込みを発生させる。つまり、カウンタ23に設置されている値が0のときに最終動作命令コードに分岐し、割り込みを発生させる。
カウンタ23に設定されている値が0なのでS74に進み(S73)、マイクロプロセッサ6に一連の制御動作が終了したことを通知する割り込みを発生させる。
2 フラッシュメモリ
3 コントローラ
4 ホストシステム
6 マイクロプロセッサ
7 ホストインターフェースブロック
8 ワークエリア
9 バッファ
10 フラッシュメモリインターフェースブロック
11 ECCブロック
12 ROM
13 外部バス
14 内部バス
21 物理ブロックアドレスレジスタ
22 サブページ番号レジスタ
23 カウンタ
24 プログラムカウンタ
Claims (6)
- ホストシステムから与えられる指示情報に応じて、ブロック単位で記憶データの消去を実行するフラッシュメモリに対するアクセスを制御するメモリコントローラであって、
前記フラッシュメモリに対するアクセスを制御するために実行される制御動作を指示する動作命令コードを複数個含むコードセットを複数組記憶しているコードセット記憶手段と、
前記コードセット記憶手段に記憶されている前記動作命令コードのアドレスを保持するアドレス保持手段と、
前記指示情報が与えられたときに、該指示情報に含まれる外部コマンドに対応する前記コードセットを選択し、該コードセットに含まれる前記動作命令コードのアドレスを前記アドレス保持手段に設定するコードセット選択手段と、
前記アドレス保持手段に設定されているアドレスに従って前記コードセット記憶手段から前記動作命令コードを読み出し、該動作命令コードに基づいた制御動作を実行する制御動作実行手段と、
前記制御動作実行手段が前記動作命令コードに基づいた制御動作を実行する毎に、前記アドレス保持手段に設定されているアドレスを、次に実行すべき制御動作に対応する前記動作命令コードのアドレスに変更するアドレス更新手段と、
を備えることを特徴とするメモリコントローラ。 - 前記制御動作実行手段が前記コードセットに基づいた一連の制御動作を実行しているときに、前記アドレス保持手段に設定されているアドレスを変更することにより前記一連の制御動作を終了させる強制終了手段を備えることを特徴とする請求項1に記載のメモリコントローラ。
- 前記指示情報に基づいて特定されるアクセス対象領域に対応する前記フラッシュメモリ内のブロックの物理ブロックアドレスを求めるアドレス変換手段を備えることを特徴とする請求項1又は2に記載のメモリコントローラ。
- 請求項1から3のいずれか1項に記載のメモリコントローラとフラッシュメモリを備えることを特徴とするフラッシュメモリシステム。
- ホストシステムから与えられる指示情報に応じて、ブロック単位で記憶データの消去を実行するフラッシュメモリに対するアクセスを制御するために、予め記憶手段に記憶されている複数個の動作命令コード含むコードセットに基づいて一連の制御動作を実行するフラッシュメモリの制御方法であって、
前記指示情報が与えられたときに、該指示情報に含まれる外部コマンドに対応する前記コードセットを選択し、該コードセットに含まれる前記動作命令コードのアドレスをアドレス保持手段に設定するコードセット選択ステップと、
前記アドレス保持手段に設定されているアドレスに従って前記記憶手段から前記動作命令コードを読み出し、該動作命令コードに基づいた制御動作を実行する制御動作実行ステップと、
前記制御動作実行ステップで前記動作命令コードに基づいた制御動作が実行される毎に、前記アドレス保持手段に設定されているアドレスを次に実行すべき制御動作に対応する前記動作命令コードのアドレスに変更するアドレス更新ステップと、
を含むことを特徴とするフラッシュメモリの制御方法。 - 前記アドレス保持手段に設定されているアドレスを変更することにより、前記コードセット選択ステップで選択された前記コードセットに基づいた一連の制御動作を強制的に終了させる強制終了ステップを含むことを特徴とする請求項5に記載のフラッシュメモリの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006256937A JP4661748B2 (ja) | 2006-09-22 | 2006-09-22 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006256937A JP4661748B2 (ja) | 2006-09-22 | 2006-09-22 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008077468A true JP2008077468A (ja) | 2008-04-03 |
JP4661748B2 JP4661748B2 (ja) | 2011-03-30 |
Family
ID=39349442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006256937A Active JP4661748B2 (ja) | 2006-09-22 | 2006-09-22 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4661748B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012221338A (ja) * | 2011-04-12 | 2012-11-12 | Hitachi Ltd | 半導体装置、不揮発性メモリ装置の制御方法 |
US8359425B2 (en) | 2010-07-09 | 2013-01-22 | Kabushiki Kaisha Toshiba | Memory control device, memory device, and shutdown control method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07161195A (ja) * | 1993-06-30 | 1995-06-23 | Intel Corp | フラッシュメモリ |
JPH1063442A (ja) * | 1996-08-22 | 1998-03-06 | Toshiba Corp | 半導体ディスク装置 |
JP2000293427A (ja) * | 1999-04-05 | 2000-10-20 | Mitsubishi Electric Corp | フラッシュメモリを搭載する記憶装置 |
JP2006155335A (ja) * | 2004-11-30 | 2006-06-15 | Tdk Corp | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
-
2006
- 2006-09-22 JP JP2006256937A patent/JP4661748B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07161195A (ja) * | 1993-06-30 | 1995-06-23 | Intel Corp | フラッシュメモリ |
JPH1063442A (ja) * | 1996-08-22 | 1998-03-06 | Toshiba Corp | 半導体ディスク装置 |
JP2000293427A (ja) * | 1999-04-05 | 2000-10-20 | Mitsubishi Electric Corp | フラッシュメモリを搭載する記憶装置 |
JP2006155335A (ja) * | 2004-11-30 | 2006-06-15 | Tdk Corp | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8359425B2 (en) | 2010-07-09 | 2013-01-22 | Kabushiki Kaisha Toshiba | Memory control device, memory device, and shutdown control method |
JP2012221338A (ja) * | 2011-04-12 | 2012-11-12 | Hitachi Ltd | 半導体装置、不揮発性メモリ装置の制御方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4661748B2 (ja) | 2011-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4373943B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2007034581A (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4661497B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4235646B2 (ja) | メモリコントローラおよびフラッシュメモリシステム | |
JP4501881B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4661191B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4661748B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4609406B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4513786B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
JP2005292925A (ja) | メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4697146B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4177292B2 (ja) | メモリンコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4000124B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP3934659B1 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4194518B2 (ja) | メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4304167B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4177301B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2006178909A (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4213166B2 (ja) | メモリコントローラおよびフラッシュメモリシステム | |
JP4366283B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム | |
JP4254930B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2005293177A (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4569554B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4497124B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4245594B2 (ja) | メモリコントローラ及びフラッシュメモリシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100803 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100730 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100927 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101026 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101112 |
|
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: 20101207 |
|
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: 20101220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4661748 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: 20140114 Year of fee payment: 3 |