JP2012512469A - プリセットオペレーションを必要とするメインメモリユニットおよび補助メモリユニットを備える半導体デバイス - Google Patents

プリセットオペレーションを必要とするメインメモリユニットおよび補助メモリユニットを備える半導体デバイス Download PDF

Info

Publication number
JP2012512469A
JP2012512469A JP2011541050A JP2011541050A JP2012512469A JP 2012512469 A JP2012512469 A JP 2012512469A JP 2011541050 A JP2011541050 A JP 2011541050A JP 2011541050 A JP2011541050 A JP 2011541050A JP 2012512469 A JP2012512469 A JP 2012512469A
Authority
JP
Japan
Prior art keywords
cells
semiconductor device
auxiliary
circuit
cell
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.)
Pending
Application number
JP2011541050A
Other languages
English (en)
Other versions
JP2012512469A5 (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.)
Mosaid Technologies Inc
Original Assignee
Conversant Intellectual Property Management Inc
Mosaid Technologies Inc
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
Priority claimed from US12/337,841 external-priority patent/US8037235B2/en
Priority claimed from US12/564,492 external-priority patent/US8068382B2/en
Application filed by Conversant Intellectual Property Management Inc, Mosaid Technologies Inc filed Critical Conversant Intellectual Property Management Inc
Publication of JP2012512469A publication Critical patent/JP2012512469A/ja
Publication of JP2012512469A5 publication Critical patent/JP2012512469A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/412Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger using field-effect transistors only
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1009Data masking during input/output
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Static Random-Access Memory (AREA)
  • Read Only Memory (AREA)

Abstract

入力データを不揮発性記憶装置デバイスに転送する半導体デバイス。半導体デバイスは、複数のデータ要素を入れた仮想ページバッファと、対応する複数のデータ要素を入れたマスクバッファと、(i)トリガーを受け取った後、マスクバッファの各データ要素を第1の論理状態に設定し、(ii)選択された仮想ページバッファのデータ要素に入力データが書き込まれるようにし、(iii)選択された仮想ページバッファのデータ要素に対応するマスクバッファのデータ要素が、異なる論理状態に設定されるようにする制御論理回路と、仮想ページバッファの各データ要素について、そこから読み出されたデータを対応するマスクバッファのデータ要素の論理状態と組み合わせてまとめることによってマスクされた出力データを生成するマスク論理回路と、マスクされた出力データを不揮発性メモリデバイスに放出する出力インターフェイスとを備える。

Description

フラッシュメモリデバイスは、コントローラとデータを交換するため周辺回路とともに1つのコアメモリブロック内に収めた複数のメモリセルと1つのページバッファとからなる。フラッシュメモリの消費者市場への導入以降、フラッシュメモリは幅広い人気を集め、広く受け入れられてきたが、コントローラとのインターフェイスは最初から非同期的であり、それ以降もほとんどの部分について変更はなくそのままであった。
近年、フラッシュメモリ技術のいくつかの部分について改良がなされたが、これらの改良は従来のフラッシュメモリデバイスと互換性を有しないインターフェイス設計を必要とする。それでも改良された技術を従来のフラッシュメモリデバイスに活かせるようにするために、ブリッジチップの使用が考えられた。ブリッジチップは、改良されたコントローラと従来のフラッシュメモリデバイスとの間の双方向インターフェイスを構成するものである。
ブリッジチップの設計はさまざまな難題を抱えており、その少なくとも一部は従来のフラッシュメモリデバイスに転送されるデータを一時的に格納しておく必要があるという点に関連していることは理解されるであろう。
さまざまな用途に半導体メモリが利用されていることも知られているであろう。最も有用で、広く採用されているタイプの半導体メモリの1つにSRAM、つまりスタティックランダムアクセスメモリがある。SRAMアレイのセルに電力を連続的に供給することができる限り、このタイプの半導体メモリでは、個別のメモリセルの読出しと書込みの両方を高速に行うことができる。
いくつかの用途において、二次アレイ内のSRAMセルは、一次アレイ内の対応するメモリセルに対するステータスインジケータ(例えば、セルの有効性)として使用される。例えば、一次アレイ内の対応するメモリセルが「有効」であるとみなされたときに、与えられたSRAMセルは、「1」にセットすることができるが、このことが行われる前に、与えられたSRAMセルは、値「0」を持つと予想され、これは対応する一次セルが無効であることを示している。二次SRAMアレイを使用することで、外部のエンティティは一次アレイにアクセスすることなく一次アレイ内のセルの有効性に関する情報に素早くアクセスすることができる。これは、個別のセルへのアクセスがSRAMにおけるアクセスほどには柔軟であるとも高速であるともいえないタイプのメモリを使用して一次アレイが製造される場合に、有用であることがある。
しかし、SRAMセルは電源投入時に予測不可能な値をとるので、与えられたSRAMセルが「1」を書き込まれる前に実際に値「0」を持つこと、または逆に、与えられたSRAMセルが「0」を書き込まれる前に実際に値「1」を持つことを保証するために、初期化(「プリセット」)動作が必要になる。この初期化動作を1つのアレイ内のすべてのSRAMセルに適用することは、結局、面倒な時間のかかるプリセットフェーズとなりうる。
プリセットフェーズは、SRAMを使用する必要のある多くの用途において必要なものであることは理解されるであろう。半導体メモリアレイのセルをプリセットするという技術分野の改善は、したがって、歓迎される。
米国特許出願公開第2008/0279003号明細書 米国特許出願第12/179,835号明細書 国際公開第WO/2008/022434号明細書 国際出願第PCT/CA2007/001428号明細書 米国仮特許出願第61/213,990号明細書 米国特許出願第12/564,492号明細書
第1の態様により、入力データを不揮発性メモリデバイスに転送するための半導体デバイスが実現される。半導体デバイスは、複数のデータ要素を入れた仮想ページバッファを備える。半導体デバイスは、複数のデータ要素を入れたマスクバッファも備え、マスクバッファのデータ要素のそれぞれは仮想ページバッファのデータ要素のうちの各1つのデータ要素に対応する。半導体デバイスは、(i)トリガーを受け取った後、マスクバッファのデータ要素のそれぞれを第1の論理状態に設定し、(ii)入力データが仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に書き込まれるようにし、(iii)仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に対応するマスクバッファのデータ要素が第1の論理状態と異なる第2の論理状態に設定されるようにするための制御論理回路も備える。半導体デバイスは、仮想ページバッファのデータ要素のそれぞれについて、そこから読み出されたデータをマスクバッファの複数のデータ要素のうちの対応する1つのデータ要素の論理状態と組み合わせてまとめることによってマスクされた出力データを供給するように構成されたマスク論理回路も備える。半導体デバイスは、マスクされた出力データを不揮発性メモリデバイスに向けて放出するように構成された出力インターフェイスも備える。
第2の態様により、少なくとも1つの不揮発性メモリデバイス内に画成される半導体デバイスを備える、メモリシステムが実現される。半導体デバイスは、複数のデータ要素を入れた仮想ページバッファを備える。半導体デバイスは、複数のデータ要素を入れたマスクバッファも備え、マスクバッファのデータ要素のそれぞれは仮想ページバッファのデータ要素のうちの各1つのデータ要素に対応する。半導体デバイスは、(i)トリガーを受け取った後、マスクバッファのデータ要素のそれぞれを第1の論理状態に設定し、(ii)入力データが仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に書き込まれるようにし、(iii)仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に対応するマスクバッファのデータ要素が第1の論理状態と異なる第2の論理状態に設定されるようにするための制御論理回路も備える。半導体デバイスは、仮想ページバッファのデータ要素のそれぞれについて、そこから読み出されたデータをマスクバッファの複数のデータ要素のうちの対応する1つのデータ要素の論理状態と組み合わせてまとめることによってマスクされた出力データを供給するように構成されたマスク論理回路も備える。半導体デバイスは、マスクされた出力データを少なくとも1つの不揮発性メモリデバイスに向けて放出するように構成された出力インターフェイスも備える。
第3の態様により、入力データを不揮発性メモリデバイスに転送するための方法が提供される。この方法は、複数のデータ要素を入れた仮想ページバッファを保持するステップと、複数のデータ要素を入れたマスクバッファを保持するステップであって、マスクバッファのデータ要素のそれぞれは仮想ページバッファのデータ要素のうちの各1つのデータ要素に対応する、ステップと、トリガーを受け取った後、マスクバッファのデータ要素のそれぞれを第1の論理状態に設定するステップと、データを仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に書き込み、仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に対応するマスクバッファのデータ要素を第1の論理状態と異なる第2の論理状態に設定するステップと、仮想ページバッファのデータ要素のそれぞれについて、そこから読み出されたデータをマスクバッファの複数のデータ要素のうちの対応する1つのデータ要素の論理状態と組み合わせてまとめることによってマスクされた出力データを供給するステップと、マスクされた出力データを不揮発性メモリデバイスに向けて放出するステップとを含む。
第4の態様により、処理されたときに、半導体デバイスを形成するために使用される命令を格納するコンピュータ可読記憶媒体が実現され、この半導体デバイスは、複数のデータ要素を入れた仮想ページバッファを保持するステップと、複数のデータ要素を入れたマスクバッファを保持するステップであって、マスクバッファのデータ要素のそれぞれが仮想ページバッファのデータ要素のうちの各1つのデータ要素に対応する、ステップと、トリガーを受け取った後、マスクバッファのデータ要素のそれぞれを第1の論理状態に設定するステップと、仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素にデータを書き込み、仮想ページバッファの複数のデータ要素のうちの選択されたデータ要素に対応するマスクバッファのデータ要素を第1の論理状態と異なる第2の論理状態に設定するステップと、仮想ページバッファのデータ要素のそれぞれについて、そこから読み出されたデータをマスクバッファの複数のデータ要素のうちの対応する1つのデータ要素の論理状態と組み合わせてまとめることによってマスクされた出力データを供給するステップと、マスクされた出力データを不揮発性メモリデバイスに向けて放出するステップとを行うように構成される。
第5の態様により、半導体メモリ回路が実現され、この半導体メモリ回路は、メモリアレイを備え、メモリアレイは、セルの各行にそれぞれ接続されている複数のワード線と、セルの各列にそれぞれ接続されている複数のビット線とを備える。半導体メモリ回路は、複数のワード線のうちのワード線のグループを選択するための少なくとも1つの行デコーダと、複数のビット線を個々に駆動し、ワード線のグループに接続されているセルを所定の論理状態に設定するための複数のドライバ回路とをさらに備える。
第6の態様により、セルの各行にそれぞれ接続されている複数のワード線を備えるメモリアレイの少なくとも一部をプリセットするための方法が提供される。この方法は、複数のワード線のうちのワード線のグループを選択するステップと、ワード線のグループに接続されているメモリセルを所定の論理状態に同時に設定するステップとを含む。
第7の態様により、セルの複数の行内のセルの各行にそれぞれ接続されている複数のワード線を備えるメモリアレイとともに使用するための回路が実現される。回路は、これらの行のうちの単一の行(これ以降、個別に選択された行)の選択を示す行信号を受信するための第1の入力と、行のグループ(これ以降、まとめて選択された行)の選択を示すプリセット制御信号を受信するための第2の入力と、行信号とプリセット制御信号とを組み合わせて、行のそれぞれについて、各ワード線選択信号を発生するための回路であって、行のそれぞれに対するワード線選択信号は、それが(i)個別に選択された行および(ii)まとめて選択された行のうちの1つの行のうちの少なくとも一方の行である場合にその行の選択を示し、それが個別に選択された行でなく、かつまとめて選択された行のうちの1つの行でない場合にその行の非選択を示す、回路と、行のそれぞれに対するワード線選択信号をワード線ドライバを介してメモリアレイに放出するための出力とを備える。
第8の態様により、半導体デバイスが実現され、この半導体デバイスは、複数のメインセルを備えるメインメモリユニットと、行と列とに配列された複数の補助セルを備える補助メモリユニットであって、補助セルのそれぞれがメインセルの各集合に対応する、補助メモリユニットと、補助セルの各行にそれぞれ接続されている複数のワード線と、補助セルの各列にそれぞれ接続されている複数のビット線と、第1のオペレーションモードでは複数のワード線のうちから個別のワード線を選択し、第2のオペレーションモードでは複数のワード線のうちのワード線のグループを選択するための行デコーダ回路と、ビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、(i)行デコーダが第2のオペレーションモードで動作しているときにビット線制御回路を制御して、補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データがメインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)行デコーダが第1のオペレーションモードで動作しているときにビット線制御回路を制御して、複数のメインセルのうちの選択されたメインセルに対応する補助セルを第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える。
第9の態様により、半導体デバイスによる実行のための方法が提供され、この方法は、補助メモリユニットの一部を形成する、行と列とに配列されている補助セルの行のグループを選択するステップと、補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、補助セルのそれぞれを第1の論理状態に設定するステップと、入力データを複数のメインセルのうちの選択されたセルに書き込むステップであって、補助セルのそれぞれはメインセルの各集合に対応する、ステップと、少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを含む。
第10の態様により、コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体が実現され、この制御論理回路は、補助メモリユニットの一部を形成する、行と列とに配列されている補助セルの行のグループを選択するステップと、補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、補助セルのそれぞれを第1の論理状態に設定するステップと、入力データが複数のメインセルのうちの選択されたセルに書き込まれるようにするステップであって、補助セルのそれぞれはメインセルの各集合に対応する、ステップと、少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成される。
第11の態様により、半導体デバイスが実現され、この半導体デバイスは、複数のメインセルを備えるメインメモリユニットと、複数のサブユニットを備える補助メモリユニットであって、それぞれのサブユニットは、行と列とに配列された複数の補助セルを備え、補助セルのそれぞれはメインセルの各集合に対応する、補助メモリユニットと、補助セルの各行にそれぞれ接続されている複数のワード線と、補助セルの各列にそれぞれ接続され、複数のサブユニットにまたがる複数のビット線と、第1のオペレーションモードでは複数のサブユニットのうちの特定のサブユニットの複数のワード線のうちから個別のワード線を選択し、第2のオペレーションモードではサブユニットのうちの少なくとも2つのサブユニットのそれぞれからの少なくとも1つのワード線を含むワード線のグループを選択するための行デコーダ回路と、ビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、(i)行デコーダが第2のオペレーションモードで動作しているときにビット線制御回路を制御して、複数のサブユニットのうちのそれぞれのサブユニット内の補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データがメインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)行デコーダが第1のオペレーションモードで動作しているときにビット線制御回路を制御して、複数のメインセルのうちの選択されたメインセルに対応する補助セルを第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える。
第12の態様により、半導体デバイスによる実行のための方法が提供され、この方法は、少なくとも2つのサブユニットのうちのそれぞれのサブユニットからの少なくとも1つの行を含む、行と列とに配列されている複数のサブユニットのうちのそれぞれのサブユニット内の補助セルの行のグループを選択するステップと、補助セルの各列にそれぞれ接続され、複数のサブユニットにまたがる複数のビット線を駆動して、補助セルのそれぞれを第1の論理状態に設定するステップと、入力データを複数のメインセルのうちの選択されたセルに書き込むステップであって、補助セルのそれぞれはメインセルの各集合に対応する、ステップと、複数のサブユニットのうちの特定の1つのサブユニットの特定の行を選択するステップであって、その特定の行は、少なくとも1つの補助セルを含み、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを含む。
第13の態様により、コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体が実現され、この制御論理回路は、少なくとも2つのサブユニットのうちのそれぞれのサブユニットからの少なくとも1つの行を含む、行と列とに配列されている複数のサブユニットのうちのそれぞれのサブユニット内の補助セルの行のグループを選択するステップと、補助セルの各列にそれぞれ接続され、複数のサブユニットにまたがる複数のビット線を駆動して、補助セルのそれぞれを第1の論理状態に設定するステップと、入力データが複数のメインセルのうちの選択されたセルに書き込まれるようにするステップであって、補助セルのそれぞれはメインセルの各集合に対応する、ステップと、複数のサブユニットのうちの特定の1つのサブユニットの特定の行を選択するステップであって、その特定の行は、少なくとも1つの補助セルを含み、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成される。
第14の態様により、半導体デバイスが実現され、この半導体デバイスは、N1個の行とM1個の列からなるアレイに配列された複数のメインセルを備えるメインメモリユニットと、N2個の行とM2個の列とに配列された複数の補助セルを備える補助メモリユニットであって、補助セルのそれぞれがZ個のメインセルの各集合に対応し、N2はN1より小さく、M2はM1/Zより大きい、補助メモリユニットと、補助セルの各行にそれぞれ接続されている複数のワード線と、補助セルの各列にそれぞれ接続されている複数のビット線と、複数のワード線のうちから個別の1つのワード線を選択するための行デコーダ回路と、複数のビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、(i)ビット線制御回路を制御して、補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データがメインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)ビット線制御回路を制御して、複数のメインセルのうちの選択されたメインセルに対応する補助セルを第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える。
第15の態様により、半導体デバイスによる実行のための方法が提供され、この方法は、メインメモリユニットの一部を形成する複数のメインセルのうちの選択されたメインセルに入力データを書き込むステップであって、メインメモリユニットのメインセルはN1個の行とM1個の列とに配列される、ステップと、前記書込みに先立って、補助メモリユニットの一部を形成する補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、複数の補助セルのうちのそれぞれの補助セルを第1の状態に設定するステップであって、補助セルのそれぞれはZ個のメインセルの各集合に対応し、補助メモリユニットの補助セルはN2個の行とM2個の列に配列され、N2はN1より小さく、M2はM1/Zより大きい、ステップと、少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを含む。
第16の態様により、コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体が実現され、この制御論理回路は、メインメモリユニットの一部を形成する複数のメインセルのうちの選択されたメインセルに入力データが書き込まれるようにするステップであって、メインメモリユニットのメインセルはN1個の行とM1個の列とに配列される、ステップと、入力データを複数のメインセルのうちの選択されたメインセルに書き込むのに先立って、補助メモリユニットの一部を形成する補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、複数の補助セルのうちのそれぞれの補助セルを第1の状態に設定するステップであって、補助セルのそれぞれはZ個のメインセルの各集合に対応し、補助メモリユニットの補助セルはN2個の行とM2個の列に配列され、N2はN1より小さく、M2はM1/Zより大きい、ステップと、少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が選択されたセルのうちの少なくとも1つのセルを含む、ステップと、ビット線を駆動して、少なくとも1つの補助セルを第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成される。
第17の態様により、半導体デバイスが実現され、この半導体デバイスは、複数のシングルポートメモリセルと、行と列とに配列された複数のデュアルポートメモリであって、デュアルポートメモリセルのそれぞれがシングルポートメモリセルの各集合に対応する、複数のデュアルポートメモリセルと、第1のワード線および第2のワード線であって、デュアルポートメモリセルのそれぞれの行が第1のワード線のうちの対応するワード線および第2のワード線のうちの対応するワード線に接続されるようにデュアルポートメモリセルの行に接続されている第1のワード線および第2のワード線と、第1のビット線および第2のビット線であって、デュアルポートメモリセルのそれぞれの列が第1のビット線の対応する集合および第2のビット線の対応する集合に接続されるようにデュアルポートメモリセルの列に接続されている第1のビット線および第2のビット線と、第1のワード線のうちの少なくとも1つのワード線および第2のワード線のうちの少なくとも1つのワード線をまとめて選択するための行デコーダ回路と、第1のビット線を駆動して、選択されている第1のワード線に接続されているデュアルポートメモリセルの書込みをイネーブルし、第2のビット線を駆動して、選択されている第2のワード線に接続されているデュアルポートメモリセルの書込みをイネーブルするためのビット線制御回路と、(i)ビット線制御回路を制御して、デュアルポートメモリセルのそれぞれを第1の論理状態に設定し、(ii)入力データがシングルポートメモリセルのうちの選択されたメモリセルに書き込まれるようにし、(iii)ビット線制御回路を制御して、複数のシングルポートメモリセルのうちの選択されたメモリセルに対応するデュアルポートメモリセルを第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える。
第18の態様により、半導体デバイスによる実行のための方法が提供され、この方法は、複数のデュアルポートメモリセルのそれぞれを第1の論理状態に設定するステップと、入力データを複数のシングルポートメモリセルのうちの選択されたメモリセルに書き込むステップであって、デュアルポートメモリセルのそれぞれはシングルポートメモリセルの各集合に対応する、ステップと、複数のシングルポートメモリセルのうちの選択されたメモリセルに対応するデュアルポートメモリセルを第1の論理状態と異なる第2の論理状態に設定するステップとを含む。
第19の態様により、コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体が実現され、この制御論理回路は、複数のデュアルポートメモリセルのそれぞれを第1の論理状態に設定するステップと、入力データが複数のシングルポートメモリセルのうちの選択されたメモリセルに書き込まれるようにするステップであって、デュアルポートメモリセルのそれぞれはシングルポートメモリセルの各集合に対応する、ステップと、複数のシングルポートメモリセルのうちの選択されたメモリセルに対応するデュアルポートメモリセルを第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成される。
本発明のこれらおよび他の態様ならびに特徴は、付属の図面と併せて本発明の特定の実施形態の以下の説明を検討した後、当業者に明らかになるであろう。
付属の図面について説明する。
メモリコントローラと複数の不揮発性メモリデバイスとの間に配設されたブリッジデバイスを含む、可能な一実施形態によるメモリシステムのブロック図である。 カスタマイズコマンド(customized command)をメモリコントローラから揮発性メモリデバイス用のジェネリックコマンド(generic command)に変換する、ブリッジデバイスの機能を図解する概念図である。 複数のマネージドメモリモジュール(managed memory module)を含む、可能な一実施形態によるブリッジデバイスのブロック図である。 マスク論理ブロックを含む、可能な一実施形態による複数のマネージドメモリモジュールのうちの1つのマネージドメモリモジュールのブロック図である。 可能な他の実施形態による複数のマネージドメモリモジュールのうちの1つのマネージドメモリモジュールのブロック図である。 可能な一実施形態によるマスク論理ブロックのブロック図である。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 データを複数の不揮発性メモリデバイスのうちの特定の1つの不揮発性メモリデバイスに書き込む例示的なコマンドのさまざまな処理段階全体を通してさまざまなメモリ構造の部分的内容を示すブロック図であり、そのようなコマンドはメモリコントローラによって発行されている。 仮想ページバッファおよびマスクバッファの一部を構成するために使用されうるメモリセルの可能な内部構造を示すトランジスタレベルのブロック図である。 本発明の非限定的な一実施形態による、少なくとも1つの行デコーダを備える半導体メモリ回路のブロック図である。 本発明のさまざまな特定の非限定的な実施形態による、少なくとも1つの行デコーダをさらに詳しく示す、図12の半導体メモリ回路のブロック図である。 本発明のさまざまな特定の非限定的な実施形態による、少なくとも1つの行デコーダをさらに詳しく示す、図12の半導体メモリ回路のブロック図である。 本発明のさまざまな特定の非限定的な実施形態による、少なくとも1つの行デコーダをさらに詳しく示す、図12の半導体メモリ回路のブロック図である。 本発明のさまざまな特定の非限定的な実施形態による、少なくとも1つの行デコーダをさらに詳しく示す、図12の半導体メモリ回路のブロック図である。 システムに組み込まれている図12の半導体メモリ回路のブロック図である。 本発明の特定の非限定的な一実施形態による、メインメモリユニットおよび補助メモリユニットを備える半導体デバイスのブロック図である。 シングルポートSRAMメモリセルの回路図である。 本発明の他の特定の非限定的な実施形態による、メインメモリユニットおよび補助メモリユニットをそれぞれ備える半導体デバイスのブロック図である。 本発明の他の特定の非限定的な実施形態による、メインメモリユニットおよび補助メモリユニットをそれぞれ備える半導体デバイスのブロック図である。 本発明の他の特定の非限定的な実施形態による、メインメモリユニットおよび補助メモリユニットをそれぞれ備える半導体デバイスのブロック図である。 本発明の他の特定の非限定的な実施形態による、メインメモリユニットおよび補助メモリユニットをそれぞれ備える半導体デバイスのブロック図である。 システムに組み込まれている図15の半導体デバイスのブロック図である。 システムに組み込まれている図17の半導体デバイスのブロック図である。 システムに組み込まれている図18の半導体デバイスのブロック図である。 システムに組み込まれている図19の半導体デバイスのブロック図である。 システムに組み込まれている図20の半導体デバイスのブロック図である。
説明および図面は、本発明のいくつかの実施形態を例示することのみを目的としており、理解の一助となるものであることは明確に理解されるであろう。これらは、本発明の制限範囲を定めるものとであることを意図していない。
図1Aを参照すると、そこには、本発明の非限定的な一実施形態によるメモリシステム10が示されている。メモリシステム10は、1つのメモリコントローラ12、複数の不揮発性メモリデバイス141〜144、および半導体デバイスを備える。特定の例において、半導体デバイスは、メモリコントローラ12と不揮発性メモリデバイス141〜144との間に配設されているブリッジデバイス16である。図1Aには、4つの不揮発性メモリデバイス141〜144が示されているが、これは、例示することのみを目的としており、メモリシステム10は、特定の数の不揮発性メモリデバイスに限定されないことは理解されるであろう。実際、いくつかの実施形態では単一の不揮発性メモリデバイスだけが存在することすらありうる。
不揮発性メモリデバイス141〜144
いくつかの場合において、不揮発性メモリデバイス141〜144は、今日多数のサプライヤーが市場に出しているようないつでも入手可能なNANDフラッシュデバイスとすることができる。例えば、不揮発性メモリデバイス141〜144の非限定的な2、3の例として、NANDフラッシュ、NORフラッシュ、NROMなどを挙げることができる。他の場合には、不揮発性メモリデバイス141〜144の一部または全部が、市販されていない非標準的なデバイスであってもよい。揮発性メモリデバイス141〜144のすべてが同じタイプまたは同じメーカー製である必要がないことも理解されるであろう。
揮発性メモリデバイス141〜144のそれぞれは、デバイス制御論理ブロック18、メモリコア20、およびデバイスページバッファ22を備える。メモリコア20は、デバイス制御論理ブロック18の制御下で読出しおよび書込みを行えるデータ要素24の配列構造物を含む。デバイス制御論理ブロック18は、外部エンティティからジェネリックコマンドおよび「書込みデータ」を受け取り、さらには、外部エンティティに「読出しデータ」を供給する。本明細書で使用されているように、「論理ブロック」(例えば、「デバイス制御論理ブロック18」という表現の場合のような)は、所望の論理機能を実行するための回路および/またはソフトウェアを備える。しかし、図中、「ブロック」という単語は、図面をわかりにくくしないために省かれている。
非限定的な一実施形態において、メモリコア20内のデータ要素24は、複数の「プレーン」として編成され、それぞれのプレーンは複数の「ブロック」を含み、それぞれのブロックは複数の「ページ」を含み、それぞれのページは複数の「ワード」を含むものとすることができる。例えば、例示されている実施形態では、メモリコア20は2(=21)つのプレーン(AおよびB)を有し、それぞれのプレーンは1ブロックにつき32(=25)ページの32,768(=215)個のブロックを含み、それぞれのページは2,048(=211)個の8ビットワードを含み、1つの不揮発性メモリデバイスでは4ギガバイト(=232個の8ビットワード)の記憶容量となる。誤り訂正および他の目的のために、付加的なワードを加えることができ、いくつかのデバイスにおいて、合計は1ページにつき、1プレーン当たり2,112ワードとなりうる。しかし、単一のプレーンのみが使用される構成を含む、他の次元性および構成も使用できることは理解されるであろう。
デバイスページバッファ22は、データ要素の配列構造物を備える。デバイスページバッファ22は、外部エンティティから受け取った1ページ分のデータを、メモリコア20内の指定されたページ内に書き込む前に一時的に格納するために、あるいは、メモリコア20から抽出した1ページ分のデータを、データを読み出すジェネリックコマンドの最終処理段階において外部エンティティに戻す前に一時的に格納するために使用される。したがって、本発明の例では、デバイスページバッファ22は、2つのプレーン(AおよびB)のそれぞれに2,112個のワードを保持する。他の実施形態では、デバイスページバッファ22は、異なるサイズを有することもでき、複数のページ分のデータを保持することができる。
不揮発性メモリデバイス141〜144のうちの1つまたは複数の不揮発性メモリデバイスによって処理されうるジェネリックコマンドは、第1のコマンドサイクルから始まるジェネリックコマンド構造を有する。実際のコマンドそれ自体により、可能なものとして、アドレスサイクル、データサイクル、および第2のコマンドサイクルがすべてである。第1のコマンドサイクルによって伝送されるビットのさまざまな組み合わせによって符号化されうる可能なジェネリックコマンド、さらには、そのようなジェネリックコマンドの可能な定義の選択を以下のTable I(表1)にまとめた。
Figure 2012512469
さまざまなメーカーが、特定のジェネリックコマンドに関係する第1の(および、該当する場合には、第2の)コマンドサイクルに対する異なる特定の値を有している場合があることは理解されるであろう。さまざまなメーカーが、上記のジェネリックコマンドの異なるバージョンをサポートしている可能性があり、ジェネリックコマンドの総数の増減もありうることは理解されるであろう。しかし、ここで注目している不揮発性メモリデバイスに共通の一態様は、PAGE PROGRAMジェネリックコマンドに関するものであり、これは、そのすべての同等のバージョンにおいて、少なくとも初期コマンドサイクル(PAGE PROGRAMジェネリックコマンドの開始の合図を送る)、1つまたは複数のアドレスサイクル(指定されたページ、さらにはメモリコア20に書き込まれるデータの-指定されたページ内の-開始点を識別する)、1つまたは複数のデータサイクル(メモリコア20に書き込む実際のデータの入力を可能にする)、および確認コマンドサイクル(デバイスページバッファ22の内容をメモリコア20に転送する動作をトリガーする)を含むと仮定される。
メモリコントローラ12
メモリコントローラ12は、カスタマイズコマンド構造に従うカスタマイズコマンドを使用することによって、特に適合された不揮発性メモリデバイス上でメモリオペレーション(例えば、読出しおよび書込み)を実行するように設計されたカスタマイズメモリコントローラとすることができる。
例えば、特に適合された揮発性メモリデバイスは、例えば、参照により本明細書に組み込まれている、2008年11月13日に出願された米国特許出願公開第2008/0279003号として公開されている米国特許出願第12/179,835号、名称「Multiple Independent Serial Link Memory」において図示され、説明されているように、直列に相互接続されて連鎖構造をなすクロック同期NANDフラッシュデバイスとすることができる。
例えば、メモリコントローラ12は、参照により本明細書に組み込まれている、国際公開第WO/2008/022434号の下で2008年2月28日に公開された国際出願第PCT/CA2007/001428号の図6Aに示されているように、フラッシュコントローラの形態をとりうる。
メモリコントローラ12は、制御線26の集合および下流データ線28の集合にそった信号の挙動を調節することによって、さまざまなカスタマイズコマンド(相互接続されて連鎖構造をなす個別のクロック同期NANDフラッシュデバイスを対象とする)を発行する。上流データ線の集合を備えることも考えられるが、データ書込みオペレーションに重点を置いているため、ここではこの機能について説明しない。
メモリコントローラ12によって発行されるカスタマイズコマンドは、特にクロック同期NANDフラッシュデバイスが連鎖構造をなすように接続されている場合、Table I(表1)に記載されているのと幾分異なる形で構造化されうる。メモリコントローラ12によって発行されるカスタマイズコマンドが従うカスタマイズコマンド構造の例を以下のTable II(表2)に示す。
Figure 2012512469
上のTable II(表2)では、「デバイスアドレス」フィールドは、NANDフラッシュデバイスの連鎖構造内の指定済みNANDフラッシュデバイスを指定するために使用されるが、「OPコード」フィールドは、カスタマイズコマンドを一意に示すOPコードである。残りのフィールドは、オプションであり、カスタマイズコマンドに応じて、RA(行アドレスフィールド)、CA(列アドレスフィールド)、およびDATA(フィールド)を含みうる。上述の国際出願第PCT/CA2007/001428号の表1、表2、および表3は、非限定的例示的な実施形態において、カスタマイズコマンド構造についての可能性をさらに詳しく示している。
特定のデバイスのメモリ内のデータの特定のページの一部をプログラムするためのコマンドの特定の場合において、一対のカスタマイズコマンドが発行されうる。第1のコマンドは、BURST DATA LOAD STARTカスタマイズコマンドであり、これは、特定のデバイスを識別する「デバイスアドレス」フィールドから始まり、その後にBURST DATA LOAD STARTコマンドを識別する「OPコード」フィールドが続き、その後に特定のページ内の開始アドレスを指定するCAフィールドが続く。この後に、開始アドレスから始まる、特定のページに(特定のデバイス上のページバッファを介して)書き込まれるデータが続く。
特定のページの一部をプログラムするという状況において発行される次のカスタマイズコマンドは、PAGE PROGRAMカスタマイズコマンドであり、これは、特定のデバイスを識別する「デバイスアドレス」フィールドとPAGE PROGRAMカスタマイズコマンドを識別する「OPコード」フィールドから始まる。この後に、特定のデバイスのページバッファに書き込まれたデータでプログラムされるページアドレスを指定するRAフィールドが続く。
さらに他のカスタマイズコマンドのいくつかのインスタンス、つまり、BURST DATA LOADカスタマイズコマンドが、BURST DATA LOAD STARTカスタマイズコマンドを発行してからPAGE PROGRAMカスタマイズコマンドを発行するまでの間に次々に出現しうることが理解されるであろう。BURST DATA LOADカスタマイズコマンドとBURST DATA LOAD STARTカスタマイズコマンドとの違いは、後者は、特定のデバイスのページバッファの初期化を行わせるが、前者はそうでないという点である。これにより、特定のバッファの非連結部分への書込みを、それぞれのセクションに対するページ全体を書き込むことなく行える。
上で説明されているメモリコントローラ12は、互いに通信し、またメモリコントローラ12と通信するように特に適合されている不揮発性メモリデバイスの直列相互接続で機能するように設計されているが、メモリコントローラ12は、しかしながら、図1Aに示されている不揮発性メモリデバイス141〜144などの従来の不揮発性メモリデバイスの配列構造物で機能させることが可能である。特に、これは、メモリコントローラ12と不揮発性メモリデバイス141〜144との間に配設されている、ブリッジデバイス16を使って達成されうる。
ブリッジデバイス16
ブリッジデバイス16は、コントローラインターフェイス制御論理ブロック29、デバイスインターフェイス制御論理ブロック30、および不揮発性メモリデバイス141〜144のそれぞれについて、対応するマネージドメモリモジュール321〜324を備える。図1Bを参照すると、ブリッジデバイス16の主機能は、メモリコントローラ12から受け取ったカスタマイズコマンドを揮発性メモリデバイス141-144を送り先とするジェネリックコマンドに変換することである。
デバイスインターフェイス制御論理ブロック30は、不揮発性メモリデバイス141-144のそれぞれのデバイス制御論理ブロック18が接続されている前述の「外部エンティティ」を表す。より具体的には、デバイスインターフェイス制御論理ブロック30は、制御線341〜344の各集合および下流データ線361〜364の各集合によって不揮発性メモリデバイス141〜144のそれぞれのデバイス制御論理ブロック18に接続される。制御線341〜344の複数の集合および下流データ線361〜364の複数の集合は、コマンドを伝送し、データを不揮発性メモリ141〜144に書き込むためにそれぞれ使用される。読出しデータを不揮発性メモリデバイス141〜144から伝送するための上流データ線の集合も備えられるが、この機能は、データ書込みオペレーションに重点を置いているため、ここでは説明しない。
コントローラインターフェイス制御論理ブロック29は、制御線26の集合および下流データ線28の集合によってメモリコントローラ12に接続される。メモリコントローラ12は、その観点から、メモリコントローラ12と互換性のあるターゲットの不揮発性メモリデバイス(例えば、クロック同期化NANDフラッシュデバイス)を送り先とするカスタマイズコマンドを発行することができるが、実際には、これらのカスタマイズコマンドは、制御線26の集合および下流データ線28の集合にそって置かれているブリッジデバイス16のコントローラインターフェイス制御論理ブロック29によって横取りされることに留意されたい。
次に図2を参照すると、これは、ブリッジデバイス16の内部構造に関するさらなる詳細を示している。以下の説明において、ブリッジデバイス16のさまざまな成分のオペレーションを制御し、および/または円滑にするためにこれらおよび図で説明されているものに加えて信号を伝送する信号線を備えることができることは理解されるであろうが、しかし、その役割は重要でなく、その実装は当業者であれば容易に理解できるため、簡単にするために省かれていることがある。
コントローラインターフェイス制御論理ブロック29は、制御線26の集合および下流データ線28の集合にそってメモリコントローラ12から受け取ったカスタマイズコマンドに基づいてマネージドメモリモジュール321〜324のうちの個別のマネージドメモリモジュールに供給されるさまざまなアドレス、データ、および読出し/書込み信号を導出する。特に、コントローラインターフェイス制御論理ブロック29は、マネージドメモリモジュール321に、アドレス線2041の集合によって伝送されるアドレス信号、入力データ線2021の集合によって伝送される入力データ信号、および各読出し/書込み線2061によって伝送される読出し/書込み信号を供給する。同様に、コントローラインターフェイス制御論理ブロック29は、マネージドメモリモジュール322に、アドレス線2042の集合によって伝送されるアドレス信号、入力データ線2022の集合によって伝送される入力データ信号、および各読出し/書込み線2062によって伝送される読出し/書込み信号を供給する。同様に、コントローラインターフェイス制御論理ブロック29は、マネージドメモリモジュール323に、アドレス線2043の集合によって伝送されるアドレス信号、入力データ線2023の集合によって伝送される入力データ信号、および各読出し/書込み線2063によって伝送される読出し/書込み信号を供給する。最後に、コントローラインターフェイス制御論理ブロック29は、マネージドメモリモジュール324に、アドレス線2044の集合によって伝送されるアドレス信号、入力データ線2024の集合によって伝送される入力データ信号、および各読出し/書込み線2064によって伝送される読出し/書込み信号を供給する。
マネージドメモリモジュール321〜324のそれぞれは、デバイスインターフェイス制御論理ブロック30に、出力データ線2081〜2084の各集合によって伝送される各出力データ信号SO1〜SO4を供給する。それに加えて、コントローラインターフェイス制御論理ブロック29は、デバイスインターフェイス制御論理ブロック30にリンク218によって伝送される制御信号Scを供給する。メモリコントローラ12から受け取ったカスタマイズコマンドに基づいてコントローラインターフェイス制御論理ブロック29によって形成される制御信号Scは、デバイスインターフェイス制御論理ブロック30に対して、マネージドメモリモジュール321〜324のうちの特定の1つのマネージドモジュールから受け取った出力データ信号を不揮発性メモリデバイス14、144のうちの対応する1つの不揮発性メモリデバイスに向けて転送する時期であることを指示する。
それに加えて、デバイスインターフェイス制御論理ブロック30は、マネージドメモリモジュール321〜324のそれぞれに、複数のリセット線2101〜2104のうちの各1つのリセット線にそった各第1のリセット信号を供給する。非限定的な一実施形態では、デバイスインターフェイス制御論理ブロック30は、PAGE PROGRAMジェネリックコマンドの確認コマンドサイクルがデバイスインターフェイス制御論理ブロック30によって対応する不揮発性メモリデバイスに送られた後にリセット線2101〜2104のうちの与えられた1つのリセット線上で第1のリセット信号をアサートするように構成される。(デバイスインターフェイス制御論理ブロック30によるPAGE PROGRAMジェネリックコマンドの送信をもたらすイベントの可能なシーケンスについては、後でさらに詳しく説明する。)
電力監視回路212は、マネージドメモリモジュール321〜324のそれぞれに、複数のリセット線2141〜2144のうちの各1つのリセット線によって伝送される各第2のリセット信号を供給する。いくつかの実施形態では、リセット線2141〜2144によって伝送されるさまざまな第2のリセット信号は、実際には、同じ電気信号であってもよい。電力監視ユニット212は、ブリッジデバイス16への電力が確立された(または再確立された)ことを検出すると必ずリセット線2141〜2144によって伝送される第2のリセット信号をアサートするように構成される。一代替的実施形態では、電力監視回路212をコントローラインターフェイス制御論理ブロック29に組み込むことができ、これにより、いくつかの受信信号(例えば、非限定的ないくつかの可能なものを挙げると、リセット、チップイネーブル、および/またはチップセレクトなど)に存在する論理値の組み合わせの検出結果に基づいて第2のリセット信号のアサートが実行され、この組み合わせは、ブリッジデバイス16への電力が確立されている(または再確立されている)という一意的な事象において出現する。
次に、図3Aを参照すると、そこには、マネージドメモリモジュール321〜324のうちの特定の1つのマネージドメモリモジュール、この場合にはマネージドメモリモジュール321の構造に関する詳細が示されている。他のマネージドメモリモジュール322、323、324にも同様のことが言えることは理解されるであろう。図示されているように、マネージドメモリモジュール321は、仮想ページバッファ300およびマスクバッファ310を備える。
特定の非限定的な一実施形態において、仮想ページバッファ300およびマスクバッファ310は、スタティックランダムアクセスメモリ(SRAM)から構成されるが、これは、本発明にとって必要なことであるわけではない。いくつかの非限定的な実施形態で使用されうる好適なSRAMセル構造は、図11に示されているタイプのデュアルポート構造である。他のメモリ技術は、限定はしないが、ダイナミックランダムアクセスメモリ(DRAM)を含む、仮想ページバッファ300およびマスクバッファ310のいずれかもしくは両方に使用することができる。
仮想ページバッファ300は、対応する不揮発性メモリデバイス、この場合には不揮発性メモリデバイス141のデバイスページバッファ22内のデータ要素をミラーリングするデータ要素(例えば、SRAMセル)の配列構造物を備える。仮想ページバッファ300は、デバイスページバッファ22に最終的には転送されるデータを不揮発性メモリデバイス141内に一時的に格納する。仮想ページバッファ300は、アドレス線2041の集合、入力データ線2021の集合、および読出し/書込み線2061にそってコントローラインターフェイス制御論理ブロック29から受け取ったアドレス、データ、および読出し/書込み信号に基づき時間の経過とともに埋められてゆく。
特に、書込みオペレーションのときに(つまり、読出し/書込み線2061によって伝送される読出し/書込み信号が「WRITE MODE」を符号化するとき)、アドレス信号線2041の集合によって伝送されるアドレス信号は、入力データ線2021の集合によって伝送される入力データ信号が書き込まれる仮想ページバッファ300内のロケーションを指定する。その一方で、仮想ページバッファ300からのデータ転送は、読出しオペレーション時に実行される。特に、読出し/書込み線2061によって伝送される読出し/書込み信号が「READ MODE」を符号化するときに、アドレス信号線2041の集合によって伝送されるアドレス信号は、内容が抽出される仮想ページバッファ300内のアドレスを指定する。これらの内容は、データ線302の集合上に出される。
本発明の非限定的な実施形態では、2つのプレーン(AおよびB)が備えられ、したがって、仮想ページバッファ300は、概念的に、プレーンAに関連付けられているセクションとプレーンBに関連付けられているセクションの2つのセクションに分割されうることは理解されるであろう。本発明の非限定的な例では、それぞれのプレーン内のデータ要素は、8ビット(1バイト)長である。仮想ページバッファ300に書き込まれる特定のデータに関連付けられているプレーンは、特定のデータのアドレス内で所定のビット位置を占有する1つのビットで符号化されうる。同様に、仮想ページバッファ300から抽出される特定のデータに関連付けられているプレーンは、特定のデータのアドレス内で所定のビット位置を占有する1つのビットで符号化される。
選択されたプレーンに関連付けられているデータが出力データ線2081の集合にそってデバイスインターフェイス制御論理ブロック30に受け渡されるようにするために、セレクタ320が備えられている。この場合、8ビットワードと2つのプレーンが使用されており、320は、16データビット幅の入力324、8データビット幅の出力326、および1ビットの制御入力322を有する。制御入力322は、入力324において16ビット信号の8つのビットの第1のグループまたは8つのビットの第2のグループのいずれかの選択を出力326で行えるように備えられている。制御入力322は、アドレス線2041の1つによって伝送される信号、つまり、前述の所定のビットを占有するビットを符号化した信号を供給される。セレクタ320の出力326は、データ線328の集合にそってマスク論理ブロック340の第1の入力342に接続される。
マスク論理ブロック340の第2の入力344は、マスクバッファ310の出力につながるもので、これについて次に説明する。より具体的には、マスクバッファ310は、仮想ページバッファ300内のデータ要素に対応するデータ要素(例えば、SRAMセル)の配列構造物を備える。したがって、マスクバッファ310内のそれぞれのデータ要素は、仮想ページバッファ300内に、対応するデータ要素を有する。しかし、マスクバッファ310内のデータ要素は、仮想ページバッファ300内の、対応するデータ要素と同じ値を符号化する必要はない。例示されている実施形態では、仮想ページバッファ300内のデータ要素は、それぞれ8ビット長であるが、マスクバッファ310内のデータ要素は、それぞれ1ビット長にすぎない。もちろん、当業者には明らかなように、仮想ページバッファ300内のデータ要素のサイズ(ビット数)とマスクバッファ310内のデータ要素のサイズ(ビット数)との間の、限定はしないが1:1、4:1、16:1などの他の比も可能である。
第1のリセット信号(リセット線2101にそって受信される)と第2のリセット信号(リセット線2141にそって受信される)は、出力がマスクバッファ制御論理ブロック348に供給される2入力論理ORモジュール346によって組み合わされる。論理ORモジュール346の出力は、マスクバッファ310をクリアするためのトリガーとして働く。正確には、マスクバッファ310をクリアする動作は、ブリッジデバイス16への電力が確定されている(または再確定されている)場合に、またはPAGE PROGRAMジェネリックコマンドの確認コマンドサイクルがデバイスインターフェイス制御論理ブロック30によって不揮発性メモリデバイス141に送られた場合にトリガーされる。NANDフラッシュメモリの場合、論理0のみが不揮発性メモリデバイス141〜144のメモリセル内にプログラムされうるが、論理1は、「プログラム抑制」を指示する。このような状況では、マスクバッファ制御論理ブロック348は、マスクバッファ310内のすべてのデータ要素を論理1に強制的に設定することによってマスクバッファ310をクリアする。
本発明の一実施形態によれば、マスクバッファ310がクリアされ、そのデータ要素のすべてが与えられた論理状態(この場合には、論理1)に設定された後、マスクバッファ310内の与えられたデータ要素は、仮想ページバッファ300内の対応するデータ要素が書き込まれている(または書き込まれた)ときに反対の論理状態(この場合には、論理0)で符号化される。したがって、書込みオペレーションの実行中(またはそのすぐ後に)(つまり、読出し/書込み線2061によって伝送される読出し/書込み信号が「WRITE MODE」を符号化するとき)、マスクバッファ制御論理ブロック348は、アドレスがアドレス線2041の集合によって伝送されるアドレス信号によって符号化されるマスクバッファ310内のデータ要素に論理0を書き込ませる。
マスクバッファ310からのデータ転送は、上述の仮想ページバッファ300からのデータ転送と並行して、読出しオペレーションにおいて実行される。特に、読出し/書込み線2061によって伝送される読出し/書込み信号が「READ MODE」を符号化するときに、アドレス信号線2041の集合で、内容が抽出されるマスクバッファ310内のロケーションを指定する。そのアドレスの内容(論理0または論理1のいずれかとなることに留意されたい)は、マスクバッファ310の出力を介してマスクデータ線312上に出される。マスクデータ線312は、マスク論理ブロック340の第2の入力344につながるが、これについては図4を参照しつつさらに詳しく説明する。
特に、マスク論理ブロック340は、マスクデータ線312によって伝送されるマスク信号SMおよびデータ線328の集合によって伝送されるデータ信号SDを受信する。マスク論理ブロック340は、2入力論理ORモジュール402の1つのバンクを備え、論理ORモジュール402の個数は、データ信号SDの幅(ビット数)に依存する。この場合、8つの論理ORモジュール402があるが、これが本発明の制限ではないことは理解されるであろう。また、論理ORモジュール402を参照していても、これは、マスク論理ブロック340の機能を単に示しているだけである。このような機能を実装するさまざまな方法が当業者に明らかになることも理解されるであろう。
論理ORモジュール402の出力は、出力データ線2081の集合にそってデバイスインターフェイス制御論理ブロック30に供給される出力データ信号SO1である。出力データ信号SO1は、マスク信号SMが論理1に設定されたときにすべて論理1に設定されるが、これは、マスク信号SMが論理0に設定されたときにデータ信号SDを反映することは理解されるであろう。もちろん、マスク信号SMは、アドレス線2041の集合によって伝送されるアドレス信号によって符号化されたメモリロケーションにおける仮想ページバッファ310内のデータ要素が最後にマスクバッファ310がクリアされた以降に書き込まれた場合にのみ、論理0に設定されることに留意されたい。
次に、オペレーションの例を説明のためにのみ示す。この例では、ブリッジデバイス16およびマネージドメモリモジュール321のオペレーションは、AからEでからの段階の時系列にそって続く。したがって、図5から10を参照すると、それぞれの図は、これらの段階のうちのさまざまな段階においてデバイスページバッファ22、仮想ページバッファ300、マスクバッファ310、および与えられたデバイスページ502の一部の可能な内容を、例としてのみ示している。例として、デバイス502は、不揮発性メモリデバイス141のメモリコア20内のブロック#123におけるページ#456と考えることができる。また、デバイスページバッファ22、仮想ページバッファ300、マスクバッファ310、およびデバイスページ502の寸法は、図解しやすくなるように選択されているが、決して制限するものではない。
段階A
ブリッジデバイス16への電力が確定されている(または再確定されている)が、ただし、このシナリオは、電力監視ユニット212によってまだ検出されていないと仮定しよう。したがって、電力監視ユニット212はリセット線2141上で第2のリセット信号をまだ発行していない。図5は、この時点での仮想ページバッファ300およびマスクバッファ310の内容を示している。仮想ページバッファ300およびマスクバッファ310内の個別のデータ要素の状態は、知られていない(「u/k」と表されている)ことに留意されたい。これは、SRAMセルの基本構造に起因するものであり、したがって、電源投入時の(予測不可能な)過渡的ノード電圧変動にある程度依存するので、電源投入後に与えられたメモリセルによって取得される論理状態(0または1)はランダムになる。図5は、デバイスページバッファ22の内容も示しており、そのデータ要素は、現在時点において知られている場合も知られていない場合もある1と0の特定の分布を有するものとすることができる。それに加えて、図5は、現在時点においてユーザーもしくはシステムに知られているか、またはユーザーもしくはシステムが頼ると思われる、デバイスページ502の内容を示している。
段階B
電力監視ユニット212は、リセット線2141上で第2のリセット信号を発行する。第2の信号は、リセット線2142、2143、および2144上でも発行されうるが、これは、本発明の例の目的には重要なことではない。第2のリセット信号は、論理ORモジュール346を経由してマスクバッファ制御論理ブロック348に到達する。それに応答して、マスクバッファ制御論理ブロック348は、マスクバッファ310をクリアし、その結果、上述のように、マスクバッファ310内のすべてのデータ要素が論理1に設定される。図6は、マスクバッファ310をクリアした直後の仮想ページバッファ300、マスクバッファ310、デバイスページバッファ22、およびデバイスページ502の内容を示している。仮想ページバッファ300、デバイスページバッファ22、およびデバイスページ502の内容は、図5の状況から変化していないことに留意されたい。
段階C
次に、メモリコントローラ12は、以下の情報を含む、第1のカスタマイズコマンドを発行すると仮定しよう。
デバイスアドレス=141
OPコード=BURST DATA LOAD START
RA/CA=ブロック#123、ページ#456、開始ワード555Fh
DATA=00101101、10101001
例示することを目的として、デバイスアドレスは不揮発性メモリデバイス141を識別するために選択されているが、ブロックおよびページの値は、図5および6を参照しつつ上で説明されているのと全く同じデバイスページ502を識別するために選択されていることに留意されたい。第1のカスタマイズコマンドは、制御線26の集合および下流データ線28の集合にそってブリッジデバイス16において受信される。第1のカスタマイズコマンドは、第1のカスタマイズコマンド内の符号化されたデバイスアドレスに基づいて、第1のカスタマイズコマンドがマネージドメモリモジュール321にアクセスすることを必要とすると認識した、コントローラインターフェイス制御論理ブロック29によって処理される。したがって、値555Fhは、アドレス信号中に符号化され、アドレス線2041の集合にそってマネージドメモリモジュール321に送られる。アドレス信号は、該当する場合に、適切なプレーン(例えば、AまたはB)も符号化すると仮定される。それに加えて、値00101101は、入力データ信号中に符号化され、入力データ線2021の集合にそってマネージドメモリモジュール321に送られる。さらに、第1のカスタマイズコマンド内に符号化されたOPコードに基づいて、コントローラインターフェイス制御論理ブロック29は、「書込みモード」を読出し/書込み信号内に符号化し、この信号は読出し/書込み線2061にそってマネージドメモリモジュール321に送られる。
次に、読出し/書込み信号を「書込みモード」で符号化する作業を続けている間、アドレスは値5560hにインクリメントされ、この値は、アドレス線2041の集合にそってマネージドメモリモジュール321に送られるアドレス信号中に符号化される。それに加えて、値10101001は、入力データ信号中に符号化され、入力データ線2021の集合にそってマネージドメモリモジュール321に送られる。
その一方で、ブロックおよびページの値(この場合、ブロック#123、ページ#456)は、メモリコントローラ12が後続のBURST DATA LOADカスタマイズコマンドを発行して、追加のデータを現在のページに書き込むか、またはPAGE PROGRAMカスタマイズコマンドを発行する場合など、後で使用できるようにコントローラインターフェイス制御論理ブロック29に格納される。
上記に加えて、仮想ページバッファ300 は、メモリロケーション555Fhにおいて値0101101を書き込まれ、メモリロケーション5560hにおいて値10101001を書き込まれる。それに加えて、マスクバッファ制御論理ブロック348は、マスクバッファ310の対応するデータ要素を論理0に設定する。
次いで、メモリコントローラ12は、以下の情報を含む、第2のカスタマイズコマンドを発行すると仮定しよう。
デバイスアドレス=141
OPコード=BURST DATA LOAD
CA=開始ワード777Fh(RAは使用されない)
DATA=11010000
第2のカスタマイズコマンドは、ここでもまた、制御線26の集合および下流データ線28の集合にそってブリッジデバイス16において受信される。第2のカスタマイズコマンドは、第2のカスタマイズコマンド内の符号化されたデバイスアドレスに基づいて、第2のカスタマイズコマンドがBURST DATA LOAD STARTカスタマイズコマンドの場合と同じマネージドメモリモジュール321にアクセスすることを必要とすると認識した、コントローラインターフェイス制御論理ブロック29によって処理される。ここで、ブロックおよびページがCA情報から省かれていることがわかるが、このことは、第1のカスタマイズコマンドの結果として書き込まれたばかりのページと同じページにデータが書き込まれることを意味する。したがって、値777Fhは、アドレス信号中に符号化され、アドレス線2041の集合にそってマネージドメモリモジュール321に送られる。ここでもまた、アドレス信号は、該当する場合に、適切なプレーン(例えば、AまたはB)も符号化すると仮定される。それに加えて、値11010000は、入力データ信号中に符号化され、入力データ線2021の集合にそってマネージドメモリモジュール321に送られる。さらに、第2のカスタマイズコマンド内に符号化されたOPコードに基づいて、コントローラインターフェイス制御論理ブロック29は、ここでもまた「書込みモード」を読出し/書込み信号内に符号化し、この信号は読出し/書込み線2061にそってマネージドメモリモジュール321に送られる。
上記に加えて、仮想ページバッファ300のメモリロケーション777Fhのところに値11010000を書き込む。それに加えて、マスクバッファ制御論理ブロック348は、マスクバッファ310の対応するデータ要素を論理0に設定する。
不揮発性メモリデバイス141は、一見すると第1のカスタマイズコマンドおよび第2のカスタマイズコマンドのターゲットとなる受信側(デバイスアドレスに基づいて)であるが、アイドル状態のままであり、第1のカスタマイズコマンドおよび第2のカスタマイズコマンドはブリッジデバイス16によって横取りされ、処理されたことに留意されたい。
図7は、第2のカスタマイズコマンドの処理の結果、仮想ページバッファ300に影響が出た直後の仮想ページバッファ300、マスクバッファ300、デバイスページバッファ22、およびデバイスページ502の内容を示している。メモリロケーション5560hから777Fhまでの間のデータ要素を含む、仮想ページバッファ300内の特定の数のデータ要素702が、それでも、未知の値を有していることがわかる。しかし、デバイスページ502内の対応するデータ要素712は、必ずしも未知ではない、したがって、根拠もなく変えるべきでない値を有している。このような理由から、また以下に示すように、デバイスページバッファ22内の対応するデータ要素722は、論理1に設定されなければならず、これにより、デバイスページ502内のデータ要素712にプログラミングオペレーションが実行されることが抑止される。
段階D
次に、メモリコントローラ12は、以下の情報を含む、第3のカスタマイズコマンドを発行すると考える。
デバイスアドレス=141
OPコード=PAGE PROGRAM
第3のカスタマイズコマンドは、制御線26の集合および下流データ線28の集合にそってブリッジデバイス16において受信される。第3のカスタマイズコマンドは、第3のカスタマイズコマンド内の符号化されたデバイスアドレスに基づいて、第3のカスタマイズコマンドが第1および第2のカスタマイズコマンドの場合と同じマネージドメモリモジュール321にアクセスすることを必要とすると認識した、コントローラインターフェイス制御論理ブロック29によって処理される。しかし、コントローラインターフェイス制御論理ブロック29は、異なるOPコードに基づいて、仮想ページバッファ300から不揮発性メモリデバイス141内のデバイスページバッファ22にデータを転送するときであることを認識する。
そこで、コントローラインターフェイス制御論理ブロック29は、初期値0000hを、アドレス線2041の集合にそってマネージドメモリモジュール321に送られるアドレス信号中に符号化する。それに加えて、コントローラインターフェイス制御論理ブロック29は、「読出しモード」を読出し/書込み信号内に符号化し、この信号は読出し/書込み線2061にそってマネージドメモリモジュール321に送られる。それに応答して、仮想ページバッファ300は、アドレス0000hに置かれているそのデータ要素の内容をデータ線302の集合上に出す。それに加えて、マスクバッファ310は、アドレス0000hに置かれている対応するデータ要素の内容をマスクバッファ310の出力を介してマスクデータ線312上に出す。すでに述べたように、マスクデータ線312およびデータ線302の集合は、マスク論理ブロック340に(データ線302の集合の場合にはセレクタ320を介して)つながり、これは、出力データ線2081の集合にそって出力データ信号SO1をデバイスインターフェイス制御論理ブロック30に供給する。読出しオペレーションを完了するのに要する短い時間の後に、コントローラインターフェイス制御論理ブロック29は、次の値0001hを、アドレス線2041の集合にそってマネージドメモリモジュール321に送られるアドレス信号内に符号化するといった動作を、仮想ページバッファ300(およびマスクバッファ310)の読出しが終わるまで続ける。
その一方で、コントローラインターフェイス制御論理ブロック29は、リンク218にそって制御信号Scをデバイスインターフェイス制御論理ブロック30に送信する。制御信号Scは、デバイスインターフェイス制御論理ブロック30が不揮発性メモリデバイス141によって認識され、結果としてデータを不揮発性メモリデバイス141に書き込ませるジェネリックコマンドを発行できるようにするために必要な制御情報を供給する。したがって、制御信号Scでは、必要なオペレーションおよび関連するパラメータを指定することができる。この非限定的な例では、必要なオペレーションは、PAGE PROGRAMジェネリックコマンドを発行することであり、関連するパラメータは、不揮発性メモリデバイス141のブロック#123内のページ#456の識別である。マルチプレーンの実施形態では、適切なプレーンも指定することができる。
コントローラインターフェイス制御論理ブロック29から制御信号Scを受信したことに応答して、デバイスインターフェイス制御論理ブロック30は、制御線341の集合および下流データ線361の集合を使用してPAGE PROGRAMジェネリックコマンドおよび書込みデータ(出力データ線2081の集合にそってマネージドメモリモジュール321から受け取った出力データ信号SO1に対応する)を不揮発性メモリデバイス141に伝送する。このようにして、仮想ページバッファ300の内容全体が、不揮発性メモリデバイス141内のデバイスページバッファ22に転送される。
PAGE PROGRAMジェネリックコマンドは、初期コマンドサイクル、その後のアドレスおよびデータサイクル、ならびに確認コマンドサイクルを含むことに留意されたい。図8は、初期コマンドサイクルならびにその後のアドレスおよびデータサイクルの結果としてデバイスページバッファ22が書き込まれてからの、ただし、ページバッファ22の内容がデバイスページ502に転送される前の、仮想ページバッファ300、マスクバッファ310、デバイスページバッファ22、およびデバイスページ502の内容を示している。もちろん、仮想ページバッファ300またはマスクバッファ310の内容に変更はない。しかし、デバイスページバッファ22内のデータ要素722は、論理1に設定されているが、デバイスページバッファ22内の他のデータ要素は、仮想ページバッファ300内の対応するデータ要素と一致していることがわかる。これは、デバイスページバッファ22がメモリコア20に転送されるときに(デバイスページ502内の)データ要素712の現在値を保存する効果を有する。
実際、これは図9を見るとわかり、この図は、不揮発性メモリデバイス141がPAGE PROGRAMジェネリックコマンドで確認コマンドサイクルを完全に処理した後の、仮想ページバッファ300、マスクバッファ310、デバイスページバッファ22、およびデバイスページ502の内容を示している。その値が論理1から論理0に変更されたデバイスページ502内のデータ要素のみが、デバイスページバッファ22内の対応するそのデータ要素が論理0の値を有していたものであることがわかる。
段階E
PAGE PROGRAMジェネリックコマンドの確認コマンドサイクルを伝送すると、デバイスインターフェイス制御論理ブロック30は、リセット線2101上で第1のリセット信号を発行する。(その一方で、不揮発性メモリデバイス141のデバイス制御論理ブロック18は、PAGE PROGRAMジェネリックコマンドの確認コマンドサイクルを処理している場合がある。)第2のリセット信号は、論理ORモジュール346を経由してマスクバッファ制御論理ブロック348に到達する。それに応答して、マスクバッファ制御論理ブロック348は、マスクバッファ310をクリアし、その結果、上述のように、マスクバッファ310内のすべてのデータ要素が論理1に設定される。図10は、マスクバッファ310をクリアした直後の仮想ページバッファ300およびマスクバッファ310の内容を示している。仮想ページバッファ300、デバイスページバッファ22、およびデバイスページ502の内容は、変化していないことに留意されたい。
上記の説明に照らして、ブリッジデバイスがデバイスページバッファのために仮想ページバッファを一時的に格納するために使用される場合、またブリッジデバイスがターゲットページに実際に書き込まれるワードの個数に関係なく仮想ページバッファ全体をデバイスページバッファに転送するように機能する(これにより、仮想ページバッファ内のいくつかのデータ要素は未使用のままに残される)場合、本明細書で説明されているシステムのいくつかの実施形態では、対処しないと仮想ページバッファ内の未使用のデータ要素のうちのいくつかのデータ要素が電源購入後などのいくつかの時点においてプログラム抑制状態に反する論理状態をランダムに取得したことで生じるであろうターゲットページ内のデータの意図しない改変を回避することができることは明らかであろう。
当業者であれば、多数の変更形態が本発明の範囲内に収まることを理解するであろう。例えば、仮想ページバッファ300内のデータ要素とマスクバッファ310内のデータ要素との間にサイズの違いがありうるが、マスクバッファ310は、しかしながら、同じ入力/出力規格を有するように構成されうる。サイズを除いて同一である2つのSRAMメモリブロックを生成するように、市販のSRAMコンパイラ(特定の非限定的な一例として、英国ケンブリッジ所在のARM Ltd.社から販売されているArtisan(登録商標)SRAMコンパイラ)をプログラムすることができる。
図3Bは、マスクバッファ310および仮想ページバッファ300がサイズを除いて同一である個別のメモリブロックとして構成され、これにより仮想ページバッファ300がマスクバッファ310より8倍大きくなる場合を例示している。この特定の例において、仮想ページバッファ300およびマスクバッファ310内のデータ要素は、1バイト単位でインクリメントする形でのみ読み書きすることができる(本発明の例の目的に関して、単一のプレーンのみが存在すると仮定されている)。したがって、アドレス線2041の集合によって符号化されたアドレスは、仮想ページバッファ310のターゲットバイトを定義しているが、この全く同じアドレスは、マスクバッファ310のターゲットバイト内にターゲット位置を符号化する。したがって、マスクバッファ310にアクセスすることを目的として、アドレス線は2つの成分、つまり、第1のアドレス成分370 (アドレス線2041の3本以外のすべてアドレス線を含み、マスクバッファ310のターゲットバイトを指定する)、および第2のアドレス成分372(残り3本のアドレス線を含み、ターゲットバイト内のターゲット位置を指定する)に分割される。
ターゲットバイト内のターゲット位置を伴う読出しオペレーションの際に、第1のアドレス成分370がマスクバッファ310に供給される。また、マスクバッファ制御論理ブロック348は、読出し/書込み線(図示せず)を「READ MODE」に設定する。それに対する応答して、ターゲットバイトがマスクバッファ310から抽出され、第2のアドレス成分372によって制御されるビットアドレス指定可能レジスタ380に供給される。レジスタ380のサイズは、マスクバッファ310から抽出できるデータのサイズ、この場合には1バイトを対応する。次いで、第2のアドレス成分372内に符号化された情報に基づいて、レジスタ380は、すでに説明されているマスク信号SMの形態でマスクデータ線312にそってターゲットビットを出力する。
他方、ターゲットバイト内のターゲット位置を伴う書込みオペレーションにおいて、最初に読出しオペレーション、次いで書込みオペレーションを行う、2ステッププロセスが実行される。特に、第1のアドレス成分370がマスクバッファ310に供給されるが、マスクバッファ制御論理ブロック348は、読出し/書込み線を「READ MODE」に設定する。それに対する応答して、ターゲットバイトがマスクバッファ310から抽出され、第2のアドレス成分372によって制御される前述のビットアドレス指定可能レジスタ380に供給される。レジスタ380の完全な出力(つまり、ターゲットバイト)がマスクバッファ制御論理ブロック348にフィードバックされ、次いで、第2のアドレス成分内に符号化された情報に基づいてターゲットビットのみを修正し、ターゲットバイトの他のビットをそのままにする。その一方で、第1のアドレス成分370がマスクバッファ310へ供給され続ける。この段階で、マスクバッファ制御論理ブロック348は、読出し/書込み線を「WRITE MODE」に設定し、修正されたターゲットバイトを(つまり、修正されたターゲットビットとともに)データ線390の集合にそって供給する。それに対する応答として、修正されたターゲットバイトが、マスクバッファ310に書き込まれる。
しかし、当業者であれば、マスクバッファ310へのアクセスの粒度1110が、仮想ページバッファ300へのアクセスの粒度1100より細かいか、または等しいか、または粗いという具体的な要件はないことを理解するであろう。
いくつかの実施形態では、ブリッジデバイス16および/またはマネージドメモリモジュール321〜324の全部または一部を、コンピューティングデバイス上で実行される論理合成ツールを使用して得られる低水準ハードウエア記述に基づいて製造することができることは理解されるであろう。論理合成ツールは、ブリッジデバイス16および/またはマネージドメモリモジュール321〜324の機能記述(いくつかの非限定的な例としてHDL、VHDL、またはVerilogによる記述を挙げることができる)を含むソースコードを読み込み、対応する機能を実装するのに適した回路の物理的実装の定義を出力するように構成される。
次に図12を参照すると、そこには、本発明の特定の非限定的な一実施形態による半導体メモリ回路1200が示されており、これは、1つのメモリアレイ1203(行と列からなる)に配列されたメモリセル1202と、それらの行のうちの各行にそれぞれ接続されている複数のワード線1204と、それらのワード線1204のうちの各ワード線をそれぞれ駆動するための複数のワード線ドライバ1206と、少なくとも1つの行デコーダ1208(後で説明する)と、それらの列のうちの各列にそれぞれ接続されている複数のビット線1210と、列アドレスに基づいてビット線1210のうちの1つまたは複数のビット線を選択するための列デコーダ1212と、それらのビット線1210のうちの各ビット線をそれぞれ駆動するための複数のビット線書込みドライバ1214と(書込みの場合)、それらのビット線1210のうちの各ビット線に基づいて電圧レベルをそれぞれ増幅し、検出するための複数のビット線感知増幅器1216と(読出しの場合)、少なくとも1つの行デコーダ1208、列デコーダ1212、ビット線書込みドライバ1214、およびビット線感知増幅器1216を制御するためのコントローラ1218とを備える。
次に図13Aを参照すると、そこには、本発明の第1の特定の非限定的な一実施形態による、少なくとも1つの行デコーダ1208の一例が示されている。この実施形態では、少なくとも1つの行デコーダ1208は、単一の行デコーダ1302を備える。
行デコーダ1302は、コントローラ1218によって(またはアドレス信号をその成分、つまり行信号1304と列信号1305に分ける、図示されていない、介在するプリデコーダによって)発行される行信号1304に基づいて、複数のワード線1204の個別の1つのワード線を選択することができる。ワード線の選択は、選択されたワード線に接続されているワード線ドライバ1206のうちの特定の1つのワード線をアクティブ化することによって実行される。そこで、少なくとも1つの行デコーダが、対応するワード線ドライバがアクティブ化されているか、アクティブ化されていないかを示すためにアサートされるか、またはアサートされないようにできる各ワード線選択信号1315によってワード線ドライバ1206のそれぞれに接続される。選択されたワード線に対応するアクティブ化されたワード線ドライバは、選択されたワード線に接続されているセルの行を駆動する。
それに加えて、行デコーダ1302は、グループ内のワード線に接続されているワード線ドライバ1206をアクティブ化することによってワード線1306のグループを選択することができる。次いで、アクティブ化されたワード線ドライバは、ワード線1306のグループに接続されているセルの行を駆動する。本明細書において、ワード線の「グループ」といった場合、これは、2つまたはそれ以上のワード線を示すことを意味する。ワード線の「グループ」内のワード線は、メモリアレイ1203内のセルの連続する行に関連付けることは、許されているが、そうする必要はないことも理解されるであろう。
行デコーダ1302によるワード線1306のグループの選択は、コントローラ1218によって発行されうる、プリセット制御信号1308によって制御される。プリセット制御信号1308は、前述の行信号1304を効果的にオーバーライドする。この機能を実装する可能な方法では、図13Aに示されているように、行復号化回路1310の出力(そのうちの単一の出力が複数のワード線1204のうちの対応する1つのワード線の選択を示すようにアサートされる)のそれぞれを各論理「OR」ゲート1314の各第1の入力1312に供給し、各第2の入力1316はプリセット制御信号1308によって供給される。これにより、プリセット制御信号1308がアサートされたときに複数のワード線が選択される(つまり、ワード線1306のグループ内のワード線)。あるいは、プリセット制御信号1308は、存在する場合に複数のワード線1204のうちの単一のワード線とは反対にワード線1306のグループの選択を行わせる行信号1304の追加の要素であるものとして考えることができる。所望の機能を実装するさらに他の方法も、当業者であれば思いつく。
オペレーションにおいて、図13Aを引き続き参照すると、プリセット制御信号1308のアサートに対する応答として、行デコーダ1302は、ワード線1306のグループを選択する。ワード線1306のグループが行デコーダ1302によって選択された後、複数のビット線1210のうちの対応するビット線を駆動することによってワード線1306のグループに接続されている行内のセルに書込みを行うことができる。特に、ビット線書込みドライバ1214は、対応するビット線を、例えば、論理「0」または論理「1」とすることができる、所望の論理状態に設定するために必要な適切なレベルに設定するように制御される。複数の行が選択されるので、複数のビット線1210のうちの与えられた1つのビット線を制御することで、選択された行のそれぞれ中のセルの同時書込みが行われ、これは、メモリアレイ1203をプリセットするのに要する総時間を短縮するという効果をもたらしうる。もちろん、ビット線1210それ自体がすべて一緒に同時に駆動される必要はないことは理解されるであろう。さまざまな実施形態において、ビット線1210は、ワード線の特定のグループが選択されている間に、一度に1つずつ、対で、または他の順序で、駆動することができる。
次に図13Bを参照すると、そこには、本発明の第2の特定の非限定的な一実施形態による、少なくとも1つの行デコーダ1208の一例が示されている。この実施形態は、コントローラ1218によって供給される2つのプリセット制御信号1308A、1308Bがあることを除き、図13Aと同じである。プリセット制御信号1308A、1308Bのそれぞれをアサートすることで、ワード線の各グループの選択を行うが、これは、本明細書では、ワード線1306Aの第1のグループおよびワード線1306Bの第2のグループと称される。2つの行プリセット制御信号1308A、1308Bが例示されているが、プリセット制御信号の数(およびそれに対応して、ワード線のグループの数)は、2より大きくてもよいことは理解されるであろう。また、ワード線1306A、1306Bのグループはメモリアレイ1203の連続する行に関連付けられる必要はないが、これらは、読者の理解を助けるものと仮定する。
この機能を実装する可能な方法では、図13Bに示されているように、ワード線1306Aの第1のグループに属す行復号化回路1310の出力のそれぞれを各論理「OR」ゲート1314Aの各第1の入力1312Aに供給し、各第2の入力1316Aはプリセット制御信号1308Aによって供給される。これにより、プリセット制御信号1308Aがアサートされたときに複数のワード線が選択される(つまり、ワード線1306Aの第1のグループ内のワード線)。同様に、ワード線1306Aの第2のグループに属す行復号化回路1310の出力のそれぞれは、各論理「OR」ゲート1314Bの各第1の入力1312Bに供給され、各第2の入力1316Bはプリセット制御信号1308Bによって供給される。これにより、プリセット制御信号1308Bがアサートされたときに複数のワード線が選択される(つまり、ワード線1306Bの第2のグループ内のワード線)。
あるいは、プリセット制御信号1308Aおよびプリセット制御信号1308Bは、存在する場合にワード線1306Aのグループの選択またはワード線1306Bのグループの選択をそれぞれ行わせる行信号1304の追加の要素として考えることができる。もちろん、プリセット制御信号1308Aおよびプリセット制御信号1308Bの両方をアサートすることで、ワード線1306A、1306Bの第1および第2のグループ内のワード線のすべてが選択されると考えられる。所望の機能を実装するさらに他の方法も、当業者であれば思いつく。
次に図13Cを参照すると、そこには、本発明の第3の特定の非限定的な一実施形態による、少なくとも1つの行デコーダ1208の一例が示されている。この実施形態では、少なくとも1つの行デコーダ1208は、複数の行デコーダ、つまり、第1の行デコーダ1302Aおよび第2の行デコーダ1302Bを備える。2つの行デコーダ1302A、1302Bが例示されているが、行デコーダの数は、2より大きいものとすることができ、一般的に「N」とすることは理解されるであろう。したがって、本発明の実施形態は、メモリアレイ1203がN個の物理的に分離しているSRAMサブアレイに分割され、それらのサブアレイは同じビット線を共有しているがそれ専用の個別のワード線の複数の集合を有する場合にも応用されることは理解されるであろう。
第1の行デコーダ1302Aは、コントローラ1218によって(またはアドレス信号をその成分、つまり行信号1304Aと列信号1305に分ける、図示されていない、介在するプリデコーダによって)発行される行信号1304Aに基づいて、ワード線1380Aの第1の部分集合内の複数のワード線1204の個別の1つのワード線を選択することができる。同様に、第2の行デコーダ1302Bは、コントローラ1218によって(またはアドレス信号をその成分、つまり行信号1304Bと列信号に分ける、図示されていない、介在するプリデコーダによって)発行される行信号1304Bに基づいて、ワード線1380Bの第2の部分集合内の複数のワード線1204の個別の1つのワード線を選択することができる。ワード線の第1および第2の部分集合は、連続していてもよいし、または交互配置でもよい。
それに加えて、第1の行デコーダ1302Aは、ワード線の第1のグループ内のワード線に接続されているワード線ドライバ1206をアクティブ化することによってワード線1380Aの第1の部分集合内のワード線の第1のグループを選択することができる。次いで、アクティブ化されたワード線ドライバは、ワード線の第1のグループに接続されているセルの行を駆動する。また、第2の行デコーダ1302Bは、ワード線の第2のグループ内のワード線に接続されているワード線ドライバ1206をアクティブ化することによってワード線1380Bの第2の部分集合内のワード線の第2のグループを選択することもできる。次いで、アクティブ化されたワード線ドライバは、ワード線の第2のグループに接続されているセルの行を駆動する。
第1の行デコーダ1302Aによるワード線の第1のグループの選択は、コントローラ1218によって発行されうる、プリセット制御信号1308Aによって制御される。同様に、第2の行デコーダ1302Bによるワード線の第2のグループの選択は、コントローラ1218によって発行されうる、プリセット制御信号1308Bによって制御される。
オペレーション中に、コントローラ1218は、プリセット制御信号1308A、1308Bのアサートを制御し、結果として、ワード線の第1および第2のグループが選択される順序を制御することになる。プリセット制御信号(つまり、1308A、1308B)のうちの与えられた1つのプリセット制御信号のアサートに応答して、対応する行デコーダ(つまり、1302A、1302B)は、ワード線(つまり、1380A、1380B)のその行デコーダが有する部分集合内のワード線のその行デコーダが有する特定のグループを選択する。ワード線の特定のグループが選択された後、対応するビット線を駆動することによってワード線のグループに接続されている行内のセルに書込みを行うことができる。特に、すでに説明されているように、ビット線書込みドライバは、ビット線を、例えば、論理「0」または論理「1」とすることができる、所望の論理状態に設定するために必要な適切なレベルに設定するように制御される。
次に、複数の行デコーダが単一のより大きな行デコーダ1352に組み合わされ、単一のマスタープリセット制御信号1358が備えられていることを除き図13Cと同じである図13Dを参照する。しかし、ワード線1380A、1380Bの第1および第2の部分集合のそれぞれの中の個別のワード線の選択を行えるようにするために、2つの行信号1304A、1304Bが引き続き供給される。したがって、図13Cの実施形態では、第1および第2の行デコーダ1302A、1302Bの制御のためにプリセット制御信号1308A、1308Bをアサートするコントローラ1218内にインテリジェンス機能を付加することを必要としているが、図13Dの実施形態では、マスターリセット制御信号1358を処理するための制御論理を備えることによって行デコーダ1352それ自体とともにこのインテリジェント機能を実現する。その結果、マスタープリセット制御信号1358がアサートされると、行デコーダ1352は、ワード線のどのグループ(つまり、ワード線1380Aの第1の部分集合内のワード線の第1のグループまたはワード線1380Bの第2の部分集合内のワード線の第2のグループ)を、どの順序で選択すべきかを決定する。
当業者であれば、上記の実施形態において、プリセット制御信号(例えば、1308、1308A、1308B)のアサートは、コントローラ1218側でメモリアレイ1203をプリセットするときであると判定した場合に実行されうる。「プリセットオペレーション」は、複数のメモリセル1202のうちの個別のメモリセルの内容が、不明であり、所定の論理状態に設定されるべきである場合に、半導体メモリ回路1200の電源投入のオペレーションにおいて望ましいか、または必要な場合がある。あるいは、またはそれに加えて、プリセットオペレーションは、例えば、ウォッチドッグ回路(図示せず)によって生成されるソフトリセットによって開始されうる。プリセットオペレーションが望ましいか、または必要と思われる他の場合も、当業者には明らかであろう。
本発明は、ワード線のグループの数、グループ毎のワード線の数、またはどのワード線が同じグループの一部になっている可能性があるかということに対し特に制限を課すわけではないことは理解されるであろう。むしろ、当業者は、ピーク電流(グループの数に反比例する)とバックグラウンドでの書込みの時間(グループの数に比例する)との間のトレードオフの関係などのさまざまな工学的基準に基づいて好適なグループサイズ、数、および従属関係を決定することができることが期待される。
さらに、ワード線の複数のグループをサポートする実施形態において、これらのグループは、同時に選択されうるか、または次々に選択されうるか、または重なり合う形で選択されうる。
さらに、本発明では、複数のプリセット制御信号をサポートする実施形態において、コントローラによってアサートされる仕方または順序に特定に制限を設けることはしない。
また、本発明では、シングルポートメモリセルおよびデュアルポートメモリセルの両方を使用することができる。シングルポートセルを使用する特定の例では、与えられた列に対するビット線書込みドライバが、複数のビット線1210のうちの2つのビット線に関連付けられている。与えられた列に接続されているメモリセルを所望の状態に設定するために、2つの関連付けられているビット線のうちの一方をLOW状態に設定し、他方を、与えられた列内のメモリセルを所望の状態に設定するために使用する。
図14を参照すると、本発明の特定の非限定的な実施形態により、半導体メモリ回路1200をシステム1400に組み込むことができることがわかる。システム1400の例としていくつか挙げると、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)とすることも可能である。
次に図15を参照すると、これは、特定の非限定的な一実施形態による、メインメモリユニット1512および補助メモリユニット1514を備える半導体デバイス1500を示している。半導体デバイス1500は、例示されていない他のコンポーネントも備えることができる。 図21Aを参照すると、本発明の特定の非限定的な実施形態により、半導体デバイス1500をシステム800に組み込むことができることがわかる。システム800は、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)であってもよいが、ほかに非限定的な例をいくつか挙げることもできる。
メインメモリユニット1512は、複数のセル1520を備える。補助メモリユニット1514は、行と列からなるアレイの形態で複数のセル1540を備える。メインメモリユニット1512内のセル1520は、同様に、アレイの形態に配列することができる。補助メモリセル1514内のセル1540は、それぞれ、メインメモリユニット1512内の1つまたは複数のセル1520の集合に関連付けられる。例示することのみを目的として構成された、例示されている実施形態では、メインメモリユニット1512はセル1520を4行、6列に並べたものであり、補助メモリユニット1514はセル1540を4行、2列に並べたものであり、補助メモリユニット1514内のそれぞれのセルは、メインメモリユニット1512内の3つのセルの集合に関連付けられている。他の例では、補助メモリユニット1514内の1ビット分の情報は、メインメモリユニット1512内の1バイト分の情報に対するステータス情報(例えば、有効性、新鮮度(freshness)、マスクワーシネス(mask-worthiness)など)を表す。しかし、補助メモリユニット1514内の行もしくは列の数または補助ユニットセルに関連付けられている集合内のメインメモリユニットセルの数に対する制限は特にないことは理解されるであろう。
特定の非限定的な実施形態において、補助メモリユニット1514のセル1540は、金属酸化膜半導体(MOS)スタティックランダムアクセスメモリ(SRAM)セルを備えることができる。特に、図16は、6個のMOSトランジスタ1630、1631、1632、1633、1634、1635、1つのワード線1602W、および2つのビット線1602B+、1602B-を有するシングルポートSRAMセル1602を示している。セル1602は、ワード線1602Wおよびビット線1602B+、1602B-を制御することによって読出し、または書込みを行える。ワード線1602Wは、読出しおよび書込みの両方のオペレーションに対してHIGHレベル(つまり、「選択」または「アサート」)に設定される。読出しオペレーションでは、ビット線16028+および1602B-は両方とも、高レベルまでプリチャージした後に感知される。ビット線1602B+、1602B-のうちの一方がHIGH値になっても、セル1602内の値に変化はなく、その代わりに、セル1602はビット線1602B+、1602B-をLOWレベルに引く。ビット線1602B+、1602B-のうちのどれがLOWレベルに引かれるかに応じて、これは論理「0」または論理「1」のいずれかとして解釈される。書込みオペレーションでは、ビット線1602B+、1602B-の一方が強制的にLOWレベルにされ、他方が強制的にHIGHレベルにされる。LOWレベル値は、LOWレベルに強制されたビット線に接続されているPMOSトランジスタ(1631または1633)に過剰な電力を供給し、その結果セル1602に書込みが行われる。ビット線1602B+、1602B-のうちのどれがLOWレベルに強制されたかに応じて、これは論理「0」または論理「1」のいずれかをセル1602に書き込む。
メインメモリユニットのセル1520は、同様に、SRAMセルとすることができる。本発明のいくつかの実施形態の範囲から逸脱することなく、メインメモリユニット1512および補助メモリユニット1514においてワード線とビット線の構造を持つ他のタイプのメモリセルを使用することができることは理解されるであろう。このような他のタイプのメモリセルの例として、ダイナミックランダムアクセスメモリ(DRAM)が挙げられる。
次に、図15に戻ると、半導体デバイス1500は、複数のワード線1542を備え、それぞれのワード線は補助メモリユニット1514のセル1540の各行に接続されている。行デコーダ回路1546は、ワード線1542の制御用に備えられている。特に、特定の補助メモリユニットセル(つまり、補助メモリユニット1514の複数のセル1540のうちの特定の1つのセル)に対し読み書きするときに、その特定の補助メモリユニットセルが配置されている行に接続されているワード線が、行デコーダ回路1546によって選択される。行デコーダ回路1546は、通常オペレーションモードとプリセットオペレーションモードとで動作可能である。通常オペレーションモードでは、行デコーダ回路1546は、複数のワード線1542のうちから個別の1つのワード線を選択する。プリセットオペレーションモードでは、行デコーダ回路1546は、複数のワード線1542内の2つまたは複数のワード線からなるグループを一緒に選択する。複数のワード線の選択に関する詳細については、参照により本明細書に組み込まれている、2009年8月5日に出願された米国仮特許出願第61/213,990号および2009年9月22日に出願された米国特許出願第12/564,492号を参照されたい。行デコーダ回路1546が動作する特定のモード、さらには読み書きされるセルを含む1つまたは複数の行の識別は、制御論理回路1570によって与えられる。
半導体デバイス1500は、複数のビット線1544をさらに備え、それぞれのビット線は補助メモリユニット1514のセル15440の各列に接続されている。図16に示されているタイプのシングルポートセルが、補助メモリユニット1514内で使用される場合、補助メモリユニットセルのそれぞれは、ビット線1544の対に接続されることに留意されたい。ビット線制御回路1548(例えば、ドライバおよび感知増幅器を含む)がビット線1544の制御用に用意される。ビット線制御回路1548のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1548は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるように補助メモリユニット1514の選択された列に接続されているビット線1544を駆動する構成をとる。補助メモリユニット1514の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1570によって与えられる。補助メモリユニット1514の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1570によって同様に識別される。
半導体デバイス1500は、複数のワード線1522をさらに備え、それぞれのワード線はメインメモリユニット1512のセル1520の各行に接続されている。行デコーダ回路1526は、ワード線1522の制御用に備えられている。特に、特定のメインメモリユニットセル(つまり、メインメモリユニット1512の複数のセル1520のうちの特定の1つのセル)に対し読み書きするときに、その特定のメインメモリユニットセルが配置されている行に接続されているワード線が、行デコーダ回路1526によって選択される。読み書きされるセルを含む行の識別は、制御論理回路1570によって与えられる。
半導体デバイス1500は、複数の回路1524をさらに備え、それぞれの回路はメインメモリユニット1512のセル1520の各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、メインメモリユニットセルのそれぞれは、回路1524の対に接続されることに留意されたい。ビット線制御回路1528は、回路1524の制御用に備えられている。ビット線制御回路1528のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1570によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1570によって同様に識別される。
オペレーション中、制御論理回路1570は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー(mask-worthy)」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセル(つまり、メインメモリユニット1512内のセル1520)のステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット1514内の対応するセルに関連付けられる。次いで、補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット1514から読み出すことによってメインメモリユニット1512内の異なるセルのステータスを確定することができる。複数の補助メモリユニットセルのうちの与えられた1つの補助メモリユニットセルによってそれぞれ表される集合内のメインメモリユニット1512のセルの数は、3または他の任意の特定の値に制限されないことは理解されるであろう。
プリセットコマンドを受け取ったことに対する応答として、制御論理回路1570は、補助メモリユニット1514上でプリセットオペレーションを実行する。プリセットオペレーションの目的は、補助メモリユニット1514内のセル1540のそれぞれに、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルの対応する集合を示す特定の論理状態(例えば、論理「1」)を取得させることである。そこで、制御論理回路1570は、行デコーダ回路1546への補助メモリユニット1514の2つまたはそれ以上の行のグループを識別し、行デコーダ回路1546を前述のプリセットオペレーションモードにするが、それにより、2つまたはそれ以上の識別された行に対応するワード線のグループの選択が行われる。行デコーダ回路1546が、プリセットオペレーションモードにされたときにワード線1542のすべてを自動的に選択するように構成されている場合、行デコーダ回路1546への2つまたはそれ以上の行のグループを明示的に識別する必要はないが、それは、その識別が行デコーダ回路1546をプリセットオペレーションモードにする活動によって暗黙のうちに行われるからである。
行デコーダ回路1546をプリセットオペレーションモードにすると、制御論理回路1570は、ビット線制御回路1548を制御して、最終的には補助セル1540のそれぞれを特定の論理状態(この場合には、論理「1」)に設定する。一例において、行デコーダ回路1546の動作を通じて多数のワード線1542が一緒に選択されていると仮定すると、単一の列に対するビット線1544は、選択されているワード線に接続されている、その列内のすべてのセルを論理「1」に同時に設定するように制御論理回路1570によって制御されうる。次いで、このプロセスは、次の列について繰り返され、次々に同様に繰り返されてゆく。他の例では、複数の列に対するビット線1544は、選択されているワード線に接続されている、それらの列のそれぞれの中のすべてのセルを論理「1」に同時に設定するように制御されうる。
一緒に接続されているワード線の数が、ワード線1542のすべてより少ない場合、前述のビット線制御プロセスは、ワード線の新しい集合について繰り返される。最終的に、補助メモリユニット1514内のすべてのセル1540は、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセル1520を示す特定の論理状態(この場合、論理「1」)を取得しており、プリセットオペレーションは、完了であると言われる。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路1570は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のセルによって表され、したがって、特定のワード線およびビット線の特定の対に関連付けられる。制御論理回路1570は、行デコーダ回路1526への特定の行を識別する。次いで、制御論理回路1570は、ビット線の特定の対が特定のメインメモリユニットセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1528を制御する。その後書き込まれるセル1520のうちの他方のセルについて、回路1524およびワード線1522のさらなる制御が実行される。この結果、データを書き込まれたいくつかの数のメインメモリユニットセルは第2の特定のステータス(例えば、「有効」、「新鮮」、「マスクワーシーでない」など)を有することになる。
これらのメインメモリユニットセルのステータスの変化を記録するために、制御論理回路1570は、書き込まれたメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(すでに取得されている第1の特定のステータスではなく)を有するデータを示す論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。そこで、制御論理回路1570は、メインメモリユニットセルの対応する集合が上述の開始アドレスのところの特定のセルを含む補助メモリユニットセルの特定の行および特定の列を決定する。制御論理回路1570は、行デコーダ回路1546への特定の行を識別して、行デコーダ回路1546を通常オペレーションモードにし、その結果、補助メモリユニット1514内の複数のワード線1542のうちの特定の1つのワード線が選択される。次いで、制御論理回路1570は、特定の列に対応するビット線の特定の対が、メインメモリユニットセルの対応する集合が開始アドレスのところの特定のセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路1548を制御する。こうして、メインメモリユニットセルのこの対応する集合のステータスの変化が記録され、メインメモリユニット内のセルの対応する集合がさらに書き込まれた他の補助メモリユニットセルについてもこのプロセスが繰り返される。
制御論理回路1570は、補助メモリユニット1514内のセル1540を所望の仕方でメインメモリユニット1512内のセル1520と組み合わせることができることは理解されるであろう。例えば、マスクオペレーションを実行して、補助メモリユニット1514内の複数のセル1540のうちのそれぞれのセルの論理値をメインメモリユニット1512内のセルの関連付けられている集合内の複数のセル1520のうちのそれぞれのセルの論理値と個別に論理的演算(例えば、ANDオペレーション、ORオペレーション、XORオペレーションなど)で組み合わせて、論理値の新しい集合を生成することができる。このようにして、補助メモリセル1514内のセル1540は、メインメモリユニット1512内のセル1520の集合に対するマスクとして使用することができる。不揮発性メモリデバイス内のメモリ要素の不要な書込みを防止するために、このようなマスクオペレーションは不揮発性メモリデバイス内の仮想ページバッファに情報を転送する際に役立ちうる。
その後の書込みオペレーションは、メインメモリユニットセルの他の集合および補助メモリユニット1514内のそれに対応するセル1540に同様に影響を及ぼす。メインメモリユニット1512内の与えられたセルが、「有効」、「新鮮」、または「マスクワーシーでない」と(補助メモリユニット1514内の対応するセルの論理値によって)みなされる場合に、これは、次のプリセットオペレーションが実行されるまで、他のデータで書き換えられるとしても「有効」、「新鮮」、または「マスクワーシーでない」とみなされ続ける可能性がある。あるいは、ステータスは、書き換えられると直ちに第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)に戻すことができる。
メインメモリユニット1512および補助メモリユニット1514は、制御論理回路1570の制御の下にある独立したエンティティとして実装されうることは理解されるであろう。したがって、例えば、メインメモリユニット1512および補助メモリユニット1514のカスタム定義を行うために、別のコンパイラルーチンを書くことができる。これにより、メインメモリユニット1512および補助メモリユニット1514の次元性を、補助ユニットセルに対応するそれぞれの集合内のメインメモリユニットセルの数などのパラメータに関係なく、独立に選択することが可能になる。
他の実施形態では、メインメモリユニットおよび補助メモリユニットを備える単一のメモリ構造を密相互接続コンポーネントとして定義することが可能であり、これは半導体チップの占有面積の節約をもたらしうる。そこで、図17を参照すると、これは、それぞれ行の数は同じであるが、列の数が異なることがある前述のメインメモリユニット1512および補助メモリユニット1704を備える半導体デバイス1700を示している。図21Bを参照すると、本発明の特定の非限定的な実施形態により、半導体デバイス1700をシステム810に組み込むことができることがわかる。システム810は、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)であってもよいが、ほかに非限定的な例をいくつか挙げることもできる。
例示することのみを目的として構成された、例示されている実施形態では、メインメモリユニット1512はセルを4行、6列に並べたものであり、補助メモリユニット1704はセルを4行、2列に並べたものであり、補助メモリユニット1704内のそれぞれのセルは、メインメモリユニット1512内の3つのセルの集合に関連付けられている。他の例では、補助メモリユニット1704内の1ビット分の情報は、メインメモリユニット1512内の1バイト分の情報に対するステータス情報(例えば、有効性、新鮮度、マスクワーシネスなど)を表す。しかし、補助ユニットセルに関連付けられている集合内のメインメモリユニットセルの数または行もしくは列の数に対する制限は特にないことは理解されるであろう。
行の数が同じであるという事実から、複数の共有されるワード線1712が備えられ、ワード線1712はメインメモリユニット1512と補助メモリユニット1704との間で共有される。つまり、複数のワード線1712のうちの与えられた1つのワード線が、特定の補助メモリユニットセルを含む補助メモリユニットセルの与えられた行に接続されている場合、これは、その特定の補助メモリユニットセルに対応するメインメモリユニットセルの集合を含むメインメモリユニットセルの行にも接続されている。
図17の実施形態において、行デコーダ回路1746は、ワード線のただ1つの集合、つまり、メインメモリユニット1512と補助メモリユニット1704との間で共有されるワード線1712を制御するために用意されている。特に、メインメモリユニット1512または補助メモリユニット1704の特定のセルに対し読み書きするときに、その特定のセルが配置されている行に接続されているワード線が行デコーダ回路1746によって選択される。行デコーダ回路1746は、通常オペレーションモードとプリセットオペレーションモードとで動作可能である。通常オペレーションモードでは、行デコーダ回路1746は、複数のワード線1712のうちから個別の1つのワード線を選択する。プリセットオペレーションモードでは、行デコーダ回路1746は、複数のワード線1712内の2つまたは複数のワード線からなるグループを一緒に選択する。行デコーダ回路1746が動作する特定のモード、さらには読み書きされるセルを含む1つまたは複数の行の識別は、制御論理回路1770によって制御される。
半導体デバイス1700は、それぞれがメインメモリユニット1512のセルの各列に接続されている複数のメインビット線1724およびそれぞれが補助メモリユニット1704のセルの各列に接続されている複数の補助ビット線1744も備える。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512(または補助メモリユニット1704)内で使用される場合、メインメモリユニットセル(または補助メモリユニットセル)のそれぞれは、メインビット線1724(または補助ビット線1744)の対に接続されることに留意されたい。ビット線制御回路1728は、メインビット線1724および補助ビット線1744の制御用に備えられている。ビット線制御回路1728のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1728は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512(または補助メモリユニット1704)の選択された列に接続されているメインビット線1724(または補助ビット線1744)を駆動する構成をとる。メインメモリユニット1512および補助メモリユニット1704のうちの一方または両方からの複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1770によって与えられる。補助メモリユニット1704の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1770によって同様に識別される。
オペレーション中、制御論理回路1770は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセル(つまり、メインメモリユニット1512内のセル)のステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット1704内の対応するセルに関連付けられる。補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット1514から読み出すことによってメインメモリユニット1704内の異なるセルのステータスを確定することができることが理解されるであろう。補助メモリユニット1704内のセルのそれぞれによって表されるメインメモリユニット1512のビットの数は、3または他の任意の特定の値に制限されないことを理解されたい。
プリセットコマンドを受け取ったことに対する応答として、制御論理回路1770は、補助メモリユニット1704上でプリセットオペレーションを実行する。プリセットオペレーションの目的は、補助メモリユニット1704内のセルのそれぞれに、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルの対応する集合を示す特定の論理状態(例えば、論理「1」)を取得させることである。そこで、制御論理回路1770は、行デコーダ回路1746への補助メモリユニット1704の2つまたはそれ以上の行のグループを識別し、行デコーダ回路1746を前述のプリセットオペレーションモードにするが、それにより、2つまたはそれ以上の識別された行に対応するワード線のグループの選択が行われる。行デコーダ回路1546が、プリセットオペレーションモードにされたときにワード線1712のすべてを自動的に選択するように構成されている場合、行デコーダ回路1746への2つまたはそれ以上の行のグループを明示的に識別する必要はないが、それは、その識別が行デコーダ回路1746をプリセットオペレーションモードにする活動によって暗黙のうちに行われるからである。
行デコーダ回路1746をプリセットオペレーションモードにすると、制御論理回路1770は、ビット線制御回路1748を制御して、最終的には補助セル1540のそれぞれを特定の論理状態(この場合には、論理「1」)に設定する。一例において、行デコーダ回路1746の動作を通じて多数のワード線1712が一緒に選択されていると仮定すると、単一の列に対する補助ビット線1744は、選択されているワード線に接続されている、その列内のすべてのセルを論理「1」に同時に設定するように制御論理回路1770によって制御されうる。次いで、このプロセスは、次の列について繰り返され、次々に同様に繰り返されてゆく。他の例では、複数の列に対する補助ビット線1744は、選択されているワード線に接続されている、それらの列のそれぞれの中のすべてのセルを論理「1」に同時に設定するように制御されうる。
一緒に接続されているワード線の数が、ワード線1712のすべてより少ない場合、前述のビット線制御プロセスは、ワード線の新しい集合について繰り返される。最終的に、補助メモリユニット1704内のすべてのセルは、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルを示す特定の論理状態(この場合、論理「1」)を取得しており、プリセットオペレーションは、完了であると言われる。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路1770は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のメモリユニットセルによって表され、したがって、特定のワード線およびメインビット線の特定の対に関連付けられる。制御論理回路1770は、行デコーダ回路1746への特定の行を識別する。制御論理回路1770は、行デコーダ回路1746を通常オペレーションモードにするが、その結果、上述の特定のワード線が選択されることになる。次いで、制御論理回路1770は、メインビット線1724の特定の対が特定のセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1728を制御する。それに加えて、制御論理回路1770は、書き込まれた特定のメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(例えば、「有効」、「新鮮」、「マスクワーシーでない」など)を有するデータを示す異なる論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。これは、同じワード線が選択された状態にある間に、特定のメインメモリユニットセルの特定の列に対応する補助ビット線の対を決定することによって行われる。次いで、制御論理回路1770は、メインメモリユニットセルの対応する集合が特定のメインメモリユニットセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路1748を制御する。同じワード線は選択されたままであるため、本質的ではないが、ビット線制御回路1748は、メインビット線1724の対および補助ビット線1744の関連する対を同時に(または実質的に同時に)制御し、これにより、メインメモリユニット1512への書込みと補助メモリユニット1704への書込みが同時に行われることは理解されるであろう。
次いで、上述のプロセスは、その後書き込まれるメインメモリユニット1512内の他のセル、さらには補助メモリユニット1704内の対応するセルについて繰り返される。
制御論理回路1770は、補助メモリユニット1704内のセルを所望の仕方でメインメモリユニット1512内のセル1520と組み合わせることができることは理解されるであろう。例えば、マスクオペレーションを実行して、補助メモリユニット1704内の複数のセルのうちのそれぞれのセルの論理値をメインメモリユニット1512内のセルの関連付けられている集合内の複数のセル1520のうちのそれぞれのセルの論理値と個別に論理的演算(例えば、ANDオペレーション、ORオペレーション、XORオペレーションなど)で組み合わせて、論理値の新しい集合を生成することができる。このようにして、補助メモリセル1704内のセルは、メインメモリユニット1512内のセル1520の集合に対するマスクとして使用することができる。不揮発性メモリデバイス内のメモリ要素の不要な書込みを防止するために、このようなマスクオペレーションは不揮発性メモリデバイス内の仮想ページバッファに情報を転送する際に役立ちうる。
他の特定の非限定的な実施形態によれば、補助メモリユニットは、メインメモリユニットより少ないワード線を有する。特に、図18を参照すると、そこには、前述のメインメモリユニット1512および補助メモリユニット1804を伴う半導体デバイス1800が示されている。図21Cを参照すると、本発明の特定の非限定的な実施形態により、半導体デバイス1800をシステム820に組み込むことができることがわかる。システム820は、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)であってもよいが、ほかに非限定的な例をいくつか挙げることもできる。
メインメモリユニット1512はセルを4行、6列に並べたものであり、補助メモリユニット1804はセルを2行、4列に並べたものであり、補助メモリユニット1804内のそれぞれのセルは、メインメモリユニット1512内の3つのセルの集合に関連付けられている。他の例では、補助メモリユニット1804内の1ビット分の情報は、メインメモリユニット1512内の1バイト分の情報に対するステータス情報(例えば、有効性、新鮮度、マスクワーシネスなど)を表す。一般的に言えば、メインメモリユニット1512はセルをN1行、M1列に並べたものであり、補助メモリユニット1804はセルをN2行、M2列に並べたものであり、補助メモリユニット1804内のそれぞれのセルは、メインメモリユニット1512内のZ個のセルの集合に関連付けられるが、ただし、Zは1以上である。この特定の非限定的な実施形態の特徴は、N2がN1より小さい、つまり、補助メモリユニット1804は、メインメモリユニット1512より少ない行を有するが、補助メモリユニット1804内の列の数M2は、M1/Zより大きいという点である。そのほかの点では、M1、N1、M2、N2、またはZの値に対し特に制限はない。
半導体デバイス1800は、前述の複数のワード線1522をさらに備え、それぞれのワード線はメインメモリユニット1512のセルの各行に接続されている。行デコーダ回路1526は、ワード線1522の制御用に備えられている。特に、特定のメインメモリユニットセルに対し読み書きするときに、その特定のメインメモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1526によって選択される。読み書きされるセルを含む行の識別は、制御論理回路1870によって与えられる。
半導体デバイス1800は、前述の複数のワード線1524も備え、それぞれのワード線はメインメモリユニット1512のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、メインメモリユニットセルのそれぞれは、回路1524の対に接続されることに留意されたい。ビット線制御回路152は、回路1524の制御用に備えられている。ビット線制御回路152のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1870によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1870によって同様に識別される。
半導体デバイス1800は、複数のワード線1842をさらに備え、それぞれのワード線は補助メモリユニット1804のセルの各行に接続されている。行デコーダ回路1846は、ワード線1842の制御用に備えられている。特に、特定の補助メモリユニットセルに対し読み書きするときに、その特定の補助メモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1846によって選択される。行デコーダ回路1846は、複数のワード線1842のうちから個別の1つのワード線を選択するように動作可能である。
半導体デバイス1800は、複数のビット線1844をさらに備え、それぞれのビット線は補助メモリユニット1804のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、補助メモリユニット1804内で使用される場合、複数のビット線1844のうちの2つのビット線は、それぞれの列に接続されることに留意されたい。ビット線制御回路1848は、ビット線1844の制御用に備えられている。ビット線制御回路1848のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1848は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるように補助メモリユニット1804の選択された列に接続されているビット線1844を駆動する構成をとる。補助メモリユニット1804の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1870によって与えられる。補助メモリユニット1804の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1870によって同様に識別される。
オペレーション中、制御論理回路1870は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセルのステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット1804内の対応するセルに関連付けられる。次いで、補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット1804から読み出すことによってメインメモリユニット1512内の異なるセルのステータスを確定することができることが理解されるであろう。複数の補助メモリユニットセルのうちの与えられた1つの補助メモリユニットセルによってそれぞれ表される集合内のメインメモリユニット1512のセルの数は、3または他の任意の特定の値に制限されないことを理解されたい。
プリセットコマンドを受け取ったことに対する応答として、制御論理回路1870は、補助メモリユニット1804上でプリセットオペレーションを実行する。プリセットオペレーションの目的は、補助メモリユニット1804内のセルのそれぞれに、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルの対応する集合を示す特定の論理状態(例えば、論理「1」)を取得させることである。そこで、制御論理回路1870は、行デコーダ回路1846への補助メモリユニット1804の第1の行を識別し、その結果として、識別された行に対応する複数のワード線1842のうちの特定の1つのワード線が選択される。次いで、制御論理回路1870は、ビット線制御回路1848を制御して、特定のワード線に接続されているそれぞれの補助メモリユニットセルを特定の論理状態(この場合には、論理「1」)に設定する。一例では、ビット線1844は、列毎に、または一度に複数の列について、またはすべて同時に、制御論理回路1870によって制御されうる。次いで、これは、補助メモリユニット1804内のすべてのセルが第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルを示す特定の論理状態(この場合、論理「1」)を取得してしまうまで補助メモリユニット1804のすべての行について繰り返される。この時点で、プリセットオペレーションは、完了していると言われる。N2<N1およびM2>M1/Zなので、プリセットオペレーションの際に通過する補助メモリユニット1804の行は少なく、これにより、プリセットオペレーションが高速化されうることに留意されたい。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路1870は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のセルによって表され、したがって、特定のワード線およびビット線の特定の対に関連付けられる。制御論理回路1870は、行デコーダ回路1526への特定の行を識別する。次いで、制御論理回路1870は、ビット線の特定の対が特定のメインメモリユニットセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1528を制御する。その後書き込まれる他のメインメモリユニットセルについて、回路1524およびワード線1522のさらなる制御が実行される。
これらのメインメモリユニットセルのステータスの変化を記録するために、制御論理回路1870は、書き込まれたメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(すでに取得されている第1の特定のステータスではなく)を有するデータを示す論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。そこで、制御論理回路1870は、メインメモリユニットセルの対応する集合が上述の開始アドレスのところの特定のセルを含む補助メモリユニットセルの特定の行および特定の列を決定する。制御論理回路1870は、行デコーダ回路1846への特定の行を識別し、その結果、補助メモリユニット1804内の複数のワード線1842のうちの特定の1つのワード線が選択される。次いで、制御論理回路1870は、特定の列に対応するビット線の特定の対が、メインメモリユニットセルの対応する集合が開始アドレスのところの特定のセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路1848を制御する。こうして、メインメモリユニットセルのこの対応する集合のステータスの変化が記録され、メインメモリユニット内のセルの対応する集合がさらに書き込まれた他の補助メモリユニットセルについてもこのプロセスが繰り返される。
制御論理回路1870は、補助メモリユニット1804内のセルを所望の仕方でメインメモリユニット1512内のセル1520と組み合わせることができることは理解されるであろう。例えば、マスクオペレーションを実行して、補助メモリユニット1804内の複数のセルのうちのそれぞれのセルの論理値をメインメモリユニット1512内のセルの関連付けられている集合内の複数のセル1520のうちのそれぞれのセルの論理値と個別に論理的演算(例えば、ANDオペレーション、ORオペレーション、XORオペレーションなど)で組み合わせて、論理値の新しい集合を生成することができる。このようにして、補助メモリセル1804内のセル1804は、メインメモリユニット1512内のセル1520の集合に対するマスクとして使用することができる。不揮発性メモリデバイス内のメモリ要素の不要な書込みを防止するために、このようなマスクオペレーションは不揮発性メモリデバイス内の仮想ページバッファに情報を転送する際に役立ちうる。
他の特定の非限定的な実施形態によれば、補助メモリユニットは、独立して制御することが可能な複数のサブユニットを備える。特に、図19を参照すると、そこには、前述のメインメモリユニット1512および補助メモリユニット1904を伴う半導体デバイス1900が示されている。図21Dを参照すると、本発明の特定の非限定的な実施形態により、半導体デバイス1900をシステム830に組み込むことができることがわかる。システム830は、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)であってもよいが、ほかに非限定的な例をいくつか挙げることもできる。
メインメモリユニット1512は、セルを4行、6列に並べたものであり、補助メモリユニット1904は、2つのサブユニット1906A、1906Bを含み、それぞれのサブユニットはセルを2行、2列に並べたものである。しかし、サブユニットの個数は多くてもよく、またすべて同じ次元でなくてもよいことは理解されるであろう。また、例示することを目的として、サブユニット1906A、1906Bのそれぞれにおけるそれぞれのセルは、メインメモリユニット1512内の3つのセルの集合に関連付けられている。他の例では、補助メモリユニット1904内の1ビット分の情報は、メインメモリユニット1512内の1バイト分の情報に対するステータス情報(例えば、有効性、新鮮度、マスクワーシネスなど)を表す。しかし、サブユニット1906A、1906Bの個別のセルに関連付けられている集合内のメインメモリユニットセルの数または行もしくは列の数に対する制限は特にないことは理解されるであろう。
半導体デバイス1900は、前述の複数のワード線1522をさらに備え、それぞれのワード線はメインメモリユニット1512のセルの各行に接続されている。行デコーダ回路1526は、ワード線1522の制御用に備えられている。特に、特定のメインメモリユニットセルに対し読み書きするときに、その特定のメインメモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1526によって選択される。読み書きされるセルを含む行の識別は、制御論理回路1970によって与えられる。
半導体デバイス1900は、前述の複数のワード線1524も備え、それぞれのワード線はメインメモリユニット1512のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、複数の回路1524のうちの2つの回路は、それぞれの列に接続されることに留意されたい。ビット線制御回路1528は、回路1524の制御用に備えられている。ビット線制御回路1528のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1970によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1970によって同様に識別される。
半導体デバイス1900は、複数のワード線1942Aをさらに備え、それぞれのワード線はサブユニット1906Aのセルの各行に接続されている。行デコーダ回路1946Aは、ワード線1942Aの制御用に備えられている。特に、サブユニット1906A内の特定の補助メモリユニットセルに対し読み書きするときに、その特定の補助メモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1946Aによって選択される。行デコーダ回路1946Aは、複数のワード線1942Aのうちから個別の1つのワード線を選択するように動作可能である。
同様に、半導体デバイス1900は、複数のワード線1942Bをさらに備え、それぞれのワード線はサブユニット1906Bのセルの各行に接続されている。行デコーダ回路1946Bは、ワード線1942Bの制御用に備えられている。特に、サブユニット1906B内の特定の補助メモリユニットセルに対し読み書きするときに、その特定の補助メモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1946Bによって選択される。行デコーダ回路1946Bは、複数のワード線1942Bのうちから個別の1つのワード線を選択するように動作可能である。
半導体デバイス1900は、複数のビット線1944をさらに備え、それぞれのビット線はサブユニット1906Aのセルの各列に接続されている。この非限定的な実施形態によれば、ビット線1944のそれぞれもサブユニット1906Aのセルの各列に接続される。図16に示されているタイプのシングルポートセルが、補助メモリユニット1904内で使用される場合、複数のビット線1944のうちの2つのビット線は、セルの2つの列のそれぞれに接続され、一方の列はサブユニット1906Aにあり、その列と対になる列はサブユニット1906Bにあることに留意されたい。したがって、ビット線1944は複数のサブユニットにまたがっていると言うことができる。ビット線制御回路1948は、ビット線1944の制御用に備えられている。ビット線制御回路1948のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1948は、選択されたワード線に接続されている列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにサブユニット1906Aの選択された列(およびこれと対になる、サブユニット1906B内の列)に接続されているビット線1944を駆動する構成をとる。サブユニット1906Aの複数の列は、同時に、または順次選択することができるが、その対となる、サブユニット1906B内の列も一緒に選択することができることは理解されるであろう。サブユニット1906A内の選択された1つまたは複数の列(およびその対となる、サブユニット1906B内の1つまたは複数の列)の識別、さらには書き込まれるデータの値は、制御論理回路1970によって与えられる。サブユニット1906Aの1つまたは複数の列(およびその対となる、サブユニット1906B内の1つまたは複数の列)は、読出しオペレーションにおいて制御論理回路1970によって同様に識別される。
オペレーション中、制御論理回路1970は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセルのステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット1904のサブユニット1906A、1906Bのうちの一方のサブユニット内の対応するセルに関連付けられる。次いで、補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット1904から読み出すことによってメインメモリユニット1512内の異なるセルのステータスを確定することができることは理解されるであろう。複数の補助メモリユニットセルのうちの与えられた1つの補助メモリユニットセルによってそれぞれ表される集合内のメインメモリユニット1512のセルの数は、3または他の任意の特定の値に制限されないことを理解されたい。
プリセットコマンドを受け取ったことに対する応答として、制御論理回路1970は、補助メモリユニット1904上でプリセットオペレーションを実行する。プリセットオペレーションの目的は、サブユニット1906A、1906B内のセルのそれぞれに、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルの対応する集合を示す特定の論理状態(例えば、論理「1」)を取得させることである。そこで、制御論理回路1970は、行デコーダ回路1946Aへのサブユニット1906Aの第1の行および行デコーダ回路1946Bへのサブユニット1906Bの第1の行を識別し、その結果、複数のワード線1942Aのうちの1つのワード線と複数のワード線1942Bのうちの1つのワード線からなるワード線の対が選択される。次いで、制御論理回路1970は、ビット線制御回路1948を制御して、ワード線の特定の対に接続されているそれぞれの補助メモリユニットセルを特定の論理状態(この場合には、論理「1」)に同時に設定する。一例では、ビット線1944は、列毎に、または一度に複数の列について、またはすべて同時に、制御論理回路1970によって制御されうる。次いで、これは、補助メモリユニット1904内のすべてのセルが第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルを示す特定の論理状態(この場合、論理「1」)を取得してしまうまでサブユニット1906A、1906B内の行の対について次々に繰り返される。この時点で、プリセットオペレーションは、完了していると言われる。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路1970は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のセルによって表され、したがって、特定のワード線およびビット線の特定の対に関連付けられる。制御論理回路1970は、行デコーダ回路1526への特定の行を識別する。次いで、制御論理回路1970は、ビット線の特定の対が特定のメインメモリユニットセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1528を制御する。その後書き込まれる他のメインメモリユニットセルについて、回路1524およびワード線1522のさらなる制御が実行される。
これらのメインメモリユニットセルのステータスの変化を記録するために、制御論理回路1970は、書き込まれたメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(すでに取得されている第1の特定のステータスではなく)を有するデータを示す論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。そこで、制御論理回路1970は、メインメモリユニットセルの対応する集合が上述の開始アドレスのところの特定のセルを含む補助メモリユニットセルの特定のサブユニット、特定の行、および特定の列を決定する。特定のサブユニットが、サブユニット1906Aである場合、制御論理回路1970は、行デコーダ回路1946Aへの特定の行を識別し、その結果、サブユニット1906A内の複数のワード線1942Aのうちの特定の1つのワード線が選択される。同様にして、特定のサブユニットが、サブユニット1906Bである場合、制御論理回路1970は、行デコーダ回路1946Bへの特定の行を識別し、その結果、サブユニット1906B内の複数のワード線1942Bのうちの特定の1つのワード線が選択される。次いで、制御論理回路1970は、特定の列に対応するビット線の特定の対が、メインメモリユニットセルの対応する集合が開始アドレスのところの特定のセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路1948を制御する。こうして、メインメモリユニットセルのこの対応する集合のステータスの変化が記録され、メインメモリユニット内のセルの対応する集合が有効なデータをさらに書き込まれた他の補助メモリユニットセルについてもこのプロセスが繰り返される。
制御論理回路1970は、補助メモリユニット1904内のセルを所望の仕方でメインメモリユニット1512内のセル1520と組み合わせることができることは理解されるであろう。例えば、マスクオペレーションを実行して、補助メモリユニット1904内の複数のセルのうちのそれぞれのセルの論理値をメインメモリユニット1512内のセルの関連付けられている集合内の複数のセル1520のうちのそれぞれのセルの論理値と個別に論理的演算(例えば、ANDオペレーション、ORオペレーション、XORオペレーションなど)で組み合わせて、論理値の新しい集合を生成することができる。このようにして、補助メモリセル1904内のセルは、メインメモリユニット1512内のセル1520の集合に対するマスクとして使用することができる。不揮発性メモリデバイス内のメモリ要素の不要な書込みを防止するために、このようなマスクオペレーションは不揮発性メモリデバイス内の仮想ページバッファに情報を転送する際に役立ちうる。
他の特定の非限定的な実施形態によれば、補助メモリユニットは、デュアルポートSRAMセルを使用するが、メインメモリユニットは、シングルポートSRAMセルを使用する。 図11を参照すると、デュアルポートSRAMセルが示されており、これは図16のシングルポートSRAMセルとの類似点をいくつか有するが、図16のトランジスタ1630の代わりに2つのトランジスタと図16のトランジスタ1635の代わりに他の2つのトランジスタを備えている。また、デュアルポートSRAMセルは、2つのワード線、つまり、Aワード線WL1およびBワード線WL2を備える。さらに、デュアルポートSRAMセルは、ビット線の2つの対、つまり、ビット線BL1-、BL1+のA対およびビット線BL2-、BL2+のB対を備える。
デュアルポートSRAMセルは、Aワード線WL1およびビット線BL1-、BL1+のA対を制御することによって、またはBワード線WL2およびビット線BL2-、BL2+のB対を制御することによって読み書きできる。Aワード線WL1は、読出しおよび書込みの両方のオペレーションに対してHIGHレベル(つまり、「選択」または「アサート」)に設定される。
読出しオペレーションでは、A対ビット線BL1+、BL1-は、高レベルまでプリチャージされた後に感知される。ビット線BL1+、BL1-のA対のうちの一方がHIGH値になっても、セル内の値に変化はなく、その代わりに、セルはビット線BL1+、BL1-のA対の一方をLOWレベルに引く。ビット線BL1+、BL1-のA対のうちのどれがLOWレベルに引かれるかに応じて、これは論理「0」または論理「1」のいずれかとして解釈される。書込みオペレーションでは、ビット線BL1+、BL1-のA対の一方が強制的にLOWレベルにされ、他方は強制的にHIGHレベルにされる。LOWレベル値は、LOWレベルに強制されたビット線に接続されているPMOSトランジスタに過剰な電力を供給し、その結果セルに書込みが行われる。ビット線BL1+、BL1-のA対のうちのどれがLOWレベルに強制されたかに応じて、これは論理「0」または論理「1」のいずれかをセルに書き込む。
同様に、Bワード線WL2は、読出しおよび書込みの両方のオペレーションに対してHIGHレベル(つまり、「選択」または「アサート」)に設定される。読出しオペレーションでは、B対ビット線BL2+、BL2-は、高レベルまでプリチャージされた後に感知される。ビット線BL2+、BL2-のB対のうちの一方がHIGH値になっても、セル内の値に変化はなく、その代わりに、セルはビット線BL2+、BL2-のB対の一方をLOWレベルに引く。ビット線BL2+、BL2-のB対のうちのどれがLOWレベルに引かれるかに応じて、これは論理「0」または論理「1」のいずれかとして解釈される。書込みオペレーションでは、ビット線BL2+、BL2-のB対の一方が強制的にLOWレベルにされ、他方は強制的にHIGHレベルにされる。LOWレベル値は、LOWレベルに強制されたビット線に接続されているPMOSトランジスタに過剰な電力を供給し、その結果セルに書込みが行われる。ビット線BL2+、BL2-のB対のうちのどれがLOWレベルに強制されたかに応じて、これは論理「0」または論理「1」のいずれかをセルに書き込む。
次に、図20を参照すると、そこには、前述のメインメモリユニット1512およびデュアルポートSRAMセルを使用する補助メモリユニット2004を伴う半導体デバイス2000が示されている。図21Eを参照すると、本発明の特定の非限定的な実施形態により、半導体デバイス2000をシステム840に組み込むことができることがわかる。システム840は、例えば、ASIC(特定用途向け集積回路)またはSoC(システムオンチップ)であってもよいが、ほかに非限定的な例をいくつか挙げることもできる。
メインメモリユニット1512はセルを4行、6列に並べたものであり、補助メモリユニット2004はセルを4行、2列に並べたものであり、補助メモリユニット2004内のそれぞれのセルは、メインメモリユニット1512内の3つのセルの集合に関連付けられている。他の例では、補助メモリユニット2004内の1ビット分の情報は、メインメモリユニット1512内の1バイト分の情報に対するステータス情報(例えば、有効性、新鮮度、マスクワーシネスなど)を表す。しかし、補助メモリユニット2004の個別のセルに関連付けられている集合内のメインメモリユニットセルの数または行もしくは列の数に対する制限は特にないことは理解されるであろう。
半導体デバイス2000は、前述の複数のワード線1522をさらに備え、それぞれのワード線はメインメモリユニット1512のセルの各行に接続されている。行デコーダ回路1526は、ワード線1522の制御用に備えられている。特に、特定のメインメモリユニットセルに対し読み書きするときに、その特定のメインメモリユニットセルが配置されている行に接続されているワード線が行デコーダ回路1526によって選択される。読み書きされるセルを含む行の識別は、制御論理回路2070によって与えられる。
半導体デバイス2000は、前述の複数のワード線1524も備え、それぞれのワード線はメインメモリユニット1512のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、複数の回路1524のうちの2つの回路は、それぞれの列に接続されることに留意されたい。ビット線制御回路152は、回路1524の制御用に備えられている。ビット線制御回路152のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路2070によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路2070によって同様に識別される。
半導体デバイス2000は、複数のワード線2042をさらに備える。図11に示されているタイプのデュアルポートセルが、補助メモリユニット2004内で使用される場合、ワード線2042は、補助メモリユニット2004のセルの各行に対で接続されることに留意されたい。したがって、ワード線2042の第1の対は、補助メモリユニット2004のセルの第1の行に接続され、ワード線2042の第2の対は、第2の行に接続され、というように続く。ワード線のそれぞれの対の中で、Aワード線およびBワード線を識別することができる。行デコーダ回路2046は、それぞれの行についてAワード線およびBワード線を含む、ワード線2042の制御用に備えられている。特に、特定の補助メモリユニットセルに対し読み書きするときに、その特定の補助メモリユニットセルが配置されている行に対するAワード線およびBワード線が行デコーダ回路2046によって選択される。行デコーダ回路2046は、1つのAワード線と1つのBワード線を選択するように動作可能であるが、これは両方とも同じ行内にあってもよいが、同じ行内にある必要はない。したがって、行デコーダ回路2046は、2つの異なる行を実際に選択することができ、これにより、2つの別々の行にあるセルを読み書きすることができるか、または他の行にあるセルに書込みが行われている間に一方の行にあるセルから読み出すことができる。
半導体デバイス2000は、複数のビット線2044をさらに備え、それぞれのビット線は補助メモリユニット2004のセルの各列に接続されている。図11に示されているタイプのデュアルポートセルが補助メモリユニット2004内で使用される場合、補助メモリユニットセルのそれぞれは、ビット線のA対およびビット線のB対を含む、ビット線2044の2つの対に接続されることに留意されたい。ビット線制御回路2048は、ビット線のA対およびビット線のB対を含む、ビット線2044の制御用に備えられている。与えられたセルに接続されているビット線のA対は、その与えられたセルが配置されている行に対するAワード線に関連付けられる。同様に、与えられたセルに接続されているビット線のB対は、その与えられたセルが配置されている行に対するBワード線に関連付けられる。Aワード線が選択されている間に与えられたセルに対するビット線のA対のビット線制御回路2048による制御で、その与えられたセルに対する読み書きを行うことができる。同様に、Bワード線が選択されている間に与えられたセルに対するビット線のB対のビット線制御回路2048による制御で、その与えられたセルに対する読み書きを行うことができる。
したがって、2つの行を、一方の行についてはAワード線を介して、他方の行についてはBワード線を介して選択することができ、それらの行内のセルは、ビット線のA対およびビット線のB対をそれぞれ使用して独立に読み書きすることができる。特に、異なる行内の2つの選択されたセルが与えられた場合、第1の選択されたセルは、その同じ行内にある、またたまたま、異なる行内にある第2の選択されたセルと同じ列にある、他方のセルに影響を及ぼすことなく読み書きできる。これにより、異なる行内にあるセルに独立に書き込むことができ、例えば、一方の行内のセルに、左から右へと書き込むことができ、それと同時に、他方の行内のセルに、右から左へと書き込むことができる。この例では、それぞれの行内の1つのセルのみ同時に書き込まれると仮定しているが、ビット線2048の制御によってそれぞれの行内の複数のセルに同時に書き込むことができることは理解されるであろう。したがって、例えば、一方の行内にあるセルのグループに左から右へと書き込むことができ、それと同時に、他方の行内のセルのグループに右から左へと書き込むことができる。
書き込みされるセルを含む列の識別、さらには書き込まれる実際のデータの値は、制御論理回路2070によってビット線制御回路2048に与えられる。補助メモリユニット2004の1つまたは複数の列を伴う読出しオペレーションにおいて、これらは制御論理回路2070によって同様に識別される。
オペレーション中、制御論理回路2070は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセルのステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット2004内の対応するセルに関連付けられる。次いで、補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット2004から読み出すことによってメインメモリユニット1512内の異なるセルのステータスを確定することができる。複数の補助メモリユニットセルのうちの与えられた1つの補助メモリユニットセルによってそれぞれ表される集合内のメインメモリユニット1512のセルの数は、3または他の任意の特定の値に制限されないことは理解されるであろう。
プリセットコマンドを受け取ったことに対する応答として、制御論理回路2070は、補助メモリユニット2004上でプリセットオペレーションを実行する。プリセットオペレーションの目的は、補助メモリユニット2004内のセルのそれぞれに、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルの対応する集合を示す特定の論理状態(例えば、論理「1」)を取得させることである。そこで、制御論理回路2070は、行デコーダ回路2046への補助メモリユニット2004の第1の行および第2の行を識別し、その結果として、第1の行のAワード線および第2の行のBワード線が選択される。次いで、制御論理回路2070は、ビット線制御回路2048を制御して、選択されたAワード線および選択されたBワード線に接続されている補助メモリユニットセルを特定の論理状態(この場合には、論理「1」)に設定する。特に、ビット線制御回路2048は、ビット線のA対を制御して、第1の行内のセルへの書込みを行い、ビット線のB対も制御して、第2の行内のセルへの書込みを行う。補助メモリユニット2004内のすべてのセルが、第1の特定のステータス(例えば、「有効でない」、「陳腐化」、「マスクワーシー」など)を有するメインメモリユニット1512内のセルを示す特定の論理状態(この場合、論理「1」)を取得した後、プリセットオペレーションは、完了であると言われる。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路2070は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のセルによって表され、したがって、特定のワード線およびビット線の特定の対に関連付けられる。制御論理回路2070は、行デコーダ回路1526への特定の行を識別する。次いで、制御論理回路2070は、ビット線の特定の対が特定のメインメモリユニットセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1528を制御する。その後書き込まれる他のメインメモリユニットセルについて、回路1524およびワード線1522のさらなる制御が実行される。
これらのメインメモリユニットセルのステータスの変化を記録するために、制御論理回路2070は、書き込まれたメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(すでに取得されている第1の特定のステータスではなく)を有するデータを示す論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。そこで、制御論理回路2070は、メインメモリユニットセルの対応する集合が上述の開始アドレスのところの特定のセルを含む補助メモリユニットセルの特定の行および特定の列を決定する。次いで、制御論理回路2070は、行デコーダ回路2046への特定の行を識別し、その結果、その行のAワード線(またはBワード線)が選択される。次いで、制御論理回路2070は、特定の列に対応するビット線のA対(またはB対)が、メインメモリユニットセルの対応する集合が開始アドレスのところの特定のセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路2048を制御する。こうして、メインメモリユニットセルのこの対応する集合のステータスの変化が記録され、メインメモリユニット内のセルの対応する集合がさらに書き込まれた他の補助メモリユニットセルについてもこのプロセスが繰り返される。
制御論理回路2070は、補助メモリユニット2004内のセルを所望の仕方でメインメモリユニット1512内のセル1520と組み合わせることができることは理解されるであろう。例えば、マスクオペレーションを実行して、補助メモリユニット2004内の複数のセルのうちのそれぞれのセルの論理値をメインメモリユニット1512内のセルの関連付けられている集合内の複数のセル1520のうちのそれぞれのセルの論理値と個別に論理的演算(例えば、ANDオペレーション、ORオペレーション、XORオペレーションなど)で組み合わせて、論理値の新しい集合を生成することができる。このようにして、補助メモリセル2004内のセルは、メインメモリユニット1512内のセル1520の集合に対するマスクとして使用することができる。不揮発性メモリデバイス内のメモリ要素の不要な書込みを防止するために、このようなマスクオペレーションは不揮発性メモリデバイス内の仮想ページバッファに情報を転送する際に役立ちうる。
いくつかの実施形態では、それぞれの実施形態におけるメインメモリユニットおよび/または補助メモリユニットの全部または一部を、コンピューティングデバイス上で実行される論理合成ツールを使用して得られる低水準ハードウエア記述に基づいて製造することができることは理解されるであろう。論理合成ツールは、メインメモリユニットおよび/または補助メモリユニットの機能記述(例えば、HDL、VHDL、またはVerilogによる)を含むソースコードを読み込み、対応する機能を実装するのに適した回路の物理的実装の定義を出力するように構成される。
上述の実施例において、デバイス、要素、および回路は、簡単のため、図に示されているように互いに接続されている。本発明の実用上のアプリケーションにおいては、要素、回路などは、互いに直接接続することができる。また同様に、要素、回路などは、デバイスまたは装置のオペレーションに必要な、他の要素、回路などを通じて互いに間接的に接続することもできる。したがって、実際の構成では、デバイス、要素、および回路は、互いに直接的もしくは間接的に結合、または接続される。
説明されている実施形態のいくつかの適応形態および修正形態が形成されうる。したがって、上述の実施形態は、例示的であり、制限するものではないと考えられる。
BL1-、BL1+ ビット線
BL2-、BL2+ ビット線
WL1 Aワード線
WL2 Bワード線
Sc 制御信号
SD データ信号
SM マスク信号
SO1〜SO4 出力データ信号
10 メモリシステム
141〜144 不揮発性メモリデバイス
16 ブリッジデバイス
18 デバイス制御論理ブロック
20 メモリコア
22 デバイスページバッファ
26 制御線
28 下流データ線
29 コントローラインターフェイス制御論理ブロック
30 デバイスインターフェイス制御論理ブロック
321〜324 マネージドメモリモジュール
341〜344 制御線
361〜364 下流データ線
152 ビット線制御回路
2021、2022、2023、2024 入力データ線
2041、2042、2043、2044 アドレス線
2061、2062、2063、2064 読出し/書込み線
2081〜2084 出力データ線
2101〜2104 リセット線
212 電力監視ユニット
2141〜2144 リセット線
218 リンク
300 仮想ページバッファ
302 データ線
310 マスクバッファ
320 セレクタ
322 1ビットの制御入力
324 16データビット幅の入力
326 8データビット幅の出力
328 データ線
340 マスク論理ブロック
342 第1の入力
346 2入力論理ORモジュール
348 マスクバッファ制御論理ブロック
372 第2のアドレス成分
370 第1のアドレス成分
380 ビットアドレス指定可能レジスタ
390 データ線
402 2入力論理ORモジュール
502 デバイスページ
712 データ要素
722 データ要素
800 システム
810 システム
820 システム
830 システム
840 システム
1200 半導体メモリ回路
1202 メモリセル
1203 メモリアレイ
1204 ワード線
1206 ワード線ドライバ
1208 行デコーダ
1210 ビット線
1212 列デコーダ
1214 ビット線書込みドライバ
1216 ビット線感知増幅器
1218 コントローラ
1302 行デコーダ
1302A 第1の行デコーダ
1302B 第2の行デコーダ
1304 行信号
1304A 行信号
1304B 行信号
1305 列信号
1306 ワード線
1306A、1306B ワード線
1308 プリセット制御信号
1308A、1308B プリセット制御信号
1310 行復号化回路
1312 第1の入力
1312A、1312B 第1の入力
1314 論理「OR」ゲート
1314A、1314B 論理「OR」ゲート
1315 ワード線選択信号
1316 第2の入力
1316A、1316B 第2の入力
1358 マスタープリセット制御信号
1380A ワード線
1380B ワード線
1400 システム
1500 半導体デバイス
1512 メインメモリユニット
1514 補助メモリユニット
1520 セル
1522 ワード線
1524 回路
1526 行デコーダ回路
1528 ビット線制御回路
1540 セル
1542 ワード線
1546 行デコーダ回路
1548 ビット線制御回路
1570 制御論理回路
1602 シングルポートSRAMセル
1602W ワード線
1602B+、1602B- ビット線
1602W ワード線
1630、1631、1632、1633、1634、1635 MOSトランジスタ
1700 半導体デバイス
1704 補助メモリユニット
1712 ワード線
1724 メインビット線
1728 ビット線制御回路
1744 補助ビット線
1746 行デコーダ回路
1748 ヒット線制御回路
1770 制御論理回路
1800 半導体デバイス
1804 補助メモリユニット
1842 ワード線
1844 ビット線
1846 行デコーダ回路
1848 ビット線制御回路
1870 制御論理回路
1900 半導体デバイス
1904 補助メモリユニット
1906A、1906B サブユニット
1942A ワード線
1942B ワード線
1944 ビット線
1946A 行デコーダ回路
1946B 行デコーダ回路
1948 ビット線制御回路
2000 半導体デバイス
2004 補助メモリユニット
2042 ワード線
2044 ビット線
2046 行デコーダ回路
2048 ビット線制御回路
2070 制御論理回路
マネージドメモリモジュール321〜324のそれぞれは、デバイスインターフェイス制御論理ブロック30に、出力データ線2081〜2084の各集合によって伝送される各出力データ信号SO1〜SO4を供給する。それに加えて、コントローラインターフェイス制御論理ブロック29は、デバイスインターフェイス制御論理ブロック30にリンク218によって伝送される制御信号Scを供給する。メモリコントローラ12から受け取ったカスタマイズコマンドに基づいてコントローラインターフェイス制御論理ブロック29によって形成される制御信号Scは、デバイスインターフェイス制御論理ブロック30に対して、マネージドメモリモジュール321〜324のうちの特定の1つのマネージドモジュールから受け取った出力データ信号を不揮発性メモリデバイス14 1 〜14 4 のうちの対応する1つの不揮発性メモリデバイスに向けて転送する時期であることを指示する。
選択されたプレーンに関連付けられているデータが出力データ線2081の集合にそってデバイスインターフェイス制御論理ブロック30に受け渡されるようにするために、セレクタ320が備えられている。この場合、8ビットワードと2つのプレーンが使用されており、セレクタ320は、16データビット幅の入力324、8データビット幅の出力326、および1ビットの制御入力322を有する。制御入力322は、入力324において16ビット信号の8つのビットの第1のグループまたは8つのビットの第2のグループのいずれかの選択を出力326で行えるように備えられている。制御入力322は、アドレス線2041の1つによって伝送される信号、つまり、前述の所定のビットを占有するビットを符号化した信号を供給される。セレクタ320の出力326は、データ線328の集合にそってマスク論理ブロック340の第1の入力342に接続される。
論理ORモジュール402の出力は、出力データ線2081の集合にそってデバイスインターフェイス制御論理ブロック30に供給される出力データ信号SO1である。出力データ信号SO1は、マスク信号SMが論理1に設定されたときにすべて論理1に設定されるが、これは、マスク信号SMが論理0に設定されたときにデータ信号SDを反映することは理解されるであろう。もちろん、マスク信号SMは、アドレス線2041の集合によって伝送されるアドレス信号によって符号化されたメモリロケーションにおける仮想ページバッファ300内のデータ要素が最後にマスクバッファ310がクリアされた以降に書き込まれた場合にのみ、論理0に設定されることに留意されたい。
図3Bは、マスクバッファ310および仮想ページバッファ300がサイズを除いて同一である個別のメモリブロックとして構成され、これにより仮想ページバッファ300がマスクバッファ310より8倍大きくなる場合を例示している。この特定の例において、仮想ページバッファ300およびマスクバッファ310内のデータ要素は、1バイト単位でインクリメントする形でのみ読み書きすることができる(本発明の例の目的に関して、単一のプレーンのみが存在すると仮定されている)。したがって、アドレス線2041の集合によって符号化されたアドレスは、仮想ページバッファ300のターゲットバイトを定義しているが、この全く同じアドレスは、マスクバッファ310のターゲットバイト内にターゲット位置を符号化する。したがって、マスクバッファ310にアクセスすることを目的として、アドレス線は2つの成分、つまり、第1のアドレス成分370 (アドレス線2041の3本以外のすべてアドレス線を含み、マスクバッファ310のターゲットバイトを指定する)、および第2のアドレス成分372(残り3本のアドレス線を含み、ターゲットバイト内のターゲット位置を指定する)に分割される。
この機能を実装する可能な方法では、図13Bに示されているように、ワード線1306Bの第1のグループに属す行復号化回路1310の出力のそれぞれを各論理「OR」ゲート1314Aの各第1の入力1312Aに供給し、各第2の入力1316Aはプリセット制御信号1308Aによって供給される。これにより、プリセット制御信号1308Aがアサートされたときに複数のワード線が選択される(つまり、ワード線1306Aの第1のグループ内のワード線)。同様に、ワード線1306Aの第2のグループに属す行復号化回路1310の出力のそれぞれは、各論理「OR」ゲート1314Bの各第1の入力1312Bに供給され、各第2の入力1316Bはプリセット制御信号1308Bによって供給される。これにより、プリセット制御信号1308Bがアサートされたときに複数のワード線が選択される(つまり、ワード線1306Bの第2のグループ内のワード線)。
オペレーション中、制御論理回路1770は、オフチップコントローラ(図示せず)などの外部エンティティから受け取ったコマンドを処理する。これらのコマンドは、とりわけ、プリセットコマンド、書込みコマンド、および読出しコマンドを含むことができる。非限定的な例では、外部エンティティから受け取ったプリセットコマンドは、メインメモリユニット1512内のデータが「陳腐化」、「マスクワーシー」(つまり、マスクの適用を必要とする)、「有効でない」などであると考えられることを示しうる。これ以降、書込みコマンドは、開始アドレスから始まる、メインメモリユニット1512内の特定のセルまたはセルのグループにデータを書き込むことを意図して外部エンティティから受け取ることができる。メインメモリユニットセル(つまり、メインメモリユニット1512内のセル)のステータス(例えば、有効または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を追跡するために、1つまたは複数のメインメモリユニットセルの集合が、補助メモリユニット1704内の対応するセルに関連付けられる。補助メモリユニットセルは、例えば3つのメインメモリユニットセルの対応する集合の特定のステータス(例えば、有効であるか、または有効でない、新鮮または陳腐化、マスクワーシーまたはマスクワーシーでないなど)を示す情報の単一ビットをそれぞれ表すことができる。したがって、与えられた時点において、外部エンティティは、補助メモリユニット1514から読み出すことによってメインメモリユニット1704内の異なるセルのステータスを確定することができることが理解されるであろう。補助メモリユニット1704内のセルのそれぞれによって表されるメインメモリユニット1512のセルの数は、3または他の任意の特定の値に制限されないことを理解されたい。
行デコーダ回路1746をプリセットオペレーションモードにすると、制御論理回路1770は、ビット線制御回路1728を制御して、最終的には補助セル1540のそれぞれを特定の論理状態(この場合には、論理「1」)に設定する。一例において、行デコーダ回路1746の動作を通じて多数のワード線1712が一緒に選択されていると仮定すると、単一の列に対する補助ビット線1744は、選択されているワード線に接続されている、その列内のすべてのセルを論理「1」に同時に設定するように制御論理回路1770によって制御されうる。次いで、このプロセスは、次の列について繰り返され、次々に同様に繰り返されてゆく。他の例では、複数の列に対する補助ビット線1744は、選択されているワード線に接続されている、それらの列のそれぞれの中のすべてのセルを論理「1」に同時に設定するように制御されうる。
この段階において、入力データをメインメモリユニット1512に書き込む動作を継続することができる。そこで、制御論理回路1770は、メインメモリユニット1512内の開始アドレスを識別することができ、開始アドレスから始まる、書き込むべきデータを格納することができる書込みコマンドを処理する。開始アドレスは、メインメモリユニット1512内の特定の行および特定の列に配置されている特定のメモリユニットセルによって表され、したがって、特定のワード線およびメインビット線の特定の対に関連付けられる。制御論理回路1770は、行デコーダ回路1746への特定の行を識別する。制御論理回路1770は、行デコーダ回路1746を通常オペレーションモードにするが、その結果、上述の特定のワード線が選択されることになる。次いで、制御論理回路1770は、メインビット線1724の特定の対が特定のセルを開始アドレスに書き込まれる入力データの値に対応する論理状態に設定するようにビット線制御回路1728を制御する。それに加えて、制御論理回路1770は、書き込まれた特定のメインメモリユニットセルに対応する補助メモリユニットセルの内容が第2の特定のステータス(例えば、「有効」、「新鮮」、「マスクワーシーでない」など)を有するデータを示す異なる論理状態(例えば、論理「0」)にトグル式に切り替えられることを保証する。これは、同じワード線が選択された状態にある間に、特定のメインメモリユニットセルの特定の列に対応する補助ビット線の対を決定することによって行われる。次いで、制御論理回路1770は、メインメモリユニットセルの対応する集合が特定のメインメモリユニットセルを含む補助メモリユニットセルを論理「0」に設定するようにビット線制御回路1728を制御する。同じワード線は選択されたままであるため、本質的ではないが、ビット線制御回路1728は、メインビット線1724の対および補助ビット線1744の関連する対を同時に(または実質的に同時に)制御し、これにより、メインメモリユニット1512への書込みと補助メモリユニット1704への書込みが同時に行われることは理解されるであろう。
半導体デバイス1800は、前述の複数のワード線1524も備え、それぞれのワード線はメインメモリユニット1512のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、メインメモリユニットセルのそれぞれは、回路1524の対に接続されることに留意されたい。ビット線制御回路1528は、回路1524の制御用に備えられている。ビット線制御回路1528のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路1870によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路1870によって同様に識別される。
半導体デバイス2000は、前述の複数のワード線1524も備え、それぞれのワード線はメインメモリユニット1512のセルの各列に接続されている。図16に示されているタイプのシングルポートセルが、メインメモリユニット1512内で使用される場合、複数の回路1524のうちの2つの回路は、それぞれの列に接続されることに留意されたい。ビット線制御回路1528は、回路1524の制御用に備えられている。ビット線制御回路1528のオペレーションは、読出しオペレーションが実行されるのか、または書込みオペレーションが実行されるのかによって異なる。書込みオペレーションでは、ビット線制御回路1528は、選択されたワード線に接続されているその列内のそれぞれのセルが書き込まれる、つまり、所望の論理状態(例えば、論理「0」または論理「1」)に設定されうるようにメインメモリユニット1512の選択された列に接続されている回路1524を駆動する構成をとる。メインメモリユニット1512の複数の列を同時にまたは順次選択することができることは理解されるであろう。選択された1つまたは複数の列の識別、さらには書き込まれるデータの値は、制御論理回路2070によって与えられる。メインメモリユニット1512の1つまたは複数の列は、読出しオペレーションにおいて制御論理回路2070によって同様に識別される。

Claims (155)

  1. 不揮発性記憶装置デバイスに入力データを転送するための半導体デバイスであって、
    複数のデータ要素を入れた仮想ページバッファと、
    複数のデータ要素を入れたマスクバッファであって、前記マスクバッファの前記データ要素のそれぞれが前記仮想ページバッファの前記データ要素のうちの各1つのデータ要素に対応する、マスクバッファと、
    制御論理回路であって、(i)トリガーを受け取った後、前記マスクバッファの前記データ要素のそれぞれを第1の論理状態に設定し、(ii)入力データが前記仮想ページバッファの前記複数のデータ要素のうちの選択されたデータ要素に書き込まれるようにし、(iii)前記仮想ページバッファの前記複数のデータ要素のうちの前記選択されたデータ要素に対応する前記マスクバッファのデータ要素が前記第1の論理状態と異なる第2の論理状態に設定されるようにするための制御論理回路と、
    前記仮想ページバッファの前記データ要素のそれぞれについて、そこから読み出されたデータを前記マスクバッファの前記複数のデータ要素のうちの前記対応する1つのデータ要素の前記論理状態と組み合わせてまとめることによってマスクされた出力データを供給するように構成されたマスク論理回路と、
    前記マスクされた出力データを前記不揮発性メモリデバイスに向けて放出するように構成された出力インターフェイスとを備える半導体デバイス。
  2. 前記半導体デバイスへの電力が確定されるか、または再確定されたときに信号を発行し、前記信号の発行の結果前記トリガーが発生するように構成された電力監視回路をさらに備える請求項1に記載の半導体デバイス。
  3. 前記出力インターフェイスは、前記マスクされた出力データを前記不揮発性メモリデバイスに向けて放出されるPAGE PROGRAMコマンドの一部として放出するようにさらに構成される請求項1に記載の半導体デバイス。
  4. 前記不揮発性メモリデバイスに向けてPAGE PROGRAMコマンドを放出するステップは、初期コマンドサイクル、少なくとも1つのアドレスサイクル、少なくとも1つのデータサイクル、および確認コマンドサイクルを発行するステップを含む請求項3に記載の半導体デバイス。
  5. 前記出力インターフェイスは、前記確認コマンドサイクルの発行後に信号を発行し、前記信号の発行の結果前記トリガーが発生するようにさらに構成される請求項4に記載の半導体デバイス。
  6. 前記仮想ページバッファの特定のデータ要素は、特定のアドレスによってアドレス指定可能であり、前記制御論理回路は、前記特定のアドレスを符号化するアドレス信号および読出し信号を供給することができ、前記仮想ページバッファは、前記アドレス信号および前記読出し信号を受信したことに応答し、これにより前記仮想ページバッファの前記特定のデータ要素の内容が読み出され、前記マスク論理回路に供給される請求項1に記載の半導体デバイス。
  7. 前記マスクバッファは、前記アドレス信号および前記読出し信号を受信したことに応答し、これにより前記仮想ページバッファの前記特定のデータ要素に対応する前記マスクバッファの前記データ要素の前記論理状態が読み出され、前記マスク論理回路に供給される請求項6に記載の半導体デバイス。
  8. セレクタをさらに備え、前記マスクバッファは、前記読出し信号および前記アドレス信号の一部を受信したことに応答し、これにより前記マスクバッファの特定のデータ要素が読み出され、前記セレクタの入力に供給される請求項6に記載の半導体デバイス。
  9. 前記セレクタは、1つの出力を有し、その入力における前記信号の一部がその出力へ向かうことを許すように構成され、前記一部は前記セレクタの前記出力における前記信号が前記仮想ページバッファの前記特定のデータ要素に対応する前記マスクバッファの前記データ要素の前記論理状態を示すように前記アドレス信号の残り部分によって指定される請求項8に記載の半導体デバイス。
  10. 前記仮想ページバッファの前記データ要素のうちの前記選択されたデータ要素は、特定のアドレスによってアドレス指定可能であり、前記制御論理回路は、前記特定のアドレスを符号化するアドレス信号および書込み信号を供給することができ、前記仮想ページバッファは、前記アドレス信号および前記書込み信号を受信したことに応答し、これにより前記入力データが前記仮想ページバッファの前記データ要素のうちの前記選択されたデータ要素に書き込まれる請求項1に記載の半導体デバイス。
  11. 前記マスクバッファは、前記アドレス信号および前記書込み信号を受信したことに応答し、これにより前記仮想ページバッファの前記特定のデータ要素に対応する前記マスクバッファの前記データ要素の前記論理状態が前記第2の論理状態に設定される請求項10に記載の半導体デバイス。
  12. 前記仮想ページバッファの前記データ要素のうちの前記選択されたデータ要素のうちの個別のデータ要素は、アドレス線の集合によって伝送される各アドレスによって識別可能である請求項1に記載の半導体デバイス。
  13. 前記仮想ページバッファの前記データ要素は、プレーンの集合として配列され、前記マスクバッファの前記データ要素は、プレーンの対応する集合として配列され、前記アドレス線で前記仮想ページバッファの前記データ要素のうちの前記選択されたデータ要素のうちの特定の1つのデータ要素を識別するときに、前記複数のアドレス線のうちの少なくとも1つのアドレス線で、前記仮想ページバッファの前記データ要素のうちの前記選択されたデータ要素のうちの前記特定の1つのデータ要素が属しているプレーンを識別する請求項12に記載の半導体デバイス。
  14. 前記仮想ページバッファおよび前記マスクバッファは、共通の集積メモリ構造の各部分を占有する請求項1に記載の半導体デバイス。
  15. 前記共通の集積メモリ構造は、スタティックランダムアクセスメモリ(SRAM)を備える請求項14に記載の半導体デバイス。
  16. 前記入力データをメモリコントローラから受け取る請求項1に記載の半導体デバイス。
  17. 前記仮想ページバッファの前記データ要素はそれぞれ、第1の数のビットを含み、前記マスクバッファの前記データ要素はそれぞれ、第2の数のビットを含み、前記第1のビットの個数は前記第2のビットの個数と同じである請求項1に記載の半導体デバイス。
  18. 前記仮想ページバッファの前記データ要素はそれぞれ、第1の数のビットを含み、前記マスクバッファの前記データ要素はそれぞれ、第2の数のビットを含み、前記第1のビットの個数は前記第2のビットの個数と異なる請求項1に記載の半導体デバイス。
  19. 前記第1のビットの個数は、前記第2のビットの個数より大きい請求項18に記載の半導体デバイス。
  20. 前記仮想ページバッファの前記データ要素のそれぞれから読み出されたデータが、複数のビットによって表され、前記マスク論理回路は、前記組合せのステップを実行するための合成器を備え、前記合成器は、2入力論理ORモジュールの1つのバンクを備え、前記2入力論理ORモジュールのそれぞれは、(i)前記マスクバッファの前記データ要素のうちの前記対応するデータ要素の前記論理状態と(ii)前記ビットのうちの各1つのビットとを供給される請求項1に記載の半導体デバイス。
  21. 半導体デバイスと、
    少なくとも1つの不揮発性メモリデバイスとを備えるメモリシステムであって、
    前記半導体デバイスは、
    複数のデータ要素を入れた仮想ページバッファと、
    複数のデータ要素を入れたマスクバッファであって、当該マスクバッファの前記データ要素のそれぞれが前記仮想ページバッファの前記データ要素のうちの各1つのデータ要素に対応する、マスクバッファと、
    制御論理回路であって、(i)トリガーを受け取った後、前記マスクバッファの前記データ要素のそれぞれを第1の論理状態に設定し、(ii)入力データが前記仮想ページバッファの前記複数のデータ要素のうちの選択されたデータ要素に書き込まれるようにし、(iii)前記仮想ページバッファの前記複数のデータ要素のうちの前記選択されたデータ要素に対応する前記マスクバッファのデータ要素が前記第1の論理状態と異なる第2の論理状態に設定されるようにするための制御論理回路と、
    前記仮想ページバッファの前記データ要素のそれぞれについて、そこから読み出されたデータを前記マスクバッファの前記複数のデータ要素のうちの前記対応する1つのデータ要素の前記論理状態と組み合わせてまとめることによってマスクされた出力データを供給するように構成されたマスク論理回路と、
    前記マスクされた出力データを前記少なくとも1つの不揮発性メモリデバイスに向けて放出するように構成された出力インターフェイスとを備える
    メモリシステム。
  22. 前記不揮発性メモリデバイスは、
    複数のデータ要素を含むページバッファであって、当該ページバッファの前記データ要素のそれぞれは前記仮想ページバッファの前記データ要素のうちの各1つのデータ要素に対応する、ページバッファと、
    前記半導体デバイスから受け取った前記マスクされた出力データが前記ページバッファの前記データ要素に順次書き込まれるようにするための制御論理回路とを備える請求項21に記載のメモリシステム。
  23. 前記不揮発性メモリデバイスは、データ要素の複数のページに配列されたメモリコアをさらに備える請求項22に記載のメモリシステム。
  24. 前記入力データをメモリコントローラから受け取り、前記入力データには、前記メモリコアの前記指定されたページ内のデータ要素のグループを指定するアドレス情報が随伴し、データ要素の前記グループは、書き込みされないデータ要素の少なくとも1つのグループ内ギャップを残す請求項21に記載のメモリシステム。
  25. 前記第1の論理状態は、プログラム抑制状態である請求項21に記載のメモリシステム。
  26. 前記第1の論理状態は、論理1状態であり、前記第2の論理状態は、論理0状態である請求項21に記載のメモリシステム。
  27. 不揮発性記憶装置デバイスに入力データを転送するための方法であって、
    複数のデータ要素を入れた仮想ページバッファを保持するステップと、
    複数のデータ要素を入れたマスクバッファを保持するステップであって、前記マスクバッファの前記データ要素のそれぞれは前記仮想ページバッファの前記データ要素のうちの各1つのデータ要素に対応する、ステップと、
    トリガーを受け取った後、前記マスクバッファの前記データ要素のそれぞれを第1の論理状態に設定するステップと、
    前記仮想ページバッファの前記複数のデータ要素のうちの選択されたデータ要素にデータを書き込み、前記仮想ページバッファの前記複数のデータ要素のうちの前記選択されたデータ要素に対応する前記マスクバッファのデータ要素を前記第1の論理状態と異なる第2の論理状態に設定するステップと、
    前記仮想ページバッファの前記データ要素のそれぞれについて、そこから読み出されたデータを前記マスクバッファの前記複数のデータ要素のうちの前記対応する1つのデータ要素の前記論理状態と組み合わせてまとめることによってマスクされた出力データを供給するステップと、
    前記マスクされた出力データを前記不揮発性メモリデバイスに向けて放出するステップとを含む方法。
  28. 半導体デバイスによって実施される請求項27に記載の方法であって、前記半導体デバイスへの電力が確定されるか、または再確定されたときに前記トリガーを発生するステップをさらに含む方法。
  29. 前記トリガーを発生する前記ステップは、前記マスクされた出力データを前記不揮発性メモリデバイスに向けて放出する前記ステップへの応答として実行される請求項27に記載の方法。
  30. 前記仮想ページバッファの前記データ要素はそれぞれ、第1の数のビットを含み、前記マスクバッファの前記データ要素はそれぞれ、第2の数のビットを含み、前記第1のビットの個数は前記第2のビットの個数と同じである請求項27に記載の方法。
  31. 前記仮想ページバッファの前記データ要素はそれぞれ、第1の数のビットを含み、前記マスクバッファの前記データ要素はそれぞれ、第2の数のビットを含み、前記第1のビットの個数は前記第2のビットの個数と異なる請求項27に記載の方法。
  32. 前記第1のビットの個数は、前記第2のビットの個数より大きい請求項31に記載の方法。
  33. 処理されたときに、半導体デバイスを形成するために使用される命令を格納するコンピュータ可読記憶媒体であって、前記半導体デバイスは、
    複数のデータ要素を入れた仮想ページバッファを保持するステップと、
    複数のデータ要素を入れたマスクバッファを保持するステップであって、前記マスクバッファの前記データ要素のそれぞれが前記仮想ページバッファの前記データ要素のうちの各1つのデータ要素に対する、ステップと、
    トリガーを受け取った後、前記マスクバッファの前記データ要素のそれぞれを第1の論理状態に設定するステップと、
    前記仮想ページバッファの前記複数のデータ要素のうちの選択されたデータ要素にデータを書き込み、前記仮想ページバッファの前記複数のデータ要素のうちの選択されたデータ要素に対応する前記マスクバッファの前記複数のデータ要素を前記第1の論理状態と異なる第2の論理状態に設定するステップと、
    前記仮想ページバッファの前記データ要素のそれぞれについて、そこから読み出されたデータを前記マスクバッファの前記複数のデータ要素のうちの前記対応する1つのデータ要素の前記論理状態と組み合わせてまとめることによってマスクされた出力データを供給するステップと、
    前記マスクされた出力データを前記不揮発性メモリデバイスに向けて放出するステップとを行うように構成されたコンピュータ可読記憶媒体。
  34. セルの各行にそれぞれ接続されている複数のワード線、および
    セルの各列にそれぞれ接続されている複数のビット線
    を備えるメモリアレイと、
    前記複数のワード線のうちのワード線のグループを選択するための少なくとも1つの行デコーダと、
    前記複数のビット線を個々に駆動し、ワード線の前記グループに接続されている前記セルを所定の論理状態に設定するための複数のドライバ回路と
    を備える半導体メモリ回路。
  35. ワード線の前記グループを選択するステップは、プリセット制御信号がアサートされたときに実行される請求項34に記載の半導体メモリ回路。
  36. 前記プリセット制御信号がアサートされない場合、前記少なくとも1つの行デコーダは、行信号によって識別された前記ワード線のうちの個別の1つのワード線を選択するように構成される請求項35に記載の半導体メモリ回路。
  37. アドレス信号の一部として前記行信号を供給するように構成されたコントローラをさらに備える請求項36に記載の半導体メモリ回路。
  38. 前記プリセット制御信号をアサートするように構成されたコントローラをさらに備える請求項35に記載の半導体メモリ回路。
  39. 前記コントローラは、前記プリセット制御信号をアサートした後に前記ドライバ回路をアクティブ化するようにさらに構成される請求項38に記載の半導体メモリ回路。
  40. 前記ドライバ回路は、同時にアクティブ化される請求項39に記載の半導体メモリ回路。
  41. 前記ドライバ回路は、順次アクティブ化される請求項39に記載の半導体メモリ回路。
  42. ワード線の前記グループは、ワード線の第1のグループであり、前記少なくとも1つの行デコーダは、前記複数のワード線のうちのワード線の第2のグループを選択するようにさらに構成される請求項34に記載の半導体メモリ回路。
  43. ワード線の前記第1および第2のグループは、相互排他的である請求項42に記載の半導体メモリ回路。
  44. ワード線の前記第1のグループを選択するステップは、第1のプリセット制御信号がアサートされたときに実行され、ワード線の前記第2のグループを選択するステップは、第2のプリセット制御信号がアサートされたときに実行される請求項42に記載の半導体メモリ回路。
  45. 前記少なくとも1つの行デコーダは、単一の行デコーダを含み、前記第1のプリセット制御信号および前記第2のプリセット制御信号が両方ともアサートされていない場合に、前記単一の行デコーダは、行信号によって識別された前記ワード線のうちの個別の1つのワード線を選択するように構成される請求項44に記載の半導体メモリ回路。
  46. 前記少なくとも1つの行デコーダは、第1の行デコーダおよび第2の行デコーダを含み、前記第1のプリセット制御信号および前記第2のプリセット制御信号が両方ともアサートされていない場合に、前記第1の行デコーダは、第1の行信号によって識別されたワード線の前記第1のグループ内の前記ワード線のうちの個別の1つのワード線を選択するように構成され、前記第2の行デコーダは、第2の行信号によって識別されたワード線の前記第2のグループ内の前記ワード線のうちの個別の1つのワード線を選択するように構成される請求項44に記載の半導体メモリ回路。
  47. 前記第1のプリセット制御信号および前記第2の制御信号をアサートするように構成されたコントローラをさらに備える請求項44に記載の半導体メモリ回路。
  48. 前記コントローラは、前記第1のプリセット制御信号および前記第2の制御信号を同時にアサートするようにさらに構成される請求項47に記載の半導体メモリ回路。
  49. 前記コントローラは、前記第1のプリセット制御信号および前記第2の制御信号を順次アサートするようにさらに構成される請求項47に記載の半導体メモリ回路。
  50. 前記少なくとも1つの行デコーダは、プリセット制御信号のアサートへの応答としてワード線の前記第1のグループの選択およびワード線の前記第2のグループの選択を制御するための回路を備える請求項42に記載の半導体メモリ回路。
  51. 前記プリセット制御信号がアサートされない場合、前記少なくとも1つの行デコーダは、行信号によって識別された前記ワード線のうちの個別の1つのワード線を選択するように構成される請求項50に記載の半導体メモリ回路。
  52. 複数の書込み線ドライバ回路をさらに備え、それぞれの書込み線ドライバ回路は、選択されたときに前記ワード線のうちの各1つのワード線を駆動する請求項34に記載の半導体メモリ回路。
  53. ワード線の前記グループ内の前記ワード線は、隣接している請求項34に記載の半導体メモリ回路。
  54. ワード線の前記グループは、前記メモリアレイの前記行のすべてを含む請求項34に記載の半導体メモリ回路。
  55. ワード線の前記グループは、前記メモリアレイの前記行のすべてではなく一部を含む請求項34に記載の半導体メモリ回路。
  56. セルの各行にそれぞれ接続されている複数のワード線を備えるメモリアレイの少なくとも一部をプリセットするための方法であって、
    前記複数のワード線のうちのワード線のグループを選択するステップと、
    ワード線の前記グループに接続されているメモリセルを所定の論理状態に同時に設定するステップとを含む方法。
  57. ワード線の前記グループに接続されているメモリセルを所定の論理状態に設定する前記ステップは、ワード線の前記グループに接続されている前記メモリセルのすべてを前記所定の論理状態に同時に設定するステップを含む請求項56に記載の方法。
  58. ワード線の前記グループに接続されているメモリセルを所定の論理状態に設定する前記ステップは、ワード線の前記グループ内のそれぞれのワード線に接続されている少なくとも1つの第1のメモリセルを前記所定の論理状態に同時に設定し、それに続いてワード線の前記グループ内のそれぞれのワード線に接続されている少なくとも1つの第2のメモリセルを前記所定の論理状態に同時に設定するステップを含む請求項56に記載の方法。
  59. ワード線の前記グループは、ワード線の第1のグループを含む請求項56に記載の方法であって、
    前記複数のワード線のうちのワード線の第2のグループを選択するステップと、
    ワード線の前記第2のグループに接続されているメモリセルを所定の論理状態に同時に設定するステップとをさらに含む方法。
  60. セルの複数の行内のセルの各行にそれぞれ接続されている複数のワード線を備えるメモリアレイとともに使用するための回路であって、
    前記行のうちの単一の行(これ以降、個別に選択された行)の選択を示す行信号を受信するための第1の入力と、
    行のグループ(これ以降、まとめて選択された行)の選択を示すプリセット制御信号を受信するための第2の入力と、
    前記行信号と前記プリセット制御信号とを組み合わせて、前記行のそれぞれについて、各ワード線選択信号を発生するための回路であって、前記行のそれぞれに対する前記ワード線選択信号は、それが(i)前記個別に選択された行および(ii)前記まとめて選択された行のうちの1つの行のうちの少なくとも一方の行である場合にその行の選択を示し、それが前記個別に選択された行でなく、かつ前記まとめて選択された行のうちの1つの行でない場合にその行の非選択を示す、回路と、
    前記行のそれぞれに対する前記ワード線選択信号をワード線ドライバを介して前記メモリアレイに放出するための出力とを備える回路。
  61. 複数のメインセルを備えるメインメモリユニットと、
    行と列とに配列された複数の補助セルを備える補助メモリユニットであって、前記補助セルのそれぞれが前記メインセルの各集合に対応する、補助メモリユニットと、
    前記補助セルの各行にそれぞれ接続されている複数のワード線と、
    前記補助セルの各列にそれぞれ接続されている複数のビット線と、
    第1のオペレーションモードでは前記複数のワード線のうちから個別のワード線を選択し、第2のオペレーションモードでは前記複数のワード線のうちのワード線のグループを選択するための行デコーダ回路と、
    前記ビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、
    (i)前記行デコーダが前記第2のオペレーションモードで動作しているときに前記ビット線制御回路を制御して、前記補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データが前記メインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)前記行デコーダが前記第1のオペレーションモードで動作しているときに前記ビット線制御回路を制御して、前記複数のメインセルのうちの前記選択されたメインセルに対応する補助セルを前記第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える半導体デバイス。
  62. 前記メインセルおよび前記補助セルは、スタティックランダムアクセスメモリ(SRAM)セルである請求項61に記載の半導体デバイス。
  63. 前記SRAMセルは、シングルポートSRAMセルである請求項62に記載の半導体デバイス。
  64. 前記複数のビット線は、前記補助セルの列毎に、それに接続されているビット線の各対を備える請求項61に記載の半導体デバイス。
  65. 前記第1の論理状態は、第1のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項61に記載の半導体デバイス。
  66. 前記第2の論理状態は、第2のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項65に記載の半導体デバイス。
  67. 前記第1の論理状態は、論理0であり、前記第2の論理状態は、論理1である請求項66に記載の半導体デバイス。
  68. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記行デコーダ回路を前記第2のオペレーションモードにするように構成される請求項61に記載の半導体デバイス。
  69. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、プリセットコマンドを含む請求項68に記載の半導体デバイス。
  70. 前記行デコーダ回路を前記第2のオペレーションモードにするために、前記制御論理回路は、ワード線の前記グループを選択するように前記行デコーダ回路に命令するように構成される請求項68に記載の半導体デバイス。
  71. ワード線の前記グループは、ワード線のすべてを含む請求項70に記載の半導体デバイス。
  72. ワード線の前記グループは、複数のワード線の組み合わせのうちから選択可能であり、それぞれのワード線の組み合わせはワード線のすべてではなく一部を含む請求項71に記載の半導体デバイス。
  73. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記入力データが前記メインセルのうちの前記選択されたメインセルに書き込まれるように構成される請求項61に記載の半導体デバイス。
  74. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記メインセルのうちの前記選択されたメインセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項73に記載の半導体デバイス。
  75. 前記制御論理回路は、前記入力データの書込みの完了後に、前記行デコーダ回路を前記第1のオペレーションモードにするように構成される請求項73に記載の半導体デバイス。
  76. 前記行デコーダ回路を前記第1のオペレーションモードにするために、前記制御論理回路は、接続先行が書き込まれた少なくとも1つのメインセルを含む個別のワード線を選択するように前記行デコーダ回路に命令するように構成される請求項75に記載の半導体デバイス。
  77. 前記行デコーダ回路が前記第2のオペレーションモードで動作している間に前記ビット線制御回路を制御するステップは、(i)前記補助セルの1つの列を選択するステップと、(ii)前記選択された列内にあり、選択されているワード線に接続されているそれぞれの補助セルを前記第1の論理状態に設定するステップと、(iii)前記補助セルの前記他方の列のそれぞれに対して前記選択するステップと前記設定するステップとを繰り返すステップとを含む請求項61に記載の半導体デバイス。
  78. 前記行デコーダ回路が前記第2のオペレーションモードで動作している間に前記ビット線制御回路を制御するステップは、(i)前記補助セルの複数の前記列を選択するステップと、(ii)選択されているワード線に接続されている前記選択された列内にある補助セルを前記第1の論理状態に同時に設定するステップと、(iii)前記補助セルの前記列のうちの複数の他方の列に対して前記選択するステップと前記同時に設定するステップとを繰り返すステップとを含む請求項61に記載の半導体デバイス。
  79. 前記行デコーダ回路が前記第2のオペレーションモードで動作している間に前記ビット線制御回路を制御するステップは、選択されているワード線に接続されているすべての補助セルを前記第1の論理状態に同時に設定するステップを含む請求項61に記載の半導体デバイス。
  80. 前記補助セルのそれぞれは、前記メインセルのうちのちょうど1つのメインセルからなる各集合に対応する請求項61に記載の半導体デバイス。
  81. 前記補助セルのそれぞれは、前記メインセルのうちの少なくとも2つのメインセルからなる各集合に対応する請求項61に記載の半導体デバイス。
  82. 前記ビット線は、第1のビット線であり、前記補助セルの与えられた行に接続されている前記ワード線のそれぞれは、前記補助セルの前記与えられた行内の前記補助セルに対応するメインセルの前記1つまたは複数の集合を含む前記メインセルの各行にさらに接続され、前記メインセルは、行と列とに配列されている、請求項61に記載の半導体デバイスであって、
    前記メインセルの各列にそれぞれ接続されている複数の第2のビット線をさらに備え、
    前記ビット線制御回路はさらに、前記第2のビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするための回路であり、
    前記制御論理回路は、前記行デコーダ回路が前記第1のオペレーションモードに入っている間に前記ビット線制御回路を制御することによって前記メインセルのうちの前記選択された複数のメインセルに前記入力データが書き込まれるようにする、半導体デバイス。
  83. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記行デコーダ回路を前記第1のオペレーションモードにするように構成される請求項82に記載の半導体デバイス。
  84. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記メインセルのうちの前記選択されたメインセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項83に記載の半導体デバイス。
  85. 前記行デコーダ回路を前記第1のオペレーションモードにするために、前記制御論理回路は、接続先行が書き込まれる少なくとも1つのメインセルを含む個別のワード線を選択するように前記行デコーダ回路に命令するように構成される請求項83に記載の半導体デバイス。
  86. 前記行デコーダ回路を前記第1のオペレーションモードにするために、前記制御論理回路は、接続先行が開始アドレスを含む個別のワード線を選択するように前記行デコーダ回路に命令するように構成される請求項84に記載の半導体デバイス。
  87. 前記ワード線は、第1のワード線であり、前記ビット線は、第1のビット線であり、前記ビット線制御回路は、第1のビット線制御回路であり、前記行デコーダ回路は、第1の行デコーダ回路であり、前記メインセルは、行と列とに配列されている、請求項61に記載の半導体デバイスであって、
    前記メインセルの各行にそれぞれ接続されている、前記第1のワード線と異なる複数の第2のワード線と、
    前記複数の第2のワード線のうちから個別の第2のワード線を選択するための第2の行デコーダ回路と、
    前記メインセルの各列にそれぞれ接続されている複数の第2のビット線と、
    前記第2のビット線を駆動して、選択されている第2のワード線に接続されているメインセルの書込みをイネーブルするための第2のビット線制御回路とをさらに備え、
    前記制御論理回路は、前記第2のビット線制御回路および前記第2の行デコーダ回路を制御することによって前記メインセルのうちの前記選択された複数のメインセルに前記入力データが書き込まれるようにする、半導体デバイス。
  88. 前記制御論理回路は、接続先行が書き込まれる少なくとも1つのメインセルを含む個別の第2のワード線を選択するように前記第2の行デコーダ回路に命令するように構成される請求項87に記載の半導体デバイス。
  89. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記第2の行デコーダに命令するように構成される請求項88に記載の半導体デバイス。
  90. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記メインセルのうちの前記選択されたメインセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項89に記載の半導体デバイス。
  91. 半導体デバイスによる実行のための方法であって、
    補助メモリユニットの一部を形成する、行と列とに配列されている補助セルの行のグループを選択するステップと、
    前記補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、前記補助セルのそれぞれを第1の論理状態に設定するステップと、
    入力データを複数のメインセルのうちの選択されたセルに書き込むステップであって、前記補助セルのそれぞれは前記メインセルの各集合に対応する、ステップと、
    少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを含む方法。
  92. コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体であって、前記制御論理回路は、
    補助メモリユニットの一部を形成する、行と列とに配列されている補助セルの行のグループを選択するステップと、
    前記補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、前記補助セルのそれぞれを第1の論理状態に設定するステップと、
    入力データが複数のメインセルのうちの選択されたセルに書き込まれるようにするステップであって、前記補助セルのそれぞれは前記メインセルの各集合に対応する、ステップと、
    少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成されるコンピュータ可読記憶媒体。
  93. 複数のメインセルを備えるメインメモリユニットと、
    複数のサブユニットを備える補助メモリユニットであって、それぞれのサブユニットは、行と列とに配列された複数の補助セルを備え、前記補助セルのそれぞれは前記メインセルの各集合に対応する、補助メモリユニットと、
    前記補助セルの各行にそれぞれ接続されている複数のワード線と、
    前記補助セルの各列にそれぞれ接続され、前記複数のサブユニットにまたがる複数のビット線と、
    第1のオペレーションモードでは前記複数のサブユニットのうちの特定のサブユニットの前記複数のワード線のうちから個別のワード線を選択し、第2のオペレーションモードでは前記サブユニットのうちの少なくとも2つのサブユニットのそれぞれからの少なくとも1つのワード線を含むワード線のグループを選択するための行デコーダ回路と、
    前記ビット線を駆動して、選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、
    (i)前記行デコーダが前記第2のオペレーションモードで動作しているときに前記ビット線制御回路を制御して、前記複数のサブユニットのうちのそれぞれのサブユニット内の前記補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データが前記メインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)前記行デコーダが前記第1のオペレーションモードで動作しているときに前記ビット線制御回路を制御して、前記複数のメインセルのうちの前記選択されたメインセルに対応する補助セルを前記第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える半導体デバイス。
  94. 前記メインセルおよび前記補助セルは、スタティックランダムアクセスメモリ(SRAM)セルである請求項93に記載の半導体デバイス。
  95. 前記SRAMセルは、シングルポートSRAMセルである請求項94に記載の半導体デバイス。
  96. 前記複数のビット線は、前記補助セルの列毎に、それに接続されているビット線の各対を備える請求項93に記載の半導体デバイス。
  97. 前記第1の論理状態は、第1のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項93に記載の半導体デバイス。
  98. 前記第2の論理状態は、第2のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項97に記載の半導体デバイス。
  99. 前記第1の論理状態は、論理0であり、前記第2の論理状態は、論理1である請求項98に記載の半導体デバイス。
  100. 前記行デコーダ回路は、複数の行デコーダを備え、それぞれの行デコーダは前記複数のサブユニットのうちの1つのサブユニットにそれぞれ対応する請求項93に記載の半導体デバイス。
  101. 前記行デコーダ回路のそれぞれは、前記制御論理回路によって識別された少なくとも1つのワード線を個別に選択する請求項100に記載の半導体デバイス。
  102. 前記制御論理回路は、前記行デコーダのそれぞれによって選択される少なくとも1つのワード線を識別し、これにより前記行デコーダ回路が前記第2のオペレーションモードで前記複数のサブユニットのうちの少なくとも2つのサブユニットのそれぞれからの少なくとも1つのワード線を含むワード線のグループを選択することができるように構成される請求項101に記載の半導体デバイス。
  103. ワード線の前記グループは、前記複数のサブユニットのそれぞれからの少なくとも1つのワード線を含む請求項102に記載の半導体デバイス。
  104. ワード線の前記グループは、前記複数のサブユニットのすべてからのワード線のすべてを含む請求項102に記載の半導体デバイス。
  105. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記入力データが前記メインセルのうちの前記選択されたメインセルに書き込まれるように構成される請求項93に記載の半導体デバイス。
  106. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記メインセルのうちの前記選択されたメインセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項105に記載の半導体デバイス。
  107. 前記制御論理回路は、前記入力データの書込みの完了後に、前記行デコーダ回路を前記第1のオペレーションモードにするように構成される請求項105に記載の半導体デバイス。
  108. 前記行デコーダ回路を前記第1のオペレーションモードにするために、前記制御論理回路は、接続先行が書き込まれた少なくとも1つのメインセルを含む個別のワード線を選択するように前記行デコーダ回路に命令するように構成される請求項107に記載の半導体デバイス。
  109. 前記行デコーダ回路が前記第2のオペレーションモードで動作している間に前記ビット線制御回路を制御するステップは、(i)前記補助セルの1つの列を選択するステップと、(ii)前記選択された列内にあり、選択されているワード線に接続されているそれぞれの補助セルを前記第1の論理状態に設定するステップと、(iii)前記補助セルの前記他方の列のそれぞれに対して前記選択するステップと前記設定するステップとを繰り返すステップとを含む請求項93に記載の半導体デバイス。
  110. 前記行デコーダ回路が前記第2のオペレーションモードで動作している間に前記ビット線制御回路を制御するステップは、(i)前記補助セルの複数の前記列を選択するステップと、(ii)選択されているワード線に接続されている前記選択された列内にある補助セルを前記第1の論理状態に同時に設定するステップと、(iii)前記補助セルの前記列のうちの複数の他方の列に対して前記選択するステップと前記同時に設定するステップとを繰り返すステップとを含む請求項93に記載の半導体デバイス。
  111. 前記補助セルのそれぞれを前記第1の論理状態に設定するように前記ビット線制御回路を制御するステップは、選択されているワード線に接続されているすべての補助セルを前記第1の論理状態に同時に設定するステップを含む請求項93に記載の半導体デバイス。
  112. 前記補助セルのそれぞれは、前記メインセルのうちのちょうど1つのメインセルからなる各集合に対応する請求項93に記載の半導体デバイス。
  113. 前記補助セルのそれぞれは、前記メインセルのうちの少なくとも2つのメインセルからなる各集合に対応する請求項93に記載の半導体デバイス。
  114. 半導体デバイスによる実行のための方法であって、
    少なくとも2つのサブユニットのうちのそれぞれのサブユニットからの少なくとも1つの行を含む、行と列とに配列されている前記複数のサブユニットのうちのそれぞれのサブユニット内の補助セルの行のグループを選択するステップと、
    前記補助セルの各列にそれぞれ接続され、前記複数のサブユニットにまたがる複数のビット線を駆動して、前記補助セルのそれぞれを第1の論理状態に設定するステップと、
    入力データを複数のメインセルのうちの選択されたセルに書き込むステップであって、前記補助セルのそれぞれは前記メインセルの各集合に対応する、ステップと、
    前記複数のサブユニットのうちの特定の1つのサブユニットの特定の行を選択するステップであって、前記特定の行は、少なくとも1つの補助セルを含み、前記メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを含む方法。
  115. コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体であって、前記制御論理回路は、
    少なくとも2つのサブユニットのうちのそれぞれのサブユニットからの少なくとも1つの行を含む、行と列とに配列されている前記複数のサブユニットのうちのそれぞれのサブユニット内の補助セルの行のグループを選択するステップと
    前記補助セルの各列にそれぞれ接続され、前記複数のサブユニットにまたがる複数のビット線を駆動して、前記補助セルのそれぞれを第1の論理状態に設定するステップと、
    入力データが複数のメインセルのうちの選択されたセルに書き込まれるようにするステップであって、前記補助セルのそれぞれは前記メインセルの各集合に対応する、ステップと、
    前記複数のサブユニットのうちの特定の1つのサブユニットの特定の行を選択するステップであって、前記特定の行は、少なくとも1つの補助セルを含み、前記メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成されるコンピュータ可読記憶媒体。
  116. N1個の行とM1個の列からなるアレイに配列された複数のメインセルを備えるメインメモリユニットと、
    N2個の行とM2個の列とに配列された複数の補助セルを備える補助メモリユニットであって、前記補助セルのそれぞれがZ個のメインセルの各集合に対応し、N2はN1より小さく、M2はM1/Zより大きい、補助メモリユニットと、
    前記補助セルの各行にそれぞれ接続されている複数のワード線と、
    前記補助セルの各列にそれぞれ接続されている複数のビット線と、
    前記複数のワード線のうちから個別の1つのワード線を選択するための行デコーダ回路と、
    前記複数のビット線を駆動して、前記選択されているワード線に接続されている補助セルの書込みをイネーブルするためのビット線制御回路と、
    (i)前記ビット線制御回路を制御して、前記補助セルのそれぞれを第1の論理状態に設定し、(ii)入力データが前記メインセルのうちの選択されたメインセルに書き込まれるようにし、(iii)前記ビット線制御回路を制御して、前記複数のメインセルのうちの前記選択されたメインセルに対応する補助セルを前記第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える半導体デバイス。
  117. 前記メインセルおよび前記補助セルは、スタティックランダムアクセスメモリ(SRAM)セルである請求項116に記載の半導体デバイス。
  118. 前記SRAMセルは、シングルポートSRAMセルである請求項117に記載の半導体デバイス。
  119. 前記複数のビット線は、前記補助セルの列毎に、それに接続されているビット線の各対を備える請求項116に記載の半導体デバイス。
  120. 前記第1の論理状態は、第1のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項116に記載の半導体デバイス。
  121. 前記第2の論理状態は、第2のステータスを有する前記メインメモリユニット内のデータを示す論理状態である請求項120に記載の半導体デバイス。
  122. 前記第1の論理状態は、論理0であり、前記第2の論理状態は、論理1である請求項121に記載の半導体デバイス。
  123. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記補助セルのそれぞれを前記第1の論理状態に設定するように構成される請求項116に記載の半導体デバイス。
  124. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、プリセットコマンドを含む請求項123に記載の半導体デバイス。
  125. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記入力データが前記メインセルのうちの前記選択されたメインセルに書き込まれるように構成される請求項116に記載の半導体デバイス。
  126. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記メインセルのうちの前記選択されたメインセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項125に記載の半導体デバイス。
  127. 前記補助セルのそれぞれを前記第1の論理状態に設定するために前記ビット線制御回路を制御するステップは、(i)前記補助セルの1つの列を選択するステップと、(ii)前記選択された列内にあり、選択されているワード線に接続されているそれぞれの補助セルを前記第1の論理状態に設定するステップと、(iii)前記補助セルの前記他方の列のそれぞれに対して前記選択するステップと前記設定するステップとを繰り返すステップとを含む請求項116に記載の半導体デバイス。
  128. 前記補助セルのそれぞれを前記第1の論理状態に設定するために前記ビット線制御回路を制御するステップは、(i)前記補助セルの複数の前記列を選択するステップと、(ii)選択されているワード線に接続されている前記選択された列内にある補助セルを前記第1の論理状態に同時に設定するステップと、(iii)前記補助セルの前記列のうちの複数の他方の列に対して前記選択するステップと前記同時に設定するステップとを繰り返すステップとを含む請求項116に記載の半導体デバイス。
  129. 前記補助セルのそれぞれを前記第1の論理状態に設定するように前記ビット線制御回路を制御するステップは、選択されているワード線に接続されているすべての補助セルを前記第1の論理状態に同時に設定するステップを含む請求項116に記載の半導体デバイス。
  130. Zは、1に等しい請求項116に記載の半導体デバイス。
  131. Zは、1より大きい請求項116に記載の半導体デバイス。
  132. N1は、N2の少なくとも2倍大きい請求項116に記載の半導体デバイス。
  133. M1は、少なくともM1/4と同じ大きさである請求項116に記載の半導体デバイス。
  134. 半導体デバイスによる実行のための方法であって、
    メインメモリユニットの一部を形成する複数のメインセルのうちの選択されたメインセルに入力データを書き込むステップであって、前記メインメモリユニットの前記メインセルはN1個の行とM1個の列とに配列される、ステップと、
    前記書込みに先立って、補助メモリユニットの一部を形成する補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、前記複数の補助セルのうちのそれぞれの補助セルを第1の状態に設定するステップであって、前記補助セルのそれぞれはZ個のメインセルの各集合に対応し、前記補助メモリユニットの前記補助セルはN2個の行とM2個の列に配列され、N2はN1より小さく、M2はM1/Zより大きい、ステップと、
    少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを含む方法。
  135. コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体であって、前記制御論理回路は、
    メインメモリユニットの一部を形成する複数のメインセルのうちの選択されたメインセルに入力データが書き込まれるようにするステップであって、前記メインメモリユニットの前記メインセルはN1個の行とM1個の列とに配列される、ステップと、
    前記入力データを前記複数のメインセルのうちの前記選択されたメインセルに書き込むのに先立って、補助メモリユニットの一部を形成する補助セルの各列にそれぞれ接続されている複数のビット線を駆動して、前記複数の補助セルのうちのそれぞれの補助セルを第1の状態に設定するステップであって、前記補助セルのそれぞれはZ個のメインセルの各集合に対応し、前記補助メモリユニットの前記補助セルはN2個の行とM2個の列に配列され、N2はN1より小さく、M2はM1/Zより大きい、ステップと、
    少なくとも1つの補助セルを含む補助セルの特定の行を選択するステップであって、メインセルの対応する集合が前記選択されたセルのうちの少なくとも1つのセルを含む、ステップと、
    前記ビット線を駆動して、前記少なくとも1つの補助セルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成されるコンピュータ可読記憶媒体。
  136. 複数のシングルポートメモリセルと、
    行と列とに配列された複数のデュアルポートメモリであって、前記デュアルポートメモリセルのそれぞれがシングルポートメモリセルの各集合に対応する、複数のデュアルポートメモリセルと、
    第1のワード線および第2のワード線であって、前記デュアルポートメモリセルのそれぞれの行が前記第1のワード線のうちの対応するワード線および前記第2のワード線のうちの対応するワード線に接続されるように前記デュアルポートメモリセルの前記行に接続されている第1のワード線および第2のワード線と、
    第1のビット線および第2のビット線であって、前記デュアルポートメモリセルのそれぞれの列が前記第1のビット線の対応する集合および前記第2のビット線の対応する集合に接続されるように前記デュアルポートメモリセルの前記列に接続されている第1のビット線および第2のビット線と、
    前記第1のワード線のうちの少なくとも1つのワード線および前記第2のワード線のうちの少なくとも1つのワード線をまとめて選択するための行デコーダ回路と、
    前記第1のビット線を駆動して、選択されている第1のワード線に接続されているデュアルポートメモリセルの書込みをイネーブルし、前記第2のビット線を駆動して、選択されている第2のワード線に接続されているデュアルポートメモリセルの書込みをイネーブルするためのビット線制御回路と、
    (i)前記ビット線制御回路を制御して、前記デュアルポートメモリセルのそれぞれを第1の論理状態に設定し、(ii)入力データが前記シングルポートメモリセルのうちの選択されたメモリセルに書き込まれるようにし、(iii)前記ビット線制御回路を制御して、前記複数のシングルポートメモリセルのうちの前記選択されたメモリセルに対応するデュアルポートメモリセルを前記第1の論理状態と異なる第2の論理状態に設定するための制御論理回路とを備える半導体デバイス。
  137. 前記シングルポートメモリセルおよび前記デュアルポートメモリセルは、スタティックランダムアクセスメモリ(SRAM)セルである請求項136に記載の半導体デバイス。
  138. それぞれの列に接続されている前記第1のビット線の前記対応する集合は、前記第1のビット線の対を含む請求項136に記載の半導体デバイス。
  139. それぞれの列に接続されている前記第2のビット線の前記対応する集合は、前記第2のビット線の対を含む請求項138に記載の半導体デバイス。
  140. 前記第1の論理状態は、第1のステータスを有する前記シングルポートメモリセル内のデータを示す論理状態である請求項136に記載の半導体デバイス。
  141. 前記第2の論理状態は、第2のステータスを有する前記シングルポートメモリセル内のデータを示す論理状態である請求項140に記載の半導体デバイス。
  142. 前記第1の論理状態は、論理0であり、前記第2の論理状態は、論理1である請求項141に記載の半導体デバイス。
  143. 前記シングルポートメモリセルは、第1のメモリユニットを占有し、前記デュアルポートメモリセルは、第2のメモリユニットを占有する請求項136に記載の半導体デバイス。
  144. 前記制御論理回路は、前記ビット線制御回路を制御して、外部エンティティからコマンドを受け取った後、前記デュアルポートメモリセルのそれぞれを前記第1の論理状態に設定するように構成される請求項136に記載の半導体デバイス。
  145. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、プリセットコマンドを含む請求項144に記載の半導体デバイス。
  146. 前記制御論理回路は、外部エンティティからコマンドを受け取った後、前記入力データが前記シングルポートメモリセルのうちの前記選択されたメモリセルに書き込まれるように構成される請求項136に記載の半導体デバイス。
  147. 前記外部エンティティは、オフチップコントローラを備え、前記コマンドは、前記シングルポートメモリセルのうちの前記選択されたメモリセルを決定するために使用される開始アドレスを識別する書込みコマンドを含む請求項146に記載の半導体デバイス。
  148. 前記制御論理回路は、前記ビット線制御回路を制御して、前記入力データの書込みの完了後に、前記シングルポートメモリセルの前記選択されたメモリセルに対応するデュアルポートメモリセルを前記第2の論理状態に設定するように構成される請求項146に記載の半導体デバイス。
  149. 前記デュアルポートメモリセルのそれぞれを前記第1の論理状態に設定するために前記ビット線制御回路を制御するステップは、(i)前記デュアルポートメモリセルの1つの列を選択するステップと、(ii)前記選択された列内にあり、選択されている第1のワード線または第2のワード線に接続されているそれぞれのデュアルポートセルを前記第1の論理状態に設定するステップと、(iii)前記デュアルポートメモリセルの前記他方の列のそれぞれに対して前記選択するステップと前記設定するステップとを繰り返すステップとを含む請求項136に記載の半導体デバイス。
  150. 前記デュアルポートメモリセルのそれぞれを前記第1の論理状態に設定するために前記ビット線制御回路を制御するステップは、(i)前記デュアルポートメモリセルの複数の前記列を選択するステップと、(ii)選択されている第1のワード線または第2のワード線に接続されている前記選択された列内にあるデュアルポートセルを前記第1の論理状態に同時に設定するステップと、(iii)前記デュアルポートメモリセルの前記列のうちの複数の他方の列に対して前記選択するステップと前記同時に設定するステップとを繰り返すステップとを含む請求項136に記載の半導体デバイス。
  151. 前記デュアルポートメモリセルのそれぞれを前記第1の論理状態に設定するように前記ビット線制御回路を制御するステップは、選択されている第1のワード線または第2のワード線に接続されているすべてのデュアルポートメモリセルを前記第1の論理状態に同時に設定するステップを含む請求項136に記載の半導体デバイス。
  152. 前記デュアルポートメモリセルのそれぞれは、前記シングルポートメモリセルのうちのちょうど1つのメモリセルからなる各集合に対応する請求項136に記載の半導体デバイス。
  153. 前記デュアルポートメモリセルのそれぞれは、前記シングルポートメモリセルのうちの少なくとも2つのメモリセルからなる各集合に対応する請求項136に記載の半導体デバイス。
  154. 半導体デバイスによる実行のための方法であって、
    複数のデュアルポートメモリセルのそれぞれを第1の論理状態に設定するステップと、
    入力データを複数のシングルポートメモリセルのうちの選択されたメモリセルに書き込むステップであって、前記デュアルポートメモリセルのそれぞれはシングルポートメモリセルの各集合に対応する、ステップと、
    前記複数のシングルポートメモリセルのうちの前記選択されたメモリセルに対応するデュアルポートメモリセルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを含む方法。
  155. コンピュータによって処理されたときに、制御論理回路を生成するために使用される命令を格納するコンピュータ可読記憶媒体であって、前記制御論理回路は、
    複数のデュアルポートメモリセルのそれぞれを第1の論理状態に設定するステップと、
    入力データが複数のシングルポートメモリセルのうちの選択されたメモリセルに書き込まれるようにするステップであって、前記デュアルポートメモリセルのそれぞれはシングルポートメモリセルの各集合に対応する、ステップと、
    前記複数のシングルポートメモリセルのうちの前記選択されたメモリセルに対応するデュアルポートメモリセルを前記第1の論理状態と異なる第2の論理状態に設定するステップとを行うように構成されるコンピュータ可読記憶媒体。
JP2011541050A 2008-12-18 2009-12-17 プリセットオペレーションを必要とするメインメモリユニットおよび補助メモリユニットを備える半導体デバイス Pending JP2012512469A (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US12/337,841 US8037235B2 (en) 2008-12-18 2008-12-18 Device and method for transferring data to a non-volatile memory device
US12/337,841 2008-12-18
US21399009P 2009-08-05 2009-08-05
US61/213,990 2009-08-05
US12/564,492 2009-09-22
US12/564,492 US8068382B2 (en) 2009-08-05 2009-09-22 Semiconductor memory with multiple wordline selection
PCT/CA2009/001860 WO2010069076A1 (en) 2008-12-18 2009-12-17 Semiconductor device with main memory unit and auxiliary memory unit requiring preset operation

Publications (2)

Publication Number Publication Date
JP2012512469A true JP2012512469A (ja) 2012-05-31
JP2012512469A5 JP2012512469A5 (ja) 2013-01-24

Family

ID=42268235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011541050A Pending JP2012512469A (ja) 2008-12-18 2009-12-17 プリセットオペレーションを必要とするメインメモリユニットおよび補助メモリユニットを備える半導体デバイス

Country Status (6)

Country Link
EP (1) EP2359369B1 (ja)
JP (1) JP2012512469A (ja)
KR (1) KR20110104477A (ja)
CN (2) CN102257568B (ja)
TW (2) TWI443658B (ja)
WO (1) WO2010069076A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016508276A (ja) * 2013-01-14 2016-03-17 ウェスタン デジタル テクノロジーズ インコーポレーテッド ソリッドステートメモリにおける動作のモードを構成するシステム及び方法
KR20190062186A (ko) * 2017-11-28 2019-06-05 윈본드 일렉트로닉스 코포레이션 반도체 기억장치 및 그 리셋 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170017414A1 (en) 2015-07-15 2017-01-19 Innovium, Inc. System And Method For Implementing Hierarchical Distributed-Linked Lists For Network Devices
US20170017420A1 (en) 2015-07-15 2017-01-19 Innovium, Inc. System And Method For Enabling High Read Rates To Data Element Lists
CN117524279A (zh) * 2017-11-15 2024-02-06 三星电子株式会社 具有虚拟体化架构的sram及包括其的系统和方法
CN111627481B (zh) * 2020-05-20 2022-02-01 中国科学院微电子研究所 一种字线译码电路、字线选通方法及存储器和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844613A (ja) * 1994-07-29 1996-02-16 Fujitsu Ltd Lsi内蔵ramの疑似初期化方式
JPH11242628A (ja) * 1998-02-26 1999-09-07 Nec Eng Ltd メモリクリア制御回路
JP2006277736A (ja) * 2005-03-03 2006-10-12 Matsushita Electric Ind Co Ltd 不揮発性記憶装置の書込み方法
JP2006277737A (ja) * 2005-03-03 2006-10-12 Matsushita Electric Ind Co Ltd アドレス予測機能をもつ不揮発性記憶装置
JP2006338371A (ja) * 2005-06-02 2006-12-14 Toshiba Corp メモリシステム
JP2007141035A (ja) * 2005-11-21 2007-06-07 Nec Access Technica Ltd 多ビット記憶装置及び多ビット記憶方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737748A (en) * 1995-03-15 1998-04-07 Texas Instruments Incorporated Microprocessor unit having a first level write-through cache memory and a smaller second-level write-back cache memory
US5703810A (en) * 1995-12-15 1997-12-30 Silicon Graphics, Inc. DRAM for texture mapping
US5953538A (en) * 1996-11-12 1999-09-14 Digital Equipment Corporation Method and apparatus providing DMA transfers between devices coupled to different host bus bridges
US8065354B1 (en) * 2005-03-04 2011-11-22 Nvidia Corporation Compression of 16 bit data using predictor values
US7652922B2 (en) 2005-09-30 2010-01-26 Mosaid Technologies Incorporated Multiple independent serial link memory
JP2010501915A (ja) 2006-08-22 2010-01-21 モサイド・テクノロジーズ・インコーポレーテッド メモリ用モジュールコマンド構造およびメモリシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844613A (ja) * 1994-07-29 1996-02-16 Fujitsu Ltd Lsi内蔵ramの疑似初期化方式
JPH11242628A (ja) * 1998-02-26 1999-09-07 Nec Eng Ltd メモリクリア制御回路
JP2006277736A (ja) * 2005-03-03 2006-10-12 Matsushita Electric Ind Co Ltd 不揮発性記憶装置の書込み方法
JP2006277737A (ja) * 2005-03-03 2006-10-12 Matsushita Electric Ind Co Ltd アドレス予測機能をもつ不揮発性記憶装置
JP2006338371A (ja) * 2005-06-02 2006-12-14 Toshiba Corp メモリシステム
JP2007141035A (ja) * 2005-11-21 2007-06-07 Nec Access Technica Ltd 多ビット記憶装置及び多ビット記憶方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016508276A (ja) * 2013-01-14 2016-03-17 ウェスタン デジタル テクノロジーズ インコーポレーテッド ソリッドステートメモリにおける動作のモードを構成するシステム及び方法
KR20190062186A (ko) * 2017-11-28 2019-06-05 윈본드 일렉트로닉스 코포레이션 반도체 기억장치 및 그 리셋 방법
KR102137889B1 (ko) 2017-11-28 2020-07-27 윈본드 일렉트로닉스 코포레이션 반도체 기억장치 및 그 리셋 방법

Also Published As

Publication number Publication date
CN102257568B (zh) 2013-09-18
KR20110104477A (ko) 2011-09-22
CN103559905A (zh) 2014-02-05
TW201432685A (zh) 2014-08-16
TW201030747A (en) 2010-08-16
EP2359369A1 (en) 2011-08-24
EP2359369A4 (en) 2012-10-31
TWI443658B (zh) 2014-07-01
TWI533300B (zh) 2016-05-11
CN102257568A (zh) 2011-11-23
WO2010069076A1 (en) 2010-06-24
EP2359369B1 (en) 2015-01-21

Similar Documents

Publication Publication Date Title
US9977752B2 (en) Semiconductor storage device and control method thereof
US9030899B2 (en) Memory device with post package repair, operation method of the same and memory system including the same
US8060705B2 (en) Method and apparatus for using a variable page length in a memory
US7283405B2 (en) Semiconductor memory device and signal processing system
JP7216247B1 (ja) バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法
JP2012512469A (ja) プリセットオペレーションを必要とするメインメモリユニットおよび補助メモリユニットを備える半導体デバイス
US8037235B2 (en) Device and method for transferring data to a non-volatile memory device
JP4582551B2 (ja) 半導体装置およびデータ書き込み方法
US9036429B2 (en) Nonvolatile memory device and operating method thereof
US9105346B2 (en) Semiconductor device and method for operating the same
US9489147B2 (en) Semiconductor device, memory device, and system including the same
JP2021152779A (ja) 半導体記憶装置
US7941617B2 (en) System and device having alternative bit organization
US10657051B2 (en) Memory device and operation method thereof
JP2004039055A (ja) 不揮発性半導体記憶装置
JP4635173B2 (ja) メモリシステムおよびその制御方法
KR20140072367A (ko) 불휘발성 메모리 장치 및 그것의 동작 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121203

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140328

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140825

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140926

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150226

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150519