Você está na página 1de 144

Arquiteturas de Computadores I

Departamento de Cincia da Computao FESO


V1.1

Felipe Donati - Janeiro 2009

Aula 13/2/09

Felipe Donati - Fevereiro 2009 - 2

Apresentao do Curso

Apresentao do Professor Apresentao dos Alunos


Nome, Atividade Principal Expectativa em relao ao curso Organizao Estruturada de Computadores Andrew Tannembaum, ed. LTC Hardware Curso Completo Torres, G., ed. LTC Arquitetura de Computadores Pessoais Weber, R.F., ed. Sagra Luzatto

Livros

Felipe Donati - Fevereiro 2009 - 3

Apresentao do Curso

Datas
1 avaliao: 27/03

Reviso e dvidas: Correo e vista de prova: Reviso e dvidas: Correo e vista de prova: Dvidas: Correo e vista de prova: Dvidas: Correo e vista de prova:

21/03 28/03 09/05 16/05 16/05 23/05 30/05 06/06


Felipe Donati - Fevereiro 2009 - 4

2 avaliao: 15/05

2 chamada: 22/05

Prova Final: 05/06


Evoluo dos Computadores

Gerao Zero - 1642 - 1945


computadores mecnicos Pascal - 1642 - efetuava somas e subtraes Leibniz - 1672 - efetuava multiplicaes e divises Babbage - 1800 - dispositivo mecanico que somava e subtraa. Foi concebida para executar um nico algoritmo e como sada perfurava o resultado numrico em um prato de cobre Aps alguns anos desenvolveu a mquina analtica

Felipe Donati - Fevereiro 2009 - 5

Evoluo dos Computadores

Gerao Zero - 1642 - 1945


mquina analtica de Babbage continha memria de 1000 palavras de 50 dgitos capacidade de armazenar variveis e resultados numricos unidade de computao para executar soma, subtrao, diviso e multiplicao unidade de entrada que lia cartes perfurados e unidade de sada que perfurava cartes grande diferencial = possibilidade de programao

Felipe Donati - Fevereiro 2009 - 6

Evoluo dos Computadores

Gerao Zero - 1642 - 1945


primeiro programador Ada Lovelace Mquina nunca funcionou completamente pois precisava de muitas engrenagens com alta preciso, impossvel para a tecnologia do sculo XIX. Zuse - 1930 - mquina de calcular usando rels eletromagnticos Atanasoff - 1935 - Iowa State College,usava aritmtica binria e usavam capacitores para armazenar informao

Felipe Donati - Fevereiro 2009 - 7

Evoluo dos Computadores

Gerao Zero - 1642 - 1945


Aiken

- 1944 - Mark I, tinha 72 palavras de 23 dgitos decimais e demorava 6 segundos para executar uma instruo. Entrada e sada realizada por fita perfurada.

Felipe Donati - Fevereiro 2009 - 8

Evoluo dos Computadores

Gerao UM - 1945 - 1955


Grande incentivo foi a segunda guerra. Alemes usavam um codificador de mensagens ENIGMA. Para decifrar rapidamente o Governo Britnico criou um computador COLOSSUS. O Governo Americano precisava de tabelas com direo de tiro para ajudar na pontaria da artilharia. Mauchley e Ekert - ENIAC I, 18000 vlvulas, 1500 rels, 30 toneladas e consumia 140 KW. ENIAC I - 20 registradores para 10 dgitos cada e programao requeria o ajuste de 6000 chaves e um nmero grande de soquetes por meio de cabos.
Felipe Donati - Fevereiro 2009 - 9

Evoluo dos Computadores

Gerao UM - 1945 - 1955

Eikert-Mauchley abriram sua empresa que depois de vrias fuses virou a Unisys Corp. von Neumann que trabalhou com eles no ENIAC, criou a mquina IAS, e desenvolveu a teoria do clculo binrio Mquina de von Neumann tinha 5 componentes: memria, UAL, unidade de controle e dispositivos de entrada e sada. Memria de 4096 palavras de 40 bits. Cada palavra guardava 2 instrues de 20 bits (8 para indicar o tipo de instruo e 12 para indicar uma das 4096 palavras) ou um nmero inteiro
Felipe Donati - Fevereiro 2009 - 10

Evoluo dos Computadores

Gerao UM - 1945 - 1955


Na UAL ficava o acumulador com 40 bits Jay Forrester criou a memria de ncleo magntico que levou ao primeiro minicomputador comercial IBM era uma empresa que produzia perfuradora de cartes e separadoras de cartes at produzir o modelo 701 em 1953. 2048 palavras de 36 bits com 2 instrues por palavra 3 anos depois o 704 com 4096 bits de memria de ncleo de ferro e instrues de 36 bits.

Felipe Donati - Fevereiro 2009 - 11

Evoluo dos Computadores

Gerao UM - 1945 - 1955


Arquitetura de

von Neumann

MEMRIA

ENTRADA

UNIDADE DE CONTROLE

UAL
ACUMULADOR

SADA

Felipe Donati - Fevereiro 2009 - 12

Evoluo dos Computadores

Gerao DOIS - 1955 - 1965


Transistor inventado no Bell Labs em 1948 por Bardeen, Brattain e Shockley - Premio Nobel de 1956 Revolucionou a indstria de computao Primeiro computador transistorizado era de 16 bits, construdo no MIT, chamado TX-0 Olsen que trabalhou no projeto do TX, fundou em 1957 a Digital que durante 4 anos fez placas de circuito at construir o PDP-1 em 1961. 4K de palavras de 18 bits e um clock de 5 microssegundos ao custo de US$ 120,000 e tinha metade da performance do IBM 7090 que custava milhes de dlares.
Felipe Donati - Fevereiro 2009 - 13

Evoluo dos Computadores

Gerao DOIS - 1955 - 1965


PDP-1 inovou com sistema de vdeo que permitia plotar pontos em qualquer um de seus 512 x 512 pixels. Alunos do MIT programaram um jogo de guerra no espao e fizeram o primeiro videogame. PDP-8 tinha um barramento nico - Omnibus 1964 - Control Data lanou o 6600 que era 10 vezes mais rpida que o 7094 da IBM. Usava pequenos processadores para executar E/S. => primeira idia de processamento paralelo.

Felipe Donati - Fevereiro 2009 - 14

Evoluo dos Computadores

Gerao DOIS - 1955 - 1965


PROCESSADOR MEMRIA CONSOLE UNIDADE E/S FITA DE PAPEL OUTRAS UNIDADES E/S

omnibus

Aps 6600 - Seymour Cray criou o Cray-1 para processamento cientfico - primeiro supercomputador B5500 - foco no software e no no hardware como antes.Objetivo rodar programas em ALGOL. O software passou a ser mais observado como ponto importante na construo de computadores.
Felipe Donati - Fevereiro 2009 - 15

Evoluo dos Computadores

Gerao TRS - 1965 - 1980


poca

de evoluo das famlias IBM 360 e PDP 360 implementou o conceito de multiprogramao no qual o sistema mantinha diversos programas rodando na memria ao mesmo tempo. Quando um deles estivesse esperando a concluso de uma E/S, outro era executado. 360 e PDP -11 tinham espao de endereamento de 16 megabytes o que permitiu chegarem at a dcada de 80.
Felipe Donati - Fevereiro 2009 - 16

Evoluo dos Computadores

Gerao QUATRO - 1980 em diante

poca de integrao de circuitos (VLSI - very large scale integration) permitindo a colocao de dezenas de milhares de transistores em um circuito integrado mais tarde foi possvel a integrao de milhes de transistores Por volta de 1980 os preos caram muito e o tamanho foi super reduzido, permitindo a aquisio de computadores por pessoas fsicas. Os primeiros computadores pessoais foram vendidos em forma de kits para serem montados pelas pessoas.

Felipe Donati - Fevereiro 2009 - 17

Evoluo dos Computadores

Gerao QUATRO - 1980 em diante

O primeiros kits eram compostos de uma placa de circuito impresso, alguns chips incluindo um processador 8080, fonte de alimentao, e um drive de disco de 8 polegadas Trmino da gerao dos CPD (Centro de Processamento de Dados) como nico modo de implantao de computadores. 1981 a IBM lanou o IBMPC com processador 8080 com sistema operacional DOS. Em meados de 1980 aparecimento das mquinas RISC (reduced instruction set computer) Em 1990 os processadores superescalares que podiam executar vrias instrues simultaneamente

Felipe Donati - Fevereiro 2009 - 18

Evoluo dos Computadores

Exemplo de estgios do desenvolvimento

1834 - Babbage - primeira tentiva 1936 - Zuse - Z1 - primeira calculadora 1943 - Governo Brit6anico - Colossus - primeiro computador 1946 - Eckert - ENIAC I - marco inicial do computador moderno 1952 - von Neumann - arquitetura de construo e lgica digital 1960 - PDP-1 - DEC - primeiro minicomputador 1962 - 7094 - IBM - mquina de dominou o procesamento de dados cientficos nos anos 60. 1963 - B5000 - Burroughs - primeira mquina a suportar linguagem de alto nvel
Felipe Donati - Fevereiro 2009 - 19

Evoluo dos Computadores

Exemplo de estgios do desenvolvimento

1964 - 360 - IBM - primeiro computador projetado com o conceito de famlia de mquinas 1965 - PDP-8 - Digital - primeiro minicomputador sucesso de vendas = 50.000 1970 - PDP-11 - Digital - dominou o mercado de minicomputadores nos anos 70 1974 - 8080 - Intel - primeiro processador de propsito geral 8 bits, construdo em 1 chip 1974 - Cray 1 - Cray - primeiro supercomputador 1978 - VAX - Digital - primeiro superminicomputador - 32 bits
Felipe Donati - Fevereiro 2009 - 20

Evoluo dos Computadores

Exemplo de estgios do desenvolvimento


1981 - PC - IBM - primeiro computador pessoal 1985 - MIPS - MIPS - primeiro processador RISC 1987 - SPARC - Sun - primeira estao de trabalho RISC usando processador SPARC 1990 - RS600 - IBM - primeira mquina superescalar

Felipe Donati - Fevereiro 2009 - 21

Evoluo dos Computadores

Lei de Moore
Gordon

Moore - co-fundador da Intel a quantidade de transistores dobra a cada 18 meses o que pode ser observado tambm para memria e processador 1980 = 256K 1992 = 64M PC XT - 1982 com disco rgido de 10 MB

Felipe Donati - Fevereiro 2009 - 22

Aula 14/02/09

Felipe Donati - Fevereiro 2009 - 23

Modelo de 5 camadas

Nvel 0: Lgica Digital


conhecidas como portas lgicas construdas com transistores (disp. analgicos) modeladas como dispositivos digitais Cada porta tem uma ou mais entradas digitais
cada entrada possui sinal representando 0 ou 1

Cada porta calcula uma funo simples AND, OR, NOT, NOR .... Podem ser combinados para a construo das memrias de 1 bit, 16, 32 ....

Felipe Donati - Fevereiro 2009 - 24

Modelo de 5 camadas

Nvel 0: Lgica Digital


Cada

registrador pode guardar um nico valor binrio As portas lgicas podem ser combinadas para formar o processador

Felipe Donati - Fevereiro 2009 - 25

Modelo de 5 camadas

Nvel 1: Microarquitetura
Quase sempre temos um conjunto de 8 a 32 registradores Formam a memria local e a UAL ou ULA (Unidade Lgica e Aritmtica) ULA executa operaes aritmticas muito simples Registradores conectados a ULA para formar a estrutura de encaminhamento de dados

Felipe Donati - Fevereiro 2009 - 26

Modelo de 5 camadas

Nvel 1: Microarquitetura
A

operao bsica de encaminhamento a seleo de um ou mais registradores para que a UAL opere sobre eles Ex: R1 + R2 -> R3 A operao de encaminhamento de dados pode ser controlada por um programa de computador -> microprograma Ou por hardware

Felipe Donati - Fevereiro 2009 - 27

Modelo de 5 camadas

Nvel 1: Microarquitetura
o

Microporgrama um interpretador para as instrues do nvel 2 Ele busca, decodifica, executa as instrues, uma a uma, usando o encaminhamento de dados para a realizao da tarefa Em caso de hardware o processo o mesmo mas sem a execuo de um microprograma

Felipe Donati - Fevereiro 2009 - 28

Modelo de 5 camadas

Nvel 1: Microarquitetura
Ex:

ADD R1, R2

busca R1 busca R2 soma R1 e R2 na UAL envia resultado para R3

Felipe Donati - Fevereiro 2009 - 29

Modelo de 5 camadas

Nvel 2: Arquitetura de conjunto de instrues


Cada

fabricante publica um manual de referncia de linguagem de mquina. Eles descrevem o conjunto de instrues de mquina e como estas so executadas

Felipe Donati - Fevereiro 2009 - 30

Modelo de 5 camadas

Nvel 3: Sistema Operacional


Nvel

hbrido Maioria das instrues pertencem ao nvel 2 Suporta um conjunto de novas instrues interpretadas pelo nvel 3 At o nvel 3 so instrues numricas em linguagem de mquina o que no confortvel para o ser humano At aqui so projetados para rodar os interpretadores e tradutores
Felipe Donati - Fevereiro 2009 - 31

Modelo de 5 camadas

Nvel 4: Linguagem do montador


linguagem de

montagem que uma representao simblica de representao das linguagens de nveis mais baixo Os programas so primeiro traduzidos para os nveis 1, 2 e 3 e depois interpretados pela mquina. Para isto existe um MONTADOR

Felipe Donati - Fevereiro 2009 - 32

Modelo de 5 camadas

Nvel 4: Linguagem do montador


Ex 1: MOV AL, 5 MOV BL, 10 ADD AL, BL OR AL, 20H SHL AL, 3 (SHIFT LEFT AL, 3 VEZES) Ex 2: MOV AX, 3 AND AX, FFH SHR AX, 2 (SHIFT RIGHT AX, 2 VEZES)

Felipe Donati - Fevereiro 2009 - 33

Modelo de 5 camadas

Nvel 5: Linguagens orientadas para soluo de


problemas
So

projetadas para serem usadas por programadores de aplicao Conhecidas como linguagens de alto nvel C, C++, JAVA, Prolog, Pascal etc. Os programas so traduzidos para o nvel 4 e 3 por tradutores conhecidos como COMPILADORES ou INTERPRETADORES

Felipe Donati - Fevereiro 2009 - 34

Modelo de 5 camadas

Resumindo
Linguagens orientadas para soluo de problemas Linguagem do montador Sistema Operacional Arquitetura do conjunto de instrues Microarquitetura Lgica digital

Nvel 5 Nvel 4 Nvel 3 Nvel 2 Nvel 1 Nvel 0

Felipe Donati - Fevereiro 2009 - 35

Aula 20/02/09

Felipe Donati - Fevereiro 2009 - 36

Reviso de Lgica Digital

Portas Lgicas

formam a base de hardware a partir do qual os circuitos digitais so construdos baseia-se no fato de que um transistor pode funcionar como uma chave binria famlias MOS (Metal Oxide Semiconductor), bipolar (TTL - Transistor-Transistor Logic e ECL - EmitterCoupled Logic) MOS so mais lentas que TTL porm ocupam menos espao e consomem menos energia PMOS, NMOS, CMOS (principal)

Felipe Donati - Fevereiro 2009 - 37

Reviso de Lgica Digital

Portas Lgicas

Inversor
Felipe Donati - Fevereiro 2009 - 38

Reviso de Lgica Digital

Porta Lgicas

Felipe Donati - Fevereiro 2009 - 39

Reviso de Lgica Digital

Portas Lgicas

A) B) C)

Porta NOT Porta AND Porta OR

Felipe Donati - Fevereiro 2009 - 40

Reviso de Lgica Digital

Portas Lgicas

Funo Maioria de Trs Variveis


Felipe Donati - Fevereiro 2009 - 41

Reviso de Lgica Digital

lgebra Booleana

funo booleana admite 2n possveis combinaes de entrada para N variveis, a funo pode ser descrita pela tabela de 2n linhas chamada tabela verdade. Na expresso usamos .para indicar AND e +para indicar OR e -acima da letra para indicar NEGAO. Equivalncia de circuitos
podemos ter a execuo de mesma funo usando portas que no as desenvolvidas para a funo especificada. Assim, podemos ter uma porta NOT construda com uma porta NOR onde a entrada o mesmo sinal. Uma porta AND construda com a conexo de duas portas NAND.
Felipe Donati - Fevereiro 2009 - 42

Reviso de Lgica Digital

Equivalncia de Circuitos

AB+AC = A(B+C) B 0 0 0 C 0 1 0 AB 0 0 0 AC 0 1 0 AB+AC 0 1 0 B+C 0 1 0 A(B+C) 0 1 0

A 0 1 1

Felipe Donati - Fevereiro 2009 - 43

Reviso de Lgica Digital

Circuitos Integrados

SSI 1 a 10 portas lgicas MSI 10 a 100 portas lgicas LSI 100 a 100.000 portas lgicas VLSI - > 100.000 portas lgicas

Felipe Donati - Fevereiro 2009 - 44

Reviso de Lgica Digital

Circuitos Combinacionais

Muitas aplicaes precisam de circuitos com vrias entradas e vrias sadas nos quais as sadas sejam determinadas exclusivamente pelo valor presente nas entradas Multiplexadores
circuito com 2n entradas, uma sada e n entradas de controle para efetuar a seleo de uma das entradas de dados. Usado na converso paralelo -srie o demultiplexador funciona em modo inverso, 8 sadas e uma entrada

Felipe Donati - Fevereiro 2009 - 45

Reviso de Lgica Digital

Circuitos Combinacionais

Multiplexadores

Felipe Donati - Fevereiro 2009 - 46

Reviso de Lgica Digital

Circuitos Combinacionais

Decodificadores
usado para acionar uma memria por exemplo 3 entradas A, B, C com portas AND gerando 8 sadas (2n) cada sada seleciona uma memria

Felipe Donati - Fevereiro 2009 - 47

Reviso de Lgica Digital

Circuitos Combinacionais

Comparadores
compara duas palavras que so entregues na entrada. Ex: duas entradas A e B de 4 bits e coloca 0 na sada se elas forem iguais e 1 se elas foram diferentes

Felipe Donati - Fevereiro 2009 - 48

Aula 21/02/09

FERIADO

Felipe Donati - Fevereiro 2009 - 49

Aula 27/02/09

FERIADO

Felipe Donati - Fevereiro 2009 - 50

Aula 28/02/09

FERIADO

Felipe Donati - Fevereiro 2009 - 51

Aula 06/03/09

Felipe Donati - Fevereiro 2009 - 52

Reviso de Lgica Digital

Circuitos Combinacionais

Matrizes Lgicas Programveis


Composta geralmente de portas AND, NOT e OR, possuem rels que so queimados com uma alta tenso. Com isto a PLA programada de acordo com a necessidade do circuito especfico.

Felipe Donati - Fevereiro 2009 - 53

Reviso de Lgica Digital

Circuitos Aritmticos

Deslocadores
circuitos MSI de propsito especfico Ex: 8 entradas e 8 sadas e 1 controle que especifica o sentido 0 para a esquerda e 1 para a direita

fazer em sala o exemplo

Felipe Donati - Fevereiro 2009 - 54

Reviso de Lgica Digital

Circuitos Aritmticos

Somadores
Todo o processador precisa de um hardware para efetuar a adio Para somar duas palavras de 16 bits = replicar circuito 16 vezes

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

VEM-1 0 1 0 1 0 1 0 1

SOMA VAI-1 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1

Felipe Donati - Fevereiro 2009 - 55

Reviso de Lgica Digital

Circuitos Aritmticos

Unidade Lgica e Aritmtica


A maioria dos computadores tem sempre uma unidade para executar AND, OR, soma O exemplo abaixo calcula isto usando a entrada F para selecionar a funo. Repetindo este circuito para N bits temos uma ULA.
Felipe Donati - Fevereiro 2009 - 56

Reviso de Lgica Digital

Clocks

Os eventos devem ocorrer em determinada ordem. Clock um circuito que emite uma srie de pulsos do mesmo tamanho a intervalos precisos, controlado por oscilador a cristal Muitos eventos podem ocorrer em um ciclo de clock. Coloca-se um retardo para termos vrios sub-ciclos Diferentes eventos so associados a diferentes transies: positiva e negativa
C1
retardo

C2

Felipe Donati - Fevereiro 2009 - 57

Reviso de Lgica Digital

Memria

armazena instrues e dados Latches


circuitos que lembram valores anteriores recebidos como entrada chamado LATCH SR (SET / RESET)e LATCH D LATCH D com clock: D = 1 e clock = 1 -> Q = 1
D = 0 e clock = 1 -> Q = 0 Basta colocar clock em 1 que armzena valro de D

Felipe Donati - Fevereiro 2009 - 58

Aula 07/03/09

Felipe Donati - Fevereiro 2009 - 59

Reviso de Lgica Digital

Flip-flop

a mudana de estado ocorre quando h transio de clock de 0 para 1 ou de 1 para 0 (transio negativa) Registradores
chip com 8 flip-flops e clock interligado = registrador de 8 bit

Felipe Donati - Fevereiro 2009 - 60

Reviso de Lgica Digital

Flip-flop

Organizao de memria
4 palavras de 3 bits. Escrita e leitura sobre uma palavra completa D0 - D2 = dados; A0 A1 = endereo; CS = habilitao do chip; RD = leitura / escrita; OE = habilitao de sada; S0 S2 = dados sada Leitura CS e RD = 1, D no usada; escrita CS = 1 RD = 0, S no so usadas

Felipe Donati - Fevereiro 2009 - 61

Reviso de Lgica Digital

RAM e ROM

RAM (Random Access Memory): lidas e escritas no trabalho normal do computador


SRAM (RAM esttica): construdas com flip-flop D. Muito rpidas, so usadas em memria Cache. DRAM (RAM dinmica): no usam flip-flop e sim um transistor e um capacitor que podem estar carregados ou descarregados. Necessitam refresh de carga. -> Interface mais complexa; maior densidade no chip. So escolhidas para a memria principal do computador.

ROM (Read Only Memory): contedo no pode ser apagado nem modificado. Muito mais baratas que as RAM.
PROM: programable ROM EPROM: Erasable Programable ROM EEPROM: Eletrical Erasable Programable ROM. Devem substituir os discos

Felipe Donati - Fevereiro 2009 - 62

Reviso de Lgica Digital

SRAM DRAM ROM PROM EPROM EEPROM Flash

RAM e ROM
leitura / escrita leitura / escrita somente leitura somente leitura leitura leitura leitura / escrita eletricidade eletricidade no possivel apagar no possvel apagar luz ultravioleta eletricidade eletricidade memria cache memria principal eletrnica eletrnica comunicao/computador comunicao/computador filme para cameras

Felipe Donati - Fevereiro 2009 - 63

Partes componentes

Firmware BIOS SETUP Memria Cache Memria Virtual Coprocessadores

Felipe Donati - Fevereiro 2009 - 64

Aula 13/03/09

Felipe Donati - Fevereiro 2009 - 65

CPU e Barramentos

CPU

encapsulado em chips com pinos que realizam a comunicao com os demais componentes trs tipos: endereo, dados e controle conectados a pinos semelhantes nos chips de memria e E/S Busca de instruo:
coloca endereo de memria de instruo nos pinos de endereo coloca sinal de controle para indicar qual memria vai ler memria responde colocando nos pinos de dados do processador a informao processador aceita a informao = INSTRUO N pinos de endereo = memria com 2n posies
Felipe Donati - Fevereiro 2009 - 66

CPU e Barramentos

CPU

De forma semelhante temos os pinos de dados com quantidade igual a quantidade de bits de uma palavra especificada para o processador ou sua famlia Os pinos de controle regulam o fluxo e a temporizao de dados que entram e saem do processador.
Alimentao eltrica do chip aterramento sinal de clock controle de barramento interrupes arbitragem do barramento

Felipe Donati - Fevereiro 2009 - 67

CPU e Barramentos

CPU

Alimentao eltrica do chip


alimentao de 5 volts e aterramento

Sinal de clock
onda quadrada de referncia de tempo para eventos

Controle de barramento
informaes sobre leitura ou escrita

Interrupes
entrada do processador alimentada pelos dispositivos de E/S O processador inicia o dispositivo de E/S e depois passa a executar outra tarefa enquanto o dispositivo executa a sua (por ser mais lento). Ao final, o chip de E/S ativa um sinal para que a rotina de interrupo seja executada
Felipe Donati - Fevereiro 2009 - 68

CPU e Barramentos

CPU

arbitragem do barramento
organiza o acesso ao barramento evitando que dois dispositivos utilizem-no ao mesmo tempo.

Co-processador
informao para execuo do co-processador existente em alguns computadores. Geralmente usados para ambiente grfico ou com volume de clculo em ponto flutuante

Felipe Donati - Fevereiro 2009 - 69

CPU e Barramentos

Barramentos

Caminho eltrico comum que liga diversos dispositivos agrupados de acordo com sua funo tendo suas propriedades os projetistas no podem esquecer que existem placas de fabricao de terceiros que precisam ser conectadas ao barramento. Portanto, deve haver regras bem definidas especificando o funcionamento do barramento = PROTOCOLO DO BARRAMENTO Adicionalmente especificaes eltricas e mecnicas devem estar disponveis. Ex: Omnibus (PDP-8, Multibus (8086), ISA (PC/AT), EISA (80386), SCSI (PC e estaes de trabalho), USB (PC atuais)

Felipe Donati - Fevereiro 2009 - 70

CPU e Barramentos

Barramentos

Dependendo da atividade um dispositivo chamado MESTRE e o outro ESCRAVO do barramento. A Memria o nico dispositivo que sempre ESCRAVO. Ex: CPU mestre / Memria escravo; E/S mestre / memria escrava no aceite de um dado A maioria dos mestres est conectada ao driver de barramento = amplificador digital permitindo gerar potncia no sinal de forma a atender vrios dispositivos Barramento tem linhas de endereo, dados e controle. No sendo necessrios um-para-um de linhas do barramento / linhas do processador
Felipe Donati - Fevereiro 2009 - 71

CPU e Barramentos

Barramentos

Para compatibilizar as linhas entre processador e barramento necessrio, na maioria das vezes, um decodificador. Os principais aspectos do projeto de um barramento so: largura, metodologia de temporizao, arbitragem e operaes sobre o barramento LARGURA
Quanto mais linhas de endereo o barramento tiver -> mais memria. Mais fios -> fios mais estreitos -> conectores maiores > material que suporte calor gerado

Felipe Donati - Fevereiro 2009 - 72

CPU e Barramentos

Barramentos

LARGURA
EX: a figura abaixo apresenta o crescimento do barramento 8088: 1 MB de memria -> 20 linhas de endereo 80286: 16MB de memria > 20 + 4 de endereo 80386: 32 linhas de endereo + linhas de controle (barramento EISA) Aumento de dados tambm geram problema ao barramento
Felipe Donati - Fevereiro 2009 - 73

CPU e Barramentos

Barramentos

LARGURA
Para aumentar a banda passante de dados existem 2 opes: Aumento de largura do barramento com incluso de mais linhas -> transferncia de mais dados simultaneamente ou Diminuir o tempo gasto no ciclo do barramento -> mais transferncias por segundo Aumento da taxa de transferncia pode aumentar problema de escorregamento do sinal do barramento -> sinais provenientes de diferentes linhas trafegam com pequenas diferenas de velocidade. Alm de comprometer a compatibilidade com verses anteriores Opo -> AUMENTAR AS LINHAS Projetista usam a multiplexao do barramento para evitar aumento grande de linhas.
Felipe Donati - Fevereiro 2009 - 74

CPU e Barramentos

Barramentos

LARGURA
Multiplexao do barramento: ora usado para endereo ora para dados -> economizo espao / gasto mais tempo

TEMPORIZAO
Duas categorias distintas: sncrono e assncrono SNCRONO:

sinal de onda quadrada alimentado por um clock. Todas as atividades gastam um nmero inteiro de ciclo chamado ciclo de barramento No precisam ser o mesmo para todos os tipos de equipamentos

Felipe Donati - Fevereiro 2009 - 75

Aula 14/3/09

Felipe Donati - Fevereiro 2009 - 76

CPU e Barramentos

Barramentos

TEMPORIZAO

Felipe Donati - Fevereiro 2009 - 77

CPU e Barramentos

Barramentos

TEMPORIZAO
ASSNCRONO:

Sncrono tudo acontece em mltiplos inteiros de ciclos; Se memria e processador forem construdos para operar com determinada quantidade de ciclos, em caso de mudana, no haveria como aproveitar a melhoria da evoluo de uma pea (memria ou processador) No caso do assncrono existe uma componente Mestre e um Escravo. O primeiro ativa o sinal MSYN master synchronization) junto com os demais sinais de leitura / escrita, endereo e requisio para que o componente escravo execute sua atividade. Ao final da execuo o escravo ativa o sinal SSYN slave sinchronization, informando ao Mestre que a execuo foi finalizada e as informaes esto disponveis no barramento. Cada evento depende de um evento anterior e no do sinal de clock.
Felipe Donati - Fevereiro 2009 - 78

CPU e Barramentos

Barramentos

ARBITRAGEM
Alm do processador, em certas situaes, os componentes de E/S e os co-processadores precisam ser mestres e no escravos. O que acontceria se dois mestres tentarem fazer acesso ao barramento ao mesmo tempo ? Mecanismos Centralizados e Descentralizados No primeiro um nico componente determina a ordem de utilizao do barramento. Duas linhas: uma de requisio, outra de sinalizao de garantia de uso de barramento, ligada em srie aos componentes. A seuncia de ligao prov uma hierarquia de atendimento. Para escapar da prioridade em funo da distncia fsica, muitos barramentos tem vrias linhas de garantia de prioridade

Felipe Donati - Fevereiro 2009 - 79

CPU e Barramentos

Barramentos

ARBITRAGEM

Felipe Donati - Fevereiro 2009 - 80

CPU e Barramentos

Exemplos

Pentium II
7,5 milhes de transistores mquina de 32 bits Mesma arquitetura de instrues do 80386, 80486 e Pentium. Enderea 64GB e transfere dados de 64 bits Cache de dois nveis: um par no prprio chip, ambas de 16Kb, sendo uma para instrues e outra para dados. Outra de segundo nvel com 512 KB Clocks iguais ou superiores a 233MHz Dois barramentos primrios sncronos sendo o de memria usado para acesso a DRAM e um PCI usado para conversar com os dispositivos de E/S Potncia dissipada, 30 e 50 watts

Felipe Donati - Fevereiro 2009 - 81

CPU e Barramentos

Exemplos

Pentium II
242 conectores divididos em 170 para sinais, 27 para conexes eltricas em funo das vrias tenses, 35 para aterramento, 10 de reserva para futuro uso. Alguns do sinais lgicos usam dois pinos

Felipe Donati - Fevereiro 2009 - 82

CPU e Barramentos

Exemplos

Pentium II
Barramento de memria com base em Pipeline 6 estgios: arbitragem do barramento, requisio de uso do barramento, informaes sobre erros, monitoramento, resposta, dados Arbitragem do barramento determina qual mestre assumir a funo Requisio de uso permite que o endereo seja colocado no barramento Informao de erro permite que o escravo anuncie que o endereo contm erro de paridade Monitoramento permite que processador monitore informao armazenada em outros processadores (multiprocessadores)
Felipe Donati - Fevereiro 2009 - 83

Aula 20/3/09

Felipe Donati - Fevereiro 2009 - 84

CPU e Barramentos

Exemplos

Pentium II
Resposta onde o mestre obtm informaes sobre o andamento da obteno de dados dados permite que os dados sejam enviados

UltraSPARCII
Processadores SAPRC de 64 bits, usados em estaes de trabalho SUN. Mquina RISC com instrues VIS, voltadas para aplicaes multimdias, aplicaes grficas e decodificao MPEG Projetado para ser usado em sistemas multiprocessados com memria compartilhada 5,4 milhes de transistores
Felipe Donati - Fevereiro 2009 - 85

CPU e Barramentos

Exemplos

UltraSPARCII
787 pinos: 64 bits de endereamento e 128 bits de dados Duas caches internas de 16 kb, uma de dados e outra de instruo As 256 linhas com instrues mais acessadas pelo processador e as 256 linhas com os dados mais acessados so mantidas na cache de nvel 1.

Sun Pico Java II


processador que tem duas interfaces, uma para barramentos de memria de 64 bits 16 linhas de E?S para interface com botes, chaves, lmpadas Linguagem Java como conjunto nativo de instrues
Felipe Donati - Fevereiro 2009 - 86

CPU e Barramentos

Exemplos

Barramento ISA Barramento PCI USB (Universal Serial Bus) Barramento PCI muito caro para ligar perifricos lentos at 1,5 MB/s Representantes de IBM, Compaq, Intel, Microsoft, NEC e Nortel se reuniram em 1990 para descrever este padro

Felipe Donati - Fevereiro 2009 - 87

CPU e Barramentos

Exemplos

USB (Universal Serial Bus) Os usurios deveriam ligar chaves nas placas e dispositivos
No devem abrir gabinete para novos dispositivos E/S Somente um tipo de cabo para conexo Possvel 127 dispositivos em um nico computador Suportar dispositivos de aplicaes em tempo real Instalar dispositivo com o computador em operao No necessitar reinicializar computador quando da conexo de novo dispositivo Custo de fabricao de dispositivos deve ser baixo.

Felipe Donati - Fevereiro 2009 - 88

Interfaces

Chip E/S

UART (Universal Asynchronous Asynchronous Receiver Transmitter)


Recebe dados de terminal L um byte do barramento de dados Admite caracteres de 5 a 8 bits; 1,1 , 2 bits de stop e paridade par ou mpar

USART (Universal Synchronous Asynchronous Receiver Transmitter)


Transmisses sncronas

PIO (Parallel Input / Output)


24 linhas de E/S que podem se ligar a qualquer dispositivo como por exemplo, teclado, chaves, luzes, impressoras. Linhas de leitura/escrita, duas linhas de endereo. Ex: 8255A
Felipe Donati - Fevereiro 2009 - 89

Interfaces

Decodificao de endereo
O

dispositivo de E/S pode ser selecionado por uma linha de controle ou como parte da memria do computador ou do equipamento. No primeiro caso uma linha de controle do chip de E/S conectada a uma sada de seleo de dispositivo da CPU, por exemplo No segundo caso, reservamos 4 bytes do espao de memria de endereamento para as 3 portas e para o registrador de controle
Felipe Donati - Fevereiro 2009 - 90

Aula 21/03/09

REVISO PARA 1 AVALIAO

Felipe Donati - Fevereiro 2009 - 91

Aula 27/03/09

1 AVALIAO

Felipe Donati - Fevereiro 2009 - 92

Aula 28/03/09

CORREO E REVISO DA 1 AVALIAO

Felipe Donati - Fevereiro 2009 - 93

Aula 03/04/09

Felipe Donati - Fevereiro 2009 - 94

Processadores

Executar os programas armazenados na memria principal, buscando cada instruo, examinando e executando as mesmas Barramento interliga componentes possibilitando a transmisso de dados, endereos e controle. O processador composto de:
unidade de controle: busca de instruo na memria principal e determinao do tipo de instruo ULA: unidade lgica aritmtica, realiza o conjunto de operaes memria pequena e de alta performance para resultados temporrios
Felipe Donati - Fevereiro 2009 - 95

Processadores

Essa memria formada por registradores com tamanhos iguais ou variados e determinada funo Como esto dentro do processador, so lidos e escritos em alta velocidade. O mais importante o PC: program counter que aponta para a prxima instruo a ser buscada na memria registrador de instruo (RI) que armazena instruo em execuo.

Felipe Donati - Fevereiro 2009 - 96

Processadores

Organizao do processador as instrues de um processador podem ser classificadas em registrador-memria, registrador-registrador ou memria-registrador A primeira busca a informao na memria e traz para o registrador onde ser usado para uma operao na ULA A segunda busca dois operandos em registradores, coloca na ULA, realiza a operao sobre eles e armazena o resultado em um dos registradores.
Felipe Donati - Fevereiro 2009 - 97

Processadores

Organizao do processador 8088


Interface de memria C-bus
ES CS SS DS IP
Extra segment Code segment Stack segment Data segment Instruction pointer

Execution unit control system A-bus

AX BX CX DX SP BP SI DI

Resgistradores

ULA
Stack Pointers String Pointers

flags
Felipe Donati - Fevereiro 2009 - 98

Processadores

Execuo de instrues

busca da prxima instruo na memria e armazenamento da instruo no registrador de instruo atualizao do valor do IP (instruction pointer) fazendoo apontar para a instruo seguinte determinao do tipo de instruo armazenada determinar onde est o operando da instruo buscar operando e armazenar em um registrador execuo da instruo volta ao incio

Felipe Donati - Fevereiro 2009 - 99

Processadores

RISC x CISC

em 1970 a tcnica dominante para projeto de processadores privilegiava o uso de instrues complexas, cuja implementao era simples com o uso de interpretador em 1980 desenvolveram chips VLSI (very large semiconductor integration) que no usavam interpretao = RISC a nfase inicial foi em um conjunto de instrues reduzido => 50 contra 200 a 300 do CISC A filosofia era de fazer mais instrues mas muito mais rapidamente. A INTEL adotou uma filosofia mista a partir do 486.
Felipe Donati - Fevereiro 2009 - 100

Processadores

RISC x CISC

486 usava o modelo RISC para as instrues mais simples e frequentes e CISC para as mais complexas, mantendo a compatibilidade com as famlias anteriores. Alguns princpios de Projeto para Computadores
todas as instrues so executadas por hardware maximizar a taxa de execuo de instrues instrues precisam ser facilmente decodificadas

instrues com tamanho padro e menor nmero de campos

memria referenciada apenas na carga ou descarga de registradores uso de mltiplos registradores

Felipe Donati - Fevereiro 2009 - 101

Processadores

Paralelismo

Nvel de Instruo
rapidez -> aumento de velocidade do clock embora limitado fisicamente PIPELINE: execuo de instrues em vrias partes, por hardware dedicado

Busca de instruo

Decodificao de instruo

Busca de Execuo operando de instruo

Escrita

2 ns para cada ciclo x 5 ciclos = 10 ns para uma instruo mas a cada 2 ns temos a leitura de 1 instruo e portanto o computador 5 vezes mais rpido
Felipe Donati - Fevereiro 2009 - 102

Processadores

Paralelismo

Superescalaraes
execuo de vrios pipelines no pode haver uso de recurso comum conflitante resultado de uma instruo no pode depender da outra 486 = 1 pipeline de 5 estgios Pentium = 2 pipelines de 5 estgios arquitetura superescalar projetada em 1987 mas desenhada 30 anos antes

ULA Busca de instruo


Decodificao de instruo

Busca de operando

L da memria

Escrita

Felipe Donati - Fevereiro 2009 - 103

Aula 04/04/09

Felipe Donati - Fevereiro 2009 - 104

Processadores

Paralelismo

Nvel do Processador
Computadores matriciais

a maioria dos problemas cientficos trata com matrizes ou alguma estrutura regular de dados. Tal regularidadade faz deles candidatos a execuo paralela ex: ILLIAC IV: quatro quadrantes composto de 8 conjuntos processador + memria operando sobre diferente conjunto de dados. Uma unidade de controle em cada quadrante. rea comum para resultados todas as operaes so executadas em uma nica ULA que opera em pipeline registradores so os convencionais carregados por meio de uma nica instruo
Felipe Donati - Fevereiro 2009 - 105

Processador vetorial

Processadores

Paralelismo

Multiprocessadores
vrios processadores independentes usando uma memria compartilhada necessita coordenao feita por software

Multicomputadores
vrios processadores independentes usando uma memria local individual a troca de mensagens como um correio eletrnico foi o mtodo desenvolvido para a troca de informao entre os processadores

Felipe Donati - Fevereiro 2009 - 106

Memria Principal

Local de armazenamento de dados e instrues no formato de digito binrio (0 ou 1) = bit. Formada por um conjunto de clulas com um nmero associado = endereo 8 bits = bytes e byte agrupado em palavras os bytes da palavra podem ser numerados da esquerda para a direita ou vice-versa. Big indian atribui um nmero maior a parte mais significativa e little indian uma numerao menor a parte mais significativa
Felipe Donati - Fevereiro 2009 - 107

Memria Principal

Memria CACHE, deve possuir um conjunto de dados que foi mais recentemente utilizado. Encapsulamento de memrias SIMM (Single Inline Memory Module ou DIMM (Dual Inlne Memory Module) o segundo indica que existe duas linhas de chips de memria um do lado e outro do outro da placa impressa.

Felipe Donati - Fevereiro 2009 - 108

Memria Secundria

A memria principal sempre considerada pequena Soluo tradicional baseada na hierarquia de memria
REGIS_ TRADOR

CACHE MEMRIA PRINCIPAL DISCO MAGNTICO

TEMPO DE ACESSO CAPACIDADE QUANTIDADE DE BITS / $

FITA

DISCO PTICO

+
Felipe Donati - Fevereiro 2009 - 109

Memria Secundria

Discos Magnticos Discos Flexveis Discos IDE (Integrated Drive Electronics)


o controlador de disco integrado aos drives chamadas de BIOS (Basic Input Output System) no foram alteradas por compatibilidade anterior endeream os setores atravs de nmero de cabeas, cilindro e setor evoluiram para EIDE (extended IDE)

Felipe Donati - Fevereiro 2009 - 110

Memria Secundria

Discos SCSI (Small Computer System Interface)

define tambm um padro de barramento onde podem ser pendurado um controlador de disco e 7 outros dispositivos conjunto de discos prximo ao computador discos SCSI distribuem os dados pelos drives permitindo operao em paralelo.
Faixa 0 Faixa 4 Faixa 1 Faixa 5

RAID (Redundant Array of Inexpensive Disks)


Felipe Donati - Fevereiro 2009 - 111

Memria Secundria

CD-ROM CD GRAVVEIS CD REGRAVVEIS DVD

Felipe Donati - Fevereiro 2009 - 112

Aula 10/04/09

FERIADO

Felipe Donati - Fevereiro 2009 - 113

Aula 11/04/09

FERIADO

Felipe Donati - Fevereiro 2009 - 114

Aula 17/04/09

Felipe Donati - Fevereiro 2009 - 115

Entrada / Sada

Barramento

interconecta as controladoras a qual est conectada ao dispositivo usado para E/S e para busca de instrues e dados controla o dispositivo E/S e trata do acesso do dispositivo ao barramento controladoras fazem DMA (Direct Memory Access) no atrapalhando o processador a controladora gera uma interrupo para o processador executar a rotina de tratamento de interrupo
Felipe Donati - Fevereiro 2009 - 116

Controladora

Entrada / Sada

Controladora

a interrupo interrompe o processador e transfere o processamento para a rotina de interrupo que ir verificar se a transferncia de arquivos foi executada de forma correta. Aps a verificao, o processador retoma o processamento normal chip que coordena o acesso ao barramento este processo ficou obsoleto com a evoluo da velocidade dos dispositivos e processadores
Felipe Donati - Fevereiro 2009 - 117

rbitro do Barramento

Entrada / Sada

ISA (Industry Satndard Achitecture)

nome dado pela IBM quando iniciou a venda do PS/2 para identificar o mesmo barramento do PC com mais velocidade. Mais tarde evoluiu para o EISA (Extended ISA)

Felipe Donati - Fevereiro 2009 - 118

Entrada / Sada

PCI (Peripheral Component Interconnect)


criado pela Intel o processador fala com a memria e as controladoras por meio de uma conexo de alta velocidade a controladora se comunica diretamente com a memria e o barramento PCI o trfego memria-processador no passa pelo barramento PCI os perifricos de alta taxa de transferncia se conectam direto ao barramento PCI barramento ISA conectado ao PCI atravs de uma ponte
Felipe Donati - Fevereiro 2009 - 119

Entrada / Sada
processador Ponte PCI Memria Principal

Controlador SCSI

Controlador de vdeo

Controlador de rede

modem

Ponte ISA

Felipe Donati - Fevereiro 2009 - 120

Entrada / Sada

Terminais

teclado monitor CRT (Cathode Ray Tube) vdeo LCD (Liquid Crystal Display)

Mouses Impressoras

jato de tinta laser matriciais

Modem
Felipe Donati - Fevereiro 2009 - 121

Aula 18/04/09

Felipe Donati - Fevereiro 2009 - 122

Aula 24/04/09

Minimizao de Circuitos 3.4.1. Mapa de Karnaught

Felipe Donati - Fevereiro 2009 - 123

Aula 25/04/09

Minimizao de Circuitos 3.4.1. Mapa de Karnaught

Felipe Donati - Fevereiro 2009 - 124

Aula 01/05/09

FERIADO

Felipe Donati - Fevereiro 2009 - 125

Aula 02/05/09

FERIADO

Felipe Donati - Fevereiro 2009 - 126

Aula 08/05/09

3.4.1. Mapa de Karnaught (Continuao)

Felipe Donati - Fevereiro 2009 - 127

Aula 09/05/09

REVISO PARA 2 AVALIAO

Felipe Donati - Fevereiro 2009 - 128

Aula 15/5/09

2 AVALIAO

Felipe Donati - Fevereiro 2009 - 129

Aula 16/5/09

CORREO DA 2 AVALIAO

Felipe Donati - Fevereiro 2009 - 130

Aula 22/05/09

2 CHAMADA

Felipe Donati - Fevereiro 2009 - 131

Aula 23/05/09

CORREA 2 CHAMADA

Felipe Donati - Fevereiro 2009 - 132

Aula 29/05/09

1 SEMINRIO

Felipe Donati - Fevereiro 2009 - 133

Aula 30/05/09

2 SEMINRIO

Felipe Donati - Fevereiro 2009 - 134

Aula 05/06/09

PROVA FINAL

Felipe Donati - Fevereiro 2009 - 135

Aula 6/6/09

CORREO DA PROVA FINAL

Felipe Donati - Fevereiro 2009 - 136

Aula 12/6/09

FERIADO

Felipe Donati - Fevereiro 2009 - 137

Aula 13/6/09

FERIADO

Felipe Donati - Fevereiro 2009 - 138

Aula 19/06/09

Felipe Donati - Fevereiro 2009 - 139

Aula 20/06/09

Felipe Donati - Fevereiro 2009 - 140

Aula 26/06/09

Felipe Donati - Fevereiro 2009 - 141

Aula 27/06/09

FECHAMENTO DE NOTAS

Felipe Donati - Fevereiro 2009 - 142

Aula 03/07/09

ENTREGA DE NOTAS

Felipe Donati - Fevereiro 2009 - 143

Aula 04/07/09

DATA FINAL

Felipe Donati - Fevereiro 2009 - 144

Você também pode gostar