Design and Optimization of a Low-Power RISC-V Processor for NDIR Measurement of CO2 Levels

Author

Núñez Prieto, Ricardo

Director

Avellana Tarrats, Narcis

Castells Rufas, David

Teres Teres, Lluis Antoni

Tutor

Teres Teres, Lluis Antoni

Date of defense

2023-12-18

Pages

157 p.



Doctorate programs

Universitat Autònoma de Barcelona. Programa de Doctorat en Enginyeria Electrònica i de Telecomunicació

Abstract

En diversos camps com el monitoratge ambiental, els sensors intel·ligents i l'IoT, la demanda creixent de dispositius de baix consum ha suscitat un interès creixent en el desenvolupament de processadors d'alt rendiment i energèticament eficients. En aquesta recerca constant, l'arquitectura RISC-V emergeix com una solució prometedora i en els darrers anys ha guanyat popularitat com una alternativa de codi obert i personalitzable davant les arquitectures de conjunts d'instruccions propietàries. Aquesta tesi presenta el disseny, implementació i anàlisi de rendiment de RisCO2, un microprocessador RISC-V dissenyat a mida. Està especialment optimitzat per a dispositius IoT de baix consum i, més concretament, en el seu ús en sensors de CO2 infrarojos no dispersius (NDIR) per a la monitorització mediambiental i el control de la qualitat de l'aire. El desenvolupament s'ha basat en un procés de disseny iteratiu que utilitza una implementació a FPGA. Aquest procés integra modificacions arquitectòniques de manera incremental amb l'objectiu de reduir el consum d'energia i el temps de càlcul, sense comprometre'n el rendiment general. Inicialment, es va partir d'un nucli bàsic RV32I, cosa que va facilitar la comprensió de les característiques essencials del conjunt d'instruccions RISC-V (ISA) i va destacar la flexibilitat del disseny modular. A mesura que el projecte progressava, es van afegir al processador extensions i unitats funcionals cada cop més especialitzades. Hem enfocat els nostres esforços en la verificació i la validació del disseny del processador. Utilitzem simulacions RTL per confirmar que el disseny compleix les especificacions de l'ISA i per assegurar-ne el funcionament correcte. Comparem els resultats en diferents plataformes de simulació, com ara Vivado i SEGGER Embedded Studio, per garantir la coherència en l'execució d'instruccions. En fases posteriors, optimitzem l'arquitectura eliminant components innecessaris i simplificant mòduls, fet que va resultar en un disseny més eficient en termes d'espai i consum d'energia. El programa de test que hem fet servir per avaluar el rendiment del processador utilitza la tècnica de demodulació digital en quadratura per al processament del senyal del sensor. Després, l'aplicació calcula la concentració de CO2 utilitzant la llei de Beer-Lambert, que descriu el mecanisme d'absorció de la llum en un medi gasós. L'estudi realitza també una anàlisi comparativa amb altres processadors de referència RISC-V ja establerts: Ri5cy, CV32E40P, Zero-riscy i Micro-riscy. Aquesta comparació té com a objectiu avaluar el rendiment de RisCO2 quan s'integra a plataformes SoC del món real com la popular PULPino. Per dur a terme aquesta avaluació, es van crear diferents projectes amb cadascun d'aquests processadors de referència i es van dur a terme anàlisis detallades del consum d'energia utilitzant dades d'activitat de commutació de les xarxes de circuits, cosa que va oferir estimacions precises del consum . Aquest examen va permetre entendre com es distribueix el consum denergia entre els diferents components del processador. Finalment, es va realitzar la síntesi del sistema utilitzant la biblioteca tecnològica del procés de 65 nm de TSMC, fent servir l'eina de síntesi Cadence Genus. Els resultats mostren que RisCO2 aconsegueix una reducció significativa en el consum denergia mentre ofereix un rendiment comparable al dels processadors de referència. Aquestes troballes destaquen la capacitat dels processadors RISC-V personalitzats com RisCO2 per ser usats com a solucions efectives en aplicacions de mesurament de concentracions de gas. En resum, aquesta treball contribueix als esforços en curs destinats a millorar l'eficiència energètica en processadors d'altes prestacions i promoure la computació sostenible, oferint tant un enfocament metodològic com dades empíriques que poden guiar el desenvolupament dels processadors esmentats.


En diversos campos como la monitorización ambiental, los sensores inteligentes y el IoT, la creciente demanda de dispositivos de bajo consumo ha suscitado un interés creciente en el desarrollo de procesadores de alto rendimiento y energéticamente eficientes. En esta constante búsqueda, la arquitectura RISC-V emerge como una solución prometedora y en los últimos años ha ganado popularidad como una alternativa de código abierto y personalizable frente a las arquitecturas de conjuntos de instrucciones propietarias. Esta tesis presenta el diseño, la implementación y el análisis de rendimiento de RisCO2, un microprocesador RISC-V diseñado a medida. Está especialmente optimizado para dispositivos IoT de bajo consumo, y más concretamente en su uso en sensores de CO2 infrarrojos no dispersivos (NDIR) para la monitorización medioambiental y el control de la calidad del aire. El desarrollo se ha basado en un proceso de diseño iterativo que utiliza una implementación en FPGA. Este proceso integra modificaciones arquitectónicas de forma incremental con el objetivo de reducir el consumo de energía y el tiempo de cálculo, sin comprometer el rendimiento general. Inicialmente, se partió de un núcleo básico RV32I, lo cual facilitó la comprensión de las características esenciales del conjunto de instrucciones RISC-V (ISA) y destacó la flexibilidad de su diseño modular. A medida que el proyecto progresaba, se añadieron al procesador extensiones y unidades funcionales cada vez más especializadas. Hemos enfocado nuestros esfuerzos en la verificación y validación del diseño del procesador. Utilizamos simulaciones RTL para confirmar que el diseño cumple con las especificaciones del ISA y para asegurar su correcto funcionamiento. Comparamos los resultados en diferentes plataformas de simulación, como Vivado y SEGGER Embedded Studio, para garantizar la coherencia en la ejecución de instrucciones. En fases posteriores, optimizamos la arquitectura eliminando componentes innecesarios y simplificando módulos, lo que resultó en un diseño más eficiente en términos de espacio y consumo de energía. El programa de test que hemos usado para evaluar el rendimiento del procesador utiliza la técnica de demodulación digital en cuadratura para el procesamiento de la señal del sensor. Luego, la aplicación calcula la concentración de CO2 utilizando la ley de Beer-Lambert, que describe el mecansimo de absorción de la luz en un medio gaseoso. El estudio realiza también un análisis comparativo con otros procesadores de referencia RISC-V ya establecidos: Ri5cy, CV32E40P, Zero-riscy y Micro-riscy. Esta comparación tiene como objetivo evaluar el rendimiento de RisCO2 cuando se integra en plataformas SoC del mundo real como la popular PULPino. Para llevar a cabo esta evaluación, se crearon distintos proyectos con cada uno de estos procesadores de referencia y se llevaron a cabo análisis detallados del consumo de energía utilizando datos de actividad de conmutación de las redes de circuitos, lo que ofreció estimaciones precisas de dicho consumo. Este examen permitió entender cómo se distribuye el consumo de energía entre los distintos componentes del procesador. Finalmente, se realizó la síntesis del sistema utilizando la biblioteca tecnológica del proceso de 65 nm de TSMC, empleando la herramienta de síntesis Cadence Genus. Los resultados muestran que RisCO2 logra una reducción significativa en el consumo de energía mientras ofrece un rendimiento comparable al de los procesadores de referencia. Estos hallazgos destacan la capacidad de los procesadores RISC-V personalizados como RisCO2 para ser usados como soluciones efectivas en aplicaciones de medición de concentraciones de gas. En resumen, este trabajo contribuye a los esfuerzos en curso destinados a mejorar la eficiencia energética en procesadores de altas prestaciones y promover la computación sostenible, ofreciendo tanto un enfoque metodológico como datos empíricos que pueden guiar el desarrollo de dichos procesadores.


In various fields like environmental monitoring, healthcare, and the IoT, the increasing demand for low-power devices has led to growing interest in the development of high-performance and energy-efficient processors. In this ongoing quest, the RISC-V architecture emerges as a promising solution. In recent years, the RISC-V architecture has gained popularity as an open-source and customizable alternative to proprietary instruction set architectures (ISAs). This thesis presents the comprehensive design, implementation, and performance analysis of RisCO2, a custom-designed soft-core RISC-V microprocessor. It is specially optimized for energy-efficient IoT devices, with a focus on its feasibility for Non-Dispersive Infrared (NDIR) CO2 sensors in environmental monitoring and air quality control. The research builds on the extensible and modular architecture of the RISC-V instruction set to develop a processor that is tailored for low-power applications. RisCO2 has been also integrated into the PULPino SoC, which provides a comprehensive system for evaluating its energy efficiency. The research employs an iterative design process using an FPGA implementation that incrementally incorporates architectural modifications aimed at reducing both power consumption and computation time, all without sacrificing performance. The process began with a basic RV32I core, allowing us to understand the fundamental characteristics of the RISC-V ISA as well as to acknowledge the flexibility provided by its modular design. As the project progressed, we selectively incorporated more specialized extensions and functional units into the processor. We have placed heavy emphasis on the design's verification and validation. Through RTL simulations, we confirmed the processor's compliance with RISC-V ISA specifications and its functional integrity. We further ensured consistency in instruction execution by comparing RTL simulations in Vivado with RISC-V ISA simulations in SEGGER Embedded Studio. In subsequent design stages, we engaged in a meticulous process to prune extraneous hardware logic and simplify RTL modules, streamlining the processor's architecture while also reducing both area and energy consumption. The application used for benchmarking the processor employs the well-known digital quadrature demodulation technique to extract information from the sensor's digital samples. It then calculates the CO2 concentration based on the Beer-Lambert law, which governs the behavior of light absorption in gases. Additionally, the study conducts a comparative analysis with established RISC-V reference processors: Ri5cy, CV32E40P, Zero-riscy, and Micro-riscy. This comparison aims to assess how RisCO2 performs when integrated into real-world SoC frameworks like PULPino, providing a more comprehensive perspective on the design of energy-efficient processors. To perform this assessment, distinct projects were created targeting each of these reference processors. Through this approach, the processor's performance, resource utilization, and power consumption were scrutinized in detail. Following implementation, in-depth power breakdown analyses were conducted using switching activity data from circuit nets, offering precise estimates of power consumption. This examination provided insights into how power consumption is distributed across the various processor modules. Finally, synthesis and area utilization were analyzed using TSMC's 65nm process technology library, utilizing the Cadence Genus synthesis tool for the assessment. The results show that RisCO2 achieves a significant reduction in energy consumption while delivering performance comparable to that of the reference processors. These findings highlight the capability of custom RISC-V processors like RisCO2 to serve as effective solutions in gas concentration sensing applications. Such processors not only offer meaningful energy savings but also meet the requirements for efficient, low-power edge computing. Moreover, the implications of this study extend to the design of energy-efficient processors in diverse applications, including the IoT, wearable technology, and mobile devices. In summary, this work contributes to the ongoing efforts aimed at improving processor energy efficiency and promoting sustainable computing, offering both a methodological approach and empirical data that can guide the development of high-performance, low-power processors.

Keywords

Disseny de microprocessadors; Microprocessor design; Diseño de microprocesadores; Risc-V; Baix consum; Low-power; Bajo consumo

Subjects

621.3 Electrical engineering

Knowledge Area

Tecnologies

Documents

rnp1de1.pdf

4.532Mb

 

Rights

L'accés als continguts d'aquesta tesi queda condicionat a l'acceptació de les condicions d'ús establertes per la següent llicència Creative Commons: http://creativecommons.org/licenses/by-sa/4.0/
L'accés als continguts d'aquesta tesi queda condicionat a l'acceptació de les condicions d'ús establertes per la següent llicència Creative Commons: http://creativecommons.org/licenses/by-sa/4.0/

This item appears in the following Collection(s)