|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Directories | |
| src | |
SRAM-to-SRAM block copy through the Data Transfer Controller, verified against the source pattern once a second – the DTC counterpart to dma_memcopy_demo. LED1 toggles on a good copy and LED2 on a mismatch; g_dtc_match, g_dtc_bytes, g_dtc_heartbeat and g_dtc_isr_count mirror the result for headless SWD probing. Needs no external hardware.
The DTC has no software-start register – "the DTC is activated by an interrupt request" (HUM Ch 18.3) – so firing an ELC software event is the only way to kick a transfer from software.
Two silicon-specific defects surfaced here that the emulator had masked, both worth knowing before writing DTC code:
The emulator runs the transfer synchronously on the trigger write, which is exactly why neither defect showed up there.
This demo does no explicit cache maintenance. With the D-cache enabled, either place the buffers in a coherent region or clean and invalidate around the transfer; dtc_coherency_hil is the app that proves that path.