(58)【調査した分野】(Int.Cl.,DB名)
前記書き込み手段は、データを書き込むために選択的に前記第1のポートと前記第2のポートとの間で選択することをさらに特徴とする、請求項2に記載のマルチポートメモリ。
前記書き込み手段は、前記第1のポートから書き込まれるデータを受け取るための第1の入力と、前記第2のポートから書き込まれるデータを受け取るための第2の入力と、前記第1のポートに結合される出力とを有する第1のマルチプレクサを備える、請求項3に記載のマルチポートメモリ。
前記書き込み手段は、前記第1のポートから書き込まれるデータを受け取るための第1の入力と、前記第2のモードにおいて前記第2のポートから書き込まれるデータを受け取るための第2の入力と、前記第1のポートに結合される出力とを有する第1のマルチプレクサを備える、請求項8に記載のマルチポートメモリ。
前記第1のモードの間および前記第2のモードの間に、前記ストレージノードに記憶されているデータを、前記ストレージノードに結合されているセンスアンプを通じて読み出す工程をさらに含む、請求項13に記載の方法。
前記ストレージノードに記憶されているデータを、前記第2のポートに結合されている第1のセンスアンプを通じて読み出す工程をさらに含む、請求項12に記載の方法。
前記ストレージノードに記憶されているデータを、前記第1のポートに結合されている第2のセンスアンプを通じて読み出す工程をさらに含む、請求項15に記載の方法。
前記第1のコンダクタンスは、前記ストレージノードと前記第1のポートとの間に結合される第1の導電性トランジスタによって得られ、前記第2のコンダクタンスは、前記ストレージノードと前記第2のポートとの間に結合される第2の導電性トランジスタによって得られる、請求項17に記載の方法。
【発明を実施するための形態】
【0006】
図1には、一般的には複数の書き込みポート、複数の読み出しポートおよびメモリ・ビット・セル12を有するマルチポートメモリ10が示されている。メモリ・ビット・セル12は、V
DDのラベルを付されている供給電圧を受け取るための端子に接続されるソースを有するPチャネルトランジスタ14を有する。トランジスタ14のドレインは、ストレージノード22においてNチャネルトランジスタ16のドレインに接続されている。トランジスタ16のソースは接地基準端子に接続されている。Pチャネルトランジスタ18は、V
DDを受け取るための端子に接続されるソースを有する。トランジスタ18のドレインは、ストレージノード24においてNチャネルトランジスタ20のドレインに接続されている。トランジスタ20のソースは接地基準端子に接続されている。トランジスタ14のゲートはトランジスタ16のゲートおよびストレージノード24に接続されている。トランジスタ18のゲートはトランジスタ20のゲートおよびストレージノード22に接続されている。2つの二重書き込みアドレスポートが、短縮形で「Mux」のラベルを付されたマルチプレクサに接続されている。具体的には、多重ビット書き込みポート1アドレスがマルチプレクサ30の第1の入力に接続されている。多重ビット書き込みポート0アドレスがマルチプレクサ30の第2の入力に接続されている。マルチプレクサ30の制御入力が低電圧書き込みイネーブル信号に接続されている。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ30は書き込みポート1アドレスを渡す。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ30は書き込みポート0アドレスを渡す。マルチプレクサ30の出力は書き込みワード線デコーダ32の第1の入力に接続される。マルチビット書き込みポート0アドレスも、書き込みワード線デコーダ32の第2の入力に接続される。書き込みワード線デコーダ32の第1の出力は書き込みワード線1(Write Word Line 1)として機能し、パストランジスタ34のゲートおよびパストランジスタ36のゲートに接続される。書き込みワード線デコーダ32の第2の出力は書き込みワード線0(Write Word Line 0)として機能し、パストランジスタ38のゲートおよびパストランジスタ40のゲートに接続される。
【0007】
マルチポートメモリ10は、メモリ・ビット・セル12に書き込まれるデータを受け取るための二重書き込みデータポートも有する。示されている形態では、ポート0およびその相補物(complement)、ならびにポート1およびその相補的ポートが詳細に示されている。マルチプレクサ42の第1の入力が、書き込みポート1データInB(Write Port 1 Data InB)入力に接続される。これはポート1に対する相補的なデータ入力である。マルチプレクサ42の第2の入力が、書き込みポート0データInB(Write Port 0 Data InB)入力に接続される。これはポート0に対する相補データ入力である。マルチプレクサ42の制御入力が低電圧書き込みイネーブル信号に接続される。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ42は書き込みポート0データinBポート信号を渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ42は書き込みポート1データinBポート信号を渡す。マルチプレクサ42の出力はデータinB(相補的入力データ)のポート1ドライバ回路39の入力に接続される。ポート1ドライバ回路39の出力は書き込みビット線B1(Write Bitline B1)のラベルを付される書き込みビット線を提供し、パストランジスタ34の第1の電流電極またはソースに接続される。パストランジスタ34の第2の電流電極またはドレインはメモリ・ビット・セル12のストレージノード22に接続される。書き込みポート0データInB入力も、データinBのポート0ドライバ回路41の入力に接続される。ポート0ドライバ回路41の出力は書き込みビット線B0(Write Bitline B0)のラベルを付される書き込みビット線を提供し、パストランジスタ38の第1の電流電極またはソースに接続される。パストランジスタ38の第2の電流電極またはドレインはメモリ・ビット・セル12のストレージノード22に接続される。マルチプレクサ44の第1の入力が、書き込みポート1データIn(Write Port 1 Data In)入力に接続される。これはポート1に対するデータ入力である。マルチプレクサ44の第2の入力が、書き込みポート0データIn(Write Port 0 Data In)入力に接続される。これはポート0に対するデータ入力である。マルチプレクサ44の制御入力が低電圧書き込みイネーブル信号に接続される。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ44は書き込みポート0データin信号を渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ44は書き込みポート1データin信号を渡す。マルチプレクサ44の出力はデータinのポート1ドライバ回路45の入力に接続される。ポート1ドライバ回路45の出力は書き込みビット線1(Write Bitline 1)のラベルを付される書き込みビット線を提供し、パストランジスタ36の第1の電流電極またはソースに接続される。パストランジスタ36の第2の電流電極またはドレインはメモリ・ビット・セル12のストレージノード24に接続される。書き込みポート0データIn入力も、データinのポート0ドライバ回路43の入力に接続される。ポート0ドライバ回路43の出力は書き込みビット線0(Write Bitline 0)のラベルを付される書き込みビット線を提供し、パストランジスタ40の第1の電流電極またはソースに接続される。パストランジスタ40の第2の電流電極またはドレインはメモリ・ビット・セル12のストレージノード24に接続される。示されている形態では、パストランジスタ34,36,38および40はNチャネルトランジスタである。
【0008】
マルチポートメモリ10は、読み出されているデータを提供するためのN+1個の読み出しポートも有する。示されている形態では、数Nは整数である任意の数である。第1の読み出しトランジスタ48および第Nの読み出しトランジスタ52は各々、ストレージノード24に接続されるゲートを有する。トランジスタ48および52の各々のソースは接地基準端子に接続されている。読み出しトランジスタ48のドレインは選択読み出しトランジスタ46のソースに接続されている。トランジスタ46は読み出しワード線0選択信号(Read Word Line 0 select signal)を受け取るためのゲートまたは制御電極を有する。トランジスタ46のドレインは読み出しビット線0に接続されている。読み出しトランジスタ52のドレインは選択読み出しトランジスタ50のソースに接続されている。トランジスタ50は読み出しワード線N選択信号(Read Word Line N select signal)を受け取るためのゲートまたは制御電極を有する。トランジスタ50のドレインは読み出しビット線Nに接続されている。示されている形態では、トランジスタ46,48,50および52はNチャネルトランジスタである。追加の読み出しビット線(図示せず)が読み出しビット線0と読み出しビット線Nとの間で使用されてもよい。メモリ制御ロジック54は、低電圧書き込みイネーブル信号の提供を含む、マルチポートメモリ10のためのさまざまな制御機能を提供する。メモリ制御ロジック54は、メモリ10の外部にあるテスト制御ユニットから受け取られる、テストイネーブル(Test Enable)のラベルを付される、テストポートにおける入力を有する。テストイネーブル信号は、電圧感度による読み出しまたは書き込み障害のシリコンデバッグのためのテストモードを通じて低電圧書き込みイネーブル信号をオンおよびオフにする能力を提供する。
【0009】
動作時、マルチポートメモリ10は、読み出し動作モードにおいてはデータを読み出すように、プログラムまたは書き込み動作モードにおいてはデータをプログラムまたは書き込みするように、別々に動作する。読み出し動作モードは詳述されない。書き込み動作モードは、高電圧動作モードおよび低電圧動作モードの両方を有するように機能する。理解の目的のために、「高電圧」および「低電圧」という用語は相対的なものであり、高電圧は低電圧よりも10分の1または数十分の1ボルトだけ大きいものであってもよい。例としてのみ、高電圧の1つの値は1.0ボルトであり得、低電圧の値は0.7ボルトであり得る。高電圧動作モードにおいて動作するとき、マルチポートメモリ10の単一ビットがストレージノード24上にデータを記憶するかまたはストレージノード24からデータを読み出すようにプログラムされることができる。複数のアドレス書き込みポートは独立しており、各々がアドレスを受け取る書き込みポート1および書き込みポート0を含む。高電圧モードにおける二重ポート動作では、書き込みポート1アドレスと書き込みポート0アドレスとは機能動作条件が異なる。
【0010】
最初は、メモリ10は高電圧書き込みモードにあるものと仮定する。この動作条件では、メモリ制御ロジック54は、十分な値の供給電圧V
DDを検出し、低電圧書き込みイネーブル信号をディアサートする。低電圧書き込みイネーブル信号がディアサートされていることに応答して、マルチプレクサ30は書き込みポート1アドレスを出力するように構成されることになる。高電圧モードでは、マルチプレクサ30は、書き込みポート1アドレスを書き込みワード線デコーダ32に直接結合する。書き込みワード線1は、その対応するアドレスが書き込みポート1アドレス入力に提供されることに応答してハイでアサートされることになる。書き込みワード線1はパストランジスタ34および36をオンにする。トランジスタ34および36は、データが、書き込みポート1データinおよび書き込みポート1データinB(相補的)を介してストレージノード24に書き込まれることを可能にする。書き込みポート1データinおよび書き込みポート1データinBはそれぞれ、書き込みビット線1および書き込みビット線B1に結合される。低電圧書き込みイネーブル信号がロー値である結果として、マルチプレクサ42および44は書き込みポート1データinおよび書き込みポート1Bデータinを渡す。ドライバ回路39および45は、それぞれ書き込みビット線B1および書き込みビット線1によって受け取られたデータ値をメモリセル12内に書き込む。この動作モードでは、書き込みワード線1がアサートされるときは書き込みワード線0はアサートされない。それゆえ、パストランジスタ38および40は導通していない。
【0011】
ここで高電圧動作モードにおいて、書き込みポート0アドレスが受け取られ書き込みワード線デコーダ32に直接渡されるものと仮定する。書き込みワード線0は、その対応するアドレスが書き込みポート0アドレス入力に提供されることに応答してハイでアサートされることになる。書き込みワード線0はパストランジスタ38および40をオンにする。トランジスタ38および40は、データが、書き込みポート0データinおよび書き込みポート0データinB(相補的)を介してストレージノード24に書き込まれることを可能にする。マルチプレクサ42および44は、低電圧書き込みイネーブル信号がロー値である結果として、それぞれ、書き込みポート1データInBおよび書き込みポート1データInを渡すように構成される。ドライバ回路41および43は、それぞれ書き込みポート0データinBおよび書き込みポート0データinによって受け取られたデータ値をメモリセル12内に書き込む。この動作モードにおいて、書き込みワード線0がアサートされるとき、書き込みワード線1はアサートされない。それゆえ、パストランジスタ34および36は導通していない。
【0012】
半導体メモリ10内で使用されるのに望ましい供給電圧の大きさが十分に低い一方、上述の高電圧動作モードが十分な書き込みマージンを保証するほど十分には高くないものと仮定する。この動作条件では、メモリ制御ロジック54は、不十分な値の供給電圧V
DDを検出し、低電圧書き込みイネーブル信号をハイアクティブな信号としてアサートする。低電圧書き込みイネーブル信号がアサートされていることに応答して、マルチプレクサ30は書き込みポート0アドレスを出力するように構成されることになる。それゆえ、書き込みワード線デコーダ32の両方の入力が書き込みポート0アドレスを受け取る。同じ入力を受け取ることに応答して、書き込みワード線1信号は書き込みワード線0信号と同じである。信号が同じである結果として、パストランジスタ34,36とパストランジスタ38,40とは各々、書き込み動作中に書き込みワード線0および書き込みワード線1がアサートされるとき、導通する。低電圧書き込みイネーブル信号のアサートは、マルチプレクサ42および44を、それぞれ、書き込みポート0データinBおよび書き込みポート0データinをそれぞれのドライバ回路39および45の入力に結合するように構成する。結果として、ビットセル12は、2つのデータドライバ回路43および45ならびにそれらの相補物によって同じデータに対して書き込まれる。この二重ドライブの利点は、パストランジスタ40および36のそれぞれと、それらの相補物とによるストレージノード24へのデータの書き込みによる二倍の強度が存在することである。書き込み強度が二倍であることによって、低い値の供給電圧下で書き込みマージンが向上する。
【0013】
メモリ10は2つの書き込みポートの形態で複数の書き込みポートを示しているが、追加の書き込みポートが付加され、パストランジスタを介してストレージノード24に接続されるマルチプレクサおよび書き込みドライバを用いて構成されてもよいことが理解されるべきである。この代替の構成では、追加の書き込みポートは、書き込まれているデータビットの強度をなおさらに向上させるか、または各々が二倍のドライブ強度を有する追加の書き込みポートを有するように使用されてもよい。メモリ制御ロジック54は、すべての書き込み動作について低電圧動作モードに入らず、特定の電圧遷移手順を有する必要がないように構成されることができることが理解されるべきである。それゆえ、別の形態では、起動時に低電圧モードに入り、メモリは供給電圧が低電圧値からより高い電圧値に変化すると二倍の強度における二重ドライブモードになるように構成される。さらに別の実施形態では、低電圧条件下において書き込みマージンが低減された複数の弱磁化ビットを含む所定の書き込みポートアドレスのセットに対してのみ選択的に低電圧二倍強度書き込みモードに入る。
【0014】
図2には、メモリ10におけるように2つの書き込みポートを有するのではなく、1つの書き込みデータポートおよび1つの読み出しデータポートを有するマルチポートメモリ100が示されている。通常動作において、読み出しポートおよび書き込みポートは1つの同じビットセルに対して同時にアクティブにはならない。メモリ100は1つの同じメモリサイクルの間に読み出しデータを提供し、書き込みデータを受け取ることができる。マルチポートメモリ100は、Pチャネルトランジスタ62のソースが、V
DDのラベルを付される電源端子に接続されているビットセル60を有する。トランジスタ62のドレインは、ストレージノード64およびNチャネルトランジスタ66のドレインに接続されている。トランジスタ66のソースは接地基準端子に接続されている。トランジスタ62のゲートはストレージノード70においてトランジスタ66のゲートに接続されている。Pチャネルトランジスタ68は、V
DD電源端子に接続されるソースと、ストレージノード70においてNチャネルトランジスタ72のドレインに接続されるドレインとを有する。トランジスタ68のゲートはストレージノード64においてトランジスタ72のゲートに接続されている。マルチポートメモリ100は、2つのアドレスポート、すなわち、書き込みアドレスポートおよび読み出しアドレスポートを有する。書き込みアドレスはマルチプレクサ81の第1の入力およびワード線デコーダ82の第1の入力に接続される。読み出しアドレスはマルチプレクサ81の第2の入力に接続されている。マルチプレクサ81の制御入力が低電圧書き込みイネーブル信号に接続されている。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ81は書き込みアドレスを渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ81は読み出しアドレスを渡す。マルチプレクサ81の出力はワード線デコーダ82の第2の入力に接続される。ワード線デコーダ82の第1の出力は書き込みワード線を提供し、ワード線デコーダ82の第2の出力は読み出しワード線を提供する。読み出しワード線はパストランジスタ74およびパストランジスタ76のゲートに接続される。書き込みワード線はパストランジスタ78およびパストランジスタ80のゲートに接続される。示されている形態では、パストランジスタ74,76,78および80はNチャネルトランジスタである。
【0015】
書き込みデータポートは、書き込みポートデータ、および書き込みポートデータInBとして指定される相補的な書き込みポートデータの両方を受け取る。書き込みポートデータInBは書き込みドライバデータinB83および書き込みドライバinB84の両方の入力に接続される。マルチポートメモリ100が給電されているとき、書き込みドライバデータinB83は連続的にイネーブルされている。書き込みドライバデータinB84は、低電圧書き込みイネーブル信号を受け取るための制御端子を有し、選択的にイネーブルされる。書き込みドライバデータinB83の出力は、書き込みビット線Bのラベルを付される相補的な書き込みビット線を提供し、パストランジスタ78のソースに接続される。パストランジスタ78のドレインはストレージノード64に接続される。書き込みドライバデータinB84の出力は、読み出しビット線Bのラベルを付される相補的な読み出しビット線を提供し、パストランジスタ74のソースに接続される。パストランジスタ74のドレインはストレージノード64に接続される。
【0016】
書き込みポートデータInは書き込みドライバデータin86および書き込みドライバデータin88の両方の入力に接続される。マルチポートメモリ100が給電されているとき、書き込みドライバデータin88は連続的にイネーブルされている。書き込みドライバデータin86は、低電圧書き込みイネーブル信号を受け取るための制御端子を有し、選択的にイネーブルされる。書き込みドライバデータin88の出力は、書き込みビット線を提供し、パストランジスタ80のソースに接続される。パストランジスタ80のドレインはストレージノード70に接続される。書き込みドライバデータin86の出力は、読み出しビット線を提供し、パストランジスタ76のソースに接続される。パストランジスタ76のドレインはストレージノード70に接続される。読み出しビット線はセンスアンプ61の第1の入力に接続され、相補的な読み出しビット線、すなわち読み出しビット線Bはセンスアンプ61の第2の入力に接続される。センスアンプ61の出力は読み出しデータポートにおいて読み出しデータを提供する。メモリ制御ロジック90は、低電圧書き込みイネーブル信号の提供を含む、マルチポートメモリ100のためのさまざまな制御機能を提供する。
【0017】
動作時、高電圧動作モードが最初に示されており、低電圧書き込みイネーブル信号は論理ロー値であり、その結果書き込みドライバ84および86はディセーブルされているものと仮定する。別個の読み出しおよび書き込みポートがある。高電圧モードでは、読み出しアドレスがマルチプレクサ81を介してワード線デコーダ82の入力に結合され、当該デコーダは読み出しワード線をアサートする。これに応答して、パストランジスタ74および76は導通する。ビットセル60のストレージノード70におけるデータが、読み出しデータポートにおいてセンスアンプ61を通じて読み出される。
【0018】
書き込み動作モードにおいて、最初は、メモリ100は高電圧書き込みモードにあるものと仮定する。高電圧モードでは、マルチプレクサ81は、読み出しアドレスをワード線デコーダ82の第2の入力に直接結合するように構成される。書き込み動作の間、書き込みアドレスはワード線デコーダ82の第1の入力に直接接続され、書き込みワード線に提供される。これに応答して、パストランジスタ78および80は導通する。トランジスタ78および80は、データが、書き込みポートデータinおよび書き込みポートデータinB(相補的)を介してストレージノード70に書き込まれることを可能にする。ドライバ83および88は、それぞれ書き込みポートデータinBおよび書き込みポートデータinによって受け取られたデータ値をメモリセル60内に書き込む。この動作モードでは、書き込みドライバ84および86は、低電圧書き込みイネーブル信号がロー値を有することに応答してアクティブでない。
【0019】
半導体メモリ100内で使用されるのに望ましい供給電圧の大きさが十分に低い一方、上述の高電圧動作モードが十分な書き込みマージンを保証するほど十分には大きくないものと仮定する。この動作条件では、メモリ制御ロジック54は、不十分な値の供給電圧V
DDを検出し、低電圧書き込みイネーブル信号をアクティブハイ信号としてアサートする。低電圧書き込みイネーブル信号がアサートされていることに応答して、マルチプレクサ81は書き込みアドレスをワード線デコーダ82の第2の入力に出力するように構成されることになる。それゆえ、書き込みワード線デコーダ82の両方の入力が書き込みアドレスを受け取る。書き込み動作中、ワード線デコーダ82がその第1の入力および第2の入力の両方上でメモリセル60に対応するアドレスを受け取ることに応答して、書き込みワード線信号および読み出しワード線信号の両方がアサートされ、結果としてパストランジスタ78および80ならびにパストランジスタ74および76が導通する。低電圧書き込みイネーブル信号のアサートは、書き込みドライバデータin86および書き込みドライバデータinB84の各々をアクティブにし、それぞれの読み出しビット線を通じてストレージノード70に対するそれらのそれぞれの入力をドライブさせる。それゆえ、低電圧モードにおける書き込み動作中、ビットセル60はデータドライバ86および88ならびに同じデータに対するそれらの相補物によって書き込まれる。この二重ドライブの利点は、パストランジスタ80および76のそれぞれと、それらの相補物とによるストレージノード70へのデータの書き込みによる二倍の強度が存在することである。書き込み強度が二倍であることによって、低い値の供給電圧下で書き込みマージンが向上する。書き込みドライバ84および86が書き込み動作中にイネーブルされるが、それらは読み出し動作中はディセーブルされ、それによって、ビットセル60のストレージノード70におけるデータが読み出しデータポートにおいてセンスアンプ61を通じて読み出されることができる。
【0020】
要約すると、マルチポートメモリ100は書き込みアドレスポートを読み出しアドレスポートと選択的に融合し、これはビットセル60のストレージノード70に対する書き込み強度の倍増を実施する。機能を増強するために追加の読み出しまたは書き込みポートが付加されることができ、それらの各々がストレージノード70のドライブ強度の選択的増大を有するように構成されることができることが理解されるべきである。ドライブ強度を二倍にすることが示されているが、示されているものと並列に追加のポート、ドライバ、および関連制御を付加することによって他のドライブ強度量を実装することができることが理解されるべきである。アドレスマルチプレクサ81を使用することによって書き込みアドレスポートを読み出しアドレスポートと融合するための回路が示されているが、メモリ制御ロジック90およびアドレス生成ユニット(図示せず)の制御下にあるアドレスバスを通じてワード線デコーダ82に1つの同じ書き込みおよび読み出しアドレスを直接提供することによって、他の方法および回路を実装することができることが理解されるべきである。
【0021】
図3には、
図1のマルチポートメモリ10または
図2のマルチポートメモリ100のいずれかの動作の例示的なタイミング図が示されている。高電圧モードに関連付けられるタイミング信号が提供され、低電圧書き込みイネーブル信号はこのモードでは論理ロー値を有する。高電圧モードでは、各サイクルが2つの等しい位相を有する4つのサイクルが示されている。各位相において読み出しまたは書き込み動作が発生することができる。例示の目的のために、位相1は書き込み動作であり、位相2は読み出し動作であるものと仮定する。メモリ動作の別のシーケンスが実装されてもよいことが理解されるべきである。供給電圧は十分に高いように決定されるため、位相1の間の書き込み動作は要求される書き込みマージンを満たす。位相1は、メモリ10の二重書き込みアドレスポートの書き込みポートのうちのいずれか一方からの書き込みのために構成されることができる。同様に、位相2は複数の読み出しポートのうちの1つからの読み出しのために構成されることができる。
図1のマルチポートメモリ10について、高電圧動作モードにおいて、2つの異なるポートを使用する1サイクルごとに2つの書き込み動作位相が得られることが理解されるべきである。
図1のマルチポートメモリ10について、供給電圧が、低すぎて適切な書き込みマージンを保証することができないように決定される場合、低電圧書き込みイネーブル信号が論理ハイ信号としてアサートされ、図示されるように同じメモリ動作が行われるが、1つのクロック位相中1つの書き込み動作のみであることも理解されるべきである。
【0022】
図4には、その例の一部が低電圧モードにあるときの、
図2のマルチポートメモリ100の動作の例示的なタイミング図が示されている。メモリは、
図3においては1つのサイクルにおいて読み出しおよび書き込みを実行することができるのとは反対に、1つのサイクルにおいて書き込みまたは読み出しのいずれかを実行するように構成される。書き込み動作はメモリサイクル1の第1の位相において行われる。同じサイクルの第2の位相は、書き込みおよび読み出しビット線をプリチャージするために使用される。次の位相において、読み出しが検出されている。1つの形態では、メモリ制御ロジック90は、次回のメモリ動作が何であるかを決めることができる。読み出し動作が行われることを許可するために、書き込み動作は第2のサイクルの第1の位相においては実行を阻害されなければならない。読み出し動作中に読み出しビット線はプリチャージされており、結果としてデータ読み出しが不正確になるであろうから、書き込みは阻害される必要がある。第2のサイクルの第1の位相において、低電圧書き込みイネーブル信号がローになり、高電圧モードに戻る遷移が起こる。高電圧動作モードは、メモリ制御ロジック90が保留書き込みコマンドを検出するまで存続する。ワード線デコーダ82の両方の入力への書き込みアドレスの結合によって読み出しワード線が乱されないことを確実にするために、すべての読み出し動作の間に低電圧書き込みイネーブル信号がロー値であることが必要とされる。次回の書き込み動作を検出する結果として、直前の位相は読み出しが行われることを阻害する。書き込み中に読み出しビット線はプリチャージされ、書き込み中に読み出しビット線が使用される必要があるため、読み出しは阻害される必要がある。それゆえ、書き込み動作の直前の位相において読み出し動作が行われることは阻害されなければならない。書き込みおよび読み出し動作が阻害されるサイクルは結果としてマルチポートメモリ100においてスループットの損失となり、低供給電圧における書き込みマージンの増大のためのコストである。
【0023】
図5には、各々が読み出しポート、書き込みポートまたはその両方として構成されることが可能である2つの一般アドレスポートを有するマルチポートメモリ200が示されている。ここにも2つのデータポート、すなわちデータポート0およびデータポート1がある。マルチポートメモリ200は、Pチャネルトランジスタ262のソースが、V
DDのラベルを付される電源端子に接続されているビットセル202を有する。トランジスタ262のドレインは、ストレージノード264およびNチャネルトランジスタ266のドレインに接続されている。トランジスタ266のソースは接地基準端子に接続されている。トランジスタ262のゲートはストレージノード270においてトランジスタ266のゲートに接続されている。Pチャネルトランジスタ268は、V
DD電源端子に接続されるソースと、ストレージノード270においてNチャネルトランジスタ272のドレインに接続されるドレインとを有する。トランジスタ268のゲートはストレージノード264においてトランジスタ272のゲートに接続されている。マルチポートメモリ200は、アドレスポート0およびアドレスポート1のラベルを付される2つのアドレスポートを有し、これらは読み出しアドレスまたは書き込みアドレスのいずれかを受け取ることができる。アドレスポート1はマルチプレクサ281の第1の入力およびワード線デコーダ282の第1の入力に接続される。アドレスポート0はマルチプレクサ281の第2の入力に接続される。マルチプレクサ281の制御入力は低電圧書き込みイネーブル信号に接続されている。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ281はアドレスポート1からのアドレスを渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ281はアドレスポート0からのアドレスを渡す。マルチプレクサ281の出力はワード線デコーダ282の第2の入力に接続される。ワード線デコーダ282の第1の出力は第1のワード線、すなわちワード線0を提供し、ワード線デコーダ282の第2の出力は第2のワード線、すなわちワード線1を提供する。ワード線1はパストランジスタ274およびパストランジスタ276のゲートに接続される。ワード線0はパストランジスタ278およびパストランジスタ280のゲートに接続される。示されている形態では、パストランジスタ274,276,278および280はNチャネルトランジスタである。
【0024】
データポートは2つの書き込みポートおよび2つの読み出しポートの両方を含む。各書き込みデータポートは、書き込みポートデータと、データ0Bまたはデータ1Bとして指定される相補的な書き込みポートデータとの両方を受け取る。データ1B書き込みポートは書き込みドライバデータinB284とマルチプレクサ296の第1の入力との両方の入力に接続される。書き込みドライバデータinB284は、書き込み動作中にのみデータをビット線1Bに向けてドライブする。データ0B書き込みポートはマルチプレクサ296の第2の入力に接続される。マルチプレクサ296は、低電圧書き込みイネーブル信号を受け取るための制御端子を有する。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ296はデータ1B書き込みポート上のデータを渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ296はデータ0B書き込みポート上のデータを渡す。マルチプレクサ296の出力は書き込みドライバデータinB283の入力に接続される。書き込みドライバデータinB283の出力は、ビット線0Bのラベルを付される相補的なビット線を提供し、パストランジスタ278のソースに接続される。パストランジスタ278のドレインはストレージノード264に接続される。書き込みドライバデータinB284の出力は、ビット線1Bのラベルを付される相補的なビット線を提供し、パストランジスタ274のソースに接続される。パストランジスタ274のドレインはストレージノード264に接続される。
【0025】
データ1書き込みポートは書き込みドライバデータinB286およびマルチプレクサ298の第1の入力の、両方の入力に接続される。マルチプレクサ298の第2の入力が、データ0書き込みポートに接続される。マルチプレクサ298は、低電圧書き込みイネーブル信号を受け取るための制御端子を有する。低電圧書き込みイネーブル信号がアサートされているとき、マルチプレクサ298はデータ1書き込みポート上のデータを渡す。低電圧書き込みイネーブル信号がアサートされていないとき、マルチプレクサ298はデータ0書き込みポート上のデータを渡す。マルチプレクサ298の出力は書き込みドライバデータin288の入力に接続される。書き込みドライバデータin288の出力は、ビット線0を提供し、パストランジスタ280のソースに接続される。パストランジスタ280のドレインはストレージノード270に接続される。書き込みドライバデータin286の出力は、ビット線1を提供し、パストランジスタ276のソースに接続される。パストランジスタ276のドレインはストレージノード270に接続される。ビット線1およびビット線0はそれぞれ、センスアンプ292およびセンスアンプ294の各々の第1の入力に接続される。ビット線1Bおよびビット線0Bはそれぞれ、センスアンプ292およびセンスアンプ294の各々の第2の入力に接続される。センスアンプ294の出力は読み出しデータポート0において読み出しデータを提供する。センスアンプ292の出力は読み出しデータポート1において読み出しデータを提供する。メモリ制御ロジック290は、低電圧書き込みイネーブル信号の提供を含む、マルチポートメモリ200のためのさまざまな制御機能を提供する。
【0026】
動作時、メモリ200はデータの読み出しおよびデータのプログラムまたは書き込みの両方のために機能する。メモリ200の読み出し動作は実質的に、1つの読み出しポートを有するメモリ100とともに
図2において説明されたものと同じである。メモリ200は1つまたは2つの読み出しポートを有することができる。メモリ200は、1つの読み出しポートおよび1つの書き込みポート、2つの読み出しポートおよび2つの書き込みポートの動作モードに構成されることができる。読み出し動作時、メモリ制御ロジック290によってメモリ200において高電圧モードが確立されるものと仮定する。高電圧モードでは、読み出しアドレスはアドレスポートのうちの1つに結合されワード線デコーダ282に入力される。例示のみを目的として、読み出しアドレスはアドレスポート0に提供されるものと仮定する。それに応答して、ワード線デコーダ282はワード線0をアサートする。これに応答して、パストランジスタ278および280は導通する。ビットセル202のストレージノード270におけるデータが、読み出しデータポート0においてセンスアンプ294を通じて読み出される。
【0027】
書き込み動作モードにおいて、最初は、メモリ200は高電圧書き込みモードにあるものと仮定する。高電圧モードでは、マルチプレクサ281は、アドレスポート0にあるアドレスをワード線デコーダ282の第1の入力に直接結合するように構成される。例示のみを目的として、書き込みアドレスはアドレスポート0に提供されるものと仮定する。それに応答して、ワード線デコーダ282はワード線0をアサートする。ワード線0がアサートされることに応答して、パストランジスタ278および280は導通する。トランジスタ278および280は、データが、データ0書き込みポートおよびデータ0B書き込みポート(相補的)を介してストレージノード270に書き込まれることを可能にする。ドライバ283および288は、それぞれデータ0B書き込みポートおよびデータ書き込みポートによって受け取られたデータ値をメモリセル202内に書き込む。加えて、書き込みドライバ284および286はそれぞれ、データ1B書き込みポートおよびデータ1書き込みポートに応答する。しかしながら、ワード線1がワード線デコーダ282によってアサートされないため、データ1書き込みポートからメモリ・ビット・セル202へ結合されるデータはない。高電圧モードでは、低電圧書き込みイネーブル信号は、マルチプレクサ296および298をそれぞれ、データ0B書き込みポートおよびデータ0書き込みポートである2つのデータ0書き込みポートを渡すように構成する。
【0028】
半導体メモリ200内で使用されるのに望ましい供給電圧の大きさが十分に低い一方、上述の高電圧動作モードが十分な書き込みマージンを保証するほど十分には高くないものと仮定する。この動作条件では、メモリ制御ロジック290は、不十分な値の供給電圧V
DDを検出し、低電圧書き込みイネーブル信号をハイアクティブ信号としてアサートする。低電圧書き込みイネーブル信号がアサートされていることに応答して、マルチプレクサ281はアドレスポート1をワード線デコーダ282の第1の入力に出力するように構成されることになる。それゆえ、書き込みワード線デコーダ282の両方の入力がアドレスポート1上のアドレスを受け取る。書き込み動作中、ワード線デコーダ282がその第1の入力および第2の入力の両方上でメモリセル202に対応するアドレスを受け取ることに応答して、ワード線0およびワード線1信号の両方がアサートされ、結果としてパストランジスタ278および280ならびにパストランジスタ274および276が導通する。それゆえ、ワード線0およびワード線1の両方がメモリセル202においてアサートされる。低電圧書き込みイネーブル信号のアサートはデータ1書き込みポートおよびデータ1B書き込みポートの通過をそれぞれ、マルチプレクサ298および296を通じて、マルチプレクサ298および296を通じて書き込みドライバ288および書き込みドライバ283のそれぞれの入力に結合する。加えて、データ1書き込みポートは、アクティブ動作モードにある書き込みドライバ286の入力に直接接続される。書き込みドライバ286は、ビット線1を使用することによってパストランジスタ276を通じてストレージノード270に向けてデータをドライブすることになる。それゆえ、低電圧モードにおける書き込み動作中、ビットセル202はデータドライバ286および288ならびに同じデータに対するそれらの相補物によって書き込まれる。この二重ドライブの利点は、パストランジスタ280および276のそれぞれと、それらの相補物とによるストレージノード270へのデータの書き込みによる二倍の強度が存在することである。書き込み強度が二倍であることによって、低い値の供給電圧下で書き込みマージンが向上する。
【0029】
要約すると、マルチポートメモリ200は、書き込み強度の倍増を実装するための2つのアドレスポートおよび2つのデータポートをビットセル202のストレージノード270に選択的に融合する。機能を増強するために追加のアドレスおよびデータポートが付加されることができ、それらの各々がストレージノード270のドライブ強度の選択的増大を有するように構成されることができることが理解されるべきである。ドライブ強度を二倍にすることが示されているが、示されているものと並列に追加のポート、ドライバ、および関連制御を付加することによって他のドライブ強度量を実装することができることが理解されるべきである。アドレスマルチプレクサ281ならびに書き込みデータポートマルチプレクサ298および296を使用することによってアドレスポートおよびデータポートを融合するための回路が示されているが、メモリ制御ロジック290の制御下でメモリ200に結合されるアドレス生成バスユニット(図示せず)および書き込みデータバス(図示せず)から外部的に、2つのアドレスポート上の1つの同じアドレスおよび2つの書き込みポートに対する1つの同じデータを提供することによって、他の方法が実施されてもよいことも理解されるべきである。
【0030】
ここまでで、ビットセル書き込みマージンを増大させるためにメモリ書き込み動作のための書き込みポートを選択的に組み合わせることが可能な多重ポート(マルチポート)メモリが提供されたことが理解されるべきである。ビットセルに対する書き込み動作を実行するために2つ以上の書き込みポートが同時に起動されるとき、2つの書き込みワード線がアサートされ、両方の書き込みポートの対のビット線に向けてデータがドライブされる。2対のパスゲートが導通していることによって、メモリ・ビット・セルに並列に結合される選択されたパストランジスタのコンダクタンスが増大し、それによって、メモリ・ビット・セルの、プルアップトランジスタ、および相補側のプルダウントランジスタのレジスタンスと比較してパストランジスタのレジスタンスが低下する。それゆえ、2つの結合トランジスタが導通することからコンダクタンスが増大することによって、メモリ・ビット・セルは書き込みがより容易になる。共に接続される書き込みポートの数は、ビットセルがテストモードにあるかもしくは動作モードにあるか、または高スループット性能動作が必要とされているか否かのような、メモリ・ビット・セルの動作条件に応じて変更する場合がある。よりスループットの低い用途について、著しく低い電圧が低電圧書き込みモードにおいて使用される場合があり、電力消費が著しく低下する。
【0031】
書き込み動作を実行するために使用される書き込みポートの数を変更する能力は、テストまたはデバッグ目的にも使用される場合がある。例えば、汎用レジスタ(GPR)の書き込み障害が複数の技術世代にわたって観測されている。GPRを適切に機能させなければ、集積回路の機能は制限される。本明細書において記載されている回路実施形態を用いれば、書き込み障害が回避されることができる。テストポートを通じて低電圧書き込みイネーブル信号をオンおよびオフにする能力を用いて、Vmin障害のシリコンデバッグが、障害が書き込みVmin障害であるかまたは読み出しVmin障害であるかを区別することが容易になる。例えば、障害が低電圧モードにおける書き込み後に検出された場合、二重電圧モードの後続の書き込みが行われることができる。第2の書き込み動作はほとんどの書き込み障害を訂正および除去し、それによってその後の障害が読み出しVmin障害であると正確に判定されることができる。書き込み動作中に読み出しポートが書き込みポートとして使用される場合、メモリ・ビット・セル・トランジスタのパラメータは、より低い電圧において2つの書き込みポートが首尾よい書き込みに使用されるように、読み出しマージンを支持するために変更するよう設計されることができる。従って、本明細書において記載されている実施形態は、確実なビットセル書き込み動作に応じてデータスループットを調整することによって、メモリ・ビット・セルの動作条件に対して書き込みポートの数を変更する能力を可能にする。
【0032】
メモリ制御ロジック54、メモリ制御ロジック90およびメモリ制御ロジック290のいずれかは、動作電圧でなく、動作温度の変化、または何らかの他の動作条件に応じて書き込みポートの数を変更するように構成されることができることが理解されるべきである。例えば、1つの実施形態において、第1のモードでは、マルチポートメモリが第1の温度において動作することを特徴とし、第2のモードでは、マルチポートメモリが第2の温度において動作することを特徴とし、第2の温度は第1の温度とは異なる。1つの形態では、第2の温度は第1の温度よりも低い。
【0033】
本明細書において、1つの形態では、ストレージノードを有するメモリセルを有するマルチポートメモリが提供される。ストレージノードと第1のポートとの間に第1のパストランジスタが結合される。ストレージノードと第2のポートとの間に第2のパストランジスタが結合される。マルチポートメモリが電源ノードにおいて第1の電圧によって給電されるとき、第1のモードにおいて、それぞれ、第1のポートおよび第2のポートのうちの一方から第1のパストランジスタおよび第2のパストランジスタのうちの一方を通じてストレージノードにデータを書き込むために、書き込み回路が第1のポートおよび第2のポートに結合される。マルチポートメモリが電源ノードにおける第1の電圧と異なる第2の電圧によって給電されるとき、第2のモードにより第1のポートおよび第2のポートから同時に第1のパストランジスタおよび第2のパストランジスタを同時に通じてストレージノードにデータは書き込まれる。別の形態では、メモリは、ストレージノードに結合される読み出し回路をさらに有する。1つの形態では、書き込み回路は、データを書き込むために第1のポートと第2のポートとの間で選択的に選択する。別の形態では、書き込み回路は、第1のポートから書き込まれるデータを受け取るための第1の入力、第2のポートから書き込まれるデータを受け取るための第2の入力、および、第1のポートに結合される出力を有する第1のマルチプレクサを有する。
【0034】
さらに別の形態では、第1のポートは第1のパストランジスタをイネーブルするための部分を有し、第2のポートは第2のパストランジスタをイネーブルするための部分を有する。書き込み回路は、第1のポートの第1のパストランジスタをイネーブルするための部分から第1のパストランジスタのためのイネーブル信号を受け取るための第1の入力、第2のポートの第2のパストランジスタをイネーブルするための部分から第2のパストランジスタのためのイネーブル信号を受け取るための第2の入力、および、第1のパストランジスタに結合される出力を有する第2のマルチプレクサをさらに有する。別の形態では、メモリセルは、第2のストレージノードを有する。マルチポートメモリは、ストレージノードと第1のポートの相補物との間に結合される第3のパストランジスタを有する。ストレージノードと第2のポートの相補物との間に第4のパストランジスタが結合される。マルチポートメモリが電源ノードにおいて第1の電圧によって給電されるとき、書き込み回路は、第1のモードにおいて、それぞれ、第1のポートおよび第2のポートのうちの一方の相補物から第3のパストランジスタまたは第4のパストランジスタを通じて第2のストレージノードにデータを書き込むために、第1のポートおよび第2のポートの相補物に結合される。マルチポートメモリが電源ノードにおける第1の電圧と異なる第2の電圧によって給電されるとき、第2のモードにより第1のポートおよび第2のポートの相補物から同時に第3のパストランジスタおよび第4のパストランジスタを同時に通じて第2のストレージノードにデータは書き込まれる。別の形態では、第1のモードにおいて第1のポートは書き込みポートであり、第2のポートは読み出しポートである。
【0035】
さらに別の形態では、メモリは、第2のポートに結合されるセンスアンプをさらに有する。マルチポートメモリのさらに別の形態では、書き込み回路は、第1のポートから書き込まれるデータを受け取るための第1の入力、第2のモードにおいて第2のポートから書き込まれるデータを受け取るための第2の入力、および、第1のポートに結合される出力を有する第1のマルチプレクサを有する。さらに別の形態では、第1のポートおよび第2のポートは第1のモードにおいて独立した読み出し/書き込みポートとして機能する。さらに別の形態では、マルチポートメモリは、第1のポートに結合される第1のセンスアンプ、および、第2のポートに結合される第2のセンスアンプをさらに有する。
【0036】
さらに別の形態では、本明細書において、マルチポートメモリの動作する方法が提供される。第1のモードにおいて、データは第1のポートから第1のコンダクタンスを通じてメモリセルのストレージノードに書き込まれ、第1のモードは電源電圧が第1のレベルにおいて電源ノードにおいて印加されることを特徴とする。第2のモードにより第1のポートから第1のコンダクタンスを通じて、および第2のポートから第2のコンダクタンスを同時に通じてデータはメモリセルのストレージノードに書き込まれ、第2のモードは電源電圧が第1のレベルと異なる第2のレベルにおいて電源ノードにおいて印加されることを特徴とする。別の形態では、第2のレベルは第1のレベルよりも低い。別の形態では、第1のモードおよび第2のモードの間に、ストレージノードに記憶されているデータが、ストレージノードに結合されているセンスアンプを通じて読み出される。さらに別の形態では、ストレージノードに記憶されているデータが、第2のポートに結合されている第1のセンスアンプを通じて読み出される。さらに別の形態では、ストレージノードに記憶されているデータが、第1のポートに結合されている第2のセンスアンプを通じて読み出される。さらに別の形態では、第1のコンダクタンスは第2のコンダクタンスと等しい。別の形態では、第1のコンダクタンスは、ストレージノードと第1のポートとの間に結合される第1の導電性トランジスタによって得られ、第2のコンダクタンスは、ストレージノードと第2のポートとの間に結合される第2の導電性トランジスタによって得られる。
【0037】
別の形態では、マルチポートメモリの動作方法であって、第1の動作モードにより、第2のポートの動作から独立して、第1のポートを通じてメモリのストレージノードにデータを書き込む、というマルチポートメモリの動作方法が提供される。第2の動作モードにおいて、データは、第1のポートおよび第2のポートを通じてストレージノードに同時に書き込まれるデータである。さらに別の形態では、第1のモードでは、マルチポートメモリが第1の温度において動作することを特徴とする。第2のモードでは、マルチポートメモリが第2の温度において動作することを特徴とし、第2の温度は第1の温度とは異なる。1つの形態では、第2の温度は第1の温度よりも低い。
【0038】
本発明を実装する装置は、大部分について、当業者に既知の電子コンポーネントおよび回路から成っているため、本発明の基礎となる概念の理解および評価のために、ならびに本発明の教示を分かりにくくせず当該教示から逸脱しないように、回路の詳細は上記で例示されているように必要と考えられる範囲を超えては説明されない。
【0039】
本発明は特定の導電型または電位の極性に関して記載されているが、当業者には導電型および電位の極性は逆になってもよいことが理解される。さらに、上述の動作の機能間の境界は例示にすぎないことを当業者であれば認識するであろう。複数の動作の機能を単一の動作に組み合わせることができ、かつ/または単一の動作の機能を追加の動作に分散させることができる。その上、代替的な実施形態は、特定の動作の複数の事例を含んでもよく、動作の順序はさまざまな他の実施形態においては変更してもよい。
【0040】
本明細書において、具体的な実施形態を参照して本発明を説明したが、添付の特許請求の範囲に明記されているような本発明の範囲から逸脱することなくさまざまな改変および変更を為すことができる。例えば、さまざまなビット・セル・トランジスタ構造およびさまざまな種類のセンスアンプが使用されてもよい。記載されている機能を実行するために、導電型が異なるトランジスタが容易に実装されることができる。さまざまなマルチプレクサ回路およびドライバ回路のいずれが使用されてもよい。メモリ回路のレイアウトは本質的に対称であっても非対称であってもよい。所望のパフォーマンスレベルおよび電力消費基準に基づいて低電圧モードおよび高電圧モードが使用されるときを判断するために論理部が含まれてもよい。従って、本明細書および図面は限定的な意味ではなく例示とみなされるべきであり、すべてのこのような改変が本発明の範囲内に含まれることが意図されている。本明細書において具体的な実施形態に関して記載されているいかなる利益、利点、または問題に対する解決策も、任意のまたはすべての請求項の重要な、必要とされる、または基本的な特徴または要素として解釈されるようには意図されていない。
【0041】
本明細書において使用される場合、「結合されている」という用語は、直接結合または機械的結合に限定されるようには意図されていない。さらに、本明細書において使用される場合、「1つ(“a” or “an”)」という用語は、1つまたは2つ以上として定義される。さらに、特許請求の範囲における「少なくとも1つの」および「1つまたは複数の」のような前置きの語句の使用は、不定冠詞「1つの(“a” or “an”)」による別の請求項要素の導入が、このように導入された請求項要素を含む任意の特定の請求項を、たとえ同じ請求項が前置きの語句「1つまたは複数の」または「少なくとも1つの」および「1つの(“a” or “an”)」のような不定冠詞を含む場合であっても、1つだけのこのような要素を含む発明に限定することを暗示するように解釈されるべきではない。同じことが、定冠詞の使用についても当てはまる。別途記載されない限り、「第1の」および「第2の」のような用語は、そのような用語が説明する要素間で適宜区別するように使用される。従って、これらの用語は必ずしも、このような要素の時間的なまたは他の優先順位付けを示すようには意図されていない。