Mini-Projeto · Sistema digital no simulador
Contexto
Cada par/trio escolhe um sistema digital com parte combinacional e sequencial (por exemplo, fechadura digital com código, semáforo com FSM, contador-cronómetro ou cofre com teclado), projeta-o (tabela de verdade / diagrama de estados), simplifica e simula em Logisim Evolution (ou CircuitVerse).
Requisitos
Funcionais
- Especificação clara do sistema.
- Parte combinacional projetada com tabela de verdade + simplificação (Boole/Karnaugh).
- Parte sequencial (flip-flops) com diagrama de estados (FSM) ou contador.
- Circuito completo simulado e a funcionar (todos os casos testados).
- Documentação: tabelas, equações, diagrama de estados, esquemático.
Não-funcionais
- Circuito simplificado (não usar portas a mais por preguiça).
- Estados não usados tratados (sem bloqueios).
- Relatório técnico claro.
Fases
Fase 1 · 2h
Especificação
- Escolher sistema; definir entradas, saídas e comportamento.
Documento de especificação (1-2 pág).
Fase 2 · 2,5h
Parte combinacional
- Tabela de verdade; simplificar (Boole/Karnaugh); equações finais.
Tabela + simplificação + equações.
Fase 3 · 2,5h
Parte sequencial
- Diagrama de estados / contador; escolha de flip-flops; tabela de transições.
Diagrama de estados + tabela de transições.
Fase 4 · 2h
Simulação
- Montar em Logisim/CircuitVerse; testar todos os casos.
Ficheiro do simulador + registo de testes.
Fase 5 · 1h
Relatório + defesa
Relatório + demo 5 min (mostrar o circuito a funcionar).
Critérios de avaliação
| Item | Peso |
|---|---|
| Especificação clara | 10% |
| Combinacional (tabela + simplificação) | 25% |
| Sequencial (FSM/contador correto) | 25% |
| Simulação funcional (todos os casos) | 25% |
| Documentação | 10% |
| Defesa | 5% |
Erros comuns
- Não simplificar (dezenas de portas para algo trivial).
- FSM sem transição definida para alguma entrada (comportamento indefinido).
- Estado não usado que "prende" o circuito.
- Latches usados onde deviam ser flip-flops (problemas de temporização).
- Documentação que não bate certo com o circuito.
Bónus (opcional)
- Implementar com apenas NAND (ou NOR), portas universais.
- Montar uma parte combinatória em breadboard com CI 74HC, com lista de componentes e cálculo por extenso da resistência (o componente, a que o referencial chama resistor) de cada LED, R = (V_OH − V_LED) / I, com V_OH ≥ 3,84 V para I_OH = −4 mA no datasheet do 74HC00.
- Mostrador de 7 segmentos com descodificador.
- Descrição em linguagem de descrição de hardware (VHDL ou Verilog), fora do âmbito desta UC, além do Logisim.
- Eliminação de picos indesejados (glitches) e de ressaltos (debounce) nas entradas dos botões.
Reflexão
Em meia página: a simplificação reduziu muitas portas? Que estado não usado podia ter causado problema? Como esta lógica se relaciona com o que existe dentro de um CPU (ALU, registos, FSM de controlo)?