Simulador do Algoritmo de Tomasulo com Conjunto de Instruções RISC-V

  • Thiago de Campos R. Nolasco PUC Minas
  • Danielle D. Vieira PUC Minas
  • João Augusto S. Silva PUC Minas
  • Henrique C. Freitas PUC Minas

Abstract


One of the most impactful creations in the field of processors was the concept of the superscalar pipeline, whose goal was to minimize bottlenecks and meet the demands of its users, ensuring an increase in instructions per cycle. However, as a trade-off, it introduced greater architectural complexity and the need for better control over instruction dependencies. To address this issue, Robert Tomasulo devised an algorithm that is still in use today. In the mentioned article, the authors present a simulator in the C language of the Tomasulo’s algorithm using the RISC-V instruction set. This simulator demonstrates the step-by-step execution of the structures envisioned by Tomasulo, the analysis of dependencies between instructions and support for branch instructions.

References

Reza Azimi. Tomasulo based MIPS simulator. Master’s thesis, California State University, Northridge, 2013.

John L. Hennessy and David A. Patterson. Computer architecture: a quantitative approach. Morgan Kaufmann, 2011.

Dimitris Kehagias and V Douskas-Bertlviser. Android-based simulator to support tomasulo algorithm teaching and learning. International Journal of Computer Applications, 170(2):24–29, Jul 2017. ISSN 0975-8887. doi: 10.5120/ijca2017914703.

Wen-jie Liu, Li Shen, and Zhi-ying Wang. A lightweight instruction-set simulator for teaching of dynamic instruction scheduling. In 2016 11th International Conference on Computer Science & Education (ICCSE), pages 871–876. IEEE, 2016. doi: 10.1109/ ICCSE.2016.7581696.

David Patterson and Andrew Waterman. Guia prático RISC-V Atlas de uma Arquitetura Aberta Primeira edição. Strawberry Canyon LLC, 2019.

David A. Patterson and John L. Hennessy. Computer Organization and Design RISC-V Edition: The Hardware Software Interface. Morgan Kaufmann, 2020.

R. M. Tomasulo. An efficient algorithm for exploiting multiple arithmetic units. IBM Journal of Research and Development, 11(1):25–33, 1967. doi: 10.1147/rd.111.0025.

Theo Ungerer, Borut Robič, and Jurij Šilc. A survey of processors with explicit multithreading. ACM Comput. Surv., 35(1):29–63, 2003. doi: 10.1145/641865.641867.
Published
2023-10-17
NOLASCO, Thiago de Campos R.; VIEIRA, Danielle D.; SILVA, João Augusto S.; FREITAS, Henrique C.. Simulador do Algoritmo de Tomasulo com Conjunto de Instruções RISC-V. In: UNDERGRADUATE RESEARCH WORKSHOP - SYMPOSIUM ON HIGH PERFORMANCE COMPUTING SYSTEMS (SSCAD), 24. , 2023, Porto Alegre/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 1-8. DOI: https://doi.org/10.5753/wscad_estendido.2023.235759.