Arquitectura de Computadores II
Licenciatura em Engenharia de Sistemas e
Informática - 3ºAno (LESI)
2004/05
Novidades
- 28-Julho-2005: Estão disponíveis aqui as notas dos exames da época de recurso
- 19-Julho-2005: O docente está disponível dia 20
de Julho entre as 17h e as 18h para esclarecimento de dúvidas para a época
de recurso.
- 13-Julho-2005: Estão disponíveis aqui as notas dos exames da época normal e dos
trabalhos efectuados nas aulas práticas.
- 13-Junho-2005: Está disponível uma versão de 2005 dos apontamentos sobre
paralelismo ao nível da instrução.
- 12-Junho-2005: Está disponível uma versão de 2005 dos acetatos pipelining.
- 02-Maio-2005: Está disponível uma versão de 2005 dos acetatos sobre
periféricos.
- 12-Abr-2005: Está disponível a versão 2005 do guia sobre o PG.
- 07-Mar-2005: Já está disponível em Guiões os acetatos e os exercícios para as aulas
práticas.
- 07-Mar-2005: Já está disponível o plano das
aulas (aqui) e links para as cópias dos
acetatos utilizados no ano anterior. Atenção: os acetatos não
substituem a leitura da bibliografia recomendada
Equipa docente
João Luís Sobral (Prof. Auxiliar) - Docente
responsável pela leccionação teórico e teórico-prática

www.di.uminho.pt/~jls
Telefone: extensão 4439 (253 604439 do exterior) ou 4459 (Laboratório de
Investigação de Arq. de Computadores)
Horário de atendimento: terça-feira 14:00-17:00; quinta-feira 14:00-17:00
Objectivos
Com
as disciplinas anteriores que abordaram temas relativos ao funcionamento dum
computador - Conceitos de Sistemas Informáticos, Arquitectura de Computadores I
e Sistemas Digitais I - os seguintes conceitos foram já apreendidos:
- a organização e estrutura de um computador
- a interface do processador com os programas
escritos em linguagens imperativas de alto nível
- a interface do processador com os restantes
componentes de um computador
- a metodologia de programação em linguagem
máquina
- os sistemas digitais
como elementos constituintes de qualquer computador.
Esta
disciplina tem dois grandes objectivos complementares:
- analisar
quantitativamente arquitecturas de computadores e o suporte a modelos de
computação escalável;
- estabelecer pontes
entre conceitos adquiridos e tecnologias existentes.
Assim,
pretende-se com esta disciplina complementar os conceitos adquiridos em
disciplinas anteriores, nomeadamente com:
- o estudo detalhado da
arquitectura interna dum processador, incluindo o suporte ao paralelismo
ao nível da instrução (pipeline e super-escalaridade)
- análise quantitativa
do desempenho de programas / arquitecturas de computadores.
- a metodologia de
programação de interfaces com periféricos, de baixo nível, em sistemas
reais;
- o paralelismo na
arquitectura de sistemas de computação, incluindo a análise de modelos de
memória partilhada e de memória distribuída.
I. Arquitectura interna
de um processador
- Datapath de
um processador e respectiva unidade de controlo. Implementação dos componentes
do datapath.
- Arquitectura para
suporte à execução de instruções em vários ciclos de relógio: unidade de
controlo, respectiva máquina de estados finita e da sua implementação.
- Técnicas alternativas para
a implementação da unidade de controlo: microprogramação.
- Tratamento de
interrupções e excepções numa unidade de controlo.
- Paralelismo ao nível
da instrução através de mecanismos de pipelining: identificação de
problemas com pipelining e sua resolução.
- Técnicas alternativas
de paralelismo ao nível da instrução: processadores super-escalares e very
long instruction word (VLIW)
- Análise de desempenho
de arquitecturas com pipeline e super-escalaridade.
II. Processadores
paralelos
- Classificação das
arquitecturas paralelas segundo Flynm. Análise de exemplos (SIMD, MIMD e
vectoriais).
- Sistemas de memória
partilhada (SMP), coerência de caches e modelos de programação.
- Sistemas de memória
distribuída, topologia de interligação e modelos de programação. Clusters
de SMP
III. Periféricos
- Barramentos, discos,
redes, entrada e saída de dados e rendimento de E/S
- Desenvolvimento de
aplicações para um periférico genérico.
Bibliografia
A disciplina Arquitectura
de Computadores II vai continuar a seguir essencialmente o livro:
"Computer Organization and Design: the hardware/software
interface", D.Patterson, J.Henessy, Morgan Kaufmann Publishers, 2ª edição,
1997
nomeadamente os capítulos 5.The
Processor: Datapath and Control, 6.Enhancing Performance with
Pipelining, 8.Interfacing Processors and Peripherals e 9.Multiprocessors
.
A empresa editora do livro
tem disponível uma página Web com mais informação sobre o livro em http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-428-6.
Aulas teóricas: serão leccionadas à base de
acetatos, os quais contêm essencialmente os tópicos de cada assunto a ser
analisado. Os acetatos utilizados no ano anterior estão disponíveis (aqui). No final do ano lectivo será disponibilizada uma
versão revista dos acetados.
Sessões
teórico-práticas:
serão acompanhadas de aulas de exposição dos conceitos práticos relevantes ao
desenvolvimento dos trabalhos e respectivo guião de execução dos mesmos (ver em
Guiões Práticos).
Bibliografia
complementar
recomendada para leitura adicional:
- Computer Architecture: a Quantitative Approach, D. Patterson and J. Hennessy, Morgan
Kaufmann, 3ª edição, 2002. http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-724-2
- Computer
Organization and Architecture - Designing for Performance, William Stallings, 5ª edição., Prentice Hall, 2000 http://vig.prenhall.com/catalog/academic/product/1,4096,0130812943.html,00.html.
Avaliação
A
disciplina de Arquitectura de Computadores II está organizada em aulas teóricas
(2*1h/sem) e em sessões teórico-práticas (2h/sem).
A
frequência às aulas teóricas e teórico-práticas não é obrigatória, mas é
recomendada. As aulas teóricas são utilizadas para se transmitirem os conceitos
necessários à compreensão da matéria. O material leccionado nestas aulas é
encadeado, pelo que se torna indispensável o seu regular acompanhamento.
As
sessões teórico-práticas têm por objectivo aplicar os conceitos adquiridos nas
teóricas e em particular desenvolver técnicas de engenharia, ao nível dos
sistemas informáticos.
No
fim do semestre realiza-se o exame escrito da disciplina. As perguntas
do exame irão avaliar a capacidade de compreensão das matérias leccionadas. O
exame escrito terá um peso de 90% na nota final. Os restantes 10% serão
provenientes dos trabalhos realizados sessões práticas de programação de
periféricos (PG04 – semana 6 a 10) e de medição de desempenho (semana 14 e 15).
Ver Guiões Práticos.
Página mantida por João Luís Sobral