Abstract
This paper addresses automated testing of a massive number of Memory Mapped Input/Output (MMIO) registers in a real large-scale Systems-on-Chip (SoC). The golden reference is an IP-XACT hardware description that includes a global memory map. The memory addresses for peripheral registers are required by software developers to access the peripherals from software.However, frequent hardware changes occur during the HW design process, but the changes might not always propagate to the SW developers and an incorrect memory map can cause unexpected behaviour and critical errors. Our goal is to ensure that the memory map corresponds exactly to the HW description.The correctness of the memory map can be verified by writing software test cases that access all MMIO-registers. Writing them manually is time consuming and error prone, for which reason we present a test case generator. We use a Rust-based software stack, where the generator itself is written in Rust while the generator input is in CMSIS-SVD-format that is generated from IP-XACT. We have used the generator extensively in Tampere SoC Hub Ballast and Headsail SoCs and fixed several errors before the chips manufacturing. The test generator can be used with any IP-XACT based SoCs.
Original language | English |
---|---|
Title of host publication | 2023 IEEE Nordic Circuits and Systems Conference (NorCAS) |
Publisher | IEEE |
Number of pages | 7 |
ISBN (Electronic) | 979-8-3503-3757-0 |
ISBN (Print) | 979-8-3503-3758-7 |
DOIs | |
Publication status | Published - 31 Oct 2023 |
Publication type | A4 Article in conference proceedings |
Event | IEEE Nordic Circuits and Systems Conference - Aalborg, Denmark Duration: 30 Oct 2023 → 1 Nov 2023 |
Conference
Conference | IEEE Nordic Circuits and Systems Conference |
---|---|
Country/Territory | Denmark |
City | Aalborg |
Period | 30/10/23 → 1/11/23 |
Keywords
- verification
- MMIO
- SVD
- IP-XACT
- Rust
Publication forum classification
- Publication forum level 1