Você está na página 1de 6

Universidade Federal de Santa Maria Departamento de Eletrnica e Computao ELC1033 Projeto de Sistemas Digitais

Diretrizes para a Realizao do Projeto do Curso: Descrio em VHDL e Simulao de um processador


(Verso 01)

2011/2

Neste documento, apresentamos as principais diretrizes para a realizao do projeto do curso da disciplina ELC1033 Projeto de Sistemas Digitais, no segundo semestre de 2011. No projeto do curso, ser realizada a descrio em VHDL e simulao do processador descrito no captulo 5 do livro do Patterson e Henessy [05] e de uma memria. Uma viso em blocos apresentada na figura 1. O projeto ter dois grandes blocos: o bloco da memria e o bloco do processador. O processador ser descrito como um sistema RTL. O processador deve ser capaz de executar algumas instrues do processador MIPS. Este processador formado por dois blocos: o subsistema (ou caminho) de dados e o subsistema (ou caminho) de controle.
Processador (Sistema RTL) Endereo Memria Dado (escrita) Dado (leitura) Subistema de Dados Cdigo da Instruo (OPCODE) Sinais de Controle

Leitura na memria

Escrita na memria

Subistema de Controle

reset

clk

Figura 1 - Diagrama de blocos do sistema que ser descrito e simulado no projeto do curso. Para a avaliao do projeto do curso, dever ser entregue um relatrio com contendo as seguintes sees: Introduo: fazer uma apresentao do problema que ser resolvido. Apresentar as sees do trabalho. Reviso bibliogrfica: Fazer uma reviso bibliogrfica da linguagem de descrio de hardware, em especial o VHDL; dos sistemas em nvel de transferncia de registradores e do processador que ser desenvolvido. Metodologia: Descrever como ser realizado o projeto, descrever as etapas e o que ser feito para que o projeto seja realizado.

Resultados: Apresentar os resultados das simulaes, mostrando o funcionamento de cada um dos componentes do sistema: memria, subsistema de dados e subsistema de controle. Apresentar os resultados das simulaes, mostrando a execuo das instrues pelo processador. Discusso: Fazer uma discusso dos resultados obtidos, da seo anterior. Concluses e Perspectivas: Escrever as concluses e perspectivas do projeto tendo como base os resultados obtidos. Bibliografia: Indicar as referncias bibliogrficas usadas para a realizao do projeto, usando as normas ABNT. Anexos: Cdigo VHDL usando para descrever a memria e o processador. Adicionar outros anexos se achar necessrio.

O diagrama do subsistema de dados apresentado na figura 5.33 do livro do Patterson [5], na pgina 221. Este diagrama est reproduzido na figura 2. Para a implementao do subsistema de dados os seguintes componentes devem ser descritos em VHDL e testados: Registrador de 32 bits: registrador de instrues, registrador de dados da memria, registrador A, registrador B, registrador da sada da UAL e um registrador para o contador de programa, PC, com um sinal de permisso de escrita. Banco de registradores: banco de registradores com 32 registradores de 32 bits. Este banco possui duas entradas para os endereos dos registradores de leitura, uma entrada com o endereo do registrador de escrita, uma entrada com o dado a ser escrito, duas sadas com os dados a serem lidos e um sinal de permisso de escrita no banco de registradores. Multiplexadores: 4 multiplexadores com duas entradas de 32 bits, 1 multiplexador com 3 entradas de 32 bits e 1 multiplexador com 4 entradas de 32 bits. Extensor de sinal: 1 extensor de sinal de 16 para 32 bits. Deslocadores: 1 deslocador de 2 bits para a esquerda com uma entrada de 26 bits e uma sada de 28 bits e um deslocador de 2 bits para a esquerda com entrada e sada de 32 bits. UAL: 1 unidade lgica e aritmtica com duas entradas de dados (vamos chamar de A e B), uma sada com o resultado da operao dos dados de entrada, uma sada indicando que o resultado da operao zero e uma entrada com o cdigo da operao que ser realizada pela UAL. A UAL realiza as seguintes operaes: soma, subtrao, operao AND bit a bit, operao OR bit a bit e a operao set less than que faz a sada igual a 1 se a entrada A menor que B, seno 0.

Figura 2 - Diagrama de blocos do subsistema de dados do processador.

O subsistema de controle ser implementado como uma mquina de estado. O diagrama de estados da mquina de estado est apresentado na figura 5.42 do livro do livro do Patterson [5], na pgina 228. Este diagrama de estados est apresentado na figura 3. Esta uma mquina de Moore com 9 estados. O processador executar as seguintes operaes: Instrues tipo R: instrues tipo registrador a registrador. Instrues de soma, subtrao, operao AND bit a bit e OR bit a bit. Instrues de referncia memria: instrues para ler um dado de 32 bits da memria para um registrador do banco de registradores e para escrever um dado de 32 bits de um registrador do banco de registradores para a memria. Instruo de desvio condicional: instruo para desviar para um endereo se as entradas da UAL so iguais. Instruo de desvio incondicional: instruo para desviar para um endereo incondicionalmente.

Figura 3 - Diagrama de estados do subsistema de controle do processador.

Cronograma
O projeto do curso consta da descrio e simulao de uma memria e de um processador capaz de realizar algumas instrues do processador MIPS. Em paralelo, deve ser escrito o relatrio do projeto do curso que ser entregue para a avaliao do curso. Para a elaborao do projeto ser necessrio ler o captulo 5 do livro do Patterson [05]. Os arquivos com a descrio em VHDL e testes devero ser enviado para o professor nas datas sugeridas para o trmino da atividade, apresentada na tabela 1. O seguinte cronograma deve ser observado:

Tabela 1 - Cronograma de atividades para a realizao do projeto do curso de ELC1033 Projeto de Sistemas Digitais. Data 10/11 17/11 22/11 24/11 29/11 01/12 06/12 08/12 Atividade Descrio em VHDL e teste de um multiplexador com duas entradas de 32 bits. Descrio em VHDL e teste de um multiplexador com trs entradas de 32 bits. Descrio em VHDL e teste de um multiplexador com quatro entradas de 32 bits. Incio do relatrio do projeto. Descrio em VHDL e teste de um registrador de 32 bits. Descrio em VHDL e teste de um registrador de 32 bits com um sinal de permisso de escrita. Descrio em VHDL e teste de um banco de registradores com 32 registradores de 32 bits. Descrio em VHDL e simulao de uma unidade lgica e aritmtica. Descrio em VHDL e simulao de um extensor de sinal de 16 para 32 bits. Descrio em VHDL e simulao de um deslocador de 2 bits para a esquerda com 32 bits de entrada e de sada. Descrio em VHDL e simulao de um deslocador de 2 bits para a esquerda com entrada de 26 bits e sada de 28 bits. Descrio em VHDL e teste do subsistema de dados. Descrio em VHDL e teste da memria. Descrio em VHDL e teste da mquina de estado do subsistema de controle. Descrio em VHDL e teste do processador. Descrio em VHDL e teste do processador e memria. Concluso do relatrio do projeto.

Bibliografia
[01] Asheden, P. J. The VHDL Cookbook. ed. 1. 1990. /INTERNET/ [02] Perry, D. VHDL: Programming by Example. ed. 4. pp. 478. Mc-Graw-Hill, 2002. [03] Roth, C. H. Digital Systems Design Using VHDL. pp. 470. PWS, 1998. [04] Ercegovac, M.; Lang, T.; Moreno, J. H. Introduo aos Sistemas Digitais. ed. Bookman. 2000. [05] Patterson, D. A.; Hennessy, J. L. Organizao e Projeto de Computadores: A Interface Hardware/software. Ed. 2. LTC. 1998. [06] Mano, M. M. A Computer System Architecture. Ed. 3. Prentice Hall. 1993. [05] Stallings, W. Arquitetura e Organizao de Computadores: Organizao para o Desempenho. Prentice Hall. So Paulo. 2003.