Microsemi M2GL025 Mi-V

Overview

The Microsemi M2GL025 board is an IGLOO2 FPGA based development board. The Mi-V RISC-V soft CPU can be deployed on the MGL025 board. More information can be found on Microsemi’s website.

Programming and debugging

Building

Applications for the m2gl025_miv board configuration can be built as usual (see Build an Application). In order to build the application for m2gl025_miv, set the BOARD variable to m2gl025_miv.

export BOARD="m2gl025_miv"

Flashing

In order to upload the application to the device, you’ll need OpenOCD and GDB with RISC-V support. You can get them as a part of SoftConsole SDK. Download and installation instructions can be found on Microsemi’s SoftConsole website.

With the necessary tools installed, you can connect to the board using OpenOCD. To establish an OpenOCD connection run:

sudo LD_LIBRARY_PATH=<softconsole_path>/openocd/bin \
<softconsole_path>/openocd/bin/openocd  --file \
<softconsole_path>/openocd/share/openocd/scripts/board/microsemi-riscv.cfg

Leave it running, and in a different terminal, use GDB to upload the binary to the board. You can use the RISC-V GDB from a toolchain delivered with SoftConsole SDK.

Here is the GDB terminal command to connect to the device and load the binary:

<softconsole_path>/riscv-unknown-elf-gcc/bin/riscv64-unknown-elf-gdb \
-ex "target extended-remote localhost:3333" \
-ex "set mem inaccessible-by-default off" \
-ex "set arch riscv:rv32" \
-ex "set riscv use_compressed_breakpoints no" \
-ex "load" <path_to_executable>

Debugging

Refer to the detailed overview of Custom Board and SOC Definitions.