VisionFive2 RISC-V SBCを試す(Debianで3DCG)

"VisionFive 2 - 3D GPU を統合した世界初の高性能 RISC-V SBC"がキャッチコピーのボードコンピュータを試してみた。

クラウドファウンデイングに応募したボードがようやく昨年末に手元に届いた。
StarFive社のRISC-V JH7100 Socに3D GPU内蔵。
4GB Memory/Dual LAN/M.2 Nvme SSD slot/USB3.0 x4。
ラズパイ4と同程度の性能を謳うが、WiFiやBluetoothは内蔵しない。
個人的にはM.2 Nvme SSD対応に惹かれた。

このVisionFive2 SBC上でDebian 12 (bookworm)開発版を使って、Vulkan 3D CGデモをベンチマーク替わりに動かしてみた。
ラズパイ4と比べてどの程度の性能があるかを実際に試してみたので、使い方を備忘録替わりに記載する。

 
ボードでDebianを起動してneofetchでOSやCPU情報を表示してみる。
StarFive VisionFive V2 1.5GHz 4コアのCPU 4GB Memory, GUIはXfce 4.16。


ボードのパッケージと接続


ボードの接続はUSB Type-Cコネクタで電源接続、GPIOポートにUSB TTL シリアル 変換 ケーブルを接続してホストPCとシリアル通信。
LANポートは端側がeth0でGbit LAN、HDMIとUSBで2K Display Monitorとキーボード、マウスに接続。4Kモニタ接続では不具合が出る。
電源(5.1V/3.8A)とヒートシンクはラズパイ用を流用した。動作中はそこそこ熱くなるので、ヒートシンクかファンが必要になるだろう。
ボードの起動中のメッセージはHDMIには出力されないので、通信用のホストPCとUSB TTL シリアル 変換 ケーブルを用意する。
ボードのファームウエアのアップデートにもシリアル変換ケーブルが必要。
今回はUbuntu 22.04 PCでminicomシリアル通信ソフトを使った。 


ボードの裏面にMicroSDカードとM.2 NVme SSD カード用のソケットがある。
今回、手持ちの適当な128GB MicroSDと240GB SSDを使った。Debianイメージを書き込むには32GB以上のMicroSDが必要。
現時点でのDebian69ではSSDは高速のストレージとしては使えるが、BOOTはまだサポートしていない。
これで準備が出来た。

基本的な使い方はRVspaceのページにある。
現時点で最新のDebian69イメージを使うには、最初にファームウエアアップデート用のツールsdcard.imgを使って
U-BOOTとPAYLOADをアップデートする必要がある。
sdcard.imgを書き込んだSDカードを起動するとGPIO経由のシリアル通信なのでHDMI出力は出ない。
ホストPCにシリアル変換ケーブルを接続する。
Ubuntuのターミナルでminicomを起動する。

minicom -D /dev/ttyUSB0

 buildrootにroot:starfiveでログインしてu-boot-spl.bin.normal.outとvisionfive2_fw_payload.imgファイルを更新する。

事前にsdcard.imgを書き込んだカードにこれらの2つのファイルの最新版を書き込んでおく。

SPLU-Bootをアップデートできたら、次はいよいよDebian69イメージを大容量SDカードに書き込んで、起動する。
今度はHDMIにGUIでログインできる。
root:starfive
ボード上のLEDが点滅するので動作状態がわかる。
うまくいかない場合はシリアルターミナルで途中経過を確認できる。

ログイン後の設定
日付と時刻がずれている。
apt install  systemd-timesyncd
日本語105キーボードを使いたい。
/etc/default/keyboard 編集
------------------------------------------------
XKBMODEL="pc105"
XKBLAYOUT="jp"
----------------------------------------------------
FireFoxなどのインターネットブラウザでの文字化け
apt install fonts-noto-cjk

3D CG API Vulkanデモを動かす
ソースコードからBuildする
https://github.com/SaschaWillems/Vulkan
GitHub - KhronosGroup/Vulkan-Samples: One stop solution for all Vulkan samples

Rust言語を使う
PythonやJavaScriptのようなスクリプト言語(インタープリター)だけではなく、高速なコンパイラ言語も使いたいのでRustをインストールした。 

hello-rust プロジェクトを作成して"Hello, world!"を試してみた。

まとめ
まだDebianは開発版なので、安定動作しないところがあるが、いずれ安定板のOS(Debian,Ubuntu,その他)がリリースされるだろう。
現在はまだ、チャレンジの段階だがRISC-Vを試すには絶好のSBCだと思う。
 

コメント powered by CComment