メモリによるコンピューティングとは、関数の応答がルックアップ テーブル(LUT)の形式で 1 次元または 2 次元のメモリ アレイに格納され、関数が LUT から値を取得することによって評価されるコンピューティング プラットフォームを指します。これらのコンピューティング プラットフォームは、フィールド プログラマブル ゲート アレイ(FPGA) のような純粋に空間的なコンピューティング モデル、または関数が複数のクロック サイクルにわたって評価される時間的なコンピューティング モデルのいずれかに従うことができます。後者のアプローチは、コンピューティング要素内に相互接続リソースを折りたたむことによって、FPGA のプログラマブル相互接続のオーバーヘッドを削減することを目的としています。高密度の 2 次元メモリ アレイを使用して、大規模な複数入力複数出力の LUT を格納します。メモリによるコンピューティングは、メモリ内コンピューティングまたはプロセッサ イン メモリ(PIM) の概念とは異なります。これらは、プロセッサとメモリを同じチップに統合してメモリのレイテンシを削減し、帯域幅を増やすという文脈で広く研究されています。これらのアーキテクチャは、プロセッサとメモリ間のデータの移動距離を短縮することを目指しています。バークレー IRAM プロジェクトは、PIM アーキテクチャの分野における注目すべき貢献の 1 つです。
詳細
メモリ プラットフォームを使用したコンピューティングは、通常、ハードウェアの再構成可能性の利点を実現するために使用されます。再構成可能なコンピューティング プラットフォームには、設計コストの削減、市場投入までの時間の短縮、迅速なプロトタイピング、ハードウェア システムの容易なカスタマイズなどの利点があります。FPGA は、デジタル回路を実装するための一般的な再構成可能なコンピューティング プラットフォームです。FPGA は、純粋に空間的なコンピューティング モデルに従います。1985 年の開始以来、FPGA の基本構造は、2 次元のコンフィギュラブル ロジック ブロック (CLB) アレイとプログラム可能な相互接続マトリックスで構成され続けています。[1] FPGA のパフォーマンスと消費電力は、主に精巧なプログラム可能な相互接続 (PI) アーキテクチャによって決まります。[2] [3] FPGA で PI アーキテクチャの影響を軽減する効果的な方法は、小さな LUT を近接して配置し (クラスターと呼ばれる)、ローカル相互接続を使用してクラスター内通信を可能にすることです。クラスター化された FPGA アーキテクチャの利点により、主要な FPGA ベンダーはそれを自社の商用製品に組み込んでいます。[4] [5]細粒度FPGAにおけるPIによるオーバーヘッドを削減するために、より大きな多入力多出力LUTを組み込みメモリブロックにマッピングする研究も行われてきました。同様の空間コンピューティングモデルに従いますが、ロジック機能の一部は組み込みメモリブロックを使用して実装され、残りの部分はより小さなLUTを使用して実現されます。[6]このような異種マッピングにより、プログラマブル相互接続の寄与が低減され、面積とパフォーマンスが向上します。
FPGA の純粋な空間コンピューティング モデルとは対照的に、時間コンピューティング モデル (または時間と空間の両方の組み合わせ) を採用した再構成可能なコンピューティング プラットフォームも、従来の FPGA よりもパフォーマンスとエネルギーを向上させるという観点から研究されてきました[7] [8]。メモリ ベース コンピューティング (MBC) と呼ばれるこれらのプラットフォームは、高密度の 2 次元メモリ アレイを使用して LUT を格納します。このようなフレームワークは、複雑な関数 ( f ) を小さなサブ関数に分割し、サブ関数をメモリ アレイ内の多入力、多出力の LUT として表し、関数f を複数のサイクルにわたって評価することに依存しています。MBC は、ナノスケール メモリの高密度、低消費電力、高性能の利点を活用できます。[8]
各コンピューティング要素には、LUT を格納する 2 次元メモリ アレイ、サブ関数の評価を順序付けるための小型コントローラ、および個々のパーティションからの中間出力を保持する一時レジスタ セットが組み込まれています。各コンピューティング ブロック内の高速なローカル ルーティング フレームワークは、LUT アクセス用のアドレスを生成します。このような複数のコンピューティング要素は、FPGA のようなプログラム可能な相互接続アーキテクチャを使用して空間的に接続でき、大規模な関数のマッピングが可能になります。コンピューティング要素内のローカルな時間多重実行により、プログラム可能な相互接続の必要性が大幅に軽減され、エネルギー遅延積が大幅に改善され、テクノロジ世代間でパフォーマンスのスケーラビリティが向上します。各コンピューティング要素内のメモリ アレイは、コンテンツ アドレス可能メモリ(CAM) によって実現でき、特定のアプリケーションのメモリ要件を大幅に削減できます。[7]
参照
参考文献
- ^ K.Compton および S. Hauck、「コンピューティング: システムとソフトウェアの調査」、ACM Surveys、Vol. 34、No. 2、2002 年 6 月。
- ^ SM Trimberger、「フィールドプログラマブルゲートアレイテクノロジー」、マサチューセッツ州ノーウェル:Kluwer、1994年。
- ^ A. Rahman、S. Das、AP Chandrakasan、R. Reif、「フィールド プログラマブル ゲート アレイの配線要件と 3 次元統合テクノロジ」、IEEE Trans. on Very Large Scale Integration Systems、Vol. 11、No. 1、2003 年 2 月。
- ^ ザイリンクス株式会社
- ^ アルテラ株式会社
- ^ J. Cong および S. Xu、「組み込みメモリ ブロックを備えた FPGA のテクノロジ マッピング」、フィールド プログラマブル ゲート アレイに関するシンポジウム、1998 年。
- ^ ab S. Paul および S. Bhunia、「パフォーマンスとリソース使用率の向上のためのコンテンツ アドレス可能メモリを使用した再構成可能なコンピューティング」、Design Automation Conference、2008 年。
- ^ ab S. Paul、S. Chatterjee、S. Mukhopadhyay、S. Bhunia、「不揮発性 2-D STTRAM アレイを使用したナノスケール再構成可能コンピューティング」、国際ナノテクノロジー会議、2009 年。
