Circuitos digitais - mp32 processador

Disponível somente no TrabalhosFeitos
  • Páginas : 18 (4376 palavras )
  • Download(s) : 0
  • Publicado : 9 de março de 2013
Ler documento completo
Amostra do texto
UNIVERSIDADE FEDERAL DO PIAUÍ
CCN-DIE-CIÊNCIA DA COMPUTAÇÃO
DISCIPLINA: CIRCUITOS DIGITAIS
PROFESS0R: IVAN SARAIVA
ALUNO: MIQUEIAS DA SILVA DE JESUS

TRABALHO FINAL (RELATÓRIO)
MP32

TERESINA – PI
13/11/2012

Os componentes do MP32
Para concluir este projeto, utilizei o software Quartus II da Altera, para completar o código disponibilizado por Ramon, no qual fiz implementações das demais funçõessolicitadas no projeto, e algumas modificações nas que era necessário, para o projeto funcionar corretamente, tornando possível o entendimento e explicação do mesmo.
O projeto MP32 é formado por vários arquivos, dentre eles, para efeito de estudo, utilizaremos de inicio apenas 3: o arquivo “MP32.vhd”, no qual tem os códigos em VHDL do projeto; o arquivo “instruction.mif”, que é onde serácolocado as referencias das operações a serem apresentadas; e o arquivo “MP32.vwf”, que é o arquivo que mostra a forma de onda das operações, e vai fazer a verificação de uma operação, e se a mesma deu certa ou não. Mais adiante estarei abordando sobre outro arquivo importante e explicarei melhor sobre cada um deles, e suas características visuais.
Aqui estão as instruções que foram solicitadas, e queserão apresentadas ao professor:
Nome | Tipo | Sintaxe | Significado |
Add | R | add $d,$s,$t | $d = $s + $t |
Addi | I | addi $d,$s,C | $d = $s + C |
Sub | R | sub $d,$s,$t | $d = $s - $t |
Mult | R | mult $d,$s,$t | $d = $s * $t |
Div | R | div $d,$s,$t | $d = $s / $t |
Store word | I | swr $d,$s,C | Memory[$s+C] = $d |
Load Word | I | lwr $d,$s,C | $d =Memory[$s+C] |
And | R | and $d,$s,$t | $d = $s & $t |
Or | R | or $d,$s,$t | $d = $s | $t |
Xor | R | xor $d,$s,$t | $d = $s ^ $t |
Branch on equal | I | beq $d,$s,C | IF($d==$s) go to PC+1+C |
Branch on not equal | I | bne $d,$s,C | IF($d!=$s) go to PC+1+C |
Jump | J | j C | PC=PC+C |
Jump an link | J | jal C | $31 = PC+1;PC=PC+C |
Jump register | R | jr$d | Go to address $d |
Copy | I | copy $d,$s | $d=$s |
Lui | A | Lui $d, C | $d = C |
Todas as instruções têm parâmetros e formatos preestabelecidos no PDF do trabalho. Todas elas têm um tipo que é encontrado no documento, e nesse tipo, podemos ver o significado, na sintaxe de cada elemento a ser operado. Por exemplo, uma instrução “Add”, o tipo dela é “R”, a sintaxe de uma instruçãodesse tipo é “add $d,$s,$t”, e olhando para “R” no PDF, vemos que “rd” é o registrador de destino, “rs” primeiro registrador operando e “rt” segundo registrador operando. Assim, $d é referencia de “rd”, $s referencia de “rs” e $t referencia de “rt”. Após entender isso, a operação Add, terá significado para o programador, sendo ela “$d = $s + $t”, saberemos que o registrador de destino vai recebero conteúdo do primeiro registrador operando somado com o conteúdo do segundo registrador operando, tornando possível sua demonstração. Todas as instruções funcionam com base nesse principio, e abordarei cada uma posteriormente com mais detalhes.

O projeto:

Nosso projeto é um microprocessador cuja arquitetura é implementada com 32 bits, e nela tem um conjunto de 32 registradores dearmazenamento, dois modos de endereçamento de memoria, em que o endereço de memória é calculado por:
- Soma do conteúdo de um registrador com um valor imediato unsigned de 16-bits, ambos passados na instrução;
- Soma do conteúdo de um registrador (PC) com um valor imediato unsigned de 16/26 - bits, seguido pela atualização do registrador operando (PC) com calculo do endereço efetivo.
PC - Program Counter
OPC (Program Counter) é um registrador de 32 bits que grava o endereço da próxima instrução a ser executada pelo MP32.
IR - Instruction Register
IR, (Instruction Register ) é um registrador de 32 bits que tem a função de armazenar o vetor que contém um dado da memória.
MAR - Memory Adress Register
Entidade responsável por ler um valor da memoria, que será definido por PC, para ser utilizado por...
tracking img