(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-12
(54)【発明の名称】衝突をサポートする高速マルチポートメモリ
(51)【国際特許分類】
G11C 11/419 20060101AFI20240305BHJP
【FI】
G11C11/419
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023548952
(86)(22)【出願日】2022-03-09
(85)【翻訳文提出日】2023-08-14
(86)【国際出願番号】 US2022019591
(87)【国際公開番号】W WO2022203872
(87)【国際公開日】2022-09-29
(32)【優先日】2021-03-23
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】507364838
【氏名又は名称】クアルコム,インコーポレイテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100163522
【氏名又は名称】黒田 晋平
(72)【発明者】
【氏名】プラディープ・ラジ
(72)【発明者】
【氏名】ラフール・サフ
(72)【発明者】
【氏名】シャラド・クマール・グプタ
【テーマコード(参考)】
5B015
【Fターム(参考)】
5B015HH01
5B015JJ18
5B015KA09
5B015KA33
5B015KB23
5B015NN01
(57)【要約】
同じマルチポートビットセルへの読取りポートと書込みポートとの間の衝突をサポートするマルチポートメモリが提供される。センス増幅器は、マルチポートビットセルへの書込みポートがシステムクロック信号の間にアドレス指定されたときに、マルチポートビットセルからデータビットを読み取る。同じシステムクロック信号の間にマルチポートビットセルへの読取りポートがアドレス指定された場合、マルチプレクサは、センス増幅器からの出力ビットを選択する。
【特許請求の範囲】
【請求項1】
マルチポートメモリであって、
第1の読取りポートビット線を有する第1の読取りポートを含むマルチポートビットセルであって、書込みポートビット線の対をさらに含む、マルチポートビットセルと、
前記書込みポートビット線の対に結合されたセンス増幅器と、
前記第1の読取りポートビット線に結合された第1のインバータと、
前記センス増幅器からのデータ出力ビットと前記第1のインバータからのデータ出力ビットのどちらかを選択して選択されたデータ出力ビットを提供するように構成された第1のマルチプレクサとを備えるマルチポートメモリ。
【請求項2】
前記マルチポートビットセルは、第2の読取りポートビット線を有する第2の読取りポートをさらに含み、前記マルチポートメモリは、
前記第2の読取りポートビット線に結合された第2のインバータと、
前記センス増幅器からの補データ出力ビットと前記第2のインバータからの補データ出力ビットのどちらかを選択して選択された補データ出力ビットを提供するように構成された第2のマルチプレクサとをさらに備える、請求項1に記載のマルチポートメモリ。
【請求項3】
前記選択されたデータ出力ビットおよび前記選択された補データ出力ビットをラッチするように構成されたデータラッチをさらに備える、請求項2に記載のマルチポートメモリ。
【請求項4】
読取りポートアドレスが書込みポートアドレスと同じであることに応答して衝突を検出し、前記読取りポートアドレスが前記書込みポートアドレスと異なることに応答して、衝突がないことを検出するように構成されたアドレス比較器と、
前記衝突がないことの検出に応答して、前記第1の読取りポートへの読取りポートワード線をアサートし、前記衝突の検出に応答して、前記読取りポートワード線をアサートしないように構成された読取りワード線コントローラとをさらに備える、請求項1に記載のマルチポートメモリ。
【請求項5】
前記読取りワード線コントローラは、前記衝突がないことの前記検出に応答して、プリチャージ信号をアサートし、前記衝突の前記検出に応答して、前記プリチャージ信号をアサートしないようにさらに構成される、請求項4に記載のマルチポートメモリ。
【請求項6】
前記第1の読取りポートビット線と電源電圧用の電源ノードとの間に結合されたトランジスタをさらに備え、前記トランジスタは、前記プリチャージ信号のアサートに応答してオンに切り替わり、前記プリチャージ信号がアサートされないことに応答してオフに切り替わるように構成される、請求項5に記載のマルチポートメモリ。
【請求項7】
前記トランジスタは、p型金属酸化膜半導体(PMOS)トランジスタを備える、請求項6に記載のマルチポートメモリ。
【請求項8】
ビットが前記センス増幅器によるセンス動作の完了後に前記マルチポートビットセルに書き込まれたことに応答して、前記書込みビット線の対を駆動するように構成された書込みドライバをさらに備える、請求項1に記載のマルチポートメモリ。
【請求項9】
前記マルチポートビットセルは、データ出力ノードおよび補データ出力ノードを駆動するように構成された交差結合インバータの対を備え、前記第1の読取りポートは、前記読取りポートワード線によって制御されるように構成されたアクセストランジスタをさらに含む、請求項4に記載のマルチポートメモリ。
【請求項10】
前記第1の読取りポートは、グランドと前記アクセストランジスタの端子との間に結合された第2のトランジスタをさらに含み、前記第2のトランジスタのゲートは、前記データ出力ノードに結合され、前記マルチポートメモリは、携帯電話に組み込まれる、請求項9に記載のマルチポートメモリ。
【請求項11】
マルチポートメモリの動作方法であって、
第1の読取りポートアドレスを書込みポートアドレスと比較して、前記第1の読取りポートアドレスが前記書込みポートアドレスと一致することに応答して、第1の衝突を検出し、前記第1の読取りポートアドレスが前記書込みポートアドレスと一致しないことに応答して、第1の衝突がないことを検出するステップと、
第1のマルチプレクサにおいて、前記第1の衝突がないことの検出に応答して、第1の読取りポートを通したマルチポートビットセルへのシングルエンド読取りから得られるデータ出力ビットを選択するステップと、
前記第1のマルチプレクサにおいて、前記第1の衝突の検出に応答して、書込みポートを通した前記マルチポートビットセルへの差動読取りから得られるデータ出力ビットを選択するステップとを含む方法。
【請求項12】
クロック信号のエッジに応答して、前記第1の読取りポートアドレスと前記書込みポートアドレスの前記比較をトリガするステップをさらに含む、請求項11に記載の方法。
【請求項13】
第2の読取りポートアドレスを前記書込みポートアドレスと比較して、前記第2の読取りポートアドレスが前記書込みポートアドレスと一致することに応答して、第2の衝突を検出し、前記第2の読取りポートアドレスが前記書込みポートアドレスと一致しないことに応答して、第2の衝突がないことを検出するステップと、
第2のマルチプレクサにおいて、前記第2の衝突がないことの検出に応答して、第2の読取りポートを通した前記マルチポートビットセルへのシングルエンド読取りから得られる補データ出力ビットを選択するステップと、
前記第2のマルチプレクサにおいて、前記第2の衝突の検出に応答して、前記書込みポートを通した前記マルチポートビットセルへの前記差動読取りから得られる補データ出力ビットを選択するステップとをさらに含む、請求項11に記載の方法。
【請求項14】
前記第1の読取りポートアドレスを前記書込みポートアドレスと比較する前に、前記第1の読取りポートにおいて第1のビット線をプリチャージするステップと、
前記第1の衝突の前記検出に応答して、前記第1のビット線をフロートさせるステップと、
前記第1の衝突がないことの前記検出に応答して、前記第1のビット線の前記プリチャージを維持するステップとをさらに含む、請求項11に記載の方法。
【請求項15】
第1の衝突がないことの検出に応答して、プリチャージ信号をアサートするステップであって、前記第1のビット線の前記フロートは、前記プリチャージ信号のアサートに応答して行われる、ステップをさらに含む、請求項14に記載の方法。
【請求項16】
前記プリチャージ信号の前記アサートに応答して、前記第1のビット線と電源電圧用の電源ノードとの間に結合されたトランジスタをオフに切り替えるステップをさらに含む、請求項15に記載の方法。
【請求項17】
前記第1の衝突の前記検出に応答して、前記プリチャージ信号のアサート解除を維持して、前記トランジスタのオン状態を維持するステップをさらに含む、請求項16に記載の方法。
【請求項18】
前記第1のマルチプレクサからのデータ出力ビットをラッチするステップをさらに含む、請求項11に記載の方法。
【請求項19】
マルチポートメモリであって、
第1の読取りポートビット線と第1の読取りポートワード線とを有する第1の読取りポートを含むマルチポートビットセルであって、書込みビット線の対を有する書込みポートをさらに含む、マルチポートビットセルと、
書込みポートアドレスが前記書込みポートを指し示し、読取りポートアドレスが前記第1の読取りポートを指し示すことに応答して、衝突を検出するように構成されたアドレス比較器と、
前記衝突が検出されないことに応答して、前記第1の読取りポートワード線をアサートするように構成され、前記衝突の検出に応答して、前記第1の読取りポートワード線をアサートしないように構成された読取りポートワード線コントローラとを備えるマルチポートメモリ。
【請求項20】
前記読取りポートワード線コントローラは、前記衝突が検出されないことに応答して前記第1の読取りポートについてのプリチャージ信号をアサートするようにさらに構成され、前記第1の読取りポートは、前記プリチャージ信号のアサートに応答して前記第1の読取りポートビット線をフロートさせるようにさらに構成される、請求項19に記載のマルチポートメモリ。
【請求項21】
前記書込みポートアドレスが前記書込みポートを指し示すことに応答して前記書込みポートを通して差動読取りを実行するように構成されたセンス増幅器をさらに備える、請求項19に記載のマルチポートメモリ。
【請求項22】
データビットが、差動読取りの完了後に前記マルチポートビットセルに書き込まれるように、前記書込みビット線の対を駆動するように構成されたデータドライバをさらに備える、請求項21に記載のマルチポートメモリ。
【請求項23】
前記第1の読取りポートビット線に結合されたインバータと、
前記インバータの出力と前記センス増幅器のどちらかを選択するように構成されたマルチプレクサとをさらに備える、請求項21に記載のマルチポートメモリ。
【請求項24】
マルチポートメモリであって、
読取りポートアドレスと書込みポートアドレスの両方が、第1のマルチポートビットセルを指し示すことに応答して、衝突を検出するように構成されたアドレス比較器と、
前記第1のマルチポートビットセルから書込みポートを通して第1のデータビットを読み取るように構成されたセンス増幅器と、
前記第1のデータビットの前記読取りが完了した後第2のデータビットを前記書込みポートを通して前記第1のマルチポートビットセルに書き込むように構成された書込みドライバと、
前記センス増幅器に結合され、前記衝突の検出に応答して前記第1のデータビットを選択するように構成されたマルチプレクサとを備えるマルチポートメモリ。
【請求項25】
前記第1のマルチポートビットセル内の第1の読取りポートにおける読取りポートビット線に結合されたインバータをさらに備え、前記マルチプレクサは、前記衝突がないことの検出に応答して前記インバータの出力を選択するようにさらに構成される、請求項24に記載のマルチポートメモリ。
【請求項26】
前記マルチプレクサからの出力ビットをラッチするように構成されたデータラッチをさらに備える、請求項25に記載のマルチポートメモリ。
【請求項27】
前記第1のマルチポートビットセルは、第2の読取りポートを含む、請求項25に記載のマルチポートメモリ。
【請求項28】
前記衝突がないことの前記検出に応答して前記第1の読取りポートへのワード線をアサートするように構成された読取りポートワード線コントローラをさらに備える、請求項25に記載のマルチポートメモリ。
【請求項29】
前記読取りポートワード線コントローラは、前記衝突がないことの前記検出に応答して、前記第1の読取りポートへのプリチャージ信号をアサートするようにさらに構成される、請求項28に記載のマルチポートメモリ。
【請求項30】
前記アドレス比較器は、クロック信号のエッジに応答して前記衝突を検出するようにトリガされるように構成される、請求項24に記載のマルチポートメモリ。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、その内容全体が参照により本明細書に組み込まれる、2021年3月23日に出願した米国出願第17/210,230号の優先権を主張するものである。
【0002】
本出願は、メモリに関し、より詳細には、衝突をサポートする高速マルチポートメモリに関する。
【背景技術】
【0003】
スタティックランダムアクセスメモリ(SRAM)ビットセルは、ビットを記憶するための交差結合インバータの対を含む。各インバータは、2つのトランジスタを必要とし、したがって、2つの交差結合インバータを実装するには4つのトランジスタが必要である。従来のシングルポートSRAMビットセルでは、2つのさらなるアクセストランジスタによってビットセル実装形態が完成し、それによって、合計で6つのトランジスタが必要になる。2つのアクセストランジスタは、共有ワード線によって制御され、それによって、2つのアクセストランジスタは、ビットセルへの単一の読取り/書込みポートを形成する。しかし、シングルポートアーキテクチャは、単一のアクセスポートにおける複数のプロセッサ間で競合が生じるので、複数のプロセッサアプリケーションには問題がある。追加のアクセストランジスタを追加することによって、マルチポートSRAMビットセルは、各プロセッサ用のアクセス(読取り)ポートを有する場合がある。
【0004】
マルチポートSRAMは、複数のプロセッサアーキテクチャには有利であるが、同じマルチポートSRAMビットセルにおいて書込み動作が読取り動作と同時に行われた場合、衝突が生じる。衝突を回避するために、従来、マルチポートSRAMビットセルは、メモリアクセスを制御するシステムクロック信号に対して「ダブルポンプ」式にアクセスされている。システムクロック信号の遷移(たとえば、立上り)に応答して、システムクロック信号の周期における第1の部分の間にアクセスポートのうちの1つまたは複数に対して読取り動作が行われることがある。読取り動作が完了した後、次いで、システムクロック信号周期の第2の部分において書込み動作が行われることがある。しかし、ダブルポンプ動作では、システムクロック信号周期の間に書込み動作および読取り動作を連続的に行わなければならないので、メモリ速度が低下する。
【発明の概要】
【課題を解決するための手段】
【0005】
本開示の一態様によれば、第1の読取りポートビット線を有する第1の読取りポートを含むマルチポートビットセルであって、書込みポートビット線の対をさらに含むマルチポートビットセルと、書込みポートビット線の対に結合されたセンス増幅器と、第1の読取りポートビット線に結合された第1のインバータと、センス増幅器からのデータ出力ビットおよび第1のインバータからのデータ出力ビットのどちらかを選択して、選択されたデータ出力ビットを提供するように構成された第1のマルチプレクサを含むマルチポートメモリが提供される。
【0006】
本開示の別の態様によれば、マルチポートメモリ用の操作方法であって、第1の読取りポートアドレスを書込みポートアドレスと比較して、第1の読取りポートアドレスが書込みポートアドレスと一致したことに応答して、第1の衝突を検出し、第1の読取りポートアドレスが書込みポートアドレスと一致しないことに応答して、第1の衝突が生じていないことを検出するステップと、第1のマルチプレクサにおいて、第1の衝突が生じていないことの検出に応答して、マルチポートビットセルへの第1の読取りポートを通したシングルエンド読取りから得られるデータ出力ビットを選択するステップと、第1のマルチプレクサにおいて、第1の衝突が検出されたことに応答して、マルチポートビットセルへの書込みポートを通した差動読取りから得られるデータ出力ビットを選択するステップとを含む方法が提供される。
【0007】
本開示のさらに別の態様によれば、第1の読取りポートビット線と第1の読取りポートワード線とを有する第1の読取りポートを含むマルチポートビットセルであって、書込みビット線の対を有するか書込みポートをさらに含むマルチポートビットセルと、書込みポートアドレスが書込みポートを指示し、読取りポートアドレスが第1の読取りポートを指示することに応答して、衝突を検出するように構成されたアドレス比較器と、衝突が検出されたことに応答して、第1の読取りポートワード線をアサートするように構成され、衝突が検出されないことに応答して、第1の読取りポートワード線をアサートしないように構成された読取りポートワード線コントローラとを含むマルチポートメモリが提供される。
【0008】
本開示のさらに別の態様によれば、読取りポートアドレスと書込みポートアドレスがどちらも第1のマルチポートビットセルを指示することに応答して、衝突を検出するように構成されたアドレス比較器と、書込みポートを通して第1のマルチポートビットセルから第1のデータビットを読み取るように構成されたセンス増幅器と、第1のデータビットの読取りが完了した後で第2のデータビットを書込みポートを通して第1のマルチポートビットセルに書き込むように構成された書込みドライバと、センス増幅器に結合され、衝突が検出されたことに応答して、第1のデータビットを選択するように構成されたマルチプレクサとを備えるマルチポートメモリが提供される。
【0009】
これらおよび追加の利点は、以下の発明を実施するための形態を通してより十分に理解される場合がある。
【図面の簡単な説明】
【0010】
【
図1】本明細書で開示された衝突サポートを実施するマルチポートメモリ用の例示的なマルチポートビットセルを示す図である。
【
図2】本開示の一態様による、衝突サポート実装の例を示すフローチャートである。
【
図3】本開示の一態様による、衝突サポートを行うように構成されたマルチポートメモリの回路図である。
【
図4】本開示の一態様による、衝突サポートの動作方法を示すフローチャートである。
【
図5】本開示の一態様による、各々がマルチポートメモリに衝突サポートを組み込んだいくつかの例示的な電子システムを示す図である。
【発明を実施するための形態】
【0011】
本開示の実施形態およびそれらの利点は、以下の詳細な説明を参照することによって最も良く理解される。各図のうちの1つまたは複数に示される同様の要素を特定するために同様の参照番号が使用されることを理解されたい。
【0012】
ダブルポンプ動作などによって衝突を回避するのではなく衝突をサポートするマルチポートSRAMが開示される。衝突をサポートするために、メモリは読取りポートごとにアドレス比較器を含む。各アドレス比較器は、読取りポートアドレスを書込みポートアドレスと比較する。読取りポートアドレスが第1のマルチポートビットセルを指示し、書込みポートアドレスが第2のマルチポートビットセルを指示することを比較が示す場合、読取りポートを通した第1のマルチポートビットセルへのシングルエンド読取り動作が行われる。同時に、書込みポートを通して第2のマルチポートビットセルへの書込み動作が行われる。したがって、読取りポートと書込みポートの同時動作に起因して(動作がそれぞれに異なるマルチポートビットセルで行われるにもかかわらず)高速動作が向上する。
【0013】
しかしながら、アドレス比較が読取りポートアドレスと書込みポートアドレスが同じマルチポートビットセルを指示することを示す場合、読取りポートはアクセスされない。読取りを実行するために、マルチポートSRAMは、シングルエンド読取り動作と差動読取り動作との速度差を利用する。そうするために、書込み動作は、書込みポートを通して差動読取りが行われるまで遅延される。したがって、この差動読取り動作は、書込みポートがアクセスされるたびに行われてもよい。書込み動作は、差動読取りが最初に行われるように遅延させられるが、読取りポートを通したシングルエンド読取りは、差動読取りほど高速ではないので、メモリ動作速度は影響を受けない。したがって、差動読取りおよび書込み動作(同じく差動動作である)は、シングルエンド読取り動作が必要とする時間とほぼ同じ時間で完了する場合がある。以下の利点に留意されたい。マルチポートビットセルが衝突を有さない場合、シングルエンド読取り動作は進行してもよい。一方、差動読取りは、衝突を有するマルチポートビットセルに対して行われる。したがって、ダブルポンプ手法において生じるような遅延は発生しない。
【0014】
次に、例示的なマルチポートビットセルについて説明するが、任意の適切なマルチポートビットセルアーキテクチャを有するSRAMが本明細書で開示される衝突サポートを実施してもよいことが諒解されよう。さらに、以下の例示的なマルチポートビットセルは、読取りポートの対を有するが、代替実装形態ではマルチポートビットセルに1つの読取りポートのみが含まれてもよい。したがって、マルチポートSRAMビットセルは、書込みポートに加えて少なくとも1つの読取りポートを含む。書込みポートおよび読取りポートは、
図1に示す例示的な3ポートSRAMビットセル100を検討することによってよりよく諒解されよう。書込みポートは、書込みポートアクセスn型金属酸化物半導体(NMOS)トランジスタM3と、別の書込みポートアクセスNMOSトランジスタM4とを含む。書込みワード線(WWL)は、書込みポートアクセストランジスタM3およびM4のゲートに接続され、それによって、書込みワード線が電源電圧に充電されたときに書込みポートアクセストランジスタオンに切り替えられる。書込みポートはまた、真書込みビット線(WBL)および補書込みビット線(WBLB)によって形成される書込みビット線の対を含む。簡潔のために、真書込みビット線は、単に以下の説明における書込みビット線として示されてもよい。書込みビット線WBLは、書込みポートアクセストランジスタM3のドレイン/ソース端子に接続される。書込みポートアクセストランジスタM3の残りのドレイン/ソース端子は、ビットセル100のQデータ出力ノードに接続される。端子は、どの端子がソースであり、どの端子がドレインであるかが、書込み動作の前にはSRAMビットセル100のバイナリ状態によって決まり、かつ書込み動作の間はSRAMビットセル100に書き込まれているビットのバイナリ状態によって決まるという点で、「ドレイン/ソース」端子と呼ばれる。補書込みビット線WBLBは、書込みポートアクセストランジスタM4のドレイン/ソース端子に接続されるので同様に配置される。書込みポートアクセストランジスタM4の残りのドレイン/ソース端子は、SRAMビットセル100の補データ出力ノードQBに接続される。
【0015】
書込み動作の前に、書込みビット線WBLおよびWBLBは、電源電圧にプリチャージされる。書込み動作は、システムクロック信号のエッジ(たとえば、立上り)に応答して行われる。ワード線発生器またはコントローラ(
図1には示されていないが、以下でさらに説明する)は、書込みポートアクセストランジスタがオンに切り替えられるように書込みワード線WWLを電源電圧に充電することによって、クロックエッジに応答する。書込みワード線がアサートされた状態で、書込みドライバ(同じく
図1には示されていないが以下でさらに説明する)は次いで、マルチポートビットセルに書き込まれるデータビットを用いて書込みビット線対を駆動する。データビットのバイナリ値が真である場合、書込みドライバは、真書込みビット線WBLを充電状態に維持しつつ補書込みビット線WBLBを放電させる。逆に、書込みドライバは、データビットが偽であることに応答して、補書込みビット線WBLBを充電状態に維持しつつ真書込みビット線WBLを放電させる。
【0016】
書込みドライバによって、どのビット線が充電され、どの書込みビット線がグランドに放電されるかに応じて、書込みドライバは、SRAMビットセル100のどの出力ノードが電源電圧に充電されるか、またはグランドに放電されるかを判定する。たとえば、書込みビット線が書込み動作の間充電されたままである場合、Q出力ノードが充電され、一方、補QB出力ノードは放電される。Q出力ノードは、SRAMビットセル100内の第2のインバータに交差結合された第1のインバータの出力ノードである。第1のインバータは、ソースが電源電圧用の電源ノードに接続されたp型金属酸化物半導体(PMOS)トランジスタP1を含む。トランジスタP1のドレインは、NMOSトランジスタM1のドレインに接続される。トランジスタM1のソースは、グランドに接続される。トランジスタP1およびM1のドレインは、第1のインバータの出力ノードを形成し、また、ビットセル100用のQ出力ノードを形成する。
【0017】
第2のインバータは、同様に配置され、したがって、PMOSトランジスタP2を含む。PMOSトランジスタP2は、ソースが、電源ノードに接続され、ドレインが、ソースがグランドに接続されたNMOSトランジスタM2のドレインに接続されている。トランジスタP2およびM2のドレインは、第2のインバータの出力ノードを形成し、また、QB出力ノードを形成する。インバータ間の交差結合を完成するために、Q出力ノードは、トランジスタP2およびM2のゲートに接続される。同様に、QB出力ノードは、トランジスタP1およびM2のゲートに接続される。したがって、2つのインバータは、互いを補強し、SRAMビットセル100に書き込まれるビットをラッチする。
【0018】
SRAMビットセル100の第1の読取りポートAは、NMOSトランジスタM5と、NMOSアクセストランジスタM6と、読取りポートAビットライン(RBLA)、および読取りポートAワード(RWLA)とを含む。読取りポートAビット線RBLAは、アクセストランジスタM6のドレインに接続される。アクセストランジスタM6のソースは、トランジスタM5のドレインに接続される。トランジスタM5のソースは、グランドに接続される。Q出力ノードはおよびトランジスタM5のゲートに接続される。読取りポートAワード線RWLAは、アクセストランジスタM6のゲートに接続される。読取りポートAへの読取り動作の前に、読取りポートAビット線RBLAは、電源電圧にプリチャージされる。読取りポートAビット線RBLAは次いで、読取りポートAへのシングルエンド読取り動作の間フロートし、それによって、ビット線電圧は、読取りポートAを通したSRAMビットセル100へのシングルエンド読取り動作によって影響を受けることがある。読取りポートAに対するシングルエンド読取り動作の間、読取りポートAワード線RWLAは、電源電圧にチャージされ、アクセストランジスタM6がオンに切り替えられる。Q出力ノードがポートAに対する読取り動作の前に電源電圧に充電されている場合、トランジスタM5は、オンに切り替えられ、トランジスタM6のソースが放電される。読取りポートAワード線RWLAをアサートすることによって、アクセストランジスタM6がオンに切り替えられると、読取りポートAビット線RBLAは、トランジスタM5およびM6を通して放電する。読取りポートAへの読取り動作がシングルエンドである(1つの読取りビット線のみを伴う)場合、読取りポートAを通してSRAMビットセル100のバイナリコンテンツを感知するセンス増幅器は、単純なインバータによって形成されてもよい(
図1には示されていないが、以下でさらに説明する)。読取りポートAビット線RBLAがセンス増幅器インバータのトリップポイントに放電すると、センス増幅器インバータは、その出力信号を電源電圧にアサートして、SRAMビットセル100から読み取られていたバイナリ1を首尾よく表す。本明細書で開示されるセンス増幅器インバータの各々は、センス増幅器として働くインバータによって形成されるので、本明細書ではセンス増幅器インバータは、単にインバータとして示されることがある。
【0019】
その代わりにSRAMビットセル100がバイナリ0を記憶する場合、Q出力ノードは、読取り動作の前に放電される。その場合、トランジスタM5は、オフに切り替えられ、それによって、読取りポートAビット線RBLAは、読取りポートAへの読取り動作の間プリチャージ状態を保持する。したがって、センス増幅器インバータは、SRAMビットセル100からバイナリ0が読み取られていることを表す出力信号を引き続き排出する。
【0020】
残りの読取りポートBは同様に、NMOSトランジスタM7およびM8ならびに読取りポートBワード線(RWLB)および読取りポートBビット線(RBLB)を含むように構成される。読取りポートBビット線RBLBは、アクセストランジスタM8のドレインに接続される。アクセストランジスタM8のソースは、トランジスタM7のドレインに接続される。トランジスタM7のソースは、グランドに接続される。QB出力ノードは、トランジスタM7のゲートに接続される。読取りポートBワード線RWLBは、アクセストランジスタM8のゲートに接続される。読取りポートBへのシングルエンド読取り動作の前に、読取りポートBビット線RBLBは、電源電圧にプリチャージされる。読取りポートBビット線RBLBは次いで、フロートし、それによって、読取りポートBビット線RBLBの電圧は、読取りポートBを通したSRAMビットセル100への読取り動作によって影響を受けることがある。読取りポートBを通したシングルエンド読取り動作の間、読取りポートBワード線RWLBは、電源電圧に充電され、アクセストランジスタM8がオンに切り替えられる。QB出力ノードがポートBに対する読取り動作の前に電源電圧に充電されている場合、トランジスタM7は、オンに切り替えられ、アクセストランジスタM8のソースが放電される。読取りポートBワード線RWLBをアサートすることによって、アクセストランジスタM8がオンに切り替えられると、読取りポートBビット線RBLBは、トランジスタM7およびM8を通して放電する。逆に、読取りポートBビット線RBLBは、QBノードが放電される場合、読取りポートBアクセスの間プリチャージされたままになる。
【0021】
読取りポートAおよびBへのシングルエンド読取り動作は、衝突のない状態でのみ実行される。書込みポートを通したマルチポートビットセル100への書込み動作が、読取りポートAおよび/または読取りポートBへの読取り動作と同じシステムクロックサイクルで行われた場合、衝突が生じる。読取り動作は、SRAMビットセル100に記憶されたビットのバイナリ状態について、場合によっては、書込み動作がこのバイナリ状態を変更している間に読取りを試みる。結果として生じる衝突が読取り動作を乱す。前述のように、衝突緩和は従来、システムクロック周期を2つの部分に分離するダブルポンプ動作を介して実行されている。第1の部分では、読取りポートAおよびBのいずれか(またはその両方)への読取り動作が行われる。書込みポートは、この第1の部分の間アクセスされない。システムクロック周期の第2の部分の間、書込み動作が行われる。ダブルポンプ動作が適切に行われる場合、読取り動作の間に書込み動作が行われることはないので、衝突は生じ得ない。しかし、ダブルポンプ動作においてシステムクロック周期をこのように分割すると、メモリ動作速度が低下する。
【0022】
ダブルポンプ動作のタイミングペナルティを解消するために、システムクロック周期が、読取り動作および書込み動作についての別々の部分に分割されないマルチポートメモリが設けられる。その代わり、各アクティブ読取りポートについてアドレス比較が実行され、SRAMビットセルの書込みポートも書込み動作によってアドレス指定されているかどうかが判定される。アドレス指定されたSRAMビットセルに書込み動作が行われていないことをアドレス比較が示す場合、対応する読取りポートを介してシングルエンド読取り動作が行われる。このシングルエンド読取り動作は、SRAMビットセル100に関して説明したように行われる。したがって、対応する読取りポートビット線は、プリチャージされ、次いで、対応する読取りワード線が充電される間フロートし、それによって、読取りポートビット線の得られる電圧が、センス増幅器インバータによって感知され、アドレス指定されているのが読取りポートAであるかそれとも読取りポートBであるかに応じて、読取りポートデータ出力ビットまたは補読取りポートデータ出力ビットが生成される。しかし、SRAMビットセルの書込みポートもアクセスされていることをアドレス比較が示す場合、読取りポートを介して読取り動作が行われることはない。読取りポートが使用されていないので、対応する読取りポートビット線はフロートされず、対応する読取りワード線電圧もアサートされない。その代わり、読取りポートの一方(または両方)がアクセスされるシステムクロック周期と同じシステムクロック周期の間にマルチポートSRAMビットセルについて書込みポートがアクセスされた場合、書込みポートを通して読取り動作が行われる。
【0023】
書込みポートを通した読取り動作は、読取りポートと書込みポートの違いを利用する。特に、書込みポートへの書込み動作が、書込みポートビット線の対を伴い、読取りポートAおよびBのいずれかへの読取り動作が、シングルエンドであり、1つの読取りポートビット線のみを介して行われるという点で異なることに留意されたい。書込みポートアクセスの差動特性を仮定すると、マルチポートSRAMビットセルに記憶されたビットの差動読取りは、読取りポート上のシングルエンド読取りと比較して、書込みポートを通して比較的迅速に行われる場合がある。その点において、シングルエンド読取りを実行するセンス増幅器インバータについてのしきい値電圧は、電源電圧の約2分の1である。たとえば、電源電圧が0.8Vであると仮定する。その場合、センス増幅器インバータが読取りポートを通してシングルエンド読取りを実行するためのしきい値電圧は、約400mVである。その場合、センス増幅器インバータがそのビット決定を下すことができるようになるまでには、プリチャージ読取りポートビット線を800mVから400mVのトリガポイントまで放電しなければならない。しかし、書込みポートビット線を介した差動読取りは、書込みポートビット線に結合された差動センス増幅器がビット決定を下すことができるようになるまでに、そのような比較的大きな電圧変化を必要としない。
【0024】
所与のシステムクロック周期において書込みポートがアドレス指定された場合、書込み動作の間に書き込まれるデータビットを用いた書込みビット線の駆動は、差動読取り動作が行われ得るまで遅延される。書込みポートアクセスの前に、書込みビット線がデフォルト状態でプリチャージされてもよい。書込みポートを介した差動読取りの間に、マルチポートSRAMビットセルにおける記憶されたビットのバイナリ値に応じて、書込みビット線の1つが、デフォルトプリチャージ状態から放電を開始する。次いで、差動センス増幅器によって感知される書込みポートビット線間に電圧差が生じる。センス増幅器インバータのしきい値電圧と比較して、差動センス増幅器は、電圧差が電源電圧の小部分(たとえば、100mVまたは80mVさらにはそれよりも低い電圧)にすぎないときにビット決定を下してもよい。差動センス増幅器において差動ビット決定を下すための書込みポートビット線にわたる電圧差は、センス増幅器インバータがシングルエンドビット決定を下すためのしきい値電圧と比較してかなり小さい。したがって、差動読取りを実行するための、書込みポートビット線にわたる十分な電圧差は、シングルエンド読取り動作と比較して迅速に生じる。
【0025】
差動読取りについてのこのような相対的な速さを仮定すると、書込み動作を完了するための差動読取りおよび書込みビット線の駆動は、依然として、シングルエンド読取り動作にかかる時間と実質的に同じ時間で実行される場合がある。したがって、行われる動作は、書込み動作(初期差動読取りを含む)が、シングルエンド読取り動作が実行されている時間と実質的に同じ時間に開始し得るが、アドレス比較では、書込みポートもアドレス指定されていたことが示されるという点で、ダブルポンプ動作と比較してかなり高速である。
【0026】
概して、読取りポートが、マルチポートSRAMビットセルについて衝突なしにアクセスされることはより一般的である。そのような場合、アドレス指定された読取りポートを介してシングルエンド読取りが行われる。書込みポートはアクセスされず、したがって、書込みビット線は、デフォルトのプリチャージ状態のままである。しかし、同じシステムクロック周期における所与のマルチポートSRAMビットセルについて、読取りポートと書込みポートの両方がアドレス指定される場合がある。その場合、アドレス指定された読取りポートを介してシングルエンド読取り動作が行われることはなく、その代わりに、書込み動作が開始し完了する前に、書込みポートを通して差動読取り動作が行われる。差動読取り動作は、マルチポートSRAMビットセルにおける記憶されたデータビットと、その補数の両方を感知する。したがって、マルチプレクサは、書込みポートがアドレス指定されない(衝突が発生しない)場合、アドレス指定された読取りポート用のセンス増幅器インバータからのビット決定を選択し、または書込みポートがアドレス指定された(衝突が存在する)場合には差動センス増幅器からのビット決定を選択してもよい。次いで、ラッチがマルチプレクサからのビット決定選択をラッチしてもよい。
【0027】
マルチポートSRAMに対して行われる衝突緩和についてのフローチャート200が
図2に示されている。このマルチポートSRAMに関して、多重ビットセル100は、適切なマルチポートビットセルの例であるが、本明細書で開示される衝突緩和が任意の適切なマルチポートビットセルアーキテクチャを用いて実施されることが諒解されよう。フローチャート200は、クロック信号205のトリガリングエッジが読取り動作および/または書込み動作を開始したことに応答して開始する。フローチャート200に関して、書込みポートは、読取りポートAおよびBと区別するためにポートCとして示される。クロック信号205のトリガリングエッジに続いて書込みポートがアドレス指定されることがある。ただし、このことは、クロック信号205のあらゆるサイクルについて真であるとは限らない。書込みポートがアドレス指定された場合、ステップ220において書込みワード線(ポートCワード線)がアサートされる。書込みワード線がアサートされた後、書込みポートCに対応するマルチポートビットセルにおける保存ビットが差動読取り240を介して書込みビット線の対を通して書込みポートCに取り出される。次いで、差動センス増幅器が、取り出されたビットのバイナリ値を感知する。差動読取りが完了した後、書込みドライバは次に、ステップ265において、データビットが書込みポートCを通して対応するビットセルに書き込まれるように駆動する。書込み動作が完了すると、書込みワード線が放電されて(閉じられて)ステップ265が完了する。
【0028】
同じクロックサイクルにおいて読取りポートAへの衝突が生じているかどうかを判定するためには、ステップ210において読取りポートAおよび書込みポートCのアドレスが比較される。アドレスが同じマルチポートビットセルを指し示す(たとえば、アドレスが等しいかもしれない)場合、フローチャート200におけるはい決定として示されている衝突が生じている。逆に、読取りポートAおよび書込みポートCのアドレスがそれぞれに異なるマルチポートビットセルを指し示す場合、読取りポートAに関して衝突は生じていない(フローチャート200におけるいいえ決定として示される)。読取りポートAにおいて衝突が生じていない場合、読取りポートAワード線がステップ225において充電されてもよく、それによって、ステップ235においてシングルエンド読取り動作が読取りポートAを通して行われてもよい。次いで、マルチプレクサ250は、(衝突が生じていないと仮定して)、シングルエンド読取り結果を選択し、それによって、ステップ260において出力ビットがラッチされてもよい。しかし、ポートAとポートCの間に衝突が生じた場合、読取りポートAワード線はアサートされず、マルチプレクサ250は、ステップ240において、差動読取り動作による出力ビットを選択する。したがって、マルチプレクサ250による選択は、ステップ210におけるポートAとポートCの間の衝突に対するはい決定が真であるかそれとも偽であるかによって制御されてもよい。
【0029】
ステップ215において読取りポートBについて同様のアドレス比較が行われる。ポートBおよびポートCのアドレスが同じマルチポートビットセルを指し示す場合、衝突が生じている(はい決定)。逆に、読取りポートAおよび書込みポートCのアドレスがそれぞれに異なるマルチポートビットセルを指し示す場合、読取りポートBに関して衝突は生じていない(いいえ決定)。読取りポートBにおいて衝突が生じていない場合、読取りポートBワード線がステップ230において充電されてもよく、それによって、ステップ245においてシングルエンド読取り動作が読取りポートBを通して行われてもよい。次いで、マルチプレクサ255は、(衝突が生じていないと仮定して)、ポートBシングルエンド読取り結果を選択し、それによって、ステップ270において補出力ビットがラッチされてもよい。しかし、ポートBとポートCの間に衝突が生じた場合、読取りポートBワード線はアサートされず、マルチプレクサ255は、ステップ240において、差動読取り動作による補出力ビットを選択する。したがって、マルチプレクサ255による選択は、ステップ215におけるポートBとポートCの間の衝突に対するはい決定が真であるかそれとも偽であるかによって制御されてもよい。
【0030】
次に、衝突回避向けに構成されたSRAM300について、
図3に関して説明する。アドレス比較器305は、システムクロック信号(CLK)のトリガリングエッジに応答して、ポートAのアドレスとポートCのアドレスとのアドレス比較を実行する。ポートAとポートCの間に衝突が生じていないことを比較が示す場合、アドレス比較器305は、システムクロック信号をクロックA信号(CLKA)としてプリチャージおよびポートAワード線コントローラ310に送り、プリチャージA信号のアサートに応答して、ポートAワード線のアサート(充電)をトリガし、かつポートAビット線のプリチャージのフロートをトリガする。プリチャージ信号Aの状態(真または偽)は、本明細書でさらに説明するようにマルチプレクサ250による選択を制御してもよい。
【0031】
アドレス比較器315は、システムクロック信号(CLK)のトリガリングエッジに応答して、ポートBのアドレスとポートCのアドレスとのアドレス比較を実行する。ポートBとポートCの間に衝突が生じていないことを比較が示す場合、アドレス比較器315は、システムクロック信号をクロックB信号(CLKB)としてプリチャージおよびポートBワード線コントローラ311に送り、プリチャージB信号のアサートに応答して、ポートBワード線のアサート(充電)をトリガし、かつポートBビット線のプリチャージのフロートをトリガする。プリチャージ信号Aの状態(真または偽)は、本明細書でさらに説明するようにマルチプレクサ255による選択を制御してもよい。
【0032】
マルチポートビットセル100における書込みポートは、前述のように、書込みワード線WWLと書込みビット線WBLおよびWBLBとを含む。差動センス増幅器320は、書込みビット線WBLおよびWBLBに結合され、それによって、書込みワード線WWLがアサートされて書込みポートが開かれると、差動センス増幅器320は、マルチポートビットセル100に記憶されたデータビットとその補数の両方を感知し得る。感知されたデータビットは、Soutと表され、一方、感知された補データビットは、SoutBと表される。センス増幅器320による感知は、センスイネーブル信号のアサートに応答して行われる。センス増幅器320はまた、書込みドライバ(Dinドライバ)と一体化され、書込みドライバは次いで、差動読取り動作が完了した後に書き込まれるデータビットDinを用いて書込みビット線WBLおよびWBLBを駆動し得る。
【0033】
プリチャージA信号は、ソースが電源電圧ノードに結合され、ドレインが読取りポートAビット線に接続されたPMOSトランジスタP4のゲートを駆動する。プリチャージA信号は、読取りポートAビット線がフロートするか、それともデフォルトのプリチャージ状態のままであるかを制御する。プリチャージA信号がアサート解除されると、トランジスタP4による導通に起因して読取りポートAビット線のプリチャージが行われる。本明細書で使用される信号は、ロジカルハイ規約が使用されるかそれともロジカルロー規約が使用されるかにかかわらず、その信号が真であるときに「アサートされた」と見なされる。プリチャージA信号は、アクティブハイであり、それによって、電源電圧に充電されることによってアサートされる。プリチャージA信号はまた、グローバル読取りポートAビット線(GRBLA)のフロートを制御する。そうするために、プリチャージA信号はまた、ドレインがグローバル読取りポートAビット線に接続され、ソースが電源ノードに接続されたPMOSトランジスタP5のゲートを駆動する。したがって、プリチャージA信号をアサート解除すると、また、トランジスタP5が導通してグローバル読取りビット線Aを電源電圧にプリチャージする。インバータINV Cは、読取りポートAビット線のバイナリ状態を反転させて、ソースがグランドに接続され、ドレインがグローバル読取りポートAビット線に接続されたNMOSトランジスタM9のゲートを駆動する。したがって、トランジスタM9は、読取りポートAビット線がプリチャージされる間オフにされる。読取りポートAがアドレス指定された場合、プリチャージA信号がアサートされてトランジスタP4とP5の両方がオフに切り替えられ、それによって、読取りポートAビット線RBLAとグローバル読取りポートAビット線GRBLAの両方がフロートする。マルチポートビットセル100に記憶されたデータビットがバイナリ0である場合(ロジックハイ規約を仮定する)、RBLA線およびGRBLA線がフロートしているにもかかわらず、RBLA線およびGRBLA線のプリチャージ状態は影響を受けない。読取りポートAセンス増幅器インバータ(INV A)は、GRBLA線のバイナリ状態を反転させて、感知されたデータ出力ビットを提供する。感知されたデータ出力ビットは、プリチャージA信号のアサートに起因してマルチプレクサ250によって選択される。しかし、衝突時には、プリチャージA信号はアサートされず、それによって、マルチプレクサ250は、差動センス増幅器320からのSoutデータビットを選択する。次いで、データ出力ラッチ325は、感知されたビット(DoutA)が、読取りポートAによって生成されたか、それとも書込みポートCによって生成されたかにかかわらず、感知されたビット(DoutA)をラッチしてもよい。
【0034】
読取りポートBは同様である。プリチャージB信号は、ソースが電源電圧ノードに結合され、ドレインが読取りポートBビット線B(RBLB)に接続されたPMOSトランジスタP6のゲートを駆動する。プリチャージB信号は、読取りポートBビット線がフロートするか、それともデフォルトのプリチャージ状態のままであるかを制御する。プリチャージB信号がアサート解除されると、トランジスタP6による導通に起因して読取りポートBビット線のプリチャージが行われる。プリチャージB信号はまた、グローバル読取りポートBビット線(GRBLB)のフロートを制御する。そうするために、プリチャージB信号はまた、ドレインがグローバル読取りポートBビット線に接続され、ソースが電源ノードに接続されたPMOSトランジスタP7のゲートを駆動する。したがって、プリチャージB信号をアサート解除すると、また、トランジスタP7が導通してグローバル読取りポートBビット線を電源電圧にプリチャージする。インバータINV Dは、読取りポートBビット線のバイナリ状態を反転させて、ソースがグランドに接続され、ドレインがグローバル読取りポートBビット線に接続されたNMOSトランジスタM10のゲートを駆動する。したがって、トランジスタM10は、読取りポートBビット線がプリチャージされる間オフにされる。読取りポートBがアドレス指定された場合、プリチャージB信号がアサートされてトランジスタP6とP7の両方がオフに切り替えられ、それによって、読取りポートBビット線RBLBとグローバル読取りポートBビット線GRBLBの両方がフロートする。マルチポートビットセル100に記憶されたデータビットがバイナリ0である場合(この場合も、ロジックハイ規約を仮定する)、RBLB線およびGRBLB線がフロートしているにもかかわらず、RBLB線およびGRBLB線のプリチャージ状態は影響を受けない。読取りポートBセンス増幅器インバータ(INV B)は、GRBLB線のバイナリ状態を反転させて、感知されたデータ出力ビットを提供する。感知されたデータ出力ビットは、プリチャージB信号のアサートに起因してマルチプレクサ255によって選択される。しかし、衝突時には、プリチャージB信号はアサートされず、それにより、マルチプレクサ255は、その代わりに、差動センス増幅器320からのSoutB補データビットを選択する。次いで、データ出力ラッチ325は、感知されたビット(DoutB)が、読取りポートBによって生成されたか、それとも書込みポートCによって生成されたかにかかわらず、感知されたビット(DoutB)をラッチしてもよい。
【0035】
次に、衝突サポートの方法について、
図4に示すフローチャートを参照して説明する。この方法は、第1の読取りポートアドレスを書込みポートアドレスと比較して、第1の読取りポートアドレスが書込みポートアドレスと一致することに応答して、第1の衝突を検出し、第1の読取りポートアドレスが書込みポートアドレスと一致しないことに応答して、第1の衝突がないことを検出する行為400を含む。アドレス比較器305および315のいずれかにおける比較は、行為400の例である。方法は、第1のマルチプレクサにおいて行われ、第1の衝突がないことの検出に応答して、第1の読取りポートを通したマルチポートビットセルへのシングルエンド読取りから得られるデータ出力ビットを選択することを含む行為405をさらに含む。衝突がないことを伴うマルチプレクサ250または255のいずれかにおける選択は、行為405の例である。最後に、方法は、同じく第1のマルチプレクサにおいて行われ、第1の衝突の検出に応答して、書込みポートを通したマルチポートビットセルへの差動読取りから得られるデータ出力ビットを選択することを含む行為410を含む。衝突を伴うマルチプレクサ250または255のいずれかにおける選択は、行為410の例である。
【0036】
本明細書で開示される衝突サポートを含むマルチポートメモリは、様々な電子システムに組み込まれてもよい。たとえば、
図5に示すように、携帯電話500、ラップトップコンピュータ505、およびタブレットPC510は、すべて、本開示による衝突サポートを含むマルチポートメモリを含んでもよい。音楽プレーヤ、ビデオプレーヤ、通信デバイスおよびパーソナルコンピュータなどの他の例示的な電子システムも、本開示によって構築されたマルチポートメモリを用いて構成され得る。
【0037】
次に、本開示を以下の一連の条項において要約する。
条項1。マルチポートメモリであって、
第1の読取りポートビット線を有する第1の読取りポートを含むマルチポートビットセルであって、書込みポートビット線の対をさらに含む、マルチポートビットセルと、
書込みポートビット線の対に結合されたセンス増幅器と、
第1の読取りポートビット線に結合された第1のインバータと、
センス増幅器からのデータ出力ビットと第1のインバータからのデータ出力ビットのどちらかを選択して選択されたデータ出力ビットを提供するように構成された第1のマルチプレクサとを備えるマルチポートメモリ。
条項2。マルチポートビットセルは、第2の読取りポートビット線を有する第2の読取りポートをさらに含み、マルチポートメモリは、
第2の読取りポートビット線に結合された第2のインバータと、
センス増幅器からの補データ出力ビットと第2のインバータからの補データ出力ビットのどちらかを選択して選択された補データ出力ビットを提供するように構成された第2のマルチプレクサとをさらに備える、条項1に記載のマルチポートメモリ。
条項3。選択されたデータ出力ビットおよび選択された補データ出力ビットをラッチするように構成されたデータラッチをさらに備える、条項2に記載のマルチポートメモリ。
条項4。読取りポートアドレスが書込みポートアドレスと同じであることに応答して衝突を検出し、読取りポートアドレスが書込みポートアドレスと異なることに応答して、衝突がないことを検出するように構成されたアドレス比較器と、
衝突がないことの検出に応答して、第1の読取りポートへの読取りポートワード線をアサートし、衝突の検出に応答して、読取りポートワード線をアサートしないように構成された読取りワード線コントローラとをさらに備える、条項1から3のいずれかに記載のマルチポートメモリ。
条項5。読取りワード線コントローラは、衝突がないことの検出に応答して、プリチャージ信号をアサートし、衝突の検出に応答して、プリチャージ信号をアサートしないようにさらに構成される、条項4に記載のマルチポートメモリ。
条項6。第1の読取りポートビット線と電源電圧用の電源ノードとの間に結合されたトランジスタをさらに備え、トランジスタは、プリチャージ信号のアサートに応答してオンに切り替わり、プリチャージ信号がアサートされないことに応答してオフに切り替わるように構成される、条項5に記載のマルチポートメモリ。
条項7。トランジスタは、p型金属酸化膜半導体(PMOS)トランジスタを備える、条項6に記載のマルチポートメモリ。
条項8。ビットがセンス増幅器によるセンス動作の完了後にマルチポートビットセルに書き込まれたことに応答して、書込みビット線の対を駆動するように構成された書込みドライバをさらに備える、条項1から7のいずれかに記載のマルチポートメモリ。
条項9。マルチポートビットセルは、データ出力ノードおよび補データ出力ノードを駆動するように構成された交差結合インバータの対を備え、第1の読取りポートは、読取りポートワード線によって制御されるように構成されたアクセストランジスタをさらに含む、条項4に記載のマルチポートメモリ。
条項10。第1の読取りポートは、グランドとアクセストランジスタの端子との間に結合された第2のトランジスタをさらに含み、第2のトランジスタのゲートは、データ出力ノードに結合され、マルチポートメモリは、携帯電話に組み込まれる、条項9に記載のマルチポートメモリ。
条項11。マルチポートメモリの動作方法であって、
第1の読取りポートアドレスを書込みポートアドレスと比較して、第1の読取りポートアドレスが書込みポートアドレスと一致することに応答して、第1の衝突を検出し、第1の読取りポートアドレスが書込みポートアドレスと一致しないことに応答して、第1の衝突がないことを検出するステップと、
第1のマルチプレクサにおいて、第1の衝突がないことの検出に応答して、第1の読取りポートを通したマルチポートビットセルへのシングルエンド読取りから得られるデータ出力ビットを選択するステップと、
第1のマルチプレクサにおいて、第1の衝突の検出に応答して、書込みポートを通したマルチポートビットセルへの差動読取りから得られるデータ出力ビットを選択するステップとを含む方法。
条項12。クロック信号のエッジに応答して、第1の読取りポートアドレスと書込みポートアドレスの比較をトリガするステップをさらに含む、条項11に記載の方法。
条項13。第2の読取りポートアドレスを書込みポートアドレスと比較して、第2の読取りポートアドレスが書込みポートアドレスと一致することに応答して、第2の衝突を検出し、第2の読取りポートアドレスが書込みポートアドレスと一致しないことに応答して、第2の衝突がないことを検出するステップと、
第2のマルチプレクサにおいて、第2の衝突がないことの検出に応答して、第2の読取りポートを通したマルチポートビットセルへのシングルエンド読取りから得られる補データ出力ビットを選択するステップと、
第2のマルチプレクサにおいて、第2の衝突の検出に応答して、書込みポートを通したマルチポートビットセルへの差動読取りから得られる補データ出力ビットを選択するステップとをさらに含む、条項11および12のいずれかに記載の方法。
条項14。第1の読取りポートアドレスを書込みポートアドレスと比較する前に、第1の読取りポートにおいて第1のビット線をプリチャージするステップと、
第1の衝突の検出に応答して、第1のビット線をフロートさせるステップと、
第1の衝突がないことの検出に応答して、第1のビット線のプリチャージを維持するステップとをさらに含む、条項11から13のいずれかに記載の方法。
条項15。第1の衝突がないことの検出に応答して、プリチャージ信号をアサートするステップであって、第1のビット線のフロートは、プリチャージ信号のアサートに応答して行われる、ステップをさらに含む、条項14に記載の方法。
条項16。プリチャージ信号のアサートに応答して、第1のビット線と電源電圧用の電源ノードとの間に結合されたトランジスタをオフに切り替えるステップをさらに含む、条項15に記載の方法。
条項17。第1の衝突の検出に応答して、プリチャージ信号のアサート解除を維持して、トランジスタのオン状態を維持するステップをさらに含む、条項16に記載の方法。
条項18。第1のマルチプレクサからのデータ出力ビットをラッチするステップをさらに含む、条項11から17のいずれかに記載の方法。
条項19。マルチポートメモリであって、
第1の読取りポートビット線と第1の読取りポートワード線を有する第1の読取りポートを含むマルチポートビットセルであって、書込みポートビット線の対を有する書込みポートをさらに含む、マルチポートビットセルと、
書込みポートアドレスが書込みポートを指し示し、読取りポートアドレスが第1の読取りポートを指し示すことに応答して、衝突を検出するように構成されたアドレス比較器と、
衝突が検出されないことに応答して、第1の読取りポートワード線をアサートするように構成され、衝突の検出に応答して、第1の読取りポートワード線をアサートしないように構成された読取りポートワード線コントローラとを備えるマルチポートメモリ。
条項20。読取りポートワード線コントローラは、衝突が検出されないことに応答して第1の読取りポートについてのプリチャージ信号をアサートするようにさらに構成され、第1の読取りポートは、プリチャージ信号のアサートに応答して第1の読取りポートビット線をフロートさせるようにさらに構成される、条項19に記載のマルチポートメモリ。
条項21。書込みポートアドレスが書込みポートを指し示すことに応答して書込みポートを通して差動読取りを実行するように構成されたセンス増幅器をさらに備える、条項19および20のいずれかに記載のマルチポートメモリ。
条項22。データビットが、差動読取りの完了後にマルチポートビットセルに書き込まれるように、書込みビット線の対を駆動するように構成されたデータドライバをさらに備える、条項21に記載のマルチポートメモリ。
条項23。第1の読取りポートビット線に結合されたインバータと、
インバータの出力とセンス増幅器のどちらかを選択するように構成されたマルチプレクサとをさらに備える、条項21および22のいずれかに記載のマルチポートメモリ。
条項24。マルチポートメモリであって、
読取りポートアドレスと書込みポートアドレスの両方が、第1のマルチポートビットセルを指し示すことに応答して、衝突を検出するように構成されたアドレス比較器と、
第1のマルチポートビットセルから書込みポートを通して第1のデータビットを読み取るように構成されたセンス増幅器と、
第1のデータビットの読取りが完了した後第2のデータビットを書込みポートを通して第1のマルチポートビットセルに書き込むように構成された書込みドライバと、
センス増幅器に結合され、衝突の検出に応答して第1のデータビットを選択するように構成されたマルチプレクサとを備えるマルチポートメモリ。
条項25。第1のマルチポートビットセル内の第1の読取りポートにおける読取りポートビット線に結合されたインバータをさらに備え、マルチプレクサは、衝突がないことの検出に応答してインバータの出力を選択するようにさらに構成される、条項24に記載のマルチポートメモリ。
条項26。マルチプレクサからの出力ビットをラッチするように構成されたデータラッチをさらに備える、条項25に記載のマルチポートメモリ。
条項27。第1のマルチポートビットセルは、第2の読取りポートを含む、条項25および26のいずれかに記載のマルチポートメモリ。
条項28。衝突がないことの検出に応答して第1の読取りポートへのワード線をアサートするように構成された読取りポートワード線コントローラをさらに備える、条項25から27のいずれかに記載のマルチポートメモリ。
条項29。読取りポートワード線コントローラは、衝突がないことの検出に応答して、第1の読取りポートへのプリチャージ信号をアサートするようにさらに構成される、条項28に記載のマルチポートメモリ。
条項30。アドレス比較器は、クロック信号のエッジに応答して衝突を検出するようにトリガされるように構成される、条項24から29のいずれかに記載のマルチポートメモリ。
【0038】
当業者には現時点で諒解されるように、目下の特定の応用例に応じて、本開示のデバイスの材料、装置、構成および使用方法において、また、それらに対して、多くの修正、代替、および変形を、その範囲から逸脱することなく行うことができる。このことに照らして、本明細書で図示および説明した特定の実施形態は、それらのいくつかの例にすぎないので、本開示の範囲はそのような特定の実施形態の範囲に限定されるべきではなく、むしろ、以下に添付される特許請求の範囲およびそれらの機能的等価物の範囲と完全に同じであるべきである。
【符号の説明】
【0039】
100 SRAMビットセル
200 フローチャート
205 クロック信号
240 差動読取り
250、255 マルチプレクサ
300 SRAM
305 アドレス比較器
310 ポートAワード線コントローラ
311 ポートBワード線コントローラ
315 アドレス比較器
320 差動センス増幅器
325 データ出力ラッチ
500 携帯電話
505 ラップトップコンピュータ
510 タブレットPC
M1、M2、M3、M4、M5、M6、M7、M8、M9、M10 NMOSトランジスタ
P1、P2、P4、P5、P6、P7 PMOSトランジスタ
RBLA 読取りポートAビット線
RBLB 読取りポートBビット線
RWLA 読取りポートAワード線
RWLB 読取りポートBワード線
WBL 真書込みビット線
WBLB 補書込みビット線
WWL 書込みワード線
【国際調査報告】