PROVA DE MICROPROCESSADORES
Duração: 4 horas
Cotação máxima: 20 valores
PARTE I — ARQUITETURA E CONCEITOS
1. Explique, de forma técnica, a diferença entre microprocessador e microcontrolador. Em
seguida, indique um cenário real onde o uso de um microprocessador seria inadequado,
justificando. (2 valores)
2. Compare as arquiteturas Von Neumann e Harvard, abordando: Gargalo de desempenho,
Capacidade de paralelismo e Complexidade de implementação. Conclua indicando se ainda
existem arquiteturas puras atualmente. (2 valores)
PARTE II — CICLO DE INSTRUÇÃO E PIPELINE
3. Descreva detalhadamente o ciclo de instrução (Fetch, Decode, Execute) para a instrução:
ADD R1, R2 (2 valores)
4. Um processador possui pipeline de 3 estágios, sendo que cada estágio demora 2 ns. Sem
pipeline, cada instrução leva 6 ns.
Calcule: a) Tempo de execução de 1 instrução com pipeline b) Tempo de execução de 10
instruções c) Speedup obtido d) Novo desempenho considerando um hazard a cada 4
instruções com penalização de 2 ns (2 valores)
PARTE III — BARRAMENTOS E MEMÓRIA
5. Um sistema possui um barramento de endereços de 24 bits, sendo que cada posição de
memória armazena 1 byte.
Determine: a) Número total de posições de memória b) Capacidade total em megabytes
(MB) (2 valores)
6. Explique tecnicamente por que o aumento do tamanho do barramento de endereços pode
levar à degradação do desempenho do sistema. (2 valores)
PARTE IV — CONJUNTO DE INSTRUÇÕES
7. Classifique e exemplifique os seguintes tipos de instruções: Aritméticas, Lógicas e
Controlo de fluxo (1,5 valores)
8. Considere: R1 = 0x0F e R2 = 0xF0.
Calcule: a) R1 AND R2 b) R1 OR R2. Explique os resultados ao nível de bits. (1,5 valores)
PARTE V — PROGRAMAÇÃO EM ASSEMBLY
9. Escreva um programa em Assembly que: Inicialize um registrador com o valor 5,
incremente até 15 utilizando um loop, ao atingir 15 salte para uma rotina e armazene o
resultado final em memória. (3 valores)
PARTE VI — ANÁLISE CRÍTICA
10. Um engenheiro decide utilizar um microprocessador para um sistema de
monitoramento de sensores numa torre de telecomunicações alimentada por bateria.
Analise criticamente essa decisão, indicando: o erro cometido, as consequências práticas e a
solução mais adequada. (2 valores)
QUESTÃO FINAL
11. Apresente um exemplo concreto em que um sistema baseado em microprocessador
funcione corretamente em teoria, mas falhe na prática. Justifique tecnicamente. (2 valores)