Universidade do Minho

Departamento de Informática

Arquitectura de Computadores II

Licenciatura em Engenharia de Sistemas e Informática - 3ºAno (LESI)

2004/05

Docentes

Objectivos

Programa

Bibliografia

Avaliação

Sumários

Guiões

 

 

Sumários

Semana: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13

Semana 1

21-Fev-2005 (T) (Segunda-feira) Cópia dos acetatos das aulas de introdução

Apresentação dos objectivos e do programa da disciplina. Evolução das arquitecturas de computadores.

23-Fev-2005 (T) (Quarta-feira)

Análise da evolução das arquitecturas de computadores (continuação): segmentos do mercado de arquitectura de computadores, tipos de conjuntos de instruções (ISA) e evolução do ISA.

21-Fev-2005 (TP1,TP2,TP3) (Segunda-feira)

Organização e constituição dos turnos práticos.

 

Semana 2

28-Fev-2005 (T) (Segunda-feira)

Não houve aula. (motivo: participação dos alunos nas JOIN’05)

02-Mar-2005 (T) (Quarta-feira)

Não houve aula. (motivo: participação dos alunos nas JOIN’05)

28-Fev-2005 (TP1,TP2,TP3) (Segunda-feira)

Não houve aula. (motivo: participação dos alunos nas JOIN’05)

 

Semana 3

07-Mar-2005 (T) Cópia dos acetatos das aulas de MIPS single cycle

Revisão do datapath dum processador MIPS com suporte à execução de instruções num só ciclo de relógio (MIPS SC). 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.

09-Mar-2005 (T)

Revisão do datapath dum processador MIPS: análise dos vários blocos do datapath (continuação). Introdução aos sinais de controlo. Análise da unidade de controlo do processador.

07-Mar-2005 (TP1,TP2,TP3)

Introdução às máquinas virtuais. Análise da Máquina Virtual de Java (Java Virtual Machine): instruções de transferência de informação e aritméticas. Resolução de exercícios.
 

Semana 4

14-Mar-2005 (T)

Análise da implementação dos vários blocos do datapath dum processador MIPS: unidade de controlo, banco de registos e memória.

16-Mar-2005 (T) Cópia dos acetatos das aulas de MIPS multi-ciclo

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.

14-Mar-2005 (TP1,TP2,TP3)

Análise da JVM (continuação): instruções de comparação e salto e de manipulação de vectores. Resolução de exercícios.
 

Semana 5

21-Mar-2005 (T)

Sinais de controlo do datapath multi-ciclo. Análise detalhada das fases de execução de instruções em vários ciclos: beq, Tipo R, lw e sw.

23-Mar-2005 (T)

Especificação da unidade de controlo de um datapath multi-ciclo através de uma máquina de estados finitos. Implementação da unidade de controlo de um processador MIPS multi-ciclo.

21-Mar-2005 (TP1,TP2,TP3)

Resolução de exercícios sobre o datapath do MIPS: simulação da execução de várias instruções e análise da informação presente no datapath durante a execução das instruções.
 
 
Semana 6

28-Mar-2005 (T)

Férias da Páscoa

30-Mar-2005 (T)

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. Micro código horizontal versus micro código vertical

28-Mar-2005 (TP1,TP2,TP3)

Férias da Páscoa.
 

Semana 7

4-Abr-2005 (T) Cópia dos acetatos das aulas de Periféricos

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.

6-Abr-2005 (T)

Interface com periféricos (continuação): análise das características e caracterização do desempenho de periféricos (Discos rígidos, incluindo RAID, discos ópticos, fitas magnéticas).

4-Abr-2005 (TP1, TP2, TP3)

Resolução de exercícios sobre o datapath do MIPS com suporte à execução de instruções em vários ciclos: simulação da execução de várias instruções.
 

Semana 8

11-Abr-2005 (T)

Análise das características e caracterização do desempenho de periféricos (redes locais). Análise de tipos e características de barramentos. Hierarquia de barramentos e relação custo/desempenho. Análise dos barramentos de um datapath de um processador MIPS.

13-Abr-2005 (T)

Análise de tipos e características de barramentos: PCI versus SCSI. Apresentação da hierarquia de barramentos existente num PC compatível baseado no Pentium 4 (chipset Intel 925CX). Programação de periféricos. Análise dos componentes de um PC embebido.

Introdução à execução encadeada de instruções (pipelining).

11-Abr-2005 (TP1,TP2,TP3)

Introdução à programação de periféricos. Apresentação do periférico genérico PG04. Portas de entrada e de saída de dados (exercício 1 do guia).

 

Semana 9

18-Abr-2005 (T) (Cópia dos acetatos das aulas de Pipelining)

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. 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.

20-Abr-2005 (T)

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. Análise de um exemplo de execução de instruções em pipelining incluindo os sinais de controlo.

18-Abr-2005 (TP1,TP2,TP3)

Programação de periféricos: desenvolvimento de aplicações para o periférico genérico PG04 envolvendo a programação de portas de controlo e de estado (exercício 2 do guia).
 

Semana 10

25-Abr-2005 (T)

Feriado Nacional.

27-Abr-2005 (T)

Apresentação das anomalias originadas por dependências de dados e sua resolução através de encaminhamento de dados.

25-Abr-2005 (TP1,TP2,TP3)

Feriado Nacional.

 

Semana 11

2-Maio-2005 (T)

Resolução de dependências de dados através de stall da cadeia de execução. 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.

4-Maio-2005 (T)

Análise do desempenho da execução em pipelining com stalls. Suporte a excepções na execução em pipelining.
Introdução pipelining avançado: comparação das variantes do data-path do MIPS já analisadas e aspectos de desenho.

2-Maio-2005 (TP1,TP2,TP3)

Resolução de exercícios sobre a execução de instruções em pipelining (exercícios 1, 2 do guia).

 

Semana 12

9-Maio-2005 (T) (Segunda-feira)

Não houve aula. (motivo: tolerância de ponto do enterro da gata)

11-Maio-2005 (T) (Quarta-feira)

Não houve aula. (motivo: tolerância de ponto do enterro da gata)

9-Maio-2005 (TP1,TP2,TP3) (Segunda-feira)

Não houve aula. (motivo: tolerância de ponto do enterro da gata)

 

Semana 13

16-Maio-2005 (T) (Cópia dos acetatos das aulas Pipelining avançado)

Pipelining avançado e ILP (paralelismo ao nível da instrução): 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.

18-Maio-2005 (T)

Análise detalhada dos tipos de dependências de dados: RAW (Read after Write), WAW (Write after Write) e WAR (Write after Read). Análise de uma variante d arquitectura MIPS com operações multi-ciclo. Escalonamento estático das instruções.

16-Maio-2005 (TP1,TP2,TP3)

Resolução de exercícios sobre a execução de instruções em pipelining (exercícios 3 e 4 do guia).

 

Semana 14

23-Maio-2005 (T)

Escalonamento dinâmico de instruções: execução das instruções fora de ordem. Análise de processadores comerciais (PowerPC, PIII e P4) Apresentação de arquitecturas alternativas: VLIW (Very Long Instruction Word).

25-Maio-2005 (T)

Apresentação de arquitecturas alternativas (continuação): processadores vectoriais, instruções para multimédia (MMX e SSE), Hyper-threading e multi-core.

23-Maio-2005 (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).

 

Semana 15

30-Maio-2005 (T)

Introdução ao processamento paralelo. Taxonomia de Flynn. Sistemas de memória partilhada vs sistemas de memória distribuída. Limitações no desenvolvimento de aplicações para multiprocessadores.
Análise das arquitecturas multiprocessadores conectadas por um único barramento. Coesão de caches.

1-Jun-2005 (T)

Análise das arquitecturas multiprocessadores conectadas por uma rede. Programação de sistemas de memória partilhada vs programação de sistemas de memória distribuída. Arquitecturas paralelas baseadas em clusters de máquinas.
Discussão de perspectivas futuras para as arquitecturas de computadores.

30-Maio-2005 (TP1, TP2, TP3)

Resolução de exercícios sobre a execução super-escalar (exercícios 1c e 1d do guia sobre medição de desempenho).