The IoT revolution shaped a new application domain where the low power RISC architectures constitute the standard computational backbone. The current de-facto practice is to extend the ISA with custom instruction sets to efficiently manage the complex tasks imposed by IoT applications, i.e., augmented reality, artificial intelligence and autonomous driving, within narrow energy and area budgets. However, the newly IoT application domain also offers a unique opportunity to revisit and optimize the RISC microarchitectural design flow from a more communication- and memory-centric viewpoint. This manuscript critically explores and optimizes the design of a RISC CPU front-end for IoT delivering a two-fold objective: i) provide an optimized CPU microarchitecture and ii) present a set of design guidelines to steer the implementation of IoT CPUs. The exploration sits on a newly proposed SoC and RISC CPU implementing the RISC-V/IMF ISA and accounting for area, timing and performance design metrics. Such SoC offers a reference design to evaluate pros and cons of different microarchitectural solutions. A wide combinations of microarchitectures considering different branch prediction schemes, cache design architectures and on-chip bus solutions have been evaluated. The entire exploration is focused on the FPGA-based implementation due to the renewed interest for this technology demonstrated by both the research community and companies. We note that ARM launched the DesignStart FPGA program to make available the Cortex-M microcontrollers on Xilinx FPGAs in the form of IP blocks. The content of this manuscript has been disclosed to the research community by means of a paper published on a peer-reviewed journal.

La rivoluzione dell’IoT ha plasmato un nuovo dominio applicativo in cui le fondamenta del processo computazionale sono le architetture RISC low power. Attualmente è uso comune estendere l’ISA con istruzioni personalizzate mirate a gestire e soddisfare efficacemente le complesse operazioni imposte dalle innumerevoli applicazioni IoT: realtà aumentata, intelligenza artificiale, guida autonoma, sono tutte caratterizzate da stringenti vincoli in termini di energia e area. Tuttavia, il nascente mondo dell’IoT offre opportunità uniche per rivisitare e ottimizzare il flusso di progetto del design microarchitetturale RISC da un punto di vista squisitamente focalizzato su comunicazione e memoria. Questo lavoro di tesi si propone di esplorare e perfezionare il design del front-end di una CPU RISC orientata al mondo dell’IoT delineando due obiettivi principali: i) fornire una CPU caratterizzata da una microarchitettura ottimizzata per diversi scenari applicativi, ii) presentare un insieme di linee guida orientate all’implementazione di CPU per l’IoT. L’esplorazione si basa su un SoC flessibile e sviluppato parallelamente alla CPU, la quale implementa tre estensioni dell’ISA RISC-V: I, M ed F. Inoltre, l’analisi riguarda principalmente tre metriche: prestazioni, area e timing. Il contesto in cui avviene l’esplorazione, ossia il SoC proposto, permette di fornire un efficiente meccanismo di valutazione di vantaggi e svantaggi per svariate soluzioni microarchitetturali. E’ stato valutato un ampio spettro di approcci microarchitetturali, in particolare considerando differenti schemi di branch prediction, architetture cache e soluzioni bus on-chip. L’intera esplorazione si focalizza su una implementazione orientata al dominio delle FPGA. Ciò accade anche grazie al rinnovato interesse per questo tipo di tecnologie dimostrato sia dalla comunità di ricerca che dalle aziende. Si pensi, ad esempio, a come ARM abbia recentemente lanciato il programma DesignStart FPGA al fine di rendere disponibili i microcontrollori Cortex-M nella forma di blocchi IP su FPGA prodotte da Xilinx. Questo lavoro di tesi è stato in parte presentato alla comunità scientifica tramite la pubblicazione di un articolo su rivista del settore.

Exploring microarchitectural design aspects of RISC CPUs in the IoT era

SCOTTI, GIOVANNI
2017/2018

Abstract

The IoT revolution shaped a new application domain where the low power RISC architectures constitute the standard computational backbone. The current de-facto practice is to extend the ISA with custom instruction sets to efficiently manage the complex tasks imposed by IoT applications, i.e., augmented reality, artificial intelligence and autonomous driving, within narrow energy and area budgets. However, the newly IoT application domain also offers a unique opportunity to revisit and optimize the RISC microarchitectural design flow from a more communication- and memory-centric viewpoint. This manuscript critically explores and optimizes the design of a RISC CPU front-end for IoT delivering a two-fold objective: i) provide an optimized CPU microarchitecture and ii) present a set of design guidelines to steer the implementation of IoT CPUs. The exploration sits on a newly proposed SoC and RISC CPU implementing the RISC-V/IMF ISA and accounting for area, timing and performance design metrics. Such SoC offers a reference design to evaluate pros and cons of different microarchitectural solutions. A wide combinations of microarchitectures considering different branch prediction schemes, cache design architectures and on-chip bus solutions have been evaluated. The entire exploration is focused on the FPGA-based implementation due to the renewed interest for this technology demonstrated by both the research community and companies. We note that ARM launched the DesignStart FPGA program to make available the Cortex-M microcontrollers on Xilinx FPGAs in the form of IP blocks. The content of this manuscript has been disclosed to the research community by means of a paper published on a peer-reviewed journal.
ZONI, DAVIDE
ING - Scuola di Ingegneria Industriale e dell'Informazione
16-apr-2019
2017/2018
La rivoluzione dell’IoT ha plasmato un nuovo dominio applicativo in cui le fondamenta del processo computazionale sono le architetture RISC low power. Attualmente è uso comune estendere l’ISA con istruzioni personalizzate mirate a gestire e soddisfare efficacemente le complesse operazioni imposte dalle innumerevoli applicazioni IoT: realtà aumentata, intelligenza artificiale, guida autonoma, sono tutte caratterizzate da stringenti vincoli in termini di energia e area. Tuttavia, il nascente mondo dell’IoT offre opportunità uniche per rivisitare e ottimizzare il flusso di progetto del design microarchitetturale RISC da un punto di vista squisitamente focalizzato su comunicazione e memoria. Questo lavoro di tesi si propone di esplorare e perfezionare il design del front-end di una CPU RISC orientata al mondo dell’IoT delineando due obiettivi principali: i) fornire una CPU caratterizzata da una microarchitettura ottimizzata per diversi scenari applicativi, ii) presentare un insieme di linee guida orientate all’implementazione di CPU per l’IoT. L’esplorazione si basa su un SoC flessibile e sviluppato parallelamente alla CPU, la quale implementa tre estensioni dell’ISA RISC-V: I, M ed F. Inoltre, l’analisi riguarda principalmente tre metriche: prestazioni, area e timing. Il contesto in cui avviene l’esplorazione, ossia il SoC proposto, permette di fornire un efficiente meccanismo di valutazione di vantaggi e svantaggi per svariate soluzioni microarchitetturali. E’ stato valutato un ampio spettro di approcci microarchitetturali, in particolare considerando differenti schemi di branch prediction, architetture cache e soluzioni bus on-chip. L’intera esplorazione si focalizza su una implementazione orientata al dominio delle FPGA. Ciò accade anche grazie al rinnovato interesse per questo tipo di tecnologie dimostrato sia dalla comunità di ricerca che dalle aziende. Si pensi, ad esempio, a come ARM abbia recentemente lanciato il programma DesignStart FPGA al fine di rendere disponibili i microcontrollori Cortex-M nella forma di blocchi IP su FPGA prodotte da Xilinx. Questo lavoro di tesi è stato in parte presentato alla comunità scientifica tramite la pubblicazione di un articolo su rivista del settore.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
thesis_scotti.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Thesis document
Dimensione 1.21 MB
Formato Adobe PDF
1.21 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/147415