Sonata system v0.1
This is a pre-release bitstream that contains the basic infrastructure for a CHERIoT SoC:
- A GPIO for LED output and user input.
- 256 KiB of SRAM for both data and instructions.
- Revocation tags that cover all of SRAM.
- A TL-UL bus extended with capability tags in the user field.
- 2 UARTs.
- 2 I2C hosts.
- 3 SPI blocks: one for LCD, one for Flash and one for ethernet.
- USB device for using the user USB.
- Timer for generating interrupts.
You can download the generated bitstream below named sonata_bitstream_v0.1.bit
. This generated bitstream contains a bootloader that will load a software image from flash.
Besides the bitstream, you'll also need a UF2 to program the RP2040, which is named rpi_rp2_v0.1.uf2
. Future releases may be found in the sonata-rp2040 repository.
You will also need a UF2 of the software that you want to execute. You can create your own using our template repository. For testing I've also attached an example to this release named sonata_simple_demo_v0.1.uf2
to this release.
A quick start guide:
- Before plugging in your Sonata board, hold down the SW9 labelled "RP2040 Boot", and while holding this button plug your board into your laptop using the Main USB.
- A drive called
RPI-RP2
should pop up on your computer and dragrpi_rp2_v0.1.uf2
into it. - This drive should automatically dismount once the file is transfered and remount as
SONATA
. Once the remount has happened, you can drag in the bitstreamsonata_bistream_v0.1.bit
. You may have to unplug and replug the USB cable if the drive does not mount automatically. - Once programming is successful, you should see the CHERI LED light up and the LEGACY LED turn off. If this is not the case, the bitstream loading may have failed and you should retry by unplugging and replugging the main USB on the Sonata board and redrag the bitstream into the
SONATA
drive. - After programming the bitstream, drag the
sonata_simple_demo_v0.1.uf2
into theSONATA
drive. - You should now see the user LEDs turn on and off.
For more information please refer to the documentation.