DOI QR코드

DOI QR Code

Selecting a Synthesizable RISC-V Processor Core for Low-cost Hardware Devices

  • Received : 2018.12.28
  • Accepted : 2019.10.14
  • Published : 2019.12.31

Abstract

The Internet-of-Things (IoT) has been deployed in almost every facet of our day to day activities. This is made possible because sensing and data collection devices have been given computing and communication capabilities. The devices implement System-on-Chips (SoCs) that incorporate a lot of functionalities, yet they are severely constrained in terms of memory capacitance, hardware area, and power consumption. With the increase in the functionalities of sensing devices, there is a need for low-cost synthesizable processors to handle control, interfacing, and error processing. The first step in selecting a synthesizable processor core for low-cost devices is to examine the hardware resource utilization to make sure that it fulfills the requirements of the device. This paper gives an analysis of the hardware resource usage of ten synthesizable processors that implement the Reduced Instruction Set Computer Five (RISC-V) Instruction Set Architecture (ISA). All the ten processors are synthesized using Vivado v2018.02. The maximum frequency, area, and power reports are extracted and a comparison is made to determine which processor is ideal for low-cost hardware devices.

Keywords

References

  1. J. Guth, U. Breitenbucher, M. Falkenthal, P. Fremantle, O. Kopp, F. Leymann, and L. Reinfurt, "A detailed analysis of IoT platform architectures: concepts, similarities, and differences," in Internet of Everything. Singapore: Springer, 2017, pp. 81-101.
  2. Y. B. Lin, L. K. Chen, M. Z. Shieh, Y. W. Lin, and T. H. Yen, "CampusTalk: IoT devices and their interesting features on campus," IEEE Access, vol. 6, pp. 26036-26046, 2018. https://doi.org/10.1109/ACCESS.2018.2832222
  3. P. Schleuniger, S. A. McKee, and S. Karlsson, "Design principles for synthesizable processor cores," in Architecture of Computing Systems-ARCS 2012. Heidelberg: Springer, 2012, pp. 111-122.
  4. F. Armknecht, M. Hamann, and V. Mikhalev, "Lightweight authentication protocols on ultra-constrained RFIDs: myths and facts," in Radio Frequency Identification: Security and Privacy Issues. Cham: Springer, 2014, pp. 1-18.
  5. A. Waterman, Y. Lee, D. A. Patterson, and K. Asanovic, "The RISC-V instruction set manual, Volume I: base user-level ISA," 2011 [Online]. Available: http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-62.html.
  6. Roa Logic, "RV12 RISC-V 32/64-bit CPU Core Datasheet v1.3," 2018 [Online]. Available: https://github.com/RoaLogic/RV12/blob/master/docs/RoaLogic_RV12_RISCV_Datasheet.pdf.
  7. V. Melikyan, E. Babayan, A. Melikyan, D. Babayan, P. Petrosyan, and E. Mkrtchyan, "Clock gating and multi-VTH power design methods based on 32/28 nm ORCA processor," in Proceedings of IEEE East-West Design and Test Symposium (EWDTS), Batumi, Georgia, 2015, pp. 1-4.
  8. SiFive, "SiFive E31 Coreplex Manual v1p0," 2016 [Online]. Available: https://static.dev.sifive.com/E31-Coreplex.pdf.
  9. Syntacore, "SCR1 external architecture specification version 1.2.4," 2019 [Online]. Available: https://github.com/syntacore/scr1/blob/master/docs/scr1_eas.pdf.
  10. K. Asanovic, R. Avizienis, J. Bachrach, S. Beamer, C. Celio, H. Cook, et al., "The Rocket Chip generator," 2016 [Online]. Available: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2016/EECS-2016-17.pdf.
  11. C. Celio, P. F. Chiu, B. Nikolic, D. A. Patterson, and K. Asanovic, "BOOM v2: an open-source out-of-order RISC-V core," 2017 [Online]. Available: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2017/EECS-2017-157.pdf.
  12. C. Duran, L. Rueda, G. Castillo, A. Agudelo, C. Rojas, L. Chaparro, H. Hurtado, et al., "A 32-bit RISC-V AXI4-lite bus-based microcontroller with 10-bit SAR ADC," in Proceedings of 7th IEEE Latin American Symposium on Circuits and Systems (LASCAS), Florianopolis, Brazil, 2016, pp. 315-318.
  13. C. Wolf, "PicoRV32 - a size-optimized RISC-V CPU," [Online]. Available: https://github.com/cliffordwolf/picorv32.
  14. N. Gala, A. Menon, R. Bodduna, G. S. Madhusudan, and V. Kamakoti, "SHAKTI processors: an open-source hardware initiative," in Proceedings of 29th IEEE International Conference on VLSI Design and 15th IEEE International Conference on Embedded Systems (VLSID), Kolkata, India, 2016, pp. 7-8.
  15. B. Hu, "Hummingbird E203 open source introduction," [Online]. Available: https://github.com/SI-RISCV/e200_opensource/blob/master/doc.
  16. Xilinx, "Vivado design suite user guide: high-level synthesis," 2018 [Online]. Available: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug902-vivado-high-level-synthesis.pdf.
  17. M. Christensson and D. Mattsson, "Evaluation of synthesizable CPU cores," 2004 [Online]. Available: https://www.gaisler.com/doc/Evaluation_of_synthesizable_CPU_cores.pdf.
  18. K. Westerlund, "Comparison of synthesizable processor cores," 2005 [Online]. Available: https://www.gaisler.com/doc/leon2_vs_nios2.pdf.
  19. R. Jia, C. Y. Lin, Z. Guo, R. Chen, F. Wang, T. Gao, and H. Yang, "A survey of open source processors for FPGA," in Proceedings of IEEE International Conference on Field Programmable Logic and Applications (FPL), Munich, Germany, 2014, pp. 1-6.
  20. Texas Instruments, "A true system-on-chip solution for 2.4-GHz IEEE 802.15.4 and ZigBee applications," 2009 [Online]. Available: www.ti.com/lit/ds/symlink/cc2530.pdf.
  21. Nordic Semiconductor, "nRF91 low power cellular IoT," [Online]. Available: https://www.nordicsemi.com/eng/Products/Low-Power-Cellular-IoT/nRF9160-SiP.
  22. G. Pau, C. Chaudet, D. Zhao, and M. Collotta, "Next generation wireless technologies for Internet of Things," Sensors, vol. 18, no. 1, pp. 1-5, 2018. https://doi.org/10.1109/JSEN.2018.2870228
  23. A. Bogdanov, L. R. Knudsen, G. Leander, C. Paar, A. Poschmann, M. J. B. Robshaw, Y. Seurin, and C. Vikkelsoe, "PRESENT: an ultra-lightweight block cipher," in Cryptographic Hardware and Embedded Systems-CHES 2007. Heidelberg: Springer, 2007, pp. 450-466.
  24. D. Paolo and A. D. Santis, "On ultralightweight RFID authentication protocols," IEEE Transactions on Dependable and Secure Computing, vol. 8, no. 4, pp. 548-563, 2011. https://doi.org/10.1109/TDSC.2010.75
  25. R. Alvarez, C. Caballero-Gil, J. Santonja, and A. Zamora, "Algorithms for lightweight key exchange," Sensors, vol. 17, no. 7, pp. 1-14, 2017. https://doi.org/10.1109/JSEN.2017.2761499
  26. Parallela, "Parallela-1.x Reference Manual Version 14.09.09," [Online]. Available: https://www.parallella.org/board.
  27. D. Chen, J. Cong, S. Gurumani, W. Hwu, K. Rupnow, and Z. Zhang, "Platform choices and design demands for IoT platforms: cost, power and performance tradeoffs," IET Cyber-Physical Systems: Theory and Applications, vol. 1, no. 1, pp. 70-77, 2016. https://doi.org/10.1049/iet-cps.2016.0020
  28. F. Gao, Z. Huang, Z. Wang, and S. Wang, "An object detection acceleration framework based on low-power heterogeneous manycore architecture," in Proceedings of IEEE 3rd World Forum on Internet of Things (WF-IoT), Reston, VA, 2016, pp. 597-602.
  29. VectorBlox, "VectorBlox MXP Programming Reference," 2018 [Online]. Available: https://github.com/VectorBlox/mxp/blob/master/docs/mxp_reference.pdf.
  30. Intel, "Avalon interface specifications: updated for Intel Quartus prime design suite," 2019 [Online]. Available: https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/manual/mnl_avalon_spec.pdf.
  31. Silicore, "Specification for WISHBONE System-on-Chip (SoC) interconnection architecture for portable IP cores," 2002 [Online]. Available: https://cdn.opencores.org/downloads/wbspec_b3.pdf.
  32. Xilinx, "Local memory bus (LMB) v3.0: LogiCORE IP product guide," 2016 [Online]. Available: https://www.xilinx.com/support/documentation/ip_documentation/lmb_v10/v3_0/pg113-lmb-v10.pdf.
  33. R. E. Kessler, "The Alpha 21264 microprocessor," IEEE Micro, vol. 19, no. 2, pp. 24-36, 1999. https://doi.org/10.1109/40.755465
  34. R. P. Weicker, "Dhrystone: a synthetic systems programming benchmark," Communications of the ACM, vol. 27, no. 10, pp. 1013-1030, 1984. https://doi.org/10.1145/358274.358283
  35. C. Coleman, D. Narayanan, D. Kang, T. Zhao, J. Zhang, L. Nardi, P. Bailis, K. Olukotun, C. Re, and M. Zaharia, "DAWNBench: an end-to-end deep learning benchmark and competition," [Online]. Available: https://github.com/stanford-futuredata/dawn-bench-entries.
  36. R. Karpinski, "Paranoia: A floating-point benchmark," Byte Magazine, vol. 10, no. 2, pp. 223-235, 1985.
  37. J. A. Poovey, T. M. Conte, M. Levy, and S. Gal-On "A benchmark characterization of the EEMBC benchmark suite," IEEE Micro, vol. 29, no. 5, pp. 18-29, 2009. https://doi.org/10.1109/MM.2009.74
  38. M. B. Lin, Digital System Designs and Practices: Using Verilog HDL and FPGAs. Singapore: Wiley, 2008.
  39. J. Bachrach, H. Vo, B. Richards, Y. Lee, A. Waterman, R. Avizienis, and J. Wawrzynek, "Chisel: constructing hardware in a Scala embedded language," in Proceedings of IEEE Design Automation Conference (DAC), San Francisco, CA, 2012, pp. 1212-1221.
  40. AEROFLEX GAISLER, "SPARC V8 32-bit processor LEON3/LEON2-FT companion core datasheet," 2010 [Online]. Available: http://www.actel.com/ipdocs/LEON3_DS.pdf.
  41. GAISLER RESEARCH, "LEON2 processor user's manual," 2004 [Online]. Available: https://www.cse.wustl.edu/-roger/465M/leon2-1.0.23-xst.pdf.
  42. D. Lampret, "OpenRISC 1200 IP core specification," 2001 [Online]. Available: https://www.isy.liu.se/edu/kurs/TSEA44/OpenRISC/or1200_spec.pdf.
  43. SRISC, "Simply RISC S1 Core," [Online]. Available: https://github.com/freecores/s1_core/tree/master/docs.
  44. OpenCores, "AltOR32 - Alternative Lightweight OpenRISC CPU," 2015 [Online]. Available: https://opencores.org/projects/altor32.
  45. Lattice Semiconductor, "LatticeMico32 processor reference manual," 2012 [Online]. Available: https://www.latticesemi.com/view_document?document_id=52077.
  46. Amber, "Amber 2 core specification," 2019 [Online]. Available: https://opencores.org/projects/amber.