ARQUITETURA DE COMPUTADORES Prof. Kleber Carrhá
academico@carrha.com.br www.carrha.com.br
LIVRO 1
LIVRO 2
NICOLAS CARTER – Editora bookman – coleção Schaum
Inicio – aula 01
OBS.: Os slides a seguir estão de acordo com os livros de arquitetura, porem podem não seguir a ordem do livro, mas o conteúdo abordado está no livro adotado pela instituição, os slides são apenas apontamentos dos pontos principais, um estudo detalhado deve ser
obtido pelo livro de referencia, não estude somente pelos slides.
Prof. Kleber Carrhá
Algumas Definições
• A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo de dados – 32 bits para um inteiro).
• A Organização de Computadores trata da estrutura interna que não é visível para o programador (ex.
frequência do relógio ou tamanho da memória física).
• Existe um conceito de níveis na arquitetura de computadores. A ideia básica é que existem muitos níveis nos quais o computador pode ser considerado, do nível mais alto, onde o usuário executa programas, ao nível mais baixo, que consiste de transistores e fios.
Níveis de Máquinas
• Existe um certo número de níveis em um computador (o número exato é discutível), do nível do usuário descendo ao nível do transistor.
• Descendo a partir do nível mais alto, os níveis se tornam
menos abstratos e mais da estrutura interna do computador se torna visível.
Divisão
Divisão
O Modelo de von Neumann
O modelo de von Neumann possui cinco componentes principais:
(1) unidade de entrada; (2) unidade de saída; (3) unidade lógica aritmética; (4) unidade de memória; (5) unidade de controle.
A Lei de Moore
O poder computacional que se compra pelo mesmo preço dobra a cada 18 meses.
• O planejamento de um projeto deve considerar esta observação seriamente: uma inovação arquitetural que está sendo desenvolvida, para o benefício esperado de quadruplicar o desempenho em três anos pode não ser relevante:
as arquiteturas existentes então podem de qualquer forma oferecer o quádruplo do desempenho;
estas arquiteturas podem ser completamente diferentes do tipo de arquitetura que a inovação necessitaria para ser efetiva.
Capitulo 2 – Evolução e
Desempenho de Computadores
Arquitetura e Organização de Computadores William Stallings 8ª Ed.
Página 12
Máquina de Cálculo de Pascal
• Executa operações aritméticas básicas (1ª metade do século XVII). Não contém o que se consideram as partes básicas de um computador.
• Apenas no século XIX Babbage reuniu os conceitos de controle mecânico e cálculo mecânico numa máquina que possui as partes básicas de um computador digital.
(Source: IBM Archives photograph.)
História dos computadores
Primeira Geração – Computadores a Válvulas
Segunda Geração – Transistores e Sistema de Lote Terceira Geração – CIS e multiprogramação
Quarta Geração – Computadores Pessoais
Os processadores 386 não tinham cache interna, e nem
precisavam dela, enquanto operavam com até 20 MHz. Com o lançamento de versões de 25, 33 e 40 MHz, o baixo
desempenho da memória DRAM obrigou os fabricantes a lhe acrescentarem memória cache. Esta cache não era localizada dentro do microprocessador, como ocorria com o 486. Era formada por chips de memória SRAM, e era chamada de:
• Cache externa
• Cache secundária
• Cache de nível 2
O primeiro microprocessador a utilizar memória cache foi o 486. Em seu interior existem 8 KB de memória
estática super veloz, operando como cache. Este tipo de cache, localizada dentro do processador, é
chamada de:
• Cache interna
• Cache primária
• Cache de nível 1
Coprocessadores aritméticos
Os processadores 8086 e 8088 podiam operar em conjunto com um chip especial chamado 8087. É comum chamar este chip de
"coprocessador matemático". Era uma espécie de processador auxiliar, especializado em realizar cálculos com números reais em alta velocidade. Enquanto o 8086 e o 8088 faziam apenas adição, subtração, multiplicação e divisão de números inteiros de 32 bits, o 8087 podia realizar essas mesmas operações, e ainda uma grande quantidade de funções algébricas (raiz
quadrada, logaritmo, exponencial, etc), trigonométricas (seno, tangente, arco tangente, etc). Programas que utilizam grandes quantidades de cálculos deste tipo ficavam incrivelmente mais velozes quando usavam o 8087. Normalmente, os softwares eram fornecidos simultaneamente em duas versões, uma para operar através do 8086/8088, e outra para usar o 8087. Quando o PC não tinha o 8087 instalado, mesmo assim podia realizar
esses cálculos, mas estes eram feitos por etapas, o que era muito mais demorado.
Os programas que se beneficiam de um coprocessador matemático são os seguintes:
• CAD (Computer Aided Design)
• Programas para engenharia
• Programas científicos
• Programas que geram figuras tridimensionais
Ao lançar o 486, a Intel finalmente colocou o coprocessador matemático dentro de próprio microprocessador. O chamado 486DX possui um
coprocessador matemático interno, enquanto o 486SX não o possui.
Outros processadores mais avançados como o Pentium também
possuem o coprocessador matemático interno. O mesmo ocorre com os processadores 5x86 da AMD e da Cyrix, com o AMD-K5 e com o Cyrix 6x86.
HISTÓRICO DOS PROCESSADORES
Intel 4004
• Barramento de 4-bits
• Clock 740 KHz
• Primeiro processador em um chip simples
• Primeiro disponível comercialmente.
• Originalmente para ser usado em calculadoras.
Intel 4040
• Sucessor do Intel 4004.
• Barramento de 8 bits
• Clock de 500 a 740 kHz
Intel 8008
• Barramento de 8 bits
• Clock: 0.2 MHz a 0.8 MHz
Intel 8080
• Barramento de 8 bits
• Clock 2 MHz
Intel 8085
• Barramento de 8 bits
• Clock: 3, 5 e 6 MHz
Intel 8086
• Primeiro processador com barramento de 16 bits.
• Clock de 5 a 10 MHz,
Intel 8088
• Internamente quase idêntico ao 8086
• Externamente tinha barramento de dados de 8 bits ao invés de 16.
• versão "júnior" do 8086 pelo fato de todo o
hardware da época usar barramento de 8 bits
Intel 286
• Barramento de 16 bits
• Clock de 6 a 25 MHz
Intel 386
• Barramento de 32 bits
• Clock: 12 a 40 MHz
Intel 486
• Barramento de 32 bits
• Clock de 16 a 100 MHz
• Inovação: coprocessador matemático interno, e 8 kB de memória cache interna;
AMD 586
• Barramento de 32 bits
• Clock interno de 133 MHz e externo de 33 MHz
• Cache interna de 16 kB
• Coprocessador matemático compatível com Intel
Cyrix 586
• Barramento de 32 bits
• Clock interno de 100 MHz com clock externo de 50 ou 33 MHz
• E clock interno de 120 MHz com clock externo de 40 ou 60 MHz
• Cache interna de 16 kB
Pentium
• Barramento de dados: 32 bits
• Barramento de endereços: 64 bits
• Clock de 60 e 66 MHz
• Cache interna de 16 bits
• Coprocessador matemático de alto desempenho
• Voltagem de 5 volts, mas pelo calor excessivo sua
operação foi alterada para funcionar a 3 volts.
Cyrix 686
• Mesmas características do Pentium
• Barramento de dados: 32 bits
• Barramento de endereços: 64 bits
• Clock de 60 e 66 MHz
• Cache interna de 16 bits
• Coprocessador matemático de alto desempenho
• Voltagem de 5 volts, mas pelo calor excessivo sua operação foi alterada para funcionar a 3 volts.