リフレッシュ教育 - electronicslabkobayasi/refresh/0812/sdoc/slide/...antifuse型fpga (actel...

50
1 PLDFPGA リフレッシュ教育 2008/12 京都大学 小林和淑

Upload: others

Post on 20-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

1

PLDとFPGA

リフレッシュ教育

2008/12京都大学 小林和淑

Page 2: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

2

PLD、FPGAPLD: Programmable Logic Device– プログラム可能な論理素子

FPGA: Field Programmable Gate Array– 野外でプログラム可能な門の隊列?

– Field: 設計現場

– Gate Array: 論理ゲートをアレイ上に敷き詰めたLSI– MPGA: Mask Programmable Gate Array

» マスクでプログラムするゲートアレイ

– FPGA:» 設計現場でプログラムするゲートアレイ

» 街中でプログラムするゲートアレイ

Page 3: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

3

プログラマブルロジックデバイス(PLD)設計者が自由にその機能を変更できるLSIの総称(広義)– MPD: マスクプログラマブル→製造時に変更

– FPD: フィールドプログラマブル→その場で変更

小規模PLDの種類– PLA: Programmable Logic Array

» AND-OR アレイ

– PAL: Programmable Array Logic» ORアレイが固定

» 派生品として、GAL,PLD(製品名)

PLD

PAL

PLA

PLDGAL

FPGA

GA(MPGA)

Page 4: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

4

Makimoto’s Wave10年ごとに,標準化,カスタム化の波が交互に繰り返す。

現在は,Field Programmabilityによる標準化の波の途中(もう終わりかけか)

From Electronics Weekly (U.K.) in 1991

Page 5: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

5

Why Programmabilityプロセスの微細化による,マスクコスト(NRE)の上昇

– 数が出ないと,初期コストが回収できない

設計生産性の低下

テスト(検証)が大変

微細プロセスでは,規則的な構造が先行して製造しやすい。SRAM型FPGAに有利!!

1995 2000 2005数(k) 50 100 300ゲート数(k) 50 100 300MHz 50 100 300

FPGAとASICの分岐点となるパラメータ

Non Recurrent Engineering

Page 6: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

6

レイアウトと現実のチップ(1.2umプロセス)

京都大学越智先生より提供

Page 7: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

7

Why Programmability(2)製品のライフサイクルが短い– 何らかのプログラム性がないとだめ

発売してから機能追加、修正» ダビング10への対応

例: 発売時からの価格– ビデオデッキ: (レンタルビデオ: 80年)

» 75年発売: 22.9万, 85: 10万円,03: 1.5万 (10年で半分)– CDプレイヤ: (レンタルCD: 85年)

» 82発売: 16.8万,85: 7万円,03: 5千円 (3年で半分)– DVDプレイヤ: (レンタルDVD: 00年)

» ‘96発売: 8万円,03: 1万円, 07年 3千円

– プラズマテレビ» 04年 1万円/インチ

» 07年 5千円/インチ

従来の製品の売れ方: 3-5

年スパン

最近の売れ方: 1年程

度で急激に立ち上がり,たち下がる

デジタル化により、価格下落のペースが速くなった!

Page 8: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

8

FPGAの応用先http://www.fpga.co.jp/nyumon2.html

Canopus社ビデオ

出力ボード

SONYの薄型テレビ用基盤

プレステ用

エモーション

エンジン

Altera社Cyclone

新幹線電光掲示板

Page 9: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

9

ポータブル機器への応用

ザイリンクスは,シャープがウィルコム向けに開発・製造している携帯情報端末「W-ZERO3 シリーズ」に,米Xilinx,Inc.のCPLD「CoolRunner-II」が採用されていると発表した。W-ZERO3 シリーズは2005年12月に販売が始まっている。今回,シャープは上記のPLDを,同PDAのキーボード・インタフェース,I/O拡張機能などに使い,MCUの負荷低減と機

器の高機能化につなげたという。ザイリンクスは「CoolRunner-IIが低消費電力

なことは,採用の大きなポイントになった」と説明している。

出典:http://techon.nikkeibp.co.jp/article/NEWS/20060616/118270/

Page 10: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

10

F1マシンにも利用されているザイリンクス、Virtex FPGA が F1 マシンの性能アップに貢献BMW ウィリアムズ F1 チームの躍進を FPGA テクノロジがサポートプログラマブル ロジック ソリューションの世界的リーダであるザイリンクス社は、BMW Williams (ウィリアムズ) F1 マシンの性能アップに貢献している。ザイリンクスは BMW ウィリアムズとの技術提携で、FPGA テクノロジとヴィークル コントロール モジュール (VCM) に対するサポート サービスを提供している。VCM は、ギアボックス、ディファレンシャル、トラクションコントロール、加速器およびテレメトリなどで構成。ザイリンクスの最先端テクノロジをフルに活用しながら、BMW ウィリアムズの次世代 VCM 設計グループが設計したもので、2003 年のマシン FW25 の重要な要素部分を制御するために使用されている。BMW ウィリアムズが参加する F1 グランプリの最終戦は、10 月 12 日 (日) に三重県の鈴鹿サーキットで決勝が行われる。ザイリンクスの Virtex-E 「XCV600E」 FPGA が、F1 マシンの各部に取り付けられた多数のセンサからの

データを収集して空気力学、エンジン、ギアボックス、タイヤ、ホイールなどの性能を監視するために使用されている。VCM はテレメトリ リンクを通じてこのセンサ データをピット レーンに送信する。チップ搭載機能の拡充と低消費電力化を達成したザイリンクスの最先端テクノロジによる VCM ユニットが VCM のサイズと重量を大幅に削減し、F1 マシンの飛躍的な性能アップを実現した。

http://japan.xilinx.com/japan/j_prs_rls/design_win/03137formulaone_grandprix_j.htmより

Page 11: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

11

FPGA,PLDの歴史

参考資料1(次ページ)– 特許から見た「プログラマブル・ロジック・デバイス(Programmable Logic Device:PLD)」の展望

– http://www.jpo.go.jp/shiryou/toushin/chousa/pdf/pld2000_1_12.pdf

Page 12: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

12

PLDの変遷(参考資料1)

Page 13: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

13

PLDの構造

PLA, PAL Simple PLDプロダクトターム方式: ANDアレイとORアレイPLA, PALは組合せ論理回路主体Simple PLDは順序論理回路

– カウンタ、制御回路等– プロダクトタームの代わりに、LUTのものも

Page 14: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

14

プロダクトターム構造

FPLA: Field Programmable Logic Arrayバイポーラトランジスタを利用

接続したくないところのヒューズを溶断

ヒューズは抵抗を持つので,遅い– PALは,高速化のためにOR

アレイを固定化

M.J.B.Duff, “Review of the CLIP Image Processing System”, National Computer Conf., pp.1056-1060 (1978)

Page 15: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

15

LUT(Look-up Table)SRAM型FPGAの可変論理を実現

する。

A, B, C, Dの4ビット入力をワード線とした1ビットのSRAM– 入力数が増えるとSRAMが大きくな

– 小さいと効率が悪い

– これまでは4入力が主流

SRAMの中身を書き換えること

で任意の論理を実現

(A|B)&(C|D)に対するLUT→真理値表をそのまま表現すればよい。

Page 16: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

16

FPGA (Field Programmable Gate Array)

フィールドプログラマブルな大規模集積回路– ようは大規模なPLD論理ゲートとフリップフロップをアレイ上に敷き詰めて、その間の結線を自由に変更

– ただし論理ゲートそのものが内蔵されているとは限らない

コンフィグレーションデータ(構成情報)を書

き込むことにより機能が変化する

Page 17: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

17

FPGAの構造

組み替え可能な論理ブロック

論理ブロック間を接続する組み替え可能な配線

Page 18: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

18

FPGAの構成記憶方式

SRAM等の揮発性メモリに書き込む.– もっともポピュラー

– 特別なプロセスを必要としない

– 基本特許はXilinx社が所有している» Freeman特許(2006まで),Carter特許(2004まで)

» FPGAという商標はXilinxのみが使用できる。

EPROM, EEPROM等の不揮発性メモリに書き込む.– 電源を切っても消えない

電圧をかけて, アンチヒューズを短絡させる.– 書きこみは一度のみ

FPGAの現在の構成(コンフィグレーション)を覚

えておく方法

Page 19: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

19

FPGAの構成記憶方式: SRAM

SRAMロジックと同じプロセスで製造できる。– 低コスト, 新プロセスの利用

冗長度が大きい。– 1SRAMセル: 6Tr or 4Tr

電源を切ると消える(揮発性)– 便利でもあり,不便でもある

WL

BL BL

To Switch

Page 20: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

20

FPGAの構成記憶方式(2) 不揮

Floating Gate

EPROM,EEPROM特殊なプロセスを要求

冗長度は小さい。

1Trのみ

INOUT >100G

Apply 16V between A and B

A B A Bopen

Antifuse小さくて高速

書き込みは一度だけ

Page 21: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

21

SRAM方式FPGAの構造

FPGA:– 変更可能な組合せ回路+FF– 変更可能な配線

組合せ論理回路の基本はLUT(Look-Up Table)– 組合せ論理回路を1ビットSRAMの記憶内容で表現

配線の変更は

– トランジスタによるスイッチ» スイッチのON, OFFの情報もSRAMに格納

Page 22: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

22

構成部品– CLB (Configurable Logic Block,

論理ブロック)» LUT: 可変論理

» FF: 順序回路

– SB (Switch Block, 配線接続スイッチ)

» 縦横の配線接続を切り替え

– CB (Connection Block, 入出力スイッチ)

» CLBと配線を接続

– Wire Track» SB間の配線

CB

アイランド型FPGA

CLB

SB

Wire Track

Page 23: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

23

CLB (Configurable Logic Block)LUT– 可変論理を実現する

DFF– 順序回路を実現する

セレクタ

– 順序回路動作と組み合わせ回路動作を切り替える

Page 24: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

24

可変配線: スイッチマトリッ

クス

SRAM型FPGAの可変配線を実現

全結線はコスト高かつ遅延大なので,斜めだけスイッチを配する。

任意の接続が可能

1交点あたり,スイッチ6個

Page 25: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

25

スイッチマトリックスの構造

Fs(配線当たりの接続数)=3の各種スイッチ構造

– Disjoint: 上下左右斜め同じ番号(前頁の構造)

– Universal: 上下左右は同じで斜めで一部番号を反転

– Wilton: 上下左右は同じで斜めで番号を変更

Page 26: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

26

スイッチマトリックスの詳細構造

NMOS SW Type– 面積が小さいが配線容量の増大とともにス

イッチの抵抗による遅延が大きくなる. 信号レベルがVdd-Vthに

Buffer Type– 高速だが,双方向にするために面積が非常

に大きくなってしまう。

– さて,NMOS SW Typeの何倍くらい?

Buffer Typeの欠点を解消したスイッチの構造も提案されている[1]

1ビットSRAM

[1] G. Lemieux, D. Lewis, `Circuit Design of FPGA Routing Switches'', ACM/SIGDA International Symposium on FPGAs

Page 27: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

27

特許から見たSRAM型FPGAFreeman特許

– LUT型FPGAの基本

特許

– プログラマブルなロジックセル,IOセル,

セル間インタコネクト

– LUTによって論理を

実現

– メモリに構成を記憶

Page 28: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

28

特許から見たSRAM型FPGA(2)Carter特許

– CLE(Configurable Logic Elements)の接続方法(コネク

ションブロック)に関する特許

Altera社のLUT型FPGAは,X

ILINX社に特許侵害で訴えられ,和解– 2001年,Alteraは2000万$を

XILINXに支払う

他社は怖くて販売できない

Page 29: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

29

XILINX XCシリーズの構造

Page 30: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

30

ALTERA FLEXの構造(CPLD構造)

Page 31: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

31

Antifuse型FPGA (Actel Act1)プログラム可能なスイッチ: 高電圧をかけて、スイッチを溶着する。– Fuseの反対の動作

– 動作時には低抵抗で高速

– 書き込みは一度だけ

» 非常に安定(宇宙でも安心)

プログラム可能な論理– マルチプレクサベース

– 2入力のさまざまな組合せ論理

が実現可能

>100G

Apply 16V between A and B

A B A Bopen

Page 32: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

32

Act1の構造

LogicModule

Antifuseスイッチ

Page 33: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

33

1

1

1

B

0

A

C

0

OUT AB

C

0

1

0

1

0

1

A

B

C

D

E

FGH

マルチプレクサによる組合せ回路

• 2入力の論理すべてと、3NANDと排他論理を除く3入力の論理を実現。8入力までの論理も実現(一部のみ)

•入力には,変数の正論理もしくは,0,1

Page 34: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

34

シャノン展開による論理実現

Bについてシャノン展開

Page 35: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

35

シャノン展開による論理実現(2)

D

C

1

D

1

A

B

0

F

0

1

0

1

0

1

F1

F2

Page 36: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

36

EPROM、EEPROM型FPGAE(E)PROM: Electric(-Erasable) Programmable ROM– 電気的に書きこみ(と消去)のできるROM

EPROM(Floating-Gate MOS; FGMOS)の構造

MOSFET Floating-Gate MOSFET

ゲート電極を2つもつFET

Page 37: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

37

FGMOSのプログラミング

Drain, Gate間に高電圧(12V)をかけて、DrainからFloating Gateに電子をジャンプさせる。

電子がFloatingゲートにたまることで、閾値が上

昇する。– 常にOFFもしくはONになる

Page 38: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

38

FGMOSによるProgrammable Logic

Floating Gate

INOUT

Floating Gate MOSの回

路図シンボル

Floating Gate IN OUT

Unprogrammed 1 0

Unprogrammed 0 1

Programmed X 1

Programmable Inverter

Programmable NOR

IN0OUT

IN1

IN2

IN3

Page 39: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

39

FPGAの特性分類

SRAM型のFPGAは 新のプロセス技術により、

スピード面での欠点は解消されている。– 新のものは、45nm銅配線プロセスを用いている。

– 45nmプロセスを用いたFPGAはまだの模様

プログラム方式 再書込 不揮発性 動作速度 冗長度SRAM ○ × 遅い→速い 大EPROM × ○ 中 中EEPROM △ ○ 中 中アンチヒューズ × ○ 速い 小

http://www.altera.co.jp/corporate/news_room/releases/products/nr-stratix-iv-hardcopy-iv.html

テクノロジーノード: メタルのハーフピッチ(メタル配線の中心間距離の半分)

45nmはハーフピッチ、40nmはトランジスタのゲート長

Page 40: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

40

銅配線プロセス

アルミニウムの抵抗率は銅の1.6倍

銅配線の威力銅配線の断面写真

Page 41: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

41

微細化の効果(Xillinx資料より)

90nmプロセスと,300mmウェハで,130nm, 200mmと比べて,5倍の生産性

– 価格を1/5にITRSのロードマップの1.5年先を行く

微細化による効果

1.29 1.341.60

1.33

2.09

0.00

0.50

1.00

1.50

2.00

2.50

220 190 150 130 90

プロセステクノロジ(nm)

集積

度の

向上

大口径化の効果

4.00

2.251.78

2.25

0.00

0.501.00

1.502.00

2.503.00

3.504.00

4.50

100 150 200 300

ウェハーの直径

集積

度の

向上

Page 42: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

42

微細化による効果

34W 8.5W

Page 43: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

43

微細化により筺体を小型化

SCE 久多良木社長

Page 44: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

44

FPGAベンダ

各社とも,1980年代半ば以降に創業されたベンチャー企業(参考資料2参照)

FPGAの2大ベンダは、XilinxとAltera– 2社で世界の5割から6割– 日本ではAltera, 米国ではXilinxが強い

その他のベンダ– Actel: antifuse型, Mars Path-Finderに搭載

– Lucent: PCIやATMコントローラを内蔵したFPGA– Philips, Lattice: CPLD (Complex PLD)– 現在のベンダリスト

» http://www.fpgacentral.com/vendor/directory?filter0=3

Page 45: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

45

FPGAベンダの売り上げ高

0 0.5 1 1.5 2 2.5 3 3.5

LSI Logic

Agere System

Altera

Toshiba

Fujitsu

Xilinx

NEC Electronics

ST Microelectronics

IBM

Texus Instruments

2004

2003

FPGA/ASIC売り上げ高(10億ドル)

(Gartner調査データより)

Xilinx, Alteraは,東芝,富士通,NEC等の日本の大手とほぼ同じ規

Page 46: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

46

FPGAの製品展開

SRAM型FPGAは、LUTで実現する組合せ論理回路だけでなく、メモリ,PLL, 高速シリアル伝送回路,DSP, Ethernetコントローラまで内蔵する。

– Virtex-5では、 大18Mbitメモリは、RAM, ROM, CAM(Content Addressable Memory), FIFO, 乗算器等に使用できる

さらに、CPUコアを内蔵。LSIの製造プロセス微細化のおかげで、チップ全体の1/10程度でARM, PowerPC等の32bitプロセッサが集積可能

Page 47: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

47FPGAへの書込データの作成

LSI用CADツール

FPGAベンダ提供ツール

この境界は厳密ではない

回路図エントリ

CAB

HDL記述module nand_g(C,A,B); input A,B; output C; assign C=~(A&B);endmodule

論理合成

nand2

ネットリストmodule nand_g(C,A,B); input A,B;output C; nand2 I0(C,A,B);endmodule

論理設計

論理素子へのゲートの割り当て

LEの配置, 配線を決定する

FPGAの設計法

通常のLSIと同じ設計手

法を取る。– LUTを直接設計するわけで

はない

FPGAの配置配線は各FPGAベンダ配布のツー

ルにより行う

HDLが書ければ,後はほ

ぼボタンを押すだけ!!

Page 48: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

48

CAD、FPGAベンダのツール

各社FPGAの無償ツールあり。大学向けのプログラムもあり

See http://www.ベンダ名.com/

Mentor Graphics FPGA Advantage 統合ツール SynplifyPro 論理合成ツール WorkView Office 回路図エントリ

ALTERA Quartus II 回路図エントリ,論理合成 XILINX ISE 回路図エントリ,論理合成 Actel Libero IDE 回路図エントリ,論理合成

CADベンダ

FPGAベンダ

Synopsys

Page 49: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

49

FPGA設計(演習内容)HDLからFPGAまで

Quartus II

circuit.sof,pof SRAMオブジェクトファイル

RTL記述から回路への論理合成

FPGA上の配置配線をおこなう

出力ファイル

出力ファイル

RTL記述

デバイスへ

の書込

Quartus II

FPGA搭載ボード Power Medusa MU200-EC6SFPGA: Altera社 Cyclone EP1C6Q240C8 (5980ロジックセル)

FPGA1個当たりの価格 1000円から2000円程度

Page 50: リフレッシュ教育 - ElectronicsLabkobayasi/refresh/0812/sdoc/slide/...Antifuse型FPGA (Actel Act1) プログラム可能なスイッチ: 高電圧をかけて、スイッチを

50

HDLから回路図へ(論理合成)module calc(decimal,plus,minus,equal,CLK,RST,CE,sign,overflow,out);

input [9:0] decimal;

input CLK,CE,RST,plus,minus,equal;

output sign,overflow;

output [6:0] out;

wire [3:0] d;

wire [8:0] alu_out;

reg [1:0] state;

reg [8:0] REGA, REGB;

reg [1:0] count;

reg add_or_sub;

assign d=dectobin(decimal);

always @(posedge CLK or negedge RST)

begin

if(!RST)

begin

REGA<=0;REGB<=0;count<=0;

add_or_sub<=0;

state<=`DECIMAL;

end

else

module calc(decimal,plus,minus,equal,CLK,RST,CE,sign,overflow,out);

input [9:0] decimal;

input CLK,CE,RST,plus,minus,equal;

output sign,overflow;

output [6:0] out;

wire [3:0] d;

wire [8:0] alu_out;

reg [1:0] state;

reg [8:0] REGA, REGB;

reg [1:0] count;

reg add_or_sub;

assign d=dectobin(decimal);

always @(posedge CLK or negedge RST)

begin

if(!RST)

begin

REGA<=0;REGB<=0;count<=0;

add_or_sub<=0;

state<=`DECIMAL;

end

else

HDLソース(一部)回路図