JP5275623B2 - メモリコントローラ及びメモリシステム - Google Patents

メモリコントローラ及びメモリシステム Download PDF

Info

Publication number
JP5275623B2
JP5275623B2 JP2007336909A JP2007336909A JP5275623B2 JP 5275623 B2 JP5275623 B2 JP 5275623B2 JP 2007336909 A JP2007336909 A JP 2007336909A JP 2007336909 A JP2007336909 A JP 2007336909A JP 5275623 B2 JP5275623 B2 JP 5275623B2
Authority
JP
Japan
Prior art keywords
buffer memory
data
memory
interface
command
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
JP2007336909A
Other languages
English (en)
Other versions
JP2008165799A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2008165799A publication Critical patent/JP2008165799A/ja
Application granted granted Critical
Publication of JP5275623B2 publication Critical patent/JP5275623B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory

Description

本発明はメモリ装置に係り、より詳しくはフラッシュメモリカードに関する。
半導体メモリ装置は、データの読み出し及び書き込みは自由にできるが、電源が遮断されると貯蔵されたデータが消えてしまうRAMと、電源が遮断されても貯蔵されたデータが消えないROMを含み、フラッシュメモリ装置は、RAMとROMの機能を共に有するメモリである。フラッシュメモリ装置をカード型にパッケージ化したものをメモリカード又はフラッシュメモリカードと称し、係るカードはデジタルカメラ、携帯用ミュージックプレーヤ等のデジタル器機の記憶媒体として急速に普及している。また、フラッシュメモリ装置のパッケージにUSBコネクタを取り付けたUSBメモリはフロッピー(登録商標)ディスクの代わりにパソコン用のデータ交換用のメディアとして期待を集めている。最近、パソコンのマザーボード上にフラッシュメモリ装置を装着して、BIOS記憶用で使う例もある。
初期のフラッシュメモリカードは補助データの貯蔵装置の用途に使われたので、10MB/s以下の遅い読み出し及び書き込みの速度を有しても問題はなかった。しかし、大容量化によりフラッシュメモリカードは、大容量のデータの管理のため速いアクセス速度と、ハードディスク並の性能が要求されている。従って、フラッシュメモリカードに使われるバッファメモリに比べて数十倍以上の容量を有するSRAM又はDRAMの様なバッファメモリが必要となる。また、これらのバッファメモリを管理するためのソフトウェアの開発も必要である。一般的に、小さい空間のバッファメモリを有するフラッシュメモリカードの場合も、ホストの命令語に対して数十μs乃至数百μsの応答時間が必要である。これは、バッファメモリの容量が増えることによりホストの命令語に対する応答時間がさらに掛かることを意味する。従って、ホストの命令語に対する応答速度を早くする技術が要求される。
なお、フラッシュメモリ装置については特許文献1乃至5に記載されたものが知られている。
米国特許6,870,766号 米国特許6,914,013号 米国特許7,099,196号 米国特許7,042,770号 米国特許7,110,301号
本発明の目的は応答速度が向上できるメモリコントローラ及びメモリシステムを提供することである。
本発明の他の目的はハードウェアの方式でホストの命令語が処理できるメモリコントローラ及びメモリシステムを提供することである。
本発明の実施形態等は、フラッシュメモリ装置を制御するメモリコントローラを提供し、前記メモリコントローラは、前記フラッシュメモリ装置にデータを貯蔵するバッファメモリと、前記バッファメモリの読み出し及び書き込み動作を制御するバッファメモリのインターフェースと、ハードウェア的にデータ命令を解釈する命令語の自動処理ユニットを含み、前記データ命令が書き込み情報を含むとき、前記命令語の自動処理ユニットは、入力されたデータが前記バッファメモリに貯蔵されたデータと連続性を有するか否かを判断し、
連続性があるときは、前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続して貯蔵される様に前記バッファメモリのインターフェースを制御する。
実施形態に於いて、前記命令語の自動処理ユニットは、前記バッファメモリに貯蔵されたデータに対する論理アドレス/物理アドレスのマッピング情報を貯蔵するキャッシュテーブルを含む。
実施形態に於いて、前記キャッシュテーブルは、前記バッファメモリに貯蔵されたデータに対する連続性を判断するマッピング情報をさらに貯蔵する。
実施形態に於いて、前記命令語の自動処理ユニットは、連続性を判断する前記マッピング情報により、入力されたデータが前記バッファメモリに貯蔵されたデータと連続性を有するか否かを判断する。
実施形態に於いて、前記データ命令が読み出し情報を含むとき、前記命令語の自動処理ユニットは、前記データ命令に含まれたアドレス情報と一致する論理アドレスが前記キャッシュテーブルにあるか否かを判断する。
実施形態に於いて、前記データ命令に含まれたアドレス情報と一致する論理アドレスが前記キャッシュテーブルにあるとき、前記命令語の自動処理ユニットは、前記一致する論理アドレスに対応するデータが前記バッファメモリから外部に出力される様に前記バッファメモリのインターフェースを制御する。
実施形態に於いて、前記データ命令に含まれたアドレス情報と一致する論理アドレスが前記キャッシュテーブルにないとき、前記命令語の自動処理ユニットは、インタラプトを発生させる。
実施形態に於いて、メモリコントローラは、前記インタラプトに応じて動作するプロセスユニットと、前記プロセスユニットの制御により、前記フラッシュメモリ装置の読み出し及び書き込み動作等を制御するフラッシュインターフェースとをさらに含む。
実施形態に於いて、前記インタラプトが発生するとき、前記プロセスユニットは、前記データ命令に含まれたアドレス情報に対応するデータが前記フラッシュメモリ装置から前記バッファメモリに伝送され、前記バッファメモリに貯蔵されたデータが前記ホストに伝送される様に前記フラッシュ及びバッファメモリのインターフェース等を制御する。
実施形態に於いて、前記命令語の自動処理ユニットは、前記バッファメモリの空の空間情報により、前記バッファメモリに貯蔵されたデータが前記バッファメモリに貯蔵されるデータに切り替えられて貯蔵されない様に前記バッファメモリのインターフェースを制御する。
実施形態に於いて、前記命令語の自動処理ユニットは、前記バッファメモリの論理アドレス/物理アドレスのマッピング情報を貯蔵するキャッシュテーブルと、前記バッファメモリの空の空間情報を貯蔵する空間テーブルと、ハードウェア的に前記データ命令を解釈し、該解釈の結果により読み出し又は書き込み命令を出力する命令語の解釈器と、前記命令語の解釈器から読み出し又は書き込み命令に応じて前記バッファメモリのインターフェースを制御するバッファメモリの動作制御器を含む。
実施形態に於いて、前記バッファメモリの動作制御器は、前記空間テーブルの空の空間情報により、前記バッファメモリの書き込みアドレスを決定する。
本発明は、ホストから要求された読み出し/書き込み命令をハードウェア的に自動処理することによって、ホストの要求に対する応答時間を短くすることができる。また、バッファメモリに貯蔵されるデータの連続性により、バッファメモリの書き込み動作を制御して、メモリコントローラの書き込みの性能を向上させることができる。
参照符号等が本発明の実施形態等及び図面等に表示されている。同一参照符号は同一又は似の部分を示すために使用される。
また、不揮発性メモリ装置としてフラッシュメモリ装置が、本発明の特徴及び機能を説明するために一つの例として利用される。しかし、この技術分野に詳しい者は、後で説明される実施形態等の内容により、本発明の他の長所及び性能を直ぐ理解できるであろう。本発明は変形された他の実施形態によっても実現できる。また、本発明の詳細な説明は本発明の範囲、技術的な思想、目的から外れない観点及び応用により変形できる。
図1は本発明によるメモリシステムを概略的に示すブロック図である。
図1を参照すれば、本発明によるメモリシステムは、メモリコントローラ1000、フラッシュメモリ装置2000を含む。メモリコントローラ1000は、ホスト3000の要求により、フラッシュメモリ装置2000を制御する。メモリコントローラ1000は、ホストインターフェース1100、フラッシュインターフェース1200、プロセスユニット1300、バッファメモリのインターフェース1400、バッファメモリ1500及び命令語の自動処理ユニット(Automatic command processing unit ACPU)1600を含む。ホストインターフェース1100は、メモリコントローラ1000とホスト3000との間のインターフェースを提供する。ホストインターフェース1100は、ATA、SATA、USB、SCSI、ESDI、ISO、PCI又はIDEインターフェースの様な標準インターフェース(standardized interface)によってホスト3000と接続される。フラッシュインターフェース1200は、メモリコントローラ1000とフラッシュメモリ装置2000との間のインターフェースを提供する。フラッシュメモリ装置2000は、NANDフラッシュメモリ装置、NORフラッシュメモリ装置、PRAM、MRAM等の様な不揮発性メモリ装置を含む。プロセスユニット1300は、ホスト3000から要求された読み出し及び書き込み動作等を選択的に処理する。これに対しては、後で詳しく説明する。バッファメモリのインターフェース1400は、プロセスユニット1300又はACPU1600によって制御され、バッファメモリ1500に対するアクセスを制御する。フラッシュメモリ装置2000は、特許文献1乃至5に開示されている。
続いて、図1を参照すれば、本発明によるACPU1600は、ホストインターフェース1100を介してホスト3000から受信されるデータ命令、例えば、読み出し及び書き込み情報、データアドレス、伝送されるデータの量を表すカウント値をハードウェア的に処理する様に構成される。入力されたデータ命令が書き込み命令を含むとき、ホスト3000から伝送されるデータはACPU1600の制御により、バッファメモリのインターフェース1400を介してバッファメモリ1500に貯蔵される。入力されたデータ命令が読み出し命令を含むとき、バッファメモリ1500に貯蔵されたデータ又はフラッシュメモリ装置2000から読み出されたデータはACPU1600又はプロセスユニット1300の制御により、ホスト3000に伝送される。これに対して詳しく説明する。
本発明によるメモリコントローラ1000のACPU1600は、ホスト3000によって要求された読み出し又は書き込み命令をハードウェア的に自動処理する。その結果、ホスト3000の要求に対する応答速度が向上される。
図2は図1に図示された命令語の自動処理ユニットを概略的に示すブロック図であり、図3は図2に図示されたキャッシュテーブルを示す図である。
先に、図2を参照すれば、本発明による命令語の自動処理ユニット1600は、命令語の解釈器1620、バッファメモリの動作制御器1640、キャッシュテーブル1660及び空間テーブル1680を含む。キャッシュテーブル1660は、図3に図示された様に、バッファメモリ1400に貯蔵されたデータに対する論理アドレスLA及び物理アドレスPAのマッピング情報を貯蔵する。空間テーブル1680は、バッファメモリ1400の空の空間を示す情報を貯蔵する。
命令語の解釈器1620は、ホストインターフェース1100を介してホスト3000から伝送されるデータ命令を受信する。ここで、データ命令は読み出し/書き込み情報、データアドレス(論理アドレス)及び既に読み出されたデータ又は後で書き込まれるデータの量を表すカウント値を含む。命令語の解釈器1620は、入力されたデータ命令が読み出し情報又は書き込み情報を含むか否かを判断する。入力されたデータ命令が書き込み情報を含むとき、命令語の処理器1620は空間テーブル1680に貯蔵された情報を参照して、書き込まれるデータの量がバッファメモリ1500の空の空間より小さいか否かを判断する様に構成される。これは、バッファメモリ1500に貯蔵されたデータを失うことを防止する。これに対して詳しく説明する。入力されたデータ命令が読み出し命令を含むとき、命令語の処理器1620は入力されたデータアドレスLAに対応する論理アドレスLAがキャッシュテーブル1660に貯蔵されたLA、PAのマッピング情報にあるか否かを判断する様に構成される。命令語の解釈器1620から書き込み命令が受信されるとき、バッファメモリの動作制御器1640は入力されたデータアドレス即ち、論理アドレスLAに対応する物理アドレスPAを書き込み命令と共にバッファメモリのインターフェース1400に出力する。命令語の解釈器1620から読み出し命令が受信されるとき、バッファメモリの動作制御器1640は入力されたデータアドレス即ち、論理アドレスLAに対応する物理アドレスPAを読み出し命令と共に、バッファメモリのインターフェース1400に出力する。バッファメモリの動作制御器1640は空間テーブル1680の空の空間情報により、バッファメモリ1500の書き込みアドレス(物理アドレス)を決定する様に構成される。
この実施形態に於いて、テーブル等1660、1680は一つの貯蔵ユニット又は対応する貯蔵ユニット等を利用して実現できる。
以下に、本発明による命令語の自動処理ユニットの動作を参照図面等により、詳しく説明する。先に、書き込み動作に関連した命令語の自動処理ユニットの動作を説明する。
ホスト3000から伝送されたデータ命令、即ち、読み出し/書き込み情報、データアドレスLA、カウント値はホストインターフェース1100を介して命令語の解釈器1620に伝送される。命令語の解釈器1620は、入力されたデータ命令が読み出し情報又は書き込み情報を含むか否かを判断する。入力されたデータ命令が書き込み情報を含むとき、命令語の解釈器1620は、空の空間テーブル1680に貯蔵された空の空間情報を参照して、書き込まれるデータの量が空の空間より大きいか否かを判断する。例えば、書き込まれるデータの量が空の空間より小さいものと判断されると、命令語の解釈器1620は書き込み命令をバッファメモリの動作制御器1640に伝送する。書き込み命令が命令語の解釈器1620から受信されると、バッファメモリの動作制御器1640は入力された論理アドレスに対応する物理アドレスPAを書き込み命令と共にバッファメモリのインターフェース1400に伝送する。その後、バッファメモリのインターフェース1400は、ホスト3000から提供されるデータをバッファメモリ1500に貯蔵する。書き込み動作のとき、変更されたLA、PAのマッピング情報はキャッシテーブル1660に貯蔵される。例えば、書き込まれるデータの量が空の空間より大きいものと判断されると、空の空間の大きさに制限されたデータの伝送を始めた後インタラプトを発生させたり、データの伝送をしない状態でインタラプトを発生させる。インタラプトが発生すれば、プロセスユニット1300は空の空間を追加に確保した後、残りのデータの伝送を再開する。
書き込み動作のとき、バッファメモリ1500に貯蔵されるデータは前のデータとの関連性によって連続又は不連続で管理される。バッファメモリ1500に貯蔵されるデータは前のデータとの関連性によって連続して貯蔵されることが好ましい。さらに詳しく説明すれば、次のようである。
入力されたデータ命令が書き込み情報を含むとき、命令語の解釈器1620は書き込み命令をバッファメモリの動作制御器1640に伝送する。バッファメモリの動作制御器1640は入力された書き込み命令に応じてデータアドレスLAのデータがバッファメモリ1500に貯蔵されたデータに連続しているか否かを判断する。データに連続していれば、バッファメモリの動作制御器1640はバッファメモリ1500に貯蔵されたデータに対して連続して貯蔵される様に入力されたデータアドレスLAに対応する物理アドレスを決定する。このように決定された物理アドレスは書き込み命令と共にバッファメモリのインターフェース1400に伝送される。例えば、データアドレスLAのデータがバッファメモリ1500に貯蔵されたデータに不連続的であれば、バッファメモリの動作制御器1640はホスト3000から伝送されるデータがバッファメモリ1500の独立アドレスの空間に貯蔵される様に物理アドレスを任意に決定する。このように決定された物理アドレスは書き込み命令と共にバッファメモリのインターフェース1400に伝送される。結果的に、図4に図示された様に、バッファメモリ1500には、連続性を有するデータは連続して貯蔵されるが、連続性がないデータは不連続でバッファメモリ1500に貯蔵される。係る書き込みの方式によると、バッファメモリ1500に連続して貯蔵されたデータはフラッシュメモリ装置2000の同じ領域に同時に貯蔵される。このことは書き込みの性能が向上されたことを意味する。
次に、読み出し動作に関連する命令語の自動処理ユニットの動作を参照図面等により、詳しく説明する。
ホスト3000から伝送されたデータ命令、即ち、読み出し/書き込み情報、データアドレスLA、カウント値はホストインターフェース1100を介して命令語の解釈器1620に伝送される。命令語の解釈器1620は入力されたデータ命令が読み出し情報又は書き込み情報を含むか否かを判断する。入力されたデータ命令が読み出し情報を含むとき、命令語の処理器1620は入力されたデータアドレスLAに対応する論理アドレスLAがキャッシュテーブル1660に貯蔵されたLA及びPAのマッピング情報にあるか否かを判断する。例えば、入力されたデータアドレスLAに対応する論理アドレスLAがキャッシュテーブル1660に貯蔵されたLA及びPAのマッピング情報にあれば、命令語の解釈器1620は読み出し命令をバッファメモリの動作制御器1640に伝送する。読み出し命令が命令語の解釈器1620から受信されるとき、バッファメモリの動作制御器1640は入力されたデータアドレスに対応する物理アドレスを読み出し命令と共にバッファメモリのインターフェース1400に伝送する。その後、バッファメモリのインターフェース1400は、読み出し命令及び物理アドレスに応じてデータを読み出すようにバッファメモリ1500を制御し、読み出されたデータはホストインターフェース1100を通じてホスト3000に伝送される。
例えば、入力されたデータアドレスLAに対応する論理アドレスLAがキャッシュテーブル1660に貯蔵されたLA及びPAのマッピング情報にないとき、命令語の自動処理ユニット1600、即ち、命令語の解釈器又はバッファメモリの動作制御器はインタラプトを発生させる。命令語の自動処理ユニット1600からインタラプトが発生するとき、プロセスユニット1300は入力されたデータ命令(ホストインターフェースのレジスター(図示せず)に貯蔵される)により、フラッシュインターフェース1200を制御し、フラッシュインターフェース1200はプロセスユニット1300の制御により、フラッシュメモリ装置2000の読み出し動作を制御する。その後、フラッシュメモリ装置2000から読み出されたデータはフラッシュインターフェース1200及びバッファメモリのインターフェース1400を介してバッファメモリ1500に貯蔵される。バッファメモリ1500に貯蔵されたデータは、インターフェース等1100、1400を介してホスト3000に伝送される。
本発明によるメモリコントローラ及びフラッシュメモリ装置はフラッシュメモリカードを構成する。しかし、本発明はフラッシュメモリカードに限定されるものではない。例えば、本発明によるメモリコントローラはパソコンのメインボードに装着できる。この場合、フラッシュメモリ装置はカード又はUSBの形態でパソコンと接続される。
以上、本発明の実施形態等を説明したが、実施形態等は本発明の目的から外れない範囲の内で様々な形に変形できる。
本発明によるメモリシステムを概略的に示すブロック図である。 図1に図示された命令語の自動処理ユニットを概略的に示すブロック図である。 図2に図示されたキャッシュテーブルを示す図面である。 本発明のバッファメモリの書き込み方式によるバッファメモリのデータの貯蔵状態を示す図面である。
符号の説明
1000 メモリコントローラ
1100 ホストインターフェース
1200 フラッシュインターフェース
1300 プロセスユニット
1400 バッファメモリのインターフェース
1500 バッファメモリ
1600 命令語の自動処理ユニット
2000 フラッシュメモリ装置
3000 ホスト

Claims (16)

  1. フラッシュメモリ装置のメモリコントローラに於いて、
    前記フラッシュメモリ装置に書き込まれるデータを貯蔵するバッファメモリと、
    前記バッファメモリの読み出し及び書き込み動作を制御するバッファメモリのインターフェースと、
    ホストハードウェア装置により生成されたデータ命令を受信する命令語の自動処理ユニットを含み、
    前記データ命令は、書き込み情報を含み、
    前記命令語の自動処理ユニットは、入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているか否かを判断し、前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているとき、前記入力されたデータを前記バッファメモリに連続して貯蔵する様に前記バッファメモリのインターフェースを制御し、
    前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しないとき、前記入力されたデータを前記バッファメモリの任意の位置に貯蔵する様に前記バッファメモリのインターフェースを制御することを特徴とするメモリコントローラ。
  2. 前記命令語の自動処理ユニットは、前記バッファメモリに貯蔵されたデータに対する、論理アドレス/物理アドレスのマッピング情報を貯蔵するキャッシュテーブルを含むことを特徴とする請求項1に記載のメモリコントローラ。
  3. 前記キャッシュテーブルは、前記バッファメモリに貯蔵されたデータに対する連続性を判断するマッピング情報をさらに貯蔵することを特徴とする請求項に記載のメモリコントローラ。
  4. 前記命令語の自動処理ユニットは、前記マッピング情報により、入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているか否かを判断することを特徴とする請求に記載のメモリコントローラ。
  5. 前記データ命令が読み出し情報を含むとき、前記命令語の自動処理ユニットは、前記データ命令に含まれたアドレス情報と一致する論理アドレスが前記キャッシュテーブルにあるか否かを判断することを特徴とする請求項に記載のメモリコントローラ。
  6. 前記データ命令アドレス情報と一致する論理アドレスが前記キャッシュテーブルにあるとき、前記命令語の自動処理ユニットは、前記論理アドレスに対応するデータが前記バッファメモリから外部に出力される様に前記メモリインターフェースを制御することを特徴とする請求項に記載のメモリコントローラ。
  7. 前記データ命令アドレス情報と一致する論理アドレスが前記キャッシュテーブルにないとき、前記命令語の自動処理ユニットは、インタラプトを発生させることを特徴とする請求項に記載のメモリコントローラ。
  8. 前記インタラプトに応じて動作するプロセスユニットと、
    前記プロセスユニットの制御により、前記フラッシュメモリ装置の読み出し及び書き込み動作を制御するフラッシュインターフェースをさらに含むことを特徴とする請求項に記載のメモリコントローラ。
  9. 前記インタラプトが発生するとき、前記プロセスユニットは、アドレス情報に対応するデータがフラッシュメモリ装置からバッファメモリに伝送され、前記バッファメモリに貯蔵されたデータがホストハードウェア装置に伝送される様に前記フラッシュ及びバッファメモリのインターフェースを制御することを特徴とする請求項に記載のメモリコントローラ。
  10. 前記命令語の自動処理ユニットは、前記バッファメモリの空の空間情報により、前記バッファメモリにあるデータが前記バッファメモリに貯蔵される新しいデータに切り替えられて貯蔵されない様に前記バッファメモリのインターフェースを制御することを特徴とする請求項1に記載のメモリコントローラ。
  11. 前記命令語の自動処理ユニットは、
    前記バッファメモリの論理アドレス/物理アドレスのマッピング情報を貯蔵するキャッシュテーブルと、
    前記バッファメモリの空の空間情報を貯蔵する空間テーブルと、
    前記データ命令を解釈し、解釈された結果により読み出し又は書き込み命令を発生させる命令語の解釈器と、
    前記命令語の解釈器から発生された読み出し又は書き込み命令に対応してバッファメモリのインターフェースを制御するバッファメモリの動作制御器とを含むことを特徴とする請求項1に記載のメモリコントローラ。
  12. 前記バッファメモリの動作制御器は、前記空間テーブルの空の空間情報により、前記バッファメモリの書き込みアドレスを決定することを特徴とする請求項11に記載のメモリコントローラ。
  13. フラッシュメモリ装置のメモリコントローラに於いて
    モリ制御器とホスト装置との間に通信インターフェースを提供するホストインターフェースと、
    前記メモリ制御器と前記フラッシュメモリ装置との間に通信インターフェースを提供するフラッシュメモリインターフェースと、
    前記ホスト装置から出力されたデータ命令により、読み出し及び/又は書き込み動作を選択的に行うプロセスユニットと、
    前記ホスト装置と前記フラッシュメモリ装置との間から伝送されるデータを貯蔵するバッファメモリと、
    前記ホストインターフェースを通じてホストから受信されたデータ命令を処理する命令語の自動処理ユニットと、
    前記プロセスユニット及び/又は前記命令語の自動処理ユニットの制御信号に応じて前記バッファメモリのアクセスを制御するバッファメモリのインターフェースを含み、
    前記命令語の自動処理ユニットは、入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているか否かを判断し、前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているとき、前記入力されたデータを前記バッファメモリに連続して貯蔵する様に前記バッファメモリのインターフェースを制御し、
    前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しないとき、前記入力されたデータを前記バッファメモリの任意の位置に貯蔵する様に前記バッファメモリのインターフェースを制御することを特徴とするメモリコントローラ。
  14. 前記命令語の自動処理ユニットは、データ命令を受信し、前記データ命令が読み出し命令又は書き込み命令を含むか否かを判断する命令語の解釈器と、
    前記データ命令に書き込み命令が含まれるとき、論理アドレスと一致する物理アドレスと書き込み命令とを前記バッファメモリに出力し、前記データ命令に読み出し命令が含まれるとき、論理アドレスと一致する物理アドレスと読み出し命令とを前記バッファメモリに出力するバッファメモリの動作制御器と、
    前記バッファメモリに貯蔵されたデータの論理アドレス/物理アドレスのマッピング情報を貯蔵するキャッシュテーブルと、
    前記バッファメモリの空メモリの空間に対応する情報を貯蔵する空間テーブルを含むことを特徴とする請求項13に記載のメモリコントローラ。
  15. 前記バッファメモリの動作制御器は、前記空間テーブルによって前記バッファメモリの書き込みアドレスを決定することを特徴とする請求項14に記載のメモリコントローラ。
  16. メモリシステムに於いて、
    ホスト装置からデータを受信し、貯蔵するフラッシュメモリ装置と、
    前記ホスト装置から出力されたデータ命令を処理するメモリコントローラに於いて、
    前記メモリコントローラと前記ホスト装置との間に通信インターフェースを提供するホストインターフェースと、
    前記メモリコントローラと前記フラッシュメモリ装置との間に通信インターフェースを提供するフラッシュメモリインターフェースと、
    前記データ命令に応じて読み出し及び/又は書き込み動作を選択的に処理するプロセスユニットと、
    前記ホスト装置と前記フラッシュメモリ装置との間から伝送されるデータを貯蔵するバッファメモリと、
    前記ホストインターフェースを通じて前記ホスト装置から受信された前記データ命令を処理する命令語の自動処理ユニットと、
    前記プロセスユニット及び/又は前記命令語の自動処理ユニットの制御信号に応じて前記バッファメモリのアクセスを制御するバッファメモリのインターフェースを含み、
    前記命令語の自動処理ユニットは、入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているか否かを判断し、前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しているとき、前記入力されたデータを前記バッファメモリに連続して貯蔵する様に前記バッファメモリのインターフェースを制御し、
    前記入力されたデータが前記バッファメモリに貯蔵されたデータに連続しないとき、前記入力されたデータを前記バッファメモリの任意の位置に貯蔵する様に前記バッファメモリのインターフェースを制御することを特徴とするメモリシステム。
JP2007336909A 2006-12-27 2007-12-27 メモリコントローラ及びメモリシステム Active JP5275623B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060135294A KR100794312B1 (ko) 2006-12-27 2006-12-27 명령어 자동 처리 유니트를 포함한 메모리 컨트롤러 및그를 포함한 메모리 시스템
KR10-2006-0135294 2006-12-27

Publications (2)

Publication Number Publication Date
JP2008165799A JP2008165799A (ja) 2008-07-17
JP5275623B2 true JP5275623B2 (ja) 2013-08-28

Family

ID=39217714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007336909A Active JP5275623B2 (ja) 2006-12-27 2007-12-27 メモリコントローラ及びメモリシステム

Country Status (3)

Country Link
US (1) US8060669B2 (ja)
JP (1) JP5275623B2 (ja)
KR (1) KR100794312B1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100082185A (ko) * 2009-01-08 2010-07-16 삼성전자주식회사 플래시 메모리, 캐시 메모리, 그리고 제어기를 포함하는 사용자 장치
KR20100124087A (ko) * 2009-05-18 2010-11-26 삼성전자주식회사 메모리 컨트롤러, 그것을 포함하는 메모리 시스템 그리고 그것의 동작 방법
JP2012203940A (ja) 2011-03-24 2012-10-22 Toshiba Corp 半導体記憶装置及びその動作環境設定方法
US8635407B2 (en) 2011-09-30 2014-01-21 International Business Machines Corporation Direct memory address for solid-state drives
CN102629187B (zh) * 2012-02-29 2014-12-10 珠海全志科技股份有限公司 Sd/mmc卡的开放式读写控制方法
JP5378574B1 (ja) 2012-06-13 2013-12-25 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
US10353633B2 (en) * 2013-12-19 2019-07-16 Sony Interactive Entertainment LLC Mass storage virtualization for cloud computing
US9348518B2 (en) 2014-07-02 2016-05-24 International Business Machines Corporation Buffered automated flash controller connected directly to processor memory bus
JP2016028319A (ja) * 2014-07-08 2016-02-25 富士通株式会社 アクセス制御プログラム、アクセス制御装置及びアクセス制御方法
US9542284B2 (en) 2014-08-06 2017-01-10 International Business Machines Corporation Buffered automated flash controller connected directly to processor memory bus
JP6320439B2 (ja) * 2016-03-10 2018-05-09 株式会社東芝 メモリ制御装置、ストレージ装置、ストレージ装置の制御プログラム、及び、ストレージ装置の制御方法
CN110989918B (zh) * 2018-10-03 2023-03-28 慧荣科技股份有限公司 写入控制方法以及数据存储装置及其控制器

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4703475A (en) * 1985-12-04 1987-10-27 American Telephone And Telegraph Company At&T Bell Laboratories Data communication method and apparatus using multiple physical data links
JP2734865B2 (ja) * 1992-03-12 1998-04-02 富士通株式会社 ディスク装置の連続書込み処理方法
US5666514A (en) * 1994-07-01 1997-09-09 Board Of Trustees Of The Leland Stanford Junior University Cache memory containing extra status bits to indicate memory regions where logging of data should occur
US5590122A (en) * 1994-12-22 1996-12-31 Emc Corporation Method and apparatus for reordering frames
JPH08212133A (ja) * 1995-01-31 1996-08-20 Hitachi Ltd データ処理装置及びキャッシュメモリ制御方法
US5778426A (en) * 1995-10-23 1998-07-07 Symbios, Inc. Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting method
JPH09274599A (ja) * 1996-04-08 1997-10-21 Ricoh Co Ltd バッファメモリ装置
JP3649011B2 (ja) * 1998-01-09 2005-05-18 株式会社日立製作所 コンピュータシステム
JP3585091B2 (ja) * 1998-06-15 2004-11-04 富士通株式会社 記憶装置
KR100318683B1 (ko) 1998-12-17 2001-12-28 윤종용 산화막/질화막/산화막 유전층의 형성방법
JP3768088B2 (ja) 2000-11-09 2006-04-19 松下電器産業株式会社 メモリカード装置
US6651147B2 (en) * 2001-05-08 2003-11-18 International Business Machines Corporation Data placement and allocation using virtual contiguity
US7042770B2 (en) 2001-07-23 2006-05-09 Samsung Electronics Co., Ltd. Memory devices with page buffer having dual registers and method of using the same
KR100476888B1 (ko) 2002-04-04 2005-03-17 삼성전자주식회사 온도보상기능을 가진 멀티비트 플래쉬메모리
KR100521364B1 (ko) 2002-11-18 2005-10-12 삼성전자주식회사 플레쉬 메모리 셀들의 프로그램 오판을 방지하고 균일한문턱 전압 산포를 가질 수 있는 플레쉬 메모리 장치 및 그프로그램 검증 방법
DE10302650B4 (de) * 2003-01-23 2007-08-30 Infineon Technologies Ag RAM-Speicher und Steuerungsverfahren dafür
JP4188744B2 (ja) 2003-04-08 2008-11-26 株式会社ルネサステクノロジ メモリカード
WO2004114298A2 (en) * 2003-06-23 2004-12-29 Koninklijke Philips Electronics N.V. Device and method for recording information
KR100608602B1 (ko) * 2003-12-10 2006-08-03 삼성전자주식회사 플래시 메모리, 이를 위한 사상 제어 장치 및 방법
JP4406339B2 (ja) 2004-09-21 2010-01-27 株式会社東芝 コントローラ、メモリカード及びその制御方法
US7680993B2 (en) * 2006-12-21 2010-03-16 Tandberg Television, Inc. Local digital asset storage management technique

Also Published As

Publication number Publication date
JP2008165799A (ja) 2008-07-17
KR100794312B1 (ko) 2008-01-11
US20080162788A1 (en) 2008-07-03
US8060669B2 (en) 2011-11-15

Similar Documents

Publication Publication Date Title
JP5275623B2 (ja) メモリコントローラ及びメモリシステム
TWI512476B (zh) 用以控制非依電性記憶體裝置中之操作之方法以及相關電腦程式產品、電腦可讀儲存媒體、記憶體裝置、及主機裝置
KR100610647B1 (ko) 직접실행제어 기능과 스토리지 기능이 복합된 대용량저장장치
US10943183B2 (en) Electronics device performing software training on memory channel and memory channel training method thereof
JP4628750B2 (ja) バッファメモリを内蔵したフラッシュメモリ装置及びフラッシュメモリシステム
US11630766B2 (en) Memory system and operating method thereof
US20130326113A1 (en) Usage of a flag bit to suppress data transfer in a mass storage system having non-volatile memory
CN108958642B (zh) 存储器系统及其操作方法
US10866755B2 (en) Two stage command buffers to overlap IOMMU map and second tier memory reads
KR20160025292A (ko) 데이터 저장 장치, 그것을 포함하는 데이터 처리 시스템 및 그것의 동작 방법
KR20190010335A (ko) 레이턴시 정보를 저장하는 저장 장치, 프로세서 및 컴퓨팅 시스템
KR20170110810A (ko) 데이터 처리 시스템 및 그것의 동작 방법
US20090187699A1 (en) Non-volatile memory storage system and method for reading an expansion read only memory image thereof
KR102634776B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20190085644A (ko) 데이터 처리 시스템 및 그것의 동작 방법
KR102155611B1 (ko) 데이터 저장 장치
US11775211B2 (en) Memory controller and method of operating the same
KR102423278B1 (ko) 메모리 시스템 및 그것의 동작 방법
US20230096111A1 (en) Memory controller, storage device, and host device
US20230103797A1 (en) Memory controller and method of operating the same
US20240012564A1 (en) Memory controller and storage device including the same
JP2003242027A (ja) インタフェース装置、データ処理システム、及びデータ処理方法
KR20190033921A (ko) 스토리지 장치 및 그 동작 방법
US20240020252A1 (en) Computing system and operating method thereof
US20230305741A1 (en) Storage device and operating method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130516

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5275623

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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