Arquitectura de Computadores II
Licenciatura em Engenharia de Sistemas e Informática - 3ºAno (LESI)
2002/03
Semana: 1
| 2 | 3 | 4
| 5 | 6 | 7
| 8 | 9 | 10
| 11 | 12 | 13
Apresentação dos objectivos e do programa da disciplina. Análise da evolução das arquitecturas de computadores.
26-Fev-2003 (T) Cópia dos acetatos das aulas de 24/2 e
26/2/2003
Análise da evolução das arquitecturas de computadores (continuação): segmentos do mercado de arquitectura de computadores, tipos de ISA.
24-Fev-2003 e 28-Fev-2002
(TP1,TP2,TP3)
Organização e constituição dos turnos práticos.
Revisão do datapath
dum processador MIPS. Descrição dos vários blocos do datapath para
suporte às instruções aritméticas e lógicas, de leitura e escrita na memória e
de salto.
5-Mar-2003 (T)
Identificação dos sinais de
controlo do datapath do processador MIPS e análise da unidade de
controlo do processador.
3-Mar-2003 e 7-Mar-2003
(TP1,TP2,TP3)
10-Mar-2003
(T) (Cópia dos acetatos das aulas de 3/3,
5/3 e 10/3/2003 – MIPS single cycle)
Análise da implementação
dos vários blocos do datapath dum processador MIPS: unidade de
controlo, banco de registos e memória.
12-Mar-2003 (T)
Limitações da execução das instruções num só ciclo máquina. Introdução à execução de instruções em vários ciclos máquina (multi-ciclo). Construção de um datapath para suporte à execução multi-ciclo.
10-Mar-2003 e 14-Mar-2003
(TP1,TP2,TP3)
17-Mar-2003 (T)
Análise das fases de
execução de instruções em vários ciclos: beq, lw e sw.
19-Mar-2003 (T)
Análise das fases de
execução de instruções em vários ciclos (continuação): Tipo-R e jump.
Especificação da unidade de controlo através de uma máquina de estados finitos
e análise de uma implementação.
17-Mar-2003 e 21-Mar-2003
(TP1,TP2,TP3)
24-Mar-2003
(T) (Cópia dos acetatos das aulas de 12/3,
17/3 e 19 e 24/3/2003 – MIPS multi-ciclo)
Especificação da unidade de
controlo através de um micro-programa. Análise de um formato de
micro-instrução. Implementação de um micro-programa através de uma ROM e de um
sequenciador.
26-Mar-2003 (T)
Tratamento de excepções num datapath com suporte à execução de instruções em vários ciclos máquina. Introdução à interface com periféricos.
24-Mar-2003 e 28-Mar-2003
(TP1,TP2,TP3)
Interface com periféricos
(continuação): análise das características e caracterização do desempenho de
periféricos (Discos rígidos e níveis de RAID).
2-Abr-2003 (T)
Análise das características
e caracterização do desempenho de periféricos (continuação) (Discos ópticos,
fitas magnéticas, ratos, ecrãs e redes locais).
31-Mar-2003 e 28-Abr-2003
(TP1,TP2,TP3)
Não houve aula (motivo:
consulta médica).
9-Abr-2003 (T) (Cópia dos acetatos das aulas de 26/3, 31/3
e 2/4 e 9/4/2003 – Periféricos)
Análise de tipos e
características de barramentos. Hierarquia de barramentos e relação
custo/desempenho. PCI versus SCSI. Apresentação da hierarquia de
barramentos existente num PC compatível baseado no Pentium 4 (chipset
Intel i850). Programação de periféricos.
7-Abr-2003 e 11-Abr-2003
(TP1,TP2,TP3)
Introdução à execução
encadeada de instruções (pipelining): fases de execução de instruções
num processador MIPS. Análise do desempenho de um processador com pipelining
e comparação com as variantes single-cycle e multi-ciclo.
16-Abr-2003 (T)
Apresentação dos vários
tipos de anomalias na execução em pipelining: anomalias estruturais, de
controlo e de dados. Analise de formas de eliminar ou reduzir o impacto das
anomalias.
14-Abr-2003 (TP1)
Análise de um datapath
com suporte à execução de instruções em pipelining. Apresentação de um
exemplo de execução de instruções em pipelining. Introdução à unidade de
controlo.
30-Abr-2003 (T)
Análise de um exemplo de
execução de instruções em pipelining incluindo os sinais de controlo.
Apresentação da anomalias originadas por dependências de dados e sua resolução
através de encaminhamento de dados.
28-Abr-2003 e
2-Maio-2003 (TP1, TP2, TP3)
Resolução de dependências de
dados através de stall do pipeline. Dependências de controlo e
sua resolução: antecipação da resolução dos saltos, previsão estática de saltos
e previsão dinâmica de saltos.
7-Maio-2003 (T) (Cópia dos acetatos das aulas de 14/4, 16/4,
28/4, 30/4, 5/5 e 7/5/2003– Pipelining)
Análise do desempenho da
execução em pipelining com stalls. Suporte a excepções na
execução em pipelining. Introdução a alternativas de desenho de
arquitecturas com pipelining avançado e paralelismo ao nível da
instrução (ILP).
5-Maio-2003 e
9-Maio-2003 (TP1, TP2, TP3)
Resolução de exercícios
sobre a execução de instruções em pipelining (exercícios 1, 2 do guia).
12-Maio-2003 (T)
Não houve aula (tolerância
de ponto da semana académica).
14-Maio-2003 (T)
Não houve aula (tolerância
de ponto da semana académica).
12-Maio-2003 e
16-Maio-2003 (TP1, TP2, TP3)
Não houve aula (tolerância
de ponto da semana académica).
Pipelining Avançado e ILP: análise de técnicas
para aumentar o desempenho (super-pipelining e super-escalaridade).
Analise do datapath do MIPS R4000 e de um datapath com suporte à
execução super-escalar de instruções.
21-Maio-2003 (T)
Análise detalhada dos tipos
de dependências de dados: RAW (Read after Write), WAW (Write after
Write) e WAR (Write after Read). Pipelining com operações
multi-ciclo: latência e intervalo de iniciação das instruções. Escalonamento
estático das instruções. Escalonamento dinâmico de instruções: execução fora de
ordem. Análise de um algoritmo de escalonamento dinâmico (scoreboard).
19-Maio-2003 e
23-Maio-2003 (TP1, TP2, TP3)
Resolução de exercícios
sobre a execução de instruções em pipelining (exercícios 3 e 4 do guia).
Análise de um algoritmo de
escalonamento dinâmico com renomeação de registos (Tomasulo). Comparação da
microarquitectura do PIII com a do PowerPC 604. Análise da microarquitectura do
Pentium 4, com ênfase nos vários estágios da pipeline.
28-Maio-2003 (T) (Cópia dos acetatos das aulas de 7/5, 19/5, 21/5,
26/5 e 28/5/2003– Pipelining avançado)
Apresentação de
arquitecturas alternativas: VLIW (Very Long Instruction Word), processadores vectoriais e instruções
para multimédia (MMX e SSE). Introdução aos multiprocessadores: hyper-threading
da Intel e a arquitectura Hammer da AMD
26-Maio-2003 e 30-Maio-2003 (TP1, TP2, TP3)
Resolução de exercícios
sobre a execução super-escalar (exercícios 1a e 1b do guia sobre medição de
desempenho).
2-Junho-2003 (T)
Introdução aos
multiprocessadores: sistemas de memória partilhada e sistemas de memória
distribuída. Limitações no desenvolvimento de aplicações para
multiprocessadores. Multiprocessadores conectados por um barramento, protocolo
de coesão de caches.
4-Junho-2003 (T) ) (Cópia dos acetatos das aulas de 28/5, 2/6 e 4/6/2003–
Multiprocessamento)
2-Junho-2003 e 6-Junho-2003 (TP1, TP2, TP3)
Continuação da resolução de
exercícios sobre a execução super-escalar (exercícios 1c e 1d do guia sobre
medição de desempenho).