@Vengineerの戯言 : Twitter SystemVerilogの世界へようこそ、すべては、SystemC v0.9公開から始まった
はじめに
SymbiFlow での論理合成に使われている Yosys。そして、配置配線は、VTR 。
今回取り上げる Yosys + nextpnr は、配置配線として、nextpnr を使うというものです。
Yosys + nextpnr
論文は、2019年3月25日に出ています。Yosys+nextpnr: an Open Source Framework from Verilog to Bitstream for Commercial FPGAs
github は、こちら:GitHub - YosysHQ/nextpnr: nextpnr portable FPGA place and route tool
2018年のスライド : The nextpnr FOSS FPGA place-and-route tool, Clifford Wolf, Symbiotic EDA
サポートしているデバイスは、
- Lattice iCE40 devices supported by Project IceStorm
- Lattice ECP5 devices supported by Project Trellis
- Lattice Nexus devices supported by Project Oxide
- Gowin LittleBee devices supported by Project Apicula
- (experimental) Cyclone V devices supported by Mistral
VPR との違いは、入力ファイルがBLIFではなく、json 。 そして、Packer, Placer, Router の後の Bitstream Generation まで行えます。VPR の場合は、FASMを使います。
Device Database API なるもので、Packer, Placer, Router がその Device Database API 経由でアーキテクチャの情報にアクセスする感じのようです。
おわりに
Yosys は知っていましたが、nextpnr は知りませんでした。。。VTR (VPR) が実質デファクトスタンダート的な扱いになっているところに、nextpnr を投入。
SYMBIOTIC EDAという会社が「YOSYS - SYMBIOTIC EDA EDITION」というものを扱っているようです。
Yosys の開発者は、Clifford Wolfさんですが、Homepage of Claire Wolf になっています。LinkedIn で調べても出てこなかった理由がこれでした。 2017年9月から2020年10月までSymbiotic EDAのCTO, Co-Founderをやっていたみたいです。 現在は、YosysHQのCTO, Co-Founderです。こちらが新しいサイト。Twitter ID @oe1cxw