Xilinx SoC Zynq-7000を触ってみる
Xilinx SoC(Zynq-7000)
一体、何モノ?
FPGAの中にARMコアを搭載した(逆でARMコアにFPGAを内蔵した、という表現の方が正しいかも??)デバイスの1つに、XilinxのZynq-7000があります。
その後継デバイスとしてARMコア(Cortex-A53 + Cortex-R5)を搭載したZynq UltraScale+ MPSoCというデバイスが登場し、「こんなお化けみたいなChipをいったい何に使うの!?」と私の中では話題になっています。
対抗馬は少なくともAltera SoCやGPU勢力のTegra K1/TX1等があるようです。将来的にはZynq UltraScale+ MPSoCを試したいのですがサンプルの豊富さから、まずはXilinxのZynq-7000に焦点を当て、Xilinx SoC(Zynq-7000)開発
を試してみようと思います。
なぜ、FPGA SoC?
このデバイスを使うことでどんなメリットがあるのか??
Xilinx社のHPでは、「BOMコスト削減」「セキュリティ面」等、多々あるようですが、私は
- 基本的にはARMコアで処理させるが、どうしてもリアルタイム性を求める処理に関してはFPGAで処理させることができる点
だと思います。「カスタマイズ可能なCPU」といったイメージです。
標準品の進化によって大体のことはスピーディに実現できる世の中でも、やはり特殊用途では専用品でなければ実現できない性能も存在します。
付加価値の高い製品を開発していく中でこのようなデバイスを活用する機会は増加するのではないでしょうか。
何をするか?
そこで、すぐにやってくるであろう将来に備え、
Xilinx Base TRD 2014.4をベースに改造を加え、動作させてみるという流れで触ってみようと思います。
以下、今後の計画を記載します。
対象デバイス
評価ボード
改造計画
AXI4-LiteにGPIOを接続し、 以下の項目を実施します。
- LEDを制御
- Switchを制御
まずはTerminalから制御、その後Qtアプリから制御する予定です。
カテゴリ
- Zynq-7000
ツール
使用するツールとVersionは次の通りです。
ツール名 | Ver. |
---|---|
Vivado | 2014.4 |
Vivado HLS | 2014.4 |
Petalinux Tools | 2014.4 |
参考
Zynq-7000
- Zynq-7000 Wiki
- UG821: Zynq-7000 S/W Developers Guide(English)
- UG821: Zynq-7000 S/W開発者向けガイド(日本語)
- UG925: Zynq-7000 ZV702 TRD 2014.4(English)
- UG585: Zynq-7000 Manual(English)
- UG585: Zynq-7000 Manual(日本語)
Petalinux
おまけ(取り組みたいツール)
SDSoC
- SDSoC
- UG1027: SDSoC Environment(English)
- UG1027: SDSoC環境(日本語)
- UG1028: SDSoC Environment User Guide(English)
- UG1028: SDSoC環境ユーザーガイド(日本語)
- UG1146: SDSoC Environment User Guide -P/F & Lib-(English)
- UG1146: SDSoC環境ユーザーガイド-P/F & Lib-(日本語)
以上です。
はじめまして、S/Wエンジニアの蘭丸です。
自己紹介
お世話になります。
Driver開発に従事するS/Wエンジニアの蘭丸です。Driver開発に携わって、はや7年。
最近は後継者育成に励んでます。。。
ブログの目的
技術や管理方法、技術のビジネスへの展開等、まだまだ身に着けなければならないことばかりのエンジニアですが、何事にも先頭に立って挑戦する志を大事にしています。 自身の成長とともに周囲へ良い影響を与えることにもつながると思っています。
まだまだモヤッとしていますが、ブログでは下記内容について記載するつもりです。
どうぞよろしくお願いいたします。
ところでRegisterたたき芸人って??
Registerとは
ここで言うRegisterは、
ASIC/FPGA内にある高速の記憶部
と定義します。
要はASIC/FPGAに対して「こう動いてねっ!」って伝えるための設定箇所です。
ASIC/FPGAに埋め込んだ独自の回路を意図通りに動作させるために設定します。
芸人とは
芸人と聞けば、昨今はお笑い芸人を指すことが多いのですが、、、
広義では下記の通りのようです。
芸人=パフォーマ全般が芸人
パフォーマー!なんか英語にしただけでカッコいい!!
(実際はとても泥臭いのですが。。。)
では、Registerたたき芸人とは
上記のASIC/FPGAを意図した通りに動作させるためにRegisterをかっこよくたたいて魅せるパフォーマー(^^♪
だと勝手に定義しています(笑)
魅せる??
通常はF/WでRegisterを制御しますが、問題発生時には、Debugツールを用いて手動でRegisterをたたきまくります。
DebugでRegisterをたたくときに魅せます!色々なASIC/FPGAのRegister、ほぼ覚えてます。Register仕様書なんて無くてもたたけます!!500byte以上。
Driverが無くても意図した設定できちゃいます!
マニアックすぎるので、「Registerたたき芸人あるある」はまたの機会に。。。
以上です。