(57)【要約】  半導体メモリにおけるシリアルデータリンクインターフェイスとメモリバンクとの間のデータ転送を制御する装置、システム、および方法が開示される。一例では、リンクがバンクと独立している、複数のシリアルデータリンクおよび複数のメモリバンクを備えるフラッシュメモリ装置が開示される。エコー信号ラインを使用して、フラッシュメモリ装置をデイジーチェーン構成においてカスケードし、メモリ装置間で連続的に通信してもよい。さらに、単一リンクを使用して複数のリンクをエミュレートする仮想複数リンク構成が記載されている。
2009510656.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリバンクと、
複数のシリアルデータリンクインターフェイスと、
前記複数のシリアルデータリンクインターフェイスのうちのいずれか1つと、前記複数のメモリバンクのうちのいずれか1つとの間のデータ転送を制御する制御回路と
を含む半導体メモリ装置。
【請求項２】
前記メモリバンクが不揮発性メモリバンクを含む請求項1に記載の半導体メモリ装置。
【請求項３】
前記不揮発性メモリバンクがフラッシュメモリバンクである請求項2に記載の半導体メモリ装置。
【請求項４】
前記フラッシュメモリバンクが直列に接続されたトランジスタメモリセルを含む請求項3に記載の半導体メモリ装置。
【請求項５】
前記フラッシュメモリバンクが並列に接続されたトランジスタメモリセルを含む請求項4に記載の半導体メモリ装置。
【請求項６】
前記制御回路が、前記複数のメモリバンクのうちの1つへの、およびそこからのシリアル入力および出力データの前記転送を制御する旨の実行可能命令を受信する請求項1に記載の半導体メモリ装置。
【請求項７】
前記制御回路が、前記シリアル入力データのアドレスフィールドに含まれているアドレス情報に応答して前記シリアル入力データの転送を制御する請求項6に記載の半導体メモリ装置。
【請求項８】
前記複数のメモリバンク、前記複数のシリアルデータリンクインターフェイス、および前記制御回路が、片面パッドアーキテクチャを有する単一のパッケージ内に配置されている請求項1に記載の半導体メモリ装置。
【請求項９】
前記複数のシリアルデータリンクインターフェイスが2つのシリアルデータリンクインターフェイスを含む請求項1に記載の半導体メモリ装置。
【請求項１０】
前記複数のシリアルデータリンクインターフェイスが4つのシリアルデータリンクインターフェイスを含む請求項1に記載の半導体メモリ装置。
【請求項１１】
前記制御回路が、前記複数のメモリバンクのうちの少なくとも2つと、前記複数のシリアルデータリンクインターフェイスのうちの少なくとも2つとの間の同時データ転送を制御するように構成されている請求項1に記載の半導体メモリ装置。
【請求項１２】
前記装置が、前記シリアルデータリンクインターフェイスのうちの1つを介した前記複数のメモリバンクのうちの1つでの読み取り操作、および前記複数のシリアルデータリンクインターフェイスのうちの別のものを介した前記複数のメモリバンクのうちの別のものでの書き込み操作を同時に実行する請求項1に記載の半導体メモリ装置。
【請求項１３】
複数のメモリバンクと、
前記メモリ装置との間のデータの転送を行う複数のシリアルデータリンクインターフェイスと、
前記複数のシリアルデータリンクインターフェイスのうちのいずれか1つと、前記複数のメモリバンクのうちのいずれか1つとの間のデータ転送を独立的に制御する制御回路と
を含む半導体メモリ装置。
【請求項１４】
複数のメモリバンクと、
シリアルデータリンクインターフェイスと、
前記シリアルデータリンクインターフェイスと、前記複数のメモリバンクのうちのいずれか1つとの間のデータ転送を制御する制御回路と
を含む半導体メモリ装置。
【請求項１５】
複数のメモリバンクと、
複数のシリアルデータリンクインターフェイスと、
前記複数のシリアルデータリンクインターフェイスのうちの選択された1つと、前記複数のメモリバンクのうちの選択された1つとの間のデータ転送を制御する旨の複数の命令を処理する制御回路と
を含む半導体メモリ装置。
【請求項１６】
前記メモリバンクが不揮発性メモリバンクを含む請求項15に記載の半導体メモリ装置。
【請求項１７】
前記不揮発性メモリバンクがフラッシュメモリバンクである請求項16に記載の半導体メモリ装置。
【請求項１８】
前記フラッシュメモリバンクが直列に接続されたトランジスタメモリセルを含む請求項16に記載の半導体メモリ装置。
【請求項１９】
前記フラッシュメモリバンクが並列に接続されたトランジスタメモリセルを含む請求項16に記載の半導体メモリ装置。
【請求項２０】
前記制御回路が、受信データのアドレスフィールドを構文解析し、前記アドレスフィールドにおいて識別された前記複数のメモリバンクのうちの1つへの前記データの転送を制御する旨のコンピュータ実行可能命令によってプログラムされる請求項15に記載の半導体メモリ装置。
【請求項２１】
前記複数のメモリバンク、前記複数のシリアルデータリンクインターフェイス、および前記制御回路が、片面パッドアーキテクチャを有する単一のパッケージ内に配置されている請求項15に記載の半導体メモリ装置。
【請求項２２】
前記制御回路が、前記複数のメモリバンクのうちの少なくとも2つに同時にアクセスするように構成されている請求項15に記載の半導体メモリ装置。
【請求項２３】
半導体メモリ装置における複数のシリアルデータリンクインターフェイスと複数のメモリバンクとの間のデータ転送を制御する方法であって、
(a)前記複数のシリアルデータリンクインターフェイスのうちの第1のもので第1のデータストリームを受信するステップと、
(b)第1のメモリバンク識別子を抽出するために、前記第1のデータストリームを構文解析するステップと、
(c)前記第1のシリアルデータリンクインターフェイスと前記第1のメモリバンクとの間にデータを送るステップと
を含む方法。
【請求項２４】
(d)前記複数のシリアルデータリンクインターフェイスのうちの第2のもので第2のデータストリームを受信するステップと、
(e)第2のメモリバンク識別子を抽出するために、前記第2のデータストリームを構文解析するステップと、
(f)(c)が実行される期間と少なくとも重なる期間中、前記第2のシリアルデータリンクインターフェイスと前記第2のメモリバンクとの間にデータを送るステップと
をさらに含む請求項23に記載の方法。
【請求項２５】
(d)前記複数のシリアルデータリンクインターフェイスのうちの第2のものから、第2のメモリバンクに格納されているデータの要求を受信するステップと、
(e)前記第2のシリアルデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータを、前記第2のシリアルデータリンクインターフェイスが使用されていることを示すように更新するステップと、
(f)前記第2のメモリバンク識別子に対応するメモリバンクステータスインジケータを、前記第2のメモリバンクが使用されていることを示すように更新するステップと、
(g)(e)が実行される期間と少なくとも重なる期間中、前記第2のメモリバンクと前記第2のシリアルデータリンクインターフェイスとの間にデータを送るステップと
をさらに含む請求項23に記載の方法。
【請求項２６】
前記第1のデータストリームを受信した後、前記第1のシリアルデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータを、前記第1のシリアルデータリンクインターフェイスが使用されていることを示すように更新するステップと、
前記第1のデータストリームを構文解析した後、前記第1のメモリバンクに対応するメモリバンクステータスインジケータを、前記第1のメモリバンクが使用されていることを示すように更新するステップと
をさらに含む請求項23に記載の方法。
【請求項２７】
メモリバンクステータスインジケータを更新するステップが、ステータスレジスタにおいてビット値を設定するステップをさらに含む請求項26に記載の方法。
【請求項２８】
データを送った後、前記第1のメモリバンクステータスインジケータを、前記第1のメモリバンクがもはや使用されていないことを示すように更新するステップをさらに含む請求項26に記載の方法。
【請求項２９】
(d)前記複数のシリアルデータリンクインターフェイスのうちの第2のもので第2のデータストリームを受信するステップと、
(e)第2のメモリバンク識別子を抽出するために、前記第2のデータストリームを構文解析するステップと、
(f)(c)が実行される期間と少なくとも重なる期間中、前記第2のシリアルデータリンクインターフェイスと前記第2のメモリバンクとの間にデータを送るステップと
をさらに含む請求項28に記載の方法。
【請求項３０】
前記第2のデータストリームを受信した後、前記第2のデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータを、前記第2のシリアルデータリンクインターフェイスが使用されていることを示すように更新するステップと、
前記第2のデータストリームを構文解析した後、前記第2のメモリバンク識別子に対応するメモリバンクステータスインジケータを、前記第2のメモリバンクが使用されていることを示すように更新するステップと
をさらに含む請求項29に記載の方法。
【請求項３１】
(d)前記複数のシリアルデータリンクインターフェイスのうちの第2のものから、第2のメモリバンクに格納されているデータの要求を受信するステップと、
(e)(c)が実行される期間と少なくとも重なる期間中、前記第2のメモリバンクと前記第2のシリアルデータリンクインターフェイスとの間にデータを送るステップと
をさらに含む請求項30に記載の方法。
【請求項３２】
データの流暢性要求、前記第2のデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータを、前記第2のシリアルデータリンクインターフェイスが使用されていることを示すように更新するステップと、
前記第2のメモリバンク識別子に対応するメモリバンクステータスインジケータを、前記第2のメモリバンクが使用されていることを示すように更新するステップと
をさらに含む請求項31に記載の方法。
【請求項３３】
半導体メモリ装置におけるシリアルデータリンクインターフェイスと複数のメモリバンクとの間のデータの転送を制御する方法であって、
(a)シリアルデータリンクインターフェイスでデータストリームを受信するステップと、
(b)第1のメモリバンク識別子を抽出するために、前記データストリームを構文解析するステップと、
(c)前記シリアルデータリンクと前記第1のメモリバンクとの間にデータを送るステップと
を含む方法。
【請求項３４】
(d)前記複数のシリアルデータリンクインターフェイスのうちの第2のもので第2のデータストリームを受信するステップと、
(e)第2のメモリバンク識別子を抽出するために、前記第2のデータストリームを構文解析するステップと、
(f)(c)が実行される期間と少なくとも重なる期間中、前記第2のシリアルデータリンクインターフェイスと前記第2のメモリバンクとの間にデータを送るステップと
をさらに含む請求項33に記載の方法。
【請求項３５】
前記第1のデータストリームを構文解析した後、前記第1のメモリバンクに対応するメモリバンクステータスインジケータを、前記第1のメモリバンクが使用されていることを示すように更新するステップ
をさらに含む請求項33に記載の方法。
【請求項３６】
(d)前記シリアルリンクインターフェイスで第2のデータストリームを受信するステップと、
(e)第2のメモリバンク識別子を抽出するために、前記第2のデータストリームを構文解析するステップと、
(f)(c)が実行される期間と少なくとも重なる期間中、前記シリアルリンクインターフェイスと前記第2のメモリバンクとの間にデータを送るステップと
をさらに含む請求項35に記載の方法。
【請求項３７】
前記第2のデータストリームを構文解析した後、前記第2のメモリバンク識別子に対応するメモリバンクステータスインジケータを、前記第2のメモリバンクが使用されていることを示すように更新するステップ
をさらに含む請求項36に記載の方法。
【請求項３８】
(c)および(f)が別々の処理スレッドを使用して行われる請求項37に記載の方法。
【請求項３９】
メモリバンクステータスインジケータを更新するステップが、ステータスレジスタにおいてビット値を設定するステップを含む請求項33に記載の方法。
【請求項４０】
データを送った後、前記メモリバンクステータスインジケータを、前記メモリバンクがもはや使用されていないことを示すように更新するステップをさらに含む請求項33に記載の方法。
【請求項４１】
(d)第2のメモリバンクに格納されているデータの要求を前記シリアルリンクインターフェイスから受信するステップと、
(e)前記第2のメモリバンクに対応するメモリバンクステータスインジケータを、前記第2のメモリバンクが使用されていることを示すように更新するステップと、
(f)(d)が実行される期間と少なくとも重なる期間中、前記第2のメモリバンクと前記シリアルリンクインターフェイスとの間にデータを送るステップと
をさらに含む請求項33に記載の方法。
【請求項４２】
(c)および(e)が別々の処理スレッドを使用して行われる請求項41に記載の方法。
【請求項４３】
複数のデータ入力ポート、複数のデータ出力ポート、複数の制御入力ポート、および複数の制御出力ポートを有する第1のフラッシュメモリ装置であって、データおよび制御信号を外部ソースから受信している第1のフラッシュメモリ装置と、
複数のデータ入力ポート、複数のデータ出力ポート、複数の制御入力ポート、および複数の制御出力ポートを有する第2のフラッシュメモリ装置であって、データおよび制御信号を、前記複数の直列に接続されたフラッシュメモリ装置のうちの第1のフラッシュメモリ装置から受信している第2のフラッシュメモリ装置と
を含む複数の直列に接続されたフラッシュメモリ装置を有するフラッシュメモリシステム。
【請求項４４】
前記複数のフラッシュメモリ装置の各フラッシュメモリ装置が一意の装置識別番号を所有する請求項43に記載のフラッシュメモリシステム。
【請求項４５】
前記複数のフラッシュメモリ装置の各フラッシュメモリ装置が、ターゲット装置のアドレスを前記装置の前記一意の装置識別番号と相関させることによって、前記装置が前記ターゲット装置であるかどうかを決定するために、シリアル入力データの前記ターゲット装置のアドレスフィールドを構文解析するように構成されている請求項44に記載のフラッシュメモリシステム。
【請求項４６】
前記複数のフラッシュメモリ装置の各フラッシュメモリ装置が、受信された任意の追加のシリアル入力データを処理する前に、前記ターゲット装置のアドレスフィールドを構文解析するようにさらに構成されている請求項45に記載のフラッシュメモリシステム。
【請求項４７】
前記第1のフラッシュメモリ装置が、前記第1のフラッシュメモリ装置によって受信された値を第2のフラッシュメモリ装置にエコーする複数の制御出力ポートを含む請求項43に記載のフラッシュメモリシステム。
【請求項４８】
前記外部ソースがメモリコントローラである請求項47に記載のフラッシュメモリシステム。
【請求項４９】
単一のクロック信号が、前記複数の直列に接続されたフラッシュメモリ装置のそれぞれに伝えられ、前記フラッシュメモリシステムの出力が予め定められた待ち時間だけ遅延する請求項48に記載のフラッシュメモリシステム。
【請求項５０】
前記複数の直列に接続されたフラッシュメモリ装置が、
複数のフラッシュメモリバンクと、
複数のシリアルデータリンクインターフェイスと、
前記複数のシリアルデータリンクインターフェイスのうちのいずれか1つと、前記複数のメモリバンクのうちのいずれか1つとの間のデータ転送を制御する制御回路であって、前記制御回路が前記複数のメモリバンクのうちの少なくとも2つと、前記複数のシリアルデータリンクインターフェイスのうちの少なくとも2つとの間の並行したデータ転送を制御するように構成されており、前記データが前記複数の直列に接続されたフラッシュメモリ装置のそれぞれで転送される制御回路と
をさらに含む請求項43に記載のフラッシュメモリシステム。
【請求項５１】
前記データが仮想複数リンクを使用して転送される請求項50に記載のフラッシュメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ装置に関する。より詳細には、本発明は、半導体フラッシュメモリ装置の速度および/または容量を向上させるメモリアーキテクチャに関する。
【背景技術】
【０００２】
デジタルカメラ、携帯用デジタルアシスタント、携帯用オーディオ/ビデオプレイヤ、および携帯端末などの携帯電子装置は、大容量メモリ、好ましくは、容量および速度機能が常に増加している不揮発性メモリを引き続き必要とする。例えば、現在入手可能なオーディオプレイヤは、オーディオ/ビデオデータを格納するための256メガバイトから40ギガバイトの間のメモリを有することができる。データが電力無しで維持され、したがって、電池寿命が延びるため、フラッシュメモリなどの不揮発性メモリやハードウェア装置などが好ましい。
【０００３】
現在、ハードディスクドライブは、高密度を有し、20から40ギガバイトのデータを格納することができるが、相対的に大きくて扱いにくい。しかし、ソリッドステートドライブとしても知られるフラッシュメモリは、密度が高く、不揮発性であり、ハードディスクドライブに比べてサイズが小さいために人気である。フラッシュメモリ技術は、EPROM技術およびEEPROM技術に基づく。各バイトが個々に消去されていたEEPROMと区別して、多数のメモリセルを一度に消去できるので、「フラッシュ」という用語が選択された。マルチレベルセル(MLC)の出現は、シングルレベルセルに比べてフラッシュメモリの密度をさらに増加させる。フラッシュメモリをNOR型フラッシュまたはNAND型フラッシュとして構成でき、NAND型フラッシュは、そのよりコンパクトなメモリアレイ構成のために、一定の面積当たりより高い密度を有することを当業者は理解されよう。さらに説明する上で、フラッシュメモリへの言及は、NOR型またはNAND型のいずれか、または他のタイプのフラッシュメモリであるものと理解されたい。
【０００４】
既存のフラッシュメモリモジュールは、現在の多くの消費者用電子装置に十分な速度で動作するが、こうしたメモリモジュールは、高いデータレートが望まれるそれ以上の装置での使用に適さないようである。例えば、高解像度の動画を記録するモバイルマルチメディア装置は、少なくとも10 MB/s のプログラミングスループットを有するメモリモジュールを必要とする可能性が高く、これは、7 MB/s の一般のプログラミングデータレートの現在のフラッシュメモリ技術では取得できない。マルチレベルセルフラッシュは、セルのプログラミングに多段階のプログラミングシーケンスが必要であるために、1.5 MB/s のかなり遅いレートを有する。
【０００５】
フラッシュメモリのプログラミングおよび読み取りスループットは、フラッシュメモリの動作周波数を増加させることによって直接増加され得る。例えば、約20〜30 MHz の現在の動作周波数は、約200 MHz までひと桁増加され得る。この解決策は、簡単であるように思われるが、こうした高い周波数での信号の質に重大な問題があり、フラッシュメモリの動作周波数に実際的な制限を設ける。特に、フラッシュメモリは、所望の構成に応じて、コマンド指示を受信し、入力データを受信し、出力データを提供する、8個または16個に達する1組の並列入力/出力(I/O)ピンを使用して、他の構成要素と通信する。これは、一般に、パラレルインターフェイスとして知られている。高速動作は、例えば、信号の質を低下させるクロストーク、信号スキュー、信号減衰(signal attenuation)など、よく知られている通信を低下させる影響をもたらす。
【０００６】
こうしたパラレルインターフェイスは、多数のピンを使用して、データを読み取り、書き込む。入力ピンおよびワイヤの数が増えるにつれて、いくつかの望ましくない影響も増える。これらの影響には、符号間干渉、信号スキュー、およびクロストークなどがある。符号間干渉は、ワイヤに沿って移動する信号の減衰、および複数の要素がワイヤに接続されたときに引き起こされる反射から生じる。信号スキューは、複数の信号が、異なる長さおよび/または特徴のワイヤに沿って移動し、異なる時に1つの終点に到着するときに起こる。クロストークは、近接したワイヤ上での信号の不要な結合を指す。クロストークは、メモリ装置の動作速度が増すにつれて一層の問題となる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、当分野では、携帯電子装置で使用するためのメモリモジュール、およびメモリモジュールへのアクセスに必要とされる入力ピンおよびワイヤの数を最低限に抑えながら、メモリ容量および/または動作速度が増加されるソリッドステートドライブアプリケーションの必要がある。
【課題を解決するための手段】
【０００８】
本発明の様々な態様を基本的に理解できるようにするために、以下に本発明のいくつかの実施形態の簡単な概略を示している。この要約は、本発明の広範な概要を示すものではない。本発明の鍵となる、または重要な要素を識別するためのもの、または本発明の範囲を画定するためのものではない。単に、後述するより詳細な説明の前置きとして、本発明のいくつかの実施形態を簡略化した形で提示するためのものである。
【０００９】
本発明の態様によれば、複数のメモリバンクおよび複数のシリアルデータリンクインターフェイスを備える半導体メモリ装置が開示される。一例では、メモリ装置は、リンクインターフェイスとメモリバンクとの間のデータ転送を独立して制御する制御回路から成る。いくつかの例では、メモリバンクは、不揮発性メモリである。本発明の制御回路は、メモリ装置における様々なモジュールおよび他の回路と通信する。例えば、制御回路は、モジュールの多くを駆動する制御信号を生成する。
【００１０】
半導体フラッシュメモリ装置で並行メモリ操作(concurrent memory operation)を実施する方法についても開示される。シリアルデータリンクインターフェイスおよびメモリバンクごとのステータスインジケータも含まれる。これらのステータスインジケータは、メモリバンクがビジーである(またはレディに戻る)とき、およびリンクインターフェイスがビジーである(またはレディに戻る)ときに更新される。さらに、仮想複数リンク機能(virtual multiple link feature)によって、ピンが低減されたメモリ装置は、従来技術の装置より大きいスループットで動作することができる。
【００１１】
本発明によれば、カスケード接続された複数のメモリ装置を有するメモリシステムも開示される。メモリ装置は、直列に接続されてもよく、外部メモリコントローラは、データおよび制御信号をメモリシステムから受信し、そこに提供することができる。本発明の別の実施形態では、開示された方法を実施する実行可能命令は、光ディスクや磁気ディスクなど、コンピュータ可読媒体上に、制御論理またはコンピュータ可読命令として格納される。本発明のいくつかの実施形態では、各フラッシュメモリ装置は、一意の装置識別子を含み得る。装置は、シリアル入力データにおけるターゲット装置情報フィールドを構文解析して、ターゲット装置情報を装置の一意の装置識別番号と相関させて、この装置がターゲット装置であるかどうかを決定するように構成されてもよい。明細書を通じて、本発明の他の様々な態様も開示される。
【００１２】
本発明は、一例として示されており、類似の参照番号が類似の要素を示す添付の図面に限定されない。
【発明を実施するための最良の形態】
【００１３】
少なくとも2つのメモリバンクを有する半導体メモリのシリアルデータインターフェイスが開示される。シリアルデータインターフェイスは、中央制御論理と通信する1つまたは複数のシリアルデータリンクを含み、各シリアルデータリンクは、コマンドおよびデータを逐次受信し、出力データを逐次出力することができる。各シリアルデータリンクは、データのプログラミングおよび読み取りのために、メモリ内の任意のメモリバンクにアクセスすることができる。シリアルインターフェイスの少なくとも1つの利点は、ある密度から別の密度まで同じである標準ピン配列の低ピン数の装置であり、したがって、ボードを再設計することなく、より高い密度への互換性のある将来のアップグレードが可能である。
【００１４】
図1Aおよび図1Bは、本発明の様々な態様による、並行動作をサポートするメモリ装置例を示す高レベルの図である。図1Aは、複数のシリアルデータリンクインターフェイス102および104、および複数のメモリバンク106および108を有するメモリ装置を示す。現在示されている構成は、本明細書では、デュアルポート構成と呼ばれる。各シリアルデータリンクインターフェイスは、関連の入力/出力ピンおよびデータ入力およびデータ出力回路を有し、これについて、図2Aを参照してさらに詳しく説明する。シリアルデータリンクインターフェイスを介して転送されたデータは、逐次方式で(例えば1ビット幅ストリームのデータとして)通過する。メモリ装置内のデータリンクインターフェイス102および104のそれぞれは、独立しており、メモリバンク106および108のうちのいずれかとの間でデータ転送を行うことができる。例えば、シリアルデータリンク102は、メモリバンク106またはメモリバンク108との間でデータ転送を行うことができる。同様に、シリアルデータリンク104は、メモリバンク106およびメモリバンク108との間でデータ転送を行うことができる。示されている2つのシリアルデータリンクインターフェイスは、独立しているため、別々のメモリバンクとの間で並行してデータ転送を行うことができる。本明細書で使用される場合、リンクは、1つまたは複数のメモリバンクのパスを提供し、1つまたは複数のメモリバンクとの間のデータ転送を制御する回路を指す。制御モジュール110は、各シリアルデータリンクインターフェイス102および104と、各メモリバンク106および108との間のデータの交換を制御するためのコマンドで構成可能である。例えば、制御モジュール110は、シリアルデータリンクインターフェイス104がメモリバンク108にデータを書き込んでいるのと同じ時に、シリアルデータリンクインターフェイス102がメモリバンク106からデータを読み取ることができるように構成されてもよい。この特徴は、システム設計の柔軟性の強化、および装置の利用率(例えば、バス利用率およびコア利用率など)の強化を提供する。下記に示されるように、制御モジュール110は、制御回路、レジスタ、およびスイッチ回路を含むことができる。
【００１５】
図1Bは、単一のシリアルデータリンクインターフェイス120が制御モジュール126を介して複数のメモリバンク122および124にリンクされている一実施形態を示している。現在示されているこの構成は、本明細書では、シングルポート構成と呼ばれ、図1Aに示されているデュアルポート構成より少ないメモリ装置入力/出力ピンを使用する。制御モジュール126は、シリアルデータリンクインターフェイス120がパイプライン式にメモリバンク122および124とのデータ交換を行うことができるように、2つの操作プロセスまたはスレッドを行う、または実行するように構成されている。例えば、データがメモリバンク122に書き込まれている間、データリンクインターフェイス120は、メモリバンク124からデータを読み出すことができる。本発明の様々な態様によれば、または下記でさらに詳しく説明されるように、メモリ装置は、図1Bに示されている単一リンク構成を使用して、複数のリンク操作をエミュレートする。この単一リンクを、本明細書では仮想複数リンクとも呼ばれる複数バンク構成と共に使用することによって、他のバンクがビジー状態であり得る間、任意の使用可能なバンクへのアクセスが可能である。その結果、メモリ装置は、リンク調停回路を介して他の使用可能なバンクにアクセスすることによって、単一リンク構成の利用率の強化を達成することができる。
【００１６】
図1Aおよび1Bに示されるメモリ装置は、単に例示の目的で、2つのメモリバンクを含む。本明細書に開示された本発明のいくつかの態様は、拡張可能であり、複数のメモリバンクおよび複数のシリアルデータリンクインターフェイスの使用を見越していることを当業者であれば理解されよう。単一メモリ装置は、例えば、2つ、4つ、またはそれ以上のメモリバンクを含むことができる。図1Cは、4つの独立したシリアルデータリンク132、134、136および138が、制御モジュール150の制御下で、4つのメモリバンク140、142、144および146とデータを交換するように構成されている一実施形態を示す。仮想複数リンク構成では、1つのリンクしか必要ないため、残りのリンク(図1Aでのデュアルリンクまたは図1Cでのクワッドリンク(quad link)ピン配列構成など)は、使用されず、NC(すなわち未接続)とみなされ得る。従来のパラレルインターフェイス構造と比較してシリアルデータリンクインターフェイスの少なくとも1つの利点は、リンクの柔軟性および大きい密度が維持されながら、メモリ装置上のピンの数が低減されることである。例えば、従来のフラッシュメモリ装置は、パッケージの複数の面にわたって48のピンを必要とし得るが、本発明の態様によるメモリ装置は、図11に示されているように、標準パッケージ1100の単一の面上のより少ないピン(例えば11ピン)の使用でよい。あるいは、必要とされる内部ボンドパッドがより少ないため、代わりに異なる小さいタイプのパッケージが使用されてもよい。
【００１７】
図2Aは、本発明の一実施形態による図1Aに示されているメモリ装置のより詳細な概念図を示す。メモリ装置200内の各メモリバンクのアーキテクチャは、NAND型フラッシュメモリコアアーキテクチャと同じ、または似ていてよい。図2Aは、本発明に関連する回路を示しており、図2Aを簡略化するために、いくつかの回路ブロックを意図的に省略する。例えば、フラッシュメモリコアアーキテクチャにより実装されたメモリ装置200は、メモリセルのプログラミングおよび消去に必要な高圧生成回路を含む。コアアーキテクチャ(またはコア回路)は、本発明で使用される場合、解読およびデータ転送回路など、メモリセルアレイおよび関連のアクセス回路を含む回路を指す。標準メモリアーキテクチャがよく知られているように、選択されたアーキテクチャに関連付けられているネーティブの操作もそうであり、このことを当業者は理解されたい。任意の知られている不揮発性または揮発性メモリアーキテクチャを、本発明の代替実施形態で使用できることを当業者はさらに理解されたい。
【００１８】
メモリ装置200は、メモリバンクA202およびメモリバンクB204など、それぞれのデータ、制御およびアドレス回路を含む多数の同じメモリバンク、メモリバンク202および204の両方に接続されているアドレスおよびデータパススイッチ回路206、スイッチ回路206にデータを提供し、そこからデータを受信する、各メモリバンクに関連付けられている同じインターフェイス回路205および207を含む。メモリバンク202および204は、例えばフラッシュメモリなどの不揮発性メモリが好ましい。論理的には、メモリバンク202によって受信され、提供された信号は、文字「A」で示され、メモリバンク204によって受信され、提供された信号は、文字「B」で示される。同様に、インターフェイス回路205によって受信され、提供された信号は、数字「0」で示され、インターフェイス回路207によって受信され、提供された信号は、数字「1」で示される。各インターフェイス回路205/207は、シリアルデータストリームでアクセスデータを受信し、アクセスデータは、例えばプログラミング操作のためのコマンド、アドレス情報、および入力データを含むことができる。読み取り操作では、インターフェイス回路は、読み取りコマンドおよびアドレスデータに応答して、シリアルデータストリームとして出力データを提供する。メモリ装置200は、制御インターフェイス208およびステータス/IDレジスタ回路210などのグローバル回路をさらに含み、クロック信号sclkiやresetなどのグローバル信号を、両方のメモリバンク202および204の回路およびそれぞれのインターフェイス回路205および207に提供する。以下で、上記の回路について、さらに説明する。
【００１９】
メモリバンク202は、出力データDOUT_Aを提供し、入力プログラムデータDIN_Aを受信する検出アンプおよびページバッファ回路ブロック212などのよく知られているメモリ周辺回路、および行デコーダブロック214を含む。ブロック212は列デコーダ回路も含むことを当業者であれば理解されよう。制御およびプレデコーダ回路ブロック216は、信号線ADDR_Aを介してアドレス信号および制御信号を受信し、プレデコードされたアドレス信号を行デコーダ214および検出アンプおよびページバッファ回路ブロック212に提供する。
【００２０】
メモリバンク204の周辺回路は、メモリバンク202について上述したものと同じである。メモリバンクBの回路は、出力データDOUT_Bを提供し、入力プログラムデータDIN_Bを受信する検出アンプおよびページバッファ回路ブロック218、行デコーダブロック220、および制御およびプレデコーダ回路ブロック222を含む。制御およびプレデコーダ回路ブロック222は、信号線ADDR_Bを介してアドレス信号および制御信号を受信し、プレデコードされたアドレス信号を行デコーダ220および検出アンプおよびページバッファ回路ブロック218に提供する。各メモリバンクおよびその対応する周辺回路は、よく知られているアーキテクチャで構成されてもよい。
【００２１】
一般の操作では、各メモリバンクは、特定のコマンドおよびアドレス、および必要に応じて入力データに対応する。例えば、メモリバンク202は、読み取りコマンドおよび読み取りアドレスに応答して出力データDOUT_Aを提供し、プログラムコマンドおよびプログラムアドレスに応答して入力データをプログラムすることができる。各メモリバンクは、例えば消去コマンドなど、他のコマンドに応答することができる。
【００２２】
現在示されている実施形態では、パススイッチ206は、メモリバンク202および204と、インターフェイス回路205および207との間に信号を渡す2つのモードのうちの1つで動作することができるデュアルポート回路である。第1は、メモリバンク202およびインターフェイス回路205の信号が互いに渡される直接転送モードである。同時に、メモリバンク204およびインターフェイス回路207の信号が、直接転送モードで互いに渡される。第2は、メモリバンク202およびインターフェイス回路207の信号が互いに渡されるクロス転送モード(cross-transfer mode)である。同時に、メモリバンク204およびインターフェイス回路205の信号が互いに渡される。パススイッチ206のシングルポート構成については、下記で説明する。
【００２３】
上述したように、インターフェイス回路205および207は、データをシリアルデータストリームとして受信し、提供する。これは、チップのピン配列要件を低減するとともに、高動作周波数で信号スループット全体を増加させるためである。メモリバンク202および204の回路は、一般に、並列のアドレスおよびデータ用に構成されているため、変換回路が必要である。
【００２４】
インターフェイス回路205は、シリアルデータリンク230、入力シリアル-パラレルレジスタブロック232、および出力パラレル-シリアルレジスタブロック234を含む。シリアルデータリンク230は、シリアル入力データSIPO、入力イネーブル信号IPEO、および出力イネーブル信号OPEOを受信し、シリアル出力データSOPO、入力イネーブルエコー信号IPEQO、および出力イネーブルエコー信号OPEQOを提供する。信号SIP0(およびSIP1)は、それぞれアドレス、コマンド、および入力データを含み得るシリアルデータストリームである。シリアルデータリンク230は、SIP0に対応するバッファードシリアル入力データ(buffered serial input data)SER_IN0を提供し、出力パラレル-シリアルレジスタブロック234からシリアル出力データSER_OUT0を受信する。入力シリアル-パラレルレジスタブロック232は、SER_IN0を受信し、それを並列の1組の信号PAR_IN0に変換する。出力パラレル-シリアルレジスタブロック234は、並列の1組の出力データPAR_OUT0を受信し、それをシリアル出力データSER_OUT0に変換し、これはその後、データストリームSOP0として提供される。出力パラレル-シリアルレジスタブロック234は、PAR_OUT0データの代わりに、そこに格納されているデータを出力するために、ステータス/IDレジスタ回路210からデータを受信することもできる。この特定の特徴のこれ以上の詳細については、後述する。さらに、シリアルデータリンク230は、別のメモリ装置200による制御信号およびデータ信号のデイジーチェーンカスケードに対応するように構成される。
【００２５】
シリアルインターフェイス回路207は、インターフェイス回路205と同様に構成されており、シリアルデータリンク236、入力シリアル-パラレルレジスタブロック240、および出力パラレル-シリアルレジスタブロック238を含む。シリアルデータリンク236は、シリアル入力データSIP1、入力イネーブル信号IPE1、および出力イネーブル信号OPE1を受信し、シリアル出力データSOP1、入力イネーブルエコー信号IPEQ1、および出力イネーブルエコー信号OPEQ1を提供する。シリアルデータリンク236は、SIP1に対応するバッファードシリアル入力データSER_IN1を提供し、出力パラレル-シリアルレジスタブロック238からシリアル出力データSER_OUT1を受信する。入力シリアル-パラレルレジスタブロック240は、SER_IN1を受信し、それを並列の1組の信号PAR_IN1に変換する。出力パラレル-シリアルレジスタブロック238は、並列の1組の出力データPAR_OUT1を受信し、それをシリアル出力データSER_OUT1に変換し、これはその後、データストリームSOP1として提供される。出力パラレル-シリアルレジスタブロック238は、PAR_OUT1データの代わりに、そこに格納されているデータを出力するために、ステータス/IDレジスタ回路210からデータを受信することもできる。さらに、シリアルデータリンク230と同様に、シリアルデータリンク236は、別のメモリ装置200による制御信号およびデータ信号のデイジーチェーンカスケードに対応するように構成される。
【００２６】
制御インターフェイス208は、標準入力バッファ回路を含み、内部チップ選択信号chip_sel、内部クロック信号sclki、および内部リセット信号resetを生成し、これらはそれぞれ、CS#、SCLK、およびRST#に対応する。信号chip_selは、主にシリアルデータリンク230および236によって使用されるが、resetおよびsclkiは、メモリ装置200にわたる回路の多くによって使用される。
【００２７】
図2Bは、本発明の一実施形態によるシリアルデータリンク230の図である。シリアルデータリンク230は、入力信号OPE0、IPE0、およびSIP0を受信する入力バッファ242、信号SOP0、IPEQ0、およびOPEQ0を駆動する出力ドライバ244、信号out_en0およびin_en0をクロックアウトするフリップフロップ回路246、インバータ248およびマルチプレクサ(MUX)250を含む。信号OPE0およびSIP0の入力バッファは、chip_selに応答して使用可能にされ、信号SOP0の出力ドライバは、インバータ248による逆chip_selに応答して使用可能にされる。信号out-en0は、下記で図2Eに示される出力バッファを使用可能にし、信号SER_OUT0を提供する。信号in_en0は、入力シリアル-パラレルレジスタブロック232がSER_IN0データ、信号in_en0、out_en0、およびSER_IN0をラッチできるようにする。
【００２８】
シリアルデータリンク230は、メモリ装置200を別のメモリ装置とデイジーチェーンカスケードできるようにする回路を含む。より詳細には、シリアル入力データストリームSIP0、およびイネーブル信号OPE0およびIPE0は、シリアルデータリンク230を介して、別のメモリ装置の対応するピンまで移動してもよい。SER_IN0は、AND倫理ゲート252によって受信され、in_en0がアクティブな高論理レベル(active high logic level)であるとき、その対応するフリップフロップ246に渡される。同時に、アクティブな高論理レベルのin_en0は、Si_next0を出力ドライバ244に渡すように、MUX250を制御する。同様に、IPE0およびOPE0は、それぞれのフリップフロップ246を介してIPEQ0およびOPEQ0にクロックアウトされ得る。シリアルデータリンク230について説明してきたが、シリアルデータリンク236は、同じ構成要素を含み、これらの構成要素は、図2Bのシリアルデータリンク230について示されているのと同じ方法で相互接続される。
【００２９】
図2Cは、入力シリアル-パラレルレジスタブロック232の図である。このブロックは、クロック信号sclki、イネーブル信号in_en0、および入力データストリームSER_IN0を受信し、SER_IN0を並列のデータ群に変換する。特に、SER_IN0は、コマンドCMD_0、列アドレスC_ADD0、行アドレスR_ADD0、および入力データDATA_IN0を提供するように変換され得る。本発明の現在開示されている実施形態は、例えば200 MHz など、高周波数で動作することが好ましい。この速度で、シリアル入力データストリームは、受信されたコマンドを解読できるより速いレートで受信され得る。シリアル入力データストリームが最初に1組のレジスタにバッファリングされるのは、このためである。現在示されている図は、信号名の指示子のみが異なる入力シリアル-パラレルレジスタブロック240にも適用されることを理解されたい。
【００３０】
入力シリアル-パラレルレジスタブロック232は、in_en0およびsclkiを受信する入力コントローラ254、コマンドレジスタ256、一時レジスタ258、およびシリアルデータレジスタ260を含む。シリアル入力データストリームのデータ構造は予め決められているため、入力データストリームの特定の数のビットが上述したレジスタに分配され得る。例えば、あるコマンドに対応するビットがコマンドレジスタ256に格納され、行アドレスおよび列アドレスに対応するビットが一時レジスタ258に格納され、入力データに対応するビットがシリアルデータレジスタ260に格納され得る。シリアル入力データストリームのビットの分配は、入力コントローラ254によって制御されてもよく、入力コントローラは、それぞれ予め定められた数のビットが受信された後に適切なレジスタ有効化制御信号を生成するためのカウンタを含むことができる。言い換えれば、3つのレジスタのそれぞれは、シリアル入力データストリームの予め定められたデータ構造に従ってシリアル入力データストリームのデータのビットを受信し、格納するように、順次、使用可能にされ得る。
【００３１】
コマンドインタプリタ262は、コマンドレジスタ256から並行してコマンド信号を受信し、解読済みコマンドCMD_0を生成する。コマンドインタプリタ262は、受信されたコマンドを解読する、相互接続された論理ゲートまたはファームウェアで実装される標準回路である。図4に示されるように、CMD_0は、信号cmd_statusおよびcmd_idを含み得る。スイッチコントローラ264は、簡単なスイッチ回路266を制御するために、CMD_0から1つまたは複数の信号を受信する。スイッチ回路266は、一時レジスタ258に格納されているすべてのデータを並行して受信し、解読済みコマンドCMD_0に従って、列アドレスレジスタ268および行/バンクレジスタ270の一方または両方にデータをロードする。一時レジスタが常に列および行/バンクアドレスデータの両方を含んでいるわけではないので、この解読が行われることが好ましい。例えば、ブロック消去コマンドを有するシリアル入力データストリームは、行アドレスのみを使用し、この場合、一時レジスタ258に格納されている関連のビットのみが行/バンクレジスタ270にロードされる。列アドレスレジスタ268は、プログラミング操作のために、パラレル信号C_ADD0を提供し、行/バンクアドレスレジスタ270は、パラレル信号R_ADD0を提供し、データレジスタ272は、パラレル信号DATA_IN0を提供する。一括して、CMD_0、C_ADD0、R_ADD0、およびData_IN0(オプション)は、パラレル信号PAR_IN0を形成する。所望の幅は、特定の標準に準拠するようにカスタマイズまたは調整され得る設計パラメータであるため、各パラレル信号のビット幅は、指定されていない。
【００３２】
フラッシュコアアーキテクチャ実装についてのメモリ装置200の操作の一部の例が、以下の表1に示されている。表1は、CMD_0の想定されるOP(操作)コード、並びに列アドレス(C_ADD0)、行/バンクアドレス(R_ADD0)、および入力データ(DATA_IN0)の対応する状態を列挙する。
【００３３】
【表１】
2009510656.tif 000003
【００３４】
さらに、表2は、入力データストリームの好ましい入力シーケンスを示している。コマンド、アドレス、およびデータが、最上位ビットから開始して、メモリ装置200に連続的にシフトインおよびシフトアウトされる。コマンドシーケンスは、1バイトコマンドコード(表2では「cmd」)で開始する。コマンドに応じて、1バイトコマンドコードの後に、コマンドアドレスバイト(表2では「ca」)、行アドレスバイト(表2では「ra」)、バンクアドレスバイト(表2では「ba」)、データバイト(表2では「data」)、および/または組合せが続くか、何も続かない場合がある。
【００３５】
【表２】
2009510656.tif 000004
【００３６】
図2Dは、図2Aに示されているパススイッチ206の図である。スイッチ206は、論理的に2つのスイッチサブ回路274および276に分割され、これらは同様に構成される。スイッチサブ回路274は、メモリバンク202の回路に、インターフェイス回路205またはインターフェイス回路207のいずれかのコマンド、アドレス、および入力データを選択的に渡す4つの入力マルチプレクサ278を含む。これらの信号は、図2Cで一例としてPAR_IN0と予めグループ分けされている。スイッチサブ回路274は、インターフェイス回路205にメモリバンク202またはメモリバンク204のいずれかからの出力データを選択的に渡す1つの出力マルチプレクサ280を含む。スイッチサブ回路276は、メモリバンク204の回路に、インターフェイス回路205またはインターフェイス回路207のいずれかのコマンド、アドレス、および入力データを選択的に渡す4つの入力マルチプレクサ(図示せず)を含む。スイッチサブ回路276は、インターフェイス回路207にメモリバンク202またはメモリバンク204のいずれかからの出力データを選択的に渡す1つの出力マルチプレクサ(図示せず)を含む。
【００３７】
スイッチサブ回路274および276はいずれも、スイッチ制御信号SW_CONTの状態に応じて、直接転送モードまたはクロス転送モードで同時に動作することができる。パススイッチ回路206は、現在デュアルポート構成で示されており、これは、両方のメモリバンク202および204は、いずれかのインターフェイス回路205および207を介して同時にアクセスされ得ることを意味する。
【００３８】
本発明の別の態様によれば、図1Bで上記で例証したように、パススイッチ206は、インターフェイス回路205および207の一方のみがアクティブであるシングルポートモードで動作することができる。この構成は、未使用のインターフェイス回路に関連付けられている入力/出力パッドがもはや必要ないため、メモリ装置200のピン配列エリア要件をさらに低減することができる。シングルポート構成では、依然としてSW_CONT選択信号に応答することができるそれぞれの出力マルチプレクサ280を除いて、スイッチサブ回路274および276が直接転送モードのみで動作するように設定されている。
【００３９】
インターフェイス回路205のみがアクティブであるシングルポート実施形態では、スイッチ266およびシリアルデータレジスタ260の出力からのデータを、入力シリアル-パラレルレジスタブロック232または240のいずれかの対応する列、行/バンクおよびデータレジスタに選択的に渡す補助パススイッチ(図示せず)が入力パラレル-シリアルレジスタブロック232(またはブロック240)に含まれている。実質上、補助パススイッチは、スイッチ206と同じであり得る。したがって、両方の入力シリアル-パラレルレジスタブロック232および240の列、行/バンクおよびデータレジスタには、交互のメモリバンクアクセス、または実質的に同時のアクセスのために、データがロードされてもよい。
【００４０】
図2Eは、出力パラレル-シリアルレジスタブロック234の図である。出力パラレル-シリアルレジスタブロック238が同じ構成であることを理解されたい。出力パラレル-シリアルレジスタブロック234は、メモリバンクからアクセスされたデータ、または前もってレジスタに格納されているステータスデータのいずれかを提供する。より詳細には、ユーザまたはシステムは、シリアルデータリンク230または236のステータスを要求することができる。出力されたステータスデータ内の指定されたビット位置(例えばビット4)における「1」の値は、特定のシリアルデータリンクインターフェイスがビジーであることを示すことができる。固定データは、メモリ装置200の電源を投入すると、ステータスデータとともに、デフォルトの状態でプレロードすることができるチップ識別データをさらに含み得る。ステータスデータは、システムによって認識可能な事前に選択された任意のビットパターンを有するように構成され得る。図には示されていないが、図2Eは、1つまたは複数の事前に決定された状態に基づいて、レジスタ284に格納されている1つまたは複数のビットを更新する追加の制御回路を含み得る。例えば、1つまたは複数のステータスビットは、経過したクロックサイクルの数に基づいて、またはメモリ装置200の様々な回路ブロックから受信された1つまたは複数のフラグ信号の組合せに基づいて変更され得る。
【００４１】
出力パラレル-シリアルレジスタブロック234は、出力データPAR_OUT0をパススイッチ206から受信する第1のパラレル-シリアルレジスタ282、マルチプレクサ286から固定データを受信する第2のパラレル-シリアルレジスタ284を含む。マルチプレクサ286は、信号cmd_idに応答して、ステータスレジスタ288に格納されているステータスデータ、またはIDレジスタ290に格納されているチップ識別データのうちの一方を選択的に渡す。出力マルチプレクサ292は、ORゲート294を介して、アクティブであるcmd_idまたはcmd_statusに応答して、第1のパラレル-シリアルレジスタ282、または第2のパラレル-シリアルレジスタ284のいずれかからデータを渡す。最後に、out-en0によって使用可能にされるシリアル出力制御回路296は、SER_OUT0を提供する。
【００４２】
ステータスインジケータのサイズおよび位置は、本発明の様々な態様に従って変更され得ることを当業者であれば理解されよう。例えば、シリアルデータリンクインターフェイスステータスインジケータは、他のタイプのステータスインジケータ(メモリバンクステータスインジケータなど)と結合されてもよく、かつ/またはレジスタブロックの外に(リンク調停モジュールや制御モジュール238などに)物理的に配置されもよい。他の例では、シリアルデータリンクインターフェイスステータスインジケータは、1ビットレジスタである。
【００４３】
図3A、4、5A、6A、および7は、本発明の様々な態様によるメモリ装置200によって実行されるいくつかのメモリ操作についてのタイミング図の例を示す。メモリ装置200によって実行される一部のメモリコマンドは、それだけには限定されないが、ページ読み取り、ランダムデータ読み取り、コピー用のページ読み取り、コピー用のターゲットアドレス入力、シリアルデータ入力、ランダムデータ入力、ページプログラム、ブロック消去、ステータスの読み取り、IDの読み取り、構成レジスタの書き込み、装置名エントリの書き込み、リセット、および/またはバンク選択を含む。上の図、および表1および2に示されているメモリ装置200の上述された実施形態を参照して、タイミング図についての以下の説明を行う。
【００４４】
図3Aのタイミング図で示された例では、「ページ読み取り」メモリコマンド314が、本発明によるメモリ装置200のシリアルデータリンク230で受信される。さらに、図3Bは、図3Aのタイミング図における「ページ読み取り」メモリコマンド314の操作と並行する簡略化したフローチャートを示す。実際に、図3Bに示されたステップは、図3Aのタイミング図と共に説明される。一例として、ステップ324で、「ページ読み取り」メモリコマンド314は、メモリ装置200のシリアルデータリンク230で読み取られる。
【００４５】
この例における受信データストリームは、コマンドデータ(第1バイト)、コマンドアドレスデータ(第2および第3バイト)、および行およびバンクアドレスデータ(第4、第5、および第6バイト)を含む6バイトのシリアルデータストリーム(すなわち、シリアル入力データ)である。バンクアドレスは、パススイッチ206を介したバンク202または204のいずれかへのアクセスを決定するために使用され得る。異なるメモリコマンドが異なるデータストリームを有し得ることを当業者であれば理解されよう。例えば、「ランダムデータ読み取り」メモリコマンドは、コマンドデータ(第1バイト)および列アドレスデータ(第2および第3バイト)の3バイトのみの予め定められたデータストリームを有する。後者の例では、シリアル入力データのアドレスフィールドは、列アドレスのみを含み、2バイト長であった。一方、前者の例では、アドレスフィールドは、5バイト長であった。本明細書に開示された全体の再点検の後、本発明の様々な態様に従って多数のメモリコマンドおよび予め定められたデータストリームが明らかであることを当業者であれば理解されよう。
【００４６】
引き続き図3aに示されている「ページ読み取り」メモリコマンドを伴う例で、チップ選択(CS#)信号302は、低く設定され、入力ポートイネーブル(IPEx)信号306に応答して、高く設定され、一方、シリアル入力(SIPx)ポート308は、シリアルクロック(SCLK)信号304の最初の立ち上がりエッジでサンプリングされる(xは、例えば、リンク0インターフェイス230やリンク1インターフェイス236など、リンクインターフェイス番号を表すプレースホルダーとして働く)。データ読み出し(ステップ328)は、「ページ読み取り」メモリコマンド314に対応するデータストリームである。CS#信号302は、メモリ装置200への入力であり、数ある中でも、メモリ装置200がアクティブである(例えばCS#が低いとき)かどうかを示すために使用され得る。IPEx信号306は、受信データストリームが特定のリンクインターフェイスで受信される(例えばIPExが高いとき)かどうか、または特定のリンクインターフェイスが受信データストリームを無視する(例えばIPExが低いとき)かどうかを示す。受信データストリームは、リンクインターフェイスのSIPx308でメモリ装置において受信される。最後に、システムクロック(SCLK)信号304は、メモリ装置200への入力であり、メモリ装置200の多数の回路によって実行される様々な操作を同期するために使用される。本発明の様々な態様によるメモリ装置は、こうしたクロック信号と同期され得る(例えば、操作およびデータ転送は、クロック信号の立ち上がりおよび/または立ち下がりエッジに起こる)、または非同期であり得る(例えば同期ではない)ことが当業者には明らかである。あるいは、ダブルデータレート(DRR)実装では、SCLKクロック信号の立ち上がりおよび立ち下がりエッジは、情報をラッチするために使用され得る。しかし、図3Aの例では、入力データは、SCLKの立ち下がりエッジにおいてラッチされ、出力データ322は、SCLKの立ち上がりエッジ後、シリアル出力ピン312  SOPxに現れる。
【００４７】
「ページ読み取り」のステータスは、図3Aに示されているように、SOPxピン312においてチェックされ、それによって、「レディ」指示が表示される時刻318までに「バンクビジー」結果がSOPx上に提供され、時刻322間に、まもなく出力データが現れる。図3Aは、「ページ読み取り」およびその後の「ステータスの読み取り」を示しているが、本発明の態様によれば、「ステータスの読み取り」無しの「ページ読み取り」も企図される。その実施形態では、データは、レディとなるまで出力データがSOPxピン上に提供されないことになる。
【００４８】
SIPxによってサンプリングされたコマンドデータは、図2Cで適切なレジスタ(コマンドレジスタ256など)に書き込まれる。第1バイトがコマンドデータであるような受信データストリームを設計するオプションの少なくとも1つの利点は、データが追加の処理無しにコマンドレジスタに転送され得ることである。データストリームにおけるその後のバイトは、メモリコマンドのタイプに従って、アドレスデータおよび/または入力データであり得る。本発明の様々な態様によるメモリ装置によって認識されたメモリコマンドの組は、単語ベース(すなわち16ビット)、または任意のI/O幅で定義され得ることを当業者であれば理解されよう。図3Aでは、コマンドデータ(すなわち「ページ読み取り」314に対応する00h)の後に、5バイトのアドレスデータ、すなわち2バイトの列アドレスデータ、および3バイトの行/バンクアドレスデータが続く。アドレスデータは、図2Cのアドレスレジスタ258に書き込まれる。アドレスデータは、メモリバンク202内に格納されている読み取られるべきデータを探すために使用される。このプロセスの間、プレデコーダ回路216、回路内列デコーダ(column decoder in circuit)212、および行デコーダ214は、読み取られるべきデータを選択するために使用される。例えば、プレデコーダモジュール216は、アドレス情報を事前解読するために使用される。その後、回路内列デコーダ212、および行デコーダ214は、アドレスデータに対応するビット線およびワード線を稼働させるために使用される。「ページ読み取り」コマンドの場合、ワード線に対応する複数のビット線が稼働される。その後、メモリバンク202に格納されているデータは、検出アンプによって検出された後、回路内ページレジスタ212に転送される。ページレジスタ内のデータは、図3Aの時刻318まで、すなわち出力ピンSOPxが「ビジー」を示すまで使用できない場合がある。経過した時間量は、転送時間(tR)と呼ばれる。転送期間は、時刻318(図3A)に終了し、tRの期間中続く。
【００４９】
転送期間が経過する前に、メモリバンクステータスインジケータは、特定のメモリバンク(例えばメモリバンク202)が「ビジー」であることを示すように設定される。図3Aのメモリバンクステータスインジケータ例は、ビットの1つ(例えばビット4)がメモリバンク202(すなわちバンク0)が「ビジー」であるか「レディ」であるかを示す1バイトフィールドである。メモリバンクステータスインジケータは、図2Eのステータスレジスタ288に格納されている。メモリバンクが受信データストリームから識別された後、メモリバンクステータスインジケータが更新される(例えばビット4が「0」に設定される)。メモリ操作が完了すると、メモリバンクがもはや「ビジー」ではない(すなわち「レディ」)ことを示すように、バンクステータスインジケータが更新される(例えばビット4が「1」に設定される)。以下でより詳しく説明するように、バンクステータスインジケータおよびSOPx出力ピンの両方が「ビジー」ステータスを示すことに留意されたい。図3Aでは、メモリバンクステータスインジケータは、1バイトフィールドとして示されているが、そのサイズは、必ずしもそのように限定されるわけではないことを当業者であれば理解されよう。大きめなステータスインジケータの少なくとも1つの利点は、多めの量のメモリバンクのステータスを監視することができることである。さらに、ステータスインジケータは、他のタイプのステータス(例えば、「ページプログラム」などのメモリ操作が行われた後、メモリバンクが「合格」ステータスであるか「不合格」ステータスであるか)を監視するために使用され得る。さらに、各ビットが異なるメモリバンクのステータスを示すように実装されるこの例のステータスインジケータが例にすぎないことは、当業者には明らかであろう。例えば、ビットの組合せの値が、(例えば、論理ゲートおよび他の回路を使用することによって)メモリバンクのステータスを示すために使用されてもよい。メモリバンクステータスインジケータに対応する「ステータスの読み取り」コマンドの操作については、図7との関連で、下記で説明される。
【００５０】
図3Aの例のメモリバンクステータスインジケータは、「ステータスの読み取り」メモリコマンド316を使用して読み取られる(ステップ328)。「ステータスの読み取り」コマンド316は、転送期間中のいつかに、レジスタブロック224内のコマンドレジスタに送信される。「ステータスの読み取り」コマンドは、メモリバンク202からページレジスタ216へのデータの転送がいつ完了するかを決定するために、メモリバンク202のステータスを監視するようメモリ装置200に指示する。「ステータスの読み取り」コマンドは、制御モジュール238からデータパス制御モジュール230を介して、またはデータパス制御モジュールによって直接送信される。「ステータスの読み取り」コマンドが発行される(例えば、コマンドインタプリタ228および/または制御モジュール238に送信される)と、出力ポートイネーブル(OPEx)信号310は、高く駆動され、メモリバンクステータスインジケータの内容は、シリアル出力(SOPx)ポート312を介して出力される。IPEx信号306と同様に、OPEx信号310は、高く設定されると、シリアル出力ポートバッファ(例えばデータ出力レジスタ)を使用可能にする。図3Aの時刻318で、SOPxにおけるステータスインジケータデータは、メモリバンク202が「ビジー」ステータスから「レディ」ステータスに変わった(ステップ330)ことを示す。ステータスインジケータの内容は、もはや必要ないため、OPEx信号310は、低に戻される。
【００５１】
次に、図3Aで、IPEx信号が高く設定され、データレジスタから出力ピンSOPxにデータを提供するために、終了アドレスデータ(trailing address data)の無い「ページ読み取り」コマンド320が、レジスタブロック224内のコマンドレジスタに再発行される(ステップ332)。その後、OPEx信号が高く設定され(およびIPExが低に戻され)、ページレジスタ216の内容がSOPx312に転送される。出力データが、メモリ装置200からリンクインターフェイス230を介して提供される(ステップ334)。エラー訂正回路(図示せず)は、出力データをチェックし、エラーが検出された場合は、読み取られたエラーを示すことができる。ページ読み取りコマンドのステータスおよび再アサートの監視は、システムによって自動に行われ得ることを当業者であれば理解されよう。図3Aは、単に、本発明の態様によるメモリ装置操作の一例にすぎず、本発明は、そのように限定されない。例えば、本発明の様々な態様に従って、他のメモリコマンドおよびタイミング図が描かれる。
【００５２】
例えば、図4に、「ページ読み取り」コマンドに続く「ランダムデータ読み取り」コマンドのタイミング略図が示されている。「ランダムデータ読み取り」コマンドは、「ページ読み取り」コマンドまたは「ランダムデータ読み取り」コマンドの後の単一または複数の列アドレスにおける追加データの読み取りを可能にする。「ランダムデータ読み取り」コマンド402のデータストリームは、コマンドデータ(第1バイト)、および列アドレスデータ(第2および第3バイト)の3バイトから成る。データが「ページ読み取り」コマンドで選択された同じ行から読み取られるため、行アドレスデータは必要ない。通常の「ページ読み取り」コマンドが完了した後発行された「ランダムデータ読み取り」コマンドによって、現在のページ(すなわち、前のコマンド中に読み取られたページ)からのデータ404の一部が出力される。「ランダムデータ読み取り」コマンドの少なくとも1つの利点は、データがすでにメモリバンク202に対応する回路のページレジスタ212に存在するため、事前に選択されたページからのデータが出力され得る効率が増すことである。
【００５３】
図5Aについて、「ページプログラム」コマンドのタイミング図が示されている。図2Aに示された実施形態は、シリアルデータ入力および出力リンク構造を使用するため、ページをプログラムし始める前に、まず、プログラムデータがバンクページレジスタにロードされなければならない。これは、「シリアルデータ入力コマンド」で達成される。「シリアルデータ入力」コマンド502は、データのあるページまで(例えば2,2112バイト)が回路内ページバッファ212にロードされるシリアルデータロード期間から成る。データレジスタのロードのプロセスが完了した後、データをバンクレジスタから適切なメモリバンクに転送するための「ページ開始」コマンド504が発行される。コマンド504が発行されると、内部書き込みステートマシン(internal write state machine)が、適切なアルゴリズムを実行し、操作をプログラムし、確認するようタイミングを制御する。したがって、本発明の一実施形態によれば、「ページ開始」コマンドは、シリアルデータ入力および確認の2つのステップに分割される。「ページプログラム」コマンドが正常に完了すると、メモリバンクステータスインジケータは、正常な操作を示す「合格」(「不合格」ではなく)結果を提供する。他の点では、図5Aの例に関わるタイミング図およびステップは、図3Aのものと類似しており、これについては、上記でより詳しく説明している。
【００５４】
さらに、図5Bは、図5Aのタイミング図における「ページプログラム」コマンドの操作と並行する簡略化したフローチャートを示す。ステップ506で、「シリアルデータ入力」コマンド502がシリアル入力ポート(SIP)ラインに入力される。この例でのSIPラインに入力されたデータストリームは、コマンドデータ(第1バイト)で始まるマルチバイトシリアルデータストリーム(すなわち、シリアル入力データ)である。次に、コマンドアドレスデータ(シリアルデータストリームの第2および第3バイト)および行アドレス/バンクデータ(シリアルデータストリームの第4、第5、および第6バイト)がSIPラインに入力される(ステップ508)。次いで、入力データは、シリアルデータストリームのその後のバイトにおいて、SIPラインに入力される(ステップ510)。ステップ512で、「プログラム開始」コマンド504が発行される。次に、操作のステータスを監視するために、「ステータスの読み取り」コマンドがSIPラインに書き込まれる(ステップ514)。これによって、メモリ装置は、メモリバンクステータスレジスタのステータスビットを監視する。メモリバンクがレディであり(ステップ516)、メモリバンクが「合格」であることを示す(ステップ518)ことをステータスビットが示すと、「ページプログラム」メモリコマンドは、正常に実行されている。
【００５５】
さらに、「コピー用のページ読み取り」および「コピー用のターゲットアドレス入力」メモリコマンドは、本発明の態様によるメモリ装置によって実行される他の操作である。「コピー用のページ読み取り」コマンドがシリアルリンクインターフェイスのコマンドレジスタに書き込まれた場合、メモリ位置の内部ソースアドレス(3バイト)が書き込まれる。ソースアドレスが入力されると、メモリ装置は、指定されたソースアドレスにおけるメモリバンクの内容をデータレジスタに転送する。その後、「コピー用のターゲットアドレス入力」メモリコマンド(3バイトのバンク/行アドレスシーケンスを含む)は、ページコピー操作のターゲットメモリアドレスを指定するために使用される。次いで「ページプログラム」コマンドは、内部制御論理に、ページデータをターゲットアドレスに自動的に書き込ませるようにするために使用され得る。「ステータスの読み取り」コマンドは、その後、コマンドの正常な実行を確認するために使用されてもよい。本明細書の全開示の再点検の後、当業者には他のメモリ操作が明らかである。
【００５６】
図6Aについて、「消去」(または「ブロック消去」)コマンドのタイミング図が示されている。さらに、図6Bは、図6Aのタイミング図における「消去」コマンドの操作と並行する簡略化したフローチャートを示す。消去が一般にブロックレベルで行われることを、当業者であれば認識している。例えば、フラッシュメモリ装置200は、各バンクに、ブロック当たり64の2,112バイト(2,048+64バイト)ページとして編成される2,048個の消去可能ブロックを有し得る。各ブロックは、132,000バイト(128,000+4,000バイト)である。「消去」コマンドは、一度に1つのブロックに対して働く。ブロック消去は、ステップ610で、「消去」コマンドに対応するコマンドデータ602を、ステップ612での行およびバンクアドレスの3バイトとともに、SIPxを介してコマンドレジスタに書き込むことによって開始される。コマンドおよびアドレスの入力が完了した後、内部消去ステートマシン(internal erase state machine)は、プロパティアルゴリズムを自動的に実行し、操作を消去し、確認するのに必要なすべてのタイミングを制御する。「消去」操作は、「1」の論理値をメモリのあるブロック内のすべてのメモリ位置に書き込む、またはプログラミングすることによって実行され得ることに留意されたい。tBERS(すなわちブロック消去時刻)がいつ完了するかを決定するために消去ステータスを監視するために、ステップ614で、「ステータスの読み取り」コマンド604(例えば、70hに対応するコマンドデータ)が発行され得る。「読み取りステータス」コマンドの後、新しいコマンドが与えられるまで、すべての読み取りサイクルがメモリバンクステータスレジスタから来る。この例では、メモリバンクステータスレジスタの適切なビット(例えばビット4)が、対応するメモリバンクの状態(ビジーやレディなど)を反映する。ステップ618でバンクがレディになると、ステップ620でメモリバンクステータスレジスタの適切なビット(例えばビット0)がチェックされて、ステップ622で消去操作が合格した(すなわち正常に実行された)か、ステップ624で不合格になったかを決定する。いくつかの点では、図6Aの例に関わるタイミング図およびステップは、図3Aのものと類似しており、これについては、上記でより詳しく説明している。
【００５７】
図7について、メモリバンクステータスインジケータは、「ステータスの読み取り」メモリコマンドを使用して読み取られる。702で、「ステータスの読み取り」コマンド(すなわち「70h」)が図2Cのコマンドレジスタ256に送信されると、メモリ装置200は、メモリバンク202のステータスを監視するように指示されて、数ある中でも、メモリバンク202から回路内ページバッファ212へのデータの転送がいつ正常に完了するかを決定する。「ステータスの読み取り」コマンドが発行される(例えば、コマンドインタプリタ262に送信される)と、出力ポートイネーブル(OPEx)信号は、高く駆動され、メモリバンクステータスインジケータの内容は、704で、シリアル出力(SOPx)ポートを介して出力される。OPEx信号は、高に設定されると、シリアル出力ポートバッファ(例えばデータ出力レジスタ)を使用可能にする。図7の例では、メモリバンクステータスインジケータは、1バイト(すなわち8ビット)フィールドであり、各ビットは、数ある中でも、メモリバンク(例えば、メモリバンク202)が「ビジー」であるか、「レディ」であるか、および/またはメモリバンクに対して行われる操作(例えば「消去」コマンド)が「合格」したか「不合格」であったかを示す。図7では、メモリバンクステータスインジケータは、1バイトフィールドとして示されているが、そのサイズは、必ずしもそのように限定されるわけではないことを当業者であれば理解されよう。大きめなステータスインジケータの少なくとも1つの利点は、多めの量のメモリバンクのステータスを監視することができることである。さらに、この例のステータスインジケータは、各ビットが異なるメモリバンクのステータスを示すように実装されているが、本発明はそのように限定されないことは、当業者には明らかであろう。例えば、ビットの組合せの値が、(例えば、論理ゲートおよび他の回路を使用することによって)メモリバンクのステータスを示すために使用されてもよい。
【００５８】
図8A、8B、および8Cは、2つの独立したシリアルデータリンク230および236を使用して並行操作を行うために使用される本発明の態様によるメモリ装置のタイミング図を示す。本発明の態様によるメモリ装置によって実行されるいくつかの並行操作は、それだけには限定されないが、並行読み取り、並行プログラム、並行消去、プログラム中の読み取り、消去中の読み取り、および消去中のプログラムを含む。図8Aは、バンクA(バンク202)およびバンクB(バンク204)に対して行われる並行「ページ読み取り」操作を示す。図8Aでは、バンクAは、「バンク0」として表され、バンクBは、「バンク1」として表される。本明細書の全開示の再点検の後、当業者には他の並行操作が明らかになる。
【００５９】
図8Aを参照すると、メモリ装置200内の異なるメモリバンクで指示された並行「ページ読み取り」操作802、804が実行される。2つのリンクインターフェイス230、236を含むメモリ装置200では、「ページ読み取り」802は、データリンクインターフェイス230(すなわちリンク0)を介して保留中であり、「ページ読み取り」コマンド804は、データリンクインターフェイス236(すなわちリンク1)を介して発行される。図8Aは、バンク1での「ページ読み取り」の前にバンク0での「ページ読み取り」が開始することを示しているが、2つの「ページ読み取り」操作は、実質的に同時に始まり、並行して動作することができる。「ページ読み取り」コマンドのそれぞれから出力されたデータ806、808は、それぞれのデータリンクインターフェイスを介して同時に送信される。したがって、メモリ装置200内の各データリンクインターフェイスは、メモリバンクのいずれかにアクセスし、独立して動作し得る。この特徴の少なくとも1つの利点は、システム設計における柔軟性の向上、および装置の稼働率の強化(例えば、バス稼働率やコア稼働率など)である。
【００６０】
図8Aにおけるメモリバンクからデータリンクインターフェイスに出力されたデータのパスは、上述した図3Aのものに似ている。例えば、メモリバンク204から出力されたデータは、S/Aおよびページバッファ218から、例えばバンクアドレスによって制御されるパススイッチ206を通過して、出力パラレル-シリアルレジスタブロック238、およびシリアルデータリンクインターフェイス236(すなわちリンク1)に流れる。メモリバンク202および204とシリアルデータリンクインターフェイス230、236との間のそれぞれの同時のデータ転送は、互いに独立して起こる。バンクアドレスは、パススイッチ206を制御することができるため、シリアルデータリンクインターフェイス236は、代わりにバンク202にアクセスすることができる。メモリ装置200内のデータリンクインターフェイスの数は、メモリ装置200上のポートまたはピンの数に限定されない。また、メモリ装置200におけるリンクインターフェイスの数も、メモリ装置におけるメモリバンクの数によって制限されない。例えば、各データリンクインターフェイスは、単一の入力ストリームおよび/または単一の出力ストリームを処理することができる。
【００６１】
さらに、本発明の態様によれば、図8Bは、メモリ装置200における異なるメモリバンクで指示された「ページ読み取り」コマンド810および「ページプログラム」コマンド812が並行して実行されるタイミング図を示している。この例では、読み取り操作(「ページ読み取り」810)がシリアルデータリンクインターフェイス230を介して複数のメモリバンクのうちの1つ(例えばメモリバンク202)で実行されている。一方、同時に、書き込み操作(「ページプログラム」812)がシリアルデータリンクインターフェイス236を介して複数のメモリバンクのうちの別のもの(例えばメモリバンク204)で実行されている。本発明の様々な態様によれば、メモリ装置200内の各リンクは、メモリバンクのいずれかにアクセスし、独立して動作することができる。
【００６２】
図8Cは、2つのシリアルデータリンクインターフェイスおよび2つのメモリバンクが並行メモリ操作を実行しているメモリ装置200のタイミング図の例である。まず、メモリバンク0(バンク202)で指示された「消去」コマンド814は、シリアルインターフェイスリンク0(シリアルデータリンク230)から発行される。リンク0(シリアルデータリンク230)およびメモリバンク0(バンク202)が「消去」コマンド814でビジーである間、「ページプログラム」コマンドがメモリ装置で受信され、リンク1(シリアルデータリンク236)を使用するように指示される。したがって、「ページプログラム」コマンド816は、シリアルデータリンクインターフェイス1(シリアルデータリンク236)からメモリバンク0(バンク202)において実行される。一方、同時に、読み取りコマンド818は、シリアルデータインターフェイス0(シリアルデータリンク230)によってメモリバンク1(バンク204)において実行される。データは、メモリコマンド814中に、シリアルデータリンクインターフェイス0(シリアルデータリンク230)とバンク0(バンク202)との間に転送され、メモリコマンド818中に、同じリンクインターフェイス0(シリアルデータリンク230)とバンク1(バンク204)との間に転送される。したがって、本発明の態様によれば、メモリ装置200における各リンクは、メモリバンク(すなわちビジーではないメモリバンク)のいずれかに、独立してアクセスする。
【００６３】
本明細書に開示された全体の再点検の後、図8A、8B、および8Cは、単に、本発明に従って描かれた並行メモリ操作のいくつかの例を示しているにすぎないことは、当業者には明らかであろう。並行操作の他の例は、それだけには限定されないが、並行消去、プログラム中の読み取り、消去中の読み取り、消去中のプログラム、プログラム中の消去、および/または並行プログラムを含む。フローチャートにおけるステップの順序の記述は、ステップをその特定の順序のみに限定するように解釈されるべきではないことを当業者であれば理解されよう。例えば、ステータスの読み取りコマンドの有無に関わらず、読み取りコマンドおよびプログラムコマンドを発行できる。
【００６４】
図9は、本発明の態様による、複数のシリアルリンクインターフェイスと複数のメモリバンクとの間の2つの並行書き込み操作のより一般的な説明を示す。図9は、本発明の一実施形態による、シリアルデータリンクインターフェイスを介してデータをメモリバンクに書き込む方法を示す。まず、ステップ902で、データストリームがシリアルデータリンクインターフェイスで受信される。データストリームは、レジスタに格納されるコマンド、アドレス、およびデータを含む。次に、ステップ904で、第1のシリアルデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータは、第1のシリアルデータリンクインターフェイスが使用されていることを示すように更新される。ステップ904は、ステータスレジスタ内のビット値を変更することを含む。ステップ904における更新は、特定のインターフェイスが使用されていることを示す。ステップ906で、データストリームは、第1のメモリバンク識別子を抽出するために構文解析される。メモリバンク識別子は、メモリ装置内のメモリバンクを一意に識別する。メモリバンク識別子は、データストリームのアドレスフィールドまたは他のフィールド内に含まれ得る。次に、メモリバンク識別子を抽出するためにデータストリームを構文解析した後、ステップ908で、対応するメモリバンクステータスインジケータが更新される。ステップ904および908で行われる更新は、例えば、ステータス/IDレジスタ210内の制御回路によって生成される制御信号によって駆動され得る。これらの制御信号は、簡潔にするために、含まれているタイミング図から省略されている。最後に、ステップ910で、データが第1のシリアルデータリンクと第1のメモリバンクとの間に送られる。データは、最初にメモリバンクページレジスタに書き込まれ、次いでその後、メモリバンク内にプログラムされるため、ステップ910は、この一般的な説明では簡略化されていることに留意されたい。
【００６５】
一方、示されている操作902と並行して、別の書き込みデータ操作が、異なるシリアルデータリンクインターフェイスを介して、異なるメモリバンクにおいて行われる。言い換えれば、第2のメモリ操作は、第2のシリアルデータリンクインターフェイスと第2のメモリバンクとの間に送られる第2のデータストリームを使用して、並行して行われる。まず、第2のデータストリームは、ステップ912で、複数のシリアルデータリンクインターフェイスのうちの第2のもので受信される。ステップ912および902で言及されたシリアルデータリンクインターフェイスはすべて、同じメモリ装置の一部である。ステップ914で、第2のデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータは、第2のシリアルデータリンクインターフェイスが使用されていることを示すように更新される。次に、第2のデータストリームは、ステップ916で、第2のメモリバンク識別子を抽出するために構文解析される。ステップ918で、第2のメモリバンク識別子に対応するメモリバンクステータスインジケータは、第2のメモリバンクが使用されていることを示すように更新され、ステップ920で、「ページプログラム」コマンドに関連して上述したように、第2のメモリバンクの関連のページレジスタを介して、第2のシリアルデータリンクインターフェイスと第2のメモリバンクとの間に送られる。図9では、いったんデータの転送が起こると、すなわち、シリアルデータリンクインターフェイスが指定されたメモリバンクに書き込まれるすべてのデータを受信すると、各シリアルデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスインジケータは、関連のリンクが現在使用可能であることを示すためにリセットされ、一方、メモリバンクインジケータは、すべての関連のデータがプログラムされて、その後、関連のバンクが使用可能になったことをメモリバンクインジケータが示すまで、ビジーのままである。
【００６６】
図10は、図9のステップ902から910に示されている(ステップ1010として示されている)データの書き込みと並行して、データがメモリバンクから読み取られるときに行われ得るステップ例を示す。図10は、図7に示されている並行メモリ操作の完了の際に行われ得るいくつかのステップの一例を示す。まず、ステップ1002で、第2のメモリバンクに格納されているデータの読み取り要求が複数のシリアルデータリンクインターフェイスのうちの第2のものから受信される。ステップ1004で、第2のデータリンクインターフェイスに対応するシリアルデータリンクインターフェイスステータスインジケータは、第2のシリアルデータリンクインターフェイスが使用されていることを示すように更新される。ステップ1006で、第2のメモリバンク識別子に対応するメモリバンクステータスインジケータは、第2のメモリバンクが使用されていることを示すように更新される。最後に、ステップ1008で、データが第2のメモリバンクと第2のシリアルデータリンクインターフェイスとの間に送られる。図10に示されているステップのうちの1つまたは複数が並行して行われてもよい。
【００６７】
図1Bに戻ると、示されているメモリ装置は、仮想複数リンクを使用する単一のデータリンクインターフェイス120の構成を含む。図1Bは、上述された入力シリアル-パラレルレジスタ232の構成で実施され得る。より一般的には、図1Bの実施形態は、メモリ装置200で実施され得るが、2つのシリアルデータリンクのうちの一方のみが使用されている。従来のフラッシュメモリでは、操作が完了するまでI/Oピンが占有されている。したがって、装置のビジーステータス中、操作をアサートできず、これは、装置の可用性を低減し、全体的な性能を低下させる。図1Bに示されている例では、2つのメモリバンクのうちの一方で操作が開始された後、「ステータスの読み取り」操作によってチェックされた任意の使用可能なメモリバンクがアクセスされ得る。その後、メモリ装置は、シリアルデータリンクを使用して、補助スイッチ回路を介して使用可能なメモリバンクにアクセスすることができる。したがって、本発明のこの態様によれば、複数のメモリバンクにアクセスするために、単一のリンクが使用されてもよい。この仮想複数リンク構成は、単一リンクを使用する複数リンク操作をエミュレートする。
【００６８】
図12は、バンク0の「ページプログラム」、バンク1の「ページ読み取り」が実行される仮想複数リンク構成を使用して2つのメモリバンクがメモリ操作を行うメモリ装置のタイミング図を示す。まず、メモリバンク0で指示された「ページプログラム」コマンド1202が発行される。「ページプログラム」コマンドは、すでに上述されているが、要点を繰り返して、バンク0にプログラムされるべきデータをバンク0ページレジスタにロードするために、まず、「シリアルデータ入力」コマンドが実行される。その後、「ページプログラム」コマンドが発行され、データがページレジスタからバンク0に書き込まれる。「ステータスの読み取り」コマンド1204が発行されると、装置は、1206で、バンク1が「レディ」であること(およびバンク0が「ビジー」であること)を示す。したがって、本発明による仮想複数リンク構成に基づいて、メモリバンク0がビジーである間、メモリバンク1で指示された「ページ読み取り」コマンド1208が発行されてもよく、また発行される。「ページ読み取り」コマンドについては上述されている。「ステータスの読み取り」コマンド1210は、メモリバンクのステータスを決定するために発行され得る(また図12で発行されるように示されている)。「ステータスの読み取り」コマンドの結果は、期間1212の間メモリバンク0およびメモリバンク1の両方がレディであることを示す。最後に、「ページ読み取り」コマンド1214(バンク1の場合)が発行され、この結果、バンク1「ページ読み取り」コマンドに対応するメモリアドレスの内容がシリアル出力ピン(SOP)上に出力される。バンク0における「ページプログラム」操作が行われている間、シリアルデータインターフェイスリンクピンSIPは、バンク1を「レディ」と識別する「ステータスの読み取り」コマンドを受信するように使用可能であることに留意されたい。同様に、バンク1における「ページ読み取り」コマンドが初期化されると、SIPピンはこの場合も、バンク0および1が現在レディであることを示す「ステータスの読み取り」コマンドに使用可能である。その結果、単一のシリアルデータインターフェイスリンクを使用して、両方のバンクのステータスにアクセスし、それらをチェックすることができる。図12で実施された仮想複数リンク機能の態様は、前のメモリ操作が保留中である間でさえ、リンクが使用可能であることを示す。この機能から生じる少なくとも1つの利点は、仮想複数リンク構成に起因するピン数の低減である。別の利点は、メモリ装置の性能の向上である。
【００６９】
さらに、仮想複数リンク機能の態様がデュアルまたはクワッドリンク構成のメモリ装置で実装されるとき、1つだけ除いて全部のリンクが非アクティブであると考えることが望ましい場合がある。例えば、クワッドリンク構成(図1C)の4つのリンクのうちの3つは、使用されなくてもよく、NC(未接続)と指定され得る。こうした実装の少なくとも1つの利点は、リンクの柔軟性および可用性を維持しながら、メモリ装置におけるピンの数を低減することである。
【００７０】
本発明の様々な態様によれば、図13Aは、複数のメモリ装置200を直列に接続するデイジーチェーンカスケード構成1300を示す。特に、装置0は、複数のデータ入力ポート(SIP0、SIP1)、複数のデータ出力ポート(SOP0、SOP1)、複数の制御入力ポート(IPE0、IPE1)、および複数の制御出力ポート(OPE0、OPE1)から成る。これらのデータおよび制御信号は、外部ソース(メモリコントローラ(図示せず)など)からメモリ装置1300に送信される。さらに、本発明によれば、第2のフラッシュメモリ装置(装置1)は、装置0と同じタイプのポートから成っていてもよい。装置1は、装置0に直列接続され得る。例えば、装置1は、データおよび制御信号を装置0から受信することができる。また、1つまたは複数の追加装置が同じ様に装置0および装置1の横に直列に接続されてもよい。カスケード構成の最後の装置(装置3など)は、所定の待ち時間の後、データおよび制御信号をメモリコントローラに戻す。各メモリ装置200(装置0、1、2、3など)は、IPE0、IPE1、OPE0、およびOPE1(すなわち制御出力ポート)のエコー(IPEQ0、IPEQ1、OPEQ0、OPEQ1)をその後の装置に出力する。図2Bで上述した回路は、信号がある装置から後ろのデイジーチェーン接続された装置にどのように渡され得るかを示す。さらに、単一クロック信号が、複数の直列接続されたメモリ装置のそれぞれに伝えられる。
【００７１】
上述したカスケード構成では、カスケード型メモリ装置1300の装置操作は、非カスケード型メモリ装置200でのものと同じである。メモリ装置1300の全待ち時間は、カスケード構成で増加し得ることを当業者であれば理解されよう。例えば、図14は、メモリ装置1300で受信され、メモリ装置1300の装置2のメモリバンクで指示された「ページ読み取り」メモリコマンド1402のきわめて簡略化されたタイミング図を示す。メモリコマンドは、メモリ装置1300で受信され、装置0および装置1を通って装置2に送信される。例えば、「ページ読み取り」コマンド1402に対応するデータストリームは、メモリ装置1300における装置0のSIP0ラインから装置0の回路を介して転送され、装置0のSOP0ラインで出力される。装置0の出力は、図14のタイミング略図の1404のSOPx_D0出力ラインに反映される。「SOPx_D0」は、装置0上のシリアル出力ポート0に対応する。同様に、データストリームは、その後、装置1上のSIPx_D1(1406)で受信され、装置1を介して送信されて、装置1の1408のSOPx_S1ラインによって出力される。次に、データストリームは、装置2の1410のSIPx_D2で受信される。この例では、メモリ装置200の回路についての説明と同じように、「ページ読み取り」コマンドが装置2のメモリバンクに向けられるため、装置2の回路は、「ページ読み取り」コマンドを受信し、装置2のメモリバンクから装置2の1412のSOPx_D2出力ラインへの要求されたデータの転送を制御する。装置2によって出力されたデータは、1414で装置3で受信され、装置3を介して転送され、メモリ装置1300から出力される。図14のタイミング略図から、カスケード構成により4つのクロックサイクルの予め定められた待ち時間がもたらされたことを当業者であれば理解されよう。
【００７２】
一方、カスケード構成によって、装置のスループットを犠牲にすることなく、実質的に無限数の装置を接続することができる。本発明の態様は、マルチチップパッケージソリューション、およびソリッドステート大容量アプリケーションの実装において有益になり得る。カスケード型装置1300における受信データストリームは、非カスケード型装置200のものと似ているが、データストリームの第1バイトの前に、1バイト装置識別子があり得る。例えば、第1バイトの「0000」の値は、装置0を示し、「0001」の値は、装置1を示し得る。装置識別子は、必ずしも1バイトに限定される必要はなく、必要に応じて増減することができることを当業者であれば理解されよう。また、装置識別子は、必ずしもデータストリームに第1バイトとして配置される必要はない。例えば、識別子のサイズは、より多くの装置に対応するようにカスケード型構成で増加させ、データストリームのアドレスフィールドにより配置されてもよい。
【００７３】
本発明による一実施形態では、メモリ装置200は、単一のモノリシック4 Gb チップを使用する。別の実施形態では、メモリ装置は、8 Gb に1対の積層チップを使用する。さらに別の実施形態では、メモリ装置1300は、16 Gbを構成するのに4チップのスタックを使用する。本発明の様々な態様によるフラッシュメモリ装置は、ソリッドステートファイルストレージなどの大きい不揮発性ストレージアプリケーション、および不揮発性を望む他の携帯用アプリケーションのための改良された解決策となり得る。実質的に無限数のリンクされた装置が、より大きい拡張性および柔軟性を備えたシステム統合に対応するように、新しいフラッシュ装置カスケード方式は、メモリ装置1300にとって有利になり得る。シリアルインターフェイスは、より高いクロックレート、より良い信号保全性、およびより低い消費電力による、追加の性能向上を提供する。また、シリアルインターフェイスは、パッケージ構成の変更無しに、無制限の拡張可能なI/O幅を提供する。さらに、I/Oの数がより少ない、本発明によるメモリ装置の片面パッドアーキテクチャ(one-side pad architecture)は、チップパッケージサイズをかなり低減する。
【００７４】
フラッシュコアアーキテクチャ実装におけるカスケード型メモリ装置の操作の一部の例が、以下の表3に示されている。表3は、ターゲット装置アドレス(TDA)、想定されるOP(操作)コード、並びに列アドレス、行/バンクアドレス、および入力データの対応する状態を列挙する。
【００７５】
【表３】
2009510656.tif 000005
【００７６】
本発明の一部の実施形態では、図13のシステム1300における各装置は、シリアル入力データにおけるターゲット装置アドレス(tda)として使用され得る一意の装置識別子を所有し得る。シリアル入力データを受信するとき、フラッシュメモリ装置は、シリアル入力データにおけるターゲット装置アドレスフィールドを構文解析し、ターゲット装置アドレスを装置の一意の装置識別番号と相関させることによって、装置がターゲット装置であるかどうかを決定することができる。
【００７７】
表4は、図13に関連して説明されたシステムを含む、本発明の実施形態による入力データストリームの好ましい入力シーケンスを示している。コマンド、アドレス、およびデータが、最上位ビットから開始して、メモリ装置1500に連続的にシフトインおよびシフトアウトされる。シリアル入力信号(SIP)は、入力ポートイネーブル(IPE)が高い間、シリアルクロック(SCLK)の立ち上がりエッジでサンプリングされる。コマンドシーケンスは、1バイトターゲット装置アドレス(「tda」)、および同義でコマンドコード(表4の「cmd」)とも呼ばれる、1バイト操作コードで始まる。最上位ビットを1バイトターゲット装置アドレスにしてシリアル入力信号を開始することによって、装置は、受信された任意の追加の入力データを処理する前にターゲット装置アドレスフィールドを構文解析することができる。メモリ装置がターゲット装置でない場合、処理の前にシリアル入力データを別の装置に転送することができ、したがって追加の処理時間およびリソースを節約することができる。
【００７８】
【表４】
2009510656.tif 000006
【００７９】
1バイトtdaは、装置にシフトインされ、その後に1バイトcmdコードが続く。最上位ビット(MSB)は、SIPで開始し、各ビットは、シリアルクロック(SCLK)の立ち上がりエッジでラッチされる。コマンドに応じて、1バイトコマンドコードの後に、列アドレスバイト、行アドレスバイト、バンクアドレスバイト、データバイト、および/またはその組合せが続くか、何も続かない場合がある。
【００８０】
上述したように、メモリ装置は、デュアルバンクメモリとすることができ、各バンクは、任意のシリアルリンクによってアクセスされ得る。メモリ装置のシリアルインターフェイスは、機能豊富な操作をサポートしながら、従来のパラレルインターフェイス方式に比べて、データスループットをかなり向上させる。例えば、プログラム操作は、(2,000+64)バイトページに200 μs で実行され、消去操作は、(128,000+4,000)バイトブロックに1.5 ms で実行され得る。オンクリップ書き込みコントローラを使用して、パルス反復を使用する場合はそれも含め、すべてのプログラムおよび消去機能や、内部検証およびデータのマージニングを自動化してもよい。書き込みの多いシステムで、リアルタイムマッピングアウトアルゴリズム(real time mapping-out algorithm)による誤り訂正コード(ECC)は、メモリ装置における100,000のプログラム/消去サイクルの拡張された信頼性を強化するために使用され得る。
【００８１】
本発明の様々な態様の有用性は、当業者には明らかであるはずである。本明細書における任意のおよびすべての例または例示的表現(例えば「など」)の使用は、特に明記しない限り、単に、本発明をより明確にするためのものにすぎず、本発明の範囲に制限を設けない。明細書における言語は、任意の非請求の要素を本発明の実施に欠かせないものとして示すものと解釈されるものではない。
【００８２】
本発明は、時として、その好ましい、および例示の実施形態で説明されている。当業者は、本開示の再点検から、添付の特許請求の範囲の範囲および意図内の他の多数の実施形態、変更、および変形が思い浮かぶ。
【図面の簡単な説明】
【００８３】
【図１Ａ】本発明の様々な態様による、並行動作を可能にするメモリ装置例を示す高レベルの図である。
【図１Ｂ】本発明の様々な態様による、並行動作を可能にするメモリ装置例を示す高レベルの図である。
【図１Ｃ】本発明の様々な態様による、並行動作を可能にするメモリ装置例を示す高レベルの図である。
【図２Ａ】本発明の態様によるメモリ装置例を示す高レベルブロック図である。
【図２Ｂ】本発明の一実施形態による図2Aに示されているシリアルデータを示す図である。
【図２Ｃ】本発明の一実施形態による図2Aに示されている入力シリアル-パラレルレジスタブロックを示す図である。
【図２Ｄ】本発明の一実施形態による図2Aに示されているパススイッチ回路を示す図である。
【図２Ｅ】本発明の一実施形態による図2Aに示されている出力パラレル-シリアルレジスタブロックを示す図である。
【図３Ａ】本発明の様々な態様によるメモリ装置によって実行されるメモリ操作についてのタイミング図である。
【図３Ｂ】本発明の様々な態様による装置における図3Aのメモリ操作を示すフローチャートである。
【図４】本発明の様々な態様によるメモリ装置によって実行されるメモリ操作についてのタイミング図である。
【図５Ａ】本発明の様々な態様によるメモリ装置によって実行されるメモリ操作についてのタイミング図である。
【図５Ｂ】本発明の様々な態様による装置における図5Aのメモリ操作を示すフローチャートである。
【図６Ａ】本発明の様々な態様によるメモリ装置によって実行されるメモリ操作についてのタイミング図である。
【図６Ｂ】本発明の様々な態様による装置における図6Aのメモリ操作を示すフローチャートである。
【図７】本発明の様々な態様によるメモリ装置によって実行されるメモリ操作についてのタイミング図である。
【図８Ａ】本発明の様々な態様によるメモリ装置において実行される並行メモリ操作についてのタイミング図である。
【図８Ｂ】本発明の様々な態様によるメモリ装置において実行される並行メモリ操作についてのタイミング図である。
【図８Ｃ】本発明の様々な態様によるメモリ装置において実行される並行メモリ操作についてのタイミング図である。
【図９】本発明の様々な態様による複数のシリアルデータリンクインターフェイスと複数のメモリバンクとの間のデータ転送を制御する方法を示すフローチャートである。
【図１０】本発明の様々な態様による複数のシリアルデータリンクインターフェイスと複数のメモリバンクとの間のデータ転送を制御する方法を示すフローチャートである。
【図１１】本発明の様々な態様による装置におけるメモリ装置のピン配列構成を示すブロック図である。
【図１２】本発明による仮想複数リンク機能の様々な態様を備えたメモリ装置において実行されるメモリ操作のタイミング図である。
【図１３】本発明の様々な態様による多数のメモリ装置のカスケード式構成を示す高レベルブロック図である。
【図１４】本発明の態様によるカスケード式構成でのメモリ装置上で実行されるメモリ操作についてのタイミング略図である。
【符号の説明】
【００８４】
102    シリアルデータリンクインターフェイス
104    シリアルデータリンクインターフェイス
106    メモリバンク
108    メモリバンク
110    制御モジュール
120    シリアルデータリンクインターフェイス
122    メモリバンク
124    メモリバンク
126    制御モジュール
132    シリアルデータリンク
134    シリアルデータリンク
136    シリアルデータリンク
138    シリアルデータリンク
140    メモリバンク
142    メモリバンク
144    メモリバンク
146    メモリバンク
150    制御モジュール
200    メモリ装置
202    メモリバンクA
204    メモリバンクB
205    インターフェイス回路
206    アドレスおよびデータパススイッチ回路
207    インターフェイス回路
208    制御インターフェイス
210    ステータス/IDレジスタ回路
212    検出アンプおよびページバッファ回路ブロック
212    回路内列デコーダ
212    回路内ページレジスタ
214    行デコーダブロック
216    制御およびプレデコーダ回路ブロック
216    ページレジスタ
218    検出アンプおよびページバッファ回路ブロック
220    行デコーダブロック
222    制御およびプレデコーダ回路ブロック
224    レジスタブロック
228    コマンドインタプリタ
230    シリアルデータリンク
230    データパス制御モジュール
232    入力シリアル-パラレルレジスタブロック
234    出力パラレル-シリアルレジスタブロック
236    シリアルデータリンク
238    出力パラレル-シリアルレジスタブロック
238    制御モジュール
240    入力シリアル-パラレルレジスタブロック
242    入力バッファ
244    出力ドライバ
246    フリップフロップ回路
248    インバータ
250    マルチプレクサ(MUX)
252    AND倫理ゲート
254    入力コントローラ
256    コマンドレジスタ
258    一時レジスタ
260    シリアルデータレジスタ
262    コマンドインタプリタ
264    スイッチコントローラ
266    スイッチ回路
268    列アドレスレジスタ
270    行/バンクアドレスレジスタ
272    データレジスタ
274    スイッチサブ回路
276    スイッチサブ回路
278    入力マルチプレクサ
280    出力マルチプレクサ
282    第1のパラレル-シリアルレジスタ
284    第2のパラレル-シリアルレジスタ
286    マルチプレクサ
288    ステータスレジスタ
290    IDレジスタ
292    出力マルチプレクサ
294    ORゲート
296    シリアル出力制御回路
302    チップ選択(CS#)信号
304    シリアルクロック(SCLK)信号
306    入力ポートイネーブル(IPEx)信号
308    シリアル入力(SIPx)ポート
310    出力ポートイネーブル(OPEx)信号
312    シリアル出力ピン
314    「ページ読み取り」メモリコマンド
316    「ステータスの読み取り」メモリコマンド
318    時刻
320    「ページ読み取り」コマンド
322    出力データ
402    「ランダムデータ読み取り」コマンド
404    データ
502    「シリアルデータ入力」コマンド
504    「ページ開始」コマンド
602    コマンドデータ
604    「ステータスの読み取り」コマンド
802    「ページ読み取り」操作
804    「ページ読み取り」操作
806    出力データ
808    出力データ
810    「ページ読み取り」コマンド
812    「ページプログラム」コマンド
814    「消去」コマンド
816    「ページプログラム」コマンド
818    読み取りコマンド
1100    標準パッケージ
1202    「ページプログラム」コマンド
1204    「ステータスの読み取り」コマンド
1208    「ページ読み取り」コマンド
1210    「ステータスの読み取り」コマンド
1212    期間
1214    「ページ読み取り」コマンド
1300    デイジーチェーンカスケード構成
1300    メモリ装置
1402    「ページ読み取り」メモリコマンド
【図１Ａ】
2009510656.tif 000007
【図１Ｂ】
2009510656.tif 000008
【図１Ｃ】
2009510656.tif 000009
【図２Ａ】
2009510656.tif 000010
【図２Ｂ】
2009510656.tif 000011
【図２Ｃ】
2009510656.tif 000012
【図２Ｄ】
2009510656.tif 000013
【図２Ｅ】
2009510656.tif 000014
【図３Ａ】
2009510656.tif 000015
【図３Ｂ】
2009510656.tif 000016
【図４】
2009510656.tif 000017
【図５Ａ】
2009510656.tif 000018
【図５Ｂ】
2009510656.tif 000019
【図６Ａ】
2009510656.tif 000020
【図６Ｂ】
2009510656.tif 000021
【図７】
2009510656.tif 000022
【図８Ａ】
2009510656.tif 000023
【図８Ｂ】
2009510656.tif 000024
【図８Ｃ】
2009510656.tif 000025
【図９】
2009510656.tif 000026
【図１０】
2009510656.tif 000027
【図１１】
2009510656.tif 000028
【図１２】
2009510656.tif 000029
【図１３】
2009510656.tif 000030
【図１４】
2009510656.tif 000031
【国際調査報告】
2009510656.tif 000032
2009510656.tif 000033
2009510656.tif 000034