Last Update 2019/06/21

My回路のIPコア・ライブラリ化から共通クロス開発環境の構築まで
FPGAマガジン No.12
ARMコアFPGA×Linux初体験

FPGAマガジン編集部 編
B5判 144ページ
定価2,420円(税込)
JAN9784789846226
2016年2月1日発行
好評発売中!
FPGAマガジン No.12

 Altera社製FPGA“Cyclone V SoC”そしてXilinx社製FPGA“Zynq”.これらのFPGAには,数百MHzのクロックで動作するARM Cortex-A9デュアル・コア・プロセッサが内蔵されています.どちらのFPGAのコアも,スペック上は同じコアのように見えます.開発環境をできるだけ共通にすることはできないでしょうか.
 本特集では,まず初めにCyclone V SoCとZynqを比較し,あらためて両デバイスの特徴を整理します.
 次に同一のVGA表示回路をIPコアとして作成し,AlteraとXilinx両方のFPGA開発ツールにライブラリ化して登録します.そしてそれを回路モジュールとしてAXIバスに接続しFPGAに実装するまでを,SoC(System on a Chip)開発の事例として解説します.
 さらに共通のLinux開発環境を構築し,ルート・ファイル・システムやブート・ローダ,Linuxカーネルをビルドします.
 そして1枚のSDカードを用意し,Cyclone V SoCとZynqのどちらも起動できるよう,パーティションの設定方法や,第1段階ブート・ローダの書き込み方法,そしてFPGAとLinuxの起動に必要なファイルのコピー手順を解説します.
 SDカードが完成したら,Cyclone V SoCとZynqで実際にLinuxを起動させ,FPGAに実装したVGA表示回路用のデバイス・ドライバを作成します.最後に各種ベンチマークを走らせたり,実装したVGA表示回路の性能を,DirectFBを使ってグラフィックス表示し,こちらもベンチマークを測定して性能を評価します.

目 次


特集 ARMコアFPGA × Linux初体験


【AlteraでもXilinxでもどっちでもこい!】
Cyclone V SoCとZynqの性能を生かすにはLinuxが不可欠
プロローグ 今日から使う!ARMプロセッサ内蔵FPGA

【あなたはAltera派?それともXilinx派?】
入門評価ボードDE1-SoCとZYBOをターゲットにARMプロセッサ内蔵FPGAを比べる
第1章 Cyclone V SoCとZynqの比較とFPGA開発フロー

【My回路のライブラリ化の勧め】
FPGA内蔵メモリ・ブロックをデバイスの違いを意識しないで使うテクニック
第2章 VGA表示回路を例にしたMy回路のIPコア開発とライブラリ化

【System on a Chip開発を体験!】
Quartus Prime/QsysやVivado上でIPコアを選んで並べてAXIバスに接続
第3章 ビルディング・ブロック開発によるMy回路IPコアのFPGAへの実装

【共通カーネルはこうビルドする!】
ルート・ファイル・システムからクロス開発環境の構築,カーネルのビルドまで
第4章 共通カスタムLinuxディストリビューションの開発

【1枚のSDカードで両起動!】
Cyclone V SoC & Zynqの起動手順とブート用SDカードのファイル構成
第5章 ついに起動!デュアル・ブートSDカードの作り方

【DirectFBで画面にペンギンが躍る!】
I/Oアクセス方法やDMA転送ドライバ,各種ベンチマークの実行まで
第6章 Linuxデバドラ & アプリケーションの作成と性能評価

【SDカード・イメージ・ファイルも用意!】
スクリプト1発実行でクロス開発環境が自動で構築できる!
Appendix 特集関連ダウンロード・ファイルの内容


特集関連

【安価なDE0-Nano-SoCですぐ試せる!】
ARMコアとFPGAをつなぐハードウェア & ソフトウェアのリファレンス・デザイン
Atlas-SoCでアルテラSoC環境を手軽に楽しもう

【こちらの環境も両対応!】
もともとZynq用に用意されたLinux環境が,Cyclone V SoCにも対応!
使いやすいXillinux & XillybusをTerasic社SoCKit上に導入する


高位合成関連

【次はPythonで高位合成だ!】
Pythonで記述したソースからVerilog HDLソースを出力する高位合成ツール
プログラミング言語PythonではじめるFPGA開発入門


最新技術

【Quartus II Web Editionでも試せる】
DMA回路を自前で記述して回路規模を小さく,バス占有率も下げられる
Cyclone V SoCで試す無償版純正PCI Expressコアの使いこなし

【CPUがなくても仮想シリアル・ポートが組み込める!】
接続初期化処理(エニュメレーション)をハードウェアが自動で行う
USBコミュニケーション・デバイス・クラス対応のUSBターゲット機器の実装


基礎解説

【7シリーズFPGAでMicroBlazeを使おう!】
Vivadoで始めるソフトIPプロセッサMicroBlaze & MicroBlaze MCS
SDKを使ったMicroBlazeのソフトウェア開発手順詳細