Pipeline código vhdl
CENTRO DE CIÊNCIAS EXATAS, AMBIENTAIS E DE TECNOLOGIA
FACULDADE DE ENGENHARIA DE COMPUTAÇÃO
ARQUITETURA DE SISTEMAS COMPUTACIONAS
PROF. EDMAR REZENDE
Cássio Nogueira 08158370
Gabriel Greco 10094233
Campinas - SP
2012
1- INTRODUÇÃO
O projeto 3 consiste na implementação em VHDL de uma CPU baseada no conceito de Pipeline visto em aula teórica. Bem como no primeiro projeto do semestre, esta CPU deve executar um conjunto de instruções tidas como relevantes. As instruções são divididas nas categorias Lógicas, Aritméticas, Transferências de Dados e Saltos Condicionais e Incondicionais.
O uso de Pipeline permite dividir a execução de uma instrução em cinco etapas, Fetch, Decodificação, Execução, Memory e Write Back respectivamente. Essa divisão possibilita que cada etapa seja resonsável por uma função diferente, de forma similar a uma “linha de montagem” de Henry Ford, otimizando assim o meio de execução de instruções solicitadas, uma vez que caberá a cada pipe uma instrução diferente.
2- ESPECIFICAÇÃO
Seguindo o datapath abaixo, também presente no enunciado do projeto, implementamos as operações ADD, ADDi, SUB, SUBi, Lw, Sw, AND, ANDi, OR, ORi e BEQ.
2.1- Datapath
2.2- Tabela de Instruções
|Categoria |Nome |Sintaxe da Instrução |Significado |
|Aritmética |ADD |add $1, $2, $3 |$1 = $2 + $3 |
| |ADDi |addi $1, $2, CONST |$1 = $2 + CONST |
| |SUB |sub $1, $2, $3 |$1 = $2 - $3