Вы находитесь на странице: 1из 30

Captulo 2

2.1 Processadores

Barramento: coleo de fios paralelos utilizados para transmitir endereos, dados e sinais de controle. Podem ser internos ou externos CPU. CPU : "Crebro" do computador Unidade de Controle: busca e determinao do tipo de instruo. Controla as demais partes da CPU; ULA: Unidade lgica aritmtica, responsvel por todas as operaes booleanas e aritmticas; Registradores: Pequena memria local CPU, de alta velocidade, utilizada para armazenar temporariamente argumentos, resultados e palavras de controle. PC Program Counter; IR Instruction Register;

2.1 Organizao da CPU

DataPath(via de dados) : conjunto dos registradores e ULA. Principais tipos de operaes: Registradormemria Registradorregistrador Ciclo da via de dados: busca de dois registradores, execuo de uma determinada operao pela ULA, e armazenamento em outro registrador. Uma das principais limitaes de velocidade da CPU. 2.1.2 Execuo de Instrues Ciclo de buscadecodificaoexecuo: 1. Busca da instruo da memria para o IR; 2. Alterao do PC; 3. Determinao do tipo da instruo; 4. Determinao da posio do argumento se necessrio; 5. Busca do argumento e armazenamento em um registro; 6. Execuo da instruo; 7. Retorno ao passo 1 para a execuo da prxima instruo;
2

O funcionamento da CPU pode ser simulado por um programa => interpretador Vantagens de instrues interpretadas: 1. Possibilidade de corrigir instrues implementadas erroneamente ou mesmo equilibrar deficincias do hardware; 2. Possibilidade de adicionar novas instrues a um baixo custo. 3. Projeto estruturado, permitindo o desenvolvimento, teste e documentao eficiente de instrues complexas. 4. Custo menor do que instrues implementadas diretamente em hardware. Necessidade de uma memria (ROM) de alta velocidade, utilizada para armazenar o interpretador (control Stores). Microinstrues: operaes executadas pelo interpretador, armazenadas na memria de controle (dentro da CPU). 2.1.3 RISC x CISC RISC: Reduced Instruction Set Computer CISC: Complex Instruction Set Computer MIPS : Millions of Instructions Per Second RISC: Sem utilizao de interpretao. Execuo de um pequeno conjunto de instrues, cada uma em um nico ciclo da via de dados. 2.1.4 Princpios de projeto de computadores atuais Princpios de projeto RISC Todas as instrues so executadas diretamente pelo Hardware Todas as instrues mais utilizadas no so interpretadas Maximizar a taxa na qual as instrues so executadas No importa o tempo de uma instruo e sim a quantidade de instrues executadas por segundo => paralelismo. As instrues devem ser fceis de serem decodificadas
3

Instrues regulares, de tamanho fixo, com um pequeno nmero de campos. Pequeno nmero de formatos. Apenas leitura e escrita devem acessar a memria. Os operandos para a maioria das instrues devem vir dos registradores. Fornecer vrios registradores 2.1.5 Paralelismo ao nvel de instrues Todo projeto possui um limite ao clock mximo => Paralelismo para alcanar uma performance melhor com o mesmo clock. Paralelismo: ao nvel de instruo ao nvel de processador Pipelining O grande gargalo da execuo de uma instruo a busca desta instruo. As instrues so buscadas e armazenadas no prefetch buffer a pipeline utiliza esta mesma estratgia, mas de forma mais enftica.

A pipeline permite um compromisso entre: Latncia: tempo de execuo de uma instruo Largura de faixa do processador: quantas MIPS o processador capaz. Estruturas superescalares Uma pipeline boa=> duas pipelines melhor ainda.

Para serem executadas ao mesmo tempo: As instrues no devem competir por recursos e nem depender do resultado uma da outra. Garantia por software (etapa de compilao) ou hardware. 386 e antecessores: sem pipeline 486: uma pipeline Pentium: Duas pipelines de 5 estgios. pipeline u: Execuo de qualquer instruo do pentium. pipeline v: instrues de ponto fixo. As instrues so sempre executadas na ordem do programa. Mais de duas pipelines: Alto custo, aumento do hardware. Utilizao de CPUs com uma pipeline com vrios blocos funcionais.

2.1.6 Paralelismo ao nvel de processador Limite da velocidade de processamento. Pipeline: representa ganhos de processamento da ordem de at (aproximadamente) 10 vezes. Soluo: Vrios processadores operando ao mesmo tempo. Arranjo de processadores: grande nmero de processadores idnticos que executam a mesma seqncia de instrues em um conjunto diferente de dados.

Processador vetorial: muito eficiente para executar uma seqncia de operaes em pares de dados. Registro vetorial: conjunto de registradores que podem ser carregados da memria em uma nica instruo.
6

Multiprocessadores: sistema com mais de uma CPU partilhando a mesma memria.

Multicomputa dores: Conexo entre computadores, cada um com sua prpria memria, mas sem memria comum. 2.2 Memria Primria 2.2.1 Bits Unidade bsica da memria. Representao de um nmero: binria pura ou BCD. 2.2.2 Endereamento de memria Memria: conjunto de clulas (ou posies), cada clula pode armazenar um conjunto de informao.

2.2.3 Ordenamento do byte Os bytes em uma palavra podem ser numerados da esquerda para a direita ou o contrrio. Big endian: numerao da esquerda para a direita (SPARC) Little Endian: numerao da direita para a esquerda (Intel)

Problema do big endian e little endian ocorre quando existe a comunicao byte a byte entre os dois tipos de numerao. 2.2.4 Cdigos de correo de erro Deteco de erro: Sabese que h um erro na palavra lida, mas no possvel corriglo. Correo de erro: Sabese que h um erro na palavra lida, mas podese restaurar a palavra original. Palavra da memria n = m bits de dados + r bits de verificao n uma palavra codificada. distncia de Hamming: quantidade de bits diferentes entre duas palavras. Se duas palavras codificadas esto a uma distncia d de Hamming ento sero necessrios d bits errados para converter uma palavra na outra. Distncia de Hamming de um cdigo: menor distncia de Hamming encontrada entre todas as palavras codificadas vlidas de uma lista gerada por um dado algoritmo. Para detectar d bits errados, ser necessria um cdigo com distncia de d+1. Para corrigir d bits errados ser necessrio um cdigo com distncia 2d+1.
9

Cdigo de deteco: bit de paridade (distncia de Hamming do cdigo = 2, so necessrios dois bits errados para ir de uma palavra vlida a outra). Cdigo de Correo: Correo de um bit, supondo: m bits de dados r bits de verificao

( m + r + 1) 2 r

Construo da palavra de Hamming: os bits so numerados, da esquerda para a direita, comeando do nmero 1; todas as posies que so potncias de 2 so ocupadas por bits de verificao; Cada bit de verificao responsvel por determinadas posies.

10

2.2.5 Memria Cache Historicamente as CPUs sempre foram mais rpidas do que as memrias => a CPU precisa esperar vrios ciclos at obter o dado da posio de memria acessado.

Taxa de acerto: frao de todas as referncias que podem ser satisfeitas pela cache. Taxa de erro: complemento da taxa de acerto. Tempo mdio de acesso: c = tempo de acesso a cache m = tempo de acesso a memria principal h = taxa de acerto Cache unificada: instrues e dados existem na mesma cache Cache dividida: memrias cache distintas para dados e instrues. 2.2.6 Tipos e encapsulamento de memrias Memrias distribudas em pentes. SIMM : Single Inline Memory Module. Conectores em apenas um lado do pente de memria. Inicialmente com 30 conectores (8 bits de dados) e posteriormente com 72 vias de conectores (32 bits de dados).

tma = c + (1 h) m

11

DIMM: Dual Inline Memory Module. Conectores em dois lados do pente de memria. 84 vias de conectores de cada lado, 64 bits de dados. SODIMM, Small Outline DIMM, DIMM utilizada em notebooks. 2.3 Memria Secundria 2.3.1 Hierarquia de memria

ns x ns 10 ns

32

Registradores 32K a 1M Cache 16M a 4GB Memria Principal

Capacidade

10ms

MB a 100G

Disco Magntico

s Disco ptico Fita Tempo de acesso

12

2.3.2 Disco magntico

Trilha: Crculos concntricos contendo uma seqncia circular de bits, separados em setores. Setor: normalmente 512 bytes, Prembulo Utilizado para sincronizar a cabea antes de leitura/gravao Bits de dados Normalmente 4096 bits CCE (cdigo de correo de erro): utilizase, normalmente, um cdigo que permita corrigir mltiplos erros (ReedSolomon) Os discos possuem braos mveis capazes de mover na direo radial do disco. A cada distncia radial diferente uma nova trilha pode ser lida. A densidade de bits depende da qualidade do ar e da pureza da superfcie. Densidades atuais: 50.000 a 100.000 bits/cm. A maioria dos discos constituda por placas mltiplas organizadas verticalmente. Cada superfcie com seu prprio brao e cabea magntica. Os braos so fisicamente conectados, movendose juntos. O conjunto de trilhas em uma dada posio radial chamado de cilindro.

13

Por ser uma estrutura circular, a trilha mais interna possui menos setores do que a trilha mais externa, desta forma os cilindros so divididos em zonas (de 10 a 30), sendo que o nmero de setores por trilha aumenta em cada zona. Tempo de acesso: depende de vrios fatores Posicionamento do brao para a posio radial correta (busca) da ordem de 5 a 15 ms; Atraso para o giro do disco buscando o setor correto (atraso rotacional). Velocidade de rotao: 3600, 5400, 7200, 10800 rpm atraso mdio de 4 a 8 ms. Tempo de transferncia: depende da densidade linear e da velocidade de rotao. Mxima taxa de transmisso: taxa de transmisso quando a cabea magntica est no primeiro bit de dado. O drive s pode manter esta taxa para um setor. Taxa mdia de transmisso: Leva em considerao tempo de busca e o atraso rotacional. Com o giro (60 a 120 rmps), o disco aquece e expande, alterando a sua geometria fsica necessidade de recalibrao do sistema de posicionamento. Associado a cada drive est um controlador de disco, um CI que controla o movimento do brao, a deteco e correo de erros e a converso de 8bits paralelos lidos da memria em dados seriais e viceversa.
14

2.3.3 Discos flexveis Semelhante ao HD, porm, neste caso, a cabea magntica realmente toca o disco, resultando em um desgaste tanto da mdia quanto da cabea. Quando o drive no est sendo acessado o disco deixa de girar e a cabea recolhida.

2.3.4 Discos IDE Integrated Drive Electronics Disco inicial: Disco Seagate de 10MB controlado por um controlador Xebec. O disco possua 4 cabeas, 306 cilindros e 17 setores/trilha. O controlador era capaz de controlar dois discos. O acesso a um determinado setor era feito fornecendose a cabea, o cilindro e o nmero do setor. As cabeas e cilindros eram numerados a partir de 0 e os setores a partir de 1. A BIOS original utilizava 4 bits para cabea, 6 bits para setor e 10 bits para o cilindro (16 cabeas, 63 setores, 1024 cilindros, totalizando 1.032.192 setores). A capacidade mxima do disco chegava a 528Mb. Drives acima de 528M surgiram, com geometria no condizente. Os controladores de disco mapeavam a geometria virtual da BIOS na geometria real do disco. Avano do IDE: EIDE (extended IDE) Suporta um segundo esquema de endereamento chamado LBA (Logical Block Address). Numera os setores comeando de 0 at um mximo de 2241. Neste esquema o controlador converte o endereo LBA para endereo de cabea, setor, cilindro, no se prendendo ao limite de 528M.
15

O controlador EIDE pode controlas at 4 discos, possui uma maior taxa de transferncia e pode controlar drives de CDROM. 2.3.5 Discos SCSI Semelhante aos discos IDE em termos da organizao de cilindros, trilhas e setores, mas possuem uma interface diferente e taxas de transferncia muito mais altas. SCSI mais do que uma interface para HD. Ele um barramento no qual o controlador SCSI e at sete dispositivos podem ser conectados. Cada dispositivo SCSI possui uma identificao nica, de 0 a 7 e cada dispositivo possui dois conectores, um para entrada e outro para sada.Os dispositivos so conectados em srie e o ltimo dispositivo deve possuir uma terminao para evitar reflexes.

2.3.6 RAID Raid Redundant Array of Inexpensive (Independent) Disks, em contraposio ao SLED Single Large Expensive Disk. Melhoria da performance, confiana ou ambos. Como dos discos SCSI possuem boa performance, baixo preo e a habilidade de existirem 7 drives em um nico controlador natural que a maioria dos RAIDs so constitudos por um controlador SCSI e um conjunto de discos SCSI que, do ponto de vista do sistema operacional, funcionam como um nico grande disco. Os dados so distribudos entre os drives, permitindo operao em paralelo. Existem diversos esquemas para isto, constituindo o RAID nvel 0 a nvel 5.

16

Raid Nvel 0: o disco virtual dividido em faixas de k setores cada uma, com os setores de 0 a k1 pertencendo a faixa 0, setor k a 2k1
17

pertencendo a faixa 1 e assim por diante. Para k =1 cada faixa um setor, para k =2 cada faixa so dois setores, etc. utilizado quando se necessita de grande capacidade, quanto maior melhor. No trabalha bem com sistemas operacionais que solicitam os dados de um setor por vez. No to confivel quanto um SLED Raid Nvel 1: Duplica todos os discos de tal forma que existem 4 discos primrios e quatro de backup. Em cada escrita cada faixa escrita duas vezes. Em uma leitura podese utilizar qualquer uma das cpias. Melhoria da performance da leitura. Aumento da tolerncia falhas. Raid Nvel 2: Trabalha com palavras, ao contrrio de faixas de setores, ou at mesmo bytes. Possibilita a escrita de um bit por drive com a incluso do cdigo de Hamming para correo quando algum drive falhar. A rotao dos drives deve ser sincronizada e s faz sentido com um grande nmero de drives. Raid nvel 3: simplificao do Raid nvel 2. Acrescenta apenas um bit de paridade apra cada palavra de dado. Os derives devem ser sincronizados. Raid nvel 4 e 5: trabalham com faixas e no palavras individuais com paridade e no necessitam de drives sincronizados. Raid nvel 4 similar ao Raid nvel 0, trabalhando com paridade de faixa a faixa escrita em um drive extra.. Protege contra a perda de um drive mas no eficiente com pequenas alteraes dos dados. Se um setor alterado necessrio ler todos os drives para recalcular a paridade, a qual deve ser escrita novamente. Raid nvel 5: distribui a paridade uniformemente em todos os drives

18

2.3.7 CDROM Deteco da diferena de intensidade do laser refletido em um dente ou terra. Os bits so armazenados em funo da transio de um dente/terra ou terra/dente (representando o bit 1) ou a falta da transio (representando o bit 0). Os dentes e terra so escritos em uma nica espiral que comea prximo ao furo. A espiral resulta em 22.188 voltas ao redor do disco, resultando em um tamanho de 5,6km. A velocidade linear deve ser constante para permitir a leitura dos dentes e terra sem alterao da velocidade dos dados lidos. A velocidade varia de 530rpm a 200 rpm (CD de msica).

Codificao de um byte em 14 bits, o mapeamento da leitura de 14 para 8 feito usando uma tabela (lookup table). 42 smbolos consecutivos formam um frame (quadro) de 588 bits. Cada frame armazena 192 bits de dado. Os 396 bits restantes so utilizados para correo de erro e controle. Para o CDROM, um grupo de 98 frames forma um setor do CDROM. Cada setor comea com um prembulo de 16 bytes, sendo que os 12 primeiros so 00FFFFFFFFFFFFFFFFFFFF00 permitindo o reconhecimento do comeo de um setor. Os prximos 3 bytes contem o nmero do setor. O ltimo byte do prembulo o modo. Modo 1: utiliza um prembulo de 16 bytes, 2048 bytes de dados e um cdigo de correo de erro de 288 bytes.
19

Modo 2: combina os campos de dado e correo de erro em uma campo para dados de 2336bytes, utilizado em aplicaes que no precisam de correo de erro.

Trs formas de correo de erros so utilizados: em um smbolo, em um frame e em um setor. Preo: utilizao de 98 frames de 588 bits (7203 bytes) para armazenar apenas 2048bytes de dados teis, eficincia de apenas 28%. CDRoms de 1x operam a uma taxa de 75 setores/segundo resultando em uma taxa de transmisso de 153.600bytes/segundo. Mesmo um CDROM de 32x no mais rpido do que um disco SCSI2. Sistema de arquivo: Nvel 1: nomes em letra maiscula, com at 8 caracteres seguidos de at 3 caracteres de extenso. At 8 camadas de diretrios que no podem ter extenso. Todos os arquivos devem ser contnuos. Nvel 2: nomes com at 32 caracteres. Nvel 3: arquivos no precisam ser contnuos. 2.3.8 CD Gravveis Utiliza uma camada de corante para simular os dentes ou terra. Durante a fase de gravao o diodo laser acionado com potncia maior (8 a 16mW), "queimando" a camada de corante. A diferena entre a parte "queimada" e a no queimada interpretada como a diferena entre dentes e terra.

20

Permite a gravao incremental de setores. Cada grupo de setores gravados de uma vez chamado de trilha. Antes desta possibilidade, todo CD ROM possua uma nica VTOC (Volume Table of Contentes) no comeo. Este esquema no funciona com escritas incrementais. Desta forma cada seo possui sua prpria VTOC a qual pode incluir algum ou todos os arquivos das sees anteriores. As trilhas podem ser agrupadas em sees, resultando em CDROMS de mltiplas sees. 2.3.9 CD Regravvel Utiliza outros materiais na camada de gravao, os quais possuem dois estados estveis: cristalino e amorfo, com diferentes capacidades reflexivas. O Drive CDRW utiliza lasers com trs potncias distintas. Na potncia mxima o laser derrete a camada, transformandoa do estado cristalino, altamente reflexivo, para o estado amorfo, de baixa reflexo. Na potncia mdia a camada derrete novamente voltando ao seu estado cristalino natural. Na menor potncia o CD lido.

21

2.3.10 DVD Digital Video Disk, alterado para Digital Versatile Disk. 1 Utiliza dentes menores; 2 Possui uma espiral mais densa 3 Utiliza laser vermelho Quatro formatos: 1 Lado nico, camada nica (4,7GB) 2 Lado nico, camada dupla (8,5GB) 3 Lado duplo, camada nica (9,4GB) 4 Lado duplo, camada dupla (17GB).

2.4 Entrada/Sada 2.4.1 Barramento

Utilizado para a comunicao entre perifricos, entre CPU/perifrico ou CPU/memria.


22

Cada perifrico possui seu controlador, o qual responsvel por controlar o dispositivo de I/O e lidar com o acesso ao barramento. Um controlador que l/escreve dados para/de um perifrico sem a interveno da CPU executa um acesso direto a memria (DMA Direct Memory Acess). Quando a transferncia est completa o controlador normalmente causa uma interrupo, forando a CPU a suspender o programa atual para comear a executar um procedimento especial, chamado programa de interrupo. Quando este programa termina a CPU continua a executar o programa que foi suspenso quando a interrupo aconteceu. Para evitar que tanto a CPU quanto um controlador de I/O tentem utilizar o barramento ao mesmo tempo um rbitro de barramento decide quem ter o direito. Geralmente o dispositivo de I/O tem precedncia. Barramento ISA: Industry Standard Architecture. Barramento EISA: Extended ISA Barramento PCI: Peripheral Component Interconnect

23

2.4.2 Terminais Teclado: Nos PCS, quando uma tecla pressionada uma interrupo gerada chamando o programa de interrupo do teclado. O programa l um registro no controlador de teclado para determinar o nmero da tecla (1 a 102). Quando a tecla solta uma segunda interrupo gerada. Monitores de TRC: Tubo de raios catdicos.

Monitores de tela plana: Podem ser de LCD Liquid Crystal Displlay.

24

Terminal mapeado por caractere:

Para mostrar caracteres, a CPU os copia para a memria de vdeo em bytes alternados. Associado com cada caractere est um byte de atributo, o qual descreve como o caractere deve ser mostrado. Os atributos podem incluir cor, intensidade, se ele ir piscar ou no e assim por diante.Portanto um vdeo de 25 x 80 caracteres necessita de 4000 bytes de memria de vdeo. Terminal mapeado por bit: Uma variao desta idia considerar o vdeo como uma matriz de elementos, chamados pixels. Cada pixel pode ser ligado ou desligado, representando um bit de informao. Para vdeos coloridos, cada pixel possui 8, 16 ou 24 bits. 640x480 > VGA 800 x 600 > SVGA 1024x768 > XVGA 1280x960 Para obter true color, 8 bits so necessrios para cada uma das trs cores primrias, ou seja, 3 bytes/pixel.

25

RS232C Utilizada para conectar o computador a terminais distintos. Possui um conector DB25 de dimenses e tenses padronizadas. Para comunicar o computador e terminal possuem um chip chamado UART (Universal Asynchronous Receiver Trasmitter) e uma lgica para acessar o barramento. A UART converte um dado paralelo em serial, e viceversa, adicionando bits decontrole

2.4.3 Mouse Tipos: mecnico, ptico e opticomecnico. Normalmente o mouse envia 3 bytes para o computador toda vez que ele for movido em uma certa distncia mnima. Os bytes so geralmente transmitidos de forma seqencial. O primeiro byte contem um nmero inteiro que indica em quantas unidades o mouse foi movido na direo x nos ltimos 100 ms. O segundo byte possui a mesma informao para o eixo y e o terceiro byte contm o estado atual dos botes do mouse.

26

2.4.4 Impressoras Impressoras Monocromticas Impressora matricial: baratas, confiveis, lentas, barulhentas, baixa resoluo grfica. Impressoras de jato de tinta: Baratas, silenciosas e com boa qualidade. Entretanto elas tambm so lentas e os cartuchos de tinta so caros. Impressoras a laser

Tons de cinza: Halftoning

Impressoras coloridas Impressora a jato de tinta; Impressoras de tinta slida; Impressora a laser colorida; Impressora a cera; Impressora de sublimao de tinta
27

2.4.5 Modems

2.4.6 Cdigos de Caracteres ASCII American Standard Code form Information Interchange. Composto de 7 bits.

28

UNICODE O cdigo ASCII pode ser considerado suficiente para o idioma ingls, mas ele no considera caracteres acentuados ou diferentes alfabetos. Desta forma tornase necessria a utilizao de outro conjunto de caracteres. IS 646 >Latin1: incluso de outros 128 caracteres ao ASCII, resultando em um cdigo de 8 bits. IS 8859 > Introduziu o conceito de pgina de cdigo, um conjunto de 256 caracteres para uma linguagem particular ou grupo de linguagens. IS 88591> Latin1 IS 88592 > Lnguas Eslavas
29

IS 88593 > Caracteres necessrios pelos Turcos, Malteses e assim por diante. Com o conceito de pginas no possvel misturar idiomas, alm de no considerar o Japons e Chins.Para isto foi criado o UNICODE. Ele associa a cada caractere e smbolo um valor nico e permanente de 16 bits, chamado de ponto de cdigo. Para facilitar a converso entre ASCII e UNICODE o consrcio mantenedor do cdigo utilizou o Latin1 como ponto de cdigo de 0 a 255. Cm 16 bits possvel criar 65.536 cdigos, dos quais grande parte j foi associada.

30

Вам также может понравиться