Testing¶
Guineveer SoC support the following targets:
HDL simulation
Renode simulation and cosimulation
FPGA
ASIC (in progress)
Software tests¶
Currently, three software test samples are available:
uart- example initializes and transmitsHello UARTover UARTi3c- example verifies the correctness of some basic operations on thei3cdevice, including:verifying if registers contain expected values after reset
verifying if read-only registers are not writeable and if read-write registers are writable
verifying if status bits change values after an interrupt condition in forced
i3c-cocotb- test application dedicated for use with the Cocotb I3C tests, which cover:waiting for dynamic address assignment and observing the register changes,
performing I3C private writes and reads to the device,
performing various directed CCC transactions,
performing a streaming boot via the recovery I3C target,
performing a streaming boot using the AXI bypass functionality.
axi-streaming-boot-dualcore- example tests AXI streaming boot feature ofi3c-coreusing two corescore 0 is waiting for payload from
i3c-corevia registerscore 1 is sending payload to
i3c-corevia registerspayload can be modified and rebuild, source files are located in
tests/sw/axi-streaming-boot-dualcore/core1/payloadpayload size is limited in core 0 software, to incrase limit change
MAX_STREAMING_BOOT_SIZE
Building software examples is described in the User guide.
Running software tests¶
Software test can be run in multiple ways:
in Verilator
in Renode with a behavioral model of the I3C device
in Renode with a cosimulated model of the I3C device, generated from the original HDL sources.
Running the test software using each of the available methods is described in the User guide
FPGA tests¶
Supported FPGA boards¶
Arty A7-100T is an FPGA development board based on the Xilinx Artix-7 FPGA.