chapter2  後半

17
Chapter2 後後 後後後後 6311607

Upload: len-hill

Post on 01-Jan-2016

41 views

Category:

Documents


5 download

DESCRIPTION

Chapter2  後半. 6311607 石川航大. 2.2  再プログラム可能性、ハードウェア記述言語、 FPGA の台頭. 1980 年代中期から後期に起こった劇的な変化 プログラム可能論理の適用方法 ソフトウェア計算のハードウェアアクセラレーション ハードウェアアクセラレーション ある機能を通常の CPU 上で実行するよりも高速で行うために CPU に付加的なハードウェアを使用すること この変化は 3 つの要素によって起こされた 再プログラム可能性 柔軟なアーキテクチャの相互連結 標準的なハードウェア記述言語による電気回路の結合. 再プログラム可能とは - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter2  後半

Chapter2  後半

6311607 石川航大

Page 2: Chapter2  後半

2.2  再プログラム可能性、ハードウェア記述言語、   FPGA の台頭 1980 年代中期から後期に起こった劇的な変化

プログラム可能論理の適用方法 ソフトウェア計算のハードウェアアクセラレーション

ハードウェアアクセラレーション  ある機能を通常の CPU 上で実行するよりも高速で行うために CPU に付加

的なハードウェアを使用すること

この変化は 3 つの要素によって起こされた① 再プログラム可能性② 柔軟なアーキテクチャの相互連結③ 標準的なハードウェア記述言語による電気回路の結合

2

Page 3: Chapter2  後半

再プログラム可能とは 論理回路を新しいプログラムのデータで上書きできる プログラム可能論理装置の中で重要な進歩 複雑なシステムを作るハードウェア設計者に関わりがある システムを迅速に開発でき、原型の試験ができる ソフトウェアと PROM ベースのファームウェアの フィールドアップグレードを提供 PROM ( Programmable ROM )  通常時はデータを書き込めないが特定の手順で  書き込み可能な ROM の一種

フィールドアップグレードにより 設計者によるバグ修正 標準仕様変更への対応 機器のアップグレードやサービス追加

3

Page 4: Chapter2  後半

FPGA 表されたより柔軟なアーキテクチャ Xilinx Altera Corporation

以前に存在したものより高い論理容量と汎用的な機能 ハードウェアで直接複雑な計算を実行できる

開発者に抽象度の高いレベルでの作業を可能にした 強力な論理合成ソフトウェアツールの出現と発展 VHDL と Verilog と言うハードウェア記述言語の標準化

低レベルの論理ゲート等のアルゴリズムの実際の実装の詳細は設計ツールから離れた

4

Page 5: Chapter2  後半

VHDL や Verilog のコードはプログラム言語のように抽象的

ハードウェアの実際の編集の為に意図されている場合 プログラマはハードウェアの基本的な知識を持っていてほしい 特に論理クロックが低レベルレジスタで実行されているか 設計者がクロック境界について理解し、 アプリケーションのクロックの振る舞いの定義を書く必要がある

クロック CPU など一定の波長を持って動作する回路が処理の歩調を合わせる

ための信号。論理クロックは内部で一貫性が取れている。

5

Page 6: Chapter2  後半

1990 年代の始め プログラム可能論理装置が高性能なソフトウェアアルゴリズム

と完全なアプリケーションをハードウェアに直接実装できる 1990 年代の研究

ムーアの法則とロックステップ式を利用した装置を使うとアルゴリズムの促進の大きな可能性がある

ムーアの法則 集積回路上のトランジスタ数は 18ヶ月ごとに倍になる ロックステップ式 2 つのプロセッサで同じ処理を実行しその差を検出する

6

Page 7: Chapter2  後半

CISC や RISC は低いシリコン効率に苦しみ続けている トランジスタが任意の時点で有用な仕事が出来る割合

世紀の変わり目でも FPGA の主な用途は従来のハードウェア機能にあった コントローラやインタフェイス 周辺機器との統合性

2 つの進歩が組み合わさった① すべての機能が組み込まれた FPGA プロセッサコアの有効性② ソフトウェアからハードウェアへのコンパイラツールの有効性

FPGA に基づくコンピュータの利用を実用的にするため FPGA プロセッサコア

FPGA 内に組み込まれた CPU Xilinx の MicroBlaze と PowerPC のコア Altera の Nios NiosⅡ プロセッサコア 他のサードパーティ製のもの

7

Page 8: Chapter2  後半

2.3 System on a Programmable Chip 組み込み IP コアが一般的になってきた

複雑性が低いマイクロプロセッサとマイクロコントローラがサードパーティから供給 特許使用料がいらないオープンソースのコア

IP コア 集積回路を構成するための部分的な回路情報で、 特に機能単位でまとめられているもの

他の周辺装置と関連付けられたコア 8,16 ビットコントローラ、 UART 、 IO 装置

 等を組み合わせてシステムを構築できる

8

Page 9: Chapter2  後半

組み込みシステムの設計者は従来の専用の コントローラの使用を控える

Zilog Z-80 , Intel 8051 , PIC

代わりにプログラム可能ハードウェアの中で 直接プロセッサが実行する

アセンブリ言語の使用の著作権の権利が無いから  オリジナルプロセッサの開発者や供給者の収益に影響が出た

FPGA の売り手は FPGA を最適化する 32 ビットのプロセッサコアの所有権を作った 開発コストを数千ドルにした

9

Page 10: Chapter2  後半

Xilinx と Altera は汎用プログラム可能な FPGA の ハイブリッドプロセッサを作った

標準的な 32 ビットプロセッサと繋がっている (PowerPC ARM) FPGA構造が増えるに従って実装できる システムの種類が際限なくなることが明らかになった オンチップのインタフェイスが標準的

FPGA ベースのシステムオンチップの一般的な支持が制限 複数の売り手からの組合せコアの挑戦

Avalon の使用促進 SOPC のソフトウェアツールを簡単な選択方法と関係付ける Altera とサードパーティのコアの数の増加を結びつける

Xilinx も同じような能力を提供した Xilinx のプラットフォームスタジオソフトウェア OPB(On-chip Peripheral Bus)

10

Page 11: Chapter2  後半

高性能な組み込みアプリケーションを可能にする 複数のカスタマイズされた組み込みプロセッサ 他のサードパーティの IP コア 汎用プログラム可能論理資源 プログラム可能ハードウェアの素早いアセンブル能力

組み込みシステムの設計者にとって 欠落している新しいハードウェア機能を作成する方法 IP コアでそれらを統合する方法 ハードウェアの設計技術が要求されない

コンパイラツールが役割を果たし始めている

11

Page 12: Chapter2  後半

より高速で高性能な試作品に向かって FPGA が与える事

任意のハードウェア構造を作る スイッチドファブリックを使った構造を繋げられる

スイッチドファブリック  複数のネットワークスイッチを介して相互に接続されたネットワーク構成

プラットフォームの柔軟性はアルゴリズムの性能を増やす  特に並列処理を使用できるアルゴリズム

12

Page 13: Chapter2  後半

コンパイラが試作品を作る環境を良くする アプリケーションが FPGA に直接コンパイルすることを許す

C 言語コンパイラを既存の設計フローに導入 同じ設計のデバッグと検証が早くなる 別の設計方針による動く試作品を作ることが可能に

C 言語からハードウェアへのツールが発達するハードウェア記述言語レベルの大きなアプリケーションの実用性 And/or 回路を不規則型に使用されることが少なくなる 入力言語が C や他の並列プログラムに適切な言語であっても

13

Page 14: Chapter2  後半

2.4 並列コンピューティングのためのFPGA 高性能なコンピュータの利用の研究

FPGA で作られた大量の並列カスタムコンピューティングエンジンは

 ハードウェアや組み込みシステム設計の分野外の未来の アプリケーションにおいて重要な役割になる スーパーコンピュータクラスの性能は汎用のスーパーコンピュータ

の  ハードウェアの費用の一部で多くの重要なタスクを手に入れる

研究の共通要素は比較的小さな配列について 独立同期したプロセスの要素はデータストリームやメッセージング指向コミュニケーションによってつながった

独立同期の考えを使うと半自動プロセス要素は大きな柔軟性のFPGA に基づいた再構成可能なコンピューティング手法によく適合する

14

Page 15: Chapter2  後半

再構成可能なコンピュータの利用と FPGA 再構成可能なコンピュータの利用

高い柔軟性を利用して高性能な計算を行う データパスを作ることと制御フローを変更できるようにする 1960 年代から研究されている

GeraldEstrin の発表した論文 コンピュータアーキテクチャを再構成可能なハードウェアの要素

の配列に統合された標準のプロセッサで構成する 再構成可能なハードウェアのシステムでは専用のハードウェア

の特定のタスクを実行するために動的に再構成する

これらのアイディアは実用的な実装につながらなかった ハードウェアの動的生成のための機能が存在しなかった

15

Page 16: Chapter2  後半

FPGA が紹介された 1980 年代から動的に再構成可能な コンピュータを低コストで作成する研究が行われている 再構成可能なコンピュータの利用は FPGA に限られない

FPGA や標準的なプロセッサの間の何処かにある新しい装置 これらのプログラム可能装置は FPGA の柔軟性とプロセッサの  ソフトウェアのプログラム可能性の両方の見込みがある

これらのアーキテクチャでは汎用のマイクロプロセッサの 代わりにはならない

高並列でハードウェアベースの統一的なプログラミング方法論はまだない

このような方法論は新技術が広く普及できるように することが重要16

Page 17: Chapter2  後半

2.5 Summary このチャプターの内容

プログラム可能ハードウェアの歴史  1960 年代後半から今日の FPGA の時代まで 設計ツールの進歩 プログラム可能ハードウェアの広範囲での使用 FPGA が並列プログラミングツールや方法の開発と並行

して進化していく事は明らか

17