Parte 6 – Simulação e Prototipação de Processadores e Entrada e Saída LABORG 11/junho/2012...
Transcript of Parte 6 – Simulação e Prototipação de Processadores e Entrada e Saída LABORG 11/junho/2012...
Parte 6 – Simulação e Prototipação de Processadores
e Entrada e Saída
LABORGLABORG
11/junho/2012
Ney Laert Vilar Calazans
2César Marcon / Ney Calazans
Sumário
Introdução
TRABALHO A FAZER
A ENTREGAR
3César Marcon / Ney Calazans
Sumário
Introdução
TRABALHO A FAZER
A ENTREGAR
4César Marcon / Ney Calazans
Introdução• Neste trabalho deve-se simular e prototipar um processador
na plataforma Digilent, empregando o esquema rudimentar que provê possibilidade de verificar o resultado da execução de programas por este processador em hardware.
• Disponibiliza-se uma implementação funcional simulável e prototipável de um sistema processador+memórias, baseado na arquitetura MR4, um subconjunto da arquitetura MIPS 2000. Esta arquitetura e uma organização para a mesma estão descritas no documento disponível no vínculo (link): http://www.inf.pucrs.br/~calazans/undergrad/orgcomp/arq_MR4.pdf
• O primeiro passo é simular o sistema MR4+memórias, o que deve ser realizado seguindo o processo descrito em http://www.inf.pucrs.br/~calazans/undergrad/laborg/laborg_parte6_Simulacao_MIPSmulti_c_BRAMs_e_Exercicios.doc.
5César Marcon / Ney Calazans
Introdução
BLOCO DE CONTROLE
(controlpath)
Memória de
Dados
rw bw
clock
i_address
BLOCO DE DADOS
(datapath)
addressRAM
IR uins
instruction
reset
Memória de Instruções
ce
end_mul
addressCPU
addressSERIAL
data_out_CPU
data_out_RAM
selCPU
data_out
selCPU
0
1
Quando selCPU=’1’ o processador pára e o endereçamento da memória de dados é controlado pelo mundo externo
Processador MIPSmulti_with_BRAMs
• Acima mostra-se o diagrama de blocos do sistema MR4+memórias. Após conseguir simular este deve-se prototipá-lo.
• Deve-se elaborar um controlador externo que instancie o sistema e seja capaz de mostrar os resultados nos recursos da placa, após a finalização da execução do programa.
6César Marcon / Ney Calazans
Sumário
Introdução
TRABALHO A FAZER
A ENTREGAR
7César Marcon / Ney Calazans
TRABALHO A FAZER (1)1. Primeiro, realizar a simulação seguindo o processo descrito
no documento http://www.inf.pucrs.br/~calazans/undergrad/laborg/laborg_parte6_Simulacao_MIPSmulti_c_BRAMs_e_Exercicios.doc.
8César Marcon / Ney Calazans
TRABALHO A FAZER (2)2. A seguir as tarefas de prototipação: planejar e implementar
em VHDL o controlador. Algumas observações relevantes:
– Imediatamente após prototipar o hardware, devido ao tamanho típico dos programas que usamos, e à frequência de operação do processador, o programa já executou e “terminou” alguns microssegundos após a prototipação.
– O conceito de término deve ser obtido tipicamente colocando o processador em um laço eterno do tipo “aqui: j aqui” após concluir a execução do programa, para evitar alterações incorretas de registradores ou posições da memória de dados.
– O controlador DEVE ser simulado junto com a MR4 completa, criando um novo testbench, antes de qualquer tentativa de prototipação.
– Antes de elaborar o controlador estudar e definir a interface do sistema com o usuário (em termos de sinais, leds, chaves de mostradores da placa)
9César Marcon / Ney Calazans
TRABALHO A FAZER (3)3. A alteração do hardware do sistema deve permitir ao
software realizar uma operação de saída (mapeada em memória) que gere a indicação de fim de execução para o mundo externo. Como isto pode ser feito?
4. A funcionalidade do controlador externo deve permitir ao usuário:
– Ler conteúdos da memória de dados byte a byte, a partir da primeira posição desta
– Comandar o processador para deixar de fazer acesso à memória de dados (através do sinal sel_CPU)
10César Marcon / Ney Calazans
TRABALHO A FAZER (3)5. Prototipar o sistema completo:
– Não esquecer de dar a devida atenção à definição da interface do FPGA com o mundo externo, através da especificação do arquivo UCF.
– Selecionar a frequência de operação correta na placa.
11César Marcon / Ney Calazans
Sumário
Introdução
Processos em VHDL
TRABALHO A FAZER
A ENTREGAR
12César Marcon / Ney Calazans
A ENTREGAR – T6
Para este trabalho, deve-se entregar:
1. Todos os itens citados na Seção A FAZER e A ENTREGAR do documento de apoio ao processo de simulação
2. O projeto ISE completo do protótipo gerado
3. Uma documentação descrevendo a estrutura da alteração realizada e do controlador implementado, bem como do programa executado no protótipo
4. Deve-se mostrar a operação do projeto em uma plataforma de prototipação ao professor em alguma aula