Escolar Documentos
Profissional Documentos
Cultura Documentos
2021
BRUNO HIDEKI AMADEU OGATA
RA: 140884
2021
RESUMO
1 Introdução .................................................................................................... 7
2 Objetivos ...................................................................................................... 8
2.1 Geral ..................................................................................................... 8
2.2 Específicos ............................................................................................ 8
3 Fundamentação Teórica .............................................................................. 9
3.1 Verilog ................................................................................................... 9
3.2 FPGAs................................................................................................... 9
3.3 Arquitetura MIPS ................................................................................... 9
3.4 Caminho de Dados.............................................................................. 10
4 Desenvolvimento........................................................................................ 12
4.1 Conjunto de Instruções ....................................................................... 12
4.2 Mapeamento das Instruções ............................................................... 13
5 Considerações Finais................................................................................. 15
Referências ...................................................................................................... 16
1 Introdução
2.1 Geral
Implementar um sistema computacional em Verilog, composto
por processador, memória e interface de comunicação.
2.2 Específicos
Definir o conjunto de instruções;
Fazer o mapeamento das instruções;
Determinar o caminho de dados.
3 Fundamentação Teórica
3.1 Verilog
Verilog é uma linguagem de descrição de hardware, criada por Prabhu
Goel e Phil Moorby, para a empresa Automated Integrated Design Systems. É
usada para implementar projetos a nível de circuito e além disso fornece maior
rapidez e facilidade em sua implementação em relação à projetos em
esquemático.
É possível descarregar os códigos feitos em Verilog em FPGAs, por meio
de suas placas de desenvolvimento com base em circuitos integrados.
3.2 FPGAs
Um FPGA (field-programmable gate array) é um dispositivo lógico que
suporta a implementação de circuitos digitais e é configurado de acordo com seu
usuário. Suas duas principais fabricantes, atualmente, são a Altera e a Xilinx.
OpCode RS RD Const
I
6 bits 5 bits 5 bits 16 bits
OpCode Endereço
J
6 bits 26 bits
Fonte: Autor.
Operações aritméticas
Operações lógicas
Salto condicional
Salto incondicional
J [RS] J PC <= RS
Fonte: Autor.
000110 OR 001111 JI
000111 AND
Fonte: Autor.
5 Considerações Finais
Ao determinar o conjunto de instruções e fazer seu mapeamento minha
intenção é de facilitar a futura implementação do projeto, porém podem ocorrer
imprevistos e pode ser necessárias algumas mudanças, seja no conjunto de
instruções ou no caminho do dados. A implementação seguirá a ordem descrita
na seção do caminho de dados, focando inicialmente na execução das
instruções do tipo R, depois nas do tipo I e, por fim as do tipo J, de modo que as
primeiras unidades funcionais a serem implementadas serão o PC, a Memória
de Instruções, os Registradores e a ULA, nessa ordem.
Referências
1. < https://stackoverflow.com/questions/33334521/extending-mips-
datapath-to-implement-sll-and-srl> Fonte da Figura 1;
2. <https://www.embarcados.com.br/primeira-instrucao-mips/>;
3. <https://www.embarcados.com.br/arquitetura-de-conjunto-de-instrucoes-
mips/>;
4. Trabalho de conclusão de curso do aluno Helder Celso Romero dos
Santos disponibilizado no Moodle da disciplina.