Você está na página 1de 12

Arquitetura de Computadores

CAPTULO 1 INTRODUO ARQUITETURA DE COMPUTADORES 1.1 Introduo Computador: Mquina programvel, de propsito geral, que processa informao. Seqncia de instrues (de uma dada linguagem de programao) que operam sobre dados, realizando um processamento de informao especfico. Operao que realiza algum processamento bsico de informao. Exemplo: somar dois nmeros, armazenar um dado, etc. (Linguagem de Programao). Conjunto de instrues associadas a uma sintaxe e uma semntica especficas. COMPUTADOR (HARDWARE + SOFTWARE) OPERADOR (HUMANO) E/S CPU

Programa:

Instruo:

Linguagem:

MEMRIA

Linguagem Humana: Vaga. Complexa. Simblica.

Linguagem de Mquina: Precisa. Simples. Numrica.

Figura 1.1 O problema de comunicao humano-computador. Problema: Como expressar as especificaes de processamento de informao definidas por um operador humano de uma forma que possa ser entendida pelo computador?

Arquitetura de Computadores

Soluo:

Lh ... Li ... L2 L1 L0

onde, Lh = Linguagem humana, Li = linguagem intermediria, (i = 1, 2, ...), L0 = Linguagem entendida pelo hardware. A linguagem Li+1 mais complexa que a linguagem Li. Mquina Virtual de Nvel i: Mquina virtual Mi que possui uma linguagem associada Li cujas instrues operam sobre um espao de memria virtual associado. Converso Li+1 Li: Traduo: Programa Tradutor (no nvel Li) converte um programa escrito na linguagem Li+1 (Programa Fonte) em um programa na linguagem Li (Programa Objeto). O programa tradutor pode ser: Compilador. Montador. Interpretao: Programa Interpretador (no nvel Li) converte cada instruo de um programa em Li+1 para a sua equivalente em Li, executando-a na mquina Mi imediatamente aps a sua converso. As instrues so convertidas e executadas uma a uma, seqncialmente. Mquina Multi-Nvel: Computador pode ser visto como um conjunto hierrquico de mquinas virtuais. A mquina Mi, mais simples, interpreta ou traduz instrues ou programas da mquina Mi+1, mais complexa. De modo geral: Nveis baixos: linguagens de natureza numrica, interpretadas. Nveis altos: linguagens de natureza simblica, traduzidas. Vantagens da estruturao em Nveis: Para o usurio: o programador de nvel i no precisa conhecer detalhes das linguagens de nveis inferiores ao mesmo. Para o projetista: o computador pode ser concebido de uma maneira estruturada, modular e compreensvel, simplificando o projeto. Arquitetura: Aspectos visveis ao usurio. Exemplo: tipos de dados, tipos de instrues, organizao de memria, organizao de endereamento, relao entre instrues e organizao de memria, etc.

Arquitetura de Computadores

Nvel n, Mquina Virtual Mn, Linguagem de Mquina Ln

Programas em Ln interpretados por Interpretador rodando num nvel inferior ou traduzidos para uma linguagem de nvel inferior.

Nvel 3, Mquina Virtual M3, Linguagem de Mquina L3

Nvel 2, Mquina Virtual M2, Linguagem de Mquina L2

Programas em L2 interpretados por Interpretador rodando em M1 ou M0 ou traduzidos para L1 ou L0.

Nvel 1, Mquina Virtual M1, Linguagem de Mquina L1

Programas em L1 interpretados por Interpretador rodando em M0 ou traduzidos para L0.

Nvel 0, Mquina Real M0, Linguagem de Mquina L0

Programas em L0 executados diretamente pelos circuitos lgicos

Figura 1.2. A Mquina Multi-Nvel.

Arquitetura de Computadores

Nveis numa Mquina Real: L0: Nvel de Lgica Digital - Hardware. Os circuitos lgicos interpretam as instrues do nvel 1 (microinstrues). L1: Nvel de Microprogramao. Microprograma interpreta "Macroinstrues" (Instrues do nvel 2). Microprograma composto por microinstrues simples (conjunto tipicamente < 20). Movimentao de dados, teste de dados, operaes lgicas e aritmticas, etc. L2: Nivel de Linguagem de Mquina Convencional. Instrues interpretadas pelo microprograma. Interface entre compilao e interpretao. L3: Nvel de Sistema Operacional. Instrues de L2 mais instrues que automatizam as aes do operador. Gerenciamento de memria, execuo em paralelo, E/S em nvel de arquivos, etc. L4: Nvel de Linguagem de Montagem. Representao simblica da Linguagem de Mquina, traduzida por programa Montador. L5: Nvel de Linguagens orientadas a problema. Linguagens de alto nvel (C, LISP, Fortran, etc.). Traduzidas por programa Compilador.

Arquitetura de Computadores

Nvel 5, Linguagens Orientadas a Problema Traduo (Compilador). Nvel 4, Linguagem de Montagem Traduo (Montador). Nvel 3, Sistema Operacional Interpretao Operacional). Nvel 2, Arquitetura do Conjunto de Instrues Interpretao (microprograma) ou execuo direta. Nvel 1, Microarquitetura O Hardware o Interpretador. Nvel 0, Lgica Digital parcial (Sistema

Figura 1.3. Nveis tpicos numa mquina real.

Arquitetura de Computadores

1.2 Evoluo das Arquiteturas de Computadores Gerao Zero Computadores Mecnicos (?1945) Pr-Histria: Clculo Manual. Idia de Nmero. Histria antiga (Oriente): baco. Napier (Sculo XVII). Logaritmos - Rgua de Clculo. Pascal (sculo XVII). Calculadora mecnica (soma e subtrao). Leibnitz (sculo XVII). Calculadora mecnica (multiplicao e diviso). Charles Babbage (Sculo XIX). Mquina Diferencial dedicada para clculos nuticos (algoritmo de diferenas finitas). Mecnica. Sada em prato de cobre perfurado. Charles Babbage (Sculo XIX). Mquina Analtica (mecnica, no construda). Mquina de propsito geral, programvel linguagem de montagem simples). Primeira programadora: Ada Lovelace. Caractersticas: Unidade de Entrada (leitura de cartes perfurados). Unidade de Armazenamento (memria de 1.000 palavras de 50 dgitos decimais). Unidade de Processamento (Engenho). Aceita operandos da unidade de armazenamento, realiza as quatro operaes, armazena resultado na unidade de armazenamento. Admitia instrues de teste e desvio condicional. Unidade de Sada (impressa e perfurada em cartes). Konrad Zuse (Alemanha, 1930): mquinas de calcular automticas eletromecnicas (rels). Destrudas no bombardeio aliado a Berlim, no influenciaram mquinas posteriores. Atanasoff (EUA, Iowa State College): mquina de calcular eletromecnica (no chegou a funcionar). baseada em aritmtica binria. Memria baseada em capacitores (precursora das memrias DRAM). Stibbitz (EUA, Bell Labs): mquina de calcular eletromecnica. Demonstrao pblica de funcionamento em 1940. Aiken (EUA, Harvard, 1944): Mark I, Computador eletromecnico baseado nas idias de Babbage, financiado pela IBM. Caractersticas: Memria de 72 palavras de 23 dgitos decimais. 6 segundos para executar uma instruo. Entrada e Sada atravs de fita de papel perfurada. Mark II, sucessor do Mark I.

Arquitetura de Computadores

Primeira Gerao Vlvulas (1945-1955) - Nvel de Lgica Digital (hardware) e Nvel de Linguagem de Mquina Covencional (nvel ISA - Instruction Set Architecture). - Alan Turing (Inglaterra, 1943): COLOSSUS, 1o computador eletrnico digital. Desenvolvido para quebrar cdigos do almirantado alemo gerados pela mquina ENIGMA. Mantida em segredo por 30 anos, no influenciou mquinas subseqentes. - John Mauchley, Eckert, Von Newmann (EUA, 1946): ENIAC (Electronic Numerical Integrator and Computer). Construdo com base nos trabalhos de Atanasoff e Stibbitz para clculo de tabelas de direo de tiro de artilharia pesada. Algumas caractersticas: 18.000 vlvulas, 1.500 rels, 30 toneladas, 140 quilowatts. 20 registradores de 10 dgitos decimais cada. Programao por hardware (chaves e soquetes). - Mauchley e Eckert divulgam publicamente o ENIAC, outros grupos desenvolvem computadores: EDSAC (Wilkes, 1949), JOHNIAC (Rand Corporation), ILLIAC (Univ. de Illinois), MANIAC (lab. de Los Alamos), WEIZAC (Israel). - Mauchley e Eckert abandonam o projeto EDVAC para fundar a empresa que viria a ser a UNISYS. - Von Newmann desenvolve o projeto IAS (Mquina de Von Newmann, usada primeiro no EDSAC). Conceitos que so usados at os dias de hoje. Caractersticas: Programa armazenado em memria. Aritmtica binria inteira. Componentes: Memria, Unidade Lgica Aritmtica, Unidade de Controle, Dispositivos de Entrada e Sada. Memria de 4096 palavras de 40 bits. Palavras armazenam instrues de 20 bits ou inteiros com sinal (40 bits). Formato de instruo: tipo de instruo (8 bits), operando (endereo de 12 bits). Acumulador, registrador especial de 40 bits na ULA. Instruo tpica combina palavra na memria com palavra no acumulador e armazena resultado no mesmo.

Arquitetura de Computadores

Entrada Sada

Unidade Lgica Aritmtica Acumulador

Unidade de Controle

Memria

Figura 1.4. A Mquina de Von Newmann. - Whirlwind I (MIT). Mquina de 16 bits para controle de processos. Levou ao desenvolvimento das memrias de ncleo magntico e ao primeiro minicomputador comercial. - IBM, em 1953, lana o IBM 701 (2 K palavras de 36 bits, duas instrues por palavra). D incio a uma srie de computadores cientficos ponto flutuante a vlvula. (ltimo, IBM 709, 1958). - Somente governos e grandes corporaes tinham condies de adquirir computadores.

Arquitetura de Computadores

Segunda Gerao Transistores (1955-1965) - Em 1951 Wilkes lana a idia do nvel de microprogramao. O projeto baseado nesta idia permite simplificar o hardware e aumentar a complexidade do conjunto de instrues. Diretriz de projeto difundida nos anos 60 e 70. - Inveno do transistor (Bell Labs, 1948). Reduo dramtica em tamanho, consumo, tempo de processamento e custo. - Computador pode ser adquirido por Departamentos de Empresas. - Minicomputador transistorizado = dezenas de milhares de US$, mainframe a vlvula = milhes de US$. - Olsen (MIT): TX0 (Transistorized eXperimental computer 0). Mquina de 16 bits, da linha do Whirlwind I. - Olsen funda a DEC (Digital Equipment Corporation), 1957. - DEC lana o PDP1 (1961). Caractersitcas: US$ 120.000. 4 K palavras de 18 bits. Clock de 200 kHertz (5 microssegundos). Video com 512x512 pixels. Primeiro videogame. - DEC lana o PDP8, sucesso de vendas (50.000 unidades). Barato: US$ 16.000. Mquina de 12 bits com barramento nico (Omnibus), adotado pelas mquinas subseqentes. - IBM lana o 709 seguido do 7094, com clock de 2 microssegundos e memria de ncleos magnticos de 32 K palavras de 36 bits, dominando o mercado de computao cientfica. - IBM lana o 1401, pequeno e barato, para aplicaes comerciais. Entrada e Sada em fitas magnticas ou cartes perfurados. Memria de 4 K posies de 8 bits. Palavras e registradores de tamanho varivel. - Cray, da CDC (Control Data Corporation), lana em 1964 o CDC6600 (aplicaes cientficas). Caractersticas: Cerca de 10 vezes mais rpido que o 7094. Esquema de processamento paralelo: mdulos indpendentes para soma, multiplicao, etc. (Execuo de at 10 instrues simultneas). conjunto de pequenos processadores para gerncia de tarefas e processamento de Entrada/Sada. - A Burroughs lana o B5000, projetada para rodar eficientemente programas escritos em Algol.

Arquitetura de Computadores

- Surge o nvel de Sistema Operacional (por volta de 1960): Automatizam-se procedimentos realizados pelo operador (compilao, carregamento e execuo do programa, etc.). Introduzem-se novas instrues: macros do sistema ou chamadas ao supervisor (chamadas de sistema). Inicialmente sistemas tipo batch. No incio dos anos 60 surgem os Sistemas de Tempo Compartilhado, que permitem a comunicao simultnea de vrios programadores diretamente com o computador a partir de vrios terminais. Terceira Gerao Circuitos Integrados (1965-1980) - Em 1958, Noyce desenvolve um processo de integrao de circuitos eletrnicos em substrato de silcio. Reduo dramtica em tamanho, consumo, tempo de processamento e custo. - Migrao de funcionalidades para o micro cdigo: Facilidade de incorporar novas instrues: multiplicao e diviso de inteiros, aritmtica em ponto flutuante, manipulao de strings, etc. Inflao dos conjuntos de instrues (perda de desempenho). Novas funcionalidades: clculo matricial, facilidades de relocao de programas na memria, sistemas de interrupo, troca de contexto entre processos, etc. - Em 1964, substituindo o 7094 (aplicaes cientficas) e o 1401 (aplicaes comerciais), duas mquinas radicalmente diferentes, a IBM lana uma nica linha de novos produtos, o System/360: Implementado usando circuitos integrados. Famlia de computadores (baseadas na mesma linguagem de montagem). Compatibilidade e reutilizao de software. Capacidade de Multiprogramao: execuo simultnea de vrios programas. O uso de microprogramao facilitou o surgimento da capacidade de emulao de outras mquinas, permitindo a reutilizao de software. 16 registradores de 32 bits para operaes aritmticas. Memria orientada a byte. Grande espao de endereamento (224 bytes = 16 M bytes) - A DEC introduz a srie PDP11 de 16 bits, registradores de 32 bits e memria orientada a byte.

Arquitetura de Computadores

Quarta Gerao Circuitos VLSI (1980-?) - Integrao em Escala Muito Alta (Very Large Scale Integration VLSI). Milhes de transistores em um chip. Reduo dramtica em tamanho, consumo, tempo de processamento e custo. - Microprocessador (CPU em um chip). - Computador pode ser adquirido por pessoas fsicas (Computador Pessoal). - Aplicaes iterativas, processamento de texto, planilhas eletrnicas. - Primeiros modelos vendidos em kits, com base no processador INTEL 8080. - Kildall escreve o sistema operacional CP/M para mquinas baseadas no 8080. - Jobs e Wozniak lanam o Apple e o Apple II, sucesso de mercado no incio da dcada de 80. - Em 1981, a IBM entra no mercado de computadores pessoais lanando o PC-XT, baseado no processador INTEL8088 e no sistema operacional MS-DOS da Microsoft. dominando o mercado. - A arquitetura aberta do PC-XT faz surgir uma nova industria, produtora de clones mais baratos desta mquina. - A IBM desenvolve o sistema operacional OS/2, com interface grfica semelhante do Apple e do Macintosh. - A Microsoft lana o sistema operacional Windows, que derrota o OS/2 e se torna padro para computadores pessoais. - O envolvimento INTEL Microsoft resulta na hegemonia da famlia de computadores baseados em processadores INTEL e no sistema operacional Windows. - PCs cada vez mais poderosos e baratos so desenvolvidos. Novos processadores obedecem Lei de Moore: o nmero de transistores integrados em um chip dobra a cada 18 meses. - Em meados da dcada de 80 surge o conceito de mquinas RISC (Reduced Instruction Set Computer) em oposio s mquinas CISC (Complex Instruction Set Computer). - Eliminao da microprogramao. Funcionalidade do microprograma migra para o hardware, melhorando o desempenho. - Na dcada de 90 surgem os processadores superescalares, capazes de executar vrias instrues simultaneamente, numa ordem que pode ser diferente daquela do programa.

Arquitetura de Computadores

Tipos de Computadores Tipo Preo (US$) Computadores de uso 1 comum Computadores 10 embarcados Computador para 100 jogos Computador Pessoal 1K Servidor 10 K Conjunto de estaes 100 K de trabalho 1M Mainframe Supercomputador 10 M Exemplo de Aplicao Cartes de felicitaes. Relgios, automveis, etc. Videogames. Computador de mesa ou porttil. Servidor de rede. Superminicomputador para usos diversos Processamentos de dados em batch para aplicaes bancrias. Previso do tempo, simulao de reaes nucleares, etc.

Figura 1.5. Tipos de computadores na atualidade.

Você também pode gostar