Xcell journal 8 4 号 2013
S O L U T I O N S
F O R
A
P R O G R A M M A B L E
UltraScale に移行する ザイリンクスの 20nm と FinFET
XRadio: システム
デザイン教育用 楽しい FPGA ラジオ ページ
22
WO R L D
効率的なビットコイン マイナー システムを Zynq SoC で実現
Vivado ツールの ESL 機能で、 Zynq SoC 上 IP コアの設計時間を短縮 独自のペリフェラルを作成し、 Zynq SoC を高速化
XILINX FPGAの電源管理に最適な
パワー・システム・マネージメント
PSM
Power System Management
パワー・システム・マネージメント搭載FPGA評価ボードのご紹介 東京エレクトロンデバイスオリジナルボード
FPGA の設計に関わる電源設計 / 回路検証 / 監視機能を PSM でまるごと解決!
大規模PCI Express Gen3 開発評価プラットフォーム
LTC3600
LTC3600 LTC2977 LTC3855 デバイスは裏面に実装
PSM ラインナップ
LTC297x シリーズ
既存電源にシステムマネージメント機能を追加する コントローラIC
LTC388x シリーズ
同期整流DC-DCコンバータとパワー・システム・マネージメントが 電源コントローラIC
µModule シリーズ
パワー・システム・マネージメントと電源IC、 その周辺部品まですべて ワンパッケージ化したモジュール(近日登場)
Virtex ®-7 FPGAの厳しい電源要求をPSM で一括制御! 出力電圧の調整/ 最適化
シーケンス制御
Core電源: 1.0V ±3%という厳しい出力電圧精度を実現可能
Virtex -7 FPGAの電源投入/遮断時の推奨シーケンスを簡単な コードにより設定可能 SEQUENCE UP
Sense+ VOUT
R3 VDAC+
製品名
特長 ■高速シリアル内蔵の大規模FPGA搭載 ■PCI Express Gen3 x8をサポート ■広帯域DDR3 SDRAM SO-DIMMを2系統搭載 ■PCI ExpressやDMA等 リファレンスデザインを提供 ■オプションの光IFカード(別売り)を使用する事によりTotal 400Gbps光IFが実現可能
FB
入出力電力監視
INDIVIDUAL MARGINING FOR 8 SUPPLIES
8 SUPPLIES IN ANY ORDER
PSMが入出力電圧・電流を監視し、異常時の動作設定が可能 4.5V < V IBUS < 15V**
VDACP0
TO INTERMEDIATE BUS CONVERTER ENABLE
VIN_EN
VSENSEP0
LTC2977*
SCL
TB-7VX-690T-PCIEXP
XC7VX690T FFG1926
TB-7VX-980T-PCIEXP
XC7VX980T FFG1926
TB-7VX-1140T-PCIEXP
XC7VX1140T FLG1926
■出荷検査用自動マージニング設定
LOAD
5A-10A
Up to 25A
LTC3608 Monolithic LTC3616 Monolithic LTM4608A µModule LTM4616 Dual µModle
LTC3855 Controller LTM4620 µModule LTC3855 Controller LTC3880 Controller 2x LTM4627 µModule
2.5V to 5V
LTC3411A Monolithic LTC3417A Monolithic LTC3569 Monolithic
12V to 24V
LTC3503 Monolithic LTC3601 Monolithic
LTM8025 µModule LTM4618 µModule LTM4619 Dual µModule
LTM4601A µModule LTM4628 µModule LTM4627 µModule
1A-1.5A
2A-5A
5A-10A LTC3608 Monolithic LTC3616 Monolithic LTC3418 Monolithic LTC3617 Monolithic LTC3605 Monolithic LTC3633 Monolithic LTC3855 Controller
Core Voltage:0.9V,1.0V,1.2V 500mA
2.5V to 5V
LT3085 Linear LTC3025-1 Linear
LTC3411A Monolithic LTC3417A Monolithic LTC3569 Monolithic
LTC3546 Monolithic LTC3612 Monolithic LTC3614 Monolithic LTM3615 Monolithic
12V to 24V
LTC3503 Monolithic LTC3645 Monolithic
LTC3503 Monolithic LT3505 Monolithic LTC3601 Monolithic
LTC3604 Monolithic LTC3850 Controller LTC3633 Monolithic
VOUT DIGITALLY MANAGED POWER SUPPLY
2A-5A LTC3612 Monolithic LTM4604A µModule LTM4614 Dual µModule LTM4615 Triple µModle
■内蔵EEPROMにフォールトログを記録
VIN VIN_SNS
搭載FPGA
Kintex®-7 FPGA Artix®-7 FPGA
その他PSM機能
VDD33
LTM4628
Core Voltage:0.9V,1.0V 1A-1.5A
入力電源
入力電源
VPWR
LTM4627
LT3070×4
Virtex®-7 FPGA
8 SUPPLIES IN ANY ORDER
SDA
LTC3025
DC/DC
R2
3.3V**
LTM4620
LTM4627
ザイリンクスFPGA向け電源ソリューション
SEQUENCE DOWN
R1
Sense-
PMBus INTERFACE
MARGIN
FPGA
LTC2977*
LTM4627
®
On/Off
VOUT
LTC3617
LTpowerPlay™ GUI
VFB
VDACM0
ALERTB
VSENSEM0
SGND
CONTROL0
VOUT_EN0
RUN/SS GND
WRITE-PROTECT TO/FROM OTHER LTC POWER SUPPLY MANAGERS
WP
PWRGD WDI/RESETB
FAULTB00
ASEL0
SHARE_CLK
ASEL1
GND
TO µP RESETB INPUT WATCHDOG TIMER INTERRUPT
* SOME DETAILS OMITTED FOR CLARITY ONLY ONE OF EIGHT CHANNELS SHOWN ** MAY BE POWERED FROM EITHER AN EXTERNAL 3.3V SUPPLY OR THE INTERMEDIATE BUS
LTpowerPlay™ GUIにより 視覚的に各電源の設定をプログラム、 そして簡単にデバックが可能
DC1613A USB to PMBus Controller
ハイエンドアナログ部
http://www.teldevice.co.jp/product/ltc/
本 社 〒221-0056 神奈川県横浜市神奈川区金港町1番地4 横浜イーストスクエア TEL.045-443-4000 (代表)
計測展2013 TOKYOに 出展いたします。
リニアテクノロジー 株式会社
www.linear-tech.co.jp
本 社 〒102-0094 東京都千代田区紀尾井町3-6 紀尾井町パークビル8F TEL.03-5226-7291 大 阪 支 社 〒550-0011 大阪市西区阿波座1-6-13 カーニープレイス本町6F TEL.06-6533-5880 名古屋支社 〒460-0002 名古屋市中区丸の内3-20-22 桜通大津KTビル7F TEL.052-955-0056
■会 期:2013年11月6日(水)∼8日(金)10:00∼17:00 ■会 場:東京ビッグサイト 西2ホール ブースNo. M-32
詳しい情報はこちら▶ www.linear-tech.jp/ keisoku2013/
電子回路シミュレータ
LTspice Users Club 発足! 詳しくはこちら▶ http://www.ltspice.jp/
XILINX FPGAの電源管理に最適な
パワー・システム・マネージメント
PSM
Power System Management
パワー・システム・マネージメント搭載FPGA評価ボードのご紹介 東京エレクトロンデバイスオリジナルボード
FPGA の設計に関わる電源設計 / 回路検証 / 監視機能を PSM でまるごと解決!
大規模PCI Express Gen3 開発評価プラットフォーム
LTC3600
LTC3600 LTC2977 LTC3855 デバイスは裏面に実装
PSM ラインナップ
LTC297x シリーズ
既存電源にシステムマネージメント機能を追加する コントローラIC
LTC388x シリーズ
同期整流DC-DCコンバータとパワー・システム・マネージメントが 電源コントローラIC
µModule シリーズ
パワー・システム・マネージメントと電源IC、 その周辺部品まですべて ワンパッケージ化したモジュール(近日登場)
Virtex ®-7 FPGAの厳しい電源要求をPSM で一括制御! 出力電圧の調整/ 最適化
シーケンス制御
Core電源: 1.0V ±3%という厳しい出力電圧精度を実現可能
Virtex -7 FPGAの電源投入/遮断時の推奨シーケンスを簡単な コードにより設定可能 SEQUENCE UP
Sense+ VOUT
R3 VDAC+
製品名
特長 ■高速シリアル内蔵の大規模FPGA搭載 ■PCI Express Gen3 x8をサポート ■広帯域DDR3 SDRAM SO-DIMMを2系統搭載 ■PCI ExpressやDMA等 リファレンスデザインを提供 ■オプションの光IFカード(別売り)を使用する事によりTotal 400Gbps光IFが実現可能
FB
入出力電力監視
INDIVIDUAL MARGINING FOR 8 SUPPLIES
8 SUPPLIES IN ANY ORDER
PSMが入出力電圧・電流を監視し、異常時の動作設定が可能 4.5V < V IBUS < 15V**
VDACP0
TO INTERMEDIATE BUS CONVERTER ENABLE
VIN_EN
VSENSEP0
LTC2977*
SCL
TB-7VX-690T-PCIEXP
XC7VX690T FFG1926
TB-7VX-980T-PCIEXP
XC7VX980T FFG1926
TB-7VX-1140T-PCIEXP
XC7VX1140T FLG1926
■出荷検査用自動マージニング設定
LOAD
5A-10A
Up to 25A
LTC3608 Monolithic LTC3616 Monolithic LTM4608A µModule LTM4616 Dual µModle
LTC3855 Controller LTM4620 µModule LTC3855 Controller LTC3880 Controller 2x LTM4627 µModule
2.5V to 5V
LTC3411A Monolithic LTC3417A Monolithic LTC3569 Monolithic
12V to 24V
LTC3503 Monolithic LTC3601 Monolithic
LTM8025 µModule LTM4618 µModule LTM4619 Dual µModule
LTM4601A µModule LTM4628 µModule LTM4627 µModule
1A-1.5A
2A-5A
5A-10A LTC3608 Monolithic LTC3616 Monolithic LTC3418 Monolithic LTC3617 Monolithic LTC3605 Monolithic LTC3633 Monolithic LTC3855 Controller
Core Voltage:0.9V,1.0V,1.2V 500mA
2.5V to 5V
LT3085 Linear LTC3025-1 Linear
LTC3411A Monolithic LTC3417A Monolithic LTC3569 Monolithic
LTC3546 Monolithic LTC3612 Monolithic LTC3614 Monolithic LTM3615 Monolithic
12V to 24V
LTC3503 Monolithic LTC3645 Monolithic
LTC3503 Monolithic LT3505 Monolithic LTC3601 Monolithic
LTC3604 Monolithic LTC3850 Controller LTC3633 Monolithic
VOUT DIGITALLY MANAGED POWER SUPPLY
2A-5A LTC3612 Monolithic LTM4604A µModule LTM4614 Dual µModule LTM4615 Triple µModle
■内蔵EEPROMにフォールトログを記録
VIN VIN_SNS
搭載FPGA
Kintex®-7 FPGA Artix®-7 FPGA
その他PSM機能
VDD33
LTM4628
Core Voltage:0.9V,1.0V 1A-1.5A
入力電源
入力電源
VPWR
LTM4627
LT3070×4
Virtex®-7 FPGA
8 SUPPLIES IN ANY ORDER
SDA
LTC3025
DC/DC
R2
3.3V**
LTM4620
LTM4627
ザイリンクスFPGA向け電源ソリューション
SEQUENCE DOWN
R1
Sense-
PMBus INTERFACE
MARGIN
FPGA
LTC2977*
LTM4627
®
On/Off
VOUT
LTC3617
LTpowerPlay™ GUI
VFB
VDACM0
ALERTB
VSENSEM0
SGND
CONTROL0
VOUT_EN0
RUN/SS GND
WRITE-PROTECT TO/FROM OTHER LTC POWER SUPPLY MANAGERS
WP
PWRGD WDI/RESETB
FAULTB00
ASEL0
SHARE_CLK
ASEL1
GND
TO µP RESETB INPUT WATCHDOG TIMER INTERRUPT
* SOME DETAILS OMITTED FOR CLARITY ONLY ONE OF EIGHT CHANNELS SHOWN ** MAY BE POWERED FROM EITHER AN EXTERNAL 3.3V SUPPLY OR THE INTERMEDIATE BUS
LTpowerPlay™ GUIにより 視覚的に各電源の設定をプログラム、 そして簡単にデバックが可能
DC1613A USB to PMBus Controller
ハイエンドアナログ部
http://www.teldevice.co.jp/product/ltc/
本 社 〒221-0056 神奈川県横浜市神奈川区金港町1番地4 横浜イーストスクエア TEL.045-443-4000 (代表)
計測展2013 TOKYOに 出展いたします。
リニアテクノロジー 株式会社
www.linear-tech.co.jp
本 社 〒102-0094 東京都千代田区紀尾井町3-6 紀尾井町パークビル8F TEL.03-5226-7291 大 阪 支 社 〒550-0011 大阪市西区阿波座1-6-13 カーニープレイス本町6F TEL.06-6533-5880 名古屋支社 〒460-0002 名古屋市中区丸の内3-20-22 桜通大津KTビル7F TEL.052-955-0056
■会 期:2013年11月6日(水)∼8日(金)10:00∼17:00 ■会 場:東京ビッグサイト 西2ホール ブースNo. M-32
詳しい情報はこちら▶ www.linear-tech.jp/ keisoku2013/
電子回路シミュレータ
LTspice Users Club 発足! 詳しくはこちら▶ http://www.ltspice.jp/
FPGA / CPLD 評価ボード
LCDモジュール
すぐに使えるFPGAボードで、設計や試作コスト が下げられると思います。 ■ FPGAの動作に必要な最低限の機能を搭載単一電源ですぐに活用できます ■ ACM/XCMシリーズはそれぞれ外形やコネクタ位置が同一で置き換えが可能です ■ 豊富なラインナップで100種類以上の製品をご用意しています
139 x 100 x 10 [mm] (W x H x D)
Kintex -7搭載FPGAボード
UTL-024 シリーズ
XCM-022 シリーズ
■ ユーザI/O
■ 3.3V
MRAM
コントローラ (セイコーエプソン社 S1D13781)
100本
RoHS指令対応品
■ 3.3V単一電源動作、 電源シーケンサ搭載
XCM-022W シリーズ
クレジット カードサイズ
DDR3 SDRAM
Kintex®-7 FBG484 搭載ブレッドボード
XCM-022Z シリーズ
■ XC7K70T-1FBG484C
または XC7K160T-1FBG484Cを搭載 ■ メモリ搭載 ■ ユーザI/O 100本 ■ 3.3V単一電源動作 電源シーケンサ搭載 ■ XCM-022から高速トランシーバ 部分を除いた製品です
RoHS 指令対応品
■ ユーザI/O
128本
UTL-025 シリーズ
■ 3.3V
単一電源動作
■ LCD
コントローラ (セイコーエプソン社 S1D13781)
■ 内蔵圧電ブザーにより発音
可能
5.0
■ プラスチック製ベゼル付き
DDR3 SDRAM
■ XC7K70T-1FBG484C
RoHS指令対応品
タッチパネル付き5″ カラーLCDモジュール
XCM-112 シリーズ Rocket I/O
3.5
■ 黒とグレーの2モデル
Kintex®-7 FBG484 搭載ブレッドボード
ハーフ カードサイズ
可能
■ プラスチック製ベゼル付き
94 x 78 x 9.5 [mm] (W x H x D)
■ XC7K70T-1FBG484C
RoHS 指令対応品
または XC7K160T-1FBG484Cを搭載 ■ シンプル構成 ■ ユーザI/O 100本 ■ 3.3V単一電源動作 電源シーケンサ搭載 ■ XCM-022からメモリと高速トラン シーバ部分を除いた製品です
■ 内蔵圧電ブザーにより発音
■ 外形寸法
クレジット カードサイズ
MRAM
単一電源動作
■ LCD
または XC7K160T-1FBG484Cを搭載
Kintex®-7 FBG484 搭載ブレッドボード
RoHS指令対応品
タッチパネル付き3.5″ カラーLCDモジュール
Kintex®-7 FBG484 搭載ブレッドボード
■トランシーバとメモリ搭載
5.0
■ 黒とグレーの2モデル
®
■ XC7K70T-1FBG484C
可能
■ 外形寸法
■ スピードグレード変更などのカスタマイズもご相談ください
DDR3 SDRAM
単一電源動作
■ 内蔵圧電ブザーにより発音
コネクタはTerasic 社 のディスコン品(TRDB-LTM) に準拠したピンレイアウト
■ 基本的に即納体制で最短翌日からご活用いただけます
SIF40
■ 3.3V
■ I/F
■ 豊富な納入実績で安心してお使いいただけます
Rocket I/O
UTL-021 シリーズ
■ プラスチック製ベゼル付き
■ 回路図、マニュアルは購入前でも自由に参照できます
クレジット カードサイズ
タッチパネル付き5″ カラーLCDモジュール
■ 外形寸法
または XC7K160T-1FBG484Cを搭載
■ 3.3V単一電源動作、 電源シーケンサ搭載
139 x 100 x 10 [mm] (W x H x D)
RoHS指令対応品
RoHS指令対応品
■ 黒とグレーの2モデル
Kintex®-7 搭載 USB-FPGA ボード
EDX-008
クレジット カードサイズ
USB Config
USB Comm
DDR3 SDRAM
MRAM
CameraLink 実験用ボード
HI-SPEED
■ XC7K70T-1FBG484Cを搭載 ■ ユーザI/O
100本 ■ USB経由でFPGAコンフィギュレーション ■ USBポートによりPCとUSB通信が可能 ■ 5V単一電源動作、 電源シーケンサ搭載
RoHS指令対応品
Virtex -5搭載の新製品 ®
Virtex®-5 FFG676 搭載ブレッドボード
XCM-113 シリーズ
ハーフ カードサイズ
DDR2 SDRAM
■ XC5VLX30-1FFG676C、 XC5VLX50-1FFG676C、
XC5VLX85-1FFG676C または XC5VLX110-1FFG676Cを搭載 128本 ■ 3.3V単一電源動作 ■ ユーザI/O
RoHS指令対応品
UTL-023 当社ACM/XCM-2シリーズ にCameraLink用コネクタ を 接 続 す る た め の ボ ード です。 電源付きユニバーサルボー ド Z K B - 1 0 6 を ベ ー スに CameraLink入力用コネク タとC a m e r a L i n k 出 力 用 コネクタおよび、LCD表示モジュールUTL-021用のI/O コネクタを装備しています。
※その他 FPGA Boardやアクセサリを100 種類以上ラインナップしています。詳しくはウエブをご覧ください。
L E T T E R
F R O M
T H E
P U B L I S H E R
ザイリンクスの UltraScale アーキテクチャが All Programmable SoC の価値を向上 先進的な半導体プロセス技術のロードマップの進展が気になる皆様は、おそらくシリコン生産コス トの加速度的な増加にお気付きのことと思います。一部では、プロセス技術が 28nm を超えて微細 化すると、ムーアの法則がもたらすコスト面の利点 ( すなわち、トランジスタ数が 2 倍になっても コスト は 同 水 準 にとど まること ) が 失 わ れると 主 張 さ れて い ま す。たしかに業 界アナリストは、 20nm プレーナおよび 16/14nm FinFET 世代のデバイスについて、NRE ( 開発 ) コストの上昇と、 新たなノードで製造される各トランジスタの急激な価格上昇が並行して進む傾向を予測しています。 アナリストによると、20nm でインプリメントされるチップから適正な利益を得るには、まず、低め に見積もった 1 億 5000 万ドルに上るデバイスの設計 / 製造コストを明確にする必要があります。 マスク 1 枚当たりのマスク コストは 500 万ドルから 800 万ドルに近づいているので、このような 低見積もりコストを達成するには、それを正しく理解するのがよいと思います。 FinFET への対応はさらに困難に見えます。アナリストの予測によると、16/14nm FinFET ノード の平均コストは約 3 億 2500 万ドルに達し、20nm ノードの製造コストの 2 倍以上に相当します。 アナリストは、このようなコスト高騰の理由として、プレーナ トランジスタ プロセスから FinFET への 切り替えの際に、ツール変更、メソッド、IP 再検証に多額のコストが発生することを挙げています。 ツールとメソッドは、シグナル インテグリティ、エレクトロマイグレーション、デバイス幅の量子化、 抵抗および容量の新たな複雑性に対処する必要があります。新しいトランジスタ、リソグラフィ、製造 手法およびツールの組み合わせ ( それとともに、改良されたより高価な IP) が必要とされるため、 設計チームは大きな困難に直面することになります。 控え目に言っても、最終製品が数千万ユニット単位で販売され、( 数百万ドルではなく ) 数十億ドル 規模の収益が見込めるのでない限り、16/14nm FinFET をターゲットとすることを正当化するのは 困難です。それで、これらの先進のノード上で設計している顧客に NRE コストを負担させないように すれば、FPGA 市場のすべてのベンダーにとって、ますます大きな販売上の強みとなります。最近 5 年間のザイリンクスの進化に注目してきた皆様は、ザイリンクスが技術的優位性と独自の価値提案を 明確に提示してきたことをご存じでしょう。現在のザイリンクス All Programmable デバイスは、卓 越したシステム機能と大容量および高性能、低消費電力と BOM ( 部品 ) コストの削減に、ほかのあら ゆる市販シリコン デバイスよりも優れた柔軟性とプログラマビリティを組み合わせて提供しています。 ザイリンクスは、28nm ノードで画期的な革新を実現し、業 界 初の 28nm FPGA、3D IC、 Zynq ® -7000 All Programmable SoC を発売しました。ザイリンクスは同時に、最先端の EDA テクノロジを組み込んだ Vivado ® Design Suite を発表しました。20nm ノードおよび 16nm FinFET ノードでは、さらに多くの画期的な新技術を用意しています。ザイリンクスは 2013 年 7 月、 新しい 20nm 製造ノードの IC を商用チップ メーカーとして初めてテープアウトしました。これら の新しいデバイスには、ザイリンクスの新しい UltraScale ™ アーキテクチャで実現される多くの革新 的技術が採用されます。 カバー ストーリーでご説明するように、UltraScale アーキテクチャはお客様に多くの利益をもたら します。その中で最も注目に値するのは、おそらくシステム使用率の大幅な向上 (90% 超 ) でしょう。 UltraScale アーキテクチャの能力を完全に実現するには、Vivado Design Suite が必要である ことにご注意ください。Vivado Design Suite により、ザイリンクスの 28nm デバイスを使用す る設計者の生産性は大きく向上しました。現在、この精緻な EDA テクノロジは、20nm および FinFET シリコンの強みをフルに活用するのに役立っています。ザイリンクスは、卓越した優位性を NRE コストなしで皆様にご提供いたします。
Mike Santarini 発行人
目次
VIEWPOINTS Letter From the Publisher ザイリンクスの UltraScale アーキテクチャが All Programmable SoC の価値を向上 … 3
XCELLENCE BY DESIGN APPLICATION FEATURES Xcellence in Networking Zynq SoC で効率的なビットコイン マイナー システムを実現 … 14
14
6
Cover Story UltraScale へと移行する ザイリンクスの 20nm プレーナおよび 16nm FinFET デバイス
84 号
THE XILINX XPERIENCE FEATURES Xperiment XRadio : システム デザイン教育用の 楽しい FPGA ラジオ… 22 Xperts Corner ベンチマーク : Vivado デザイン ツールの ESL 機能で Zynq SoC 上の IP コアの設計時間を短縮 … 28 Xplanation: FPGA 101 独自のペリフェラルを作成し、 Zynq SoC を高速化 … 36 Xplanation: FPGA 101 JESD204B : FPGA コンバーター チェーンのクリティカル リンク… 42
22 42
XTRA READING
28
Tools of Xcellence Virtex-7 FPGA のトランシーバー性能を 最大限に引き出すための 革新的な電源デザイン… 49 広告索引 リニアテクノロジー株式会社 / 東京エレクトロンデバイス株式会社 ……… 表 2 有限会社ヒューマンデータ ……… 2 Excellence in Magazine & Journal Writing 2010, 2011
Excellence in Magazine & Journal Design and Layout 2010, 2011, 2012
CO V E R STORY
Xilinx 20-nm Planar and 16-nm FinFET Go UltraScale
UltraScale へと移行する ザイリンクスの 20nm プレーナ および 16nm FinFET デバイス Mike Santarini Publisher, Xcell Journal Xilinx, Inc. mike.santarini@xilinx.com
6 Xcell Journal 84 号
COVER STORY
ザイリンクスによる業界初の 20nm デバイスの テープアウトは、ASIC クラスのプログラマブル アーキテクチャである UltraScale の時代の 幕開けを告げています。
ザイリンクスは、28 ナノメートル プロセスでの 画期的な革新を基盤にした、業界初の 20nm ノー ド製品を 2 つ発表し、さらにザイリンクスは商用 チップ メーカーとしては初めて 20nm デバイスを テープアウトしました。しかも、新しいデバイスは、 UltraScale ® テクノロジ ( プログラマブル デバ イス業 界 初の ASIC クラス アーキテクチャ ) を 採 用した 最 初 の 製 品として 市 場 に 提 供 さ れま す。 ザイリンクスの顧客は UltraScale アーキテクチャ により、Vivado ® Design Suite の最先端の EDA テクノロジをフルに活用でき、新しい世代の All Programmable デバイスを搭載した製品を迅速に開発 できます。ザイリンクスの革新的な技術は、業界で 初めて 28nm プロセスを採用した Zynq® -7000 All Programmable SoC と Virtex® -7 3D IC の 2 種類のデバイスを発表 して以来、競合他社の一世代先を歩 んでいます。 ザイリンクスのマーケティングおよ びコーポレート ストラテジ担当シニア バイス プレジデント、Steve Glaser は「ザ イリンクスは他社に先駆けて 28nm デバイス を提供しましたが、20nm でも業界で最も積極的 なテープアウト スケジュールを維持してきました」 と述べています。 「この多大な労力は今回も十分に 報われています。ザイリンクスは、ハイエンド デバ イスの供給については明らかに競合他社より 1 年 先行し、ミッドレンジ デバイスについては 6 カ月 先行しています。」 ザイリンクスは、28nm デバイスと同様に、新し い 20nm 製品ラインにも業界初の革新的技術を 採 用します。ザイリンクスは 新しい UltraScale アーキテクチャをいち早く発表し、20nm、16nm
http://japan.xilinx.com/
7
COVER STORY
➤ モノリシック デバイスから 3D IC へ ➤ プレーナから FinFET へ ➤ ASIC クラスのパフォーマンス
図 1 – UltraScale アーキテクチャは、大容量
UltraSCALE
I/O およびメモリ帯域幅、高速パケット処理 および高速 DSP 処理と、ASIC スタイルの クロッキング、パワー マネージメント、マルチ レベル セキュリティを可能にします。
Architecture
90% を超える使用率を達成できます。こ
使用して ASIC クラスのデザインをインプリ
ULTRASCALE アーキテクチャの 優位性 UltraScale アーキテクチャでは数百種
類の 機 能 が 構 造 的に強 化されていますが、
ス は 使 用 率 と 性 能 のトレ ード オ フ を ユー
メントできる、業界初のプログラマブル アー
それらの機能の多くは、最先端の EDA ツー
ザーに要求 するため、ユーザーはその ベン
キテクチャです」と Glaser は述べています。
ル の 機 能 を ザイリンクス 顧 客 に 提 供 する
ダーのより大 型で高価なデバイスへ の移 行
「UltraScale アーキテクチャにより、ザイ
Vivado Design Suite がすでに開発され
を強いられた上に、システムの消費電 力目
リンクスは、大容量 I/O およびメモリ帯域
ていなければ、完全には実現できなかった
標を満たすために再びクロック周波 数の低
幅、 極 めて 高 速 のパ ケット 処 理 と 最 高 速
ものです。たとえば、Vivado デザイン ツー
下を余儀なくされます。
DSP 処理、ASIC スタイルのクロッキング、
ルの先進的な配置配線機能により、ユーザー
ザイリンク スの 優 れ た 配 線 アー キ テ ク
パワー マネージメント、マルチレベル セキュ
は UltraScale の大容量データ処理能力を
チャのおかげで、ザイリンクスの 28nm プ
リティを 備 え た、20nm お よ び 16nm
フルに活用できます。これにより、設計チー
ロセス ノードにはこのような問題は起こり
FinFET の All Programmable デバイス
ムは、性能と消費電力の挑戦的な目標をク
ませんでした。このような問題は 20 nm
を提供できます。」
リ ア し な が ら、UltraScale
ノードでも発生しません。UltraScale アー
FinFET、およびそれ以降のデバイスにイン プリメントしていきます。 「UltraScale は、 ユーザーが All Programmable デバイスを
8 Xcell Journal 84 号
デバイスで
の使用率は、競合デバイスで可能な水準を はるかに超 えています。現 在、競 合 デバイ
COVER STORY
キテクチャはワイド バス向けの大容量デー
インテグレーションに加え、全体的なシステ
でのデータ転送を可能にする先進的な有線
タ フローをインプリメントでき、顧客は最
ム性能の最 大化、システムの総消費電力の
ネットワーク機器を導入するために、大規模
小レイテンシで数テラビットのスループット
削減、システムの全体的な BOM ( 部品 ) コ
な増設が求められています。従 来 のビジネ
に対応するシステムを簡単に開発できます。
ストの削減を実現できます。 「ザイリンクス
ス手法では、単に新型の高速機器を大量に
UltraScale アーキテクチャと Vivado デ
は、28nm ノードでの成 果を基 盤として、
投 入することで、この問 題に対応していた
ザイン ツールは協調最適化されているので、
20nm および FinFET 16/14nm ノードで
でしょう。しかし、ネットワーク事業者は現
カスケード接続された高度に最適化されたク
も、FPGA が単にロジック デバイスの優れ
在、よりスマートな方法でネットワークの増
リティカル パスと内蔵の高速メモリにより、
た代替手段と考えられていた時代をはるかに
設と既設ネットワークの改善を進める一方、
DSP とパケット処理のボトルネックを解消
超えて、All Programmable テクノロジの
より良い方法でコストを管理し、サービスと
できます。拡張 DSP サブシステムは、ク
価値提案を高めています」と Glaser は述べ
収益性の大幅な向上を目指しています。
リティカル パスの最適化と、固定小数点お
ています。 「ザイリンクス独自のシステム価値
たとえば、データ センター市場では、ネッ
よび IEEE-754 規格の浮動小数点演算の
は、広範囲にわたる多数のアプリケーション
トワーク使用率の最 適化とコスト削減の手
性 能 と 効 率 を 飛 躍 的 に 向 上さ せる 新し い
で明確になっています。 」
法として、ソフトウェア定義型ネットワーク
27x18 ビットの乗算器とデュアル加算器を
Glaser によると、ザイリンクスの 20nm
(SDN) に期待しています。SDN では、ネッ
組み合わせています。ワイド メモリの実装
および FinFET 16nm UltraScale アーキ
トワーク管 理 者は、クラウドと仮 想ネット
は UltraScale 3D IC にも採用されてお
テクチャを採用したデバイスは、光伝送ネッ
ワークを 利 用して、あらゆるタイプの イン
り、ダイ間帯域幅が大幅に改善され、全 体
トワーク (OTN)、ネットワーク内の高性能
ターネット接続機器にデータ アクセスを提
的性能がさらに向上しています。
コンピューティング、デジタル ビデオ、ワイ
供できます。ソフトウェア定義型ネットワー
UltraScale デバイスは I/O およびメモ
ヤレス通信など、多くの成長市場に最適です
クを実現するハードウェアには、極めて高い
リ帯域幅のさらなる機能強化を実現してお
( 図 2 を参照 )。これらの市場では、性能、
柔軟性、信頼性、高性能が必要とされます。
り、たとえば、レイテンシを劇的に短 縮化
コスト、低消費電力、大規模なインテグレー
そ のためには、プログラマビリティを強 化
し、I/O パフォーマンスを最適化する次世
ションへ の 要求の高まりに対処しなければ
し、プロセッシングとの関係を緊密 化する
代メモリ インターフェイスをサポートして
なりません。
ことが必要不可欠です。
います。また、UltraScale アーキテクチャ
ネットワーク機器メーカーが次世代のソフ
Interlaken IP コア、PCIe ® IP コアなど、
よりスマートな OTN ネットワークへの ULTRASCALE の利用
強化された複数の ASIC クラス IP コアを
OTN 市場では、現在 Smarter Network
機 器 の 寿 命を延ばそうとしています。業 界
提供します。
への移行が進んでいます。データ トラフィッ
各社は、ザイリンクスの 28nm Virtex-7
UltraScale アーキテクチャは、通常は
クの増大により、現在の 100Gbps から近
F580T 3D IC を採用した OTN スイッチ
ASIC クラスのデバイスにしか搭載されてい
い将来の 400Gbps、さらに将来は 1Tbps
にワンチップ CFP2 光モジュールを実装し、
は、10/100G
イー サ ネット IP
コ ア、
トウェア定義型ネットワークの開発に取り組 む一方、ネットワーク事 業 者は常に既存 の
ない、マルチリージョン クロッキング機能も
(12 ページへ続く )
サポートします。マルチリージョン クロッキ ングにより、極めて低いクロック スキューで 高性能、低消費電力のクロック ネットワー クをシステム内に構築できます。UltraScale アーキテクチャと Vivado デザイン ツール
UltraScale
Smarter Applications
Architecture
1 Tbps
の協調最適化により、設計チームは、ザイリ ンクスの 20nm All Programmable デバイ スの幅広い機能要素に多様なパワーゲーティ ング手法を適用し、デザインのさらなる省電 力化を実現できます。
4K/2K
最後に、 UltraScale デバイスは、 AES ビッ トストリームの復号化および認証、キー難読
Digital Video
最高のシステム セキュリティを提供します。
LTE-A
1080P
化、安全なデバイス プログラミングに対す る先進的なアプローチをサポートし、クラス
8K
100 Gbps
Massive Packet Processing
>400 Gbps wire-speed
400 Gbps OTN Networking
Requirements
Massive Data Flow >5 Tbps
Massive I/O & Memory BW >5 Tbps
Massive DSP Performance
LTE Wireless Communications
3G
>7 TMACs
さまざまな成長市場に対応 Glaser によると、UltraScale デバイス では、設 計チームはさらに高 度なシステム
図 2 – UltraScale アーキテクチャは、特に有線および無線通信における、 各種次世代システムの開発を迅速化します。
http://japan.xilinx.com/
9
COVER STORY
HOERNI 氏が開発したプレーナ プロセスから FINFET への移行 トランジスタ テクノロジの新たな時代の幕開けがザイリンクスの顧客にもたらすメリット Mike Santarini
ムーアの法則への対応 半導体業界は、常にムーアの法則に追従しようと努めています
半導体プロセス テクノロジの最新ニュースをご覧の皆様は、世界
が最 近、半 導体のさらなる進化に対する真の 物理的限界と思わ
で最も先進的な半導体工場で、16/14 ナノメートル ノード ( 総称 )
れる現象に直面しています。過去 10 年間、プロセス テクノロジ
で生産されるチップの基本的ビルディング ブロックとして「FinFET」
の専門家は、プレーナ トランジスタの電気的インテグリティの確
と呼ばれる新しいトランジスタ構造を採用したデバイスが製造され
保に苦労してきました。簡単に言えば、プレーナ トランジスタの
るという記事をご存じのことかと思います。ここでは、FinFET と
ソース、ゲート、ドレインは非常に小さく、性能への要求は非常
は何であり、どのように標準トランジスタと異なり、どのような利
に厳しいため、トランジスタ内を移動する電子を十分に制御でき
点と課題をもたらすかについてご説明しましょう。
ませんでした。デバイスをオフにしても、電子が漏れたり、ドレイ
1950 年代に Fairchild Semiconductor 社の Jean Hoerni 氏
ンに流れたりしていました。
が開発したプレーナ プロセスは、2,920 億ドルに上る現在の半導
このため、携帯電話などのバッテリ充電機器は、電源をオフにし
体ビジネスの規模を可能にした、半導体製造工程における主要な発
ていてもバッテリ切れが起こります。また AC 電源の機器 (AC コ
明の 1 つです。プレーナ プロセスでは、小型化したトランジスタ
ンセントに接続される機器 ) は、電力が浪費されて発熱します。
を実装して大規模な回路の配列として配置し、プリント回路基板上
発熱が大きく、冷却装置がない場合、漏れ電流によって生じた熱
の個別部品のように突出させるのではなく、水平プレーン上で効率
がさらに漏れ電流を増やすために、製品の寿命が短くなることが
的に相互接続することが可能です。プレーナ プロセスは、IC の極
あります。もちろん、冷却装置を使用すれば製品コストも増えます。
小化を可能にしました。プレーナ プロセスは、超高純度シリコン
漏れ電流の問題は、130nm ノードの半導体で特に目立ちました。
ウェハー上に半導体のレイヤーを作成してエッチングします。図 1a
漏れ電流が極端に大きかったこの時期には、Microsoft 社は発熱
に、シリコン基材にエッチングされてレイヤーを形成する、ソース、
が原因で Xbox 360 を世界中でリコールしなければなりませんで
ゲート、ドレインの 3 つの主な機能で構成されるプレーナ トラン
した。マイクロプロセッサ メーカーが、高速ではあるが発熱量が
ジスタ ( 基本的には精緻なオン / オフ スイッチ ) を示します。図
大きいシングル プロセッサ アーキテクチャから、より効率の低い
1b に FinFET を示します。プレーナ トランジスタのゲートがチャ
マルチコア プロセッサに移行する必要があった理由の 1 つには、
ネルの上部のみを覆っているのに対して、FinFET のゲートはチャ
漏れ電流の問題があります。
ネルの 3 面を囲んでいることに注意してください。
130nm プロセス以降、半導体業界は、さまざまな改良によっ
電子はソースからトランジスタに入ります。トランジスタのゲート
て発熱を軽減するとともに、あらゆる面でプレーナ トランジスタ
は、ゲートの電圧に応じて、照明スイッチのオンとオフの切り替え
の品質を改善し、ムーアの法則に対応してきました。90nm ノー
と同じように、ゲートの下のチャネル内で開いたり閉じたりします。
ドでは低誘電率の絶縁材料への移行によってスイッチングを改善
ゲートが信号のチャネル通過を許可すると、ドレインは回路内の次
し、65nm および 40nm ノードでは応力印加シリコンによってさ
のトランジスタに電子を移動します。理想的なトランジスタは、 「オ
らに改良を加えました。28nm ノードでは、半導体業界は high-k
ン」のときは大きな電流、 「オフ」のときはできるだけ小さな電流を
( 高 誘 電 率 ) メタル ゲートに移 行しました。ザイリンクスは、
通し、オンとオフを 1 秒当たり数十億回切り替えることができます。
TSMC 社の 28nm HPL ( 高性能、低消費電力 ) プロセスを採用
スイッチング速度は、IC の性能を決定する基本的なパラメーターで
して高性能と低消費電力の理想的な組み合わせを実現し、28nm
す。IC 設計会社は、トランジスタを回路の配列に整列させてグルー
ジオメトリで競合他社を一世代リードしました。
プ化し、これらの回路を ( プロセッサ、メモリ、論理ブロックなどの )
プレーナ トランジスタ プロセスは、high-k メタル ゲートと、
機能ブロックに整列させてグループ化します。これらの機能ブロッ
ダブル パターニングなどの 一 連の 精緻 な 製 造ステップにより、
クを整列させてグループ化すれば、現在私たちが利用している多く
20nm ノードでも実際に使用できます。20nm ノードには消費
の電子機器に搭載される驚異的な IC が作成できます。
電力と性能に関して素晴らしい利点がありますが、シリコン イン
1960 年代以来、半導体業界は、IC 内のトランジスタ数が 2
テグリティ確保のために精緻な製造工程が必要になるので、コス
年ごとに 2 倍になるというムーアの法則に従って、シリコン製造に
トは多少増加します。
多くの革新的技術を導入してきました。トランジスタ数の倍増が繰
主にカリフォルニア州立大学バークレー校の Chenming Hu
り返された結果、現在の最先端の IC は、1960 年代のチップと
教授が DARPA の委託研究として始めた優れた研究のおかげ
基本的に同じダイ サイズに数十億個のトランジスタを内蔵し、動
で、半導体業界はフィン付きの FET (FinFET) へと移行してい
作電圧 1.2V 以下で、消費電力が非常に小さく、はるかに高速に
るため、プレーナ トランジスタの利用は 20nm プロセスで最後
動作します。現在、1 つのトランジスタの幅は原子数十個分まで
になりそうです ( 少なくとも、現時点で筆者らはそのように認識
微細化されています。
しています )。
10 Xcell Journal 84 号
COVER STORY
FINFET の入力と出力
の性能にもメリットがあり、16nm または 14nm およびそれを超
現在のプレーナ トランジスタでは、電流はゲートの下のフラット
えるデバイスにきわめて有望なテクノロジと言えます。
な 2D 水平チャネルを通ってソースからドレインへ流れます。チャ
とはいえ、EDA ベンダーが新しいプロセスを採用したデバイス
ネルを通る電流は、ゲート電圧によって制御されます。新たなシリ
の特性を適切にモデル化する手法を確立する過程にあり、シグナ
コン プロセスの導入ごとにトランジスタのサイズが縮小すると、プ
ル インテグリティ、エレクトロマイグレーション、デバイス幅の量
レーナ トランジスタは「オフ」の状態で電流を十分に静止できな
子化、抵抗および静電容量を確保するために自社のツールとフロー
くなるため、漏れ電流と熱が発生します。FinFET 型 MOSFET
を補強する過程にあるので、3D トランジスタの設計と製造に必
トランジスタでは、ゲートがチャネルを 3 面で囲むため、トラン
要なコストと複雑性は、少なくとも短期的には上昇する見通しです。
ジスタが「オフ」のときに電流を静止させるゲートの静電的制御機
こうした複雑化により、ASIC および ASSP 設計のリスクとコス
能が大幅に向上します。ゲートの制御機能の向上により、設計者
トは以前よりも増大します。
は電流の大きさとスイッチング速度を引き上げ、IC の性能を向上
しかし、ザイリンクスの製品を採用すれば、ユーザーが製造プロ
できます。ゲートがフィン形のチャネルの 3 面を囲んでいるため、
セスの詳細に煩わされることはありません。ワット当たり性能の向
FinFET はしばしば 3D トランジスタと呼ばれます ( ザイリンクス
上と一世代リードするザイリンクスのデザイン フローのメリットを
がスタックド シリコン テクノロジを使用して開発した Virtex-7
活用して、新しい UltraScale アーキテクチャに基づく革新的な
2000T などの 3D IC と混同しないでください )。
製品をいち早く市場に投入できます。
(a)
(b)
3 次元トランジ スタ ( 図 1b を参照 ) では、ゲートによるチャネ ル 制 御は、従 来 の 2 次 元プ レーナ トランジスタ ( 図 1a を参 照 ) のように 1 面だけではなく、3 面 で行われます。フィンの薄型化により、また 将来はチャネルのすべての面がゲートで囲まれる 全周ゲート構造により、チャネル制御をさらに強化で きます。 半導体業界では、16nm/14nm FinFET プロセスを採用し たデバイスは、28nm プロセスで製造されたデバイスと同じ消費
図 1 – 従来の 2 次元プレーナ トランジスタ (a) と 3 次元 FinFET トランジスタ (b) では、 ゲートの位置が異なります。
電 力で性 能が 50% 向上すると考えています。言い 換えると、 FinFET デバイスは同じ性能で消費電力を 50% 削減できます。 FinFET プロセスは、容量の継続的な拡張に加えてワット当たり
http://japan.xilinx.com/
11
COVER STORY
Existing Infrastrucure 2x100G 7VX690T CFP
10x11G OTL4.10
100G GFEC
OTU4 Framer
100G Mux & Mon
100G SAR
100G InterLaken
Solution Benefits
7VX690T CFP
10x11G
OTL4.10
OTL4.10
100G GFEC
OTU4 Framer
100G Mux & Mon
100G SAR
100G InterLaken
10x12.5G
Interlaken
4x100G 4x28G
CFP
4x28G
CFP
4x28G
CFP
4x28G
5x25G
OTL4.4
Programmable System Integration 2 Devices ‡ 1 Device System Performance 2x FPGA BOM Cost +40%
Virtex UltraScale Solution CFP
UltraSCALE
10x12.5G
4x100G 4x100G OTU4 GFEC Framer
OTL4.10
FPGA Total Power +25%
5x25G
4x100G 4x100G 4x100G InterMux & SAR Laken Mon
5x25G 5x25G
Interlaken
Accelerated Productivity Hardened 4x100G MAC-to-Interlaken 2x Port Density
図 3 – UltraScale アーキテクチャは、低コストのカード交換によるアップグレードで既存 OTN 機器の性能を大幅に向上させる、 高性能で低消費電力のワンチップで複数の CFP4 モジュールを実現します。
( 9 ページから続く ) ネットワーク帯域 幅を急 速に拡張してきま
インフラストラクチャ メーカーは、1080p、
放送機器には 4K/2K および 8K ビデ
した (Xcell Journal 日本語版 79・80 合
4K/2K、および 8K ビデオ対応のテレビと
オの要件に対応した飛躍的な進化が必要で
併号のカバー ストーリーを参照、http://
ブロードキャスト インフラストラクチャ機器
すが、ブロードキャスト システムに対する
japan.xilinx.com /publications/
( カメラ、通信機器、制作機材 ) の開発を急
顧客の最 大の要求とは、おそらく柔軟性と
archives/xcell/issue79-80/xcell79-
いでいます。高 精細テレビは、予定されて
アップグレードへの対応です。ブロードキャ
80.pdf)。UltraScale アーキテクチャの
いる 4K/2K および 8K 規格に準拠するだ
スト 規 格 は 急 速 に 進 化して い ま す。 一方、
登場とともに、ザイリンクスはさらなるイン
けでなく、豊富な機能と妥当な価格を両立
これらの規格をサポートする機 器は高価で
テグレーションとイノベーションを可能にす
させる必要があります。この市場は極めて競
あり、簡 単 に 交 換 することはで きません。
るデバイスを提供します。これらのデバイス
争が激しいため、使用するデバイスは、刻々
その 結果、放 送事 業 者は、よりスマートな
を使用して、複数の CFP4 光モジュールを
と変化する規格に迅 速に適 応し、メーカー
購買戦略を採用し、耐用年数とアップグレー
駆 動で きるシステムを 開 発し、データ ス
が自社のテレビを差 別化できるものでなけ
ド へ の 対 応 を 最 上 位の 要 件 に 挙 げ て いま
ループットをさらに大きく向上させることが
ればなりません。1080p から 4K/2K、さ
す。したがって、All Programmable デバ
できます ( 図 3 を参照 )。
らに 8K への移行とともに、画面解像度と
イスを搭載した機器は、野球中継用のカメ
画質が大幅に向上していく一方で、テレビの
ラから調整 室の制作 機材、リビングルーム
購入者はますます薄型のモデルを求めるよ
のテレビに至るまで、次 世代ブロードキャ
うになります。つまり、新しいテレビの設計
スト市 場 のあらゆる分 野 で必須アイテムと
には、消費者市場で要求される高性能、低
なります。
デジタル ビデオもまた、大きな成長に直
消費電力、BOM ( 部品 ) コストの要件への
図 4 に示すように、プロ向けおよび「プ
面している市場と言えます。HDTV メーカー
対応と同時に、さらに高度なインテグレー
ロシューマー」向けカメラ メーカーは、ミッ
と HDTV をサポートするブロードキャスト
ションが求められます。
ドレンジの Kintex ® UltraScale デバイス
よりスマートなデジタル ビデオ およびブロードキャストへの ULTRASCALE の利用
12 Xcell Journal 84 号
COVER STORY
を使用して、コスト、サイズ、重量を劇的に
チャ コストは、( 特に競合他社が費用対効
実際に使 用できる C-RAN アーキテク
削減しながら、4K/2K および 8K 対応の
果に優れたプランで顧客を奪おうとしてい
チャの開発には、高速 I/O と並列処理およ
先進機能を備えた新しいカメラを迅速に市
る状況においては ) 収益性の低下につなが
び直列処理を統合した、高度な柔軟性を備
場に投入できます。
ります。無線通信事業者は、固定回線事業
えた精緻なシステムオンチップ (SoC) が必
者と同じように、よりスマートなビジネス手
要です。ザイリンクスの UltraScale FPGA
法と革新的なネットワーク アーキテクチャ
および SoC は、この分野で重要な役割を
よりスマートなワイヤレス通信への ULTRASCALE の利用
を探し求めています。
果たします。
エレクトロニクス業界で最も急速に成長し
このようなアーキテクチャの 1 つは、ク
ザイリンクスは、Kintex および Virtex
ている市場は、疑いなくモバイル 通 信の 分
ラウド無線アクセス ネットワーク (C-RAN)
All Programmable FPGA、3D IC、
野です。過去 10 年間でモバイル機器の利
と呼ばれています。C-RAN では、通信事
Zy nq A ll P rogrammable S o C の
用は 10 倍に増加し、今後 10 年でさらな
業者は通常なら複数の基地局に関連付けら
UltraScale 20nm バージョンを製造して
る飛躍的な成長が予想されています。通信
れるベースバンド処理リソースをすべてプー
います。またザイリンクスは、TSMC 社の
事 業者は、競 争の激化に直 面して、サービ
ルし、 「クラウド内で」ベースバンド処理を
「FinFET 16」テクノロジを採用した Virtex
ス プランで顧客を獲得する方策を競い合っ
実 行できます。通信事 業者は、生のスポー
UltraScale デバイスの開発を進めています
ています。無線通信範囲とネットワーク パ
ツ イベントが開催されている付近など、需
(10 ページの補足記事を参照 )。ザイリンク
フォーマンスが主な差別化要因となるため、
要の大きいエリアにリソースを自動的に移動
スの UltraScale アーキテクチャの詳細は、
通信事業者は、大 量のデータをすばやく伝
し、観衆の混雑が解消されたら、処理リソー
ザイリンクスの UltraScale のホームページ
送できる高速ネットワーク機器を常に探し求
スをほかのエリアに再配置できます。その結
をご覧になり、背景説明資料 http://japan.
めています。 もちろん、 高性能な基地局を次々
果、顧客にはサービス品質の向上、通信事
xilinx.com/publications/prod_mktg/
と購入していくことも可能ですが、多数の機
業者には設備投資と運用コストの削減が可
Xilinx-UltraScale-Backgrounder_j.pdf を
器 の増 設と保 守に必要なインフラストラク
能となり、収益性が向上します。
お読みください。
Existing Infrastrucure Virtex-7 X485T
Image Processing LVDS Image Sensor
Virtex-7 X485T
Video Processing Virtex-7 X485T
Connectivity
CPU
DDR2 / DDR3
UltraSCALE DDR2 / DDR3
HD-SDI 3G-SDI
Solution Benefits Programmable System Integration 4 Devices ‡ 2 Devices System Performance +30%
Kintex UltraScale Solution Serial Interface Image Sensor CPU
Image Processing, Video Processing and Connectivity
FPGA BOM Cost +40% DDR4
FPGA Total Power -50%
DDR4
Accelerated Productivity Vivado High-Level Synthesis Hardened PCIe Gen3
10G-SDI 12G-SDI 10G VoIP
図 4 – UltraScale アーキテクチャにより、プロ向けおよびコンシューマー向けカメラ メーカーは、8K カメラの 市場投入の迅速化と、消費電力の削減、軽量化、性能の向上、BOM コストの削減が期待できます。
http://japan.xilinx.com/
13
XC E L L E NCE I N NETW ORKING
Efficient Bitcoin Miner System Implemented on Zynq SoC
Zynq SoCで効率的なビットコイン
マイナー システムを実現
14 Xcell Journal 84 号
XCELLENCE IN NETWORKING
Alexander Standridge MSc Candidate California State University, Northridge astandridge@gmail.com Calvin Ho MSc Candidate California State University, Northridge calvin.ho.67@my.csun.edu Shahnam Mirzaei Assistant Professor California State University, Northridge shahnam.mirzaei@csun.edu
プログラマブル ロジックとプロセッサ サブシステムをワンチップに統合した
Zynq SoC を使用して、
適応性の高い低コストのビットコイン マイナーを開発できます。
Ramin Roosta Professor California State University, Northridge ramin.roosta@csun.edu ビットコインは、この数年間で急速に普及した仮想通貨です。ビット コインの支持者たちは、 保有資産の一部をビットコインの購入または 「マ イニング ( 採掘 )」のいずれかに投資することによって、この通貨を支 持しています。マイニングとは、コンピューター ハードウェアを使用し てビットコイン ネットワーク用の数値演算を実行するプロセスです。 ビットコイン マイナーは、提供するサービスの見返りとして、一時払い の報酬 ( 現在は 25 ビットコイン ) と取引手数料を受け取ります。ネッ トワークからの報酬は、すべてのマイナーがどれだけ多くの計算を実 行したかに従って分配されるため、マイニングは極めて競争の激しい 分野と言えます。 ビットコイン マイニングは、当初は CPU と GPU などの費用対効 果の低いハードウェア上のソフトウェア プロセスとして実行されてい ました。しかし、ビットコインの普及につれて、マイニング プロセスは 劇的に変化しました。初期のマイナーが適正なハッシュ レート ( ビッ トコインの採掘レート ) を得るには、大量の電力を消費するプロセッ サに投資する必要がありました。CPU/GPU によるマイニングは非常 に非効率的ですが、ビットコイン プロトコルの変更に適応できるだけ の柔軟性を備えています。過去数年のうちに、マイニング処理は、最 適 化された 効率的なハッシュ レートをもたらす専用または半 専用 ASIC ハードウェアへと徐々に移行しました。専用ハードウェアへの移 行により、マイニングの効率は大きく向上しましたが、その代償として、 マイニング プロトコルの変更に適応する柔軟性は低下しました。 ASIC は、特定のアプリケーションに採用されて特定の指定された タスクを効率的に実行する専用ハードウェアです。したがって、ASIC を採用したビットコイン マイナーは、比較的低価格で高いハッシュ レートが得られますが、プロトコルの変更に柔軟に対応できないとい う欠点があります。 FPGA を採用したマイナーは、ASIC と同じように効率的で、比較 的低価格です。しかも、FPGA は ASIC よりも柔軟性に優れ、ビット コイン プロトコルの変更に対応できます。現在の課題は、PC ホスト やリレー デバイスに依存せずにビットコイン ネットワークに接続でき る、極めて高い効率性と適度の柔軟性を備えたマイニング システムを 設計することです。筆者らのチームは、ザイリンクス ® Zynq® -7000 All Programmable SoC を使用してこの課題に取り組みました。
http://japan.xilinx.com/
15
XCELLENCE IN NETWORKING
全体的な構想
べて処理する最適化されたカーネルが必要
させることができます。また、ZedBoard は
筆者らの目標は、効率性と柔軟性を兼ね
でした。これらの条件をすべて満たすハード
大容量ストレージ用の SD カード スロットを
備えた、実用的なビットコイン ノードとマイ
ウェアとして、Zynq-7020 SoC を搭載し
搭載しており、更新されたビットコイン プロ
ナーを含む完全なマイニング システムを実
た ZedBoard 開発ボードが選ばれました。
グラム全体を保存できます。
現することです。そのためには、柔軟性だけ
ZedBoard の価格は約 300 ドル~ 400
筆者らは ZedBoard を使用して SoC ビッ
でなく高性能を提供する強力な FPGA チッ
ドルで、このクラスではかなり低 価 格です
トコイン マイナーをインプリメントしました。
プが必要でした。また FPGA 以外に、効率
(http://www.zedboard.org/buy を参照 )。
図 1 に示すように、このシステムは、ホスト、
を高めるためのプロセッシング エンジンも
Zynq-7020 SoC チップは、2 個の ARM®
リレー、ドライバー、マイナーで構成されます。
必要でした。
Cortex ™ -A9 プロセッサと 85,000 個の
ビットコイン ネットワークと相互作用するホ
この完全なシステムオンチップ (SoC) 上
Artix® -7
FPGA ロジック セルを搭載してい
ストには、オリジナルのビットコイン クライ
には、ネットワークの保守やトランザクショ
ます。また ZedBoard は 512MB の DDR3
アントの GUI 非搭載版 (Bitcoind) を使用し
ンの処理など、必要なビットコイン活動をす
メモリを搭載し、SoC デザインを高速で動作
ました。リレーはドライバーを使用してホスト
#define ROTR(x,n) ( (x >> n) | (x << (32 - n))) // Logic operations Bitcoin Network
#define #define #define #define
s0(x) s1(x) s2(a) s3(e)
(ROTR(x,7) ^ ROTR(x,18) ^ (x >> 3)) (ROTR(x,17) ^ ROTR(x,19) ^ (x >> 10)) (ROTR(a,2) ^ ROTR(a,13) ^ ROTR(a,22)) (ROTR(e,6) ^ ROTR(e,11) ^ ROTR(e,25))
#define w(a,b,c,d) (s1(d) + c + s0(b) + a) Bitcoind (Host)
#define maj(x,y,z) ((x&y)^(x&z)^(y&z)) #define ch(x,y,z) ((x&y)^((~x)&z)) #define t1(e,f,g,h,k,w) (h + s3(e) + ch(e,f,g) + k + w) #define t2(a,b,c) (s2(a) + maj(a,b,c))
Relay
Driver
Miner
SOC Miner
図 1 – 各コンポーネントとビットコイン ネットワークの関係を示す、マイナーの 基本的データ フロー
for( i = 0; i < 64; i++){ // loop 64 times if( i > 15) { W[i] = w(W[i-16],W[i-15],W[i-7],W[i2]); // Temp values } unsigned int temp1 = t1(e,f,g,h,K[i],W[i]); unsigned int temp2 = t2(a,b,c); h = g; // Round results g = f; f = e; e = d + temp1; d = c; c = b; b = a; a = temp1 + temp2; } 図 2 – Vivado HLS による SHA-256 プロセスのインプリメンテーション
16 Xcell Journal 84 号
XCELLENCE IN NETWORKING
果を保持し、プロセスが 完了すると、これ らのレジスタが連結されてハッシュ値を生成
80-Byte Input
Header
します。入力データが 63 バイト未満の場 合は、63 バイトまで埋められ、64 バイト 目を使 用して入 力データの長さを格 納しま
SHA-256 Process
SHA-256 Process
す。一般的には、入力データの長さは 63 バイトを超えます。この場合、データは直近
32 Bytes
の 64 の倍数まで埋められ、最後のバイト
32 Bytes
はデータ長のために予約されます。それぞれ
SHA-256 Process Comparator
の 64 バイト チャンクに対して、順番に SHA-256 プロセスが実行されます。直前
32 Bytes
1 Bit
のチャンクの出力 ( 中間 状 態と呼ばれる ) が、次のチャンクの基礎として使用されます。
Comparator A
1 Bit
Vivado HLS による SHA-256 プロセス
B
のインプリメンテーションは、図 2 に示す ように、各ラウンドで要求される定数を保持 する配列、後のラウンドで使 用される一時 的な値を保持する追 加の配列、各ラウンド
64-Byte Input
80-Byte Input
の結果を保持する 8 つの変数、論理演算の 定義で構成される簡単な「for」ループです。
SHA-256 Process 16 bytes +Padding
Midstate
も簡単な形では、SHA-256 プロセスとコ
32 Bytes Midstate
ンパレータに要約されます。図 3A に示すよ
32 Bytes
うに、SHA- 256 プロセスは、ブロック ヘッ
SHA-256 Process Padding
32 Bytes Padding
ビットコイン マイニングのプロセスは、最
SHA-256 Process
SHA-256 Process
ダー情報を 2 回操作し、ビットコイン ネッ
SHA-256 Process
トワークの拡張されたターゲット難易度と 比 較します。この 考え方は単 純ですが、最
32 Bytes
初のバージョンのビットコイン ブロック ヘッ
32 Bytes
SHA-256 Process
ウェア内では 複 雑になります。つまり、図 3B に示すように、最初のパスでは SHA-
C
1 Bit
ダーの長さは 80 バイトであるため、ハード
Comparator 1 Bit
D
256 プロセスを 2 回実行する必要があり ますが、2 番目のパスでは 1 回実行するだ けで済みます。筆者らは、できるだけ SHA256 モジュールの汎用性を維持し、開発時
図 3 – A ( 左上 ) は最も簡単な形式のコアで、一般的なフローを示しています。B では、 単一の汎用 SHA-256 プロセス モジュールを、各フェーズ用の 2 つの専用モジュー ルに分割しています。C では、特定の SHA-256 プロセスを、繰り返し使用できる 単一の汎用モジュールに分解しています。D では、ブロック ヘッダー情報内の クワークを利用して、最初の汎用 SHA-256 プロセスを除去しています。
間 の 短 縮と再 利 用を可能にしたい ので、2 つの個別の SHA-256 モジュールを定義す るこの二重のパスはその状 況を複雑にして います。SHA-256 モジュールに対するこ の汎 用性の要件によって、筆者らの入 力と 出力が定義され、32 バイトの初期値、64
からマイナーへ作業内容を渡します。
複数のプロトタイプ マイニング コアを迅速
バイトのデータ、32 バイトのハッシュ値と
に定義しました。ここで、マイニング コア構
して設定されます。したがって、SHA-256
マイニング コアの詳細
造の詳細を説明する前に、SHA-256 プロ
プロセスの中心的機能を独 立させることに
筆者らは、米国商務省の SHA-256 仕
セスの基本を見てみましょう。
より、これらの入力を操作して、希望する任
様に基づいて、Vivado ®
HLS ( 高位合成 )
SHA-256 プロセスは、64 バイトをプッ
意のレイアウトに対応できます。
を使用してマイニング コアの開発を始めま
シュし、ビットごとの シフト、加 算、XOR
筆者らが開発した 3 つのプロトタイプの
した。Vivado HLS の高速ビヘイビアー テ
を 64 回繰り返して 32 バイトのハッシュ
うち最初のものでは、単一の SHA-256 プ
スト機能を使用して、簡単なシングルプロセ
値を生 成します。このプロセスの 途中では
ロセス モジュールを使用しました。このコ
スから複雑なマルチプロセス システムまで、
8 個の 4 バイト レジスタが各ラウンドの結
アにはパイプラインがないため、3 つのうち
http://japan.xilinx.com/
17
XCELLENCE IN NETWORKING
頭のゼロの数は増えます。この記事の執筆
4
時点では、拡張されたターゲット難易度の 最初の 13 バイトはゼロでした。したがっ て、ハッシュ値全体とターゲット難易度を比
3.5
較する代わりに、最初の x 個のバイトがゼ ロかどうかを確認することにします。最初の
3
x バイトがゼロの場合は、ハッシュ値とター
Worker Speed (MHps)
ゲット難易度を比 較します。ゼロでない 場 合は、ハッシュ値を廃棄してもう一度やり直
2.5
します。 筆者らは、各プロトタイプの結果を検討し、 ビットコイン オープンソース コミュニティが
2
ザイリンクスの FPGA 専用に開発した 3 番 目のコアのバージョンに決定しました。
1.5
ISE Design Suite による開発 ビットコイン マイニングは、解を与える 0
1
~ 232-1 の範囲内の数を見つける競争で す。したがって、マイニング コアのパフォー
0.5
マンスを向上させる方法は、処理の高速化 と分割統治法 (divide-and-conquer) の 2
0
つしかありません。筆者らは、Spartan® -3 00:00
12:00
00:00
12:00
00:00
12:00
00:00
12:00
および Spartan-6 開発ボードを使用して、 さまざまな周波 数、パイプライン手法、並
図 4 – 4 日間のコア最適化テスト期間中のマイニング コアのハッシュ レート。グラフは 時間の経過に伴う平均値であり、マイニング コアのパフォーマンスの概要を示します。 性能の低下は、テスト プラットフォームの配線の限界に達したことが原因です。
列化のテストを行いました。 周波数テストでは、最初に Spartan-3E 開発ボードを使用しました。しかし、周波数 が 50MHz を超えると何もできないことが すぐに明らかになったため、周波数テスト用
最も低速であることは最初からわかっていま
ニング コミュニティが使用しているマイニ
のボードを Spartan-6 に変更しました。
したが、SHA-256 プロセスをどこまでコ
ング プロセスを利用します。ブロック ヘッ
Spartan-6 開 発 ボード上で 50MHz、
ンパクトにできるかを確認するためにテスト
ダー情報は、ブロックが変更されたときに
100MHz、150MHz のテストを行った結
を行いました。
最初の 64 バイトだけが変化するように定
果、 予 測 可 能 な 結 果 が 得 ら れ、 そ れぞ れ
第 2 のプロトタイプには、図 3C に示す
義されます。つまり、前半 64 バイトの処
0.8MHps、 1.6MHps、 2.4MHps ( メガハッ
ように、チェーン接続された 3 つの個別の
理が完了したら、出力データ ( 中間状態 )
シュ パー セカンド ) を達成しました。並列
SHA-256 プロセス モジュールが含まれま
を保存し、ヘッダーの後半 16 バイトだけ
化テストとパイプライン テストでは 75MHz
す。この構成により、静的入力が可能になり、
を処理すればよいので、ハッシュ レートが
と 125MHz も試しましたが、これらの周波
最初のプロセスでは、ヘッダー 情 報の最初
大幅に向上します ( 図 3D を参照 )。
数は Spartan-6 上でマイナーの動作確認を
の 64 バイトを処理します。2 番目のプロ
コンパレータは重要なコンポーネントで
することだけに使用しました。
セスは、ヘッダーの残り 16 バイトと必要な
あり、適切に設計されたコンパレータはパ
筆者らがオープンソース コミュニティのマ
パディング 48 バイトを処理します。3 番目
フォーマンスを大幅に向上させます。解は、
イニング コアを選んだ理由の 1 つは、この
のプロセスは、最初の 2 つのプロセスから
ビットコイン システムによって定義された
コアがパイプライン段 数を制御する深さ変
得られるハッシュ値を処理します。これらの
32 バイトの拡張されたターゲット難易度
数を使用して設計されていたことです。深さ
3 つの個別プロセスにより、制御ロジック
より小さい数値を持つハッシュです。つま
は 0 ~ 6 の指数値で、 VHDL の「generate」
が簡略 化され、簡単なパイプライン処理が
り、生 成する各ハッシュ値を比 較して、解
コマンドの実行を 2 の何乗回繰り返すか
可能になりました。
が見つかるかどうかわかるまで待つ必要が
( すなわち、20 ~ 26 ) を制御します。筆者
最後の第 3 のプロトタイプは、2 つの
あります。拡張されたターゲット難易度を
らは、深さを 0 にして ( すなわち、各プロ
SHA-256 プロセス モジュールを使用しま
備えたクワークのために、難易度に関係な
セスにつき 1 ラウンドをインプリメント )、
す。このプロトタイプは、ビットコイン ヘッ
く最初の 4 バイトが常にゼロになります。
最初の周波数テストを実行しました。
ダー情報内のクワークと、ビットコイン マイ
ネットワークの難易度が増すにつれて、先
Spartan-3E 上では、タイミング制約の
18 Xcell Journal 84 号
XCELLENCE IN NETWORKING
1 つのセットは、2 つの SHA-256 プロ セス モジュールで構成されます。この変更 によって、各セットで可能な数値の範囲は、 SHA-256 セットの数が 2 倍の場合は実
SD Card
質的に 2 分の 1 になり、セットの数が 4 倍の場合は 4
分の 1
に な り ま す。
Spartan-6 で SHA プロセスの増加分を 処 理するには、システム周波 数を下げる必 要がありました。4 セットの SHA-256 プ
Ethernet
ロセス モジュールは 75MHz で動作し、2 セットのモジュールは 125MHz で動作し ます。ハッシュ レートの向上を書面にする ことは簡単ではありません。個々の SHA-
ARM Cortex-A9
256 セットのハッシュ レートは簡単に確認
Mining Core
できますが、複数セットのマイニング コア は計算上のハッシュ レートよりも高速に解
ARM Cortex-A9
を見つけられるはずです。
EDK ( エンベデッド開発キット) の使用 FPGA テストの後、次の手順として、マイ ニング コアを Zynq SoC の AXI4 バスに
DDR3 RAM
接続しました。ザイリンクスのエンベデッド 開発キット (EDK) には Zynq SoC 専用に 設計されたコンフィギュレーション ユーティ リティが付属しているので、すべての要素を
Processor Subsystem (PS)
Programmable Logic (PL) AXI4 Bus
簡単にコンフィギュレーションできます。デ フ ォルトで は、 シ ス テム は 512MB
の
DDR3、イーサネット、USB と SD インター フェイスをイネーブルにした状態で構成され ま す が、 こ れ に は 筆 者 ら の ビットコ イン SoC に必要なコンポーネントがすべて含ま
図 5 – 比較的新しい AXI4 インターフェイスは、ZedBoard のハード ペリフェラルと ARM プロセッサおよび Artix FPGA ロジックを接続します。
れています。 2 個の Cortex-A9 プロセッサは、以前 のソフトコア システムで 使 用さ れて い た PLB システムの代わりに、AXI4 インター
問題が発生する前に深さ 0 および 1 をテ
SHA-256 プロセス モジュールは、10
フェイスを搭載しています。図 5 に示すよ
ストしました。周波数 50MHz で深さを 0
種類の 32 ビット加算を備えています。こ
うに、すべてのペリフェラルは、AXI4 イン
にすると約 0.8MHps が得られ、深さ 1
のインプリメンテーションでは、これらの加
ターフェイスを介してプロセッサに接続され
では約 1.6MHps を達成しました。
算をすべて 1 クロック サイクルで実行させ
ます。
Spartan-6 上では、タイミング制約の問
ます。筆者らは、最も長いパスを短 縮する
EDK カスタム ペリフェラル ウィザード
題が発生するまでに深さ 3 まで到達しまし
ために、加算 器チェーンを一 連の 複 数段に
は、各種の AXI4 インターフェイス向けの
た。周波数 50MHz では、Spartan-6 は
分割しようとしました。しかし、これを行う
コード スタブを提供し、マイニング コアの
深さ 0 および 1 で Spartan-3 と同じ結
と、マイニング コア全体の制御ロジックが
AXI インターフェイスの開発基盤となりま
果が 得られました。ここで筆者らは興味 深
根本的に変わり、全体の書き直しが必要に
す。筆者らは、システムを簡素化するために、
い傾向に気付きました。周波数を 2 倍にす
なりました。そこで、これらの変更を断念し、
簡単な読み出しおよび書き込み機能をマイ
ると、パイプライン段数を 1 段増やすのと
時間と労力を節約することにしました。
ニング コアに提供する AXI4- Lite イン
同じ効果が得られました。上限は利用可能
最後に行ったテストでは、並列 化による
ターフェイスを使用しました。開発者は、通
な配線リソースによって設定され、図 4 に
パフォーマンスの向上を検証しました。筆者
常の AXI4 インターフェイスを使 用して、
示すように、ピークは平均で約 3.8MHps
らは、わず かな 変 更 に よって SHA-256
データ バーストなどの高度なインターフェイ
になります。
セットの数を 2 倍および 4 倍にしました。
ス制御を利用するのが理想的です。
http://japan.xilinx.com/
19
XCELLENCE IN NETWORKING
システムの簡素化という目標に沿って、3
最初の作業は、Bitcoind を Cortex-A9
はセルフテストの結果をチェックするだけな
個のメモリ マップド レジスタを使用してマ
アーキテクチャ用にコンパイルすることでし
ので、close 関数では何もすることはありま
イニング コアの I/O を処理しました。最初
た。オリジナルのオープンソース Bitcoin
せ ん。read 関 数 はデ ー タ バッファー を
のレジスタは、ホスト データ パケットをマ
ソフトウェアを使用して、ビットコイン ネッ
チェックして、ユーザーがどのポートを読み
イナーに供給します。このレジスタは、渡さ
トワークとの互換性を確保しました。
出しているかを確認し、マイニング コアから
れたデータの量を監視し、11 ワードが転送
Bitcoind のテストは簡単でした。筆者ら
デ ー タを 取 得して プ ロ セッサ に 戻しま す。
された後にロックされます。解が見つかると、
はデーモンを実行して、 大きなブロック チェー
write 関数は、ユーザーがどのレジスタに書
ロックは自動的に解除されます。また、必要
ンがダウンロードされるのを待ち、ライン コ
き込んでいるかを確認し、データをマイニン
に応じて、ステータス レジスタを介してロッ
マンドを使用して Bitcoind の内蔵 CPU マ
グ コアに渡します。
クを手動で解除できます。
イニング ソフトウェアを起動しました。
システムの最後のコンポーネントは、ドラ
2 番目のレジスタは、マイニング コアが
Linux ドライバーについては、特定の関
イバーを介して Bitcoind からマイニング コ
通過するさまざまな状態に応じて特定のビッ
数をいくつかインプリメントし、正しく動作
アに作業を渡して結果を戻す、小さなリレー
トにフラグを立てる、ステータス レジスタ
するように Linux カーネルにリンクする必
プログラムです。言うまでもなく、このリレー
として定義されました。デザインを簡素に保
要があります。ドライバーがロードされると、
プログラムは、Bitcoind が動作しているか、
つために、ロード済みフラグ、実行中フラグ、
特定の初期化関数が実行され、システムと
またマイニング コアの準備が完了して正常
解の発見フラグの 3 つのフラグだけを使用
ハードウェアの相互作用を準備します。この
に機能しているかをチェックします。リレー
しました。ロード済みフラグは、上記のよう
関数では、まずマイニング コアが接続され
プログラムは通常はほとんどの時間アイドル
に、マイニング コアが 11 ワードを受け取っ
るメモリ アドレスが利用可能であることを
状態になるため、筆者らは統計情報編集サ
たときにトリガーされ、レジスタへの書き込
確認し、そのアドレスを予約します。ベアボー
ブシステムをインプリメントし、データを収
みによってクリアされます。スタート / 実行
ン システムとは異なり、Linux は仮想メモ
集してログファイルに整理する予定です。コ
中フラグは、筆者らによってセットされ、マ
リ アドレス方式を使用します。つまり、予
ンフィギュレーション、統計情報の表示、デ
イニング コアを起動します。このフラグは、
約アドレスを使用する前に、マイニング コア
バイス ステータス用の Web ホスト イン
解が見つかったときにマイニング コアによっ
用にアドレスの再マッピングを要求する必要
ターフェイスを使用するのが理想的です。
てクリアされます。最後のレジスタは出力レ
があります。カーネルは再マッピングによっ
ジスタで、解が見つかったときにその解が格
て仮想アドレスを提供します。このアドレス
効率的で完全なマイニング システム
納されます。
は、マイニング コアのレジスタとの通信に
効率的で完全なビットコイン マイニング
筆 者らは、次のコンポーネントを 追 加す
使用できます。
システムを実現するために筆者らが選んだソ
る前に、AXI4-Lite インターフェイスの各
これでハードウェアにアクセスできるので、
リューションは、ZedBoard 上のザイリンク
開発 段 階でテストを行いました。また、ベ
初期化関数はマイニング コア上で簡単なテ
ス Zynq-7000 All Programmable SoC
アボーン システムを使用して、ザイリンクス
ストを実行し、コアが正常に動作しているこ
です。このボードはビットコイン プロトコル
のソフトウェア開発キット内でも AXI4-Lite
とを確認します。コアが正常に動作していれ
の変更に柔軟に適応し、高性能 FPGA ソ
インターフェイスをテストしました。このテス
ば、( ユーザー プログラム内でデバイスの特
リューションと SoC 機能を提供します。適
トには次の 2 つの目的がありました。1 つ
定に使用される ) メジャー番号とマイナー番
応性を損なわずに現在のデザインを改善す
はマイニング コアの AXI4-Lite インター
号をカーネルに登録します。すべて関数には
る方策として、メイン ビットコイン ノードに
フェイスが正常に動作していることの確認、
対になる関数があり、exit 関数は初期化関
接続されるマイニング コアの数を増やすこ
もう 1 つはマイニング コアが適切なエン
数と対になる関数です。exit 関数では、初
とができます。コアを追加すれば、パフォー
ディアン形式でデータを受信していることの
期化の際に実行されたすべての操作を取り
マンスが大幅に向上し、全 体的なハッシュ
確認です。
消します。具体的には、ドライバーによって
レートが向上するはずです。
使用されるメジャー番号とマイナー番号を解
このデザインをさらに最適化するもう 1
エンベデッド LINUX
放し、マッピングされた仮想アドレスを解放
つの手段は、専用のファームウェアを使用す
マイニング コアをプロセッサに接続した
します。
ることで す。 現 在 の デ ザイン は Ubuntu
後、ソフトウェア開発に移行しました。独自
リレー プログラムから初めてマイニング
Linux 12.04 を搭載していますが、この製
のファームウェアと Linux コアを構築してパ
コアを呼び出すときは、open 関数が実行
品 は、ビットコ イン プ ログラムと同 時 に
フォーマンスを最 大限に高めるのが理想的
されます。open 関数では、初期化関数で
SSH などの多くの不要なプロセスを実行し
でしたが、開発を容 易にするために、完 全
実行されたセルフテストが成功したことを確
ています。ビットコインの実行中にこれらの
な Linux インストレーションを利用しまし
認 するだけで す。セ ルフテストがエラーに
プロセスを動 作させることは、ボードのリ
た。ここでは、Xillybus 社が開発した、迅
なった場合は、システム エラー メッセージ
ソースの浪費をもたらします。将来のビルド
速 な エンベデッド システム 開 発に役 立つ
を出力して終了します。デバイスがリレー プ
では、ビットコイン タスク専用のカスタム
Ubuntu の派生製品である Xillinux を使用
ログラムから解放されるときは、close 関
ファームウェアを搭載し、これらのプロセス
しました。
数が呼び出されます。ただし、open 関数で
を排除する予定です。
20 Xcell Journal 84 号
ウェブセミナー Web Seminar All Programmable FPGA、SoC、3D IC の世界的なリーディング プロバイダーの ザイリンクスが提供するプログラマブル ロジックからプログラマブル システム インテグレーションのさまざまな機能と活用方法をご紹介します。 コストを抑え、最大のパフォーマンスを実現するための最新情報を手に入れてください。
ニーズに合わせたプログラムを各種取り揃えて好評配信中 !!
New!! 新セミナー登場
Zynq SoC を使用した
最先端 エンベデッド システムの設計 ∼アクセレータでのソフトウェア ボトルネックの解消方法∼
FPGA 入門編
FPGA をこれから始める方に FPGA の全体概要を解説した入門編と、ものづくりにチャレンジする経営者、 技術管理者の方へなぜ今 FPGA /CPLD なのかをご説明します。
30分で判る! FPGA入門
15分で判る! FPGA採用理由
ザイリンクス FPGA を使った最先端デザインの設計手法や、さまざまなアプリケーション設計に求められる デザイン チャレンジに対するソリューションをご紹介・解説します。
システムレベル セキュリティの強化: All Programmable SoC で OS を超える
FPGA 活用編
Zynq-7000 All Programmable SoC での C コードから コプロセッシング アクセラレーター ザイリンクス シリアル デザイン ソリューション
7 シリーズ ターゲット デザイン プラットフォーム プログラマブルデバイスである FPGA の設計には開発ツールがキーになります。ザイリンクスが提供する ユーザー フレンドリーな開発ツールの特徴や使い方、先端設計メソドロジについて解説します。
開発ツール編
次世代FPGA設計手法セミナー PlanAhead デザイン解析ツール ∼ 第1部、第2部、第3部、デモ ∼
AMBA AXI4 テクニカルセミナー FPGA の世界トップシェアを誇るザイリンクスが提案するソリューションや、ザイリンクスの最先端 FPGA の 詳細を解説します。
FPGA/SoC 概要編
Zynq-7000 SoC アーキテクチャとエコシステム
28nm ザイリンクス 7 シリーズ FPGA のアジャイル ミックスド シグナル テクノロジ
セミナー内容の詳細/ご視聴は今すぐこちらから
http://japan.xilinx.com/webseminar/
XP E R I M ENT
XRadio: A Rockin' FPGA-only Radio for Teaching System Design
XRadio :
システム デザイン教育用の 楽しい FPGA ラジオ ザイリンクス Spartan-6 デバイスと 少ないペリフェラル コンポーネントで、 学生や初心者向けの 魅力的なデモ プラットフォームを 簡単に作成
22 Xcell Journal 84 号
XPERIMENT
Qiongzhi Wu Lecturer Beijing Institute of Technology wqz_bit@bit.edu.cn Xingran Yang MS Student Beijing Institute of Technology 2120120784@bit.edu.cn
先頃、北京理工大学電気工学部において、筆者らは通信および 信号処理分野での FPGA の実用的な使い方を示すデジタル デザ イン教育用プラットフォームの開発に着手しました。学生たちがデ ジタル デザインのすべての要素を理解できるように、このプラット フォームは直感的で使いやすいものでなければなりませんでした。 また、学生たちが独自のシステム デザインを簡単にカスタマイズ できできなければなりませんでした。 ちょうどその頃、筆者らは FPGA の I/O ピンをコンパレータ または 1 ビット A/D コンバーターとして直接使用する可能性に ついて活発に議論していました。そこで、XRadio プラットフォー ムのデザインにこの FPGA ベースのコンパレータを組み込むこと により、この理論を検証することにしました。XRadio は、筆者ら が低コストのザイリンクス Spartan ® -6 FPGA と少数の汎用ペ リフェラル コンポーネントを使用して設計した完全デジタル型の FM ラジオです。ザイリンクス ユニバーシティ プログラム (XUP) のディレクターである Patrick Lysaght 氏が昨年北京理工大学 を訪問した際に、筆者らは Lysaght 氏の前で実際に動作してい るラジオのデモを行いました。Lysaght 氏はそのデザインのシン プルさに驚嘆し、XRadio の事例を世界の学究現場に公開するよ うに勧めてくれました。
システム アーキテクチャ
図 1 に示すように、XRadio プラットフォームはほぼ完全に FPGA 内で構築され、アンプやディスクリート フィルターなどの 従来のアナログ部品を使用していません。まず始めに、FPGA の I/O ピンに接続されたワイヤに簡単なカップリング回路を接続し、 基 本的なアンテナを作成しました。このアンテナは RF 信号を FPGA に 送信し、FPGA は FM レシーバーの信号処理 ( デジタ ル ダウンコンバージョンと周波数復調 ) を実行します。次に、I/O ピンを介してヘッドフォンにオーディオ信号を出力しました。また、 XRadio のチューニングと音量調節用の機械式ロータリー インク リメンタル エンコーダーを追加しました。そして、チューニングと 音量の情報が 7 セグメント LED モジュール上に表示されるよう にシステムを設計しました。 図 2 に、FPGA の概要レベルのロジック図を示します。このデ ザインでは、FPGA の入力バッファーにカップリングされる RF 信号は、1 ビット デジタル信号として量子化されます。量子化さ
http://japan.xilinx.com/
23
XPERIMENT
ンタル エンコーダーからパルス信号を受信 し、NCO の出力周波数と、PWM モジュー ルによって制御される音量を調整します。
インプリメンテーションの詳細 まず解決する必要があったのは、アンテ
LED Module
ナからの信号をどのように FPGA にカップ
Simple Antenna
リング するかという問題でした。最初の 実 験的なデザインでは、FPGA I/O を標準の シングルエンド I/O として構成しました。 次に、抵抗 R1 および R2 を使用して分圧 器を構成し、FPGA ピン上に VIH ~ VIL の 範 囲 のバイアス電 圧を 発 生させました。 アンテナが受 信 する信号は、カップリング キャパシタ C1 を介して入力バッファーを駆 動します。この信号は、内蔵 240MHz ク ロックによって駆動される 2 レベルの D フ リップフロップによってサンプリングされま
Incremental Encoder
Earphone
す。フリップフロップの出力から、等間隔の 1 ビット サンプリング データ ストリーム が得られます。 この 回 路 の テスト 用 に、 結 果 を ほ か の
図 1 – XRadio のハードウェア コンセプト
FPGA ピンに供給してスペクトラム アナラ イザーで測定し、FPGA が信号を正しく受
れ た 信 号 は、 数 値 制 御 型 オ シ レ ー タ ー
タ ストリームはパルス幅変調 (PWM) モ
信したかどうかを確認しようとしました。し
(NCO) によって生成されるローカル オシ
ジュールに送られ、PWM モジュールは出
かし、Spartan-6 の入 力バッファーには、
レーション信号で乗 算されます。乗 算され
力上にパ ルスを 生 成します。このパ ルスを
アナライザーに従って 120mV の小さなヒ
た信号はフィルタリングされ、直交 IQ ( 同
フィルタリングして、ヘッドフォンを駆動す
ステリシスが生じるため、この仕組みはうま
位相 + 直交位相 ) ベースバンド信号が得ら
る比例アナログ値が得られます。機械式ロー
く機能しませんでした。一般的にヒステリシ
れます。次に、周波数復調器とローパス フィ
タリー インクリメンタル エンコーダーと
スはノイズ防止に役立ちますが、このアプリ
ル ターを 介して、IQ 信 号からオーディオ
LED には、コントローラー モジュールを接
ケーションには望ましくありません。 したがっ
データ ストリームが得られます。次に、デー
続しました。このモジュールは、インクリメ
て、信号の強さを増す方法を工夫する必要
Antenna
CIC LPFs
BUF
I/Q
FD
LPF
SIN & COS NCO
Controller
Encoder
LED Display
図 2 – XRadio FPGA の概要レベル ロジック図
24 Xcell Journal 84 号
PWM
Earphone
XPERIMENT
がありました。
は、1 ビット サンプリングによって発生す
CIC デシメーション フィルターを作成しま
この問題を解決するために、差動入力バッ
る量子化ノイズのために、信号対ノイズ比が
した。フィルタリングされたベースバンド直
ファー プリミティブ (IBUFDS) が正の端子
かなり低下します。しかし、それでもノイズ
交信号はナローバンド信号なので、サンプル
と負の端子の間で非常に高い感度を持つこ
フロアに対して識別可能なチャネルが 4 つ
レートは 1MSPS まで低下しました。
とに着目しました。筆者らのテストによると、
あります。したがって、FPGA の I/O ピン
図 4 に、IQ ベースバンド信号の周波数を
IBUFDS を 0 と 1 の間でスイングさせる
を XRadio 内のコンパレータまたは 1 ビッ
オーディオ信号に変換する周波 数 復調器を
には、ピーク間 1mV の差動電圧で十分で
ト A/D コンバーターとして効果的に使用で
示します。筆者らは、ROM 内のルックアッ
す。図 3 に、得られた入力回路を示します。
きるという筆者らの理論は証明されたと言
プ テーブルを使用して IQ データの瞬時位
このインプリメンテーションでは、抵抗 R1、
えます。
相角を抽出しました。IQ データは結合され、
R2、R3 により、IBUFDS の P 端子と N
デジタル ダウンコンバージョンについて
ROM のアドレスとして使用されます。ROM
端子の両方に同相電圧が発生します。受信
は、DDS コンパイラ 4.0 IP コアを使用し
は、対応する複素角の実数部と虚数部の両
した信号は、カップリング キャパシタ C1
て、240MHz システム クロックを使用す
方を出力します。次に差演算を行います。こ
を介して P 側の端子に供給されます。AC
る数値制御型オシレーターを作成しました。
の演算では、フリップフロップによる 1 タッ
信号は、AC リファレンスとして機能する N
正 弦 波 および 余 弦 波の 出 力周 波 数 範 囲 は
プが位相角データを遅延させます。元のデー
側のキャパシタ C2 によって除去されます。
87MHz ~ 108MHz でした。NCO が生
タから遅 延されたデータを引くと、その結
この回路により、FPGA は、FM ブロード
成するローカル オシレーター信号が 1 ビッ
果が希望のオーディオ信号になります。出力
キャスト信号を 1 ビット データ ストリーム
ト サンプリング ストリームで乗算され、ロー
の 信号対ノイズ 比を改善するために、簡単
に正しく変換します。
パス フィルターを通過すると、直交ベース
な平均化法を使用してローパス フィルター
このラジオは、異なる振幅を持つ約 7 局
バンド信号が得られます。ここで、CIC コン
によってオーディオ信号をフィルタリングし
の FM チャネル (103.9MHz の北京交通
パイラ 2.0 IP コアを使用して、ダウンサン
ました。
ラジオを含む ) を受信します。このデザイン
プリング係数 R = 240 の 3 次ローパス
周波数復調器の 8 ビット オーディオ デー タ ストリーム出力は、音量調節パラメーター に従ってスケーリングされ、8 ビット PWM モジュールに送られます。PWM パ ルスの
VCCO
デューティ サイクルは、オーディオ信号の振
FPGA R1
幅を表します。このパルスは FPGA の I/O ピンに出力され、キャパシタを介してヘッド
P
フォンを駆動します。ここでヘッドフォンは
D Q
IBUFDS
C1 R3
N
R2
ローパス フィルターとして機能し、オーディ
D Q
オ信号内に残っているパルスの高周波成分を
CLK
除去します。 2 個のロータリー インクリメンタル エン コーダーは、ラジオの周波 数と音量を制御
C2
します。それぞれのエンコーダーが 2 つの パ ルス信号を出力します。回転 方向と回転 速度は、パルスの幅と位相によって算出され
図 3 – 差動入力バッファー プリミティブ (IBUFDS) を使用したアンテナ入力手法
ます。ステート マシンとカウンターにより、
Phase Angle
Baseband Data
ADDR
ROM DATA
+ D
Q
–
LPF
Audio Data
CLK
図 4 – IQ ベースバンド信号の周波数をオーディオ信号に変換する周波数復調器
http://japan.xilinx.com/
25
XPERIMENT
回転の状態を周波数制御ワードと音量調節
Slice Logic Utilization
Used
Available
Utilization
に表示されます。
Slice registers
1,181
11,440
10%
カスタマイズへの対応
Slice LUTs
1,062
5,720
18%
Occupied slices
406
1,430
28%
MUXCYs
544
2,860
19%
RAMB16BWERS
2
32
6%
RAMB8Bwers
1
64
1%
BUFG/BUFGMUXs
4
16
25%
PLL_ADVS
1
2
50%
ワードに変換します。同時に、周波数と音量 の値はデコードされ、7 セグメント LED 上
XRadio プラットフォームのプリント回 路 基 板を図 5 に示します。Spartan-6 XC6SLX9 FPGA を使用して、表 1 に示 すように、FPGA のロジック リソースのご く一部だけを消費するラジオ プログラムを インプリメントできます。これは、学生たち がデザインをカスタマイズし、改善する余地 があることを意味します。たとえば、現状の 1 ビット サンプリングでは、XRadio のオー ディオ品質は標準的な FM ラジオほど良く ありませんが、学生たちが XRadio のオー ディオ品質を改善し、ステレオで実現する方 法を見つける余地は十分にあります。
図 5 – 実際に動作しているモデルを 見せる、この記事の共同執筆者の 大学院生 Xingran Yang
26 Xcell Journal 84 号
表 1 – XC6SLX9 FPGA のリソース使用率
基本のFPGAアーキテクチャ E-Learning ・ スライス および I/Oリソース ・ メモリおよび クロッキングリソース ・ Architecture Wizard および Foorplan Editor
開発言語
VHDL 基礎
Verilog 基礎
System Verilog での設計
VHDL 中級
Verilog 中級
System Verilog での検証
Vivado デザインツールフロー VivadoでのFPGA設計導入 VivadoでのFPGA設計実践
7シリーズデザイン Chip Scope Pro ツールを 使用したデバッグ法 FPGA 低消費電力 設計のコツ アナログミックスシグナル (AMS)設計
コネクティビティデザイン 基礎 メモリインターフェイス 設計 マルチギガビット シリアルIO
DSPデザイン 基礎
エンベデッドデザイン 基礎
Simlink基礎 (MathWorks社開催)
Zynq システムアーキテクチャ
SystemGenerator を 使用したDSPデザイン
Zynq エンベデッドシステム開発
Cコードベース設計 : Vivado HLS を使用した高位合成
Zynq エンベデッド システムソフトウェア開発
Vivado でのアドバンスド FPGA設計
エンベデッドマイクロブレーズ Linux開発
パーシャルリコン フィギュレーション
アヴネット・インターニックス
avnetinternix.co.jp/training.aspx
新光商事
xilinx.shinko-sj.co.jp/training/index.html
東京エレクトロンデバイス
ppg.teldevice.co.jp/
パルテック
www.paltek.co.jp/seminar/index.htm
詳 細 とご 登 録 はこちら か ら
Japan.xilinx.com/training/
XP E RT S CORNER
Benchmark: Vivado’s ESL Capabilities Speed IP Design on Zynq SoC
ベンチマーク : Vivado デザイン ツール の ESL 機能で Zynq SoC 上の IP コアの設計時間を短縮 Syed Zahid Ahmed, PhD Senior Researcher CNRS-ENSEA-UCP ETIS Lab, Paris syed-zahid.ahmed@cifre.org Sébastien Fuhrmann, MSc R&D Engineer CNRS-ENSEA-UCP ETIS Lab (now at Elsys Design), Paris se.fuhrmann@gmail.com Bertrand Granado, PhD Full Professor CNRS-ENSEA-UCP ETIS Lab and UPMC LIP6 Lab, Paris bertrand.granado@lip6.fr
28 Xcell Journal 84 号
XPERTS CORNER
自動化されたデザイン手法により、
2 種類の画像処理 IP コアで、 手作業でコーディングした RTL と 同等の結果が得られます。
FPGA は、信号処理アプリケーションにおけるプロ トタイプ作成や実際の SoC のインプリメント手段と して広く使用されています。FPGA の大量並列処理機 能と大容量ヘテロジニアス オンチップ メモリ ブロッ クおよび DSP ビルディング ブロックにより、多くの 場 合、 標 準 の マイク ロ プ ロ セ ッ サ、DSP、 お よ び GPU と引けをとらない高効率的なインプリメンテー ションが可能となります。ARM ® ハード プロセッサと プ ログ ラマ ブル ロジックを 搭 載した ザイリンクス 28nm Zynq ® -7000 All Programmable SoC の 登場で、ザイリンクスのデバイスはさらにエンベデッド システム向けの訴求力を高めています。 FPGA の魅力的な機能にもかかわらず、一部の設計 者は、VHDL や Verilog などのハードウェア記述言 語を含むプログラミングの複雑さを理由に、FPGA の 使 用 を 避 け て い ま す。 し か し、 実 用 的 な ESL (Electronic System Level) デザイン ツールの登場 で、FPGA のプログラミング作業は容易になり、より 幅広い設計技術者の手の届くものになります。 ESL ツールは、デザインの抽象化を一般的なレジス タ トランスファー レベル (RTL) よりも高いレベルに 引き上げるものであり、この業界では長い歴史があり ます。[1] これらの高レベル デザイン ツールは、早す ぎた試みを何度も繰り返した後、ついに実際のアプリ ケーションに広く利用され始めています。ザイリンクス は、最新のデザイン ツールである Vivado ® Design Suite で、FPGA のプログラマビリティの問題の解決 に ESL 手法を採用しました。Vivado HLS ( 高位合 成 ツール ) は、C、C++、または SystemC から HDL へ のデ ザインの 変 換 を自動 化するビルトイン ESL ツールを統合しています。 筆者らのチームは、Vivado HLS と Zynq SoC を利用できるようになったため、産学協同プロジェク トによる IP ベースの画像処理ソリューションの継続 的研究の一環として、ESL 手法と手作業コーディング のクロス分析を行うことにしました。ESL ツールはま だ新しく、一般的なユーザー体験の資料が少ないので、 この研究によって、独立機関による偏りのない事例を ほかの設 計チームに提 供したいと考えました。BDTI 社の実験 [2, 3] は、確かに FPGA 向け ESL ツー ルの高レベルの品質と潜在能力を的確に分析していま すが、BDTI 社のチームはソース アプリケーションを 書き換えて、ESL ツールでインプリメントしやすいよ うに最適化しています。それに対して、筆者らの研究は、 PC 向けに作成されたアルゴリズムの 元 のレガシー ソース コードを使用しています。
http://japan.xilinx.com/
29
XPERTS CORNER
競合他社の 40nm ミッドレンジ製品です
理 FPGA-SoC の共同プロジェクトで開発
SoC を搭載した ZedBoard 上で検証しま
でに検 証 済み の手作 業でコーディングした
された 10 個の IP コアの中から 2 つを選
した。比 較 のために、レイテンシの制約を
IP コア ブロックと、Zynq SoC 上の ESL
択しました。選ばれた IP コアは、プロジェ
作成する必要がありました。Zynq SoC の
プログラミングを比較した結果、ESL の結
クトの中でも最も複雑なものです。Verilog
AXI4 インターフェイスと、手作 業でコー
果は、ただ 1 つの顕著な例外であるレイテ
に よ って 最 適 に 設 計 さ れ、 競 合 他 社 の
ディン グ し た デ ザ イ ン 内 の 競 合 他 社 の
ンシ以 外の多くの面で手作 業のインプリメ
40nm 製品で検証済みのこれらの IP コア
FPGA バスでは、同じ周波数でレイテンシ
ンテーションに引けをとらないことがわかり
は、業界パートナーである Sagemcom 社
が同等になると仮定する必要がありました。
ました。しかも、ESL 手法では開発時間を
のスキャン製品向けの特定の画像処理関数
RTL コード (IP のコア ) をザイリンクスの
大幅に短縮できました。
を実行します。
環境に移植することは簡単ですが、インター
筆者らの研究の主な目的は次のとおりです。
図 1 に、ザイリンクス ツールを使用した
フェイスを設 計し直 すことはこの 実 験の対
• 既存の (C/C++) コードを、ほとんどま
実 験フローの概要を示します。実 験の目的
象範囲を超えていました。
上、この実験はアルゴリズムの元の C コー
筆者らは、Vivado HLS ツールのビルト
移植する際の労力 / 品質を評価する。
ドから始めました。このコードは古典的な
イン SystemC 協調シミュレーション機能
• 詳細なデザイン空間の探索 (ESL と手作
手法で PC 向けに作成されたものであり、
を使用して、ボード上でプロトタイプを作成
エンベデッド システムに効率的に移植でき
する前に生成済みハードウェアを検証しまし
るように最 適化されていないことに注 意し
た。Vivado HLS ツールは IP コア用のソ
てください。
フトウェア ドライバー ( アクセス機能 ) も
この実験では、コードの変更を最小限に
生成してくれるので、IP コアの検証とデバッ
抑える ( 理想を言えば、まったく変更しな
グに必要な時間をさらに短縮できました。
い ) ことを目標にしました。Vivado HLS
この 実 験では、Zynq SoC デバイスの
たはまったく変更せずにハードウェアに
業コーディングの IP の比較 ) を行う。 • 生産性のトレードオフ ( 効率と設計時間 ) を検討する。 • 移植性の問題 ( 他の FPGA または ASIC へのマイグレーション ) を検討する。
ツールは ANSI C/C++ をサポートしてい
ARM Cortex™ -A9 MPCore (666.7MHz)
• ハードウェア設計者、ソフトウェア設計者、
ますが、動的メモリ割り当てや複雑な構 造
の Core-0 と DDR3 インターフェイス
システム設計者にとって ESL ツールが
ポインターなどの問題については、多少 基
(533.3MHz) を使用し、AXI4 タイマーで
どの程度使いやすいかを評価する。
本 的 な 微 調 整 を 加 える必 要 が ありました。
レイテンシの測定を制御しました。図 2 に、
筆 者らは、ザイリンクスのマニュアル の 推
FPGA プロトタイプに対して使用した検証フ
奨事項に従って、コーディングの中心的部分
ローを示します。まず、ARM プロセッサ上
は変 更せずにこの 作 業を完了しました。関
で元の C ソースで画像を処理し、 「ゴールデ
数の引数に基づいて AXI4 マスターおよび
ン」リファレンスとなる結果を生成しました。
VIVADO デザイン ツールに 基づいた手法 筆 者らは、ザイリンクス Vivado HLS 14.4) デザイン ツールと
スレーブ (AXI-Lite) インターフェイスを作
次に、同じ画像を IP コアで処理し、両者を
Zynq SoC ベースの ZedBoard (XC7z20
成し、さまざまな制約を指定して Vivado
比較して結果を検証しました。
clg484-1) を使用して、上記の実験のプロ
HLS ツール内でコードを処理しました。指
ま た、 独 立 し た プ ロ ジ ェ クト と し て、
トタイプを作成しました。この実験では、進
示子を使 用してこれらの制約を指 定し、各
8+8KB I+D キャッシュを搭載した 100MHz
行中のスキャン アプリケーション用画像処
種のソリューションを作成して、Zynq Z20
MicroBlaze ™ プロセッサと、AXI4 バスを
2012.4
(ISE®
介して直接 DDR3 に接続されるハードウェ ア乗算器および除算器ユニットに対する IP コア の 2 つのブロックのレイテンシ測定 値の評価を行いました。MicroBlaze によ
C Source ARM Cortex-A9 Processing System
• Mallocs • AXI Interfaces • Constraints
DDR3 Controller
ファレンスとして、Vivado HLS によって 生成された IP コアと ARM プロセッサに よって達 成 される高 速 化との比 較 を 行 い、 ARM プロセッサが FPGA 設計者に大き
iv
er s
AXI4
なソフトウェア処 理 能 力をもたらすことを
Dr SW
Vivado HLS
る 2 つの IP コアのレイテンシ測定値をリ
HW
Vivado HLS
IP
AXI Timer
検証しました。
Zynq Z20 SoC
実験の結果 ここでは、HLS ツールを使用して得られ た 2 つの IP コア (IP1 と IP2) のデザイ ン空間の探索について説明します。IP1 の
図 1 – Zynq Z20 SoC のテスト ハードウェア システムの生成
30 Xcell Journal 84 号
実 験については詳しく説明しますが、冗長
XPERTS CORNER
ることにしました。このアプリケーションは 定 数値による除算を使 用しているので、こ
Input Image
の変換が可能になりました。これには 2 つ の理由があります。第 1 に、すべての除算
Image-Processing Software
Image-Processing Vivado HLS IP
Golden Results
IP Results
に 1 つの共有除算器を使用することに決め たにもかかわらず、除算ハードウェアは依然 として高コストです ( 約 2,000 個の LUT とフリップフロップ )。第 2 に、この共有 除算器は除算に 34 サイクルかかりますが、 これは非常に低 速 です。また、ここで使 用
Comparison
したバージョンのザイリンクス ESL ツール は、HLS ライブラリ内の 1 つの除算器し かサポートしていませんが、次のステップで
図 2 – ESL による FPGA で得られた IP コアの検証フロー
説明するように、乗 算には複 数のオプショ ンを使用できます。 したがって、このステップでは、除算を乗 算に変換しました ( コードの移植性を維持
的にならないように、IP2 については結果
していました。したがって、最初に取り組む
するため、C の #ifdef 指示子を使用しまし
だけを示します。さらに、ザイリンクス ESL
べき課 題は、除算用のリソースを最 適化す
た )。近似値は、AXI-Lite スレーブ レジス
ツール内で使用される AXI4 の「バースト」
ることでした。
タに関 数 パラメー ターとして与えられまし
せに対して、ザイリンクスの専門家から寄せ
S2 : S1 に共有除算器を適用
フォーマンスとリソース数が大きく向上し、
られた回答についても説明します。
除算ハードウェアを削減する方法として、
アクセスの効率に関する筆者らの問い合わ
表 1 と表 2 に、IP1 のデザイン空間探 索の詳細をステップの形式で示します ( 各 ステップを S1、S2 ... で示します )。この 実験では、256x256 ピクセルのグレース ケール テスト画像を使用しました。クロック 周期、レイテンシ、消費 電 力の 数値は、複 数のインプリメンテーションのクロス分析の ために、クイック合成後にツールが算出した 参 考 値 で あ る こ と に 注 意 してく だ さ い。 FPGA プロトタイプの結果 ( 表 2) の説明 に見られるように、最終的にインプリメント された後の実際の値は大きく異なることが あります。
S1 : 生のコードの変換
筆者らがまず直感的に考えたのは、多少の
た。その結果、表 1 のステップ S3 ではパ その代償として乗算の増加のために DSP の数が多少増えています。
パフォーマンス低下を代償としても、リソー
S4 : S3 にバッファー メモリ に、ここで使用したバージョンのツールでは、 パーティションを適用 ス共 有を利用することでした。残 念なこと 演算子に独自の制約を直接適用することは
ソース アルゴリズムは、統一された mal-
困難であるか、まったく不可能でした。しか
loc ブロック内にまとめて配置される複数
し、回避策は非常に簡単でした。筆者らは、
のメモリ バッファー (8 ビット、16 ビット、
除算演算子 (/) を関数で置き換えて、その
32 ビット ) を使用します。最初の変換でア
関数に制約を適用しました。デフォルトでは、
ルゴリズムを Vivado HLS に対応させたと
Vivado HLS ツールは関数をインラインと
きに ( 図 1)、このメモリ ブロックは内部オ
して使用します。つまり、各除算について完
ンチップ メモリ ( ブロック RAM) に変換
全な除算ハードウェアを生成します。筆者ら
されています。
は除算関数に「Allocation」指 示子を 適 用
統一された malloc ブロックは通常は共
して、さまざまな値を指定して実験を行い、
有外部メモリに使 用されるのですが、内部
レイテンシに与える影響を観察しました。最
オンチップ メモリを使用する場合、スルー
最初のステップでは、( 前述の必須の修正
終的に、筆者らは 1 つの共有除算ハード
プット向上のためにメモリ パーティションを
を除いて ) 最適化制約を指定せずにコード
ウェアを選択しました。表 1 からわかるよ
利用する方がはるかに興味深い実験と言え
をコンパイルしました。表 1 からわかるよ
うに、この選択は、レイテンシにはほとんど
ます。したがって、このステップでは、大容
うに、このハードウェアは大量のリソースを
影 響 を与えず に、ルックアップ テ ーブル
量メモリ ブロックを、独立した小さなメモ
使用しています。Vivado HLS のクイック
(LUT)、フリップフロップ (FF)、およびそ
リ (8 ビット、16 ビット、32 ビット ) に分
合成レポートと Design Viewer GUI ツー
の他のロジック リソースの数を劇的に削減
割しました。表 1 にその結果を示します。
ルからリソース配分の詳細を分析した結果、
し、リソース使 用と性能の両 面で大きな成
パフォーマンスが大幅に向上する一方、メモ
こうした大量のリソース消費の主な要因はア
果を上げました。
リを分割したために BRAM の数が多少増
ルゴリズム内のいくつかの除算であること 算用のハード ブロックは FPGA 内に存在
S3 : S2 に定数の除算から乗算への 変換を適用
しないので、除算は大 量のロジックを消費
次のステップ では、除算を乗算に変換す
が明らかになりました。乗算とは異なり、除
加していることがわかります ( 表 2)。また、 この手法により、おそらくメモリ アクセス の制御ロジックが簡略化されたため、ロジッ ク リソース数が大きく減少しています。
http://japan.xilinx.com/
31
XPERTS CORNER
IP1: Vivado HLS results for Zynq Z20 SoC
LUTs
FFs
BRAMs
DSP
ClkPr (ns) Latency (clk cycles) Speedup Power*
S1: Raw transform
20,276
18,293
16
59
8.75
8,523,620
S2: S1 with Shared Div
9,158
7,727
16
51
8.75
S3: S2 with DivToMult
7,142
6,172
16
84
8.75
S4: S3 with Buffer Memory Partitioning
4,694
4,773
16
81
S5: S4 with Shared 32/64bit Multipliers
4,778
4,375
16
S6: S5 with Smart Mult sharing
4,900
4,569
16
S7: S6 with Mult Lat. exp (comb. Mult)
4,838
4,080
S8: S6 with Mult Lat. exp (1clk cycle Mult)
4,838
S9: S4 with Superburst
4,025
S10: S4 with Smart Burst S11: S6 with Smart Burst
NA
1410
8,555,668
1
1638
3,856,048
2.22
1337
8.75
2,438,828
3.51
953
32
8.75
3,111,560
2.75
890
40
8.75
2,910,344
2.94
918
16
40
13.56
1,975,952
4.33
893
4,056
16
40
22.74
2,181,776
3.92
890
4,357
80
79
8.75
NA
NA
NA
3,979
4,314
24
80
8.75
NA
NA
NA
4,224
4,079
24
39
8.75
NA
NA
NA
表 1 – HLS ツールによる IP1 の探索結果 * 各イタレーションを比較するために HLS ツールが算出した消費電力の値 ( 単位なし )
IP1: Zynq Z20 board results for 256x256-pixel test image
LUTs
FFs
BRAMs
DSP
Fmax (MHz)
Fexp (MHz)
Latency (ms)
Speedup
Power** (mW)
NA
NA
NA
NA
NA
666.7
32.5
15
NA
2,027
1,479
6
3
NA
100
487.4
1
NA
Hand-Coded IP (Resources for Ref.)
8798
3,693
8
33
54.2
*50(NA)
*4 (NA)
NA
57
S3: S2 with DivToMult
6,721
6,449
8
72
40.2
40
142.4
3.42
12
S4: S3 with Buffer Mem. Partitioning
4,584
5,361
10
69
84.5
83.3
124.5
3.91
30
S6: S5 with Smart Mult sharing
5,156
4,870
10
32
91.3
90.9
136.9
3.56
26
S8: S6 with Mult Latency exp (1clk)
5,027
4,607
10
33
77.3
76.9
121.2
4.02
22
S9: S4 with Superburst
4,504
5,008
42
70
77.6
76.9
26.5
18.39
NA
S10: S4 with Smart Burst
4,485
4,981
14
73
103
100
22.48
21.68
62
S11: S6 with Smart Burst
4,813
4,438
14
33
101
100
33.7
14.46
42
ARM CortexA9 MPCore (Core-0 only) MicroBlaze (with Cache & int. Divider)
表 2 – FPGA プロトタイプにおける IP1 の探索結果 * 参照値 ( 手法のセクションを参照 ) **XPower Analyzer で算出したダイナミック消費電力
S5 : S4 に共有 32/64 ビット符号 付き / 符号なし乗算器を適用
乗算器、符号なし 32 ビット乗算器、符号
下を軽 減 するために、スマートな 方法で 乗
なし 64 ビット乗算器で構成されるシステ
算器を共有することにしました。筆者らは、
このステップでは、S2 の共有除算器の
ムを (「*」の演算を関数で置き換えて ) 構
符号なし 16 ビット乗算器と、戻り値 64
築しました。次に、この 3 種類の異なる
ビットの符号なし 32 ビット乗算器の 2 種
演 算 に 1 つ の ユ ニット の み を 使 用 する
類の乗算器を追 加で作成しました。相互排
Allocation 制約を適用しました。表 1 は、
他的形式で量を変えながら乗算器をスマー
その結果 DSP 使用量が劇的に削減され、
トに使 用して数回反復した後、最終的なソ
代償としてパフォーマンスが多少低下するこ
リューションには、符号なし 64 ビット乗算
とを示しています。この結果に刺激を受けて、
器 2 個、符号なし 32 ビット乗算器 2 個、
筆者らはさらにスマートな共 有 方 式を検 討
符号付き 32 ビット乗算器 1 個、符号なし
することにしました。
16 ビット乗算器 1 個、および戻り値 64
実 験 結果に刺激を受けて、共 有リソースの 使用による DSP ブロックの最適化に焦点 を合わせました。最初に、Design Viewer ユー ティリティを 使 用して生 成 済みハード ウェアの詳細な分析を行い、ソース C コー ドから生成されたハードウェアと比較対照し ました。分析の結果、生のコードの形式では、 ハードウェアは各種の乗算器ユニットを 26 個使 用し、これらは符号なし 16/32/64 ビット乗算および 32 ビット符号付き乗算 として分 類できることがわかりました。S2 の実験と同じように、符号付き 32 ビット
32 Xcell Journal 84 号
S6 : S5 にスマートな乗算の 共有を適用 乗算器の共 有によるパフォーマンスの低
ビットの符号なし 32 ビット乗算器 1 個が 含まれます。表 1 からわかるように、この 手 法 で は パ フォ ー マ ン ス が 多 少 向 上し、 DSP 使用量が多少増加しました。
XPERTS CORNER
S7 : S6 に乗算器のレイテンシの 実験を適用 ( 組み合わせ乗算器 )
のステップで実行しました。まず、ダンプ手
用する必要がありました。このことは、複数
法 ( 実用的ではないが、一定の技術的情報
のプロトコルへの移植が容易に行える HLS
乗算器の最適化の最終段階では、乗算器
を得るには良い方法 ) を使用しました。この
ツールの潜在能力をさらに際立たせます。
のレイテンシの値を変化させる 2 つの実験
手法では、イメージ全体が内部メモリ バッ
表 2 の結果と表 1 の結果を比較すると、
を行いました。Vivado HLS ツールは、デ
ファーにバーストされ、実行の終わりに結果
いくつかの興味 深い所見が 得られます。第
フォルトではレイテンシが 2 ~ 5 クロック
全体がバースト出力されます。FPGA には
1 に、ESL ツールのクイック合成は、実際
サイクルの乗算器を使用しました。ハード IP
大量のオンチップ メモリがあるため、小さ
のインプリメンテーションと比 較して、( 特
コア内では、すべての乗算器は 1 クロック
な画像を使用すればこの実験を簡単に実行
に LUT とフリップフロップについては ) 比
サイクル乗算器または組み合わせ乗算器のい
で きました。筆 者らはこの反復 ステップ を
較的正確な推定値を与えています。しかし、
ずれかです。このステップでは、 「Resource」 「スーパーバースト」(S9) と名付けました。 2 番目のフェーズでは、ソース コードの 指示子を使用して、ライブラリから対応する
メモリと DSP については、合成機能が最 適化のためにリソース数を大きく変えてしま
組み合わせ乗算器を選択し、乗算器のレイテ
構造を変更しない制限の範囲内で、スマート
うことがあります。
ンシを 0 に設定しました。その結果、表 1
なインタラクティブ バースト (S10、S11)
第 2 に、最終的なインプリメンテーショ
に示すように、レイテンシの改善が見られま
をインプリメントしました。結果を表 1 に示
ンでは、タイミング クロージャが大きな問
した。ただし、タイミングの観点から見ると
します。筆者らは、ザイリンクスのチュート
題になる可能性があります。FPGA のイン
デ ザイン は はるか に低 速 化して い るため、
リアルの例に基づいて、標準の「memcpy」
プ リメント 後 に 得 ら れ る 周 波 数 は、HLS
FPGA デザインのクロック スピードの低下
関数を使用して C でバースト機能をインプ
ツールの推 定値に比べて大きく変化してい
によってパフォーマンスの向上がマイナスに
リメントしました。残念なことに、コードに
ることがわかります。第 3 に、驚くべきこ
転じる可能性があります。
memcpy 関数を挿入すると、レイテンシの
とに、バースト アクセスの実験でも、HLS
値 を 見 ることは不 可能に なります。FPGA
の予想値と手作業コーディングの IP コアの
インプリメンテーション ( 表 2) は、得られ
間にはレイテンシに大きな差があります。こ
る動作の例を示します。
のことは、HLS ツールが生成した DMA の
S8 : S6 に乗算器のレイテンシの 実験を適用 (1 クロックサイクル乗算器 )
品質に関する筆者らの関心を刺激しました。
用する代わりに、ライブラリから 1 クロッ
選択したステップの FPGA プロトタイプ
新しい IP コアでも同様の結果
クサイクル 乗 算 器を 選 択しました。結果を
ESL ツールを使用する大きな利点の 1 つ
筆者らは、同じ方法で、第 2 の IP コア
表 1 に示します。レイテンシが多少増える
は、デザイン空間の探索が迅速に行えること
(IP2) の 探 索を同じ詳しさで行いました。
一方、驚くべきことに、クロック周期が大幅
です。筆者らは、最終的に選択されたわずか
IP1 の結果の詳しい説明に照らして、表 3
に増えていることがわかります。これはハー
な数をイタレーションするために長時間かけ
と表 4 に示した結果は明白です。興味深い
ドウェアの低速化を招く可能性があります。
て FPGA をインプリメントすることを避け
点の 1 つは、表 3 のステップ 8 です。
て、上記のすべての探索ステップと表 1 に示
IP1 と同じように (S2 と S3 の説明を参
した結果を数分間で評価しました。表 2 は、
照 )、除算器はリソースとレイテンシの両面
表 1 のステップをいくつか選択し、Zynq
で高コストですが、IP1 とは異なり、IP2
これまでに説明したすべての 探 索 ステッ
Z20 SoC 上に最終的にインプリメントした
は実数型の除算を使用するため、除算器を
プは、C コードの機能に関する知識をほと
結果を示しています。表 2 には、元のソース
削除することはできません。残念なことに、
んどあるいはまったく必要としていません。
コードを MicroBlaze プロセッサ上 ( 参照
ESL ツールの現在のバージョンは、34 ク
最後の実験では、バースト アクセスを探索
値 ) および ARM Cortex-A9 プロセッサ上
ロック サイクルのレイテンシの除算器 1 種
しました。共有メモリ システム ベースの IP
にインプリメントした等価結果 ( レイテンシ )
類しかサポートしません。S8 の結果は、( 手
コアでは、小さなデータ アクセスやランダ
も掲載され、Zynq SoC が FPGA 設計者
作業でコーディングした IP コアで利用可
ム データ アクセスでバスのレイテンシが大
にもたらした 大きな処 理 能 力を 示していま
能な ) 1 クロック サイクルのレイテンシの
きくなるため、バースト アクセスはほぼ必
す。またこの表は、ザイリンクス XPower
除算器を使用した場合、理論的にはパフォー
須と言えます。一般的なソフトウェアの観点
Analyzer によって算出されたダイナミック
マンスが約 30% 向上することを示してい
から見て、バースト アクセスのような機能は
消費電力の推定値も示しています。
ます。表 4 に、選択したステップを FPGA
本来存在しないので、C コードのアルゴリズ
筆者らは、ザイリンクスのツールを使用して
でプロトタイプ化した結果を示します。
ム構造を分析し、バースト アクセスをインプ
IP コアの RTL をインプリメントし、最適な
リメントする可能性を探索しました。ただし、
手作業コーディングによる Zynq SoC 上の
バースト アクセスの実験でも、コードのソフ
IP コアの統計情報を得ました。AXI4 バスへ
VIVADO HLS の DMA/ バースト 効率の問題
トウェア構造を変更していないことに注意し
の移植はこの実験の対象範囲を超えているた
手作業コーディングによる IP コアのイン
てください。
め、競合他社の FPGA を使用した以前の実
プリメンテーションと ESL 手法の結果を
筆者らはバースト アクセスの実験を 2 つ
験のレイテンシ測定値をリファレンスとして使
比較すると、いくつかの所見が得られます。
このステップ では、組み合わせ乗算器を使
S9、S10、S11 : バースト アクセス の実験
http://japan.xilinx.com/
33
XPERTS CORNER
LUTs
FFs
BRAMs
DSP
ClkPr (ns)
Latency (clk cycles)
Speedup
Power*
S1: Raw transform
25,746
23,392
16
76
8.75
8,691,844
NA
NA
S2: Raw with SharedDiv
9,206
7,900
16
68
8.75
11,069,548
1
1643
S3: S2 + const Mult & Div ops reduction
9,703
8,557
16
96
8.75
4,934,764
2.24
1712
S4: S3 with Buffer Memory Partitioning
7,204
7,249
16
93
8.75
3,539,564
3.13
1338
S5: S4 with Smart Mult sharing
7,240
6,663
16
48
8.75
3,882,604
2.85
1357
S6: S4 with Smart Burst
6,816
6,515
24
78
8.75
NA
NA
1240
S7: S5 with Smart Burst
6,846
5,958
24
33
8.75
NA
NA
1262
NA
NA
NA
NA
NA
2,751,084
4.02
NA
IP2: Vivado HLS results for Zynq Z20 SoC
S8: S5 Theoretical Lat. with 1 clk cycle Div. 表 3 – HLS ツールによる IP2 の探索結果
* 各イタレーションを比較するために HLS ツールが算出した消費電力の値 ( 単位なし )
IP2: Zynq Z20 board results for 256x256-pixel test image
LUTs
FFs
BRAMs
DSP
Fmax (MHz)
Fexp MHz)
Latency (ms)
Speedup
Power** (mW)
NA
NA
NA
NA
NA
666.7
37.9
13.39
NA
MicroBlaze (with Cache & int. Divider)
2,027
1,479
6
3
NA
100
507.6
1
NA
Hand-Coded IP (Resources for Ref.)
3,671
2,949
2
16
63.8
*50(NA)
*4 (NA)
NA
25
S3: S2 + const Mult & Div ops reduction
8,620
8,434
8
81
44.2
40
236.8
2.14
24.4
S4: S3 with Buffer Memory Partitioning
6,523
7,403
10
78
88.5
83.3
124.4
4.08
41.5
S5: S4 with Smart Mult sharing
6,722
7,017
10
41
94.1
90.9
124.2
4.09
36.4
S6: S4 with Smart Burst
6,240
6,486
14
69
96.2
90.9
41.2
12.32
56.4
S7: S5 with Smart Burst
6,435
6,174
14
30
95.1
90.9
45.8
11.08
50.1
ARM CortexA9 MPCore (Core-0 only)
表 4 – FPGA プロトタイプにおける IP2 の探索結果 * 参照値 ( 手法のセクションを参照 ) **XPower Analyzer で算出したダイナミック消費電力
エンベデッド システム向けに最適化されて
せんが、手作業でコーディングした IP コア
筆 者らがザイリンクスの専門 家に問い合
いない元のソース コードを ( ほぼ変更せず
には 2 つあります。また、手作業でコーディ
わせたところ、ここで使用したバージョンの
に ) 使用したにもかかわらず、ESL ツールは、
ングした IP コアの FIFO は、高効率的に
Vivado HLS で生成される AXI4 マスター
リソース使用率については手作業コーディン
バースト アクセスを処理します。ESL によ
インターフェイスはベータ モードであり、将
グで最適化した IP コアに引けをとらない結
る IP コアでは、バーストはバッファーを使
来アップグレードされる予定があるため、最
果をもたらしました。ESL と手作業コーディ
用して実 行されますが、そして元のコード
適なパフォーマンスを得るには手作 業で外
ングの IP コアの探索結果の主な違いはレイ
の性質のために、効率的なバースト メカニ
部 DMA を使用するように推奨されました。
テンシに現われ、手作業でコーディングした
ズムの作成は非常に困難です。ESL による
このような要因がレイテンシの 値の大きな
IP コアの方がはるかに優れていました。
ハードウェアは、コード構 造に従って作 業
差の原因と考えられます。この問題は将 来
筆者らは、この問題を検 討する中で、手
バッファーとバースト バッファーに BRAM
の実験の出発点として有効です。
作業コーディングと ESL では IP コアの作
メモ リを 使 用 す る た め、ESL 手 法 に は
成 方法に大きな違いがあることに注目しま
BRAM の使用量の増加という代償が伴い
生産性と効率
した (IP2 のリソース消費量に大きな差が
ます。さらに、ザイリンクスの AXI4 マス
この研究における詳細な実験は、ESL デ
あるのもこのためです )。ソース コードのス
ター インターフェイスのチュートリアルに
ザインの興味 深い面を明るみに出すととも
タイルが原因で、ESL による IP コアの入
従って、バーストは C の memcpy 関数を
に、若干の誤解を解消しました。ESL ツー
力と出力にはデータ バスが 1 つしかありま
使用して行われます。
ルは、初期のバージョン以 来 大きな進歩を
34 Xcell Journal 84 号
XPERTS CORNER
20 15
な対象ユーザーです。ESL ツールはこの目
Development Time (Person Weeks)
的に向けて大きく進歩してきましたが、まだ 多くの作業が必要とされています。たとえば、
15
このプロジェクトでは、ESL ツールによって、 ソフトウェア設計者から見たハードウェアの
11
複雑性はかなり隠蔽されました。しかし、優
10
れ たインプリメンテーションを実 現するに
5
は、特に制約の使 用と最 適化について、依
3
1
0 IP1 RTL
IP1 ESL
IP2 RTL
IP2 ESL
然としてハードウェアの専門知識が要求され ます。ESL ツールがさらに進化すれば、こ の問題は改善されるでしょう。 SoC 業界におけるハードウェア / ソフト ウェア協調設計の統合と普及に伴い、システ
図 3 – 手作業でコーディングした RTL と ESL の開発時間
ム設計者の存 在はますます一般的になって きました。システム 設 計 者 にとって、ESL ツールはおそらくウィン - ウィンの状況にあ ります。システム設計者はこれらのツールを
遂 げ てきました。現 在 の ESL ツール は
一方、ESL ツールには慣れていなかったこ
ANSI C/C++ をサポートしており、ハード
とを考慮に入れると、ツールに慣れるにつれ
ウェア / システムのデザイン プラクティスに
て、長期的にはインプリメントの所要時間は
刺激された ( 過去のループの利用だけでは
大きく短縮されそうです。
スの 28nm 7 シリーズ FPGA の中で
示子の形式で利用して、競争力のある良 好
ESL ツールの次の課題
選んだ主な目的の 1 つは、FPGA ロジック
な結果を生み出しています。
テクノロジとビジネスのいずれの観点から
確かに、ESL ツールで得られた結果は、
見ても、ほかの FPGA や ASIC にデザイン
レイテンシ以外のすべての面で、最適化され
を簡単に移植できるように、各 ESL ツール
た手作業コーディングの結果に引けをとらな
の制約構造の間で EDA に何らかの標準化
いことがわかりました。しかも、( この実験
が必要であると思われます ( このような柔軟
で使用した一般的な C タイプの代わりに )
性は RTL ベースのデザイン ツールには本来
正確なビット タイプと ESL ツールの先進
備わっているものであり、原理的には ESL
機能を使用すれば、リソース使用率をさらに
ツールではさらに簡単に実現できるはずで
改善できそうです。またコードの 部分的な
す )。ESL ツール プロバイダーは、 RTL ツー
書き換えによっても、リソース使用率を改善
ルの場合と同じように、自社のツールと結果
できます。
の品質でのみ他社に差を付けるべきです。
この探索により、生産性と効率のトレード
ESL ツ ー ル は ソ フト ウェ ア 設 計 者 の
オフをよく理解できました。図 3 に、( デザ
FPGA プログラミングを可能にしたのか、
イン、ソフトウェア、FPGA のインプリメン
ESL ツールは RTL の設計者と仕事を不要
テーションと検証に関して ) IP ブロックの相
にするのか、誰が ESL ツールから最も大き
対的な開発時間を示します。ESL ベースの
な利益を得るのかなどの疑問に答えるには、
デザインでは、( 特に検証について ) ソリュー
長く複雑な議論が必要であり、それはこの
ションまでの時間 (Time-to-Solution) は飛
短い記事の対象範囲を超えています。筆者
躍的に短縮され、結果についても最適化さ
らのこの短い経験から、ESL ツールはすべ
れたインプリメンテーションに引けをとりま
ての関係者 ( 特にシステム設計者 ) に利益
参考資料
せん。ただし、デザイン / 検証の時間は設計
をもたらすことがわかりました。
1. G. Martin, G. Smith,“High-Level
者の技能に大きく依存することに注意する必
ハードウェア設計者にとって、ESL ツー
Synthesis: Past, Present and
要があります。同じグループの設計者が手作
ルは、デザインの一部を作成または評価す
Future,”IEEE Design and Test of
業コーディングのデザインと ESL ベースの
る 際 の 興 味 深 い 方 法 を 提 供しま す。ESL
デザインの両方に参加したので、図 3 は設
ツールは、バス インターフェイス レディ テ
計プロセスの所要時間を偏りなく示していま
スト インフラストラクチャの迅速な作成に
す。設計者が古典的な RTL 手法による IP
役立ちます。ハードウェアを設計しようとす
3. BDTI report,“The AutoES AutoPilot
コアの設計と統合についてよく理解していた
るソフトウェア設計者は、ESL ツールの主
High-Level Synthesis Tool,”2010
ない ) 複数のデザイン デシジョンを制約指
複数のレベルで利用できます。 ハードウェア側では、筆者らがザイリンク Zynq-7000 All Programmable SoC を と同じチップ上に ARM ハード プロセッサ コアを搭載したデバイスの潜在能力を検 討 することでした。上記の実 験 結果からわか るように、デュアルコア ARM プロセッサは これまでにない処理能力を FPGA 設計者 にもたらしました。確かに、Zynq SoC は エンベデッド機器設計者にミニスーパーコン ピューターを提 供し、設計者は緊密に統合 さ れ た FPGA ファブ リック を 使 用して Zynq SoC をカスタマイズできます。
謝辞 弊社の業界パートナーである Sagemcom 社の資金提供と技術協力に感謝いたします。 また、欧州で活躍するザイリンクスの専門家 である Kester Aernoudt 氏と Olivier Tremois 氏による実験中の迅速な技術指導 に感謝いたします。
Computers, July/August 2009 2. BDTI report,“High-Level Synthesis Tools for Xilinx FPGAs,”2010
http://japan.xilinx.com/
35
XP L A N ATION: FPGA 101
How to Increase Zynq SoC Speed by Creating Your Own Peripheral
独自のペリフェラルを作成し、 Zynq SoC を高速化 デバイスのプログラマブル ロジック内に ペリフェラルを作成して 処理を高速化できることは、
Zynq SoC アーキテクチャの 大きな利点の 1 つです。 Adam Taylor Senior Specialist Engineer EADS Astrium aptaylor@theiet.org
36 Xcell Journal 84 号
X P L A N AT I O N : F P G A 1 0 1
この記事は、Adam Taylor 氏による Zynq-7000 All Programmable SoC のハンズオン チュートリアル シリーズの第 3 回に当たります。これまでの記事は、Xcell Journal 日本語版 81・82 合併号および 83 号(http://japan.xilinx.com/publications/xcellonline/index.htm をご覧ください)に掲載さ れています。Taylor 氏は Xcell Journal の常連寄稿者の 1 人 で あ り、All Programmable Planet (www.programmableplanet.com) のブロガーでもあります。
ザイリンクス Zynq ™ -7000 All Programmable SoC の 大きな利点の 1 つは、デバイスのプログラマブル ロジック (PL) 側にペリフェラルを作成すると、プロセッシング システ ム (PS) 側の処理を高速化できることです。独自のペリフェラ ルの作成は、一見難しく思われますが、実は驚くほど簡単です。 プロセッシング システムのパフォーマンスを向上させる場合 や、PS を使用してプログラマブル ロジック側のデザインの動 作を制御する場合、PL 内にペリフェラルを追加する方法は非 常に効果的です。たとえば、PS 側から多数のメモリマップド レジスタを使用して、プログラマブル ロジック内のデザインの 動作またはオプションを制御できます。 この記事のサンプル デザインは、ZedBoard 上のメモリマッ プド LED のオンとオフを切り替えることができる簡単なモ ジュールです。このモジュール の 作成 では、ザイリンクスの PlanAhead ™、XPS、ソフトウェア開発キット (SDK) のツー ル フローを次の 3 つのステップで使用します。 1. エンベデッド開発キット (EDK) 環境でモジュールを 作成する。 2. モジュールの実際の VHDL を作成し、システムを 構築する。 3. 新しいカスタム モジュールを使用するソフトウェアを 作成する。
EDK 環境でのモジュールの作成 独自のペリフェラルを作成するには、まず Zynq SoC デザ インを含む PlanAhead プロジェクトから Xilinx Platform Studio (XPS) を開き、メニューの [Hardware] → [Create or Import Peripheral] をクリックします。 このサンプル モジュールでは、ZedBoard 上の 7 個の LED が順に点灯してウォーキング ディスプレイのデモを行い、最上 位の LED だけはソフトウェア アプリケーションの制御下でト グルします。これはカスタム ブロックのアプリケーションとし てそれほど興味深いものではありませんが、必要なフローを 示す簡単な例として便利です。このプロセスをしっかりと理解 すれば、より複雑なモジュールをインプリメントするのに必要 なすべての知識が得られます。
http://japan.xilinx.com/
37
X P L A N AT I O N : F P G A 1 0 1
ペリフェラルを作成するには、10 個の簡
リック内に配置されるので、( ユーザーがペ
単な画面を順番に表示し、希望のオプショ
リフェラルの機能を作成できる ) ユーザー
ンを選択します。
ロジック アプリケーションからもアクセス可
最初の 2 つの画面 ( 図 1) では、ペリフェ
能です。
ラルを作成するか、既存のペリフェラルをイ
次の 6 つの画面では、AXI のマスターま
ンポートするか問うてきますので、その場合
たはスレーブ構成をカスタマイズ するオプ
はペリフェラルをどのプロジェクトに関連付
ションと、ユーザー ロジックの制御に使用す
けるかを指定します。次のステージ ( 画面 3)
るレジスタの数とサポート ファイルを表示
では、 モジュールの名前を指定できます。バー
します。この例では、AXI4-Lite スレーブ
ジョンとリビジョンも定義できて非常に便利
として機能するレジスタを 1 つだけ使用し
です。( ペリフェラル フローの最下部のオプ
ま す。 システムの 開 発 を 容 易に するには、
ションを使用すれば、*.cip ファイルを読み
[Peripheral Implementation Support]
出して作成済みのモジュールを再カスタマイ
ビューで [Generate template driver files]
ズできます。)
を選択することが重要です。これにより、作
モジュール名を選択したら、図 2 に示す
成するペリフェラル内の通信に必要な、いく
ように、必要な AXI バスの種類を選択しま
つかのソース ファイルとヘッダー ファイルが
す。このサンプル デザインに必要なインター
提供されます。
フェイスは、簡単なメモリマップド制御レジ
このプロセスの終わりに、XPS は、新し
スタ型インターフェイスで す。した がって、
いペリフェラルの作成と使用に役立ついくつ
一番上のオプションの AXI4-Lite を選択し
かのファイルを生成します。
ました ( サポートしている各種の AXI バス の 詳 細は、http://japan.xilinx.com/support/documentation/white_papers/j_ wp379_AXI4_Plug_and_Play_IP.pdf を ご覧ください )。この手順では、プロセッシ ング システムから AXI バスを介して書き込 みと読み出しが可能な、いくつかのレジスタ が作成されます。これらのレジスタは Zynq SoC 上のプログラマブル ロジック ファブ
• ペリフェラルの名前が付けられた トップレベル VHDL ファイル • ユーザー ロジックを作成できる VHDL ファイル • モジュールのインターフェイスを 定義して XPS 環境で使用できるよう にする、MPD (Microprocessor
Peripheral Definition) ファイル • 必要に応じてペリフェラルの再カスタ マイズに使用できる CIP ファイル • SDK へのドライバー ソース ファイル • SDK へのサンプル ソース ファイル • ペリフェラルに必要なドライバーを詳細 に定義する、MDD (Microprocessor Driver Description) ファイル これらのファイルは、PlanAhead ソース ディレクトリ ( このデザインでは zed_blog. srcs\sources_1\edk\proc_subsystem) の下に作成されます。 このディレクトリの下に Pcores ディレク トリとドライバー ディレクトリが作成されま す。Pcores ディレクトリには、XPS と PlanAhead ツールに必要なファイルが ( ペ リフェラルの名前が付けられたディレクトリ の下に ) 格納されます。ドライバー ディレク トリには、SDK ツールに必要なファイルが 格納されます。
RTL の作成 Pcores ディレクトリには 2 つのファイル が作成されます。1 つは作成したコンポーネ ントの名前が付けられ ( この場合は led_ if.vhd)、もう 1 つは user_logic.vhd とい う名前 で す。ユーザー は user_logic.vhd
図 1 – 10 個のウィザード画面のうち最初の 2 画面
38 Xcell Journal 84 号
X P L A N AT I O N : F P G A 1 0 1
ファイル内にデザインを作成します。AXI バ
ルは、[Project Local Pcores] → [USER]
プレベルを再生成する必要があります。これ
スを介した通信に必要なレジスタとインター
→ [Core Name] で見つかります。このペリ
を行うには、作成したプロセッサ サブシス
フェイスは、ウィザードがこのファイル内に
フェラル名を右クリックすると、MPD ファ
テムを右クリックして、[Create Top HDL]
既に生成しています。ユーザー ロジック モ
イルを表示できます。
をクリックします。 Zynq SoC PlanAhead
ジュールは、led_if.vhd ファイル内にインス
XPS 環境で非 AXI インターフェイスの I/
プ ロ ジ ェ クト の 作 成 に つ い て は、Xcell
タンシエートされます。したがって、user_
O が表 示され、正しく処 理されるように、
Journal 日本語版 81・82 合併号(http://
logic.vhd のエンティティに対するすべての
デザインに組み込んだ非 AXI インターフェ
japan.xilinx.com/publications/archives/
変更は、ポート マップ内にフロースルーさ
イスを追加する必要があります。MPD ファ
xcell/issue81-82/xcell81-82.pdf)をご
れる必要があります。このサンプル デザイ
イル の 構 文 につ いては、http://japan.xil-
覧ください。デザインの I/O ピンアウトを変
ンのように、 LED を点灯するための外部ポー
inx.com/support/documentation/sw_
更していた場合は、インプリメント実行前の
トが必要な場合は、その変更を led_if.vhd
manuals/xilinx14_4/psf_rm.pdf をご覧
最終段階として、PlanAhead 環境で UCF
のエンティティ内でフロースルーする必要が
ください。図 3 に示すように、MPD ファイ
ファイルを修正します。ピンアウトの修正を
あります。
ルの構文は非常に簡単です。ハイライトした
終えたら、インプリメントを実 行し、SDK
ロジック デザインを作成したら、デザイ
行 ( 中央のリストの最下部の行 59) は、モ
環境で使用できる状態のビットストリームを
ンのシミュレーションを行い、希望どおり動
ジュールに LED 出力ポートを組み込むため
生成します。
作することを確認できます。Pcores/devl/
に筆者が追加したものです。
bfmsim ディレクトリの下に、バス ファンク
MPD ファイルを更新したら、[Re-scan
SDK 環境でのペリフェラルの使用
ション モデルが用意されています。
user IP repositories] をクリックして、変
これまでの手順で、ソフトウェア環境でペ
更内容が XPS に読み込まれたことを確認
リフェラルを使用する準備が完了しました。
する必要があります。その時点で、IP ライ
これは、ペリフェラルの作成とインプリメン
VHDL ファイルを作成し、機能を検証し
ブラリのほかの ペリフェラルと同じように、
トと同じように、簡単でわかりやすいプロセ
たら、XPS プロジェクト内でモジュールを
システムにそのデバイスをインプリメントで
ス で す。 最 初 に、PlanAhead
使用できます。XPS 環境でモジュールを正
きます。希望のアドレス空間 ( 最小値は 4K)
[Export Hardware for SDK] オプション
しく使用するには、MPD (Microprocessor
にそのデバイスをインプリメントし、出力を
を使用して、インプリメント済みのハードウェ
Peripheral Definition) ファイルが更新され
外部ポートに接続したら、必要に応じてデザ
アをソフトウェア開発キットにエクスポート
て VHDL デザイン時に追加したポートが存
イン ルール チェック (DRC) を実行できま
します。次に、SDK を開き、MSS ファイ
在していることを確認する必要があります。
す。 エ ラ ー が な け れ ば、XPS を 閉 じ て
ルをチェックして、作成したペリフェラルが
これを確認するには、XPS 環境内で MPD
PlanAhead 環境に戻ります。
存在することを確認します。ペリフェラルは
ファイルを編集します。作成したペリフェラ
PlanAhead 環境に戻ったら、HDL のトッ
ドライバー名と一緒にリストされているはず
XPS 環境でのモジュールの使用
ツール の
図 2 – 次の 2 つの画面でペリフェラルの名前とリビジョンを指定し、バス規格を選択する
http://japan.xilinx.com/
39
X P L A N AT I O N : F P G A 1 0 1
図 3 – MPD ファイルの編集とペリフェラルの組み込み
図 4 – ソフトウェア リポジトリのインポート
40 Xcell Journal 84 号
X P L A N AT I O N : F P G A 1 0 1
図 5 – ペリフェラル ドライバーの選択
です。初期状態ではドライバー名は 「generic」
ように、ドライバーのディレクトリを指すよ
少しです。ソース コード内にドライバー ヘッ
です。SDK 環境でペリフェラルを使用する
うに最初にソフトウェア リポジトリを設定
ダー ファイルを組み込み (#include "led_
場合、ジェネリック ドライバーで問題ありま
する必 要 が あります。メニュー の [Xilinx
if.h")、xparameters.h から得られるペリ
せん。ジェネリック ドライバーを使用する場
Tools] → [Repositories] で、リポジトリ
フェラルのベース アドレスを使用するように
合は、ヘッダー ファイルを組み込む必要があ
を定義できます ( 図 4)。
すれば、インターフェイスがメモリ空間内で
ります (#include "xil_io.h")。これにより、
適切なディレクトリを指すようにリポジトリ
ペリフェラルのアドレスを認識できるように
関数呼び出し Xil_in32(addr) または Xil_
を設定したら、リポジトリを再スキャンして、
なります。後は、 「include」ファイル内でド
out32(addr) を使用して、ペリフェラルとの
ダイアログ画面を閉じます。次の手順では、
ライバーが提供するコマンドを呼び出すだけ
間で読み出しと書き込みができます。
ボード サポート パッケージ (BSP) を新しい
です。たとえば、このデザインの場合は、次
この手法を使用するには、ペリフェラルの
ドライバーで更新します。Project Explorer
のように記述します。
ベース アドレス (xparameters.h で指定さ
の下の BSP アイコンを右クリックして、ボー
れる ) とレジスタ間のオフセットがわかって
ド サポート パッケージの設定を開きます。
いる必要があります。このサンプル デザイ
[Drivers] ビューをクリックして、すべてのペ
ンは、32 ビット アドレス指定のため、レジ
リフェラルおよび対応するドライバーのリス
スタは 0x04 で 区切られます。た だし、
トを表示します。ペリフェラルのドライバー
このコマンドを記 述したら、次にハード
XPS を使用してペリフェラルを作成したと
を変更するには、そのデバイスに適用可能な
ウェア環境でソフトウェアをテストし、希望
きにドライバー作成オプションを有効にして
ドライバーのリストから、適切なドライバー
どおりに機能することを確認します。
いた場合は、ペリフェラル専用の個別のドラ
を選択します ( 図 5)。
おわかりのように、Zynq SoC デザイン
イバーが作成されます。このドライバーも、
ペリフェラルのドライバーを名前によって
内で独自のペリフェラルを作成することは、
PlanAhead ソース ディレクトリのドライ
選択し、[OK] をクリックします。自動コン
最初に思ったほど難しい作 業ではありませ
バー サブディレクトリに配置されます。
パイル オプションを選択していた場合は、
ん。ペリフェラルを作成すれば、Zynq SoC
デザイン内ではジェネリック ドライバーの
プロジェクトが再コンパイルされます。コー
のプロセッシング システムおよび ( 最終的
代わりにこのタイプの専用ドライバーを使用
ドが再構築されたら、与えられたドライバー
には ) ソリューション全体に、いくつかのメ
できますが、新しいドライバーが認識される
を使用してペリフェラルと通信するまでもう
リットをもたらします。
LED_IF_mWriteSlaveReg0(LED_ ADDR, LED_IF_SLV_REG0_OFFSET, 0x01);
http://japan.xilinx.com/
41
XP L A N ATION: FPGA 101
JESD204B: Critical Link in the FPGA-Converter Chain
JESD204B : FPGA コンバーター チェーンのクリティカル リンク Jonathan Harris Product Applications Engineer High-Speed Converter Group Analog Devices jonathan.harris@analog.com
42 Xcell Journal 84 号
X P L A N AT I O N : F P G A 1 0 1
データ コンバーターとザイリンクス FPGA の インターフェイスとして、新しい JESD204B
高速シリアル リンクの利用が急増しています。 このインターフェイス形式とプロトコルを 使用するには、ハードウェアとタイミングの 基本的な問題を考慮に入れて 設計する必要があります。
現在のデザインの多くは、データ コン
ンバーターのサンプリング レートの高速
バーターと FPGA 間のインターフェイス
化に対応します。また、ピン数の大幅な
にパラレル低電圧差動信号 (LVDS) 方式
削減により、パッケージの小型化とトレー
を採用しています。また、 低速コンバーター
ス配線の削減が可能となり、ボード デザ
を使用した FPGA デザインの一部には、
インの複雑性が多少改善されます。
現在でも CMOS インターフェイスが使用
しかし、これらの利点を活用するには、
されています。しかし、最新の高速デー
十分な知識が必要です。
タ コンバーターと FPGA では、LVDS
イ ン タ ーフ ェイ ス の 各 タ イ プ に は、
や CMOS 方式のパラレル デジタル イン
JESD204B を含めて、タイミングの問
ターフェイスから、JESD204B と呼ば
題などの設 計上の問題 がつきものです。
れるシリアライズド インターフェイスへの
各インターフェイスには 独自のパラメー
移行が進んでいます。JESD204B は、
ターがあり、それぞれの仕様の詳細は多
半導体技術標準化団体である JEDEC 半
少異なりますが、満足できるシステム性
導体技術協会によって開発された新しい
能を達成するには、これらのパラメーター
規格です。
を適切に解析する必要があります。また、
コンバーターの分解能と処理速度の向
ハードウェアの選 択も必要です。たとえ
上とともに、効率の高いインターフェイス
ば、すべての FPGA とコンバーターが
への要求が高まっています。このインター
JESD204B インターフェイスをサポー
フェイスは、大半のシステム デザインで
トするとは限りません。さらに、適切な
FPGA と一緒に配置されるアナログ / デ
FPGA を選択するには、レーン データ
ジタルまたはデジタル / アナログ コン
レートなどのパラメーターの最新情報に
バーターと FPGA 間のクリティカル リン
通じている必要があります。
クです。 JESD204B インターフェイスは、
新しい JESD204B インターフェイス
高い効率に加えて、従来のインターフェイ
について詳しく説明する前に、設計者が
ス テクノロジよりも優れた数々の利点を
長きにわたって FPGA とコンバーター間
設計者に提供します。JESD204B を採
のリンクに使 用してきた 2 つ の 方 式
用した新しい FPGA デザインは、高速イ
(CMOS と LVDS) について簡単に説明
ンターフェイスのメリットを生かして、コ
しましょう。
http://japan.xilinx.com/
43
X P L A N AT I O N : F P G A 1 0 1
VDD
Input
VDD
Output
VDD
Input
Output
a) Inverted output
b) Noninverted output 図 1 – 標準的な CMOS デジタル出力ドライバー
CMOS インターフェイス
力は低インピーダンスです。ドライバーの入
10pF)、 チ ャ ー ジ 電 流 ( 出 力 当 た り 約
サンプル レートが 200MSPS (Mega
力側では、2 個の CMOS トランジスタの
10mA) です。できるだけ小さな容量性負荷
Samples Per Second) 未満のコンバー
ゲートが KΩ ~ MΩ 単位の高インピーダン
を使用して、チャージ電流を最小限に抑える
ターでは、一般的に FPGA へのインターフェ
スを発生します。ドライバーの出力側では、
ことが重要です。また、図 2 に示すように、
イスに CMOS を使用しています。標準的な
インピーダンスはドレイン電流 (ID ) によって
ダンピング抵抗はチャージ電流を最小限に
CMOS ドライバーは、図 1a) に示すように、
決まり、数百 Ω 以下に保たれます。CMOS
抑えます。チャージ電流は合計すると急激に
電源 (VDD ) とグランド間に接続される 2 つ
の電圧レベルはほぼ VDD ~グランドの範囲
増えるため、チャージ電流を最小限に抑える
のトランジスタ (NMOS と PMOS) で構成
でスイングするため、VDD の大きさによって
ことが重要です。たとえば、4 チャネルの
されます。この構造では出力が反転しますが、
は非常に高くなる可能性があります。
14 ビット A/D コンバーターでは、過渡電
それを避けるには、図 1b) に示すバック トゥ
CMOS で注意すべき重要な特性は、ロジッ
流が 14 x 4 x 10mA = 560mA という非
バック構造を使用します。CMOS 出力ドラ
ク レベルの標準スイッチング速度 ( 約 1V/
常に大きな値になります。このように大きな
イバーの入力は高インピーダンスであり、出
ns)、出力負荷 ( 駆動されるゲート当たり約
過渡電流は、直列ダンピング抵抗を使用し て抑制できます。この方法で、 過渡電流によっ て出力に生じるノイズを低減し、A/D コン バーター内のノイズと歪みの増加を防ぐこと
VDD
ができます。
VDD
LVDS インターフェイス dV/dt = 1V/ns
間約 350mV の低電圧差動信号を伝送し
Output C i = CxdV/dt
たさまざまな利点を FPGA 設計者に提供 します。LVDS インターフェイスは、ピーク
R Input
LVDS は、CMOS テクノロジよりも優れ
10pF
ます。この低電圧振幅により、スイッチング を高速化し、EMI を軽 減します。さらに、 Spartan ® デバイス、Virtex ®、Kintex ®、 および Artix ® デバイスなど、ザイリンクス FPGA ファミリの多くの製品が LVDS を サポートしています。また、LVDS は差動 信号を使用するので、コモンモード ノイズ 除 去 性 能に優れています。つまり、信号に
図 2 – CMOS 出力ドライバーと過渡電流およびダンピング抵抗
44 Xcell Journal 84 号
カップリングするノイズは両方の信号パスで
X P L A N AT I O N : F P G A 1 0 1
おそれがあります。適切な終端以 外に、伝
VDD
送ラインの 物理レイアウトにも注 意が必要 で す。 適 切 なライン 幅 を 使 用 することで、
IS1
適切なインピーダンスを維 持できます。製 造プロセスのばらつきによってインピーダン スが大きく変化しないようにしてください。
Input+
また、信号反射が起こりにくいように、差動
Input– Output+
伝 送ラインの間隔が急に変わらないように してください。
Output– JESD204B インターフェイス
Input+
Input–
CML (Current Mode Logic) 出力ドライ バーを採用した JESD204B シリアライズ ド インターフェイスは、高速コンバーターお よび FPGA 分野の最新テクノロジです。通
IS2
常、CML ドライバーは、高分解能 (14 ビッ ト以上 )、高速 (200MSPS 以上 )、 小型パッ ケージで低消費電 力のコンバーターに使 用 されます。この方式は、LVDS を使用する
図 3 – 標準的な LVDS 出力ドライバー
200MSPS 速度域の高速コンバーターと多少 同相になる傾向があるため、大部分が差動
します。
重なる部分があります。つまり、JESD204B
レシーバーによって 除 去さ れます。LVDS
差動信号で注意すべき重要な要素は、適
に移行する設計者は、LVDS 方式の高速コ
には約 100Ω の負荷抵抗が必要ですが、
切な終端です。図 4 に、標準的な LVDS
ンバーターをベースにしたものと類似の定評
これは通常 LVDS レシーバー側の並列終
ドライバーと、レシーバー側に必要な終端を
あるデザインを利用できそうです。その 結
端抵抗によって与えられます。また、LVDS
示します。1 個の差動終端抵抗 (R TDIFF) ま
果、デザインの複雑性がある程度改善され、
信号は制御インピーダンス伝 送ラインを使
たは 2 個のシングルエンド終端抵抗 (R TSE)
用して配線する必要があります。図 3 に、
を 使 用できます。正しく終 端しないと、信
CML ドライバーと JESD204B シリアラ
標準的な LVDS 出力ドライバーの概要を示
号品質が低下し、伝送中にデータが壊れる
イズド インターフェイスを組み合わせると、
リスクが多少軽減されます。
VDD
IS1
Input+
Input– Output+ Output–
RTDIFF Input+
Input–
RTSE LVDS Receiver
RTSE
IS2
図 4 – 終端付き LVDS 出力ドライバー
http://japan.xilinx.com/
45
X P L A N AT I O N : F P G A 1 0 1
最大 12.5Gbps までのコンバーター出力
イバーを使 用する場合も、適切な終端イン
CMOS、LVDS、 または CML (JESD204B)
データ レートに対応できます。この高速伝
ピーダンスと伝送ライン インピーダンスを維
出 力ドライバーを採 用したコンバー ターを
送により、コンバーターのサンプル レート
持することが重要です。信号品質を測定する
FPGA デザインに使用する場合は、これら
をギガサンプル (GSPS) レベルまで引き上
方法には、アイ ダイアグラムがあります。ア
の長所と短所を念頭に置くことが重要です。
げる余 裕を確保できます。さらに、必要な
イ ダイアグラムは、リンク上の信号に関す
これらのインターフェイスは、FPGA と A/
出力ピン数は大幅に減少します。クロックは
る 複 数 のパ ラメー ター の 測 定 結 果 を グ ラ
D コンバーターまたは D/A コンバーター間
8b/10b エンコード データ ストリーム内の
フィック 表 示しま す。 図 5 に、5Gbps
のクリティカル リンクです。システムを設計
エンベデッド クロックになるため、個別の
JESD204B リンク上の適切に終端された
する際は、FPGA 内のレシーバーがコンバー
ク ロ ッ ク 信 号 の 配 線 は 不 要 に な り ま す。
CML ドライバーのアイ ダイアグラムを示し
ターのデータを正しく取り込めるように、各
CML ドライバーを採用したインターフェイス
ます。このアイ ダイアグラムは、正常な遷
タイプのドライバーの性質と要件を考慮に入
は通常はシリアル インターフェイスなので、
移と十分に開いたアイを示しており、FPGA
れる必要があります。コンバーターに使用す
CMOS や LVDS を使用した場合に比べて、
内のレシーバーが障害なくデータを解 釈で
るデジタル出力のタイプに応じて、駆動する
必要なピン数の増加ははるかに少なくて済
きる こ と が わ か りま す。 図 6 に、 同じ
負荷を理解し、必要に応じて適切な終端を
みます。
5Gbps JESD204B リンク内の終端が不
使用し、適切なレイアウト手法を利用するこ
表 1 に、14 ビット分解能でさまざまな
適切な CML ドライバーの測定結果を示し
とが重要です。コンバーターの処理速度と分
チャネル数の 200MSPS コンバーターに
ます。このアイ ダイアグラムはジッターが多
解能の向上とともに、効率の高いデジタル
使 用される 3 種 類のインターフェイスの
く、振幅が小さく、アイが閉じており、この
インターフェイスへの要求が高まっています。
ピン 数を 示します。このデータは、CMOS
場合 FPGA 内のレシーバーはデータの解釈
このような状況の下で、最適なレイアウト手
出力と LVDS 出力の場合は各チャネルの
が困難になります。おわかりのように、適切
法で適切に設計されたシステムの重要性は
デ ー タ に 対 する同 期クロックを前 提にし、
な終端を使用して最大限のシグナル インテ
ますます高まっています。
JESD204B を使用したデータ転送につい
グリティを確保することが非常に重要です。
JESD204B シリアライズド データ イ
ては 4Gbps の最大データ レートを想定し
ンターフェイスは、コンバーターからレシー
ています。このレーン レートは、現在市販
より高品質で高速のインターフェイスへ
されている Virtex-6 ファミリ、Virtex-7、
コンバーターに使用される 3 種類の主要
送 を 実 現 し ま す。 最 新 のコ ンバー タ ー と
Kintex-7、Artix-7 ファミリの多くの FPGA
なデジタル出力方式には、FPGA に接続す
FPGA は、JESD204B をサポートするド
における最 大レート制限の範囲に十 分収ま
る 場 合、それぞ れ 利 点と 欠 点 が ありま す。
ライバーを 使 用して 設 計されています。最
バー デバイスへの高品質で高速なデータ転
ります。ピン数を大幅に削減できることに注 目すれば、JESD204B に移行する理由は
Number of Channels
Resolution
CMOS Pin Count
ことで、これらのリソースをほかのシステム
1
14
13
14
4
機能のために解放できます。
2
14
26
28
4
4
14
52
56
6
8
14
104
112
6
明らかです。ボード配線の 複雑性が改善さ れ、FPGA が必要とする I/O が削減される
この傾向を一歩先へ進めて、1GSPS で 動作する 14 ビット コンバーターの場合を 考えると、JESD204B を使用するメリッ
LVDS Pin Count CML Pin Count (DDR) (JESD204B)
トはさらに明らかになります。ギガサンプル コンバーターに CMOS 出力インターフェイ
表 1 – CMOS、LVDS、および JESD204B を使用した
スを使用するのはまったく非実用的なので、
200MSPS A/D コンバーターのピン数の比較
この例では CMOS を省略しています。ま た、コンバーターのチャネル数は 4 チャネ ル、レーン レートは 5Gbps に制限されま すが、この値は Virtex-6 FPGA およびザ
Number of Channels
Resolution
LVDS Pin Count (DDR)
CML Pin Count (JESD204B)
イリンクス 7 シリーズ FPGA ファミリの多
1
14
14
4
2
14
28
4
て出力配線の複雑性をかなり改善できます。
4
14
56
6
4 チャネル コンバーターでは、ピン数は約
8
14
112
6
くの製品に適合します。おわかりのように、 JESD204B は、出力ピン数の削減によっ
6 分の 1 に削減されます ( 表 2)。 LVDS インターフェイスと同じように、 JESD204B インターフェイスに CML ドラ
46 Xcell Journal 84 号
表 2 – LVDS を使用した 1GSPS コンバーターと JESD204B を使用した 1GSPS コンバーターのピン数の比較
X P L A N AT I O N : F P G A 1 0 1
初に、帯域 幅の拡張を求めるシステムレベ ルの要求が高まり、サンプル レートが向上 した 高 速 コンバー ターが 開 発さ れました。 次に、サンプル レートの向上が出力データ レート向上への要求を生み出し、 JESD204B の開発を促しました。システム設 計の 複雑 化 と コ ンバ ー タ ー の 性 能 向 上 と と も に、 JESD204 規格は新しい設計要件に適応し ながら進化し続けています。JESD204 規 格の進化によって、JESD204 インターフェ イスの利用は増加し、最 終 的にはコンバー ターと FPGA 間のデフォルト インターフェ
図 5 – 適切に終端したドライバーのアイ ダイアグラム (5Gbps)
イスの役割を担うに至るでしょう。 詳細は、 『JESD204B サバイバル ガイド (英文) 』(http://www.analog.com/static/ imported-files/tech_articles/JESD204BSurvival-Guide.pdf) をご覧ください。また、 ザイリンクスと Analog Devices 社 は、 JESD204B と FPGA プラットフォームを 使用した迅速なプロトタイプ作成について解 説した 3 部構成の動画を YouTube に掲 載しています (http://www.youtube.com/ playlist ?list = P Liwaj4qabLW xRUOHKH2aGMH7kkNr0euo3)。
図 6 – 終端が不適切なドライバーのアイ ダイアグラム (5Gbps)
Get on Target
パートナーの皆様、貴社の製品・サービスを Xcell journal 誌上で PR してみませんか? Xcell Journal は プログラマブル デジタル システム開発者へ ザイリンクスおよびエコシステム製品の最新情報をはじめ、システム/アプリケーションの解説、 サービス/サポート情報、サードパーティー各社の製品情報などをお届けしています。 現在では日本各地の 10,000 名を超える幅広い分野のエンジニアの皆様に愛読いただいており、ザイリンクスの Web サイトから、無償でダウンロード または iPad 対応デジタル版が購読できます。貴社製品/ソリューションのプロモーションに非常に効果的なメディアです。
広告掲載に関するお問い合わせ先 Xcell Journal 日本語版への広告出向に関するお問い合せは E-mail にてご連絡下さい。
有限会社 エイ・シー・シー sohyama@acc-j.com
http://japan.xilinx.com/
47
VivadoTM Design Suite WebPACK TM Edition で比類なき インテグレーションおよびインプリメンテーション タイムを実現
詳細はこちら
■東京エレクトロン デバイス(株) TEL(045)443-4016 x2web@teldevice.co.jp ■アヴネット・インターニックス(株) TEL(03)5792-8210 EVAL-KITS-JP@avnet.com ■(株)PALTEK TEL(045)477-2005 nfo_pal@paltek.co.jp ■新光商事 (株) TEL(03)6361-8086 X-Pro@shinko-sj.co.jp
©Copyright 2013 Xilinx, Inc. All rights reserved. ザイリンクスの名称およびロゴは、米国およびその他各国のザイリンクス社の登録商標および商標です。 ARMは、EUおよびその他の国におけるARM Limitedの登録商標です。他のすべての商標はそれぞれの所有者の財産です。
TO O L S OF XCELLENCE
Innovative Power Design Maximizes Virtex-7 Transceiver Performance
Virtex-7 FPGA のトランシーバー
性能を最大限に引き出すための 革新的な電源デザイン
株式会社ベルニクス フィールド アプリケーション エンジニア 水鳥 貴之
mizutori@bellnix.co.jp
設計者は最新 FPGA の電源システムを
構成する際に、各電圧レールのシーケンス、 許容電圧範囲、大電流要求などを 考慮しなければいけません。
POL コンバータはそれらがカギとなります。
http://japan.xilinx.com/
49
TOOLS OF XCELLENCE
昨今では日々進化し続ける半導体の高い
システム設計者は、多くのレイアウトを試し
クターが電源設 計を複雑なものとし、設計
パフォーマンスを、いかに満足に引き出すか
たり信号のインテグリティと電力の問題に取
者に対しては正しい電源回路の選択を難し
ということが、設計者の課題と言えます。設
り組んだりしています。ザイリンクスはこれ
くしているのです。数 mV レベルでの電圧
計者は最新 FPGA の機能を上手く使いこな
まで、こうした I/O リソースに対する要求の
管理は基板レイアウト技術や製造技術のみ
すことができてこそ、システム性能の向上を
高まりに応えて、I/O パフォーマンスを桁違
での対 策では不十 分であり、電 源システム
実現できるといえるのではないでしょうか。
いに向上させるマルチギガビット トランシー
の電圧は正確で信頼性が高くなければなり
そこで本稿では、最新 FPGA である Virtex-7
バー (MGT) I/O モジュールを最新のデバイ
ません。その 結果、電 源システムを設 計す
FPGA のトランシーバー性能を引き出す上で
スに採用してきました。 例えば、Virtex® -7
る際には、電源製品自体の特徴や特性およ
の第一歩として、電源の選択・設計について
HT FPGA は、96 個の 13.1Gbps トラン
びデバイスの特性を考慮した設計が不可欠
考察しています。
シーバーを搭載しているため、 最大 2.78Tbps
です。例えば、コア電圧 1.0V の場合の
ザイリンクス 7 シリーズ FPGA は、かつ
を 実 現 する 業 界 最 高 のバ ンド 幅 を 提 供し
許 容 電 圧 範 囲 は ±30mV となりま す。
てない低電力、高パフォーマンス、そして容
ます。
もし、10A の電流で変化が起きた場合に、
易なデザインの移行を提供する最新の FPGA
FPGA が高度化するに従い、供給電源に
電源ラインに 5mΩ の抵抗があるとそれだ
ファミリです。 TSMC 社の HPL ( 高パ
対する要求がますます複雑になっています。
けで 50mV の電圧降下が生じます ( 図1参
フォーマンス、低消費電力 ) 28nm プロセ
例えば、機能ブロックや回路ごとに対応す
照 )。このようなことからも最新の FPGA
スを採 用したこの革 新 的 なファミリは、競
る複 数の 電 圧レール、複 数の 電 圧レベル、
ボード で は、 ど の ような 状 況 に お いて も
合 他 社 の FPGA と 比 べ て 消 費 電 力 を および大電流要求などを考慮しなくてはな
FPGA の電源電圧を許容電圧範囲内に維
50% 削減可能です。
りません。ここでは Virtex-7 FPGA に関
持することは、容 易なことではなく、細 心
FPGA の大規模化、高性能化が進むにつ
連する電源要求を深く分析します。
の配慮が必要になります。また、選 択する
れて、I/O リソースが FPGA のパフォーマ
POL コンバータも出力設定精度が ±1%
ンスに対する大きなボトルネックとなってき
出力電圧の設定精度
ています。トランジスタ数は毎年 2 倍に増
半導体製造プロセス テクノロジの進化に
応していなければなりません。これらの理
えますが、FPGA ダイのサイズは多かれ少
伴い、FPGA を含む LSI ロジックのパ
由やその他の理由から、ボードを設計する
なかれ同じです。I/O 数はリニアにしか増え
フォーマンスや 集 積 度は格段に向上してい
前に、設 計チームは、デザインと利用でき
ませんので、チップの内外に信号を伝達する
ます。
るオプションを徹 底的に調べる必要があり
I/O にとって、これが大きな問題となります。
同時に、半 導体メーカーはデバイスのコ
ます。
これが理由で、高バンド幅システムを求める
ア電圧を下げてきました。この 2 つのファ
FPGA の起動時の問題は様々です。まず、
Core Voltage Vccint
Core Voltage Vccint
+3.3V +3.3V
のような高 精度で、なおかつ高速応答に対
±300mv ±300mv
+2.5V +2.5V
+1.2V +1.2V +1.0V +1.0V
Bellnix BPE-37
±50mv ±50mv 350nm 350nm 250nm 250nm 180nm 180nm 90nm 90nm
±30mv ±30mv 65nm 65nm
28nm 28nm
図 1 – プロセス技術の進化とコア電圧の許容範囲
50 Xcell Journal 84 号
TOOLS OF XCELLENCE
図 2 – 競合他社の POL コンバータとの比較例、ベルニクスの POL コンバータの結果は左端
FPGA を正常に起動させるためには、電源
大きな回路には理想的な電源ソリューション
FPGA での動的な電流変化は、データ ス
起動時の厳密なシーケンス ルールを守らな
とはいえません。高速 SerDes は、電源回
トリーミングや計算処理などによって変化し
ければなりません。例えば、Virtex-7 FPGA
路のノイズによって引き起こされるジッター
ますが、図 2 のデータをみるとザイリンク
の MGT に必要なパワーオンシーケンスは、
に敏感です。高いジッターは信号を壊し、 デー
ス Virtex-7 FPGA の推奨動作電圧である
VCCINT_VMGTAVCC_VMGTAVTT また
タエラーを引き起こします。同様に、SerDes
1.0V±30mV を 超 え た 出 力 電 圧 の オー
は VMGTAVCC_VCCINT_VMGTAVTT に
の信号インテグリティが優れていることが重
バーシュートやアンダーシュートが発生して
なります。また、どちらのシー ケンスを 選
要で、これで優れた高速データ通信を成就し
いる他社 POL コンバータ製品もあることが
んだ場合でもパワーオフシーケンスは、パ
ます。当然のことながら、POL コンバータ
わかります。この結果がすぐトラブルに繋が
ワーオンシーケンスと逆になります。推奨
を選 択する際、ノイズの小さな電源を選 択
るかどうかは、使用方法や基板レイアウト、
されるシーケンスでない場合は、パワーアッ
する必要があります。
POL コンバータと FPGA 直近のデカップ
プおよびパワーダウン中の VMGTAVTT か
リング コンデンサなどによって変わるため
らの電流引き込みが仕様よりも高くなる可
高精度 POL コンバータの選択
能性があります。このようなシーケンス ルー
Virtex-7 FPGA のための適切な電源シ
し、10A/μs と 5A/μs 相当の大規模・急
ルを満足させるための一般的な方法として
ステムを 構 築 する のに 重 要 なステップ は、
峻な電流変化に対して、Virtex-7 FPGA の
は、シーケンスを組むことができる専用 IC
デバイスの要件に合った POL コンバータ
推 奨 動 作 範囲の電 圧 変 動に耐えうるには、
を使う方法と、POL コンバータの P-Good
を選 択することです。例えば、電 流容量が
過 度 応 答 特 性 の良 好な 製 品 の 選 択 が必 要
と ON/OFF を使う方法があります。
大きく、電流変化の大きな部分には過 度 応
だということが分かります。この場合、ベル
FPGA を使 用するデザインに対する電
答特性の高い POL コンバータの使用を推
ニクスの高速過 度 応答特性を持った BSV
源システムには、出力電圧をモニターする
奨します。近年では、FPGA のコア電圧であ
シリーズの選択は、ハイエンド FPGA だけ
回 路が必 要 で す。一 般 的に 製 品 の 微 調 整
る VCCINT だけではなく、MGT に必要な
でなく高速動作する DSP や CPU などに
段階で出力電圧をチェックし、プリント パ
VMGTAVCC や VMGTAVTT にも高精度、
も最 適な挙 動を示しているということがわ
ターンによる電圧降下を調整するために出
高速応答の POL コンバータを選択する必要
かります。
力 電 圧 のト リミ ン グ を 行 い ま す。 通 常、
があります。複数の POL コンバータの動的
POL コンバータを使用してトリミングを行
負荷変動時に対する電圧応答の変化を実測
うのですが、それにはデザインに使用する
した結果を図 2 に示します。評価条件は公
出力電圧と電源投入シーケンスの プログラミング
POL コンバー タが 出 力 電 圧 調 整 機 能を
平性を保つため全ての POL コンバータにお
前述したように、FPGA のプロセス技術
持っている必要があります。電 源システム
いて同一条件としました。ただし、出力コン
が微 細化するにつれ電源電圧も低くなりま
には、デザインの電圧と電流をモニターす
デンサの容量については、各製品の推奨値
すが、パフォーマンス同様機能の数も増え
る機能が必要で、消費電流の測定と電源の
を採用しています。
て行きます。これは、電流が急激に変化し、
誤動作をチェックし、予測される不良を改 善するのに使われます。 高速 SerDes は、複数のチャネルを持ち 動作周波数が高いので、大きい電流を必要
• 入力電圧: 5 V 固定 • 出力電圧:1 V 固定 (Virtex-7 FPGA のコア電圧 )
とします。ロー ドロップアウト (LDO) レ
• 負荷電流:0 ~ 10 A
ギュレータをこの目的に使用しますと、効率
• 電流変化のスルー レート:5 A/μs
が悪く多くの熱を発生するため消費電流の
( 単時間当たりの )
一概には結論を出すことは出来ません。しか
電源に対する要求が増大することを意味し ています。したがって、FPGA の許容範囲内 で電圧を管理することがますます難しくなっ てきています。これは、FPGA のコア電圧 だけでなく、FPGA の高速 SerDes につ いてもいえます。Virtex-7 FPGA トラン シーバーから最大のパフォーマンスを引き出
http://japan.xilinx.com/
51
TOOLS OF XCELLENCE
Vsense
Vin
+
電圧が一致するように動作します。
Vout
CPU で DA コンバータを制御すること により、出力電圧を設定できます。この回路 を使用する際には、注意すべき点が 2 つあ
BSV series
Trim
ります。1 つ目は、POL コンバータを ON する時、まず、DA コンバータの出力を 0V
GND Vsense
–
GND
3.3V
にしておき、ON/OFF 制御を ON にした後 に DA コンバータを希望の出力電圧に設 定する事です。出力 OFF 時、Amp2 の 反転入力側が 0V なのに対し、非反転入力 側の電圧が高いと、Amp2 は出力電圧を上
Vsense Vsense
+ –
+ –
げる方向に Trim 端子電圧を制御してしま
Amp 1
+ –
い、POL コンバータの出力を ON した 際に過電圧が発生してしまいます。2 つ目は、
Amp 2
DA コンバータの出力に RC 回路を接続 し、Amp2 の非反転入力端子の電圧が急 激に上がってオーバーシュートしないように
DAC
する事です。 ベルニクスでは 7 シリーズ GTX/GTH FPGA を評価するための評価用パワー モ ジュール BPE-37 を開発しました。この
図 3 – BSV シリーズの POL コンバータにプログラマブル出力電圧を付与する方法
BPE-37 では、以前に紹介した回路を使用 し、MGT に必要な 4 つの POL コンバー タを制御しています。MGT に必要な 4 つ の POL コンバータには、前述した高精度、
すために、電 源に関して考慮すべき重 要な
コンバータにプログラマブルな出力電圧を付
高速応答、低リップル ノイズなどの全ての
ポイントがいくつかあります。例えば、電源
与することができます。
要求を満足している BSV シリーズ POL コ
ラインの抵抗成分により電圧降下が発生し
まず、Amp1 で出力電 圧を検出します。
ンバータを搭載しています。BPE-37 は、
た場合、POL コンバータの出力電圧を調整
差動増幅回路を使用してリモート センスす
マイクロコントローラから DA コンバータ
しなければなりません。マージニング 試 験
ることにより、POL コンバータから負荷へ
を制御し、各出力電圧を任意の値に設定し
を行う際にも、出 力 電 圧 調 整 が必 要 で す。
の配線による電 圧降下をキャンセルし、出
ます。マイクロコントローラは、POL コン
システムを迅速に評価するには、POL コン
力電圧を高精度に制御できます。Amp1 で
バータの ON/OFF 端子を使用する事によ
バータの出 力電 圧をモニターし、トリミン
検 出した 出 力 電 圧と、DA コンバー タの 出
り、任意のタイミングで出力を起動・停止し、
グする必要があります。
力電圧を Amp2 で比較します。Amp2 の
電 源のシー ケンスを 制 御します。このテク
ここで、Virtex-7 FPGA の電源要件を満
出力は、POL コンバータの Trim 端子に接
ニックにより、出力電 圧やシー ケンス設 定
たすように、CPU プログラムで出力電圧を
続します。POL コンバータの出力電圧は、
の変更、出力電圧・電流のモニタリングは、
調整する方法を紹介します。図 3 に示した
Trim 端子の印加電圧に応じて変化しますの
PMBus 規格のシリアル通信により行う事
回路図を使用すると、BSV シリーズの POL
で、負荷端の電圧と DA コンバータの出力
ができます。 BPE-37 の回路構成は従 来のアナログ タイプの POL コンバータにデジタル機能
Maximum Power supply allowed
POL converters
Power supply noise
を追加できるようになっており、これにより
Dynamic response
MGTAVCC
1.0V±30mV BSV-1.5S12R0H 8mVp-p
18mV (voltage dip)
MGTAVTT
1.2V±30mV BSV-3.3S8R0M
8mVp-p
20mV (voltage dip)
MGTVCCAUX 1.8V±50mV BSV-3.3S3R0M 10mVp-p
10mV (voltage dip)
ザイリンクス Virtex-7 シリーズの全ての電 源要求を満たすことが可能です。FPGA 内 の GTX/GTH トランシーバーは、高速過 度応答の POL コンバータを必要としてい ます。表 1 に、BPE-37 の重要な仕様を 掲載します。 ベルニクス製品の詳細は、http://www. bellnix.com/news/274.html をご覧くだ
表 1 – BPE-37 の重要な仕様
52 Xcell Journal 84 号
さい。
ハードウェア、ソフトウェア、I/O がプログラマブルなSoC
詳細はこちら
■東京エレクトロン デバイス(株) TEL(045)443-4016 x2web@teldevice.co.jp ■アヴネット・インターニックス(株) TEL(03)5792-8210 EVAL-KITS-JP@avnet.com ■(株)PALTEK TEL(045)477-2005 nfo_pal@paltek.co.jp ■新光商事 (株) TEL(03)6361-8086 X-Pro@shinko-sj.co.jp
©Copyright 2013 Xilinx, Inc. All rights reserved. ザイリンクスの名称およびロゴは、米国およびその他各国のザイリンクス社の登録商標および商標です。 ARMは、EUおよびその他の国におけるARM Limitedの登録商標です。他のすべての商標はそれぞれの所有者の財産です。
業界初、ASIC クラスのプログラマブル アーキテクチャ
詳細はこちら
■東京エレクトロン デバイス(株) TEL(045)443-4016 x2web@teldevice.co.jp ■アヴネット・インターニックス(株) TEL(03)5792-8210 EVAL-KITS-JP@avnet.com ■(株)PALTEK TEL(045)477-2005 nfo_pal@paltek.co.jp ■新光商事 (株) TEL(03)6361-8086 X-Pro@shinko-sj.co.jp
©Copyright 2013 Xilinx, Inc. All rights reserved. ザイリンクスの名称およびロゴは、米国およびその他各国のザイリンクス社の登録商標および商標です。 ARMは、EUおよびその他の国におけるARM Limitedの登録商標です。他のすべての商標はそれぞれの所有者の財産です。