Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Arquitetura e Organização de Computadores I Ementa 1 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG) Poliana Aparecida Corrêa de Oliveira polianacorrea@decom.cefetmg.br Arquitetura e Organização de Computadores I Ementa 2 Poliana Corrêa (polianacorrea@decom.cefetmg.br) Formação Acadêmica � Mestrado em Informática • PUC Minas (2012) • Arquitetura de Computadores � Graduação em Sistemas de Informação • PUC Minas (2009) � Técnico em Eletrônica Industrial • CEFET-MG (2004) Experiência profissional � Professora (Computação) • Ensino Superior • Ensino Técnico � Fábricas de Software • Analista de Qualidade (2012) • Analista de Testes (2010) • Analista de Sistemas (2008) Arquitetura e Organização de Computadores I Ementa 3 � Arquiteturas manycore – múltiplos núcleos de processamento ÁREA DE PESQUISA Arquitetura e Organização de Computadores I Ementa 4 � Redes-em-Chip – Networks-on-Chip (NoC) ÁREA DE PESQUISA Arquitetura e Organização de Computadores I Ementa 5 � Aplicações Paralelas ÁREA DE PESQUISA Arquitetura e Organização de Computadores I Ementa 6 VOCÊ JÁ PAROU PARA PENSAR... � Como um computador funciona? 2 Arquitetura e Organização de Computadores I Ementa 7 VOCÊ JÁ PAROU PARA PENSAR... � O quanto o computador evoluiu nos últimos anos? Arquitetura e Organização de Computadores I Ementa 8 VOCÊ JÁ PAROU PARA PENSAR... � O quanto o computador evoluiu nos últimos anos? Arquitetura e Organização de Computadores I Ementa 9 VOCÊ JÁ PAROU PARA PENSAR... � Que as pessoas tem se tornado dependentes do computador? Arquitetura e Organização de Computadores I Ementa 10 VOCÊ JÁ PAROU PARA PENSAR... � Que o computador tem mudado de formato e função? Arquitetura e Organização de Computadores I Ementa 11 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Mas o que arquitetura e organização de computadores tem a ver com isso? Arquitetura e Organização de Computadores I Ementa 12 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES � Arquitetura e Organização de Computadores � O que é? 3 Arquitetura e Organização de Computadores I Ementa 13 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES “O termo arquitetura de computadores refere-se às características existentes em um projeto de máquina para executar as tarefas escritas em alguma linguagem de programação (estudo das máquinas que executam programas, ou seja computadores). O conhecimento desta área é fundamental não apenas para aqueles que vão projetar novos computadores, mas também para aqueles que os utilizarão. O conhecimento dos princípios básicos de funcionamento dos computadores e da tecnologia embutida nestes permite um uso mais eficiente dos recursos e a determinação das classes de problemas que podem ser solucionadas com a tecnologia presente. ” Trecho da diretriz curricular do MEC para cursos da área de computação e informática Arquitetura e Organização de Computadores I Ementa 14 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES � Então, arquitetura e organização de computadores é o estudo do hardware dos computadores? Arquitetura e Organização de Computadores I Ementa 15 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES � Arquitetura e organização de computadores NÃO envolve somente o hardware!!! É a interface entre o hardware e o software Arquitetura e Organização de Computadores I Ementa 16 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Hardware � Analogia com a construção civil Software + = Arquitetura do Computador Projeto e organização de hardware e software para executar programas Arquitetura e Organização de Computadores I Ementa 17 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES � Arquitetura de Computador refere-se aos atributos de um sistema visíveis a um programador ou, em outras palavras, aqueles atributos quer possuem um impacto direto sobre a execução lógica de um programa � Exemplos: conjunto de instruções, número de bits de endereçamento, tipos de dados, mecanismos de E/S, técnicas de endereçamento � Questão de projeto arquitetural � A máquina projetada terá ou não uma instrução de multiplicação? Arquitetura e Organização de Computadores I Ementa 18 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES � Organização de Computador refere-se às unidades operacionais e suas interconexões que realizam as especificações arquiteturais � Exemplos: detalhes do hardware transparentes ao programador, como sinais de controle, interfaces entre o computador e periféricos, tecnologia de memória, etc. � Questão organizacional � Implementação da instrução por uma unidade multiplicadora ou uso repetido da unidade de adição 4 Arquitetura e Organização de Computadores I Ementa 19 POR QUE ESTUDAR AOC? � “Arquitetura de computador é um componente chave da engenharia da computação, e o engenheiro de computador deverá ter um conhecimento prático desse assunto. Ela trata de todos os aspectos do projeto, da organização e da integração da CPU no próprio sistema de computação. A arquitetura se estende para cima no software do computador, pois a arquitetura de um processador precisa cooperar com o sistema operacional e o software do sistema. É difícil projetar bem um sistema operacional sem o conhecimento da arquitetura básica. Além do mais, o projetista do computador precisa ter um conhecimento do software a fim de implementar a arquitetura ideal.” Computer Engineering 2014 Curriculum Guidelines Arquitetura e Organização de Computadores I Ementa 20 POR QUE ESTUDAR AOC? � Alguns exemplos de motivos � Selecionar o computador mais econômico para ser usado por toda uma grande organização � Muitos processadores não são usados em PCs ou servidores, mas em sistemas embarcados, como por exemplo um controlador inteligente da eletrônica de um automóvel � Suporte de conceitos de arquitetura em outras áreas de aplicação, como sistema operacional e linguagem de programação � Se você enxergar o computador como uma “caixa preta”, provavelmente você não vai conseguir otimizar os seus sistemas de software Arquitetura e Organização de Computadores I Ementa 21 POR QUE ESTUDAR AOC? � Computação é uma área de mudanças rápidas � Tubo de vácuo -> transistor -> CI -> VLSI � Dobrando a cada 1.5 anos • Capacidade de memória • Velocidade do processador (Avanços tecnológicos & organização) � Coisas que serão aprendidas � Como computadores funcionam: fundamentação básica � Como analisar seu desempenho (ou como não se fazer isso!) � Questões que influenciam computadores recentes (caches, pipelines) � Por que aprender isso? � Você quer ser um “engenheiro da computação” � Você quer construir softwares (necessidade de desempenho) � Você precisa tomar decisões ou oferecer “expertise” na área Arquitetura e Organização de Computadores I Ementa 22 EMENTA DA DISCIPLINA DE AOC1 � EMENTA � CARGA HORÁRIA � 60 horas = 4 aulas semanais / Terças e Quintas: 14:50h às 16:30h Histórico dos computadores digitais; níveis de abstração; blocos funcionais: processadores, memórias primária e secundária, entrada/saída; nível lógico-digital: circuitos digitais básicos, circuitos de memória, circuitos de microprocessadores e barramentos, interfaceamento; nível de micro-programação: micro-arquitetura, macro-arquitetura, micro-programas, exemplo de uma micro-arquitetura. Histórico dos computadores digitais; níveis de abstração; blocos funcionais: processadores, memórias primária e secundária, entrada/saída; nível lógico-digital: circuitos digitais básicos, circuitos de memória, circuitos de microprocessadores ebarramentos, interfaceamento; nível de micro-programação: micro-arquitetura, macro-arquitetura, micro-programas, exemplo de uma micro-arquitetura. Arquitetura e Organização de Computadores I Ementa 23 INTERDISCIPLINARIEDADES � Pré-requisitos � Sistemas Digitais para Computação � Laboratório de Sistemas Digitais para Computação � Co-requisitos � Laboratório de Arquitetura e Organização de Computadores I � Disciplinas para as quais é pré-requisito / co-requisito � Arquitetura e Organização de Computadores II � Laboratório de Arquitetura e Organização de Computadores II Arquitetura e Organização de Computadores I Ementa 24 OBJETIVOS 1) Selecionar benchmarks e utilizá-los para avaliação de desempenho de computadores. 2) Conhecer linguagem de máquina para programação de processadores. 3) Avaliar processadores de acordo com o seu conjunto de instruções e os seus modos de endereçamento. 4) Entender e avaliar unidades lógicas e aritméticas. 5) Conhecer o fluxo de dados e de instruções dentro de um processador. 5 Arquitetura e Organização de Computadores I Ementa 25 OBJETIVOS 1 ) Se le cio n ar b en chma rks e u til i zá-los para aval iação d e de semp en ho d e comp utad ore s. 2 ) C o n h e ce rl ingu age m de máq u ina para p ro gramação d e p roce ssad ore s. 3 ) Aval iar p ro ce ssad o re s de acord o co mo se u co njunto de instru çõe se os seu smo do s de en de reçame n to. 4 ) En te n d e r e aval iar u n idad es lógicas e ari tméticas. 5) Conhecer o fluxo de dados e de instruções dentro de um processador. 6) Entender técnicas para a melhoria de desempenho em processadores (pipeline). 7) Entender e avaliar o desempenho de interfaces de comunicação entre o processador e os periféricos. 8) Compreender sistemas embutidos. Arquitetura e Organização de Computadores I Ementa 26 PLANO DE ENSINO � UNIDADES DE ENSINO � Unidade 1: Tecnologias computacionais. � Perspectiva histórica. � Circuitos integrados. � Falhas em sistemas computacionais. � Unidade 2: Avaliação de desempenho de computadores. � Métricas e desempenho. � Programas e benchmarks para avaliação de desempenho. � Análise de casos reais. Arquitetura e Organização de Computadores I Ementa 27 PLANO DE ENSINO � Unidade 3: Metodologias de projetos de sistemas computacionais. � Projeto em nível de processadores. � Projeto em nível de transferência de registradores (blocos funcionais). � Projeto em nível de portas lógicas. � Unidade 4: Linguagem de Máquina. � Instruções aritméticas, de desvio de fluxo e de transferência de dados. � Exemplos de conjuntos de instruções: PowerPC, MIPS e 80x86.. Arquitetura e Organização de Computadores I Ementa 28 PLANO DE ENSINO � Unidade 5: Aritmética Computacional. � Operações básicas: adição e subtração. � Projeto de unidades lógicas e aritméticas. � Operações de multiplicação e divisão. � Operações de ponto flutuante. � Unidade 6: Caminho de dados e controle em um processador � Projeto de um caminho de dados. � Projeto de unidades de controle. � Microprogramação. Arquitetura e Organização de Computadores I Ementa 29 PLANO DE ENSINO � Unidade 7: Princípios Básicos de Pipeline � Unidade de controle em um processador com pipeline. � Tipos de conflitos: dados, adiantamentos de resultados, paradas e desvios condicionais. Exceções. � Unidade 8: Interfaces entre Processadores e Periféricos. � Características dos dispositivos. � Características dos barramentos. � Medidas de desempenho. � Unidade 9: Introdução a Sistemas Embutidos. � Princípios básicos. � Projeto de hardware e software. Arquitetura e Organização de Computadores I Ementa 30 DISTRIBUIÇÃO DE PONTOS Distribuição de Pontos 1ª Avaliação 25 2ª Avaliação 25 3ª Avaliação 25 Listas de exercícios 9 Seminários 8 Trabalho 1 4 Trabalho 2 4 Total 100 6 Arquitetura e Organização de Computadores I Ementa 31 DISTRIBUIÇÃO DE PONTOS � Avaliação de Reposição / Substitutiva / Suplementar � Por motivo de ausência em uma das avaliações � Compreende todo o conteúdo abordado durante o semestre � Exame especial � Alunos que não obtiverem o total de 60 pontos � Compreende todo o conteúdo abordado durante o semestre � Frequência � Mínimo de 75% das aulas lecionadas (para aprovação na disciplina) � Abono de falta e reposição de atividades apenas mediante apresentação de atestado médico Arquitetura e Organização de Computadores I Ementa 32 � AVALIAÇÃO I � 23/04/2015 – 25 PONTOS – INDIVIDUAL E SEM CONSULTA � AVALIAÇÃO II � 02/06/2015 – 25 PONTOS – INDIVIDUAL E SEM CONSULTA � AVALIAÇÃO III � 02/07/2015 – 25 PONTOS – INDIVIDUAL E SEM CONSULTA � AVALIAÇÃO REPOSITIVA � 07/07/2015 – 25 PONTOS – INDIVIDUAL E SEM CONSULTA � EXAME ESPECIAL � 14/07/2015 – 100 PONTOS – INDIVIDUAL E SEM CONSULTA CRONOGRAMA *Este cronograma pode sofrer alterações ao longo do semestre Arquitetura e Organização de Computadores I Ementa 33 BIBLIOGRAFIA DE REFERÊNCIA 1. PATTERSON, D. A.; HENNESSY, J. L. Organização e projeto de computadores: a interface hardware/sofware. 4. ed. Rio de Janeiro: Campus, 2014. 2. BRYANT, Randal E.; O’HALLARON, David R. Computer Systems, A programmer’s Perspective. 2 ed. Pearson, 2010. 3. HENNESSY, John L.; PATTERSON, David A. Arquitetura de Computadores - Uma Abordagem Quantitativa, 5. Ed., Rio de Janeiro: Campus, 2014. Arquitetura e Organização de Computadores I Ementa 34 BIBLIOGRAFIA DE REFERÊNCIA 4. TANENBAUM, Andrew S. Organização Estruturada de Computadores. Rio de Janeiro: Pearson, 6ª edição, 2013. 5. STALLINGS, William. Arquitetura e Organização de Computadores. 8. Ed. São Paulo: Pearson Prentice Hall, 2010. 6. PARHAMI, Behrooz. Arquitetura de Computadores: de microcomputadores a supercomputadores. 1. Ed. São Paulo: McGraw-Hill, 2008. Arquitetura e Organização de Computadores I Ementa 35 BIBLIOGRAFIA DE REFERÊNCIA 7. NULL, Linda; LOBUR, Julia. Princípios Básicos de Arquitetura e Organização de Computadores. 2. Ed. Porto Alegre: Bookman, 2010.8. VAHID, Frank. Digital Design with RTL Design, VHDL, and Verilog, 2 ed. Wiley, 2010. Arquitetura e Organização de Computadores I Ementa 36 DÚVIDAS
Compartilhar