CPU de 8 bits
1. Enunciado
O que?
Nesta ponderada, você precisará criar uma CPU simplificada de 8 bits.
De que tipo de simplificação estamos falando? Trata-se de uma CPU com apenas um ciclo, em que tanto é feita a leitura da instrução como a sua execução. Detalhando um pouco mais, a sua CPU precisa:
- Ter uma ALU com as operações de soma, *subtração, multiplicação, shift right, shift left, e bitwise AND, OR e XOR, todas de 8 bits. A ALU deve ter um seletor de operações que será utilizado efetivamente como palavra de instrução;
- Implementar uma palavra de instrução com operando explícito. Sugere-se que utilizem 4 bits para a seleção de operação e 8 bits para armazenar o operando;
- Implementar uma memória (RAM ou EEPROM - pode utilizar blocos prontos) para armazenar as palavras de instrução na sequência em que precisam ser executadas;
- Implementar ao menos um registrador que servirá como acumulador da ALU. Aqui, diferente da atividade anterior, sua ALU deve partir da premissa de que um dos operandos está sempre no acumulador. A maneira para poder operacionalizar isso é criar uma nova operação de carregamento, cujo objetivo é apenas levar um operando até o acumulador. Os resultados das operações também devem sempre ser armazenados no acumulador.
- Para exibição dos resultados de cada operação, utilize um display de 7 segmentos (pode utilizar o display HEX, mas cuidado ao usar complemento de dois).
- O sistema deve contar com um sinal de clock para sincronizar a sua operação.
Como?
Utilize algum simulador de lógica. Sugiro o Digital.
Especificações de entrega
A melhor forma de garantir que você aprendeu alguma coisa no processo é se esforçando para explicar os conceitos envolvidos. Sendo assim, considera-se entregue a atividade que conte, também, com um vídeo explicativo sobre o processo de desenvolvimento do somador e como ele funcina. Seja sucinto (sugiro roteirizar); utilize não mais do que 5 minutos para explicar todo o processo.
Padrão de qualidade
A implementação do somador vale até 10 pontos, sendo que a pontuação máxima só será atribuída considerando:
- A implementação correta da ALU vale até 6 pontos;
- O uso correto de memória e registradores vale até 2 pontos; e
- A integração desses componentes vale até 2 pontos.
A apresentação é um multiplicador da nota base do somador. Sendo assim, há aqui alguns níveis entre 0 e 1:
- < 0.3 - não entendeu muita coisa da atividade. Provavelmente apenas encontrou uma solução pronta e utilizou.
- 0.3 - 0.6 - é provável que tenha feito mesmo, mas não entendeu bem como funciona ou não soube explicar.
- 0.6 - 0.9 - domina razoavelmente bem o assunto, mas ainda tem alguns detalhes que não ficaram bem explicados ou alguma pergunta que não soube responder.
- 0.9 - 1.0 - entendimento e explicações quase perfeitos ou perfeitos.