8-bit softcore microprocessor with dual accumulator designed to be used in FPGA
Resumen (en_US)
Context: This paper is presents the design and implementation of an 8-bit softcore RISC microprocessor able to be run on space-optimized FPGA, in order to be used for embedded applications.
Method: The design of this microprocessor was developed in Verilog hardware description language and can be implemented in FPGA from different manufacturers; therefore, the user has only to define the input and output ports according to the type of FPGA. This is an accumulator-type processor, but it has two different accumulators that can be used as pointers for indirect addressing. The processor is Harvard with a RAM of 8x256 bits, and a ROM that can be resized from 17x252 bits to 17x8K bits. Additionally, it has one 8-bit input port, one 8-bit output port, and one 8-bit address port, which means that the processor can address more than 256 8-bit output ports/devices. The same applies for input ports.
Results: The developed processor, named “ZA-SUA,” was compared with PICOBLAZE softcore and other three similar processors of free distribution in the Web, and some improvements over those were found. Criteria such as the Flip Flops used, occupied LUTs, Slices in use, and maximum delay of each processor were analyzed, all these results were obtained from the implementation of the processors in the Xilinx FPGAs.
Conclusions: The designed architecture is composed by two accumulators, which can be used either as source or destination for the operation of the ALU. This fact gives some flexibility to the design, doing it better than a single-accumulator processor, and getting it closer to the register-based processors.
Descargas
Referencias
Appel, Andrew W. and Lal George. 2001. “Optimal Spilling for CISC Machines with Few Registers.” Pp. 243–53 in ACM SIGPLAN Notices, vol. 36. ACM.
Ayeh, E., K. Agbedanu, Y. Morita, O. Adamo, and P. Guturu. 2008. “FPGA Implementation of an 8-Bit Simple Processor.” Pp. 1–5 in Region 5 Conference, 2008 IEEE. IEEE.
Clayton, Jhon. 2014. “risc16f84 :: Overview.” OpenCores. Retrieved (http://opencores.org/project,risc16f84).
Crabtree, Vincent. 2009. “Tiny Instruction Set Computer :: Overview.” OpenCores. Retrieved (https://opencores.org/project,tisc).
Garzón, Víctor Alonso Bravo, Jesús Jair Navarro Bareño, and Edwar Jacinto. 2010. “Diseño E Implementación de Un Codec Digital de Audio Con FPGA, En Formato PCM, de 2 Canales Con Interfaz Para Usuario.” Tecnura: Tecnología y Cultura Afirmando el Conocimiento 14(26):56–68. Retrieved (http://revistas.udistrital.edu.co/ojs/index.php/Tecnura/article/view/6687/8270).
Gómez, Edwar Jacinto, Donovan Camilo Platero Plazas, and Mario Fernando Robayo Restrepo. 2015. “Voltimetro True-Rms Sobre Fpga Basado En Algoritmo Cordic.” Revista Tecnura 19:129–36. Retrieved (http://revistas.udistrital.edu.co/ojs/index.php/Tecnura/article/view/9619/10827).
Guzman, Fabio. 2012. “Natalius 8 Bit RISC :: Overview.” OpenCores. Retrieved (http://opencores.org/project,natalius_8bit_risc).
Hays, Kirk and Jshamlet. 2016. “Open8 uRISC :: Overview.” OpenCores. Retrieved (http://opencores.org/project,open8_urisc).
Henzinger, Thomas A. and Joseph Sifakis. 2006. “The Embedded Systems Design Challenge.” Pp. 1–15 in International Symposium on Formal Methods. Springer.
Herrera, Moises and Francisco Viveros. 2014. “Asynchronous 8-Bit Processor Mapped into an FPGA Device.” Pp. 1–7 in Communications and Computing (COLCOM), 2014 IEEE Colombian Conference on. IEEE.
Hu, Weiwu et al. 2009. “Godson-3: A Scalable Multicore RISC Processor with x86 Emulation.” IEEE micro 29(2).
Kelgaonkar, Pranjali S. and Shilpa Kodgire. n.d. “Pipelined 32bit RISC MIPS Processor on Spartan-6 FPGA.” International Journal of Science, Engineering and Technology Research (IJSETR), ISSN 2278–7798.
Martínez Sarmiento, Fredy Hernán and Diego Armando Giral Ramírez. 2017. “OpenRRArch: Una Arquitectura Abierta, Robusta Y Confiable Para El Control de Robots Autónomos.” tecnura 21(51):96–104.
Narayanan, Vijaykrishnan and Yuan Xie. 2006. “Reliability Concerns in Embedded System Designs.” Computer 39(1):118–20.
Pastor, Enric and Fermín Sánchez. 1997. “La Máquina Rudimentaria: Un Procesador Pedagógico.” III Jornadas de Enseñanza Universitaria sobre Informática (JENUI’97), Madrid, Spain 395–402.
Plavec, Franjo. 2004. Soft-Core Processor Design. University of Toronto.
Riaño, José, César Ladino, and Fredy Martínez. 2012. “Implementación de La Transformada FFT Sobre Una FPGA Orientada a Su Aplicación En Convertidores Electrónicos de Potencia.” Tekhnê 9:21–32. Retrieved (http://revistas.udistrital.edu.co/ojs/index.php/tekhne/article/view/8925/10297).
Riedel, Ulrich. 2009. “tiny8 :: Overview.” OpenCores. Retrieved (http://opencores.org/project,tiny8).
Samal, Lopamudra and Chiranjibi Samal. 2014. “Designing a Low Power 8-Bit Application Specific Processor.” Pp. 1–5 in Green Computing Communication and Electrical Engineering (ICGCCEE), 2014 International Conference on. IEEE.
Santana Hernandez, Gladis Elizabeth. 2004. “Diseño de Un Procesador Usando Lenguajes de Descripción de Hardware.” Instituto Politécnico Nacional, Mexico DF.
Tong, Jason G., Ian D. L. Anderson, and Mohammed A. S. Khalid. 2006. “Soft-Core Processors for Embedded Systems.” Pp. 170–73 in Microelectronics, 2006. ICM’06. International Conference on. IEEE.
Trivedi, Priyanka and Rajan Prasad Tripathi. 2015. “Design & Analysis of 16 Bit RISC Processor Using Low Power Pipelining.” Pp. 1294–97 in Computing, Communication & Automation (ICCCA), 2015 International Conference on. IEEE.
Uma, R. 2012. “Design and Performance Analysis of 8–bit RISC Processor Using Xilinx Tool.” International Journal of Engineering Research and Applications 2(2):53–58.
Xilinx. 2011. “PicoBlaze 8-Bit Embedded Microcontroller User Guide.” IP documentation 1–120. Retrieved (http://www.xilinx.com/support/documentation/ip_documentation/ug129.pdf.).
Zhang, Yunjie and Lei Bao. 2011. “The Design of an 8-Bit CISC CPU Based on FPGA.” Pp. 1–4 in Wireless Communications, Networking and Mobile Computing (WiCOM), 2011 7th International Conference on. IEEE.
Todos los textos incluidos en la Revista Tecnura están protegidos por derechos de autor. Conforme a la ley, está prohibida su reproducción por cualquier medio, mecánico o electrónico, sin permiso escrito del Comité Editorial. Los textos completos de los artículos son de acceso abierto, es decir, se pueden leer, descargar, copiar, distribuir, imprimir, buscar o vincular. Las opiniones expresadas en los artículos publicados son las de los autores y no coinciden necesariamente con las del Comité Editorial ni las de la administración de la Facultad.