An open API service indexing awesome lists of open source software.

https://github.com/davidcardoso/cpu-pipeline-simulator

CPU Pipeline Simulator
https://github.com/davidcardoso/cpu-pipeline-simulator

computer-architecture cpu-simulator pipeline python

Last synced: 9 months ago
JSON representation

CPU Pipeline Simulator

Awesome Lists containing this project

README

          

README
--

@brief _Informações gerais sobre o projeto_

**Projeto** da disciplina **IMD0041 IOAC**, ministrada pelo Prof. Kayo Gonçalves no curso BTI da UFRN.

Programa
--

_Pipeline Simulator_

Objetivo
--

- O objetivo deste trabalho é **implementar um simulador de pipeline** com cinco estágios (IF, ID, EX, MEM, WB) baseado na arquitetura de Harvard.

Informações sobre o programa
--

- O programa foi implementado utilizando a linguagem de programação _Python_.
- Orientações sobre a execução do programa:
- Via linha de comando, navegue até o diretório onde se localiza o arquivo **pipeline.py**.
- Pode-se utilizar **./pipeline.py** ou **python pipeline.py** para executar o programa.
- É necessário passar um arquivo de entrada como argumento, por exemplo: **./pipeline.py input.txt**
- O arquivo de entrada deve conter um programa escrito em _Assembly_ no formato:
```
beq $s0, $s1, DENTRO
add $t1, $t2, $t3
lw $t0, 128($t1)
DENTRO:
sub $t1, $t2, $t3
dd $s5, $t1, $t4
```
- Apenas as instruções **add, sub, beq, bne, lw, lw e j** são permitidas (em letras minúsculas).
- A instrução após algum LABEL deve vir na linha seguinte.
- Arquivos de entrada vazios, com instruções não permitidas ou maiores do que 1MB serão rejeitados.