2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MacでVivado 2025.1を使いたい!Claude Code対応でモダンな開発環境

2
Posted at

OSSをフォークして自分色に染める時代

Apple Silicon Mac上でVivadoを動かすOSSに vivado-on-silicon-mac というものがあります。Rosettaで動くx64 DockerコンテナをVNC経由で使うというもので、M1以降のMacでFPGA開発をしたい人間にとって救世主的な存在です。

ただ、最終更新からしばらく経っており、Vivado 2024.2以降には対応していません。昨今のOSS事情として「メンテが止まったリポジトリにプルリクを送る」よりも「自分でフォークしてAIと一緒に好みに仕上げる」方が早いです。というわけでフォークして自分なりに整えたものを公開しました。

変えたこと

Vivado 2025.1 対応

2025.1からVivadoのインストールパス構造が変わりました。

# ~2024.1
Xilinx/Vivado/VERSION/settings64.sh

# 2025.1+
Xilinx/VERSION/Vivado/settings64.sh

de_start.sh・container_bashrc のパス検索を両方のレイアウトに対応させました。インストールハッシュと設定ファイルも2025.1用を追加しています。

TigerVNC で HiDPI 対応

macOS標準の「画面共有」では HiDPI に対応しておらず、Retina Mac でVNC画面がぼやけます。TigerVNC に切り替えることで解像度3456×2160・DPI 192でくっきり表示できるようになりました。

brew install --cask tigervnc-viewer

VNCの解像度は scripts/vnc_resolution に書かれているので、16インチ MBP以外の環境に合わせたい場合はここを書き換えてください。

コンテナ内で Claude Code 対応

macOSの ~/.claude/ をコンテナ内の /home/user/.claude/ にバインドマウントするようにしました。コンテナ内で初回 claude を起動して認証を済ませれば、以降は再起動しても認証情報が保持されます。

VerilogのレビューやTCLスクリプトの生成をVivadoを動かしているコンテナ内から直接 claude に頼めます。

モダンなシェル環境

コンテナ初回起動時に setup_tools.sh が自動で走り、以下をインストールします。

ツール 役割
claude Claude Code
eza アイコン付き ls 代替
bat シンタックスハイライト付き cat 代替
rg (ripgrep) 高速 grep 代替
fzf ファジーファインダー
zoxide スマート cd 代替
JetBrainsMono Nerd Font アイコン表示対応フォント
WhiteSur テーマ macOS風 GTK テーマ

attach.sh でコンテナにシェル接続するとこれらが使えるターミナル環境になっています。

Digilent ボードファイルをサブモジュールで管理

vivado-boards・vivado-library をサブモジュールとして追加しました。setup_boards.sh が2025.1のパス構造を考慮したうえでシンボリックリンクを張るので、Arty・Nexys・Basys などのボードがVivadoのBoard Managerに表示されるようになります。

git submodule update --init

サブモジュールのURLはSSHではなくHTTPSに統一してあるので、GitHub SSHキーの設定がなくても動きます。

使い方

コンテナ起動

cd vivado-on-silicon-mac
./scripts/start_container.sh

コンテナに接続

./scripts/attach.sh

あとは README_ja.md 読んでね。

FAQ

なんで2025.1だけ?2024.2は?2025.2は?

筆者が研究室で使ってるバージョンが2025.1だからです。他のバージョンも使いたくなったら追加するかもです。

なんでDigilent ボードファイルとIPコアをサブモジュールに入れてるの?

筆者が研究室でDigilentのボードを使ってるからです。

ezaとかbatとかいらん

筆者の好みです。

プロンプトが可愛い

筆者の好み(ry

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?