METODOLOGÍA PARA LA DETECCIÓN DE RIESGOS DE DATOS APLICADA A UN PROCESADOR RISC-V DE 5 ETAPAS (DATAHAZARD DETECTION METODOLIGY FOR A RISC-V 5 STAGE PIPELINE PROCESOR)
Resumen
Uno de los principales retos en el diseño de un microprocesador (uP) con microarquitectura segmentada o pipeline, es la detección de riesgos de datos, ya que, al dividir la ruta de datos o datapath, se generan posibles inconsistencias durante la ejecución secuencial de las instrucciones, que deben ser solucionadas vía software en tiempo de compilación o implementando hardware que solucione estos problemas en tiempo de ejecución. En este trabajo se plantea una metodología para la identificación de los riesgos de datos que pueden surgir al implementar el conjunto de instrucciones base de RISC V con microarquitectura pipeline de 5 etapas. La validación se realiza mediante la comparación de los resultados obtenidos en pruebas aplicadas a un sistema de referencia disponible en la página de la organización RISC-V International y una implementación de un uP pipeline con las técnicas bypassing e inserción de paro diseñado mediante esta metodología.
Palabras Clave: adelantamiento de instrucciones, inserción de paro, riesgos de datos, RISC-V, segmentación, CSR
Abstract
One of the main challenges about pipeline processors development is data hazard detection, since, dividing data path, possible inconsistencies are generated during sequential execution of instructions, which must be solved via software during compilation time or implementing hardware that solves these problems during execution time. In this paper a methodology is proposed to detect all data hazard that could be generated implementing the RISC-V instruction set architecture in five stages pipeline segmentation. Validation is achieved by comparing the result of tests applied to a reference system available in RISC-V international website and an implementation of a pipeline processor that solves data hazard through stall insertions and bypassing technics, designed with this methodology.
Keywords: data hazard, forwarding, pipeline, RISC-V, stall insertion, CSR.
Texto completo:
528-546 PDFReferencias
Patterson, D. A., Hennessy, J. L., Computer Organization and De-sign: The Hardware/Software Interface, RISC-V edition, ISBN: 978-0-12-812275-4, 2014
Jer Huang, Alvin M. Despain, Hardware/Software Resolution of Pipeline Hazards in Pipeline Synthesis of Instruction Set Processors, 1993 International Conference on Computer Aided Design, DARPA J-FBI-91-194
W. P. Kiat, K. M. Mok, W. K. Lee, H. G. Goh and I. Andonovic, A Comprehensive Analysis on Data Hazard for RISC32 5-Stage Pipeline Processor, 2017 31st International Conference on Advanced Information Networking and Applications Workshops (WAINA), Taipei, 2017, pp. 154-159, doi: 10.1109/WAINA.2017.20.
He, Yihui & Wan, Han & Jiang, Bo & Gao, Xiaopeng. (2017). A Method to Detect Hazards in Pipeline Processor. MATEC Web of Conferences. 139. 00085. 10.1051/matecconf/201713900085.
A. Pandey, Study of data hazard and control hazard resolution techniques in a simulated five stage pipelined RISC processor, 2016 International Conference on Inventive Computation Technologies (ICICT), Coimbatore, 2016, pp. 1-4, doi: 10.1109/INVENTIVE.2016.7824864.
A. Waterman, K. Asanovich, The RISC-V Instruction Set Manual Volume I: Unprivileged ISA, Version 20191213, RISC-V Foundation, December 2019.
URL de la licencia: https://creativecommons.org/licenses/by/3.0/deed.es
Pistas Educativas está bajo la Licencia Creative Commons Atribución 3.0 No portada.
TECNOLÓGICO NACIONAL DE MÉXICO / INSTITUTO TECNOLÓGICO DE CELAYA
Antonio García Cubas Pte #600 esq. Av. Tecnológico, Celaya, Gto. México
Tel. 461 61 17575 Ext 5450 y 5146
pistaseducativas@itcelaya.edu.mx