CI210 Projetos Digitais e Microprocessadores Profs. Eduardo Todt Especificação do Trabalho Final 2010/1 ====================================== versão 20100602 - Versao inicial VERIFIQUE DIARIAMENTE SE HÁ ALTERAÇÃO NESTA ESPECIFICACAO (VEJA NUMERO DA VERSAO) Grupos de 1 ou 2 elementos Datas de apresentação conforme página da disciplina Envie email para o professor solicitando data da seguinte forma: subject: ci210 trabalho final No mínimo as 6 primeiras solicitações para cada data serão atendidas Coloque no texto da mensagem 4 datas em ordem de preferencia. A primeira data em princípio é só para voluntários. Indique também todos alunos do grupo no email Indique horário preferencial em cada data Segundas e quartas horários entre 13:30-15:30 Terças, quintas e sextas horários entre 13:30-17:30 Especificar horários com resoluçao de 30 min, i.e, 13:30, 14:00, 14:30, ... ATRASO NA APRESENTAÇÃO: Se o grupo não puder apresentar o trabalho na data agendada, até 17:30 (note que isto já é além do período de aula), a nota máxima sofre um decaimento a cada 24h, contando a partir do primeiro dia que passou do horário. Sábado e domingo contam como um dia. A data final não pode ir além do dia 01/07. Lembre que todos componentes do grupo devem estar presentes na apresentação. Componente ausente recebe nota zero. 1 dia = 95 2 dias = 90 3 dias = 85 4 dias = 80 5 dias = 75 6 dias = 70 7 dias = 65 0. Ambiente de trabalho VHDL: são aceitos em QUCS, Xilinx ISE Webpack (Linux e Windows), ghdl (Linux), Active HDL (Windows), Quartus (Windows) Circuitos: TKGATE e QUCS É fortemente recomendado realizar o trabalho em VHDL e ghdl. 1. Analise a implementação reduzida do MIPS disponível na página da disciplina, junto com o testbench. 2. Execute um programa exemplo para compreender o funcionamento do sistema como um todo prog1.asm prog.txt Note que uma forma de montar um .asm do MIPS é utilizar o SPIM ou o MARS (veja página da disciplina) 3. Implemente a instrução adicional e simule exemplo que a utilize dbnz $r1,label # decrement and branch if not zero funciona de forma similar à bne, mas decrementa o registrador indicado, depois de decrementá-lo testa se é nulo, se for nulo desvia para o label especificado da mesma forma que label em bne. Muito útil para loops, disponível na família Intel. 4. Implemente a instrução adicional e simule exemplo que a utilize swip $r1, cte($r2) # store word $r1 at address cte+$r2 and increment pointer $r2 É obrigatória defesa do trabalho na data agendada, com todos elementos do grupo presentes. Além de todos arquivos fonte e executáveis envolvidos, vhdl, asm, txt e outros, deve ser realizado um relatório em formato de artigo conforme especificações na página da disciplina. O relatório deve descrever o que foi feito, como foram realizadas implementação e testes, e resultados obtidos. Deve ser sucinto, embora deva explicar tudo o que foi realizado, com no máximo 3 páginas. A pontuaçao dos itens ainda pode ser ajustada, mas em princípio será o seguinte: - uma instruçao vale 45 pts - a segunda instruçao implementada, diferente da primeira, vale 35 pts - o relatório vale 20 pts Onde a avaliacao de cada instruçao envolve a implementaçao, testes e defesa. Defesas de instruçoes que nao funcionam contam parcialmente, sendo valorizado o domínio sobre o tema. Todos elementos do grupo devem dominar integralmente o trabalho.