(57)【要約】  本明細書で開示する態様は、高連想度の連想メモリ(CAM)アレイにおける複数ウェイ読出しを可能にするための技法および効率的なアーキテクチャに関する。たとえば、タグアレイのタグ検索を実行するための方法は、タグアレイの複数のエントリからの格納されたタグビットの第1のサブセットを読み出すステップと、1つまたは複数の可能なウェイヒット信号を生成するために、タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットを検索タグと比較するステップとを含むことができる。
2019533270.tif 000002
【特許請求の範囲】
【請求項１】
タグアレイのタグ検索を実行するための方法であって、
前記タグアレイの複数のエントリからの格納されたタグビットの第1のサブセットを読み出すステップと、
1つまたは複数の可能なウェイヒット信号を生成するために、前記タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットを検索タグと比較するステップと
を含む、方法。
【請求項２】
格納されたタグビットの前記第2のサブセットの前記比較が、連想メモリ(CAM)ポートを介して実行される、請求項1に記載の方法。
【請求項３】
格納されたタグビットの前記第1のサブセットが、前記タグアレイに格納される前に圧縮されるビットを含む、請求項1に記載の方法。
【請求項４】
格納されたタグビットの前記第1のサブセットが、前記タグアレイの同じバンク中の複数の物理行に対応する複数のエントリから読み出される、請求項1に記載の方法。
【請求項５】
格納されたタグビットの前記第1のサブセットが、前記タグアレイに格納される前に圧縮される高位のアドレスビットを含む、請求項1に記載の方法。
【請求項６】
格納されたタグビットの前記第1のサブセットの前記読出しが、静的読出し動作を介して遂行される、
請求項1に記載の方法。
【請求項７】
条件が満たされる場合、単一の物理行から、格納されたビットの第3のサブセットを読み出すステップ
をさらに含む、請求項1に記載の方法。
【請求項８】
前記条件が、前記単一の物理行に対するタグヒットを含む、請求項7に記載の方法。
【請求項９】
格納されたビットの前記第3のサブセットが、許可ビットまたはパリティビットのうちの少なくとも1つを含む、請求項8に記載の方法。
【請求項１０】
タグアレイのタグ検索を実行するための方法であって、
前記タグアレイの少なくとも1つのエントリからの格納されたタグビットの第1のサブセットを読み出すステップと、
条件が満たされる場合、前記少なくとも1つのエントリからの格納されたビットの第2のサブセットを読み出すステップと
を含む、方法。
【請求項１１】
前記条件が、前記少なくとも1つのエントリに対するタグヒットを含む、請求項10に記載の方法。
【請求項１２】
格納されたビットの前記第2のサブセットが、許可ビットまたはパリティビットのうちの少なくとも1つを含む、請求項11に記載の方法。
【請求項１３】
タグアレイと、
前記タグアレイの複数のエントリからの格納されたタグビットの第1のサブセットを読み出すための複数ウェイ読出しロジックと、
1つまたは複数の可能なウェイヒット信号を生成するために、前記タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットを検索タグと比較するための比較ロジックと
を含む、連想メモリ(CAM)構造。
【請求項１４】
前記比較ロジックがCAMポートを含む、
請求項13に記載のCAM構造。
【請求項１５】
格納されたタグビットの前記第1のサブセットが、前記タグアレイに格納される前に圧縮されるビットを含む、請求項13に記載のCAM構造。
【請求項１６】
前記複数ウェイ読出しロジックが、前記タグアレイの同じバンク中の複数の物理行に対応する複数のエントリからの格納されたタグビットの前記第1のサブセットを読み出す、請求項13に記載のCAM構造。
【請求項１７】
格納されたタグビットの前記第1のサブセットが、前記タグアレイに格納される前に圧縮される高位のアドレスビットを含む、請求項13に記載のCAM構造。
【請求項１８】
前記複数ウェイ読出しロジックが、異なる物理行からの隣接するビットセルを有する静的読出しポートから構成される、
請求項13に記載のCAM構造。
【請求項１９】
前記タグアレイがバンク内に配置され、
各バンクが物理行として配置され、バンク中の各物理行が共通のウェイおよび異なるセットに対応する、
請求項13に記載のCAM構造。
【請求項２０】
条件が満たされる場合、単一の物理行からの格納されたビットの第3のサブセットを読み出すための条件付き読出しロジック
をさらに含む、請求項13に記載のCAM構造。
【請求項２１】
前記条件が、前記単一の物理行に対するタグヒットを含む、請求項20に記載のCAM構造。
【請求項２２】
格納されたビットの前記第3のサブセットが、許可ビットまたはパリティビットのうちの少なくとも1つを含む、請求項21に記載のCAM構造。
【請求項２３】
タグアレイと、
前記タグアレイの少なくとも1つのエントリからの格納されたタグビットの第1のサブセットを読み出すための読出しロジックと、
条件が満たされる場合、前記少なくとも1つのエントリからの格納されたビットの第2のサブセットを読み出すための条件付き読出しロジックと
を含む、連想メモリ(CAM)構造。
【請求項２４】
前記条件が、単一の物理行に対するタグヒットを含む、請求項23に記載のCAM構造。
【請求項２５】
格納されたビットの前記第2のサブセットが、許可ビットまたはパリティビットのうちの少なくとも1つを含む、請求項24に記載のCAM構造。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照および優先権主張
本特許出願は、2016年9月29日に出願された米国仮特許出願第62/401,614号、および2017年9月20日に出願された米国特許出願第15/710,108号の利益を主張するものであり、その両出願は、本出願の譲受人に譲渡され、参照により本明細書に明確に組み込まれている。
【０００２】
本明細書で開示する態様は、メモリアーキテクチャの分野に関する。より詳細には、本明細書で開示する態様は、連想メモリ(content addressable memory:CAM)に関する。
【背景技術】
【０００３】
連想メモリ(CAM)は、所望のデータワードに対するメモリの高速並列検索を可能にするタイプのメモリである。したがって、CAMは、検索集約型の適用例において使用される場合がある。
【０００４】
高性能CPUアーキテクチャでは、キャッシュヒット率は、アーキテクチャの全体的に達成可能なサイクル当たりの命令数(IPC)の重要な要因である。サーバCPUアーキテクチャは、一般的に、他のアーキテクチャよりも大きいキャッシュサイズおよび高い連想度(associativity)を有する。キャッシュは、一般的に、比較されるタグを格納するタグアレイと、タグに対応するデータを格納するデータアレイとからなる。ほとんどの高バス幅の適用例(たとえば、64ビット以上)では、高位のタグビットはめったに変わらず、したがってこれらのビットは、タグアレイに格納される前に圧縮される。タグ検索中に、すべてのウェイからのこれらの圧縮されたビットは、外部のルックアップテーブルに対して比較されるタグアレイから読み出され得る。
【０００５】
そのような圧縮は、しかしながら一般的に、ダグアレイの電力、性能、または面積に悪影響を及ぼし、圧縮されたビットはタグ検索の前に調べられる必要があり得るので、タイミングペナルティを引き起こす。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、CAM構造を読み出す性能を向上させるための技法およびアーキテクチャが提供されてもよい。
【課題を解決するための手段】
【０００７】
本明細書で開示する態様は、高連想度のCAMアレイにおける複数ウェイ読出し(multi-way read)を可能にするための技法および効率的なアーキテクチャを提供する。
【０００８】
一態様では、タグアレイのタグ検索を実行するための方法が提供される。この方法は、一般的に、タグアレイの複数のエントリから格納されたタグビットの第1のサブセットを読み出すステップと、1つまたは複数の可能なウェイヒット信号を生成するために、タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットを検索タブと比較するステップとを含む。
【０００９】
一態様では、タグアレイのタグ検索を実行するための方法が提供される。この方法は、一般的に、タグアレイの少なくとも1つのエントリからの格納されたタグビットの第1のサブセットを読み出すステップと、条件が満たされる場合、少なくとも1つのエントリからの格納されたビットの第2のサブセットを読み出すステップとを含む。
【００１０】
一態様では、連想メモリ(CAM)構造が提供される。CAM構造は、一般的に、タグアレイと、タグアレイの複数のエントリから格納されたタグビットの第1のサブセットを読み出すための複数ウェイ読出しロジックと、1つまたは複数の可能なウェイヒット信号を生成するために、タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットを検索タブと比較するための比較ロジックとを含む。
【００１１】
一態様では、連想メモリ(CAM)構造が提供される。CAM構造は、一般的に、タグアレイと、タグアレイの少なくとも1つのエントリからの格納されたタグビットの第1のサブセットを読み出すための読出しロジックと、条件が満たされる場合、少なくとも1つのエントリからの格納されたビットの第2のサブセットを読み出すための条件付き読出しロジックとを含む。
【００１２】
上記で具陳した態様を達成する方法が詳細に理解され得るように、添付の図面を参照することによって、上記で簡潔に要約した本開示の態様がより具体的に説明される。
ただし、この開示は他の態様にも当てはまる場合があるので、添付の図面は、本開示の態様のみを示し、したがって、その範囲を限定するものと見なされるべきではないことに留意されたい。
【図面の簡単な説明】
【００１３】
【図１】本開示の態様により動作するように構成された例示的なコンピューティングデバイスの機能ブロック図である。
【図２】本開示の態様による、複数のウェイから読み出すための例示的な動作を示すフローチャートである。
【図３】本開示の態様による、例示的な静的読出しポートを示す図である。
【図４】本開示の態様による、タグビットの条件付き読出しのための例示的なロジックを示す図である。
【図５】本開示の態様による、例示的なタグバンクレイアウトを示す図である。
【図６】本開示の態様による、プロセスによって準備された命令セットの命令を実行するように構成された例示的なプロセッサの機能ブロック図である。
【図７】本開示の態様による、タグアレイのタグ検索を実行するための例示的な動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
本明細書で開示する態様は、タグアレイからの複数のウェイから読み出すための技法を提供する。
【００１５】
図1は、本開示の態様により動作するように構成されたメモリ構造を含み得るコンピューティングデバイス101を示すブロック図である。たとえば、コンピューティングデバイスは、図2に示す動作200を実行することによって検索可能なタグアレイを有するキャッシュを備えたメモリ108を含んでもよい。
【００１６】
コンピューティングデバイス101は、ネットワーク130を介して他のコンピューティングデバイスに接続される場合もある。概して、ネットワーク130は、電気通信ネットワークおよび/またはワイドエリアネットワーク(WAN)であり得る。特定の態様では、ネットワーク130はインターネットである。一般的に、コンピューティングデバイス101は、限定はしないが、デスクトップコンピュータ、サーバ、ラップトップコンピュータ、およびタブレットコンピュータを含む、コンピュータ機械命令を合成するように構成された任意のタイプのコンピューティングデバイスであってもよい。
【００１７】
コンピューティングデバイス101は、一般的に、バス120を介してメモリ108、ネットワークインターフェースデバイス118、ストレージ109、入力デバイス122、および出力デバイス124に接続されたプロセッサ110を含む。コンピューティングデバイス101は、一般的に、オペレーティングシステム(図示せず)に従って動作する。本明細書で説明する機能をサポートする任意のオペレーティングシステムが使用され得る。プロセッサ110は、単一のプロセッサ、複数のプロセッサ、複数の処理コアを有する単一のプロセッサなどを表すように含まれる。ネットワークインターフェースデバイス118は、コンピューティングデバイス101がネットワーク130を介して他のコンピューティングデバイスと通信することを可能にする任意のタイプのネットワーク通信デバイスであり得る。
【００１８】
ストレージ109は、永続ストレージデバイスであってよい。ストレージ109は単一のユニットとして示されるが、ストレージ109は、固定ディスクドライブ、固体ドライブ、SANストレージ、NASストレージ、取外し可能メモリカード、または光ストレージなど、固定および/または取外し可能ストレージデバイスの組合せであり得る。メモリ108およびストレージ109は、複数の1次ストレージデバイスおよび2次ストレージデバイスにまたがる1つの仮想アドレス空間の一部であり得る。
【００１９】
入力デバイス122は、ユーザがコンピューティングデバイス101に入力を提供できるように動作可能な任意のデバイスであってもよい。たとえば、入力デバイス122は、キーボードおよび/またはマウスであってもよい。出力デバイス124は、コンピューティングデバイス101のユーザに出力を提供するように動作可能な任意のデバイスであってもよい。たとえば、出力デバイス124は、任意の従来のディスプレイスクリーンおよび/またはスピーカのセットであってよい。入力デバイス122とは別に示されているが、出力デバイス124および入力デバイス122は結合されてよい。たとえば、一体型タッチスクリーンを備えたディスプレイスクリーンは、結合された入力デバイス122および出力デバイス124であってよい。
【００２０】
上述のように、メモリ108は、キャッシュ構造を含んでもよい。場合によっては、キャッシュは、比較されるタグを格納するタグアレイと、タグに対応するデータを格納するデータアレイとを含んでもよい。いくつかの適用例では、ビット線が異なるウェイからのタグエントリにわたって共有されるので、すべてのウェイからキービットを読み出すことは、CAMベースのタグアレイにおける課題を提起することがある。別個のビット線および関連する周辺回路を有することは、タグアレイのアレイ効率を著しく低下させることになる。
【００２１】
本開示の態様は、複数の行からのタグビットの第1のセットの「複数ウェイ」読出しと同時に、1つまたは複数の単一の行からタグビットの第2のセットを読み出すことを可能にする技法および対応するアーキテクチャを提供する。場合によっては、タグビットの第1のセットは、圧縮されたビット(たとえば、頻繁に変わりそうにない高位のアドレスビット)であってもよい。場合によっては、格納されたタグビットの第1のサブセットの読出しは、静的読出し動作により遂行される。
【００２２】
図2は、本開示の態様により、たとえば、図1に示すメモリ108内のロジックによって、キャッシュメモリにおいて行われ得る、タグアレイを読み出すための動作200を含む方法を示すフローチャートである。
【００２３】
ブロック210において、方法は、タグアレイの複数のエントリから、格納されたタグビットの第1のサブセットを読み出すことによって始まる。ブロック220において、方法は、1つまたは複数の可能なウェイヒット信号を生成するために、タグアレイの1つまたは複数のエントリからの格納されたタグビットの第2のサブセットの検索タグに対する比較を実行することによって継続する。これらのビットがマッチしても、たとえば圧縮されたビットを復号した後にさらなる分析が必要とされ得るので、ヒット信号は、可能性があると見なされてもよい。1つまたは複数の事例によれば、検索タグは、メモリからアクセスされるアドレスのタグ部分として説明され得る。
【００２４】
場合によっては、タグ比較ロジックは、連想メモリ(CAM)ビットセルを使用して実装されてもよい。さらに、CAMビットセルのマッチ線は、図4に示すように、マッチ線レシーバ回路において結合されてもよく、マッチ線レシーバ回路は、データアレイのグローバル読出しワード線、「grwl」を駆動する「ヒット」信号を生成する。場合によっては、許可ビットおよびパリティビットなどのいくつかのビットが、「ヒットする」ウェイに対してのみ要求されてもよい。したがって、マッチ線レシーバの出力は、これらのビットの読出しワード線(「rwl」)として機能し得る。
【００２５】
場合によっては、圧縮された高位のビット(仮想アドレスキーまたはVAKEYと呼ばれてもよい)は、図3に示すように、タグ行においてビットセルのそばにスタックされた静的読出しポートを通して読み出すこともできる。
【００２６】
図3は、タグ行において単一のグローバルビット線(gbl)ドライバに、4つの隣接したビットセル320からのデータビットを効果的に多重化する(mux)、静的読出しポート310の一例を示す。この「gbl」ドライバをタグ行に統合することは、アレイからすべてのウェイを読み出すために二重化された周辺回路を含めることを減らすのに役立つことがあり、これはタグアレイのアレイ効率を向上させる。さらに、静的読出しオプションが使用されるので、VAKEYビットの読出しに関連する動的エネルギーは、この技法を使用すると著しく低減され得る。
【００２７】
図4は、いくつかの態様による、全体的なタグ行フロアプラン400の一例を示す。場合によっては、隣接する行からの4つのビットセル320を静的読出しポート310を介して単一のgblドライバ内へ多重化するために、4つのビットセルが異なるセットの同じWAYに属することが目的であり得る。図5は、この目的を達成するための、そのようなフロアプランを有する例示的なバンク構造500を示す。例示的なバンク構造500では、同じウェイに対する異なるセットが、一緒に配列される。たとえば、下部から始めると、ウェイ0およびセット0〜3が一緒に配列され、上部に移動すると、ウェイ7およびセット4〜7が一緒に配列される。
【００２８】
再び図4を参照すると、場合によっては、いくつかの条件が満たされるとき、いくつかのセル410からの他のタイプのビットが、読み出され得る。たとえば、ヒットする対応の行に対するタグ検索中に、許可ビットおよびパリティビットが読み出され得る。したがって、マッチ線レシーバの出力は、これらのビットのための読出しワード線(「rwl」)として機能し得る。これは、必要な場合にのみそのようなビットにアクセスすることにより、電力を節約することを可能にする。
【００２９】
図7は、本開示の態様による、タグアレイのタグ検索を実行するための例示的な動作700を示すフローチャートである。1つまたは複数の事例において、図7に示すようなタグアレイのタグ検索を実行するための動作700は、ブロック710に示すように、タグアレイの少なくとも1つのエントリから、格納されたタグビットの第1のサブセットを読み出すことを含み得る。動作700はまた、ブロック720において、条件が満たされる場合にのみ、少なくとも1つのエントリから、格納されたビットの第2のサブセットを読み出すことを含み得る。
【００３０】
場合によっては、条件は、少なくとも1つのエントリに対するタグヒットを含んでもよい。さらに、格納されたビットの第2のサブセットは、許可ビットまたはパリティビットのうちの少なくとも1つを含んでもよい。タグヒットは、格納されたタグビットの第2のサブセットに格納された値が、入ってくるアドレスとマッチするときに発生することとして定義し得る。
【００３１】
本明細書で提示するアーキテクチャは、高位のビットを圧縮しない、または本明細書で提案する静的読出しポートの代わりに二重化された周辺回路を使用するなどの代替技法と比較すると、著しい面積の節約(たとえば、10%を超える)をもたらし得る。そのようなアーキテクチャは、場合によってはプロセッサに組み込まれることがあるメモリ構造に実装されてもよい。
【００３２】
たとえば、図6は、本開示の態様により動作するキャッシュ構造で構成され得るそのような例示的なプロセッサ(たとえば、CPU)601の機能ブロック図である。プロセッサ601は、図1に示すプロセッサ110の一例であり得る。一般的に、プロセッサ601は、限定はしないが、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、およびスマートフォンを含む、任意のタイプのコンピューティングデバイスで使用されてもよい。一般的に、プロセッサ601は多数の変形形態を含むことができ、図6に示すプロセッサ601は例示を目的とするものであり、本開示を限定するものと見なすべきではない。たとえば、プロセッサ601はグラフィックス処理ユニット(GPU)であってもよい。一態様では、プロセッサ601は、命令実行パイプライン612とストレージ命令テーブル(SIT)611とを含む集積回路上に配設される。
【００３３】
一般的に、プロセッサ601は、制御ロジック614に従って命令実行パイプライン612中の命令を実行する。制御ロジック614は、本開示の態様によれば、図2に記載するプロセスによって準備された命令セットを含む命令セットアーキテクチャの一実施形態であってもよい。パイプライン612は、限定はしないが、並列パイプライン612aおよび612bを含む、複数の並列パイプラインを備えたスーパースカラー設計であってもよい。パイプライン612a、612bは、パイプステージに編成された、アーキテクチャ化されていない様々なレジスタ(またはラッチ)616、および1つまたは複数の算術ロジックユニット(ALU)618を含む。物理レジスタファイル620が、アーキテクチャ化された複数のレジスタ621を含む。
【００３４】
パイプライン612a、612bは、命令キャッシュ(Iキャッシュ)622から命令をフェッチしてもよく、命令側トランスレーションルックアサイドバッファ(ITLB)624が、メモリアドレッシングおよび許可を管理してもよい。データは、データキャッシュ(Dキャッシュ)626からアクセスされてもよく、メイントランスレーションルックアサイドバッファ(TLB)628が、メモリアドレッシングおよび許可を管理してもよい。いくつかの態様では、ITLB624は、TLB628の一部のコピーであってもよい。他の態様では、ITLB624およびTLB628は統合されてもよい。同様に、いくつかの態様では、Iキャッシュ622およびDキャッシュ626は、統合または一体化されてもよい。Iキャッシュ622および/またはDキャッシュ626中のミスは、メモリインターフェース630の制御下にある、より高いレベルのキャッシュ(L2もしくはL3キャッシュなど)またはメイン(オフチップ)メモリ632へのアクセスを引き起こし得る。プロセッサ601は、様々な周辺デバイス636へのアクセスを制御し得る入力/出力インターフェース(I/O IF)634を含んでもよい。
【００３５】
いくつかの態様について説明した。しかしながら、これらの態様に対する様々な変更が可能であり、本明細書で提示した原理は他の態様にも同様に適用され得る。そのような方法の様々なタスクは、マイクロプロセッサ、埋込み型コントローラ、またはIPコアなど、ロジック要素の1つまたは複数のアレイによって実行可能な命令のセットとして実装され得る。
【００３６】
上記で開示したデバイスおよび機能は、コンピュータ可読媒体上に記憶されたコンピュータファイル(たとえば、RTL、GDSII、GERBERなど)に設計および構成されてもよい。そのようなファイルの一部または全部が、そのようなファイルに基づいてデバイスを製造する製造者に提供されてもよい。結果として得られる製品は、半導体ウエハを含み、次いで、半導体ウエハは半導体ダイに切断され、半導体チップにパッケージされる。いくつかのまたはすべてのそのようなファイルは、本明細書で説明したデバイスを製造するために設計データを使用して製造機器を構成する製造者に提供されてよい。コンピュータファイルから形成された、結果として得られる製品は、半導体ウエハを含み、半導体ウエハは、次いで、半導体ダイ(たとえば、プロセッサ101)に切断され、パッケージされ、さらに、限定はしないが、モバイルフォン、スマートフォン、ラップトップ、ネットブック、タブレット、ウルトラブック、デスクトップコンピュータ、デジタルビデオレコーダ、セットトップボックス、サーバ、および集積回路が使用される任意の他のデバイスを含む製品に組み込まれ得る。
【００３７】
一態様では、コンピュータファイルは、上記で説明し、物理的な設計レイアウト、概略図、ハードウェア記述言語(たとえば、Verilog、VHDLなど)の形態で図に示した回路を含む設計構造を形成する。たとえば、設計構造は、テキストファイルまたは上記で説明し、図に示したような回路のグラフィカル表現であってよい。設計プロセスは、好ましくは、下記で説明する回路をネットリストに合成し(または、変換し)、この場合、ネットリストは、たとえば、集積回路設計内の他の要素および回路に対する接続を記述し、機械可読媒体のうちの少なくとも1つの上に記録される、ワイヤ、トランジスタ、ロジックゲート、制御回路、I/O、モデルなどのリストである。たとえば、媒体は、CD、コンパクトフラッシュ(登録商標)、他のフラッシュメモリ、またはハードディスクドライブなどの記憶媒体であり得る。別の実施形態では、本明細書で説明したハードウェア、回路、および方法は、プロセッサによって実行されると、上記で説明し、図に示した回路の機能をシミュレートするコンピュータファイルに構成され得る。これらのコンピュータファイルは、回路シミュレーションツール、回路図エディタ、または他のソフトウェアアプリケーション内で使用され得る。
【００３８】
本明細書で使用する、項目のリスト「のうちの少なくとも1つ」を指す句は、単一のメンバーを含むそれらの項目の任意の組合せを指す。一例として、「a、b、またはcのうちの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、およびa-b-c、ならびに複数の同じ要素を有する任意の組合せ(たとえば、a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c、およびc-c-c、または任意の他の順序のa、b、およびc)を包含することを意図している。
【００３９】
開示した態様の上記の説明は、開示した態様を当業者が作製または使用できるようにするために提供される。これらの態様への様々な修正は当業者には容易に明らかになり、本明細書において規定されている原理は、本開示の範囲から逸脱することなく、他の態様に適用され得る。したがって、本開示は、本明細書に示される態様に限定されることを意図するものではなく、以下の特許請求の範囲によって規定される原理および新規の特徴と一致する、可能な限り最も広い範囲を与えられるべきである。
【符号の説明】
【００４０】
101  コンピューティングデバイス
108  メモリ
109  ストレージ
110  プロセッサ
118  ネットワークインターフェースデバイス
120  バス
122  入力デバイス
124  出力デバイス
130  ネットワーク
310  静的読出しポート
320  ビットセル
410  セル
500  バンク構造
601  プロセッサ
611  ストレージ命令テーブル(SIT)
612  命令実行パイプライン
614  制御ロジック
616  レジスタ
618  算術ロジックユニット(ALU)
620  物理レジスタファイル
621  アーキテクチャ化されたレジスタファイル
622  命令キャッシュ(Iキャッシュ)
624  命令側トランスレーションルックアサイドバッファ(ITLB)
626  データキャッシュ(Dキャッシュ)
628  メイントランスレーションルックアサイドバッファ(TLB)
630  メモリインターフェース
632  メイン(オフチップ)メモリ
634  入力/出力インターフェース(I/O IF)
636  周辺デバイス
【図１】
2019533270.tif 000003
【図２】
2019533270.tif 000004
【図３】
2019533270.tif 000005
【図４】
2019533270.tif 000006
【図５】
2019533270.tif 000007
【図６】
2019533270.tif 000008
【図７】
2019533270.tif 000009
【国際調査報告】
2019533270.tif 000010
2019533270.tif 000011
2019533270.tif 000012