(57)【特許請求の範囲】
【請求項１】
複数のスタティックランダムアクセスメモリ(SRAM)ビットセルのためのSRAMグローバルビット線回路であって、
システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するように構成されたグローバルビット線イネーブル発生回路と、
SRAMデータアレイの複数のSRAMビットセルのうちの選択されたSRAMビットセル内に記憶されるデータを受信するように構成された集約済み読取りビット線に結合されたビット線評価回路であって、
前記集約済み読取りビット線上で、前記システムクロックの立上り遷移に応答してプリチャージされた論理値を受信した後に前記選択されたSRAMビットセルから前記データを受信し、
前記グローバルビット線イネーブルに応答して、前記データを含む前記SRAMデータアレイについてのSRAMデータとして提供されるグローバルビット線を生成する
ように構成されたビット線評価回路と、
前記グローバルビット線を受信およびラッチするように構成された出力ラッチと
を備えるSRAMグローバルビット線回路。
【請求項２】
前記ビット線評価回路が、前記集約済み読取りビット線からの前記データをラッチし、前記グローバルビット線イネーブルに応答して前記グローバルビット線に前記データを提供するように構成されたラッチをさらに備える請求項1に記載のSRAMグローバルビット線回路。
【請求項３】
前記ビット線評価回路が、
前記グローバルビット線イネーブル、および前記集約済み読取りビット線上の前記データが論理高値であることに応答して、前記グローバルビット線をソース電圧に結合するように構成されたプルアップトランジスタと、
前記集約済み読取りビット線上の前記データが論理低値であることに応答して、前記グローバルビット線をグランド電圧に結合するように構成されたプルダウントランジスタと
をさらに備える請求項1に記載のSRAMグローバルビット線回路。
【請求項４】
前記グローバルビット線イネーブルがイネーブルされない場合、前記プルアップトランジスタが、前記グローバルビット線を前記ソース電圧に結合しないようにさらに構成され、
前記集約済み読取りビット線上の前記データが論理高値である場合、前記プルダウントランジスタが、前記グローバルビット線を前記グランド電圧に結合しないようにさらに構成された請求項3に記載のSRAMグローバルビット線回路。
【請求項５】
前記グローバルビット線イネーブル発生回路が、前記システムクロックの前記立下り遷移およびアクティブ高グローバルビット線イネーブルに応答して、前記グローバルビット線イネーブルを生成するように構成された請求項1に記載のSRAMグローバルビット線回路。
【請求項６】
前記グローバルビット線イネーブル発生回路が、前記システムクロックの前記立下り遷移およびプリチャージに応答して、前記グローバルビット線イネーブルを生成するように構成された請求項1に記載のSRAMグローバルビット線回路。
【請求項７】
集積回路(IC)内に統合されるか、または、
セットトップボックス、エンターテイメントユニット、ナビゲーションデバイス、通信デバイス、固定位置データユニット、モバイル位置データユニット、携帯電話、セルラー電話、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビジョン、同調器、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤからなるグループから選択されたデバイス内に統合される、請求項1に記載のSRAMグローバルビット線回路。
【請求項８】
スタティックランダムアクセスメモリ(SRAM)グローバルビット線を生成する方法であって、
システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するステップと、
集約済み読取りビット線上で、前記システムクロックの立上り遷移に応答してプリチャージされた論理値を受信した後に複数のSRAMビットセルのうちの選択されたSRAMビットセルからデータを受信するステップであって、SRAMデータアレイの複数のSRAMビットセルのうちの前記選択されたSRAMビットセル内に記憶されたデータが、前記集約済み読取りビット線上に配置されるステップと、
前記グローバルビット線イネーブルに応答して、前記データを含む前記SRAMデータアレイについてのSRAMデータとして提供されるグローバルビット線を生成するステップと、
前記グローバルビット線を受信およびラッチするように構成された出力ラッチにおいて、前記グローバルビット線をラッチするステップと
を含む方法。
【請求項９】
プリチャージに応答して、複数のプリチャージされた読取りビット線を生成するように、前記SRAMデータアレイ内の前記複数のSRAMビットセルの複数の読取りビット線をプリチャージするステップと、
前記選択されたSRAMビットセル内に記憶された前記データを、前記複数のプリチャージされた読取りビット線のうちの対応するプリチャージされた読取りビット線上に読み取るステップと、
前記複数のプリチャージされた読取りビット線を前記集約済み読取りビット線に集約し、前記選択されたSRAMビットセルからの前記データを前記集約済み読取りビット線上に配置するステップと
をさらに含む請求項8に記載の方法。
【請求項１０】
前記選択されたSRAMビットセル内に記憶された前記データを読み取る前記ステップが、
前記複数のSRAMビットセルのうちの対応するSRAMビットセル内に記憶された前記データを、複数のデータ入力のうちの対応するデータ入力上で受信するステップと、
前記複数のプリチャージされた読取りビット線のうちの前記対応するプリチャージされた読取りビット線上に前記データを供給するステップとを含み、
前記グローバルビット線を反転し、反転グローバルビット線を前記SRAMデータとして供給するステップをさらに含む請求項9に記載の方法。
【請求項１１】
前記集約済み読取りビット線からの前記データをラッチ内にラッチするステップと、
前記グローバルビット線イネーブルに応答して、前記ラッチからの前記データを前記グローバルビット線に供給するステップと
をさらに含む請求項9に記載の方法。
【請求項１２】
前記グローバルビット線イネーブル、および前記集約済み読取りビット線上の前記データが論理高値であることに応答して、前記グローバルビット線をソース電圧にプルアップするステップと、
前記集約済み読取りビット線上の前記データが論理低値であることに応答して、前記グローバルビット線をグランド電圧にプルダウンするステップと
をさらに含む請求項8に記載の方法。
【請求項１３】
前記グローバルビット線イネーブルがイネーブルされない場合、前記グローバルビット線を前記ソース電圧にプルアップしないステップと、
前記集約済み読取りビット線上の前記データが論理高値である場合、前記グローバルビット線を前記グランド電圧にプルダウンするステップと
をさらに含む請求項12に記載の方法。
【請求項１４】
前記システムクロックの前記立下り遷移およびアクティブ高グローバルビット線イネーブルに応答して、前記グローバルビット線イネーブルを生成するステップ、または
前記システムクロックの前記立下り遷移およびプリチャージに応答して、前記グローバルビット線イネーブルを生成するステップ
を含む請求項8に記載の方法。
【請求項１５】
複数の列からなるスタティックランダムアクセスメモリ(SRAM)データアレイと、
複数のメモリアクセス回路であって、複数のメモリアクセス回路のうちの各メモリアクセス回路が、前記複数の列のうちの列に動作可能に関連付けられ、複数のメモリアクセス回路の各々が、
システムクロックの立上り遷移に後続するプリチャージに応答して、複数のプリチャージされた読取りビット線を生成するように、対応する列内の複数のSRAMビットセルの複数の読取りビット線をプリチャージし、
前記複数のSRAMビットセルのうちの選択されたSRAMビットセル内に格納されたデータを、前記複数のプリチャージされた読取りビット線のうちの対応するプリチャージされた読取りビット線上に読み取り、
前記複数のプリチャージされた読取りビット線を集約済み読取りビット線に集約し、前記選択されたSRAMビットセルからの前記データを前記集約済み読取りビット線上に配置する
ように構成された複数のメモリアクセス回路と、
複数のSRAMグローバルビット線回路であって、複数のSRAMグローバルビット線回路のうちの各SRAMグローバルビット線回路が、前記複数のメモリアクセス回路のうちのメモリアクセス回路に動作可能に関連付けられ、複数のSRAMグローバルビット線回路の各々が、
前記システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するように構成されたグローバルビット線イネーブル発生回路と、
前記SRAMデータアレイの前記複数のSRAMビットセルのうちの前記選択されたSRAMビットセル内に記憶された前記データを受信するように構成された前記集約済み読取りビット線に結合されたビット線評価回路であって、集約済み読取りビット線上で、前記システムクロックの立上り遷移に応答してプリチャージされた論理値を受信した後に前記選択されたSRAMビットセルから前記データを受信し、前記グローバルビット線イネーブルに応答して、前記データを含む前記SRAMデータアレイについてのSRAMデータとしてグローバルビット線を生成するように構成されたビット線評価回路と
を備える複数のSRAMグローバルビット線回路と、
複数のSRAMグローバルビット線回路の複数のSRAMデータからなる行データ出力と、
前記グローバルビット線を受信およびラッチするように構成された出力ラッチと
を備えるSRAM。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権の主張
本願は、参照によりその全体が本明細書に組み込まれる、2013年11月26日に出願され、「STATIC RANDOM ACCESS MEMORY (SRAM) GLOBAL BITLINE CIRCUITS FOR REDUCING POWER GLITCHES DURING MEMORY READ ACCESSES, AND RELATED METHODS AND SYSTEMS」という名称の米国特許出願第14/090288号の優先権を主張する。
【０００２】
本開示の分野は、一般にはコンピュータメモリに関し、詳細には、メモリアレイに対するメモリ読取りアクセス出力を供給するためのスタティックランダムアクセスメモリ(SRAM)グローバルビット線に関する。
【背景技術】
【０００３】
プロセッサベースのコンピュータシステムは、データ記憶用のメモリを含む。様々なタイプのメモリが存在し、各々が一定の固有の機能を保有する。たとえば、スタティックランダムアクセスメモリ(SRAM)は、プロセッサベースのコンピュータシステムで利用され得るタイプのメモリである。SRAMは、たとえばダイナミック読取りアクセスメモリ(DRAM)とは異なり、メモリを周期的にリフレッシュする必要なしにデータを記憶し得る。SRAMは、SRAMデータアレイ内の行および列で編成された複数のSRAMビットセル(「ビットセル」とも呼ばれる)を含む。SRAMデータアレイ内の所与の行について、SRAMデータアレイの各列は、単一のデータ項目またはビットが記憶されるSRAMビットセルを含む。所望のSRAMビットセル行に対するアクセスは、読取りおよび書込み操作のための対応するワード線によって制御される。SRAMビットセルからデータを読み取るために、ワード線は、メモリアクセス要求のメモリアドレスに対応するSRAMビットセルの所望の行を選択するようにアサートされる。読取り操作(「メモリ読取りアクセス」とも呼ばれる)では、選択されたSRAMビットセルから読み取られたデータが、SRAMデータ出力に供給されるようにローカルビット線上に配置される。書込み操作では、SRAMビットセルに書き込まれるべきデータが、SRAMビットセルのためのローカルビット線上に配置される。SRAMビットセル内のノイズマージンを改善するために相補ローカルビット線も利用され得る。さらに、SRAMデータアレイは、同時に複数のデータサブアレイ内のアクセスを可能にする、それ自体のアクセス回路ならびに専用ローカルワード線およびビット線をそれぞれ含む複数のデータサブアレイまたはバンクを有し得る。
【０００４】
SRAMはまた、特定のビットセルに対応するローカルビット線に加えて、グローバルビット線の使用を利用し得る。グローバルビット線は、一度にSRAMデータアレイの各列内のただ1つのビットセルに対応するデータを出力するように、SRAMデータアレイの各列についてSRAMビットセルのローカルビット線を集約するように利用され得る。ワード線は各読取り操作についてSRAMデータアレイの1つの行だけを選択し得るので、この集約が可能である。したがって、ワード線によって選択される行に対応する各列のビットセルだけが、所与の読取り操作について、そのデータをそのローカルビット線上に読み取らせる。選択された行に対応し、グローバルビット線上に反映されるローカルビット線だけが、ビットセルから読み取られたデータを保有するので、集約によってデータ値は失われない。この集約は、SRAMデータ出力に対するビットセルごとにローカルビット線を設けるときに生み出される負荷と比較して、SRAMデータ出力上のより小さい負荷を実現する。より小さいこの負荷は、SRAMデータ出力が、より低い駆動電流を必要とするトランジスタからなることを可能にし、したがってSRAM内の電力消費を削減する。
【０００５】
SRAM内でグローバルビット線方式を利用することが、SRAMデータ出力上のより小さい出力負荷を実現し得る一方で、SRAMでグローバルビット線を利用することは、いくつかの欠点を有し得る。たとえば、SRAM内でグローバルビット線方式を利用する結果、SRAM読取り操作中に意図しないパワーグリッチが生じ得る。パワーグリッチは、出力が論理「0」値(たとえば、グランドの電圧)に等しくなるべきである一定の長さの時間に、グローバルビット線が論理「1」値(たとえば、電圧供給レールの電圧)に誤ってセットされるときに生じ得る。そのようなパワーグリッチは、一定の回路タイミング特性の結果であり得る。その上、パワーグリッチによって引き起こされる、グローバルビット線上の誤った論理「1」値は、SRAMの電力消費を増大させる。
【０００６】
そのような回路タイミング特性によるSRAM内のパワーグリッチを防止するための一解決策は、ローカルビット線から読み取られるデータがグローバルビット線上に時期尚早に配置されないように、そのようなデータの転送を遅延するものである。しかしながら、このようにデータの転送を遅延することは、グローバルビット線に、データを後で受信させ、したがってメモリ読取り操作の待ち時間を増大させ得る。SRAM読取り操作について引き起こされるこの待ち時間の増大は、望ましいものではないことがあり、またはSRAMを所望のメモリアクセス時間仕様外にし得る。したがって、SRAMデータ出力上の負荷を低減するためにSRAM内でグローバルビット線を利用するとともに、SRAM読取り操作の待ち時間を増大させることなく、そのような操作中に生じるパワーグリッチを低減または回避することが有利である。
【発明の概要】
【課題を解決するための手段】
【０００７】
詳細な説明で開示される実施形態は、メモリ読取りアクセス中のパワーグリッチを低減するためのスタティックランダムアクセスメモリ(SRAM)グローバルビット線回路、ならびに関連する方法およびシステムを含む。SRAM内でグローバルビット線方式を利用することは、SRAMデータ出力に対して配置される負荷を低減し、したがって電力消費を低減し得る。本明細書で開示される実施形態では、SRAMデータアレイを含むSRAMが提供される。SRAMは、SRAMデータアレイの列内の複数のSRAMビットセル(「ビットセル」とも呼ばれる)に対応するローカルビット線をプリチャージするように構成された、SRAMデータアレイの各列についてのメモリアクセス回路を含む。選択されたSRAMビットセルから読み取られるべきデータが、そのローカルビット線から、SRAMデータアレイの対応する列についてのSRAMビットセルからのローカルビット線の集約からなる集約済み読取りビット線上に読み取られる。SRAMはまた、SRAMデータアレイの各列についてSRAMグローバルビット線回路をも含む。各SRAMグローバルビット線回路は、選択されたSRAMビットセルについての集約済み読取りビット線から、SRAMデータ出力に結合されたグローバルビット線上にデータを送るように構成されたビット線評価回路を含む。
【０００８】
システムクロックの立上り遷移に基づいて集約済み読取りビット線からグローバルビット線上へのデータの送信をトリガする代わりに、グローバルビット線上へのデータの送信が、システムクロックの立下り遷移に基づいてトリガされる。このようにして、パワーグリッチを低減または回避するグローバルビット線方式が、結果として電力消費の増大を低減または回避するようにSRAM内で利用され得る。システムクロックの立上り遷移に基づいてグローバルビット線方式が集約済み読取りビット線からグローバルビット線上にデータを送るようにトリガされた場合、パワーグリッチを回避または低減するためにデータの送信を遅延する必要があり得るが、その犠牲としてメモリ読取りアクセス待ち時間が増大する。
【０００９】
したがって、本明細書で開示される実施形態では、グローバルビット線イネーブル発生回路がSRAMのSRAMグローバルビット線回路内に設けられる。グローバルビット線イネーブル発生回路は、システムクロックの立下り遷移に基づいて、集約済み読取りビット線からグローバルビット線へのデータの送信をトリガするように構成される。グローバルビット線イネーブル発生回路は、システムクロックの立下り遷移の検出に応答して、グローバルビット線イネーブルを生成するように構成される。グローバルビット線イネーブルを受信し、集約済み読取りビット線からSRAMデータ出力に結合されたグローバルビット線にデータを転送するように構成されるビット線評価回路も、SRAMグローバルビット線回路内に設けられ得る。
【００１０】
この点で、一実施形態では、複数のSRAMビットセルのためのSRAMグローバルビット線回路が提供される。SRAMグローバルビット線回路は、システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するように構成されたグローバルビット線イネーブル発生回路を備える。SRAMグローバルビット線回路はまた、SRAMデータアレイの複数のSRAMビットセルのうちの選択されたSRAMビットセル内に記憶されたデータを受信するように構成された集約済み読取りビット線に結合されたビット線評価回路をも備える。ビット線評価回路は、集約済み読取りビット線上で、選択されたSRAMビットセルからデータを受信し、グローバルビット線イネーブルに応答して、データを含むSRAMデータアレイについてのSRAMデータとして提供されるグローバルビット線を生成するように構成される。このようにして、結果として電力消費の増大を低減または回避するパワーグリッチをグローバルビット線方式が、SRAM内で利用され得る。グローバルビット線方式が、システムクロックの立上り遷移に基づいて、集約済み読取りビット線からグローバルビット線上にデータを送るようにトリガされた場合、パワーグリッチを回避または低減するために、データの送信を遅延する必要があり得るが、その犠牲としてメモリ読取りアクセス待ち時間が増大する。
【００１１】
別の実施形態では、複数のSRAMビットセルについてのSRAMグローバルビット線回路が提供される。SRAMグローバルビット線回路は、システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するための手段からなる。SRAMグローバルビット線回路はまた、SRAMデータアレイの選択されたSRAMビットセル内に記憶されたデータを受信するように構成された集約済み読取りビット線上で、選択されたSRAMビットセルから読み取られたデータを受信するための手段をも備える。SRAMグローバルビット線回路はまた、グローバルビット線イネーブルに応答して、グローバルビット線を生成するための手段をも備え、その中で、グローバルビット線がSRAMデータとして提供される。
【００１２】
別の実施形態では、SRAMグローバルビット線を生成する方法が提供される。方法は、システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成することを含む。方法はまた、集約済み読取りビット線上で、複数のSRAMビットセルのうちの選択されたSRAMビットセルからデータを受信することをも含み、SRAMデータアレイの選択されたSRAMビットセル内に記憶されたデータが、集約済み読取りビット線上に配置される。方法はまた、グローバルビット線イネーブルに応答して、データを含むSRAMデータアレイについてのSRAMデータ出力として提供されるグローバルビット線を生成することをも含む。
【００１３】
別の実施形態では、SRAMが提供される。SRAMは、複数の列からなるSRAMデータアレイを備える。SRAMはまた、複数のメモリアクセス回路をも備え、その中で、各メモリアクセス回路が列に動作可能に関連付けられる。各メモリアクセス回路は、プリチャージに応答して、複数のSRAMビットセルの複数の読取りビット線をプリチャージするように構成される。各メモリアクセス回路は、複数のSRAMビットセルのうちの選択されたSRAMビットセル内に記憶されたデータを、複数のプリチャージされた読取りビット線のうちの対応するローカルビット線上に読み取るようにさらに構成される。メモリアクセス回路は、複数のプリチャージされた読取りビット線を集約済み読取りビット線に集約し、選択されたSRAMビットセルからのデータを集約済み読取りビット線上に配置するようにさらに構成される。SRAMはまた、複数のSRAMグローバルビット線回路をも備え、各SRAMグローバルビット線回路が、メモリアクセス回路に動作可能に関連付けられる。各SRAMグローバルビット線回路が、システムクロックの立下り遷移に応答して、グローバルビット線イネーブルを生成するように構成されたグローバルビット線イネーブル発生回路を備える。各SRAMグローバルビット線回路はまた、集約済み読取りビット線上で、選択されたSRAMビットセルからデータを受信し、グローバルビット線イネーブルに応答して、グローバルビット線をSRAMデータとして生成するように構成されたビット線評価回路をも備える。SRAMはまた、複数のSRAMグローバルビット線回路の複数のSRAMデータ出力からなる行データ出力をも備える。
【図面の簡単な説明】
【００１４】
【図１】各列のローカルビット線を集約し、SRAMデータアレイの各列について単一のSRAMビットセルからデータを出力するためのグローバルビット線を利用する例示的スタティックランダムアクセスメモリ(SRAM)の図である。
【図２Ａ】グローバルビット線イネーブルに課される追加の遅延なしにメモリ読取りアクセスを実施するときに生成される、図1のSRAM内の信号の例示的タイミングを示す例示的タイミング図である。
【図２Ｂ】グローバルビット線イネーブルに課される追加の遅延とともにSRAM内のメモリ読取りアクセスを実施するときに生成される、図1のSRAM内の信号の例示的タイミングを示す例示的タイミング図である。
【図３】待ち時間を増大させることなくメモリ読取りアクセス中のパワーグリッチを低減するように、システムクロックの立下り遷移によってトリガされるグローバルビット線イネーブルとともにグローバルビット線を生成するためのビット線評価回路を利用する例示的SRAM回路を含む例示的SRAMである。
【図４Ａ】高クロック周波数において動作中にメモリ読取りアクセスを実施するときに生成される、図3のSRAM回路内の信号の例示的タイミングを示す例示的タイミング図である。
【図４Ｂ】図4A内に表されるクロック周波数よりも低いクロック周波数において動作中にメモリ読取りアクセスを実施するときに生成される、図3のSRAM回路内の信号の例示的タイミングを示す例示的タイミング図である。
【図５】いくつかの前の値が出力ラッチ内に記憶されるとき、図3のSRAMによって実施されるいくつかの値のメモリ読取りアクセスの例示的効果を示す表である。
【図６】低減された電力消費でシステムクロックの立下り遷移によってトリガされるグローバルビット線イネーブルとともにグローバルビット線を生成するための代替ビット線評価回路を利用するSRAM回路を含む別の例示的SRAMである。
【図７】待ち時間を増大させることなくメモリ読取りアクセス中のパワーグリッチを低減するように、システムクロックの立下り遷移によってトリガされるグローバルビット線イネーブルとともにグローバルビット線を利用するSRAM回路を含み得る例示的なプロセッサベースのシステムのブロック図である。
【発明を実施するための形態】
【００１５】
次に図面を参照しながら、本開示のいくつかの例示的実施形態が説明される。「例示的」という語は、本明細書では、「一例、実例、または例示としての役割を果たす」ことを意味するように使用される。本明細書で「例示的」なものとして説明される任意の態様は、必ずしも他の態様よりも好ましい、または有利であると解釈されるべきではない。
【００１６】
詳細な説明で開示される実施形態は、メモリ読取りアクセス中のパワーグリッチを低減するためのスタティックランダムアクセスメモリ(SRAM)グローバルビット線回路、ならびに関連する方法およびシステムを含む。SRAM内でグローバルビット線方式を利用することは、SRAMデータ出力に対して配置される負荷を低減し、したがって電力消費を低減し得る。本明細書で開示される実施形態では、SRAMデータアレイを含むSRAMが提供される。SRAMは、SRAMデータアレイの列内の複数のSRAMビットセル(「ビットセル」とも呼ばれる)に対応するローカルビット線をプリチャージするように構成された、SRAMデータアレイの各列についてのメモリアクセス回路を含む。選択されたSRAMビットセルから読み取られるべきデータが、そのローカルビット線から、SRAMデータアレイの対応する列についてのSRAMビットセルからのローカルビット線の集約からなる集約済み読取りビット線上に読み取られる。SRAMはまた、SRAMデータアレイの各列についてSRAMグローバルビット線回路をも含む。各SRAMグローバルビット線回路は、選択されたSRAMビットセルについての集約済み読取りビット線から、SRAMデータ出力に結合されたグローバルビット線上にデータを送るように構成されたビット線評価回路を含む。
【００１７】
システムクロックの立上り遷移に基づいて集約済み読取りビット線からグローバルビット線上へのデータの送信をトリガする代わりに、グローバルビット線上へのデータの送信が、システムクロックの立下り遷移に基づいてトリガされる。このようにして、パワーグリッチを低減または回避するグローバルビット線方式が、結果として電力消費の増大を低減または回避するようにSRAM内で利用され得る。システムクロックの立上り遷移に基づいてグローバルビット線方式が集約済み読取りビット線からグローバルビット線上にデータを送るようにトリガされた場合、パワーグリッチを回避または低減するためにデータの送信を遅延する必要があり得るが、その犠牲としてメモリ読取りアクセス待ち時間が増大する。
【００１８】
したがって、本明細書で開示される実施形態では、グローバルビット線イネーブル発生回路がSRAMのSRAMグローバルビット線回路内に設けられる。グローバルビット線イネーブル発生回路は、システムクロックの立下り遷移に基づいて、集約済み読取りビット線からグローバルビット線へのデータの送信をトリガするように構成される。グローバルビット線イネーブル発生回路は、システムクロックの立下り遷移の検出に応答して、グローバルビット線イネーブルを生成するように構成される。グローバルビット線イネーブルを受信し、集約済み読取りビット線からSRAMデータ出力に結合されたグローバルビット線にデータを転送するように構成されるビット線評価回路も、SRAMグローバルビット線回路内に設けられ得る。
【００１９】
この点で、図3から始まる、システムクロックの立下り遷移に基づいてグローバルビット線イネーブルを生成するように構成されたグローバルビット線イネーブル発生回路を有するSRAMグローバルビット線回路の例を論じる前に、まず、システムクロックの立上り遷移に基づいてグローバルビット線イネーブルを生成するSRAMグローバルビット線回路の一例が、図1に関して説明される。
【００２０】
図1は、SRAMデータアレイ16の対応する各列14(0)〜14(M)についてグローバルビット線12(0)〜12(M)を利用する例示的SRAM10を示す。各グローバルビット線12(0)〜12(M)は、グローバルビット線出力18(0)〜18(M)上に生成される。SRAMデータアレイ16は複数のグローバルビット線12(0)〜12(M)を利用し、「M+1」は列14(0)〜14(M)の数であり、「N+1」はSRAMデータアレイ16内の行20(0)〜20(N)の数である。明快のために、SRAMデータアレイ16の列14(0)だけに関係する構成要素が、この例では論じられる。しかしながら、この例は、SRAMデータアレイ16の他の列14(1)〜14(M)に等しく適用可能である。この例はまた、SRAMデータアレイ16がSRAMデータサブアレイ22(0)〜22(P)に分割されるときも等しく適用可能である。
【００２１】
図1に示されるように、列14(0)の各SRAMビットセル24からのデータが、メモリアクセス回路26(0)に入力される。メモリアクセス回路26(0)は、読取り操作の開始時のプリチャージ30に応答して、各ローカルビット線28(0)〜28(N)を論理「1」値にプリチャージする。プリチャージ30は、プリチャージ入力32上に生成される。そのようなプリチャージのすぐ後に、ワード線34は、どの行20(0)〜20(N)が、そのローカルビット線28上にそのSRAMビットセル24データを読み取らせるかを選択する。ワード線34は、ワード線入力36上に生成される。ローカルビット線28(0)〜28(N)は、集約済み読取りビット線38(0)を形成するように集約される。集約済み読取りビット線38(0)は、集約済み読取りビット線出力40(0)上に生成される。集約済み読取りビット線38(0)の値は、ワード線34によって選択された行20(0)〜20(N)に対応するSRAMビットセル24内に記憶されたデータに等しい。集約済み読取りビット線38(0)およびグローバルビット線イネーブル42が、システムクロック46の立上り遷移に基づいてビット線評価回路44(0)に入力される。グローバルビット線イネーブル42は、グローバルビット線イネーブル出力48上に生成される。グローバルビット線イネーブル42は、ビット線評価回路44(0)内のラッチ50(0)をトリガし、グローバルビット線12(0)が集約済み読取りビット線38(0)の値を取ることを可能にする。グローバルビット線12(0)は、SRAMデータ52(0)上に出力される。SRAMデータ52(0)は、SRAMデータ出力54(0)上に生成される。図1に示されるように、グローバルビット線12は、SRAMデータアレイ16の各列14(0)〜14(M)について利用され、グローバルビット線12(0)〜12(M)が、一度にSRAMデータアレイ16の1つの完全な行20を出力することを可能にする。
【００２２】
前述のように、図1のSRAM10内のグローバルビット線12(0)は、各ローカルビット線28(0)〜28(N)を出力する回路と比較して、SRAMデータ52(0)上により小さい負荷を配置することによって電力消費を低減する。これは、グローバルビット線12(0)が、列14(0)内の各SRAMビットセル24についてのデータではなく、単一のSRAMビットセル24からデータを出力するからである。そのような電力節約にもかかわらず、図1のSRAM10内のビット線評価回路44(0)内で利用されるグローバルビット線方式のタイミング特性の結果、グローバルビット線12(0)上でパワーグリッチが生じ、それによってSRAM10の電力消費が増大し得る。
【００２３】
この点で、図2Aは、グローバルビット線12(0)上にパワーグリッチ74が生じるメモリ読取りアクセスを実施するときの、図1のSRAM10内の信号72の例示的タイミングを示す。図示され、以下で論じられるように、グローバルビット線イネーブル42が、システムクロック46の立上り遷移によってトリガされる。図2Aに示されるように、SRAM10内のメモリ読取りアクセス中に、システムクロック46の立上り遷移76に続いて、プリチャージ30、ワード線34、およびグローバルビット線イネーブル42が高に遷移する。プリチャージ30が、遷移78において論理「1」値に遷移し、それによって、ローカルビット線28(0)〜28(N)が論理「1」値にプリチャージされる。ローカルビット線28(0)〜28(N)がプリチャージされることによって、SRAM10のメモリアクセス回路26(0)が、遷移80において集約済み読取りビット線38(0)上で論理「1」値をアサートする。図2Aの82として示される、SRAM10によるワード線34のアサートによって、図1のSRAMデータアレイ16の列14(0)内の選択された行20上のSRAMビットセル24が、対応するローカルビット線28上に読み取られる。ローカルビット線28(0)〜28(N)がSRAM10のメモリアクセス回路26(0)によって集約され、読取りSRAMビットセル24の図2Aで84として示される値が、集約済み読取りビット線38(0)上に配置される。制御回路は、図2Aの86として示されるグローバルビット線イネーブル42をアサートし、ビット線評価回路44(0)が集約済み読取りビット線38(0)からグローバルビット線12(0)上にデータを転送することを可能にする。しかしながら、前のメモリ読取りアクセスからのグローバルビット線12(0)上のデータが論理「0」であり、後続のメモリ読取りアクセスによって、メモリアクセス回路26(0)が集約済み読取りビット線38(0)上に論理「0」値を配置するシナリオでは、図2Aに示されるように、SRAM10のタイミング特性が、グローバルビット線12(0)上のパワーグリッチ74を引き起こし得る。このパワーグリッチ74は、SRAMビットセル24の、図2Aの88として示される論理「0」値の前に制御回路によって時期尚早にアサートされるグローバルビット線イネーブル42が、メモリアクセス回路26(0)によって集約済み読取りビット線38(0)上に転送されるためである。より具体的には、グローバルビット線イネーブル42のタイミングによって、集約済み読取りビット線38(0)がローカルビット線28の正しい論理「0」値を適切に取る前に、ビット線評価回路44(0)が、集約済み読取りビット線38(0)のプリチャージされた論理「1」値をグローバルビット線12(0)上に誤って転送することが可能となる。その結果、誤った正の電圧がグローバルビット線12(0)上に配置され、それによってSRAM10内の電力消費が増大し得る。
【００２４】
図2Bの信号90の例示的タイミングに示されるように、そのようなパワーグリッチが、この実施形態では、グローバルビット線イネーブル42の立上りを遅延する制御回路によって回避または低減され得る。しかしながら、引き続き図2Bを参照すると、パワーグリッチを回避するためにグローバルビット線イネーブル42を遅延すると、集約済み読取りビット線38(0)からグローバルビット線12(0)上にデータを転送することから、ビット線評価回路44(0)も遅延する。図2Bの92として示されるそのような遅延は、メモリ読取りアクセスを完了するために追加の時間を必要とし、したがってSRAM10の読取り待ち時間が増大する。したがって、そのような操作の待ち時間を増大させることなく、メモリ読取りアクセス中に生じるパワーグリッチを低減または回避しながら、SRAM内のグローバルビット線を利用することが有利となる。
【００２５】
この点で、図3は別の例示的SRAM94を示す。SRAM94は、図1のSRAM10といくつかの共通の構成要素および回路を含み、共通の構成要素および回路は、図1と図3との間で共通の要素番号とともに示されている。しかしながら、図1のSRAM10とは異なり、図3のSRAM94は、システムクロック46の立下り遷移に基づいてグローバルビット線イネーブル入力100上にグローバルビット線イネーブル98を生成するように構成されたグローバルビット線イネーブル発生回路96(0)〜96(M)を使用するグローバルビット線方式を利用する。これは、図2Aに示されるように、システムクロック46の立上り遷移76に基づいてグローバルビット線イネーブル42を生成する、図1のSRAM10内の制御回路とは対照的である。このようにして、グローバルビット線イネーブル98が過度に早期に立ち上がることに応答して、グローバルビット線102(0)が集約済み読取りビット線104(0)の値を時期尚早に取ることによって引き起こされる、図3のSRAM94内のグローバルビット線102(0)上のパワーグリッチが、グローバルビット線イネーブル98に遅延を加えることなく低減または回避され得る。このようにして、そのようなパワーグリッチを低減または回避する結果として、関連する電力消費の増大が、メモリ読取りアクセス待ち時間を増大させることなく低減または回避され得る。
【００２６】
この点で、引き続き図3を参照すると、図1のSRAM10と同様に、図3のSRAM94は、SRAMデータアレイ16の各列14(0)〜14(M)についてグローバルビット線102(0)〜102(M)を利用する。グローバルビット線102(0)〜102(M)は、グローバルビット線出力106(0)〜106(M)上に生成される。図3のSRAM94はまた、各集約済み読取りビット線104(0)〜104(M)を、対応するSRAMグローバルビット線回路110(0)〜110(M)に供給するメモリアクセス回路108(0)〜108(M)を利用する。各集約済み読取りビット線104(0)〜104(M)は、集約済み読取りビット線出力112(0)〜112(M)上に生成される。前述の図1と同様に、明快のために、SRAMデータアレイ16の列14(0)およびグローバルビット線102(0)だけに関係する構成要素が、この例では論じられる。しかしながら、この例は、SRAMデータアレイ16の他の列14(1)〜14(M)および他のグローバルビット線102(1)〜102(M)、ならびにSRAM94内の他のSRAMデータサブアレイ22内の他の列14に等しく適用可能である。
【００２７】
引き続き図3を参照すると、グローバルビット線イネーブル発生回路96(0)とビット線評価回路114(0)とはどちらも、SRAMグローバルビット線回路110(0)内に含まれる。グローバルビット線イネーブル発生回路96(0)は、アクティブ高グローバルビット線イネーブル116および反転システムクロック46'を受信し、システムクロック46の立下り遷移に基づいてグローバルビット線イネーブル98を供給する。この実施形態では、グローバルビット線イネーブル98が、アクティブ高グローバルビット線イネーブル116および反転システムクロック46'を受信するANDベースのゲート118(0)(たとえば、NANDゲート)によって生成される。グローバルビット線イネーブル98は、ビット線評価回路114(0)内のラッチ120(0)をトリガし、グローバルビット線102(0)が集約済み読取りビット線104(0)の値を取ること可能にする。出力ラッチ122(0)が、読取り値をラッチするためにグローバルビット線出力106(0)上に位置し得、グローバルビット線102(0)がSRAMデータ124(0)に結合される。各SRAMデータ124(0)〜124(M)が、SRAMデータ出力126(0)〜126(M)上に生成される。このようにして、システムクロック46の立下り遷移でグローバルビット線イネーブル98をトリガすることは、グローバルビット線102(0)上のパワーグリッチを低減または回避し得る。具体的には、システムクロック46の周波数に応じて、このようにしてグローバルビット線イネーブル98をトリガすることは、ビット線評価回路114(0)が集約済み読取りビット線104(0)の値をグローバルビット線102(0)上に時期尚早に配置することを防止し得る。
【００２８】
この点で、図4Aは、第1の周波数で動作中にメモリ読取りアクセスを実施するときに生成される、図3のSRAM94内の信号128の例示的タイミングを示す。以下でより詳細に論じられるように、図4Aの第1の周波数は、図4Bに示される第2の周波数よりも高い周波数である。図4Aに示されるように、SRAM94内のメモリ読取りアクセス中に、システムクロック46の立上り遷移130に続いて、プリチャージ132およびワード線134が高に遷移する。遷移136時のプリチャージ132上の論理「1」値によって、メモリアクセス回路108(0)のローカルビット線138(0)〜138(N)がプリチャージされ、それによって、時刻140に集約済み読取りビット線104(0)上に論理「1」値が配置される。さらに、図4Aの142として示されるワード線134のアサートによって、メモリアクセス回路108(0)が、列14(0)内の選択された行20上のSRAMビットセル24を、対応するローカルビット線138上に読み取る。ローカルビット線138(0)〜138(N)が集約され、メモリアクセス回路108(0)が、読取りSRAMビットセル24の、図4Aの144として示される値を、集約済み読取りビット線104(0)上に配置する。図4Aの146として示される、システムクロック46の立下り遷移によってトリガされるグローバルビット線イネーブル98が、グローバルビット線イネーブル発生回路96(0)によって生成され、ビット線評価回路114(0)が、時刻147に集約済み読取りビット線104(0)値をグローバルビット線102(0)上に配置することを可能にする。図4Aに148として示されるように、集約済み読取りビット線104(0)が論理「0」値を取ることに続いて、グローバルビット線イネーブル98がアサートされる。グローバルビット線102(0)の前の値と、メモリアクセス回路108(0)によって集約済み読取りビット線104(0)上に読み取られる値がどちらも論理「0」値であるシナリオでは、グローバルビット線102(0)上のパワーグリッチが回避される。これは、プリチャージ論理「1」値から、読み取られる論理「0」値への遷移の前に、ビット線評価回路114(0)が集約済み読取りビット線104(0)をグローバルビット線102(0)に転送することをグローバルビット線イネーブル98が可能にしないからである。しかしながら、図3のSRAM94内のタイミング特性に基づいて、図4Aに示される第1の周波数において動作するときに、パワーグリッチがやはり生じ得る。ある場合には、そのようなパワーグリッチの負の影響は、第1の周波数ほどの高い周波数における動作の結果として達成される性能の向上の点から許容される。対照的に、たとえば、より低い電力モードの間に、第1の周波数より低い周波数において動作するとき、パワーグリッチと、結果として生じる電力消費の増大とは、性能の利得によって相殺されず、したがって望ましくない。
【００２９】
この点で、図4Bは、図4Aの第1の周波数よりも低い周波数である第2の周波数において動作しながら、メモリ読取りアクセスを実施しているときに生成される、図3のSRAM94内の信号150の例示的タイミングを示す。図4Bに示される信号は、システムクロック46を除いて、図4Aと類似の特性を共有する。システムクロック46が図4Aで周期「t」で動作する間、図4Bのシステムクロック46は、より長い周期「3t」で動作し、その結果、第2の周波数が図4Aの第1の周波数よりも低くなる。より低い第2の周波数の結果として、システムクロック46の立下り遷移152は、図4Aのより高い第1の周波数と比較して、時間的に後に生じる。したがって、システムクロック46の立下り遷移152に応答して、グローバルビット線イネーブル発生回路96(0)によって生成されるグローバルビット線イネーブル98は、図4Aの同一の信号と比較して、やはり時間的に後にアサートする。しかしながら、結果として、グローバルビット線イネーブル発生回路96(0)は、論理「0」値がメモリアクセス回路108(0)によって集約済み読取りビット線104(0)上に配置される後の、図4Bの154として示される後の時刻まで、グローバルビット線イネーブル98をアサートしない。その上、グローバルビット線イネーブル98は、システムクロック46の立上り遷移によってトリガされた場合よりも時間的に後にアサートするが、次のシステムクロック46サイクルの開始前に、ビット線評価回路114(0)によって図4Bの156として示されるグローバルビット線102(0)上に値が配置されるので、メモリ読取りアクセス待ち時間は増大しない。結果として、SRAM94がより低い第2の周波数において動作するとき、グローバルビット線イネーブル98上の遅延を含むことなく、グローバルビット線102(0)上のパワーグリッチが回避される。したがって、第2の周波数において動作するとき、システムクロック46の立下り遷移でグローバルビット線イネーブル98をトリガすることは、メモリ読取りアクセスの待ち時間を増大させることなく、電力消費の増大を低減または回避するように、いくつかの状況でパワーグリッチを低減または回避する。
【００３０】
この点で、図5は、いくつかの前の値が出力ラッチ122(0)内に記憶されるとき、図3のSRAM94によって実施されるいくつかの値のメモリ読取りアクセスの例示的効果を示す表158である。図5に示されるように、前の動作から出力ラッチ122(0)内に記憶された値が論理「0」であり、後続のメモリ読取りアクセスの結果、論理「0」値がグローバルビット線102(0)上に配置される場合(「記憶0/読取り0(stored 0/read 0)」シナリオとも呼ばれる)、パワーグリッチが回避され、したがってメモリ読取りアクセス待ち時間を増大させることなく電力消費が削減される。しかしながら、前の動作から出力ラッチ122(0)内に記憶された値が論理「0」であり、後続のメモリ読取りアクセスの結果、論理「1」がグローバルビット線102(0)上に配置される場合、パワーグリッチは回避されない。これは、論理「1」がグローバルビット線102(0)上に配置され、メモリ読取りアクセスが論理「1」を論理「0」値で置き換えるまで、グローバルビット線102(0)は論理「1」値のままであるからである。この状況では、回避するパワーグリッチはないが、グローバルビット線イネーブル98をシステムクロック46の立下り遷移でトリガすることはやはり、グローバルビット線イネーブル98を遅延することによるメモリ読取りアクセス待ち時間の増大を回避しながら、「記憶0/読取り0」シナリオでパワーグリッチを低減または回避する利点をもたらす。出力ラッチ122(0)が前の動作から記憶された論理「1」を有するときに行われる任意のメモリ読取りアクセスについて、同一の結果が生じる。これは、論理「1」がグローバルビット線102(0)上に配置される場合にグローバルビット線102(0)値が論理「1」のままとなり、または論理「1」から論理「0」値に遷移するからである。したがって、どちらのシナリオでも、グローバルビット線102(0)は、誤った論理「1」値に一時的に遷移しない。これらのシナリオではパワーグリッチが引き起こされず、または回避されないが、図3のSRAM94は、メモリ読取りアクセス待ち時間の増大を回避しながら、「記憶0/読取り0」シナリオでは依然としてパワーグリッチを低減または回避する。
【００３１】
引き続き図3を参照して、次に、メモリアクセス回路108(0)が、さらなる詳細を与えるために説明される。この実施形態では、メモリアクセス回路108(0)が、SRAMデータアレイ16の列14(0)内の各SRAMビットセル24に対応する論理を含む。プリチャージトランジスタ160(0)〜160(N)が、列14(0)内の対応する各SRAMビットセル24について含まれる。プリチャージトランジスタ160(0)が電源162およびローカルビット線138(0)に結合され、プリチャージ132を受け取る。プリチャージ132は、メモリ読取りアクセスの開始時にプリチャージトランジスタ160(0)を活動化し、それによって、ローカルビット線138(0)〜138(N)上に論理「1」値を配置する。列14(0)内の各SRAMビットセル24は、対応するアクティブ高データトランジスタ164(0)〜164(N)に供給され、アクティブ高データトランジスタ164(0)〜164(N)は、対応するグランドソース166およびワード線トランジスタ168(0)〜168(N)に結合される。SRAMビットセル24データが論理「0」値に等しい場合、データトランジスタ164(0)はオープンのままであり、メモリアクセス回路108(0)内にデータは転送されない。SRAMビットセル24データが論理「1」値に等しい場合、データトランジスタ164(0)が活動化され、論理「0」値(たとえば、グランド電圧)がワード線トランジスタ168(0)に転送される。ワード線トランジスタ168(0)がデータトランジスタ164(0)およびローカルビット線138(0)に結合され、特定の行20がメモリ読取りアクセスのために選択されるかどうかを示すためにワード線134を受信する。
【００３２】
ワード線トランジスタ168(0)の活動化時に、値がデータトランジスタ164(0)によって供給される場合、値がローカルビット線138(0)に供給される。したがって、SRAMビットセル24がデータトランジスタ164(0)を論理「1」値で活動化し、ワード線134がワード線トランジスタ168(0)を活動化する場合、ローカルビット線138(0)は論理「0」値を受信する。しかしながら、データトランジスタ164(0)またはワード線トランジスタ168(0)が活動化されない場合、ローカルビット線138(0)は、プリチャージされた論理「1」値のままである。各ローカルビット線138(0)〜138(N)が集約済み読取りビット線104(0)に集約され、集約済み読取りビット線104(0)は、メモリアクセス回路108(0)によってSRAMグローバルビット線回路110(0)に供給される。ローカルビット線138(0)〜138(N)を集約するとき、いずれかのローカルビット線138が論理「0」値を受信する場合、その値が集約済み読取りビット線104(0)上に転送される。そうでない場合、集約済み読取りビット線104(0)は、ローカルビット線138(0)〜138(N)のプリチャージされた論理「1」値を受信する。データトランジスタ164(0)〜164(N)は、この実施形態ではアクティブ高であるので、SRAMビットセル24から読み取られた値がSRAMデータ124(0)上に適切に表現されるように、インバータ170(0)が、グローバルビット線出力106(0)とSRAMデータ出力126(0)との間に含められる。別の実施形態では、アクティブ高データトランジスタ164(0)〜164(N)の代わりにアクティブ低データトランジスタが使用される場合、インバータ170(0)が除去され得る。前述のメモリアクセス回路108(0)のいずれの実施形態でも、システムクロック46の立下り遷移でグローバルビット線イネーブル98をトリガすることは、グローバルビット線102(0)上のパワーグリッチを低減または回避し得る。
【００３３】
この点で、図6は、システムクロック46の立下り遷移に基づいてグローバルビット線イネーブル98を生成するように構成されたグローバルビット線イネーブル発生回路96(0)を使用するグローバルビット線方式を利用する別の例示的SRAM172を示す。この実施形態は、図3で先に説明されたものと同様のSRAMデータアレイ16、メモリアクセス回路108(0)、およびグローバルビット線イネーブル発生回路96(0)を含む。SRAMグローバルビット線回路174(0)は、グローバルビット線イネーブル発生回路96(0)およびビット線評価回路176(0)を含む。しかしながら、図6に示され、以下でより詳細に論じられるように、ラッチを含むのではなく、SRAMグローバルビット線回路174(0)内のビット線評価回路176(0)が、集約済み読取りビット線104(0)をグローバルビット線102(0)上に配置するトライステート論理177(0)を含む。「トライステート論理」は、論理「1」、論理「0」、および高インピーダンスという3つの固有の状態を出力ポート上で可能にする論理である。高インピーダンス状態の結果、論理の出力ポートは論理「1」も論理「0」も供給せず、そのことは、トライステート論理の出力が回路の残りの部分に影響を及ぼさないことを意味する。トライステート論理が高インピーダンス状態で動作するとき、トライステート論理はオープンスイッチと同様に機能し、そのことは、電流がトライステート論理を通じて転送されないことを意味する。したがって、トライステート論理の高インピーダンス状態で動作することは、電力消費を低減する。
【００３４】
引き続き図6を参照すると、ビット線評価回路176(0)は、集約済み読取りビット線104(0)およびグローバルビット線イネーブル98を受信するANDベースのゲート178(0)(たとえば、NANDゲート)を含む。ビット線評価回路176(0)はまた、集約済み読取りビット線104(0)を受信するインバータ180(0)をも含む。プルアップトランジスタ182(0)およびプルダウントランジスタ184(0)もビット線評価回路176(0)内に含まれる。「プルアップ」トランジスタは、出力をソース電圧に結合することによって、論理「1」値を有するソース電圧を出力上に配置するために使用される。これは、所期の論理「1」値が適切な電圧レベルにとどまることを保証する助けとなる。「プルダウン」トランジスタは、出力をグランド電圧に結合することによって、論理「0」値を有する出力上に、グランドに等しい電圧を配置するように使用される。これは、所期の論理「0」値が適切な電圧レベルにとどまることを保証する助けとなる。プルアップトランジスタ182(0)は、ANDベースのゲート178(0)の出力を受信し、集約済み読取りビット線104(0)およびグローバルビット線イネーブル98がそれぞれ論理「1」値を有するとき、グローバルビット線102(0)をソース電圧186に結合する。プルダウントランジスタ184(0)はインバータ180(0)の出力を受信し、集約済み読取りビット線104(0)が論理「0」値を有するとき、グローバルビット線102(0)をグランド電圧188に結合する。
【００３５】
インバータ180(0)を含む経路はグローバルビット線イネーブル98に依存しないことに留意することは重要である。これは、この経路の活動化の結果、論理「0」がグローバルビット線102(0)上に配置され得るだけであり、誤った論理「1」値がグローバルビット線102(0)上に配置され得ないからである。したがって、経路はパワーグリッチをグローバルビット線102(0)に伝播し得ないので、この経路のタイミングをグローバルビット線イネーブル98で制御することは不要である。集約済み読取りビット線104(0)が論理「1」値を有するが、グローバルビット線イネーブル98が論理「0」値を有する場合、ビット線評価回路176(0)は高インピーダンス状態で動作し、グローバルビット線102(0)に値を供給しない。したがって、ビット線評価回路176(0)内のトライステート論理177(0)を使用することは、データをグローバルビット線102(0)上に配置する必要があるときにのみ、電流をグローバルビット線102(0)上に送ることによって、SRAM172内の電力消費をさらに低減し得る。
【００３６】
引き続き図6を参照すると、グローバルビット線イネーブル発生回路190の代替実施形態も提供される。代替グローバルビット線イネーブル発生回路190は、プリチャージ132を受信するANDベースのゲート192(たとえば、NANDゲート)を含む。システムクロック46と、ANDベースのゲート194の出力とを受信するORベースのゲート194(たとえば、NORゲート)も含まれる。このようにして、代替グローバルビット線イネーブル発生回路190は、システムクロック46の立下り遷移によってトリガされるグローバルビット線イネーブル196を生成する。前述のシナリオと同様に、グローバルビット線イネーブル196が過度に早期に立ち上がることに応答して、ビット線評価回路176(0)が集約済み読取りビット線104(0)をグローバルビット線102(0)上に時期尚早に配置することによって引き起こされるグローバルビット線102(0)上のパワーグリッチが、グローバルビット線イネーブル196に遅延を追加することなく低減または回避され得る。このようにして、そのようなパワーグリッチを低減または回避する結果として、関連する電力消費の増大が、メモリ読取りアクセス待ち時間を増大させることなく低減または回避され得る。
【００３７】
メモリ読取りアクセス中にパワーグリッチを低減するためのSRAMグローバルビット線回路、ならびに本明細書で開示される実施形態による方法およびシステムが、任意のプロセッサベースのデバイス内に提供され、または統合される。限定はしないが、例には、セットトップボックス、エンターテイメントユニット、ナビゲーションデバイス、通信デバイス、固定位置データユニット、モバイル位置データユニット、携帯電話、セルラー電話、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビジョン、同調器、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤが含まれる。
【００３８】
この点で、図7は、メモリ読取りアクセス中のパワーグリッチを低減するために、図3および図6に示されるSRAMグローバルビット線回路110(0)および174(0)を利用し得るプロセッサベースのシステム198の一例を示す。この例では、プロセッサベースのシステム198は、1つまたは複数のプロセッサ202をそれぞれ含む1つまたは複数の中央演算処理装置(CPU)200を含む。CPU200は、一時的に記憶されたデータに迅速にアクセスするためにプロセッサ202に結合されたキャッシュメモリ204を有し得る。キャッシュメモリ204内のキャッシュメモリユニット206は、限定はしないが、それぞれ図3および図6のSRAM94およびSRAM172を含む任意のタイプのメモリであり得る。CPU200は、システムバス208に結合され、プロセッサベースのシステム198内に含まれるマスタデバイスとスレーブデバイスとを相互結合し得る。周知のように、CPU200は、システムバス208を介してアドレス情報、制御情報、およびデータ情報を交換することによって、これらの他のデバイスと通信する。たとえば、CPU200は、スレーブデバイスの一例として、メモリコントローラ210にバストランザクション要求を通信し得る。図7には示されていないが、複数のシステムバス208が提供され得、各システムバス208が異なるファブリックを構成する。
【００３９】
他のマスタおよびスレーブデバイスがシステムバス208に接続され得る。図7に示されるように、これらのデバイスは、システムメモリ212、1つまたは複数の入力デバイス214、1つまたは複数の出力デバイス216、1つまたは複数のネットワークインターフェースデバイス218、および1つまたは複数のディスプレイコントローラ220を例として含み得る。入力デバイス214は、限定はしないが、入力キー、スイッチ、ボイスプロセッサなどを含む任意のタイプの入力デバイスを含み得る。出力デバイス216は、限定はしないが、オーディオ、ビデオ、他の視覚的標識などを含む任意のタイプの出力デバイスを含み得る。ネットワークインターフェースデバイス218は、ネットワーク222との間のデータの交換を可能にするように構成された任意のデバイスであり得る。ネットワーク222は、限定はしないが、ワイヤードまたはワイヤレスネットワーク、プライベートまたは公衆ネットワーク、エリアネットワーク(LAN)、ワイドローカルエリアネットワーク(WLAN)、およびインターネットを含む任意のタイプネットワークであり得る。ネットワークインターフェースデバイス218は、所望の任意のタイプの通信プロトコルをサポートするように構成することができる。システムメモリ212は1つまたは複数のメモリユニット224を含み得る。システムメモリ212内のメモリユニット224は、限定はしないが、それぞれ図3および図6のSRAM94およびSRAM172を含む任意のタイプメモリであり得る。
【００４０】
CPU200はまた、1つまたは複数のディスプレイ226に送られる情報を制御するために、システムバス208を介してディスプレイコントローラ220にアクセスするように構成され得る。ディスプレイコントローラ220は、1つまたは複数のビデオプロセッサ228を介して表示されるべき情報をディスプレイ226に送り、1つまたは複数のビデオプロセッサ228は、表示されるべき情報をディスプレイ226に適したフォーマットに処理する。ディスプレイ226は、限定はしないが、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイなどを含む任意のタイプディスプレイを含み得る。ディスプレイコントローラ220内のメモリユニット230は、限定はしないが、それぞれ図3および図6のSRAM94およびSRAM172を含む任意のタイプメモリであり得る。
【００４１】
本明細書で開示される実施形態に関連して説明される様々な例示的論理ブロック、モジュール、回路、およびアルゴリズムが、電子ハードウェア、メモリまたは別のコンピュータ可読媒体内に記憶され、プロセッサまたは他の処理デバイスによって実行される命令、あるいは両者の組合せとして実装され得ることを当業者はさらに理解されよう。本明細書で説明されるマスタデバイスおよびスレーブデバイスは、例として、任意の回路、ハードウェア構成要素、集積回路(IC)、またはICチップとして実施され得る。本明細書で開示されるメモリは、任意のタイプおよびサイズのメモリであり得、任意のタイプの所望の情報を記憶するように構成され得る。この互換性を明確に示すために、様々な例示的構成要素、ブロック、モジュール、回路、およびステップが、その機能に関して一般的に上記で説明された。そのような機能がどのように実装されるかは、特定の応用分野、設計の選択、および/またはシステム全体に対して課される設計制約に依存する。当業者は、説明される機能を各々の特定の応用分野について様々な方式で実装し得るが、そのような実装判断が、本開示の範囲からの逸脱を引き起こすと解釈されるべきではない。
【００４２】
本明細書で開示される様々な例示的論理ブロック、モジュール、および回路が、本明細書で説明される機能を実施するように設計された、プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェア構成要素、またはそれらの任意の組合せで実装または実施され得る。プロセッサはマイクロプロセッサであり得るが、代替実施形態では、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、1つまたは複数のマイクロプロセッサとDSPコア、あるいは任意の他のそのような構成として実装され得る。
【００４３】
本明細書で開示される実施形態は、ハードウェアで、およびハードウェア内に記憶され、たとえば、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読取り専用メモリ(ROM)、電気的にプログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、レジスタ、ハードディスク、取外し可能ディスク、CD-ROM、または当技術分野で周知の任意の他の形態のコンピュータ可読媒体内に常駐し得る命令で実施され得る。例示的記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込み得るようにプロセッサに結合される。代替実施形態では、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC内に常駐し得る。ASICはリモートステーション内に常駐し得る。代替実施形態では、プロセッサおよび記憶媒体は、別個の構成要素としてリモートステーション、基地局、またはサーバ内に常駐し得る。
【００４４】
本明細書の動作例示的実施形態のいずれかで説明されるステップが、例および議論を提供するために説明されることにも留意されたい。説明される動作は、示されるシーケンス以外の多数の異なるシーケンスで実施され得る。さらに、単一の動作ステップで説明される動作は、実際にはいくつかの異なるステップで実施され得る。さらに、例示的実施形態で論じられる1つまたは複数の動作ステップが組み合わされ得る。流れ図で示される動作ステップが、当業者には容易に明らかとなる多数の異なる修正の対象となり得ることを理解されたい。様々な異なる技術および技法のいずれかを使用して情報および信号が表現され得ることをも当業者は理解されよう。たとえば、上記の説明全体にわたって参照され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップが、電圧、電流、電磁波、磁場または粒子、光場または光粒子、あるいはそれらの任意の組合せによって表現され得る。
【００４５】
本開示の先の説明は、当業者が本開示を作成または使用することを可能にするように提供される。本開示に対する様々な修正は当業者には容易に明らかとなり、本明細書で定義される一般原理は、本開示の精神または範囲から逸脱することなく他の変形形態に適用され得る。したがって、本開示は、本明細書で説明される実施例および設計に限定されるものではなく、本明細書で開示される原理および新規な特徴と一致する最も広い範囲が与えられるべきである。
【符号の説明】
【００４６】
10  SRAM
12  グローバルビット線
14  列
16  SRAMデータアレイ
18  グローバルビット線出力
20  行
22  SRAMデータサブアレイ
24  SRAMビットセル
26  メモリアクセス回路
28  ローカルビット線
30  プリチャージ
34  ワード線
36  ワード線入力
38  集約済み読取りビット線
40  集約済み読取りビット線出力
42  グローバルビット線イネーブル
44  ビット線評価回路
46  システムクロック
48  グローバルビット線イネーブル出力
50  ラッチ
52  SRAMデータ
54  SRAMデータ出力
74  パワーグリッチ
90  信号
94  SRAM
96  グローバルビット線イネーブル発生回路
98  グローバルビット線イネーブル
100  グローバルビット線イネーブル入力
102  グローバルビット線
104  集約済み読取りビット線
106  グローバルビット線出力
108  メモリアクセス回路
110  SRAMグローバルビット線回路
112  集約済み読取りビット線出力
114  ビット線評価回路
116  アクティブ高グローバルビット線イネーブル
118  ANDベースのゲート
120  ラッチ
122  出力ラッチ
124  SRAMデータ
126  SRAMデータ出力
128  信号
130  立上り遷移
132  プリチャージ
134  ワード線
136  遷移
138  ローカルビット線
140  時刻
150  信号
152  遷移
158  表
160  プリチャージトランジスタ
162  電源
164  アクティブ高データトランジスタ
166  グランドソース
168  ワード線トランジスタ
170  インバータ
172  SRAM
174  SRAMグローバルビット線回路
176  ビット線評価回路
178  ANDベースのゲート
180  インバータ
182  プルアップトランジスタ
184  プルダウントランジスタ
186  ソース電圧
188  グランド電圧
190  グローバルビット線イネーブル発生回路
192  ANDベースのゲート
194  ANDベースのゲート
196  グローバルビット線イネーブル
198  システム
200  中央演算処理装置
202  プロセッサ
204  キャッシュメモリ
206  キャッシュメモリユニット
208  システムバス
210  メモリコントローラ
212  システムメモリ
214  入力デバイス
216  出力デバイス
218  ネットワークインターフェースデバイス
220  ディスプレイコントローラ
222  ネットワーク
224  メモリユニット
226  ディスプレイ
228  ビデオプロセッサ
230  メモリユニット
【図１】
0006639391.tif 000002
【図２Ａ】
0006639391.tif 000003
【図２Ｂ】
0006639391.tif 000004
【図３】
0006639391.tif 000005
【図４Ａ】
0006639391.tif 000006
【図４Ｂ】
0006639391.tif 000007
【図５】
0006639391.tif 000008
【図６】
0006639391.tif 000009
【図７】
0006639391.tif 000010