Submitted:
24 May 2023
Posted:
25 May 2023
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Previous work
3. Proposed architecture
- support for the "E" extension, which halves the number of integer registers from 32 to 16 registers.
- support for the "Zfinx" extension, which eliminates the need for a separate floating-point register file and enables sharing of the integer register file for both floating-point and integer data. Overall, as a result of these optimizations, the register file is reduced by a factor of 1/4 compared to an RV32IMF implementation.
- 3.
- remove the logic associated with integer multiplication and division mul, mulh[u|su], div[u], and rem[u].
- 4.
- remove the logic associated with the management of control and status registers csrrw[i], csrrs[i], and csrrc[i], as well as the unused instructions related to shifts and comparisons sra, slti, and slt.
- 5.
- remove the logic that supports misaligned memory accesses, resulting in a simplified load-store unit that assumes all memory addresses generated by the compiler are aligned to a 4-byte boundary.
3.1. Test methodology
4. Results
5. Discussion
5.1. Future work
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
| ALU | Arithmetic-logic unit |
| BRAM | Block RAM |
| CO2 | Carbon dioxide |
| DSP | Digital signal processor |
| FF | Flip-flop |
| FPGA | Field-programmable gate array |
| FPU | Floating-point unit |
| IDE | Integrated development environment |
| IoT | Internet of Things |
| IP | Intellectual Property |
| ISA | Instruction set architecture |
| IPC | Instruction per cycle |
| LUT | Lookup table |
| NDIR | Non-dispersive infrared |
| ppm | Parts per million |
| ROM | Read-only memory |
| SoC | System on chip |
References
- Popa, D. & Udrea, F. Towards Integrated Mid-Infrared Gas Sensors. Sensors. 19 (2019). [CrossRef]
- Gibson, D. & MacGregor, C. A Novel Solid State Non-Dispersive Infrared CO2 Gas Sensor Compatible with Wireless and Portable Deployment. Sensors. 13, 7079-7103 (2013). [CrossRef]
- Gautschi, M., Schiavone, P., Traber, A., Loi, I., Pullini, A., Rossi, D., Flamand, E., Gürkaynak, F. & Benini, L. Near-Threshold RISC-V Core With DSP Extensions for Scalable IoT Endpoint Devices. IEEE Transactions On Very Large Scale Integration (VLSI) Systems. 25, 2700-2713 (2017). [CrossRef]
- Davide Schiavone, P., Conti, F., Rossi, D., Gautschi, M., Pullini, A., Flamand, E. & Benini, L. Slow and steady wins the race? A comparison of ultra-low-power RISC-V cores for Internet-of-Things applications. 2017 27th International Symposium On Power And Timing Modeling, Optimization And Simulation (PATMOS). pp. 1-8 (2017). [CrossRef]
- DD. Schiavone, "OpenHW Group CV32E40P User Manual", 2020. Available online: https//docs.openhwgroup.org/projects/cv32e40p-user-manual/en/cv32e40p_v1.0.0_doc/index.html (accessed on 05-May-2023).
- Traber, A., Zaruba, F., Stucki, S., Pullini, A., Haugou, G., Flamand, E., Gurkaynak, F.K. and Benini, L., 2016, January. PULPino: A small single-core RISC-V SoC. In 3rd RISCV Workshop.
- C. Papon, "VexRiscv: A FPGA friendly 32-bit RISC-V CPU implementation", 2019. Available online: https://github.com/ SpinalHDL/VexRiscv (accessed on 16-May-2023).
- Western Digital, “EH1 SweRV RISC-V Core”, 2019. Available online: http://github.com/westerndigitalcorporation/swerv_eh1 (accessed on 16-May-2023).
- Asanovic, K., Avizienis, R., Bachrach, J., Beamer, S., Biancolin, D., Celio, C., Cook, H., Dabbelt, D., Hauser, J., Izraelevitz, A. and Karandikar, S., 2016. The rocket chip generator. EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2016-17.
- Núñez–Prieto, R., Castells–Rufas, D., Avellana, N., Martínez, R. & Terés, L. Processor Optimization of an Energy-Efficient NDIR CO2 Wireless Sensor Node. 2022 37th Conference On Design Of Circuits And Integrated Circuits (DCIS). pp. 01-06 (2022). [CrossRef]
- D. Castells-Rufas, "RISC-V ISA Coverage", 2023. Available online: https://github.com/davidcastells/riscvisacoverage (accessed on 22-May-2023).
- Mach, S., Schuiki, F., Zaruba, F. & Benini, L. FPnew: An open-source multiformat floating-point unit architecture for energy-proportional transprecision computing. IEEE Transactions On Very Large Scale Integration (VLSI) Systems. 29, 774-787 (2020). [CrossRef]
- P. Schregle, "A C++ template class for fixed-point mathematics", 2009. Available online: http://www.codeproject.com/Articles/37636/Fixed-Point-Class (accessed on 04-May-2023).






| Work | Action item | ISA | LUT | FF | DSP | Clock [MHz] | Time [ms] | Energy [mJ] |
|---|---|---|---|---|---|---|---|---|
| [10] | - | rv32imf | 7,085 | 4,188 | 12 | 50 | 12.2 | 0.45 |
| - | 1, 2 | rv32em_zfinx | 6,518 | 2,693 | 12 | 50 | 10.3 | 0.42 |
| - | 1 | rv32e_zfinx | 5,307 | 2,545 | 2 | 50 | 10.3 | 0.32 |
| - | 3 | rv32e_zfinx | 5,126 | 2,478 | 2 | 50 | 10.3 | 0.31 |
| RisCO2 | 2 | rv32e_zfinx | 4,692 | 2,293 | 2 | 50 | 10.3 | 0.28 |
| reduction% | - | - | 33.8% | 45.2% | 83.3% | - | 15.6% | 37.8% |
| Core | ISA | Pipeline | LUT | FF | DSP | Var. | #instr | IPC | Exec. | Power | Energy |
|---|---|---|---|---|---|---|---|---|---|---|---|
| stages | type | x106 | [ms] | [mW] | [mJ] | ||||||
| Micro-riscy | rv32e | 2 | 2,225 | 1,276 | 0 | Fixed-point | 7.24 | 0.78 | 373.13 | 15 | 5.60 |
| Zero-riscy | rv32im | 2 | 3,171 | 1,928 | 1 | Fixed-point | 1.38 | 0.82 | 67.71 | 20 | 1.35 |
| Ri5cy | rv32imf | 4 | 11,912 | 4,249 | 8 | SP Floating | 0.28 | 0.74 | 15.15 | 52 | 0.79 |
| CV32E40P | rv32imf_zfinx | 4 | 9,072 | 2,553 | 7 | SP Floating | 0.25 | 0.79 | 12.73 | 49 | 0.62 |
| RisCO2 | rv32e_zfinx | 5 | 4,889 | 2,354 | 2 | SP Floating | 0.25 | 0.49 | 20.71 | 14 | 0.29 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).