Chapter2 後半 6311607 石川航大 2.2 再プログラム可能性、ハードウェア記述言語、 FPGAの台頭 1980年代中期から後期に起こった劇的な変化 プログラム可能論理の適用方法 ソフトウェア計算のハードウェアアクセラレーション ハードウェアアクセラレーション ある機能を通常のCPU上で実行するよりも高速で行うためにCPUに付加的 なハードウェアを使用すること この変化は3つの要素によって起こされた ① ② ③ 2 再プログラム可能性 柔軟なアーキテクチャの相互連結 標準的なハードウェア記述言語による電気回路の結合 再プログラム可能とは 論理回路を新しいプログラムのデータで上書きできる プログラム可能論理装置の中で重要な進歩 複雑なシステムを作るハードウェア設計者に関わりがある システムを迅速に開発でき、原型の試験ができる ソフトウェアとPROMベースのファームウェアの フィールドアップグレードを提供 PROM(Programmable ROM) 通常時はデータを書き込めないが特定の手順で 書き込み可能なROMの一種 フィールドアップグレードにより 3 設計者によるバグ修正 標準仕様変更への対応 機器のアップグレードやサービス追加 FPGA表されたより柔軟なアーキテクチャ Xilinx Altera Corporation 以前に存在したものより高い論理容量と汎用的な機能 ハードウェアで直接複雑な計算を実行できる 開発者に抽象度の高いレベルでの作業を可能にした 強力な論理合成ソフトウェアツールの出現と発展 VHDLとVerilogと言うハードウェア記述言語の標準化 低レベルの論理ゲート等のアルゴリズムの実際の実装の詳 細は設計ツールから離れた 4 VHDLやVerilogのコードはプログラム言語のように抽象的 ハードウェアの実際の編集の為に意図されている場合 5 プログラマはハードウェアの基本的な知識を持っていてほしい 特に論理クロックが低レベルレジスタで実行されているか 設計者がクロック境界について理解し、 アプリケーションのクロックの振る舞いの定義を書く必要がある クロック CPUなど一定の波長を持って動作する回路が処理の歩調を合わせるた めの信号。論理クロックは内部で一貫性が取れている。 1990年代の始め プログラム可能論理装置が高性能なソフトウェアアルゴリズムと 完全なアプリケーションをハードウェアに直接実装できる 1990年代の研究 ムーアの法則とロックステップ式を利用した装置を使うとアルゴ リズムの促進の大きな可能性がある ムーアの法則 集積回路上のトランジスタ数は18ヶ月ごとに倍になる ロックステップ式 2つのプロセッサで同じ処理を実行しその差を検出する 6 CISCやRISCは低いシリコン効率に苦しみ続けている トランジスタが任意の時点で有用な仕事が出来る割合 世紀の変わり目でもFPGAの主な用途は従来のハードウェア機能に あった コントローラやインタフェイス 周辺機器との統合性 2つの進歩が組み合わさった ① ② すべての機能が組み込まれたFPGAプロセッサコアの有効性 ソフトウェアからハードウェアへのコンパイラツールの有効性 FPGAに基づくコンピュータの利用を実用的にするため FPGAプロセッサコア 7 FPGA内に組み込まれたCPU XilinxのMicroBlazeとPowerPCのコア AlteraのNios NiosⅡプロセッサコア 他のサードパーティ製のもの 2.3 System on a Programmable Chip 組み込みIPコアが一般的になってきた 複雑性が低いマイクロプロセッサとマイクロコントローラが サードパーティから供給 特許使用料がいらないオープンソースのコア IPコア 集積回路を構成するための部分的な回路情報で、 特に機能単位でまとめられているもの 他の周辺装置と関連付けられたコア 8,16ビットコントローラ、UART、IO装置 等を組み合わせてシステムを構築できる 8 組み込みシステムの設計者は従来の専用の コントローラの使用を控える Zilog Z-80 , Intel 8051 , PIC 代わりにプログラム可能ハードウェアの中で 直接プロセッサが実行する アセンブリ言語の使用の著作権の権利が無いから オリジナルプロセッサの開発者や供給者の収益に影響が出た FPGAの売り手はFPGAを最適化する32ビットのプロセ ッサコアの所有権を作った 9 開発コストを数千ドルにした XilinxとAlteraは汎用プログラム可能なFPGAの ハイブリッドプロセッサを作った 標準的な32ビットプロセッサと繋がっている(PowerPC ARM) FPGA構造が増えるに従って実装できる システムの種類が際限なくなることが明らかになった オンチップのインタフェイスが標準的 FPGAベースのシステムオンチップの一般的な支持が制限 複数の売り手からの組合せコアの挑戦 Avalonの使用促進 SOPCのソフトウェアツールを簡単な選択方法と関係付ける Alteraとサードパーティのコアの数の増加を結びつける Xilinxも同じような能力を提供した 10 Xilinxのプラットフォームスタジオソフトウェア OPB(On-chip Peripheral Bus) 高性能な組み込みアプリケーションを可能にする 組み込みシステムの設計者にとって 複数のカスタマイズされた組み込みプロセッサ 他のサードパーティのIPコア 汎用プログラム可能論理資源 プログラム可能ハードウェアの素早いアセンブル能力 欠落している新しいハードウェア機能を作成する方法 IPコアでそれらを統合する方法 ハードウェアの設計技術が要求されない コンパイラツールが役割を果たし始めている 11 より高速で高性能な試作品に向かって FPGAが与える事 任意のハードウェア構造を作る スイッチドファブリックを使った構造を繋げられる スイッチドファブリック 複数のネットワークスイッチを介して相互に接続されたネットワーク 構成 プラットフォームの柔軟性はアルゴリズムの性能を増やす 特に並列処理を使用できるアルゴリズム 12 コンパイラが試作品を作る環境を良くする C言語コンパイラを既存の設計フローに導入 アプリケーションがFPGAに直接コンパイルすることを許す 同じ設計のデバッグと検証が早くなる 別の設計方針による動く試作品を作ることが可能に C言語からハードウェアへのツールが発達する ハードウェア記述言語レベルの大きなアプリケーションの実用性 And/or回路を不規則型に使用されることが少なくなる 入力言語がCや他の並列プログラムに適切な言語であっても 13 2.4 並列コンピューティングのためのFPGA 高性能なコンピュータの利用の研究 FPGAで作られた大量の並列カスタムコンピューティングエンジ ンは ハードウェアや組み込みシステム設計の分野外の未来の アプリケーションにおいて重要な役割になる スーパーコンピュータクラスの性能は汎用のスーパーコンピュー タの ハードウェアの費用の一部で多くの重要なタスクを手に入れる 研究の共通要素は比較的小さな配列について 14 独立同期したプロセスの要素はデータストリームやメッセージン グ指向コミュニケーションによってつながった 独立同期の考えを使うと半自動プロセス要素は大きな柔軟性の FPGAに基づいた再構成可能なコンピューティング手法によく適 合する 再構成可能なコンピュータの利用とFPGA 再構成可能なコンピュータの利用 GeraldEstrinの発表した論文 高い柔軟性を利用して高性能な計算を行う データパスを作ることと制御フローを変更できるようにする 1960年代から研究されている コンピュータアーキテクチャを再構成可能なハードウェアの要素 の配列に統合された標準のプロセッサで構成する 再構成可能なハードウェアのシステムでは専用のハードウェアの 特定のタスクを実行するために動的に再構成する これらのアイディアは実用的な実装につながらなかった 15 ハードウェアの動的生成のための機能が存在しなかった FPGAが紹介された1980年代から動的に再構成可能な コンピュータを低コストで作成する研究が行われている 再構成可能なコンピュータの利用はFPGAに限られない これらのアーキテクチャでは汎用のマイクロプロセッサの 代わりにはならない FPGAや標準的なプロセッサの間の何処かにある新しい装置 これらのプログラム可能装置はFPGAの柔軟性とプロセッサの ソフトウェアのプログラム可能性の両方の見込みがある 高並列でハードウェアベースの統一的なプログラミング方法論は まだない このような方法論は新技術が広く普及できるように することが重要 16 2.5 Summary このチャプターの内容 17 プログラム可能ハードウェアの歴史 1960年代後半から今日のFPGAの時代まで 設計ツールの進歩 プログラム可能ハードウェアの広範囲での使用 FPGAが並列プログラミングツールや方法の開発と並行 して進化していく事は明らか
© Copyright 2024 ExpyDoc