JP5107776B2 - メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法 - Google Patents

メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法 Download PDF

Info

Publication number
JP5107776B2
JP5107776B2 JP2008099308A JP2008099308A JP5107776B2 JP 5107776 B2 JP5107776 B2 JP 5107776B2 JP 2008099308 A JP2008099308 A JP 2008099308A JP 2008099308 A JP2008099308 A JP 2008099308A JP 5107776 B2 JP5107776 B2 JP 5107776B2
Authority
JP
Japan
Prior art keywords
memory
data
volatile
control unit
volatile memory
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
JP2008099308A
Other languages
English (en)
Other versions
JP2009252294A (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 JP2008099308A priority Critical patent/JP5107776B2/ja
Publication of JP2009252294A publication Critical patent/JP2009252294A/ja
Application granted granted Critical
Publication of JP5107776B2 publication Critical patent/JP5107776B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Description

本発明は、不揮発性メモリを備えたメモリデバイスへデータを書き込むためのメモリコントローラ、このようなメモリコントローラを備えたメモリシステム、及びメモリデバイスへのデータの書込方法に関する。
不揮発性メモリへのデータの書き込みには、通常、ROMライタなどのメモリコントローラを用いる。メモリコントローラは、不揮発性メモリへのデータの書き込み時或いは書き込み後に、正常に書き込みが行われたことを確認するためにベリファイを行う。
ROMライタは、一度に複数の不揮発性メモリにデータを書き込むことができる。書き込まれるデータ(以下、「書込データ」という。)は、ROMライタの外部に設けられたホスト装置からROMライタに内蔵された揮発性メモリに一旦書き込まれた後に、複数の不揮発性メモリに書き込まれる。この際、揮発性メモリに書き込まれている書込データはそのまま保持される。
ROMライタは、ベリファイ時に不揮発性メモリに書き込まれた書込データ(即ち、不揮発性メモリセルへ書き込まれた不揮発性メモリセルデータ)を読み出して、内蔵の揮発性メモリに書き込む。これにより、ROMライタの揮発性メモリには2つのデータが記憶される。ROMライタは、これら2つのデータ(検証データとなる不揮発性メモリに書き込む前の書込データと、被検証データとなる不揮発性メモリから読み出した書込データ)を比較することでベリファイを行う。ROMライタは、ベリファイにより不揮発性メモリへのデータの書き込みが正常に行われていると判断すると、当該不揮発性メモリへの書き込みを終了する。
このようにROMライタに内蔵された揮発性メモリは、少なくともベリファイ時に用いられる2つのデータを記憶するだけの容量が必要になる。また、不揮発性メモリに一度に書き込めるデータ量が、ROMライタの揮発性メモリの記憶容量に依存することになる。さらに、揮発性メモリへの書き込み、読み出しによりベリファイにかかる時間が長くなるために、データの書き込み動作全体に時間がかかる。
不揮発性メモリ及び揮発性メモリを一つのメモリデバイスに内蔵して用いることで、上記のようなROMライタの欠点を補うことができる。
特許文献1には、メモリデバイスのバッファ(揮発性メモリ)に書込データを一時的に格納しておき、格納した書込データを不揮発性メモリに書き込むことが記載されている。不揮発性メモリへ書込データが書き込まれた後に、バッファに格納された書込データと不揮発性メモリに書き込まれた書込データとによりベリファイが行われる。
特許文献2には、複数のフラッシュメモリとメモリコントローラに接続されたSRAM(Static Random Access Memory)とを備えたメモリカードの発明が記載されている。SRAMには、フラッシュメモリに書込データを書き込む際に当該書込データが一時的に書き込まれる。ベリファイは、書き込み時に印加される電圧の各段階で行われる。
特許文献3には、複数のフラッシュメモリとライトバッファを備えた半導体ディスクの発明が記載されている。空いているフラッシュメモリに書込データを順次書き込むことで、書き込み速度が遅いフラッシュメモリの欠点を補っている。
特開2006−309829号公報 WO2003/060722 特開2001−148583号公報
以上のような特許文献1〜3では、ベリファイの際に同じメモリデバイスからベリファイに用いる2つのデータを読み出す。そのために、メモリコントローラ側に揮発性メモリが不要になる。しかし、一つのメモリデバイスから順にベリファイに用いる2つのデータを読み出すために、読み出し時間が長くなりがちである。その結果、メモリデバイスへの書き込み動作全体にかかる時間が長くなる。
本発明は、上記のような問題に鑑み、メモリデバイスへの書き込み動作全体にかかる時間を従来よりも短縮する技術を提供することを課題とする。
上記の課題を解決する本発明のメモリコントローラは、不揮発性メモリ及び揮発性メモリを内蔵しており前記揮発性メモリから前記不揮発性メモリへのデータのコピーが可能になっているメモリデバイスを、複数接続可能である。このメモリコントローラは、接続可能な前記メモリデバイスに1対1に対応しており、各々が、対応するメモリデバイスの前記揮発性メモリに対する前記データの書き込みを可能にするとともに、対応するメモリデバイスの前記不揮発性メモリ及び前記揮発性メモリからの前記データの読み出しを可能にする複数のメモリ制御部と、一のメモリ制御部により一のメモリデバイスの不揮発性メモリから読み出された第1データを、他のメモリ制御部により他のメモリデバイスの揮発性メモリから読み出された第2データを用いてベリファイする検証部と、備えている。
本発明のメモリコントローラは、メモリデバイスの揮発性メモリにのみデータを書き込むことが可能になっており、不揮発性メモリに直接書き込むことはない。不揮発性メモリには、同じメモリデバイス内の揮発性メモリからデータが書き込まれる。このような構成であるために、メモリコントローラ内に揮発性メモリを用意する必要がない。そのために、不揮発性メモリに一度に書き込めるデータ量は、メモリデバイスの揮発性メモリに依存して、メモリコントローラに依存することはない。
不揮発性メモリに書き込まれたデータ(第1データ)のベリファイは、この不揮発性メモリを有するメモリデバイスとは異なる、他のメモリデバイスが有する揮発性メモリに書き込まれたデータ(第2データ)を用いて行われる。これら2つメモリデバイスは、異なるメモリ制御部によりデータが読み出される。そのために本発明のメモリコントローラは、例えば、前記一のメモリ制御部と前記他のメモリ制御部とが、互いに同期して動作しており、これにより、前記他のメモリ制御部が、前記一のメモリ制御部が前記第1データを読み出すのと同時に前記第2データを読み出すことが可能になる。従来は、1つのメモリデバイスから第1データと第2データを読み出しており、同時に読み出すことは困難であった。本発明のメモリコントローラでは、同時に読み出すことができるために、従来よりも高速にベリファイに用いる2つのデータを読み出すことが可能になる。また、一のメモリ制御部と他のメモリ制御部とが、互いに同期して動作する場合には、一のメモリ制御部と他のメモリ制御部とは、それぞれ対応するメモリデバイスの前記揮発性メモリに同時に同じデータを書き込むことができる。
前記一のメモリ制御部は、例えば、前記他のメモリデバイスの前記揮発性メモリに書き込まれたデータを前記他のメモリ制御部を介して読み出して、前記一のメモリデバイスの前記揮発性メモリに書き込む構成であってもよい。このような構成では、例えば、一のメモリデバイスの揮発メモリへのデータの書き込みが、他のメモリデバイスを用いて可能になる。また、一のメモリデバイスを別の新たなメモリデバイスに交換したときに、当該新たなメモリデバイスへの書き込みが当該他のメモリデバイスを用いて可能になる。
前記検証部と前記一のメモリ制御部との間及び前記検証部と前記他のメモリ制御部との間は、各々異なる線路で接続されていてもよい。このような構成では、第1データと第2データとを各々別の線路で取得するので、同時に取得でき、高速なベリファイが可能になる。
このような本発明のメモリコントローラは、例えば、前記複数のメモリ制御部の少なくとも一つが、対応するメモリデバイスが挿抜可能なソケットを備えたROMライタのような構成にすることができる。このソケットを介してデータを送受信可能である。挿抜可能なソケットであるために、書き込みが終了すると別のメモリデバイスに取り替えることができる。
本発明のメモリシステムは、各々が不揮発性メモリ及び揮発性メモリを内蔵しており前記揮発性メモリから前記不揮発性メモリへのデータのコピーが可能になっている複数のメモリデバイスと、前記複数のメモリデバイスに1対1に対応しており、各々が、対応するメモリデバイスの前記揮発性メモリに対するデータの書き込みを可能にするとともに、対応するメモリデバイスの前記不揮発性メモリ及び前記揮発性メモリからのデータの読み出しを可能にする複数のメモリ制御部と、一のメモリ制御部により一のメモリデバイスの不揮発性メモリから読み出された第1データを、他のメモリ制御部により他のメモリデバイスの揮発性メモリから読み出された第2データを用いてベリファイを行う検証部と、を備えている。
このようなメモリシステムは、例えばコンピュータシステムに搭載可能であり、当該コンピュータシステムの不揮発性メモリとして用いることができる。
本発明のデータの書込方法は、各々が不揮発性メモリ及び揮発性メモリを内蔵しており前記揮発性メモリから前記不揮発性メモリへのデータのコピーが可能になっている複数のメモリデバイスに、前記複数のメモリデバイスとの間でデータの送受信が可能なメモリコントローラによりデータを書き込む方法である。このデータの書込方法では、前記メモリコントローラが、各メモリデバイスの前記揮発性メモリに、異なる経路で同時に同じデータを書き込む第1段階と、前記メモリコントローラが、各メモリデバイスに対して、前記揮発性メモリに書き込まれたデータを前記不揮発性メモリにコピーさせるための制御データを送信する第2段階と、各メモリデバイスが、前記制御データを受信して内蔵する前記揮発性メモリに書き込まれた前記データを内蔵する前記不揮発性メモリにコピーする第3段階と、前記メモリコントローラが、所定の一つのメモリデバイスの不揮発性メモリに書き込まれた第1データを、他のメモリデバイスの揮発性メモリに書き込まれた第2データを用いてベリファイを行う第4段階と、を含む。
前記4段階で、前記メモリコントローラが、前記ベリファイに用いる前記第1データと前記第2データとを同時取得可能であれば、高速なベリファイが可能になる。
前記第4段階で、前記ベリファイがフェイルと判断されると、前記メモリコントローラが、例えば、前記制御データを前記メモリデバイスに再送信する。こうすることで、例えば一のメモリデバイスでデータのコピーが良好に終了しなかった場合に、再度データのコピーを行わせることができる。この後、第3、第4段階を再び行うことで、再ベリファイが行われる。
さらに、ベリファイの結果、前記第1データが前記一のメモリデバイスの前記不揮発性メモリに正常に書き込まれていると判断されると、前記メモリコントローラが、新たな別のメモリデバイスの揮発性メモリに前記他のメモリデバイスの前記揮発性メモリのデータを書き込むようにしてもよい。当該他のメモリデバイスを用いて、新たなメモリデバイスの不揮発性メモリへのデータの書き込みが可能になる。
以上のような本発明により、不揮発性メモリに書き込まれたデータのベリファイを、この不揮発性メモリを内蔵するメモリデバイスとは異なる、他のメモリデバイスの揮発性メモリに書き込まれたデータを用いて行うことで、ベリファイを従来よりも高速に行うことができる。そのために、メモリデバイスへの書き込み動作全体にかかる時間を従来よりも短縮することができる。
以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の実施形態であるメモリシステム1の構成図である。
メモリシステム1は、メモリコントローラ10と、各々が不揮発性メモリ21a、21b及び揮発性メモリ22a、22bを有する2つのメモリデバイス20a、20bとを備える。この実施形態では2つのメモリデバイス20a、20bによる構成を説明するが、さらに多くのメモリデバイスを備えた構成であってもよい。メモリコントローラ10には入力装置2、出力装置3、及びホスト装置4が接続される。入力装置2は、メモリコントローラ10を操作するための様々な指示データを入力するための装置である。入力装置2には、例えば、キーボードや操作パネルなどを用いることができる。出力装置3は、メモリコントローラ10の操作に必要な情報や操作結果等を画像或いは音声により出力する。出力装置3には、例えばディスプレイやスピーカなどを用いることができる。メモリコントローラ10、入力装置2、及び出力装置3は、一体に構成されていてもよい。ホスト装置4は、汎用のパーソナルコンピュータなどの情報処理装置である。ホスト装置4は、メモリコントローラ10からの要求に応じて、書込データをメモリコントローラ10に送信する。
メモリコントローラ10は、入力インタフェース(入力I/F)11、出力インタフェース(出力I/F)12、通信制御部13、ベリファイを行う検証部14、メモリデバイス20a、20bが接続される第1、第2メモリ制御部15a、15b、及び制御部16を備えている。メモリコントローラ10は、ホスト装置4からメモリデバイス20a、20bの不揮発性メモリ21a、21bに書き込むべき書込データを取得して、この書込データをメモリデバイス20a、20bの揮発性メモリ22a、22bに同時に書き込む。
入力I/F11は、入力装置2との間のインタフェース制御を行う。入力I/F11は、入力装置2から入力される様々な指示データを制御部16へ送る。特に、この実施形態ではメモリデバイス20a、20bへの書き込みを指示する書込指示データが入力I/F11を介して入力装置2から制御部16へ送られる。
出力I/F12は、出力装置3との間のインタフェース制御を行う。出力I/F12は、制御部16の制御により、出力装置3により出力できる形態で操作結果などを出力する。出力I/F12は、例えば、出力装置3にメモリデバイス20a、20bへの書き込み操作のステータスを表示したり、書き込み終了時に書き込み終了の表示を行い、検証終了時に検証終了の表示を行う。
通信制御部13は、ホスト装置4との間の通信を行うためのインタフェースである。通信制御部13は、例えば、入力装置2からメモリコントローラ10に書込指示データがあると、制御部16の制御によりホスト装置4から書込データを取得する。
この実施形態では、ホスト装置4から書込データを取得する。しかし、これに限らず、例えば入力装置2により、書込指示データとともに書込データが入力されるような形態でもよい。この場合、ホスト装置4及び通信制御部13は不要になる。
検証部14は、制御部16の制御により、メモリデバイス20a、20bの不揮発性メモリ21a、21bに書き込まれた書込データのベリファイを行う。検証部14は、例えば、メモリデバイス20aの不揮発性メモリ21aから取り込まれた書込データ(不揮発性メモリセルへの書き込み後にそのセルから読み出された被検証データ)と、メモリデバイス20bの揮発性メモリ22bから取り込まれた検証に用いる検証データ(不揮発性メモリセルへの書き込み元データである検証データ)とを比較することでベリファイを行う。つまり、ベリファイに用いる検証データは、被検証データとなる書込データが書き込まれた不揮発性メモリを有するメモリデバイスとは異なるメモリデバイスの揮発性メモリから取り込まれる。検証部14では、書込データと検証データの単純な比較の他に、例えば書込データと検証データのそれぞれのハッシュ値の比較によりベリファイを行う。検証データは、書込データと同じでもよく、また、検証専用のデータであってもよい。例えばハッシュ値の比較でベリファイを行う場合には、検証データが書込データのハッシュ値であってもよい。
第1、第2メモリ制御部15a、15bは、制御部16により制御され、それぞれメモリデバイス20a、20bに対応して設けられる。第1、第2メモリ制御部15a、15bは、メモリデバイス20a、20bとの間で書込データ、検証データ、被検証データなどの送受信を行うためのデータ線17と、メモリデバイス20a、20bの動作を制御する制御データを送受信するための制御線18とで、対応するメモリデバイス20a、20bに接続される。制御データによる制御により、メモリデバイス20a、20bへの書込データ及び検証データの書き込み、読み出しが行われる。また、制御データによりメモリデバイス20a、20bに、揮発性メモリ22a、22bから不揮発性メモリ21a、21bへの書込データのコピーを行わせる(詳細については後述する)。第1、第2メモリ制御部15a、15bには、それぞれ対応するメモリデバイス20a、20bが、例えば図示しないソケットを介して接続される。ソケットにより、メモリデバイス20a、20bが挿抜可能になる。メモリ制御部の数だけ、このメモリコントローラ10にはメモリデバイスが接続可能である。このような構成により、メモリコントローラ10は、各メモリデバイス20a、20bとの間で異なる経路によりデータの送受信を行うことができる。
第1メモリ制御部15aは、不揮発性メモリ21aへのデータの書き込みのためにメモリデバイス20aの揮発性メモリ22aに対して書込データを書き込む。また、メモリデバイス20aの不揮発性メモリ21aから被検証データとして書込データを読み出すとともに、メモリデバイス20bの不揮発性メモリ21bの被検証データとなる書込データの検証に用いるために揮発性メモリ22aから検証データを読み出す。
第2メモリ制御部15bは、第1メモリ制御部15aと同様の機能を有する。第2メモリ制御部15bは、第1メモリ制御部15aがメモリデバイス20aの揮発性メモリ22aに書込データを書き込むのと同時に、メモリデバイス20bの揮発性メモリ22bに書込データを書き込む。
検証データは、通常、第1、第2メモリ制御部15a、15bがメモリデバイス20a、20bの揮発性メモリ22a、22bに書込データを書き込む際に、同時に揮発性メモリ22a、22bに書き込まれる。
第1、第2メモリ制御部15a、15bは、各々異なる線路で検証部14に接続される。各線路は、検証データが送受信される検証データ用線と被検証用データが送受信される被検証データ用線とで構成される。このような構成では、ベリファイに用いる検証データ及び被検証データを、従来よりも高速に検証部14に提供することができる。
制御部16は、入力装置2から入力される指示データに応じて、メモリコントローラ10の各構成要素の動作を制御して指示に沿った処理を行う。制御部16は、メモリデバイス20a、20bに入力される制御データを生成して、第1、第2メモリ制御部15a、15bに入力する。また、制御部16は、例えば、一つの信号により第1、第2メモリ制御部15a、15bの動作を制御する。そのために、第1、第2メモリ制御部15a、15bの書き込み、読み出し動作は同期して行われる。
図2は、メモリデバイス20aの概略断面図である。メモリデバイス20bもメモリデバイス20aと同じ構成である。ここでは、メモリデバイス20aの構成を説明し、メモリデバイス20bの構成についての説明は省略する。
メモリデバイス20aには、MCP(Multi Chip Package)積層技術が用いられており、基板23上に、不揮発性メモリ21a及び揮発性メモリ22aが積層されている。不揮発性メモリ21aと揮発性メモリ22aとは、図示しない層間絶縁体の一例である接着剤(例えば、ポリイミド、シリコーン、エポキシ系の熱伝導性接着剤など)やスペーサなどで接着され、不揮発性メモリ21aは、図示しない接着剤などで基板23に接着される。なお、図2はメモリデバイスの構造の一例であり、一つのパッケージに不揮発性メモリ21a及び揮発性メモリ22aが内蔵されるPoP(Package-on-Package)構造でもよい。また、不揮発性メモリ21a及び揮発性メモリ22aの他に、例えばメモリコントローラ10の機能を有する半導体チップを更に備えた構成であってもよい。
不揮発性メモリ21aと揮発性メモリ22aとは、同じデータが入力される端子同士が配線24により接続されている。基板23の下部にはボール電極25が配置されている。配線24とボール電極25とは、基板23の内部配線により接続されている。ボール電極25には、メモリデバイス20aの外部から電源電圧が印加されるとともに、メモリコントローラ10との間でデータ線17及び制御線18を介して各種データ(例えば、書込データ、検証データ、被検証データなど)の送受信が行われる。
図3は、メモリデバイス20aの回路構成を説明する図である。メモリコントローラ10から不揮発性メモリ21aへ書き込まれる書込データは、一旦、揮発性メモリ22aに書き込まれた後に、揮発性メモリ22aから不揮発性メモリ21aへコピーされる。不揮発性メモリ21aに書き込まれた書込データ及び揮発性メモリ22aに書き込まれた検証データを読み出す際には、メモリコントローラ10が不揮発性メモリ21a及び揮発性メモリ22aから直接読み出す。
メモリコントローラ10と、不揮発性メモリ21aと、揮発性メモリ22aとの間は、各種クロック信号、各種コマンド信号、アドレス信号AD、などの制御データ、及び書込データであるデータ信号DQが送受信される。不揮発性メモリ21aと揮発性メモリ22aとのいずれが活性化されるかは、チップセレクト信号CS1、CS2により決まる。
揮発性メモリ22aは、メモリコントローラ10から出力される制御データであるロウアドレスセレクト信号RAS、カラムアドレスセレクト信号CAS、ライトイネーブル信号WEをデコードして揮発性メモリ22aのメモリセルにアクセスする不図示のコマンド判定回路を備えている。
不揮発性メモリ21aは、揮発性メモリ22aから読み出されたデータを異なるアドレスに書き込む機能を有する。この機能はコマンド判定回路26及びアドレス制御回路27により実現される。
図4は、不揮発性メモリ21aに備えられたコマンド判定回路26及びアドレス制御回路27の一例を示す回路図である。
コマンド判定回路26は、インバータ31と、アンドゲート32〜35と、スイッチ36、37とを備えている。
インバータ31は、チップセレクト信号CS1の反転信号を出力する。すなわち、不揮発性メモリ21aが選択され、チップセレクト信号CS1がローレベルになるとインバータ31からはハイレベルが出力される。
アンドゲート32は、ロウアドレスセレクト信号RASがローレベルになり、カラムアドレスセレクト信号CAS及びライトイネーブル信号WEがハイレベルになると、出力であるアクティブ信号ACTがハイレベルになる。
アンドゲート33は、チップセレクト信号CS1がローレベルの状態で、カラムアドレスセレクト信号CAS及びライトイネーブル信号WEがローレベルになり、ロウアドレスセレクト信号RASがハイレベルになると、出力がハイレベルになる。スイッチ36において、後述の実行コード判定信号CBCがローレベルの場合には、アンドゲート33の出力がライト信号WTに出力される。実行コード判定信号CBCがハイレベルの場合には、ハイレベルのパルスが強制的にライト信号WTに出力される。
アンドゲート34は、ロウアドレスセレクト信号RAS及びライトイネーブル信号WEがローレベルになり、カラムアドレスセレクト信号CASがハイレベルになると、出力であるプリチャージ信号PRがハイレベルになる。
アンドゲート35は、チップセレクト信号CS1がローレベルで、カラムアドレスセレクト信号CASがローレベルで、ロウアドレスセレクト信号RAS及びライトイネーブル信号WEがハイレベルになると、ハイレベルが出力される。スイッチ37において、後述の実行コード判定信号CBCがローレベルの場合には、アンドゲート35の出力がリード信号RDに出力され、実行コード判定信号CBCがハイレベルの場合にはローレベルがリード信号RDに出力される。
アドレス制御回路27は、実行コード判定回路38と、アドレスラッチレイテンシ付加回路39と、ロウアドレスラッチ回路40と、カラムアドレスラッチ回路41とを備えている。
実行コード判定回路38には、データ信号DQ、アクティブ信号ACT、及びプリチャージ信号PRが入力される。アクティブ信号ACTがハイレベルになると、データ信号DQに含まれる実行コードCMDを取得する。実行コードCMDにより、不揮発性メモリ21aは、揮発性メモリ22aからのデータコピーが可能なモードになる。実行コードCMDにより、アドレスのレイテンシを付加するか否かが決定する。実行コードCMDにより、データの転送元(揮発性メモリ22a)と転送先(不揮発性メモリ21a)とが異なる場合、実行コード判定信号CBCがハイレベルになる。なお、実行コード判定信号CBCは、プリチャージ信号PRがハイレベルになるとローレベルになる。
アドレスラッチレイテンシ付加回路39には、クロック信号CLK及び実行コード判定信号CBCが入力される。実行コード判定信号CBCがハイレベルであると、ロウアドレスラッチ回路40及びカラムアドレスラッチ回路41におけるアドレスにレイテンシを付加するアドレスレイテンシ制御信号が出力される。付加するアドレスのレイテンシの値は「1」であってもよいし、「1」を上回る値でもよい。実行コード判定信号CBCがローレベルであるとアドレスのレイテンシ値は「0」となる。レイテンシの値は、図示しないモードレジスタ設定サイクルによって予め設定することができる。
ロウアドレスラッチ回路40は、アクティブ信号ACTと、アドレスラッチレイテンシ付加回路39からのアドレスレイテンシ制御信号と、アドレス信号ADとが入力される。アクティブ信号ACTがハイレベルになると、アドレスラッチレイテンシ付加回路39からのアドレスレイテンシ制御信号に応じたアドレスレイテンシで、ロウアドレスがラッチされ、ロウアドレスROWADが出力される。
カラムアドレスラッチ回路41は、ライト信号WTと、リード信号RDと、アドレスラッチレイテンシ付加回路39からのアドレスレイテンシ制御信号と、アドレス信号ADとが入力される。ライト信号WTがハイレベルになるとアドレスラッチレイテンシ付加回路39からのアドレスレイテンシ制御信号に応じたアドレスレイテンシで、カラムアドレスがラッチされ、カラムアドレスCOLADが出力される。なお、リード信号RDがハイレベルの場合には、アドレスレイテンシは「0」で、アドレス信号ADがラッチされる。
揮発性メモリ22aの図示しないライト制御回路について説明する。後述するように、不揮発性メモリ21aのライトデータは、揮発性メモリ22aのリードデータであり、不揮発性メモリ21aがそのデータをラッチする。よって、不揮発性メモリ21aのライトレイテンシWCL(コマンドからライトデータをラッチするまでのCLK数規定)は、転送元である揮発性メモリ22aのリードレイテンシRCLと同じである。揮発性メモリ22aのライト制御回路に含まれるデータラッチレイテンシ付加回路は、アドレスラッチレイテンシ付加回路39と同様な回路であり、実行コード判定回路38の実行コード判定信号CBCとクロック信号CLKを入力し、図示しないデータラッチ回路を制御する。
図5を参照して、メモリデバイス20aで行われる揮発性メモリ22aから不揮発性メモリ21aへの書込データのコピー動作について説明する。図5は、メモリデバイス20aの動作を表すタイミングチャートである。クロック信号CLK、チップセレクト信号CS2、ロウアドレスセレクト信号RAS、カラムアドレスセレクト信号CAS、ライトイネーブル信号WE、アドレス信号AD、及びデータ信号DQは、メモリコントローラ10の第1メモリ制御部15aから入力される。中段のアクティブ信号ACT、リード信号RD、ライト信号WT、及びプリチャージ信号PRは、揮発性メモリ22aのメモリコマンドである。下段のアクティブ信号ACT、リード信号RD、ライト信号WT、及びプリチャージ信号PRは、不揮発性メモリ21aのメモリコマンドである。
時刻T1において、チップセレクト信号CS2及びロウアドレスセレクト信号RASがローレベルになり、カラムアドレスセレクト信号CAS及びライトイネーブル信号WEがハイレベルになると、不揮発性メモリ21aのアクティブ信号ACTがハイレベルになる。これとともにデータ信号DQから実行コードCMDが取得される。本実施形態では、転送先のアドレスレイテンシALは「+1」である。また、転送元のリードレイテンシRCLは「+2」である。転送先のライトレイテンシWCLは「+2」であり、その数値は、転送元のリードレイテンシRCLに合わせられる。つまり、リードレイテンシRCLとライトレイテンシWCLが等しい。
揮発性メモリ22aのアクティブ信号ACTがハイレベルになる。これにより、揮発性メモリ22aでは、ロウアドレス“3A”がセット(ラッチ)される。
時刻T2において、転送先のアドレスレイテンシALが“1”であるため、不揮発性メモリ21aでは、アクティブ信号ACTから1CLK遅れたタイミングでロウアドレス“1B”がセット(ラッチ)される。
時刻T3において、チップセレクト信号CS2及びカラムアドレスセレクト信号CASがローレベルに、ロウアドレスセレクト信号RAS及びライトイネーブル信号WEがハイレベルになると、揮発性メモリ22aのリード信号RDがハイレベルになる。これにより、揮発性メモリ22aのカラムアドレス“B0”がセット(ラッチ)される。
他方、不揮発性メモリ21aでは、実行コード判定信号CBCがハイレベルのため、ライト信号WTがハイレベルにされる。
揮発性メモリ22aのリードレイテンシRCLが“2”に設定されているため、2サイクル後(時刻T5)から揮発性メモリ22aのデータがデータ信号DQとして出力される。
時刻T4において、転送先のアドレスレイテンシALが“1”であるため、不揮発性メモリ21aでは、カラムアドレス“A0”がセット(ラッチ)される。
不揮発性メモリ21aに与えられる転送先アドレスが、アドレスレイテンシ技術によって揮発性メモリ22aに与えられる転送元アドレスと同一サイクル内(T2、T4)で確立できる。
時刻T5〜T8において、揮発性メモリ22aのアドレス“3AB0”に格納されるデータD1〜D4が、リードレイテンシRCL=2によって順次読み出されるとともに、不揮発性メモリ21aのアドレス“1BA0”へ、揮発性メモリ22aと同じライトレイテンシWCL=2で、データD1〜D4が書き込まれる。
時刻T9において、ロウアドレスセレクト信号RAS及びライトイネーブル信号WEがローレベルになり、カラムアドレスセレクト信号CASがハイレベルになるため、不揮発性メモリ21aでは、プリチャージ信号PRがハイレベルとなる。これにより、実行コード判定信号CBCがローレベルとなり、不揮発性メモリ21aは通常の動作モードに復帰する。
以上、詳細に説明したとおり、このメモリデバイス20aでは、転送元となる揮発性メモリ22aから転送先となる不揮発性メモリ21aへのデータのコピーを、メモリコントローラ10からの制御データにより、メモリデバイス20a内の動作のみで行なうことができる。
図6は、メモリシステム1によるメモリデバイス20aへの書き込み動作の処理流れ図である。
メモリコントローラ10は、入力装置2からメモリデバイス20a、20bへの書込指示データを受信する(ステップS10)。メモリコントローラ10は、ホスト装置4からメモリデバイス20a、20bへ書込データを書き込む(転送する)。書込データは、メモリコントローラ10によりメモリデバイス20a、20bの各揮発性メモリ22a、22bに同時に書き込まれる(ステップS20)。
メモリコントローラ10は、書込データをメモリデバイス20a、20bの各揮発性メモリ22a、22bに書き込むと、制御データをメモリデバイス20a、20bに送信する。メモリデバイス20a、20bは、メモリコントローラ10から制御データを受信すると、メモリデバイス20a、20b内の各揮発性メモリ22a、22bに書き込まれた書込データを、同じメモリデバイス20a、20b内の不揮発性メモリ21a、21bにそれぞれコピーする(ステップS30)。
次いでメモリコントローラ10は、不揮発性メモリ21a、21bに書き込まれた書込データの検証を行う。ここでは、メモリデバイス20aの不揮発性メモリ21aに書き込まれた書込データの検証を例に説明する。
メモリコントローラ10は、メモリデバイス20aの不揮発性メモリ21aから、第1メモリ制御部15aにより、被検証データとして書込データを読み出す。読み出された書込データは、検証部14に送られる。同時にメモリコントローラ10は、メモリデバイス20bの揮発性メモリ22bから、第2メモリ制御部15bにより検証データを読み出す。読み出された検証データは、検証部14に送られる(ステップS40)。検証データは、例えばメモリコントローラ10からステップS20で揮発性メモリ22bに書き込まれた書込データである。
検証部14では、メモリデバイス20aの不揮発性メモリ21aから被検証データとして読み出された書込データとメモリデバイス20bの揮発性メモリ22bから読み出された検証データとを比較して、ベリファイを行う(ステップS50)。つまり、一のメモリデバイスの不揮発性メモリに書き込まれた書込データの検証は、他のメモリデバイスの揮発性メモリから読み出される検証データにより行われる。
メモリコントローラ10は、ベリファイの結果、不揮発性メモリ21aへの書き込みが正常に行われている場合(ベリファイパス)には、メモリデバイス20aへの書き込みを終了する(ステップS60:Y)。正常に書き込みが行われていない場合(ベリファイフェイル)には、例えば以下に示す通り、ステップS20に戻る方法とステップ30に戻る方法とがある(ステップS60:N)。
ベリファイフェイルの原因が揮発性メモリ22aにある場合、メモリコントローラ10は、ステップS20に戻り、ホスト装置4から揮発性メモリ22aへ書込データを再び書き込む(転送する)段階から、書き込み動作を、書き込みとその検証が正常に終了するまで繰り返す(ステップS20〜ステップS60のループ)。メモリコントローラ10に書込データを一時記憶するためのメモリを設けていないために、再度、ホスト装置4から書込データを揮発性メモリ22aへ書き込む。
ベリファイフェイルの原因が不揮発性メモリ21aにある場合、メモリコントローラ10は、ステップS30に戻り、揮発性メモリ22aから不揮発性メモリ21aへ書込データをコピーする段階から、書き込み動作を、書き込みとその検証が正常に終了するまで繰り返す(ステップS30〜ステップS60のループ)。メモリコントローラ10に書込データを一時記憶するためのメモリを設けていないため、再度、揮発性メモリ22aから不揮発性メモリ21aに書込データをコピーする。
ベリファイも含めて書き込みが終了したメモリデバイスを新たな別のメモリデバイスに取り替えると、当該別のメモリデバイスへの書込データの書き込みは、高速に行うことができる。例えば、書き込みが終了したメモリデバイス20aをソケットから挿抜して新たな別のメモリデバイスを挿入すると、このメモリデバイスの揮発性メモリに対しては、第2メモリ制御部15bと第1メモリ制御部15aとを介して、メモリデバイス20bの揮発性メモリ22bから書込データを書き込むことができる。これにより、新たにホスト装置4から書込データを転送する必要がなくなり、書き込みが高速に行われる。また、ホスト装置4は、一度いづれかの揮発性メモリへ書込データを転送した後は、メモリコントローラ10或いはメモリシステム1からのディスターブがなく、図示しないその他のデバイスと通信することができる。
従来は、同じメモリデバイスから被検証データとしての書込データと検証データを読み出すために、各々に必要な時間を加算した時間必要である。しかし、上記のような本実施形態では、被検証データである書込データが書き込まれたメモリデバイスとは異なるメモリデバイスから検証データを読み出すために、書込データと検証データとを同時に読み出し可能である。そのために、ベリファイにかかる時間を従来よりも短縮できる。これにより、書込動作全体の時間も短縮できる。
メモリコントローラ10は、ROMライタとして用いる他に、例えばコンピュータシステム内に設けられ、同じコンピュータシステム内のメモリデバイスに書き込む装置としても用いることができる。コンピュータシステム内に設けられる場合には、例えばメモリデバイスがメモリコントローラから挿抜できないように、接続される。
本実施形態のメモリシステムの構成図である。 メモリデバイスの概略断面図である。 メモリデバイスの回路構成を説明する図である。 不揮発性メモリに備えられたコマンド判定回路及びアドレス制御回路の一例を示す回路図である。 メモリデバイスの動作を表すタイミングチャートである。 メモリシステムによるメモリデバイスへの書き込み動作の処理流れ図である。
符号の説明
1…メモリシステム、10…メモリコントローラ、11…入力インタフェース、12…出力インタフェース、13…通信制御部、14…検証部、15a…第1メモリ制御部、15b…第2メモリ制御部、16…制御部、17…データ線、18…制御線、20a,20b…メモリデバイス、21a,21b…不揮発性メモリ、22a,22b…揮発性メモリ、23…基板、24…配線、25…ボール電極、26…コマンド判定回路、27…アドレス制御回路、31…インバータ、32〜35…アンドゲート、36,37…スイッチ、38…実行コード判定回路38、39…アドレスラッチレイテンシ付加回路、40…ロウアドレスラッチ回路、41…カラムアドレスラッチ回路、2…入力装置、3…出力装置、4…ホスト装置

Claims (11)

  1. 不揮発性メモリ及び揮発性メモリを内蔵しており前記揮発性メモリから前記不揮発性メモリへのデータのコピーが可能になっているメモリデバイスを、複数接続可能なメモリコントローラであって、
    接続可能な前記メモリデバイスに1対1に対応しており、各々が、対応するメモリデバイスの前記揮発性メモリに対する前記データの書き込みを可能にするとともに、対応するメモリデバイスの前記不揮発性メモリ及び前記揮発性メモリからの前記データの読み出しを可能にする複数のメモリ制御部と、
    一のメモリ制御部により一のメモリデバイスの不揮発性メモリから読み出された第1データを、他のメモリ制御部により他のメモリデバイスの揮発性メモリから読み出された第2データを用いてベリファイする検証部と、を備えている、
    メモリコントローラ。
  2. 前記一のメモリ制御部と前記他のメモリ制御部とは、互いに同期して動作しており、これにより、前記他のメモリ制御部は、前記一のメモリ制御部が前記第1データを読み出すのと同時に前記第2データを読み出す、
    請求項1記載のメモリコントローラ。
  3. 前記一のメモリ制御部と前記他のメモリ制御部とは、それぞれ対応するメモリデバイスの前記揮発性メモリに同時に同じデータを書き込む、
    請求項2記載のメモリコントローラ。
  4. 前記一のメモリ制御部は、前記他のメモリデバイスの前記揮発性メモリに書き込まれたデータを前記他のメモリ制御部を介して読み出して、前記一のメモリデバイスの前記揮発性メモリに書き込む、
    請求項1又は2記載のメモリコントローラ。
  5. 前記検証部と前記一のメモリ制御部との間及び前記検証部と前記他のメモリ制御部との間は、各々異なる線路で接続されている、
    請求項1〜4のいずれか1項記載のメモリコントローラ。
  6. 前記複数のメモリ制御部の少なくとも一つは、対応するメモリデバイスが挿抜可能なソケットを備えており、このソケットを介してデータの送受信を行う、
    請求項1〜5のいずれか1項に記載のメモリコントローラ。
  7. 各々が不揮発性メモリ及び揮発性メモリを内蔵しており前記揮発性メモリから前記不揮発性メモリへのデータのコピーが可能になっている複数のメモリデバイスと、
    前記複数のメモリデバイスに1対1に対応しており、各々が、対応するメモリデバイスの前記揮発性メモリに対するデータの書き込みを可能にするとともに、対応するメモリデバイスの前記不揮発性メモリ及び前記揮発性メモリからのデータの読み出しを可能にする複数のメモリ制御部と、
    一のメモリ制御部により一のメモリデバイスの不揮発性メモリから読み出された第1データを、他のメモリ制御部により他のメモリデバイスの揮発性メモリから読み出された第2データを用いてベリファイする検証部と、を備えている、
    メモリシステム。
  8. 各々が不揮発性メモリ及び揮発性メモリを内蔵する複数のメモリデバイスに、前記複数のメモリデバイスとの間でデータの送受信が可能なメモリコントローラによりデータを書き込む方法であって、
    前記メモリコントローラが、各メモリデバイスの前記揮発性メモリに、異なる経路で同時に同じデータを書き込む第1段階と、
    前記メモリコントローラが、各メモリデバイスに対して、前記揮発性メモリに書き込まれたデータを前記不揮発性メモリにコピーさせるための制御データを送信する第2段階と、
    各メモリデバイスが、前記制御データを受信して内蔵する前記揮発性メモリに書き込まれた前記データを内蔵する前記不揮発性メモリにコピーする第3段階と、
    前記メモリコントローラが、所定の一のメモリデバイスの前記不揮発性メモリに書き込まれた第1データを、他のメモリデバイスの揮発性メモリに書き込まれた第2データを用いてベリファイを行う第4段階と、を含む、
    データの書込方法。
  9. 前記4段階で、前記メモリコントローラが、前記ベリファイに用いる前記第1データと前記第2データとを同時取得する、
    請求項8記載のデータの書込方法。
  10. 前記第4段階で、前記ベリファイがフェイルと判断されると、前記メモリコントローラが、前記制御データを前記メモリデバイスに再送信する、
    請求項8又は9記載のデータの書込方法。
  11. 前記ベリファイの結果、前記第1データが前記一のメモリデバイスの前記不揮発性メモリに正常に書き込まれていると判断されると、前記メモリコントローラが、新たな別のメモリデバイスの揮発性メモリに前記他のメモリデバイスの前記揮発性メモリのデータを書き込む、
    請求項8〜10のいずれか1項記載のデータの書込方法。
JP2008099308A 2008-04-07 2008-04-07 メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法 Expired - Fee Related JP5107776B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008099308A JP5107776B2 (ja) 2008-04-07 2008-04-07 メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008099308A JP5107776B2 (ja) 2008-04-07 2008-04-07 メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法

Publications (2)

Publication Number Publication Date
JP2009252294A JP2009252294A (ja) 2009-10-29
JP5107776B2 true JP5107776B2 (ja) 2012-12-26

Family

ID=41312858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008099308A Expired - Fee Related JP5107776B2 (ja) 2008-04-07 2008-04-07 メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法

Country Status (1)

Country Link
JP (1) JP5107776B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9076530B2 (en) 2013-02-07 2015-07-07 Seagate Technology Llc Non-volatile write buffer data retention pending scheduled verification
JP6030485B2 (ja) * 2013-03-21 2016-11-24 日立オートモティブシステムズ株式会社 電子制御装置
JP2014191372A (ja) * 2013-03-26 2014-10-06 Mega Chips Corp 不揮発性記憶システム、不揮発性記憶装置、メモリコントローラ、および、プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05290589A (ja) * 1992-04-03 1993-11-05 Nippon Steel Corp 半導体集積回路
US6535780B1 (en) * 1999-11-10 2003-03-18 Data I/O Corporation High speed programmer system
JP3872241B2 (ja) * 1999-11-19 2007-01-24 株式会社 沖情報システムズ 自立型装置の転倒防止足機構
US7290109B2 (en) * 2002-01-09 2007-10-30 Renesas Technology Corp. Memory system and memory card
JP2006309829A (ja) * 2005-04-27 2006-11-09 Nec Electronics Corp 不揮発性半導体記憶装置及びその制御方法

Also Published As

Publication number Publication date
JP2009252294A (ja) 2009-10-29

Similar Documents

Publication Publication Date Title
US7925854B2 (en) System and method of operating memory devices of mixed type
CN115987299B (zh) 错误检测码生成电路以及包括其的存储器***
US8433874B2 (en) Address assignment and type recognition of serially interconnected memory devices of mixed type
JP5427360B2 (ja) フラッシュメモリに基づくメモリシステム
TW201519237A (zh) 用於組態用於混合記憶體模組之記憶體之輸入/輸出之裝置及方法
JP7007102B2 (ja) 不揮発性メモリモジュール、及び格納装置の動作方法
TWI729239B (zh) 半導體裝置
KR20200100951A (ko) 메모리 장치 및 이를 포함하는 데이터 처리 시스템
JP2010009646A (ja) 半導体記憶装置
TW201602783A (zh) 執行遮罩式寫入指令之裝置及方法
JP5292935B2 (ja) メモリモジュール制御方法及びメモリモジュール並びにデータ転送装置
KR100877609B1 (ko) 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
JP5107776B2 (ja) メモリコントローラ、メモリシステム、及びメモリデバイスへのデータの書込方法
KR20210069514A (ko) 메모리 시스템 및 메모리 시스템의 트레이닝 방법
US20180189134A1 (en) Semiconductor device
US10976368B2 (en) Memory apparatus relating to determination of a failed region and test method thereof, memory module and system using the same
JP5010263B2 (ja) 不揮発性半導体記憶装置
US8537624B2 (en) Semiconductor memory device and method of operating the same
JP4074276B2 (ja) 半導体装置
US10698781B2 (en) Semiconductor memory module, semiconductor memory system, and method of accessing semiconductor memory module
US9997234B1 (en) Semiconductor devices
US20180196616A1 (en) Memory device and memory module
JP2007207397A (ja) 半導体記憶装置
US10621039B2 (en) Electronic devices
KR20110041613A (ko) Dram 인터페이스와 공유 메모리 영역을 통한 비휘발성 메모리 장치와 자기 기록 매체에 접근할 수 있는 장치

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100324

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100412

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100818

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110603

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120829

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

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

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees