| TC_NVMC_0001 | NVMC_REG_READ_WRITE - 32-bit Access
- Verify RW on all CSRs
- Write patterns (all 1s/0s, 55/AA, walking 1/0)
- Read & compare error on mismatch
- Default Check
- Read CSRs after reset
- Compare with reset values
- Ensure STS, RED, DCT are read-only
- Invalid Address:Access out-of-range → check HRESP
- 8/16-bit Access,Write 32-bit, read byte,halfword,Compare (ignore reserved/reset bits)
- Unimplemented Addr
- Verify HRESP assertion
- Pre-reset:Check register values before reset
| - | unassigned | In development 0/1 | 25-Aug-2026 15:37:03 | - - execution tbd |
| TC_NVMC_0002 | NVMC_INTERRUPT - Intention of the test is to check whether the NVMC interrupt is generated and serviced. For write and erase completion, single bit and double bit error, and water mark level
- Set Fuse bits LDT0[117] to enable erase operation as in control register.
- Enable all the interrupts by configuring in control register.
- set watermark level to get WRD flag.
- after erase operation enter wfi mode and wait for ERC interrupt.
- perform read operation without write to get SBE.
- perform write operation to flash and enter wfi mode, to get WRC interrupt.
- deposit another value to the write loaction through backdoor and perform read to that location to get DBE/SBE.
| - | unassigned | PASS 1/1 | 10-Sep-2026 11:16:30 | - - execution tbd |
| TC_NVMC_0003 | NVMC_MCS_BLOCK - Intention of the test is to verify NVMC erase, write and read operations
- Set Fuse bits LDT0[117] and LDT0[126] to enable erase operation and Boot protection
- Configure erase_sel for page erase and enable boot protection
- Perform matrix erase operation and check MAS and BBLOCKEN behavior
- Initiate AHB write operation and wait for interrupt using WFI
- Read back data and compare with expected values
| - | unassigned | PASS 1/1 | 03-Sep-2026 17:25:13 | - - execution tbd |
| TC_NVMC_0004 | - Clear NVMC status register bits before starting test
- Configure NVMC control register with WRWM, BPEN, WRCIEN, WRDIEN
- Read all flash locations before erase for observation
- Perform page erase using control register
- Wait for erase completion using status register polling
- Verify all flash locations are erased (expect 0xFFFFFFFF)
- Perform burst write of data in chunks of 8 words
- Clear first write complete status during burst sequence
- Wait for write completion using status register
- Repeat burst programming across memory regions
- Verify programmed data matches expected pattern (0xA0 + index)
- Generate PASS/FAIL using trigger_event calls
| - | unassigned | PASS 1/1 | 03-Sep-2026 17:25:08 | - - execution tbd |