Zynq

例によってZynqを調べていたら、意外と安くARM SoCの代わりに使えそうな値段を想定しているとのこと。
コストが安いのは、FPGA部分がVirtexほど製造が難しくないArtix/Kintexなのと、ARMはハードIPで実装しているので論理規模の割にダイサイズガそんなに大きくならないのが理由らしい。
I/Oの数もVirtexほど多くなく、あくまでARMがメインでFPGAがサブという構成で、以前のVirtexについていたPowerPCとは扱いがだいぶ違うということを実感した。


SoCの代わりに使うとすれば、メリットはHWそのものがアップグレードできること(外部回路の都合もあるのでそんなに簡単にできるかは不明)、不必要な機能を削ってその分を別の機能に回せるということだろうか。
FPGA部分の設計をしないといけないからそんなに簡単にできないんじゃないか?と思ったが、Xilinx提供のAXI4 IPを使えばプロセッサ側から出ているAXI 4にIPを繋ぎ、外部I/Oの設定をすれば動いて、FPGAの知識はそこまで必要ない…らしい。
アクセラレータ的に使うならパーシャルリコンフィギュレーションで必要に応じて書き換えるということもできる…かも。


逆にデメリットは消費電力に対する効率が悪いことだと思う、ある意味FPGAの宿命。
ただ、ARM SoCでもまだほとんど使われていない28nmプロセスで作られているのと、XilinxTSMCが開発したハイパフォーマンスかつ低消費電力なプロセスを使っているとのことなので、旧来のFPGAに比べて改善はしている様子。
結局最終的にはユーザーデザインを載せて評価するしかないのだろうか。