1:name: Murax SoC with VexRiscv 2:description: This script runs an echo demo using a verilated UART. 3 4$name?="APB3UART" 5 6using sysbus 7mach create $name 8machine LoadPlatformDescription @platforms/cpus/verilated/murax_vexriscv_verilated_uart.repl 9 10# Binaries from https://github.com/antmicro/renode-verilator-integration, rev. f9b4139 11$uartLinux?=@https://dl.antmicro.com/projects/renode/libVapb3uart-Linux-x86_64-12746432362.so-s_2075112-cdd84640aaef40f017ea1739f3a81f07bd739908 12$uartWindows?=@https://dl.antmicro.com/projects/renode/libVapb3uart-Windows-x86_64-12746432362.dll-s_3239943-9bb6d65ee4f7a2945d3dfb3d503f90f399ad0cf8 13$uartMacOS?=@https://dl.antmicro.com/projects/renode/libVapb3uart-macOS-x86_64-12746432362.dylib-s_220440-f0c9f7e8fd31d14f9e0eda3437cdf419494abee8 14 15showAnalyzer uart 16 17uart SimulationFilePathLinux $uartLinux 18uart SimulationFilePathWindows $uartWindows 19# uart SimulationFilePathMacOS $uartMacOS 20 21macro reset 22""" 23 sysbus LoadELF @https://dl.antmicro.com/projects/renode/murax--demo.elf-s_26952-7635fc30d0a3ed10c5b7cba622131b02d103f629 24 sysbus.cpu MTVEC 0x80000020 25""" 26 27runMacro $reset 28 29# this is a hack to allow handling interrupts at all; this should be after #13326 30cpu SetMachineIrqMask 0xffffffff 31 32## set frame length in the FrameCongfig register (0xC) 33sysbus WriteDoubleWord 0xF001000C 0x000F 34