Carimbo e Assinatura da Unidade:
Página 1 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
DISCIPLINA: Organização e Arquitetura de Computadores II
CÓDIGO: 4646R-04 CRÉDITOS: 04 CARGA HORÁRIA: 60 horas-aula VALIDADE: a partir de 2016/II
REQUISITOS:
Pré-requisito: 4646Q-04 Organização e Arquitetura de Computadores I
OBJETIVOS:
O cumprimento da disciplina busca dar ao aluno, ao final do semestre, condições de: 1. Conhecer diferentes tipos de sistemas de entrada e saída, bem como os
mecanismos que existem para acessar dispositivos externos ao computador.
2. Compreender como computação, comunicação e armazenamento afetam o
desempenho de um sistema computacional, bem como entender métricas usadas para avaliar o desempenho deste sistema computacional.
3. Conhecer a hierarquia de memória, os fundamentos, mecanismos e políticas para
transferência de informação entre níveis e os mecanismos de coerência de cache para sistemas multiprocessados.
4. Compreender conceitos básicos de arquiteturas de computação paralela intrachip. 5. Conhecer topologias de comunicação intrachip e saber como empregá-las para
atender aos requisitos de computação e comunicação.
EMENTA:
Estudo de métodos de exploração de paralelismos em computadores mono e multiprocessados. Discussão sobre os principais métodos de programação paralela e sua relação com a arquitetura/organização do hardware e a organização da memória. Estudo sobre a evolução das topologias de comunicação intrachip. Compreensão do papel da memória cache e métodos de acesso a periféricos no desempenho do sistema. Estudo de métodos de programação visando melhorar a eficiência das memórias cache. Utilização de benchmarks e análise comparativa de desempenho.
Carimbo e Assinatura da Unidade:
Página 2 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
Nº DA UNIDADE: 01 Nº DE HORAS EM PERCENTUAL: 20%
CONTEÚDO: Sistemas de Entrada e Saída (E/S) 1.1. Interfaces de comunicação
1.1.1. Síncrona 1.1.2. Assíncrona 1.1.3. Semi-síncrona
1.2. Mapeamento em portas e mapeamento em memória 1.3. Interface entre programa e dispositivo
1.3.1. E/S programada 1.3.1.1. Bloqueada
1.3.1.2. Polling
1.3.1.3. Interjeição 1.3.2. E/S não programada
1.3.2.1. Interrupção interna ao processador 1.3.2.2. Interrupção externa ao processador 1.3.3. Acesso direto à memória (DMA)
PROCEDIMENTOS E RECURSOS:
O objetivo desta unidade é estudar os mecanismos existentes de E/S e dar um panorama geral sobre as interfaces de comunicação encontradas no mercado. A unidade é ministrada de forma bottom-up, onde são observados aspectos físicos das interfaces de E/S, indo em direção a aspectos lógicos de como os dispositivos podem ser acessados pelo processador, bem como os mecanismos de software (e.g., polling
e interrupção) e o hardware necessário para que os acessos ocorram através de cada mecanismo. A exemplificação de sistemas de E/S será realizada com a apresentação de estudos de caso de processadores comerciais. Para a realização desta unidade serão utilizadas aulas expositivas instigando a participação do aluno com conjuntos de exercícios sendo discutidos ao final da apresentação de cada conteúdo. Deve ser realizado um trabalho prático com implementação de E/S para permitir que sejam aplicados na prática parte dos conceitos estudados. Para a melhor compreensão dos sistemas de entrada e saída, serão realizadas atividades em laboratório com experimentos práticos.
A unidade tem como referência de estudo as seguintes fontes: (i) Capítulos 3 e 7 do Stallings; (ii) Capítulos 2 e 3 do Tanenbaum; e (iii) Capítulo 10 do Monteiro.
Nº DA UNIDADE: 02 Nº DE HORAS EM PERCENTUAL: 30%
CONTEÚDO: Arquiteturas de Computação Paralela Intrachip 2.1. Introdução aos sistemas paralelos intrachip
2.1.1. Motivações para exploração de paralelismo 2.1.2. Níveis de Paralelismo / Grau de Paralelismo
Carimbo e Assinatura da Unidade:
Página 3 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
2.1.3. Complicadores, limitações
2.1.4. Medidas básicas de desempenho (speed-up, eficiência)
2.2. Classificação de sistemas paralelos
2.2.1. Classificação de Flynn (SISD, MISD, SIMD, MIMD)
2.2.2. Classificação segundo modelo de memória (UMA, NUMA, NORMA, ...) 2.2.2.1. Memória compartilhada versus troca de mensagem
2.3. Paralelismo em um único núcleo de processamento 2.3.1. Pipelines avançados 2.3.1.1. Pipeline superescalar 2.3.1.2. Superpipeline 2.3.1.3. Pipeline super-super 2.3.2. Processadores vetoriais 2.3.3. Arquitetura VLIW 2.3.4. Multithreading
2.4. Paralelismo com múltiplos núcleos de processamento PROCEDIMENTOS E RECURSOS:
O objetivo desta unidade é introduzir os conceitos de sinergia entre computação, comunicação e armazenamento com foco em aspectos da computação intrachip. Ao final da unidade, o aluno deverá compreender as classes computacionais intrachip com foco em fluxos de dado e instrução, bem como sob o prisma da hierarquia de memória. A unidade detalha alguns modelos arquiteturais com um ou mais núcleos de processamento para que o aluno possa compreender características e restrições de cada modelo. Para a realização desta unidade serão utilizadas aulas expositivas instigando a participação do aluno com conjuntos de exercícios sendo discutidos ao final da apresentação de cada conteúdo.
A unidade tem como referência de estudo as seguintes fontes: (i) Capítulos 12, 14, 17 e 18 do Stallings; (ii) Capítulos 3 e 6 do Henessy e Patterson; (iii) Capítulos 2, 3, 4, 5, 7, 8 e 9 do Baer; (iv) Capítulos 6 e 9 do Patterson e Henessy; (v) Capítulo 8 do Tanenbaum; e (vi) Capítulo 12 do Monteiro.
Nº DA UNIDADE: 03 Nº DE HORAS EM PERCENTUAL: 30%
CONTEÚDO: Sistemas de Armazenamento 3.1. Hierarquia de memória
3.1.1. Fundamentos, conceitos e características 3.1.2. Arquiteturas e organização
3.2. Memória cache
3.2.1. Conceitos, características e organização 3.2.2. Mapeamento de endereços
3.2.3. Políticas de atualização 3.3. Memória principal e virtual
Carimbo e Assinatura da Unidade:
Página 4 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
3.3.1. Conceitos, características e organização
3.3.2. Sistemas paginados, segmentados e segmento-paginados 3.4. TLB
3.5. Coerência de cache em sistemas multiprocessados PROCEDIMENTOS E RECURSOS:
O objetivo desta unidade é entender porque da necessidade de estruturar os sistemas de memória de uma forma hierárquica, bem como os mecanismos e arquiteturas empregadas e os fundamentos subjacentes. A unidade foca nos níveis de cache entre o processador e a memória principal, discutindo os modelos de mapeamento de endereços, e como as diversas tecnologias de cache são construídas para dar suporte a este endereçamento. A unidade também trata do problema de coerência de cache para sistemas multiprocessados que compartilham o endereçamento de memória, mas que têm caches privadas dentro da hierarquia de memória. Para a realização desta unidade serão utilizadas aulas expositivas instigando a participação do aluno com conjuntos de exercícios sendo discutidos ao final da apresentação de cada conteúdo. A unidade prevê a realização de um trabalho prático focando a hierarquia da memória em um único processador, onde o aluno deverá implementar diversos conceitos apreendidos na unidade. Estão previstas aulas em laboratório para a implementação do trabalho com acompanhamento/auxílio do professor.
A unidade tem como referência de estudo as seguintes fontes: (i) Capítulos 3 e 4 do Stallings; (ii) Capítulo 5 do Henessy e Patterson; (iii) Capítulos 2, 6 e 7 do Baer; (iv) Capítulo 7 do Patterson e Henessy; e (v) Capítulo 5 do Monteiro.
Nº DA UNIDADE: 04 Nº DE HORAS EM PERCENTUAL: 20%
CONTEÚDO: Arquiteturas de Comunicação Intrachip 4.1. Introdução às arquiteturas de comunicação intrachip
4.1.1. Conceitos e fundamentos 4.1.2. Classificação
4.1.3. Medidas básicas de desempenho (latência, vazão) 4.2. Estratégias de Comunicação 4.2.1. Estratégias de Roteamento 4.2.2. Estratégias de Conexão 4.2.3. Estratégias de Compartilhamento 4.3. Paradigmas de comunicação 4.3.1. Memória compartilhada 4.3.2. Troca de mensagens
Carimbo e Assinatura da Unidade:
Página 5 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
PROCEDIMENTOS E RECURSOS:
O objetivo desta unidade é entender quais são as arquiteturas de comunicação intrachip e como estas influenciam no desempenho das aplicações. O aluno deve entender as classes de arquiteturas de comunicação, sabendo para que tipo de arquitetura de processador/memória cada classe é aplicável. Também fazem parte do escopo desta unidade, a compreensão de aspectos com escalabilidade, vazão, latência e consumo de energia, que são requisitos imprescindíveis para as atuais e futuras arquiteturas de processadores. Para a realização desta unidade serão utilizadas aulas expositivas instigando a participação do aluno com conjuntos de exercícios sendo discutidos ao final da apresentação de cada conteúdo.
A unidade tem como referência de estudo as seguintes fontes: (i) Capítulos 3 do
Stallings; (ii) Capítulos 7 e 8 do Henessy e Patterson; e (iii) Capítulo 3 do Tanenbaum.
AVALIAÇÃO:
G1 = (0,35 × P1) + (0,35 × P2) + (0,3 × T) Onde:
P1 – Prova compreendendo os conteúdos das unidades 1 e 2 P2 – Prova compreendendo os conteúdos das unidades 3 e 4 T – Média aritmética dos trabalhos aplicados ao longo do semestre BIBLIOGRAFIA:
• BÁSICA:
1. STALLINGS, W. Arquitetura e organização de computadores. 8a ed., Pearson, 2010, 625p.
2. BAER, J.-L. Arquitetura de Microprocessadores – do Simples Pipeline ao Multiprocessador em Chip. 1a ed., LTC, 2013, 326p.
3. HENESSY, J; PATTERSON, D. Arquitetura de computadores: uma abordagem quantitativa. 5a ed., Campus, 2014, 744p.
• COMPLEMENTAR:
1. TANENBAUM, A.; AUSTIN, T. Organização estruturada de computadores. 6a ed., Capítulo 8 - Arquitetura de Computadores Paralelos, pp. 436-518, Pearson, 2013.
2. PATTERSON, D.; HENNESSY, J. Organização e projeto de computadores: a interface hardware/software. 4a ed., Elsevier, 2014, 709p.
3. MONTEIRO, M. Introdução à organização de computadores. 5a ed., LTC, 2012, 686p.
Carimbo e Assinatura da Unidade:
Página 6 de 6
Emitido em: 02/08/17 - 19:24
Campus Central
Av. Ipiranga, 6681 – Prédio 32 -CEP: 90619-900 Fone: (51) 3320-3558 – Fax (51) 3320–3758 E-mail: informatica@pucrs.br
www.pucrs.br/facin
5. PARHAMI, B. Computer Architecture: From Microprocessors to Supercomputers. Oxford University Press, 2014, 576p.
• SOFTWARE DE APOIO:
1. ISE ou ModelSim - ferramentas de simulação de circuitos digitais em linguagem
VHDL. Estas ferramentas estão disponíveis nos laboratórios da FACIN.
2. MARS (http://courses.missouristate.edu/kenvollmar/mars). Simulador gratuito de