Low-area embedded processors are increasingly used in sensor-processing and edge-AI applications, where frequent data movement must be supported under strict area, power, and implementation-complexity constraints. These processors often rely on simple in-order pipelines (where instructions progress in program order), but external-memory and peripheral accesses can stall execution until completion and significantly affect performance. This thesis proposes and evaluates a non-blocking memory-access architecture for STRIVE-L, a low-area in-order RISC-V core from STMicroelectronics, to improve tolerance to external-access latency while preserving the simplicity of the baseline core. The proposed architecture was designed and implemented at Register-Transfer Level to replace the blocking external-memory path, allowing pending bus transactions to overlap with independent instruction execution. The implementation combines a non-blocking crossbar based on the AXI-Lite bus protocol with CPU pipeline and memory-access stage modifications for pending-load tracking, dependency detection, load-to-store forwarding, and optional handling of out-of-order responses (returned in a different order from their requests). The design was verified and validated at both crossbar and core level. The proposed architecture was compared with the baseline STRIVE-L core and a DMA-based reference (STMicroelectronics DMA3) through ASIC synthesis, FPGA implementation, and performance simulation on representative workloads. The results show that the proposed architecture introduces a moderate hardware overhead and can significantly reduce the impact of external-memory latency when independent memory operations or independent instructions are available. Compared with DMA-based data movement, the proposed approach is especially effective for short transfers and workloads where loaded data are immediately consumed by the CPU, while approaching DMA performance for long and regular transfers. Overall, the work demonstrates that the proposed non-blocking memory-access architecture offers a practical approach to memory-latency tolerance in low-area in-order processors without requiring a full out-of-order execution engine.
I processori embedded ad area ridotta sono sempre più impiegati in applicazioni di sensor processing ed edge-AI, le quali richiedono frequenti trasferimenti di dati sotto stringenti vincoli di area, potenza e complessità implementativa. Questi processori adottano spesso semplici pipeline in-order (con istruzioni eseguite nell’ordine del programma), tuttavia gli accessi a memorie e periferiche esterne possono bloccarne l'esecuzione fino al loro completamento e influire significativamente sulle prestazioni. Questa tesi propone e analizza un'architettura con accessi alla memoria non bloccanti per STRIVE-L, un core RISC-V in-order ad area ridotta di STMicroelectronics, per migliorare la tolleranza alla latenza degli accessi esterni preservando la semplicità del core di riferimento. L'architettura proposta è stata progettata e implementata a livello RTL per sostituire il percorso bloccante verso la memoria esterna, consentendo l'esecuzione di istruzioni indipendenti mentre le transazioni sul bus restano pendenti. L'implementazione include una crossbar non bloccante basata sul protocollo di bus AXI-Lite e modifiche alla pipeline e allo stadio di accesso alla memoria della CPU, introducendo tracciamento delle load pendenti, rilevamento delle dipendenze dati, forwarding da load a store e gestione opzionale di risposte out-of-order (restituite in un ordine diverso da quello delle richieste). Il progetto è stato verificato e validato sia a livello di crossbar che di core. L'architettura proposta è stata confrontata con il core STRIVE-L di riferimento e con una configurazione basata su DMA (DMA3 di STMicroelectronics) mediante sintesi ASIC, implementazione FPGA e simulazioni prestazionali su workload rappresentativi. I risultati mostrano che l'architettura proposta introduce un overhead hardware moderato e può ridurre significativamente l'impatto della latenza della memoria esterna quando sono disponibili operazioni di memoria o istruzioni indipendenti. Rispetto allo spostamento dati basato su DMA, l'approccio proposto risulta particolarmente efficace per trasferimenti brevi e workload nei quali i dati caricati vengono utilizzati immediatamente dalla CPU, avvicinandosi al contempo alle prestazioni del DMA per trasferimenti lunghi e regolari. Nel complesso, il lavoro dimostra che l'architettura non bloccante proposta offre un approccio pratico per tollerare la latenza di memoria nei processori in-order ad area ridotta, senza ricorrere a un core completamente out-of-order.
Design and evaluation of a non-blocking memory access architecture for a low-area RISC-V core
Fumagalli, Francesco Samuele
2025/2026
Abstract
Low-area embedded processors are increasingly used in sensor-processing and edge-AI applications, where frequent data movement must be supported under strict area, power, and implementation-complexity constraints. These processors often rely on simple in-order pipelines (where instructions progress in program order), but external-memory and peripheral accesses can stall execution until completion and significantly affect performance. This thesis proposes and evaluates a non-blocking memory-access architecture for STRIVE-L, a low-area in-order RISC-V core from STMicroelectronics, to improve tolerance to external-access latency while preserving the simplicity of the baseline core. The proposed architecture was designed and implemented at Register-Transfer Level to replace the blocking external-memory path, allowing pending bus transactions to overlap with independent instruction execution. The implementation combines a non-blocking crossbar based on the AXI-Lite bus protocol with CPU pipeline and memory-access stage modifications for pending-load tracking, dependency detection, load-to-store forwarding, and optional handling of out-of-order responses (returned in a different order from their requests). The design was verified and validated at both crossbar and core level. The proposed architecture was compared with the baseline STRIVE-L core and a DMA-based reference (STMicroelectronics DMA3) through ASIC synthesis, FPGA implementation, and performance simulation on representative workloads. The results show that the proposed architecture introduces a moderate hardware overhead and can significantly reduce the impact of external-memory latency when independent memory operations or independent instructions are available. Compared with DMA-based data movement, the proposed approach is especially effective for short transfers and workloads where loaded data are immediately consumed by the CPU, while approaching DMA performance for long and regular transfers. Overall, the work demonstrates that the proposed non-blocking memory-access architecture offers a practical approach to memory-latency tolerance in low-area in-order processors without requiring a full out-of-order execution engine.| File | Dimensione | Formato | |
|---|---|---|---|
|
2026_07_Fumagalli_Tesi.pdf
non accessibile
Descrizione: Thesis
Dimensione
1.87 MB
Formato
Adobe PDF
|
1.87 MB | Adobe PDF | Visualizza/Apri |
|
2026_07_Fumagalli_Executive_Summary.pdf
non accessibile
Descrizione: Executive Summary
Dimensione
639.62 kB
Formato
Adobe PDF
|
639.62 kB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/261498