帰らざるMOS回路(65) Xilinx Vivado、RISC-V MCS、ハードはOK?

Joseph Halfmoon

前回 Vivadoの2024.1版をインストール、RISC-Vコア(MicroBlaze V)が存在することを確認。お手軽そうなマイクロコントローラ構成を選択してみました。これ使えば一撃でRISC-Vマイコンをターゲットボード上に構成できる?ハードはね、確かに一撃なんだがソフトがね。まさかのドキュメント不在に愕然。

※かえらざるMOS回路 投稿順 INDEX

※実習にはWindows11上の AMD社 (Xilinx) Vivado 2024.1 を使用させていただいております。

※ターゲットボードは、Digilent製 Cmod S7ボードです。お求めやすい? Spartan-7搭載の超小型開発ボードです。

まさかのドキュメント不在

CPUコアを搭載する設計では、Vivado上でハードウエアを構成したあと、Vitis IDEというソフトウエア開発環境(フロントエンドはVisual Studio Codeでないかと思われるやつ)でソフトウエア開発をするスタイルです。Vivadoで構成したハードウエアをVitisが読み込んで開発環境を整えてくれます。それについては、

    1. Vivado側でAssociate ELFしておけ
    2. Vitis側の詳しい手順は Product Guide をみよ。

というご指示がありました。2番目の件についてはこんな感じね。なお、<filename>.xsaというのがVivadoからExportするハードウエア情報のファイルみたいです。VitisGuid

さすがに、ドキュメント読んでおかねばまずいっしょ。ということでドキュメントを開こうとしたところが以下です。DocumentNotFound

どうもお目当ては pg440-microblaze-mcs-v.pdf というドキュメントらしいのだけれども、不在。Vitis素人老人には手にあまります。どしたら良いの?

ハードはビットストリーム作るところまで成功

まずはやれることをやっとけ、ということでハードを構成。MicroBlaze V MCSの設定画面で「認識されているらしい」Cmod-S7ボードの端子どもとの設定を行います。こんな感じ。IPsetting

上記のBoard Interfaceですが、最初は全てCustom扱いになってます。しかしプルダウンメニューを引き出すとCmod-S7の端子らしきものがしっかり認識されているのでそれと接続していきました。なおGPIOが4つあるのは各32ビットのポートです。上記では1だけつかってCmod-S7上の単色LED4ビットと接続。

上記の設定後、予想通りBlock Diagram画面のコアには足が追加されてました。そこで自動接続をお願いしたものが以下に。ConnectAutomation

念のため、バリデーションをお願いしてみます。えい。validationOK

さほどのELFファイルにAssociate の件が気になったのでやっておきます。AssociatedELF

さらに、シンセシス、インプリメンテーション、ビットストリーム生成までやってみました。OKです。BitstreamGenerationOK

XSAファイルの生成

さてビットストリームまで出来たのでハードはきっと大丈夫、という勝手な判断です。VitisにExportするためにXSAファイルを生成試みます。メニューから起動。ExportHW

ビットストリーム生成済なので、インクルードしておきます。文句あるまい。output

XSAファイルの生成場所の指定。xsafile

問題なくファイルができたようです。

Vitis 2024.1起動

過去回では「クラシック版(IDEはEclipseベースにみえたです)」を使用したので、新しい方のUIは初めてです。だいたいVitisの仕組み分かってないです。

ともかくXSAファイルを読み込ませて、認識してもらわんとならんのであれこれやってみました。OSなど無(standalone)です。CreatePlatformComponent

設定の最後のステップが以下に。CreatePlatformComponentFinish

一応、RISC-Vってことで認識されているみたいね。

IDEからプロジェクトを開いたところが以下に。IDE

たしかに生成されたヘッダなどみるとRISC-Vみたいだが、この先どうしたら良いの?当方、Lチカしたいだけなんですが。。。

ドキュメント不在、素人老人の混迷は深い。

帰らざるMOS回路(64) Xilinx Vivado、2024.1、RISC-V、公式登場 へ戻る

帰らざるMOS回路(66) Xilinx Vitis、RISC-V MCS、ビルドはOK? へ進む