Renode 1.8 release with multi-core GDB support and new RISC-V platforms

Published:

Topics: Open source tools, Open networking, Open FPGA

The newest release of Renode, Antmicro’s open source multi-node simulation framework, adds new exciting pieces to your toolbox, along with support for even more RISC-V platforms and CPUs.

With these new capabilities it’s even easier to integrate Renode as part of the toolchain for your everyday work, be it IoT development, big Linux-capable multicore machines or even HW-SW co-simulation.

Renode 1.8

New RISC-V platforms

We have added support for two new platforms. First, the VEGAboard with RI5CY, a 32-bit RISC-V core originally created for the Pulp Platform. Renode’s board support includes UART and timer models.

The second platform is the Digilent Arty FPGA Evaluation Kit with LiteX and VexRiscv - a great target to start working with the LiteX Build Environment.

LiteX support in Renode has been further upgraded with SPI, Control and Status, SPI Flash and GPIO port peripheral models. As LiteX is our default (and recommended!) choice for vendor-neutral, Linux- and Zephyr-capable soft SoC platform, this is quite important for many internal and external use cases.

Release 1.8 also adds support for Minerva, a 32-bit RISC-V soft CPU, which is now also available as a choice for the LiteX SoC.

For a full list of supported platforms, you can refer directly to Renode’s documentation.

New co-simulation capabilities

With the co-simulation capabilities with Verilator first introduced in Renode 1.7.1, we continue down that path in the 1.8 release with even more options.

By adding an EtherBone bridge model to the platform, you are now able to connect a simulation running in Renode to peripherals connected to a Wishbone bus on a real FPGA. This allows you to develop software in a well-controlled Renode environment, while using accurate HDL models you already have. We have also added an EtherBone bridge demo based on Fomu, an open, tiny FPGA development board that fits into a USB port, with instructions on how to run it locally.

Multi-core GDB debugging

One of the most notable changes in this release is a major improvement in support and usability for the GNU Debugger (GDB).

Before version 1.8 each CPU core had to be exposed with a separate GDB server. But that simplification did not resemble real-life scenarios, in which you’d expect to be connecting just one GDB instance even for a multi-core device. Now, after important API changes and expanding Renode’s GDB remote protocol support by implementing a bunch of new commands, GDB server is started on a machine level instead of a cpu level and is able to handle multiple cores at once. You can read more about multi-core debugging in Renode in our Technology Showcase blog note.

Renode - coming to a cloud near you

Besides the recent developments in version 1.8, Renode has also some big changes to announce. Antmicro is sponsoring FOSSi Foundation’s ORConf coming up on September 27th-29th in Bordeaux, so if you’re interested to find out what’s next, don’t miss our talk on Saturday “Renode - open source simulation for rapid development of complex systems, coming to a cloud near you”.

Whether you’re working on a multi-node IoT system, or prototyping a new RISC-V based SoC, and you’re interested in using Renode for your project to iterate faster in your development cycle and improve your testing methodology, reach out to us at contact@renode.io.

See Also: