LiteX実行時に自分の好きなプログラムをロードして実行するためには何をすればよいかというのを調査していた。
とりあえず、Demoファイルがあったので、これを試してみたいと思う。
- まず、単純にVexRiscvのビルドを行う。これには以下のコマンドを実行する。
litex_sim --cpu-type=vexriscv --output vexriscv_build
次に、demoアプリをビルドする。これは./litex/litex/litex/soc/software/demoに移動してビルドを行う。
cd ./litex/litex/litex/soc/software/demo ./demo.py --build-path ../../../../../../vexriscv_build/
これでdemo.binが生成されるので、もう一度litex_simに戻ってBIOSの代わりにdemo.binをロードしよう。
litex_sim --cpu-type=vexriscv --output vexriscv_build --integrated-rom-init=./litex/litex/litex/soc/software/demo/demo.bin
LiteX minimal demo app built Apr 24 2023 16:06:51 Available commands: help - Show this command reboot - Reboot CPU donut - Spinning Donut demo helloc - Hello C litex-demo-app>
ターミナルが立ち上がった。donutを使用してみる。
Donut demo...
$@@$$@@$$$@@$
$$$$$###########$$$$$
$####**!!!!!!!!!!!**###$$
####**!===============!**####
*##**!!!===;::::::::;;===!!!*###*
!****!!===;:~--,,.,,-~~:;===!!*****
=****!!==;;:-,........,--:;;=!!!****=
!***!!!==;:--...........-~:;=!!!!***!
!***!!!=;;:-,.. ..,-:;==!!!**!!
;!!**!!!==;:-,. ~;==!!!!**!!!=:
=!!!****!*!!!== =!!********!!!=
;=!!!*****#*#####***########****!!==;
-;=!!****####$$$$$@@@$$$$###****!!=;-
~:=!!****###$$$$@@@@$$$$###**!!==;-
,:;=!!**####$$$$$$$$$####**!!=;:-
-:;=!!!**###########**!!!=;:-
-:;;==!!!*******!!!==;::-
.-~::;;=======;;::~-.
いいね。ちゃんと動いた。こうやって任意のアプリケーションを立ち上げるのか。

