lowRISC has released Sonata v1.0, a stable platform developed under the Sunburst project. Designed for embedded systems engineers, Sonata supports CHERIoT technology, enabling features like compartmentalization and enhanced memory safety. It provides a reliable foundation for building secure embedded systems.
CHERIoT is a security-focused technology built on lowRISC’s RISC-V Ibex core, based on CHERI research from the University of Cambridge and SRI International. It addresses memory safety issues like buffer overflows and use-after-free errors using CHERI’s capability-based architecture. The CHERIoT capability format includes permissions for memory access, object types for compartmentalization, and bounds to restrict accessible memory regions. These features enable scalable and efficient compartmentalization, making it suitable for securely running untrusted software in embedded systems. Sonata v1.0 leverages this architecture to isolate components like network stacks and kernels within the CHERIoT RTOS.
The lowRISC Sonata v1.0 specifications:
- FPGA – AMD Xilinx Artix-7 (XC7A35T-1CSG324C)
- CPU – AMD MicroBlaze soft-core based on the RISC Harvard architecture
- 400Kb maximum distributed RAM.
- 50 block RAM/FIFO with ECC (36Kb each), totaling 1800Kb block RAM.
- Package – 324-LFBGA
- Microcontroller – Raspberry Pi RP2040
- Core – Dual Cortex M0+ cores up to 133 MHz (48MHz default)
- Memory – 264 kB of embedded SRAM in 6 banks
- Package – QFN56 7x7mm
- Memory – 64 Mbit HyperRAM (Winbond W956D8MBYA5I)
- Storage
- 256 Mbit SPI flash storage (Winbond W25Q256JVEIQ) can be driven from both the FPGA and the RP2040
- 64 Mbit SPI flash storage (Winbond W25Q64JVZEIQ) for RP2040
- 256 Mbit SPI flash storage (Winbond W25Q256JVEIQ) for FPGA bitstream storage
- MicroSD card slot
- Display – 1.8-inch Color LCD screen controlled via SPI
- Networking – 1x 10/100 Mbps RJ45 Ethernet port
- USB – 2x USB Type-C port for programming and power input
- Serial – RS-232 and RS-485 serial interfaces via 2x 3-pin terminal block
- Debug
- 2x 10-pin Ibex JTAG header
- 2x 4-pin ibex UART
- 4-pin debug header for RP2040
- 2x 3-pin FPGA JTAG header
- 2x 5-pin Cortex program and debug
- Expansion
- 40-pin Raspberry Pi header for RPI Hat
- Arduino shield (only 3.3V versions supported)
- 2x 15-pin R/A header for PMOD
- 2x 8-pin mikroBUS Click
- 2x 4-pin Sparkfun QWIIC connector for I2C
- Misc
- 1x Bitstream slide switch
- 1x Software slide switch
- 1x RPI button
- 1x 5-position tactile joystick
- 1x Reset switch
- 8x Red and green user LEDs
- 14x Capability exception LEDs
- 3x Green LEDs for Bitstream slide switch indication
- 2x WS2813 RGB LEDs
- 8-position slide DIP SPST switch for user
- 4-position slide DIP SPST switch for adjusting VCC
- Power Supply
- +5V DC-in via Type-C port
- 2-pin terminal block for +5V
- Dimension – 125 x 80 mm
The Sonata platform introduces usability features like drag-and-drop programming with UF2 files, live bitstream switching, and a Nix-based development environment for reproducible builds. It includes a robust testing framework with Verilator simulations and automated FPGA testing. The v1.0 release improves efficiency with updated memory maps for optimized peripheral multiplexing and redesigned SPI blocks. However, these updates make earlier software versions incompatible with v1.0. The platform is now built for long-term software compatibility to simplify future migrations.
With its open-source PCB design and extensible hardware interfaces, Sonata supports experimentation and development for embedded applications. Developers can access detailed documentation and resources on the lowRISC Wiki and GitHub to fully leverage the platform’s capabilities.
Sonata boards are available on Mouser for $412.50, and with their open-source PCB design, you can even build your own. For more details, visit the product announcement page.
Sayantan Nandy, an electronics engineer with over four years of hands-on experience in PCB design, circuit development and power electronics, is proficient in EAGLE CAD, Ki-Cad, and Altium. He has a proven track record of delivering efficient and effective systems. His expertise extends from R&D, and prototyping to production support, making him a valuable asset to any engineering team.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress