時々Verilogを書きたくなることがある。
XilinxだとVivadoのインストールサイズを見るだけで、やる気が失せるので、
最近流行っている中国のFPGAをいじることにした。安いし。
入手
Sipeed TANG PriMER FPGA Development Board - Seeed Studio
SeedStudio本家が圧倒的に安いが、送料を考慮すると、+20ドルとかだった気がするので、他の物も購入するついでなどが良いと思う。
これとか面白い。(技適がついていないので注意)
JPのほうは高い。
Sipeed TANG PriMER FPGA開発ボード - Seeed Studio
次点で秋月。
Sipeed Tang PriMER FPGA Dev.Board: マイコン関連 秋月電子通商-電子部品・ネット通販
スイッチサイエンスでも売っていた。
Sipeed Tang Primer - スイッチサイエンス
スペック
秋月の引用
https://akizukidenshi.com/catalog/g/gM-14786/
■主な仕様
・FPGA:EG4S20BG256
・ロジックユニット:20K (LUT4/LUT5 ハイブリッド アーキテクチャ)
・SRAM:約130KB
・SDRAM:64Mb
・フラッシュ:8Mb
・電源:5V(microUSB)、または3.3~5V
・消費電流:約50mA(無負荷時)
・基板寸法:56.0mm×25.4mm
XilinxのSpartan7 XC7S15がロジックセル 12.8K(6in LUT)でIOはいろいろだし、たぶん速い?が、こちらは安い
開発環境
これだけ日本の多くのところで販売されているのだから開発環境ソフトウェアが危ないということはないと思う。
Requirements :: Documentation for Tang Primer
ソフトウェアをインストールしたら
licファイルをインストールdirの TD4.6.4\license にAnlogic.licにリネームして入れておく。
例:C:\Anlogic\TD4.6.4\license\Anlogic.lic
サンプルプロジェクト
GitHub - Lichee-Pi/Tang_FPGA_Examples: LicheeTang FPGA Examples
の
Tang_FPGA_Examples-master\0.LED\prj\led.al
を開く。
おまけ
module led ( input wire CLK_IN, input wire RST_N, output wire [2:0]RGB_LED ); // parameter time1 = 25'd24_000_000;//ツセツァテ陛アテ篠ェ24Mhz parameter time1 = 25'd3_000_000; reg [2:0]rledout; reg [24:0] count; reg [1:0]shift_cnt; .......
time1の値を小さくして、LEDの点滅周期が短くなることが確認できたので、正しく動作しているようだ。
感想
小さいし、安いし、ピンが多い。
Zyboほどは高性能ではないが、自作の機器に組み込むならばこれをそのままのせるというアイディアもあり。
次はシミュレーションか、IP Coreなんかを使用していきたい