Skip to content
Published on

オープン FPGA & RISC-V 開発 2026 完全ガイド - Yosys・NextPnR・IceStorm・Lattice ECP5・SiFive・BeagleV-Fire・Tang Nano・PULPino 徹底解説

Authors

プロローグ - 「FPGA は高くて難しい」という常識が崩れた 2026 年

2010 年代半ばまで、FPGA は「チップが高くて、ツールはもっと高くて、ライセンスは閉じている」の同義語だった。Xilinx Vivado は数十 GB の無料版をインストールする必要があったし、Altera Quartus も同じ。合成はブラックボックス。クラウドビルドは不可能。一行変えて 30 分待つのが日常だった。

2026 年の風景は違う。iCE40・ECP5・Gowin の一部は Yosys + NextPnR + IceStorm / Project Trellis / Apicula という完全オープンチェーンで RTL からビットストリームまで作れる。RISC-V コアは PULPino、Rocket、BOOM、VexRiscv、Ariane(CVA6)、OpenTitan がすべてオープンソース。SBC は VisionFive 2、Milk-V Mars、BeagleV-Fire、HiFive Premier P550、Banana Pi BPI-F3、LicheePi 4A と 30 ドルから始まる。

ASIC も手の届く距離にある。Tiny Tapeout は SkyWater 130nm または GlobalFoundries 180nm に学生や趣味家の設計を 50〜300 ドルで載せて返す。OpenROAD は RTL から GDSII までオープン EDA だけで通せる。

この記事はその全体像 - FPGA ベンダー、オープンチェーン、ボード、RISC-V コア、HDL 言語、シミュレータ、形式検証、オープン ASIC、韓国・日本の動き - を 2026 年時点で一度に整理する。


1 章 · FPGA の基本 - LUT・FF・BRAM・DSP・クロックドメイン

FPGA(Field-Programmable Gate Array)は 再構成可能なデジタル回路アレイ である。中核は 5 つの資源。

資源役割単位
LUT(Look-Up Table)4〜6 入力の真理値表、任意の組み合わせ回路を実装iCE40 4-LUT、ECP5 4-LUT、7-series 6-LUT
FF(フリップフロップ)同期レジスタ、通常 LUT ごとに 1 つLUT-FF ペア
BRAM(ブロック RAM)18〜36 kbit のデュアルポートメモリブロックiCE40 4 kbit EBR、ECP5 18 kbit EBR
DSP スライス乗算・累積器、信号処理 / AI 加速iCE40 にはほぼ無、ECP5 18×18、7-series DSP48
クロック / PLLクロック分配・周波数合成通常 4〜8 のグローバルクロック

LUT 数はチップ規模の一次指標だが、BRAM と DSP が用途を決める。映像・AI 加速は DSP が、キャッシュや FIFO の多い設計は BRAM が先にネックになる。

iCE40 HX8K:    7,680 LUT4, 7,680 FF, 32×4kbit BRAM = 128 kbit, DSP なし
iCE40 UP5K:    5,280 LUT4, 5,280 FF, 30×4kbit + 4×128kbit SPRAM =640 kbit, DSP 8
ECP5 LFE5UM-85F: 84K LUT4, 84K FF, 208×18kbit =3.7 Mbit, DSP 156
Artix-7 XC7A100T: 101K LUT6, 126K FF, 4.86 Mbit BRAM, DSP48 240

「どの規模のチップを買うべきか」は合成を一度回さないと答えが出ない。目安として 趣味の学習は 5K〜10K LUT(iCE40 HX/UP5K、Tang Nano 9K)、教育・RISC-V ソフトコアは 25K〜85K LUT(ECP5、Cyclone 10)、本格 SoC は 100K 以上(Artix-7、Zynq) が無難。


2 章 · FPGA ベンダー地図 - AMD/Xilinx・Intel/Altera・Lattice・Microchip・GOWIN・EFINIX

2025 年に Intel は Altera を分社化して独立企業として再売却 に動き、2022 年に AMD が買収した Xilinx は AMD Adaptive Computing に完全吸収された。2026 年の 6 大ベンダーはこの構成。

ベンダー代表ファミリ強みツールチェーンオープンチェーン
AMD / Xilinx7-series、UltraScale+、Versal ACAP最大シェア、AI Engine、Zynq SoCVivado、Vitis部分(yosys + nextpnr-xilinx 実験的)
Intel から Altera(再独立)Cyclone 10、Stratix 10/12、AgilexHBM 統合、高密度Quartus Primeなし
Lattice SemiconductoriCE40、ECP5、MachXO5、CrossLink-NX、Avant低消費電力、小型パッケージ、オープン親和Radiant、Diamond、icecube2完全(Yosys + NextPnR)
MicrochipPolarFire、PolarFire SoC、IGLOO2フラッシュベース(起動即時)、RISC-V SoC 統合Libero SoC部分
GOWINLittleBee、Arora V、Aurora中国製の低価格、広いパッケージGoWin EDA部分(Apicula / nextpnr-himbaechel)
EFINIXTrion、Titanium低消費電力、AI 加速(Quantum core)Efinityなし

2026 年のトレンド。

  • AMD Versal ACAP - FPGA + ARM + AI Engine をワンチップに。4nm プロセス、HBM 統合。データセンター AI 推論狙い。
  • Lattice Avant - Lattice 初のミッドレンジ FPGA、2023 年発表、2025 年量産。ECP5 比 5 倍の論理量。
  • Microchip PolarFire SoC - SiFive U54 4 コア + E51 1 コアの RISC-V と FPGA を一体化。BeagleV-Fire 採用。
  • GOWIN GW5A - Arora V 5nm、韓国・日本のメーカー市場で活発。

オープンチェーンの観点では Lattice が事実上の標準。iCE40(IceStorm)、ECP5(Project Trellis)、MachXO(Project Oxide)の全ラインが Yosys/NextPnR に流れ、Lattice 自身も Radiant の中で Yosys をオプションに入れている。GOWIN は Apicula + nextpnr-himbaechel で LittleBee / Arora V の一部が入った。


3 章 · Yosys - オープン合成器の事実上の標準

Yosys は Claire Wolf(旧 Clifford Wolf)が 2012 年から開発する Verilog 合成器。ISC ライセンス。2026 年現在 0.45 が安定版。

Yosys は単なる合成器ではなく モジュラーな RTL → ゲートレベル変換パイプライン である。read_verilog から始まり、proc、opt、techmap、abc などのパスを通って write_verilog や write_blif に至る。

# iCE40 ターゲット合成のワンライナー
yosys -p "synth_ice40 -top top -json out.json" design.v

# より詳細なフロー
yosys -p "
  read_verilog design.v
  hierarchy -check -top top
  proc; opt; fsm; opt
  memory_bram -rules ice40.txt
  techmap; opt
  abc -lut 4
  clean
  write_json out.json
"

主な機能。

  • 複数バックエンド - iCE40、ECP5、Xilinx 7-series(実験)、Gowin、Intel(実験)、Nexus、ASIC(ABC + Liberty)
  • SystemVerilog 対応 - Verilog 2005 は完全、SV 2017 は部分(パラメータ、interface 一部)。完全な SV は slang + Yosyssv2v 変換で。
  • Verific フロントエンド - 商用パーサー。Yosys + Verific で SV/VHDL フル対応。非公開。
  • Yosys cell library - シミュレーションモデルまで同梱。

2024 年に YosysHQ が Yosys 本家を運用し、Tabby CAD Suite(Yosys + Verific + SymbiYosys 商用)というビジネスモデルを構築。本体は ISC オープンソース のまま。


4 章 · NextPnR - 現代的な P&R、arachne-pnr の後継

NextPnR(2018〜)は Yosys と対になる place-and-route ツール。前世代の arachne-pnr(iCE40 専用、単純な SA ベース)を置き換えた。

NextPnR が持ち込んだもの。

  • タイミング解析駆動の P&R - 静的タイミングを P&R ループに直接組み込む。
  • 複数デバイス - iCE40、ECP5、Nexus(MachXO5)、Gowin(himbaechel 経由)、実験的 Xilinx。
  • HeAP placer + router - 大規模設計に耐える。
  • GUI - 配置結果を可視化。

フローは単純。

# Yosys 合成
yosys -p "synth_ice40 -top top -json top.json" top.v

# NextPnR で P&R
nextpnr-ice40 --hx8k --package ct256 \
  --json top.json \
  --pcf top.pcf \
  --asc top.asc

# icepack: ASCII → ビットストリーム
icepack top.asc top.bin

# iceprog: ボードに書き込み
iceprog top.bin

ECP5 フローも同じ形。

yosys -p "synth_ecp5 -top top -json top.json" top.v
nextpnr-ecp5 --25k --package CABGA381 \
  --json top.json --lpf top.lpf \
  --textcfg top.config
ecppack --svf top.svf top.config top.bit
ujprog top.bit   # または openFPGALoader

Gowin もほぼ同じ。

yosys -p "synth_gowin -top top -json top.json" top.v
nextpnr-himbaechel --device GW1NR-LV9QN88PC6/I5 \
  --json top.json --vopt cst=top.cst \
  --write top_pnr.json
gowin_pack -d GW1N-9C -o top.fs top_pnr.json
openFPGALoader -b tangnano9k top.fs

NextPnR 0.7+(2025)はマルチスレッドルーターを導入し、100K LUT クラスの P&R 時間を半分以下に短縮した。


5 章 · Project IceStorm・Project Trellis・Project NX/Apicula - ビットストリームのリバースエンジニアリング

オープンチェーン最大の難関は ビットストリームのフォーマット。合成と P&R はアルゴリズムだが、ビットストリームはベンダーが非公開にしているビット単位のエンコーディング。これを解くのが「プロジェクト群」の仕事。

プロジェクトターゲット開始状況
IceStormLattice iCE40(HX、LP、UP、UltraPlus)2015完成、事実上の標準
Project TrellisLattice ECP5(LFE5U/UM 12/25/45/85)2017完成
Project Oxide / nextpnr-nexusLattice Nexus(MachXO5、CrossLink-NX、CertusPro-NX)2020進行中
Project ApiculaGowin LittleBee、Arora V(一部)2020部分対応
Project U-Boot / SymbiFlow → F4PGAXilinx 7-series(Artix-7)2017停滞、部分対応
prjpolarfireMicrochip PolarFire2024(実験)初期段階

中心は IceStormProject Trellis。Claire Wolf の Project IceStorm(2015)がすべての出発点。iCE40 のビットストリームを一ビットずつ追って解読し、その上に Yosys synth_ice40 バックエンドと arachne-pnr / nextpnr-ice40 が乗った。David Shah の Project Trellis(2017)が同じことを ECP5 で行った。この 2 つがなければ NextPnR にもターゲットがない。

2025〜2026 年の動き。

  • Project Oxide → nextpnr-nexus - MachXO5/CrossLink-NX の部分対応。Lattice 自身も一部協力。
  • Apicula - Robert Ou らが GOWIN GW1N 系を解読、GW2A も進行中。Tang Nano 9K/20K は実用段階。
  • prjpolarfire - PolarFire ビットストリーム解析が始まったところ。時間がかかる。

教訓は 「ハードウェアメーカーの協力がなくてもビットストリームは解ける」 が、解くには人間の時間が必要、ということ。


6 章 · オープン FPGA ボード - iCEbreaker・OrangeCrab・Tang Nano・ECPIX-5・Arty A7

2026 年、オープンチェーンが回るボードをカテゴリ別に整理する。

iCE40 系(最も入門しやすい)

ボードFPGAメモリ価格(2026)特徴
iCEbreakeriCE40-UP5K5K LUT + 1 Mbit SPRAM50 ドル1bitsquared 製、PMOD 多数、RISC-V ワークショップ標準
TinyFPGA BXiCE40 LP8K7.6K LUT35 ドルUSB 直接起動、ブレッドボード親和
iCE40-HX8K BreakoutiCE40 HX8K7.6K LUT80 ドルLattice 公式、学習用
Olimex iCE40-HX8K-EVBiCE40 HX8K+ Cortex-M040 ドル欧州製
FomuiCE40-UP5K5K LUT50 ドルUSB ポート内に収まる超小型

ECP5 系(RISC-V ソフトコアが実用な領域)

ボードFPGA価格特徴
OrangeCrabECP5 25F/85F129 ドルFeather フォームファクタ、DDR3
ECPIX-5ECP5 45F/85F150 ドルLambdaConcept 製、RISC-V Linux 可
Versa-ECP5(Lattice 公式)ECP5 45F250 ドル〜DDR3、PCIe x1、Ethernet
Colorlight 5A-75BECP5 25F25 ドルLED コントローラ基板の改造、激安
ULX3SECP5 12/25/45/85F115 ドル〜EMARD 製、HDMI、ESP32、microSD、最も汎用

Gowin 系(最も安い)

ボードFPGA価格特徴
Tang Nano 9KGW1NR-9(8640 LUT)20 ドルHDMI、microSD、入門の標準
Tang Nano 20KGW2AR-18(20736 LUT)30 ドルSDRAM 内蔵、RISC-V Linux も可能圏
Tang Primer 20KGW2A-1850 ドルより大きい LUT、Pmod
Tang Mega 138KGW5AT-138100 ドルArora V、AI トイ可能

Xilinx(オープンチェーン部分対応、Vivado メイン)

ボードFPGA / SoC価格特徴
Arty A7-35T / 100TArtix-7129〜249 ドルDigilent 製、RISC-V ソフトコア学習の標準
Zybo Z7-10 / 20Zynq-7000(ARM + FPGA)199〜299 ドルLinux + FPGA
PYNQ-Z2Zynq-7020229 ドルPYNQ で Python から FPGA を操作
Genesys 2Kintex-71000 ドル〜高仕様の学習・研究

Intel/Altera

ボードFPGA価格特徴
CYC1000Cyclone 10 LP50 ドルTrenz 製、コンパクト
DE10-Lite / DE10-NanoMAX10 / Cyclone V85〜150 ドル教育の標準、Terasic 製

学習段階の目安は、第 1 段階が iCEbreaker(iCE40-UP5K、50 ドル)、第 2 段階が ULX3S または OrangeCrab(ECP5、115〜150 ドル)、第 3 段階が Arty A7-100T または Zybo Z7-20。「20 ドルでまず始めたい」なら Tang Nano 9K が最適。


7 章 · RISC-V - ISA から拡張セットまで

RISC-V は UC Berkeley で 2010 年に始まったオープン ISA。2015 年に RISC-V Foundation(現 RISC-V International)が発足し、2026 年時点で次のような標準が固まっている。

拡張意味備考
RV32I / RV64I32/64 ビットの基本整数必須
M乗除算事実上必須
AアトミックSMP、マルチコアに必須
F / D / Q浮動小数 32/64/128部分採用
C圧縮(16 ビット命令)コードサイズ約 1.5 倍効果
Bビット操作(Zba/Zbb/Zbs)2021 年批准
Vベクトル2021 年批准、AI の中核
Zicsr / ZifenceiCSR / fence.iシステムに必須
Hハイパーバイザ2023 年批准
Zk*スカラ暗号2021 年批准

典型的な「RV64GC」プロファイルは RV64IMAFDCZicsr_Zifencei。Linux ディストロの標準。

2025 年に批准された RVA23 が 2026 年のデータセンター・モバイル基準。V(Vector 1.0)、B、Zk*、H、Zicboz が必須化された。Android RISC-V 移植は RVA23 ベース。


8 章 · オープン RISC-V コア - PULPino・Rocket・BOOM・Ariane・VexRiscv・OpenTitan

オープンソース RISC-V CPU コア IP は 2026 年、ほぼ「選んで使う」段階。

コア出自HDL特徴ライセンス
Rocket ChipUC BerkeleyChiselRV64GC 5 段イン・オーダー、Linux 対応BSD
BOOMUC BerkeleyChiselOoO スーパースカラ、研究の標準BSD
CVA6(Ariane)OpenHW / ETHSystemVerilogRV64GC 6 段、Linux、産業検証済みSolderpad
CV32E40P(PULPino)OpenHW / ETHSystemVerilogRV32IMC、小型かつ産業グレードSolderpad
CV32E40X / CV32E41POpenHWSystemVerilogXIF 拡張ポート、P-ext 実験Solderpad
IbexlowRISCSystemVerilogRV32IMC、OpenTitan の心臓Apache 2.0
VexRiscvSpinalHDLSpinalHDLプラグインベース、合成に優しいMIT
NaxRiscvSpinalHDLSpinalHDLOoO、VexRiscv の後継MIT
PicoRV32Clifford WolfVerilog超小型、iCE40-UP5K に収まるISC
SERVOlof KindgrenVerilogビット直列、世界最小の RV32IISC
Western Digital SweRV / EH1/2WDSystemVerilog組み込み、NVMe コントローラ由来Apache 2.0
OpenTitan Ibex ベースの RoTlowRISC + GoogleSystemVerilogTPM 相当のセキュリティチップ、ChromeOS 搭載Apache 2.0
Microchip MiVMicrochip(非公開ネットリスト)PolarFire 内蔵ソフトコアプロプライエタリ

選び方の目安。

  • iCE40-UP5K に RISC-V を一度乗せてみたい → PicoRV32 または SERV。
  • ECP5 で Linux を起動したい → VexRiscv(LiteX 同梱)または Rocket Chip。
  • 産業向け RV32 マイコン IP → CV32E40P(PULPino)または Ibex。
  • 研究用 OoO → BOOM または NaxRiscv。
  • セキュリティ Root of Trust → OpenTitan。

LiteX(Florent Kermarrec)は VexRiscv を中心に SoC を 5 分で作れるフレームワーク。ECP5/ULX3S/OrangeCrab/Tang Nano で Linux を起動する最速ルート。


9 章 · SiFive・Andes・Codasip - 商用 RISC-V IP

SiFive(2015 年に Berkeley 出身者が設立)は商用 RISC-V IP の代表。2026 年のラインナップ。

ライン代表コアターゲット備考
PerformanceP870データセンター、モバイルOoO RV64GCV、RVA23
IntelligenceX280、X390エッジ AI/ML 推論1024 ビットベクトル
EssentialE2、E3、E6、E7、E76マイコンE76 = HiFive Premier P550
AutomotiveS26、S2C26ASIL-B/DISO 26262

2025 年発表の SiFive P870-D は 16 コア RV64GCV、5GHz のデータセンタークラス。Intel Lunar Lake 時代に RISC-V がノートPC・サーバを狙う。

他の商用 IP。

  • Andes Technology - 台湾、AndeStar V5 ISA(RISC-V 互換+拡張)、Andriy N25/A25/AX65/AX27。
  • Codasip - チェコ、カスタム RISC-V コア生成器 + Codasip Studio。
  • Cortus - フランス、APS25。
  • Esperanto Technologies - ET-SoC-1、1088 コアの RISC-V AI 推論チップ。
  • Tenstorrent - Jim Keller の会社。Ascalon(16-wide OoO RV64)でノート PC SoC へ進出。

2026 年の主軸は 「RV64 サーバクラスコア」。ARM Neoverse に本気で挑む RISC-V コアが初めて登場した。


10 章 · RISC-V SBC - VisionFive 2・Milk-V・BeagleV・HiFive・Banana Pi・LicheePi

物理的な RISC-V コンピュータ(ボード)は 2026 年、ほぼあらゆる価格帯に存在する。

ボードSoCRISC-V コア価格備考
VisionFive 2StarFive JH71104×SiFive U74 @ 1.5GHz60〜80 ドルDebian/Ubuntu 安定、IMG GPU
Milk-V MarsStarFive JH71104×U7450 ドル〜RPi フォームファクタ
Milk-V Mars CMJH71104×U7440 ドルCM4 フォームファクタ
Milk-V MelesTH15204×Xuantie C910100 ドル〜T-Head、Alibaba
Milk-V PioneerSG204264×C9201500 ドルメインボード形、デスクトップ
Pine64 Star64JH71104×U7470 ドル〜Pine64 エコシステム
BeagleV-AheadTH15204×C910150 ドルBeagleBoard.org
BeagleV-FireMicrochip MPFS025T4×U54 + 1×E51 + FPGA150 ドルFPGA 統合
SiFive HiFive UnmatchedFU7404×U74 + 1×S7(販売終了)2021
HiFive Premier P550EIC7700X(ESWIN)4×SiFive P550399 ドルRVA22、2024 発売
Banana Pi BPI-F3SpacemiT K18×X6090 ドル〜RVV 1.0 ベクトル
Sipeed LicheePi 4ATH15204×C910 @ 1.85GHz150 ドル〜8/16GB RAM オプション
Sipeed LicheePi 3ATH15204×C91080 ドル軽量
Tang Mega 138K ProGowin GW5AT-138 + LiteX VexRiscvソフトコア100 ドルソフト RISC-V FPGA

性能とソフトウェア成熟度で見ると。

  • デスクトップ代替 - Milk-V Pioneer、HiFive Premier P550。
  • 趣味・ホームサーバ - VisionFive 2、Milk-V Mars、Pine64 Star64。Ubuntu/Debian/Fedora パッケージ豊富。
  • FPGA と組み合わせてデジタル設計学習 - BeagleV-Fire。
  • ベクトル加速ベータ - Banana Pi BPI-F3、LicheePi 4A。

2026 年の RISC-V SBC の本当の課題は依然として GPU ドライバLinux カーネル V 拡張対応。メインライン Linux に RVV 1.0 は入ったが、ユーザ空間ライブラリは追従中。


11 章 · BeagleV-Fire と PolarFire SoC - FPGA + RISC-V のワンパッケージ

BeagleV-Fire(2024)は BeagleBoard.org が作ったボードで、核は Microchip PolarFire SoC MPFS025T-FCSG325E。一つのパッケージに以下が入る。

  • 4×SiFive U54 RV64GC Linux 対応コア @ 600MHz
  • 1×SiFive E51 RV64IMAC モニタコア
  • 約 25K LUT + 68 LSRAM(PolarFire FPGA ファブリック)
  • メモリコントローラ、PCIe、USB 統合

このボードの意味は 「Zynq の RISC-V 版」 だということ。ARM Cortex-A + FPGA の Zynq と同様、RISC-V + FPGA がワンチップにあり、ソフトウェアは Linux、加速は FPGA に振り分けできる。さらに PolarFire は フラッシュベース なので起動が即時(SRAM ベースの Xilinx は起動時にビットストリームのロード時間が必要)。

# BeagleV-Fire で RISC-V Linux を起動した後に FPGA ビットストリームを差し替え
sudo mtd-utils flashcp custom.spi /dev/mtd-fpga
# または BeagleV-Fire の gateware アップデートツール
sudo /opt/microchip/fpga-config-tool/fct \
  --bitstream custom.dat --slot golden
sudo reboot

Microchip は Libero SoC(クローズドツール)をメインに推すが、BeagleV-Fire コミュニティは VexRiscv + LiteX を PolarFire 上で動かす道も開いている。


12 章 · HDL 言語 - Verilog・SystemVerilog・VHDL・Chisel・SpinalHDL・Amaranth・Veryl

ハードウェア記述言語(HDL)の地図は 2026 年に 5 つの流れ。

1. 古典 Verilog / SystemVerilog(産業標準)

// SystemVerilog 2017 - シンプルなレジスタ
module reg8 (
  input  logic       clk,
  input  logic       rst_n,
  input  logic [7:0] din,
  output logic [7:0] dout
);
  always_ff @(posedge clk or negedge rst_n) begin
    if (!rst_n) dout <= 8'h00;
    else        dout <= din;
  end
endmodule

SV 2017 は logicalways_ff/combinterfacepackagebind、アサーション(SVA)といった産業必須機能を追加。2023 標準は事実上マイナーアップデート。

2. VHDL 2019

entity reg8 is
  port (
    clk   : in  std_logic;
    rst_n : in  std_logic;
    din   : in  std_logic_vector(7 downto 0);
    dout  : out std_logic_vector(7 downto 0)
  );
end entity;
architecture rtl of reg8 is
begin
  process (clk, rst_n) is
  begin
    if rst_n = '0' then
      dout <= (others => '0');
    elsif rising_edge(clk) then
      dout <= din;
    end if;
  end process;
end architecture;

欧州・防衛・航空で強い。GHDL がオープンシミュレータ、合成は ghdl-yosys-plugin が解く。

3. Chisel(Scala ベース、UC Berkeley)

import chisel3._
class Reg8 extends Module {
  val io = IO(new Bundle {
    val din  = Input(UInt(8.W))
    val dout = Output(UInt(8.W))
  })
  val r = RegInit(0.U(8.W))
  r := io.din
  io.dout := r
}

Chisel は Scala embedded DSL。Rocket Chip、BOOM、Chipyard のエコシステムは全部 Chisel。出力は FIRRTL → SystemVerilog。Chisel 6(2024)は Scala 2.13/3 ベース。

4. SpinalHDL(Scala ベース、VexRiscv エコシステム)

import spinal.core._
class Reg8 extends Component {
  val io = new Bundle {
    val din  = in  UInt(8 bits)
    val dout = out UInt(8 bits)
  }
  val r = Reg(UInt(8 bits)) init(0)
  r := io.din
  io.dout := r
}

Chisel と同じ哲学だが、構文が軽くシミュレーションが速い。VexRiscv / NaxRiscv の母体。

5. Python HDL - Amaranth(旧 nMigen)・Migen・MyHDL・PyMTL

# Amaranth
from amaranth import *
class Reg8(Elaboratable):
    def __init__(self):
        self.din  = Signal(8)
        self.dout = Signal(8)
    def elaborate(self, platform):
        m = Module()
        m.d.sync += self.dout.eq(self.din)
        return m

Amaranth(M-Labs、旧 nMigen)は Yosys と直接統合。LiteX の一部コンポーネントも Amaranth。

6. Veryl(Rust スタイル、2023 〜)

module reg8 (
  clk:   input  clock,
  rst_n: input  reset,
  din:   input  logic<8>,
  dout:  output logic<8>,
) {
  always_ff (clk, rst_n) {
    if_reset {
      dout = 0;
    } else {
      dout = din;
    }
  }
}

Veryl は Verilog にトランスパイルされる。モジュールインポート、型推論、名前空間といったモダン言語機能。

7. CIRCT(MLIR ベース、LLVM 配下)

CIRCT は LLVM 内の 回路 IR。FIRRTL/HW/SV/Calyx などの dialect を持つ。2026 年には Chisel はほぼ全面 CIRCT バックエンドに移行。

学習段階の目安は、第 1 段階に SystemVerilog(産業標準)、第 2 段階に Chisel または SpinalHDL(RISC-V SoC エコシステム)、第 3 段階に Amaranth または Veryl。


13 章 · Verilator・Icarus・GHDL・Cocotb - シミュレータ

RTL をチップに焼く前に シミュレーション で検証する。2026 年のツール群。

ツール言語速度ライセンス特徴
Verilator 5SV(合成可能)非常に速いLGPLC++ にコンパイル、産業標準。5.x は SVA 強化
Icarus Verilog(iverilog)Verilog/SV(イベント駆動)普通GPL最も始めやすい
GHDLVHDL速いGPLVHDL 1987〜2019
CXXRTLYosys バックエンド非常に速いISCYosys 合成結果を C++ で
Verilator + cocotbCocotb 連携速い混合Python テストベンチ
Modelsim / QuestaSV/VHDL普通商用Intel 買収後 ED ライセンス、学生向け一部無料
VCS(Synopsys)SV速い商用産業標準
Xcelium(Cadence)SV/VHDL速い商用産業標準

Verilator フロー。

# 合成可能な Verilog を C++ にコンパイル
verilator --cc design.v --exe sim_main.cpp \
  --trace --build -j 0

# シミュレーション実行
./obj_dir/Vdesign

# 波形は GTKWave か Surfer で
gtkwave dump.vcd

Cocotb(2013〜)は Python コルーチンベースのテストベンチ。2026 年の安定版は 1.9。

# tb_reg8.py
import cocotb
from cocotb.clock import Clock
from cocotb.triggers import RisingEdge

@cocotb.test()
async def test_reg8(dut):
    cocotb.start_soon(Clock(dut.clk, 10, units="ns").start())
    dut.rst_n.value = 0
    await RisingEdge(dut.clk)
    dut.rst_n.value = 1
    dut.din.value = 0xA5
    await RisingEdge(dut.clk)
    await RisingEdge(dut.clk)
    assert dut.dout.value == 0xA5
# 最小 Makefile
SIM = verilator
TOPLEVEL_LANG = verilog
VERILOG_SOURCES = $(PWD)/reg8.sv
TOPLEVEL = reg8
MODULE = tb_reg8
include $(shell cocotb-config --makefiles)/Makefile.sim

波形ビューワ は伝統的に GTKWave が標準だったが、2024〜2025 年に Surfer(Rust で書かれた新世代)が急速に人気を得ている。WASM ビルドもあるのでブラウザでも動く。


14 章 · SymbiYosys・形式検証 - シミュレーションを越えて

シミュレーションは入力ケースを自分で書く必要がある。形式検証(formal verification)数学的にプロパティが全ケースで成立することを証明 する。

SymbiYosys(YosysHQ)は Yosys 上に乗った形式検証ドライバ。内部エンジンは Z3、Yices2、Boolector、CVC4 などの SMT ソルバ。

// SVA プロパティ付き add4.sv
module add4 (
  input  logic [3:0] a, b,
  output logic [4:0] s
);
  assign s = a + b;

  // プロパティ: s は決して 30 を超えない(signed 解釈)
  property no_overflow_msb;
    @(posedge $time) (s <= 30);
  endproperty
  assert property (no_overflow_msb);
endmodule
# add4.sby
[tasks]
prove

[options]
prove: mode prove
prove: depth 20

[engines]
prove: smtbmc z3

[script]
read -formal add4.sv
prep -top add4

[files]
add4.sv
sby -f add4.sby prove
# 結果: PASS — または反例の .vcd

形式検証が強いのは AXI / Wishbone のようなバスプロトコル暗号モジュール。Symbiotic EDA の Wishbone formal propertyAXI VIP が代表。

YosysHQ は Tabby CAD Suite で Verific(完全な SV/VHDL パーサ) + Yosys + SBY + 商用サポートを束ねて販売。オープン SBY はそのまま無料。


SoC 内部で IP ブロック同士が話すための 標準バス

バス出自特徴用途
AMBA AXI4ARM(仕様は無料)5 チャネルの split transaction、バーストXilinx、ARM、Intel、事実上の産業標準
AXI4-LiteARMAXI の単純版、レジスタインタフェース制御レジスタ、小型 IP
AXI4-StreamARMデータストリーム、アドレスなしDSP/AI データフロー
AHB / APBARM古い、組み込み MCUCortex-M MCU
Wishbone B4OpenCoresオープン、単純OpenRISC、オープン IP 多数
TileLinkChipyard / SiFiveRISC-V SoC のキャッシュコヒーレントRocket/BOOM、Chipyard
OCPAccellera事実上減少傾向一部 ASIC
NoC多数network on chip、スケーラブルマルチコア

オープン RISC-V SoC は基本的に TileLink(Rocket Chip、Chipyard)または Wishbone(LiteX、VexRiscv)を使い、外部インタフェースだけ AXI に変換する。AXI ⇔ Wishbone、AXI ⇔ TileLink ブリッジ IP はすべてオープン提供。

IP-XACT(IEEE 1685)は IP のメタデータ標準。ポート、レジスタ、メモリマップを XML で記述して RTL ラッパーを自動生成。代表的なオープンツールに Kactus2。


16 章 · オープン ASIC - OpenROAD・SkyWater 130nm・GlobalFoundries 180nm・Tiny Tapeout

FPGA は再構成可能だが ASIC(用途特化集積回路)は焼いてしまえば終わり。オープン ASIC フローが 2020 年以降に成り立つようになった。

OpenROAD(DARPA IDEA、UCSD/UMich)は RTL → GDSII 全体のオープン EDA フロー。Yosys が合成、OpenROAD がフロアプラン、配置、CTS、配線、DRC/LVS を担う。

# OpenROAD flow scripts
git clone https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts
cd OpenROAD-flow-scripts
./build_openroad.sh

# デザイン追加
cp -r designs/gcd flow/designs/sky130hd/my_design
# Makefile 設定を編集
make DESIGN_CONFIG=./designs/sky130hd/my_design/config.mk

PDK(process design kit)はチップを焼くためのデバイスモデルとルール。重要なオープン PDK は 2 つ。

PDKノード後援備考
SkyWater SKY130130nmGoogle / SkyWater2020 公開、最も成熟
GlobalFoundries GF180MCU180nmGoogle / GF2022 公開、アナログ親和
IHP SG13G2130nm BiCMOSIHP(ドイツ)2023 公開、SiGe BiCMOS
(実験) PDK@22FDX22nmNDA 要非公開

Tiny Tapeout(Matt Venn、2022〜)が決定的な変化。130nm Sky130 にユーザの設計を タイル 単位で集めて 1 チップに焼き、各ユーザに PCB を送る。2026 年回の価格は 1×1 タイル 50 ドル、2×2 で 200 ドル、8×2 で 300 ドル。

# Tiny Tapeout の設計は Verilog 1 モジュールに圧縮
module tt_um_my_design (
    input  wire [7:0] ui_in,    // 8 入力(スイッチ/ボタン)
    output wire [7:0] uo_out,   // 8 出力(LED)
    input  wire [7:0] uio_in,   // 双方向入力
    output wire [7:0] uio_out,  // 双方向出力
    output wire [7:0] uio_oe,   // 双方向 enable
    input  wire       ena,      // enable
    input  wire       clk,      // クロック
    input  wire       rst_n     // リセット
);
    // 設計はここに
endmodule

OpenLane(Efabless)は SkyWater + OpenROAD を束ねたフロー。Mflowgen(UT Austin)も似た役回り。2026 年に OpenLane 2 が Python ベースで書き直された。

Efabless の caravel チップは RISC-V(PicoRV32) + 約 10mm² のユーザ領域。caravel を通じた MPW shuttle(multi-project wafer)が年に数回回る。学生・小規模チームが初めて「自分の ASIC」を持てるようになった流れ。


17 章 · OpenTitan・Caliptra - セキュリティ RoT のオープンハードウェア

OpenTitan(lowRISC + Google、2019〜)はオープンな セキュリティ root of trust のチップ設計。Ibex RV32IMC コア、AES/SHA/HMAC/PRNG アクセラレータ、ライフサイクルマネージャ、OTP fuse、USB、SPI をワンチップに。Google Titan(Chromebook 用セキュリティチップ)や Apple T2 のオープン対応。

2024 年に Google が量産 OpenTitan ベースチップを発表。2026 年にはデータセンター NIC、サーバ BMC、IoT ゲートウェイが OpenTitan を RoT として採用する流れ。

Caliptra(OCP、Microsoft/Google/AMD/NVIDIA、2022〜)はデータセンターアクセラレータ・SoC に組み込む RoT IP。OpenTitan の一部を活用。Open Compute Project の標準。

要点は 「セキュリティチップもオープンで成立する」。閉じたセキュリティ(TPM メーカーが作って中を見せない)からオープンに検証可能なセキュリティへ。


18 章 · Chipyard・LiteX・Caravel - RISC-V SoC 統合フレームワーク

「コア + メモリ + UART + SPI + Ethernet」を毎回ゼロから書くのは非効率。SoC 統合フレームワークがその隙間を埋める。

Chipyard(UC Berkeley、2018〜)は Chisel ベースの RISC-V SoC ジェネレータ。Rocket/BOOM/CVA6 コア + L2 キャッシュ + アクセラレータ(NVDLA、Gemmini) + メモリコントローラ + 周辺を組み合わせる。

// Chipyard 設定
class MyConfig extends Config(
  new boom.common.WithNLargeBooms(1) ++
  new freechips.rocketchip.subsystem.WithNBigCores(2) ++
  new chipyard.config.AbstractConfig
)

Chipyard ワークフローはシミュレータ(VCS/Verilator)、FPGA(FireSim)、ASIC(Hammer)を同時に視野に入れる。FireSim(AWS F1)は RISC-V SoC をクラウド FPGA 上でサイクル正確にシミュレーション。

LiteX(Florent Kermarrec、2018〜)は Migen/Amaranth ベースの SoC ジェネレータ。VexRiscv/NaxRiscv コア + Wishbone バス + LiteDRAM + LiteEth + LiteSDCard などの IP を持つ。iCEbreaker、ULX3S、OrangeCrab、Arty、Tang Nano で Linux を起動する最も簡単な道。

# ULX3S で LiteX + VexRiscv + Linux
git clone https://github.com/litex-hub/linux-on-litex-vexriscv
cd linux-on-litex-vexriscv
./make.py --board=ulx3s --variant=85F --cpu-variant=linux \
  --build --load

Caravel(Efabless)は ASIC shuttle 用の RISC-V ラッパー。ユーザ領域 + マネジメント SoC(PicoRV32 ベース)。


19 章 · 韓国 FPGA / RISC-V の動き - ETRI・KAIST・Rebellions

韓国の FPGA / RISC-V 活動は学術中心から産業中心へ移りつつある。

  • ETRI(韓国電子通信研究院) - RISC-V ベースのシステム半導体研究。2024 年 ETRI RISC-V Linux ボードのデモ。
  • KAIST - 電子工学のデジタル設計講義は SystemVerilog + Vivado が標準。RISC-V 講義も Chipyard/Rocket を活用。
  • ソウル大・浦項工科大・高麗大 - RISC-V SoC 研究。
  • Rebellions(2020〜) - AI 推論チップ ATOM(第 1 世代 GDDR6、第 2 世代 HBM)。制御コアに自社 RISC-V を採用。SK Telecom データセンターに導入。
  • FuriosaAI - Warboy 第 1 世代(2021)、RNGD 第 2 世代(2024)。NPU は独自設計だが RISC-V をホストとして検討。
  • Sapeon - SK 系列の NPU。
  • DEEPX - エッジ AI NPU。
  • Telechips / Silicon Mitus - 自動車・電力半導体での RISC-V 導入を検討。

韓国の FPGA メーカー市場は Lattice/Xilinx/Intel + 最近の Tang Nano(GOWIN)コスパで多様化。Maker Faire Seoul 2025 で Tang Nano ワークショップと ULX3S ワークショップが開催された。

オープン RISC-V SBC は Aliexpress / 直輸入 で入ってくる。VisionFive 2、Milk-V、LicheePi いずれも韓国コミュニティ(Clien、RPi Korea 掲示板)でレビューが活発。


20 章 · 日本の動き - PEZY-SC・Renesas RZ/Five・AIST OpenTitan

日本は RISC-V / FPGA 領域で独特の位置にある。ARM Cortex と NEC/Renesas/Toshiba 自社コアが強かったため RISC-V は遅れたが、2024〜2026 年に加速。

  • Renesas RZ/Five(2023) - 初の量産 RISC-V MPU。Andes AX45MP デュアル RV64GC + RGMII Ethernet。産業用。
  • Renesas R9A02G021(2024) - RISC-V ベースの 32 ビット MCU。AndesCore N22。
  • PEZY-SC4 / SC4s - PEZY Computing のメニーコアアクセラレータ。第 1 世代(SC1)は MIPS、後継世代は独自 ISA + RISC-V ホストを検討。Top500 入賞歴あり。
  • AIST(産業技術総合研究所) - 日本版 OpenTitan ポート、RISC-V CPU 研究。
  • 東工大、東北大、京大 - RISC-V SoC、量子・AI アクセラレータ研究。
  • 隼 / 昆蔵 Lab(RISC-V ボードコミュニティ) - 秋葉原メーカーシーンで Tang Nano / iCEbreaker ワークショップ。

興味深いのは日本が 車載 RISC-V に強いこと。Renesas は ISO 26262 ASIL-D RISC-V を量産済み。自動車 ECU の ARM → RISC-V 移行の最初の産業事例は日本から出る可能性がある。

経済産業省 の Rapidus 2nm ファウンドリは直接 RISC-V ではないが、日本国内の先端ノード回復が RISC-V SoC 量産を下支えする。


21 章 · ユースケース - レトロコンピューティング・HFT・映像・AI・セキュリティ

オープン FPGA / RISC-V が実際に使われている領域。

1. レトロコンピューティング / ゲーム(FPGA NES/SNES/MD)

プロジェクトボード備考
MiSTer FPGADE10-Nano(Cyclone V SoC)NES、SNES、MD、PS1、Amiga、MSX など 200 以上
Analogue PocketAltera Cyclone 10GB/GBC/GBA + 追加コア
MARSx(オープン)ECP5進行中
NESCubeiCE40ワンチップ NES

MiSTer は 2017 年以降、事実上レトロ FPGA の標準。200 以上のコアをオープンソースで取得し SD カードに入れて起動。

2. HFT(高頻度取引)

取引所のマーケットデータ解析、注文生成、FIX → ネイティブプロトコル変換を ナノ秒レイテンシ で処理するために Xilinx UltraScale+/Versal を使う。オープンチェーンはほぼなく、Vivado が中心。

3. 映像 / 画像処理

HDMI 入力 → AI 推論(小型 ML) → HDMI 出力のようなライブ映像。ECP5(OrangeCrab) + Wuxx HDMI Pmod や Zybo Z7 で。Sipeed Tang Mega 138K で 60fps 4K 処理に挑戦中。

4. AI アクセラレータ

NVDLA(NVIDIA Deep Learning Accelerator、オープン)、Gemmini(Chipyard)、VTA(TVM)を FPGA に合成。ECP5 85F で小規模モデル、Versal AI Edge で大規模モデル。

5. セキュリティ Root of Trust

OpenTitan をデータセンター NIC、サーバ BMC、IoT ゲートウェイに搭載。ChromeOS の Titan-C(OpenTitan ベース)、Caliptra(OCP)が量産開始。

6. 学習 / 教育

RV32IMC をゼロから書く授業が KAIST / Berkeley / ETH のいずれも標準化。iCEbreaker + PicoRV32、ULX3S + VexRiscv、Arty + Rocket の組み合わせ。


22 章 · 比較マトリクス - FPGA ボード / RISC-V SBC を 1 枚で

区分ボードチップLUT またはコアメモリ価格(2026)強み弱み
FPGA 入門iCEbreakeriCE40-UP5K5K LUT41 Mbit SPRAM50 ドル完全オープン、ワークショップ標準DSP なし
FPGA 入門Tang Nano 9KGW1NR-98.6K LUT432 Mbit PSRAM20 ドルコスパ最強、HDMI 内蔵ツール未成熟
FPGA 中級ULX3SECP5 25/85F25K〜84K LUT32MB SDRAM115 ドル〜HDMI、SD、ESP32 統合フォームファクタが大きい
FPGA 中級OrangeCrabECP5 85F84K LUT128MB DDR3129 ドルFeather 形、USBピン少
FPGA 学習Arty A7-100TArtix-7101K LUT6256MB DDR3249 ドルRISC-V 学習の標準Vivado 必須
FPGA + ARMZybo Z7-20Zynq-702053K LUT + 2×A91GB DDR3299 ドルLinux + FPGAVivado 必須
FPGA + RISC-VBeagleV-FirePolarFire SoC25K LUT + 5×SiFive2GB DDR4150 ドルRISC-V Linux + FPGAフラッシュ書き込みは一度
RISC-V 入門Milk-V MarsJH71104×U741〜8GB50 ドル〜RPi 形GPU 弱
RISC-V デスクトップHiFive Premier P550EIC7700X4×SiFive P55016GB DDR5399 ドルRVA22、mITXRVV は次世代
RISC-V ベクトルBanana Pi BPI-F3SpacemiT K18×X604/8/16GB90 ドル〜RVV 1.0ソフト未成熟
RISC-V ワークステーションMilk-V PioneerSG204264×C920DDR4-32001500 ドル64 コア価格・電力
セキュリティOpenTitan(量産)EarlGreyIbex RV32 + crypto1MB SRAMチップ単位 OEMオープン RoTボード少
レトロMiSTer(DE10-Nano)Cyclone V SoC41K LE + 2×A91GB DDR3230 ドル(基板 + IO)200 以上のコアクローズド Quartus

23 章 · 学習ロードマップ - 第 0 週から 1 年まで

FPGA / RISC-V に初めて入る人向けの 12 か月ロードマップ。

第 1〜2 週 - Verilog 基礎

  • Verilog 2005 文法、always ブロック、レジスタ、FSM。
  • シミュレータ: iverilog + GTKWave。あるいは EDA Playground(ブラウザ)。
  • 書籍: Pong P. Chu「FPGA Prototyping by Verilog Examples」。

第 3〜6 週 - 初めてのボード、初めての L チカ → 初めての UART

  • iCEbreaker または Tang Nano 9K を入手。
  • LED 点滅 → UART エコー → 7 セグ → VGA。
  • オープンチェーン(Yosys + NextPnR + IceStorm)。

第 7〜12 週 - SystemVerilog + 形式検証

  • always_ff/comb、interface、package、SVA。
  • SymbiYosys で簡単なプロパティ証明。
  • Verilator で cocotb テストベンチ。

第 4〜6 か月 - 初めての RISC-V ソフトコア

  • PicoRV32 を iCE40-UP5K に焼いてファームウェアを動かす。
  • または VexRiscv を ULX3S に焼き、LiteX で Linux を起動。
  • アセンブリ → GCC → OpenOCD デバッグ。

第 7〜9 か月 - Chisel / SpinalHDL または ECP5 SoC

  • Chisel Bootcamp(Berkeley)または SpinalHDL ワークショップ。
  • Chipyard で Rocket Chip をシミュレーション。

第 10〜12 か月 - ASIC フローまたは RISC-V SBC + アクセラレータ

  • Tiny Tapeout に小さな設計を提出(50 ドル)。
  • あるいは VisionFive 2 / BeagleV-Fire にアクセラレータ IP を接続。

費用は 30 ドル(Tang Nano)〜 300 ドル(ボード + ASIC タイル)で学部生レベルの予算で十分。1 年経つと SoC を 1 つ「自分で RTL から書いた」水準に達する。


24 章 · 落とし穴とハマりやすい箇所

  • 合成とシミュレーションの差 - initial#delay、レースコンディションはシミュレーションでは通るが合成では無視されたり挙動が違う。
  • クロックドメインクロス(CDC) - 異なるクロック間の信号は必ず同期化。メタステーブル防止。形式検証(CDC linter)を回すべき。
  • タイミング違反 - 初回コンパイルは通っても、大きな設計では setup/hold 違反が出る。NextPnR の --seed 変更、パイプライン化。
  • LUT/FF 不足 → ECP5 に移行 - iCE40 5K では RISC-V Linux は無理。VexRiscv RV32IM でも ECP5 25F 以上が普通。
  • ベンダーライブラリ依存 - Vivado プリミティブ(BUFG、IOBUF)を明示的に使うと他 FPGA に移植できない。inferable code を優先。
  • シミュレーションだけを信じる - 形式検証、合成後タイミングレポート、実機計測まで揃って検証完了。
  • ビットストリームエンコードの差 - 同じ ECP5 でも Lattice Diamond と Yosys+nextpnr で結果が違うことがある。一部コーナーケースで Yosys は保守的。
  • RISC-V V 拡張 - RVV 1.0 は批准済みだが GCC/LLVM 自動ベクトル化は 2026 年も進行中。手で intrinsics を書く段階。

25 章 · 結論 - デジタル設計の真の民主化

2026 年、デジタル回路設計はもはや「高価な EDA ライセンスを持つ人だけ」のものではない。

  • 20 ドルの Tang Nano で初めての L チカ。
  • 無料 Yosys / NextPnR でどんな iCE40 / ECP5 / Gowin ビットストリームでも。
  • 無料 Verilator / Cocotb で産業グレードのシミュレーション。
  • 無料 SymbiYosys で形式検証。
  • 50 ドルの Tiny Tapeout で ASIC。
  • 50〜1500 ドルの RISC-V SBC でデスクトップからワークステーションまで。

その上に オープンコア(PicoRV32、VexRiscv、Rocket、BOOM、CVA6、Ibex)、オープン SoC フレームワーク(Chipyard、LiteX)、オープン PDK(SKY130、GF180MCU)、オープン RoT(OpenTitan、Caliptra)が一行で展開される。これを学生一人がすべて触れる。

残る差は 2 つ。第 1 に、高密度 FPGA(Versal、Stratix 10)のオープンチェーンはまだ遠い。第 2 に、7nm 以下の ASIC オープン PDK は NDA の向こう側。それでも学習・趣味・小規模量産にはオープンで十分。

本当のメッセージは単純だ。「自分の回路をチップに焼く」 ことが書籍 100 冊分以内の予算に収まった。次にすることは学習ではなく、作ることだ。


参考資料