(57)【要約】複数の対の相補ビット線（２００，２０２）および複数のラッチ回路を含むメモリ素子。複数の対の相補ビット線の各対はメモリ・セル（３１，３７）の列と結合している。各ラッチ回路は、データ線と結合している入力と、データ線の値により相補ラッチ値を供給するための第１の出力および第２の出力とを含む。複数の各ラッチの場合、第１の出力は、第１のビット線の値が、メモリ素子の動作中、第１の出力により連続的に決まるように複数のうちの一対の第１のビット線と結合し、第２の出力は、第２のビット線の値が、メモリ素子の動作中、第２の出力により連続的に決まるように一対の第２のビット線と結合している。
2008503029.tif 000002
【特許請求の範囲】
【請求項１】
メモリ素子であって、
ビット線と、
同ビット線と結合しているメモリ・セルの列と、
データ線と結合している入力および同データ線の値によりラッチされた値を供給する出力を有するラッチ回路と、を備え、
前記出力は前記ビット線と結合して、メモリ素子の動作中、前記ビット線の値が前記出力により連続的に決まる、メモリ素子。
【請求項２】
前記ビット線が書き込みビット線である請求項１に記載のメモリ素子。
【請求項３】
読み出しビット線をさらに備え、前記メモリ・セルの列が前記読み出しビット線と結合している請求項２に記載のメモリ素子。
【請求項４】
第２のビット線をさらに備え、同第２のビット線が前記ビット線に対する相補ビット線であり、前記メモリ・セルの列が前記第２のビット線と結合している請求項１に記載のメモリ素子。
【請求項５】
前記ラッチ回路が第２の出力を含み、メモリ素子の動作中、同第２の出力が前記第２のビット線と結合して、同第２のビット線の値が前記第２の出力により連続的に決まる、請求項４に記載のメモリ素子。
【請求項６】
前記ラッチ回路が、一対のクロス結合しているインバータを含み、
前記ラッチ回路の出力が、前記一対のインバータの第１のインバータの入力および前記一対のインバータの第２のインバータの出力と結合している請求項１に記載のメモリ素子。
【請求項７】
前記ラッチ回路が第３のインバータを含み、同第３のインバータは前記ラッチ回路の出力と接続している出力と、前記一対のインバータの第１のインバータの入力および前記一対のインバータの第２のインバータの出力と接続している入力と、を有する請求項６に記載のメモリ素子。
【請求項８】
前記ラッチ回路が、クロック信号を受信するための第２の入力を含み、前記ラッチ回路の出力でのラッチ値が、前記クロック信号の状態の変化により決まる時点のデータ線の値により値を変化する請求項１に記載のメモリ素子。
【請求項９】
前記ビット線の値が、前記クロック信号の状態の変化により決まる時点のデータ線上の値に応じてだけ変化する請求項８に記載のメモリ素子。
【請求項１０】
メモリ・セルに書き込み信号を送るために、前記メモリ・セルの列のメモリ・セルと結合しているワード線と、
前記書き込み信号を供給するために前記ワード線と結合している出力を有し、クロック信号を受信するための入力を含むワード線生成回路とをさらに備え、前記書き込み信号が、前記ワード線生成回路の前記入力のところで受信する前記クロック信号の状態の変化により決まる時点で状態を変化させ、
前記ワード線生成回路が受信するクロック信号および前記ラッチの第２の入力のところで受信するクロック信号が、共通のクロック信号により生成される請求項８に記載のメモリ素子。
【請求項１１】
前記ラッチ回路の出力のところの値が、第１の状態から第２の状態への共通のクロック信号の状態の変化により決まる時点のデータ線の値により値を変化させ、
前記書き込み信号が、前記第１の状態から前記第２の状態への共通のクロック信号の状態の変化により決まる時点で非書込み状態から書込み状態に変化する請求項１０に記載のメモリ素子。
【請求項１２】
前記書き込み信号が、前記第２の状態から前記第１の状態への共通のクロック信号の状態の変化により決まる時点で書込み状態から非書込み状態に変化する請求項１１に記載のメモリ素子。
【請求項１３】
第２のビット線と、
前記第２のビット線と結合しているメモリ・セルの第２の列と、
第２のデータ線と結合している第２の入力と、前記第２のデータ線の値によりラッチされた値を供給する第２の出力とを有する第２のラッチ回路とをさらに備え、
前記第２のラッチ回路の第２の出力が前記第２のビット線と結合して、メモリ素子の動作中に、前記第２のビット線の値が前記第２の出力により連続的に決まる請求項１に記載のメモリ素子。
【請求項１４】
前記メモリ・セルの列が、前記メモリ・セルの第２の列のメモリ・セルと同じ行に位置するメモリ・セルを含む請求項１３に記載のメモリ素子。
【請求項１５】
前記ビット線の値が、前記データ線の値に応じてだけ変化する請求項１に記載のメモリ素子。
【請求項１６】
前記メモリ素子が、多ポート・レジスタ・ファイルとしての特徴を有する請求項１に記載のメモリ素子。
【請求項１７】
前記ビット線の値が、前記列のメモリ・セルへのすべてのメモリ読み出しを含む、メモリ素子の動作中の出力により連続的に決まるように、前記出力が前記ビット線と結合している請求項１に記載のメモリ素子。
【請求項１８】
前記集積回路がプロセッサ・コアをさらに含む請求項１に記載のメモリ素子を含む集積回路。
【請求項１９】
前記メモリ・セルの列のメモリ・セルへの読み出しおよび書き込みが、メモリ素子の動作中に行われる請求項１に記載のメモリ素子。
【請求項２０】
メモリ・セルの列のメモリ・セルへの複数の読み出しおよび複数の書き込みを行うステップを含むメモリ素子を動作させるステップと、
前記動作中、ラッチ出力により、前記メモリ・セルの列と結合しているビット線の値を連続的に制御するステップと、を含むメモリ素子を動作するための方法。
【請求項２１】
第１の状態から第２の状態へのクロック信号の状態の変化により決まる時点で、ラッチ入力の値に応じて前記ラッチ出力の値を変化させるステップをさらに含む請求項２０に記載の方法。
【請求項２２】
前記メモリ・セルの列のメモリ・セルにある値を書き込むステップをさらに含み、該書き込みステップが前記ビット線の状態を変化させるステップを含む請求項２０に記載の方法。
【請求項２３】
前記書き込みステップが、前記メモリ・セルと結合している書込み線の前記状態を、非書込み状態から書込み状態へ変化させるステップを含む請求項２２に記載の方法。
【請求項２４】
前記ビット線の状態を変化させる前記ステップが、第１の状態から第２の状態へのクロック信号の状態の変化により決まる時点で、前記状態を変化させるステップを含み、
前記書込み線の前記状態を変化させる前記ステップが、前記第１の状態から前記第２の状態へのクロック信号の状態の変化により決まる時点で、前記状態を変化させるステップをさらに含む請求項２３に記載の方法。
【請求項２５】
前記書き込みステップが、前記第２の状態から前記第１の状態へのクロック信号の状態の変化により決まる時点で、前記書込み線の状態を前記書込み状態から前記非書込み状態に変化させるステップをさらに含む請求項２４に記載の方法。
【請求項２６】
前記書き込みステップが、前記第１の状態から前記第２の状態へのクロック信号の状態の変化により決まる時点で、前記書込み線の状態を前記書込み状態から前記非書込み状態に変化させるステップをさらに含む請求項２２に記載の方法。
【請求項２７】
前記書き込みステップが、前記ビット線の状態を第１の状態から第２の状態に変化させるステップを含み、
前記書き込みステップの後で、前記メモリ・セルの列のメモリ・セルにもう１つの値を書き込むステップをさらに含み、もう１つの値を書き込む同ステップが、前記ビット線の状態を変化させるステップを含み、前記書き込みおよびもう１つの値の書き込みの状態の変化の間に前記列のメモリ・セルへ他の書き込みが行われず、
前記ビット線が、前記書き込みの状態の変化の時点からもう１つの値の書き込みの状態の変化まで、前記第２の状態のままである請求項２２に記載の方法。
【請求項２８】
前記書き込みステップの後であって、前記もう１つの値の書き込みステップの前に前記列のメモリ・セルの値を読み出すステップをさらに含み、前記ビット線が、読み出し中の前記メモリ・セルの値が何であれ、前記第２の状態を維持する請求項２７に記載の方法。
【請求項２９】
動作中、前記ラッチ出力により前記メモリ・セルの列と結合している第２のビット線の値を連続的に制御するステップをさらに含み、前記第２のビット線が前記ビット線に対する相補ビット線である請求項２０に記載の方法。
【請求項３０】
前記メモリ素子を動作する前記ステップが、メモリ・セルの第２の列のメモリ・セルへの複数の読み出しおよび複数の書き込みを行うステップをさらに含み、
動作中、第２のラッチ出力によりメモリ・セルの第２の列と結合している第２のビット線の値を連続的に制御するステップをさらに含む請求項２０に記載の方法。
【請求項３１】
メモリ素子であって、
ビット線と、
前記ビット線と結合しているメモリ・セルの列と、
データ線と結合している入力と、前記データ線の値によりラッチされた値を供給する出力とを有するラッチ回路とを備え、前記出力が前記ビット線に接続しているメモリ素子。
【請求項３２】
第２のビット線と、
前記第２のビット線と結合しているメモリ・セルの第２の列と、
第２のデータ線と結合している第２の入力と、前記第２のデータ線の値によりラッチされた値を供給する第２の出力とを有する第２のラッチ回路とをさらに備え、前記第２の出力が、前記第２のビット線に接続している請求項３１に記載のメモリ素子。
【請求項３３】
メモリ素子であって、
複数の対の相補ビット線であって、各対がメモリ・セルの列と結合している複数の対の相補ビット線と、
複数のラッチ回路であって、各ラッチ回路がデータ線と結合している入力と、前記データ線の値により相補ラッチ値を供給するための第１の出力および第２の出力とを含む複数のラッチ回路とを備え、
前記複数の各ラッチに対して、前記第１の出力が、前記第１のビット線の値が、メモリ素子の動作中、前記第１の出力により連続的に決まるように前記複数の対の一対の第１のビット線と結合し、前記第２の出力が、前記第２のビット線の値が、メモリ素子の動作中、前記第２の出力により連続的に決まるように前記対の第２のビット線と結合しているメモリ素子。
【請求項３４】
メモリ素子であって、
ビット線と、
前記ビット線と結合しているメモリ・セルの列と、
データ線と結合している入力と、前記データ線の値によりラッチされた値を供給する出力とを有するラッチ回路とを備え、前記出力が、メモリ素子の動作中、前記出力のところの値が変化した場合だけ、前記ビット線の前記値が変化するように前記ビット線と結合しているメモリ素子。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路に関し、特にメモリ素子に関する。
【背景技術】
【０００２】
多ポート・メモリ素子の場合には、メモリ読み出し動作およびメモリ書き込み動作は、このような動作を行うために必要な時間の長さにより重大な影響を受ける。書き込み動作中、入力データ・アサート時間は、メモリ素子の属性に関連する復号遅延により異なる場合がある。例えば、アサート時間が不十分な場合には、入力データの依存性に関連する不確実さにより、メモリ内に書き込み中の偽値データによりプロセッサが障害を起こす場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
それ故、メモリの性能を改善するメモリ設計が求められている。
【課題を解決するための手段】
【０００４】
以下に本発明について説明するが、これは例示としてのものであって、本発明は添付の図面に限定されない。図面中、類似の参照番号は類似の要素を示す。
当業者であれば、図面中の要素は、簡単に明確に表示するためのものであって、必ずしも正確な縮尺でないことを理解することができるだろう。例えば、本発明の実施形態を容易に理解できるように、図面中の要素のうちのあるものの寸法は他の要素より誇張してある。
【発明を実施するための最良の形態】
【０００５】
一実施形態の場合には、メモリ素子は、ビット線と、メモリ・セルの列と、ラッチ回路とを含む。メモリ・セルの列はビット線と結合している。ラッチ回路は、データ線と結合している入力と、データ線の値によりラッチした値を供給する出力とを有する。出力は、ビット線の値が、メモリ素子の動作中出力により連続的に決まるようにビット線と結合している。
【０００６】
一実施形態は、メモリ素子を動作するための方法に関する。メモリ・セルの列のメモリ・セルに対して、複数の読み出しおよび複数の書き込みが行われる。ビット線の値はメモリ・セルの列と結合していて、ビット線の値は、メモリ素子の動作中、ラッチ出力により連続的に制御される。一実施形態の場合には、ラッチ出力の値は、第１の状態から第２の状態へのクロック信号の状態の変化により決まる時点で、ラッチ入力の値に応じて変化することができる。一実施形態の場合には、値はメモリ・セルの列のメモリ・セルに書き込むことができる。この場合、書き込みは、例えば、ビット線の状態の変化を含む。一実施形態の場合には、値をメモリ・セルの列のメモリ・セルに書き込むことができる。この場合、書き込みは、例えば、非書込み状態から書込み状態への書込み線の状態の変化を含む。
【０００７】
一実施形態の場合には、メモリ素子は、ビット線と、メモリ・セルの列と、ラッチ回路とを含む。メモリ・セルの列はビット線と結合している。ラッチ回路は、データ線と結合している入力と、データ線の値によりラッチした値を供給するための出力とを有する。出力は、ビット線に接続している。
【０００８】
一実施形態の場合には、メモリ素子は、複数の対の相補ビット線と、複数のラッチ回路とを含む。複数の対の相補ビット線の各対は、メモリ・セルの列と結合している。各ラッチ回路は、データ線と結合している入力と、データ線の値により相補ラッチ値を供給するための第１の出力および第２の出力とを有する。複数のラッチ回路の各ラッチの場合、第１の出力は、第１のビット線の値が、メモリ素子の動作中、第１の出力により連続的に決まるように複数の対の第１のビット線と結合していて、第２の出力は、第２のビット線の値が、メモリ素子の動作中、第２の出力により連続的に決まるように対の第２のビット線と結合している。
【０００９】
一実施形態の場合には、メモリ素子は、ビット線と、メモリ・セルの列と、ラッチ回路とを含む。メモリ・セルの列はビット線と結合している。ラッチ回路は、データ線と結合している入力と、データ線の値によりラッチした値を供給するための出力とを有する。出力は、メモリ素子の動作中、出力のところの値が変化した場合だけ、ビット線の値が変化するようにビット線と結合している。
【００１０】
図１は、本発明の一実施形態による集積回路２である。集積回路２は、コア３と、バス・インタフェース・ユニット（ＢＩＵ）６とを含む。コア３は、クロック回路４と、実行ユニット５と、メモリ制御装置７と、メモリ１０とを含む。一実施形態の場合には、コア３は、例えば、プロセッサ・コアであってもよいし、メモリ１０は、例えば、多ポート・レジスタ・ファイルにより特徴づけることができる。
【００１１】
一実施形態の場合には、集積回路２の正常な動作中、メモリ１０に対して、実行ユニット５からメモリ制御装置７に供給される制御信号８に基づいて、書き込みアクセスまたは読み出しアクセスが行われる。制御信号８は、メモリ読み出し動作またはメモリ書き込み動作をスタートするために使用することができる。実行ユニット５は、例えば、メモリ１０内にデータを格納し、メモリ１０からデータを読み出すために、制御信号８を発行する中央処理装置（ＣＰＵ）であっても、またはデジタル信号処理装置であってもよい。一実施形態の場合には、メモリ１０にいつデータを書き込むことができるか、またはメモリ１０からいつデータを読み出すことができるかを決定するためのタイミング機構として使用されているクロック信号２９（ＣＬＫ２９）は、クロック回路４からメモリ制御装置７、実行ユニット５およびメモリ１０に供給される。メモリ制御装置７は、実行ユニット５からクロック信号２９および制御信号８を受信し、実行ユニット５により読み出し動作が要求されたのかまたは書き込み動作が要求されたのかに基づいて、書き込み動作可能信号６０（ＷＲ  ＥＮ６０）または読み出し動作可能信号１４（ＲＥＡＤ  ＥＮ１４）をアサートする。
【００１２】
読み出し動作中、ＲＤ  ＡＤＤＲＥＳＳ１５およびＲＥＡＤ  ＥＮ１４が、メモリ制御装置７からメモリ１０に供給される。メモリ１０は、ＲＥＡＤ  ＥＮ１４を受信し、ＲＤ  ＡＤＤＲＥＳＳ１５が指定するメモリ・アドレス位置を動作可能にする。ＲＤ  ＡＤＤＲＥＳＳ１５が指定するメモリ・アドレス位置内のデータはメモリ１０から読み出され、データ線２１４を介してＤＡＴＡ−ＯＵＴ２１２として実行ユニット５に供給される。
【００１３】
書き込み動作中、ＷＲ  ＡＤＤＲＥＳＳ７５およびＷＲ  ＥＮ６０はメモリ制御装置７からメモリ１０に供給される。メモリ１０は、ＷＲ  ＥＮ６０を受信し、書き込み動作に対するＷＲ  ＡＤＤＲＥＳＳ７５が指定するメモリ１０内のメモリ・アドレス位置を動作可能にする。実行ユニット５からのデータ（ＤＡＴＡ−ＩＮ２１１）は、データ線２１３を介してメモリ１０に供給され、ＷＲ  ＡＤＤＲＥＳＳ７５が指定するメモリ１０のメモリ・アドレス位置に書き込まれる。集積回路２は、他の実施形態の場合には他の構成を有することができる。
【００１４】
図２は、本発明の一実施形態によるメモリ１０である。メモリ１０は、読み出し行デコーダ１３と、読み出しワード線ドライバ３８と、書き込みワード線ドライバ３９と、書き込みビット線ラッチ７６と、列制御ロジック２５と、列アレイ回路１１と、列アレイ回路１２と、インバータ７０と、書き込み行デコーダ６２と、列回路７７とを含む。読み出しワード線ドライバ３８は、読み出しワード線ドライバ１６と、読み出しワード線ドライバ１９と、読み出しワード線ドライバ２２とを含む。書き込みワード線ドライバ３９は、書き込みワード線ドライバ５８と、書き込みワード線ドライバ６１と、書き込みワード線ドライバ６４とを含む。列アレイ回路１１は、書き込みビット線ラッチ２８と、ビットセル（メモリ・セル）３１と、ビットセル３４と、ビットセル３７と、列回路４０とを含む。列アレイ回路１２は、書き込みビット線ラッチ４３と、ビットセル４６と、ビットセル４９と、ビットセル５２と、列回路５５とを含む。説明を分かり易くするために、ビットセル４６、ビットセル４９、ビットセル５２、ビットセル３１、ビットセル３４およびビットセル３７をビットセル・アレイ６９と呼ぶことにし、書き込みワード線ドライバ３９および書き込み行デコーダ６２をワード線発生回路と呼ぶことにする。図の実施形態の場合には、ビットセル３１はビットセル４６と同じ行に位置する。
【００１５】
一実施形態の場合には、読み出し動作中、メモリ１０の読み出し行デコーダ１３は、メモリ制御装置７（図１）から読み出し動作可能信号１４および読み出しアドレス１５を受信し、クロック回路４（図１）からクロック信号２９を受信する。読み出し行デコーダ１３は、読み出しアドレス１５を復号し、読み出しアクセスができるようにビットセル・アレイ６９のビット・セルの行を決定する。ビットセル・アレイ６９は、ビット・セルの１つまたは複数の行または列を含むことができる。読み出し行デコーダ１３は、行動作可能信号１８を復号した行アドレスに対応する読み出しワード線ドライバ３８のうちの少なくとも１つに出力する。復号した行アドレスに対応する読み出しワード線ドライバ３８の読み出しワード線ドライバは、ビット・セルの選択した１つまたは複数の行に供給される読み出しワード線信号をアサートする。図の実施形態の場合には、読み出しワード線ドライバ１６、読み出しワード線ドライバ１９、または読み出しワード線ドライバ２２が、読み出しワード線信号ＲＷＬ０、ＲＷＬ１、ＲＷＬＮのいずれかをそれぞれアサートする。ビット・セルの選択した行は、読み出しビット線信号（ＲＢＬ０およびＲＢＬＢ０）を列回路４０への入力として供給し、読み出しビット線信号（ＲＢＬ１およびＲＢＬＢ１）を列回路５５への入力として供給する。ビット・セル・アレイ６９が複数の行のビット・セルを有している場合には、読み出しビット線信号ＲＢＬ０およびＲＢＬＢ０および読み出しビット線信号ＲＢＬ１およびＲＢＬＢ１を列回路４０および列回路５５に入力として供給する前に、ビット・セルの１つまたは複数の追加行に供給することができる。同様に、ビット・セル・アレイ６９がビット・セルの複数の列を有している場合に、読み出しワード線信号ＲＷＬ０、ＲＷＬ１およびＲＷＬＮをビット・セルの１つまたは複数の追加列に供給することができる。
【００１６】
列回路４０および列回路５５は、それぞれ読み出しビット線信号ＲＢＬ０およびＲＢＬＢ０および読み出しビット線信号ＲＢＬ１およびＲＢＬＢ１を受信する。列回路４０は、出力データ（ＤＡＴＡ−ＯＵＴ０およびＤＡＴＡ−ＯＵＴＢ０）を生成するために、読み出し線ビット信号ＲＢＬ０およびＲＢＬＢ０を使用し、列回路５５は、出力データ（ＤＡＴＡ−ＯＵＴ１およびＤＡＴＡ−ＯＵＴＢ１）を生成するために、読み出しビット線信号を使用する。次に、出力データは、さらに処理を行うために図１の実行ユニット５のような実行ユニットに供給することができる。メモリ１０の他の実施形態は、図２に示すものに限定されない１つの列アレイ回路１１または複数の列アレイ回路を含むことができることに留意されたい。
【００１７】
一実施形態の場合には、書き込み動作中、書き込み行デコーダ６２は、書き込み動作可能信号６０、クロック信号２９および書き込みアドレス７５を受信する。書き込み行デコーダ６２は書き込みアドレス７５を復号し、ビット・セルのどの行を書き込みアクセスのために動作可能にするのかを決定する。書き込み行デコーダ６２は、行動作可能信号６８を復号した行アドレスに対応する書き込みワード線ドライバ３９のうちの少なくとも１つに出力する。復号した行アドレスに対応する書き込みワード線ドライバ３９の書き込みワード線ドライバは、ビット・セルの選択した１つまたは複数の行に供給される書き込みワード線信号をアサートする。図の実施形態の場合には、書き込みワード線ドライバ５８、書き込みワード線ドライバ６１、および書き込みワード線ドライバ６４が、書き込みワード線ドライバ３９をビットセル・アレイ６９に結合する書き込みワード線を介して、書き込みワード線信号ＷＷＬ０、ＷＷＬ１およびＷＷＬＮのいずれかをそれぞれアサートする。一実施形態の場合には、書き込みワード線信号は、例えば、クロック信号２９の状態の変化により決まる時点で、非書込み状態から書込み状態に変化することができる。例えば、実行ユニット５（図示せず）から供給することができる入力データ（ＤＡＴＡ−ＩＮ０およびＤＡＴＡ−ＩＮ１）は、書き込みビット線ラッチ７６（書き込みビット線ラッチ２８および書き込みビット線ラッチ４３）に転送される。書き込みビット線ラッチ７６は、入力データおよびインバータ７０により反転される反転クロック信号２９（ＣＬＫＢ３０）を受信する。書き込みビット線ラッチ７６は、入力データを書き込みビット線信号ＷＢＬ０、ＷＢＬ１として、および書き込みビット線信号ＷＢＬＢ０、ＷＢＬＢの補足を、書き込みビット線ラッチ７６をビットセル・アレイ６９と結合する書き込みビット線上に駆動するためにＣＬＫＢ３０を使用する。次に、書き込みビット線信号が、ビットセル・アレイ６９のビットセルの選択した行上に書き込まれる。ビット・セル・アレイ６９がビット・セルの複数の行を有している場合には、書き込みビット線信号ＷＢＬ０およびＷＢＬＢ０および書き込みビット線信号ＷＢＬ１およびＷＢＬＢ１を、ビット・セルの１つまたは複数の追加行に供給することができる。同様に、ビット・セル・アレイ６９がビット・セルの複数の列を有している場合には、書き込みワード線信号ＷＷＬ０、ＷＷＬ１およびＷＷＬＮをビット・セルの１つまたは複数の追加列に供給することができる。メモリ１０は、他の実施形態の場合には他の構成を有することができる。
【００１８】
図３は、列アレイ回路１１の一実施形態である。図に示すように、列アレイ回路１１は、書き込みビット線ラッチ２８と、ビットセル３１と、ビットセル３７と、列回路４０とを含む。書き込みビット線ラッチ２８は、書き込みビット線２００および書き込みビット線２０２を介してビットセル３１およびビットセル３７と結合している。一実施形態の場合には、書き込みビット線２０２は、書き込みビット線２００の相補ビット線である。ビットセル３１およびビットセル３７は、読み出しビット線２０４および読み出しビット線２０６を介して列回路４０と結合している。他の実施形態の場合には、追加のビット・セルを列アレイ回路１１に追加することができる。ビットセル３４は図３には図示していない。
【００１９】
書き込み動作中、列アレイ回路１１の書き込みビット線ラッチ２８は、インバータ７０（図２）からクロックバー信号３０（ＣＬＫＢ３０）を、実行ユニット５（図１）から入力データ（ＤＡＴＡ−ＩＮ０）を受信する。ＮＯＲゲート１０７は、ＤＡＴＡ−ＩＮ０およびクロックバー信号３０を否定論理和（ＮＯＲ）し、その出力をＮＭＯＳトランジスタ１１９に供給する。ＮＯＲゲート１０３は、クロックバー信号３０および入力データＤＡＴＡ−ＩＮ０の逆数を否定論理和し、その出力をＮＭＯＳトランジスタ１１６に供給する。
【００２０】
通常、ＤＡＴＡ−ＩＮ０およびクロックバー信号３０は、アサート値または非アサート値をとることができる。一実施形態の場合には、クロックバー信号３０が高レベルの場合には、ＮＯＲゲート１０７の出力およびＮＯＲゲート１０３の出力は低レベルである。その結果、ＮＭＯＳトランジスタ１１９およびＮＭＯＳトランジスタ１１６はオフになり、インバータ１１３とクロス結合しているインバータ１１０を含むラッチ１８０は、もしあった場合には、ラッチ１８０に前に書き込んだデータ値を能動的に保持する。
【００２１】
一実施形態の場合には、クロックバー信号３０が低レベルであり、ＤＡＴＡ−ＩＮ０が高レベルである場合には、ＮＯＲゲート１０７の出力は低レベルであり、ＮＯＲゲート１０３の出力は高レベルである。その結果、ＮＭＯＳトランジスタ１１９はオフになり、ＮＭＯＳトランジスタ１１６はオンになり、ノード１１４は低レベルであり、インバータ１１０の出力は高レベルである。インバータ１１０の出力は、インバータ１１３およびインバータ１２４により反転される。インバータ１１３は、インバータ１１０の出力を反転し、その出力をインバータ１２７に供給する。書き込みビット線信号ＷＢＬ０としての書き込みビット線２００上で転移するインバータ１２７の出力は高レベルである。書き込みビット線バー信号ＷＢＬＢ０としての書き込みビット線２０２上で転移するインバータ１２４の出力は低レベルである。両方の書き込みビット線信号ＷＢＬ０および書き込みビット線バー信号ＷＢＬＢ０はビットセル３１に供給される。
【００２２】
一実施形態の場合には、クロックバー信号３０が低レベルであり、ＤＡＴＡ−ＩＮ０が低レベルである場合には、ＮＯＲゲート１０７の出力は高レベルであり、ＮＯＲゲート１０３の出力は低レベルである。その結果、ＮＭＯＳトランジスタ１１９がオンになり、ＮＭＯＳトランジスタ１１６がオフになる。ＮＭＯＳトランジスタ１１９がオンになるので、ノード１１５が低レベルになり、インバータ１１３の出力は高レベルになる。書き込みビット線バー信号ＷＢＬＢ０として書き込みビット線２０２上で転移するインバータ１２４の出力は高レベルであり、書き込みビット線バー信号ＷＢＬ０として書き込みビット線２０４に転移するインバータ１２７の出力は低レベルである。それ故、書き込みビット線ラッチ２８の出力のところの書き込みビット線信号ＷＢＬ０および書き込みビット線バー信号ＷＢＬＢ０の値は、クロックバー信号３０の状態の変化により決まる時点での入力データ線のところのＤＡＴＡ−ＩＮ０の値による値を変える。同様に、書き込みビット線２００および書き込みビット線２０２の書き込みビット線信号ＷＢＬ０および書き込みビット線バー信号ＷＢＬＢ０の値は、クロック信号の状態の変化により決まる時点での入力データ線上のＤＡＴＡ−ＩＮ０の値に応じて変化することができる。書き込みビット線信号ＷＢＬ０および書き込みビット線バー信号ＷＢＬＢ０は、ビットセル３１に供給される。
【００２３】
ビットセル３１は、ＮＭＯＳトランジスタ１３３の電流端子のところでインバータ１２７の出力から書き込みビット信号ＷＢＬ０を受信し、ＮＭＯＳトランジスタ１３６の電流端子のところでインバータ１２４の出力から書き込みビット線バ−信号ＷＢＬＢ０を受信する。ＮＭＯＳトランジスタ１３３およびＮＭＯＳトランジスタ１３６の制御端子に供給される書き込みワード線信号ＷＷＬ０が高レベルである場合には、ＮＭＯＳトランジスタ１３３およびＮＭＯＳトランジスタ１３６がオンになる。ノード１２２は書き込みビット線２００に転移された値になり、ノード１２３は、書き込みビット線２０２に転移された値になる。それ故、ＷＷＬ０が高レベルである場合には、ビットセル３１は、列アレイ回路１１内へ入力として供給される入力データＤＡＴＡ−ＩＮ０を格納する。ＷＷＬ０が低レベルである場合には、ＮＭＯＳトランジスタ１３３およびＮＭＯＳトランジスタ１３６がオフなり、書き込みビット線２００および書き込みビット線２０２から書き込まれたデータ値が、インバータ１２１およびインバータ１３０により格納される。
【００２４】
読み出し動作中、読み出しワード線２０８上の読み出しワード線信号ＲＷＬ０が高レベルである場合には、ＮＭＯＳトランジスタ１３９およびＮＭＯＳトランジスタ１４５がオンになる。ノード１２２のところに格納している値の逆数およびノード１２３のところに格納している値の逆数が、それぞれＮＭＯＳトランジスタ１４２およびＮＭＯＳトランジスタ１４８により、読み出しビット線バー信号ＲＢＬＢ０として読み出しビット線２０４に転送され、読み出しビット線信号ＲＢＬ０として読み出しビット線２０６に転送される。列回路４０へ入力として供給される予備充電信号（ＰＣＨ）が高レベルである場合には、ＰＭＯＳトランジスタ１５１およびＰＭＯＳトランジスタ１５４がオフになり、読み出しビット線２０４上の読み出しビット線信号ＲＢＬＢ０の値がインバータ１５７に供給され、読み出しビット線２０６上の読み出しビット線信号ＲＢＬ０の値がインバータ１６３に供給される。インバータ１５７の出力は、出力データＤＡＴＡ−ＯＵＴ０として実行ユニット（図示せず）およびＰＭＯＳトランジスタ１６０の制御端子に供給される。同様に、インバータ１６３の出力は、出力データ（ＤＡＴＡ−ＯＵＴＢ０）として実行ユニット（図示せず）およびＰＭＯＳトランジスタ１６６の制御端子に供給される。読み出しビット線信号ＲＢＬ０および読み出しビット線信号ＲＢＬＢ０の値により、ＰＭＯＳトランジスタ１６０またはＰＭＯＳトランジスタ１６６をオフにすることができる。他の実施形態の場合には、書き込みビット線ラッチ２８、ビットセル３１、ビットセル３７、および／または列回路４０は、他の構成を有することができる。図の実施形態の場合には、ＤＡＴＡ−ＩＮ０信号は、シングル・エンド信号であるが、他の実施形態の場合には、この信号は差動信号のような他の形の信号であってもよい。
【００２５】
図４は、本発明の一実施形態によるビットセル３１に対して読み出しおよび書き込みを行うための種々の信号を示すタイミング図である。一実施形態に示すように、読み出し動作中、読み出し動作可能信号１４およびクロック信号２９が高レベルである場合には、読み出しワード線信号ＲＷＬ０は高レベルである。読み出しワード線信号ＲＷＬ０は、例えば、読み出し行デコーダ１３および読み出しワード線ドライバ３８により遅延が生じた場合には、高レベルであるとアサートすることができる。読み出しワード線信号ＲＷＬ０が高レベルになると、読み出しビット線信号ＲＢＬ０が低レベルになり、読み出しビット線バー信号ＲＢＬＢ０が高レベルになるか、または読み出しビット線信号ＲＢＬ０が高レベルになり、読み出しビット線バー信号ＲＢＬＢ０が低レベルになる。読み出しビット線信号ＲＢＬ０または読み出しビット線バー信号ＲＢＬＢ０が低レベルになると、ＤＡＴＡ−ＯＵＴ０またはＤＡＴＡ−ＯＵＴＢ０が高レベルになる。クロック信号２９が低レベルである場合には、読み出しワード線信号ＲＷＬ０が低レベルであり、読み出しビット線信号ＲＢＬ０および読み出しビット線バー信号ＲＢＬＢ０が高レベルであり、ＤＡＴＡ−ＯＵＴ０およびＤＡＴＡ−ＯＵＴＢ０が低レベルである。
【００２６】
図４に示すように、ＤＡＴＡ−ＩＮ０およびクロック信号２９が高レベル（クロックバー信号３０が低レベル）である場合には、書き込みビット線信号ＷＢＬ０が高レベルであり、書き込みビット線バー信号ＷＢＬＢ０が低レベルである。書き込み動作中、書き込み動作可能信号６０およびクロック信号２９が高レベルである場合には、書き込みワード線信号ＷＷＬ０は高レベルである。書き込みワード線信号ＷＷＬ０は、例えば、書き込み行デコーダ６２および書き込みワード線ドライバ３９により遅延が生じた場合には、高レベルであるとアサートすることができる。クロック信号２９が低レベルである場合には、書き込みワード線信号ＷＷＬ０は低レベルになる。
【００２７】
図４のタイミング図を見れば分かるように、復号遅延は、書き込みワード線信号ＷＷＬ０のアサートへのクロック信号２９のアサートに関連する。ラッチ遅延は、書き込みビット線信号ＷＢＬ０のアサートへのクロック信号２９のアサートに関連する。一実施形態の場合には、書き込み動作中、書き込みビット線信号ＷＢＬ０は、書き込みワード線信号ＷＷＬ０が低レベルになるまで高い値に保持される。同様に、書き込みビット線バー信号ＷＢＬＢ０は、書き込みワード線信号ＷＷＬ０が低レベルになるまで低い値に保持される。ＤＡＴＡ−ＩＮ０は、クロック信号２９が低レベルになるまで高レベルに保持される。図に示すように、ＤＡＴＡ−ＩＮ０アサート時間は、書き込みワード線信号ＷＷＬ０に関連する復号遅延の影響を受けない。
【００２８】
今まで特定の実施形態を参照しながら本発明を説明してきたが、通常の当業者であれば、下記の特許請求の範囲に記載する本発明の範囲から逸脱することなしに種々の修正および変更を行うことができることを理解することができるだろう。それ故、上記明細書および図面は本発明を制限するものではなく、例示としてのものと見なすべきであり、このようなすべての修正は本発明の範囲内に含まれる。
【００２９】
特定の実施形態を参照しながら種々の利益、種々の他の利点および問題の解決方法を説明してきたが、このような種々の利益、種々の他の利点、問題の解決方法および任意の利益、利点または問題の解決方法を実行し、より優れたものにすることができる任意の要素は、請求項のいずれかまたはすべての重要で、必要なまたは不可欠な機能または要素であると解釈すべきではない。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態による集積回路のブロック図。
【図２】本発明の一実施形態によるメモリ。
【図３】本発明の一実施形態による列アレイ回路。
【図４】本発明の一実施形態による種々の信号を表すタイミング図。
【図１】
2008503029.tif 000003
【図２】
2008503029.tif 000004
【図３】
2008503029.tif 000005
【図４】
2008503029.tif 000006
【国際調査報告】
2008503029.tif 000007
2008503029.tif 000008