imc - 1º etim - arquitetura de computadores

113
  Copyright © 2009, ESAB – Escola Superior Aberta do Brasil 1  MÓDULO DE:  ARQUITETURA DE COMPUTADORES AUTORIA: FILIPE DE CASTRO FERREIRA Copyrig ht © 200 9, E SAB – Escola Superior Ab erta do Brasil

Upload: michelleguirra

Post on 20-Jul-2015

57 views

Category:

Documents


0 download

TRANSCRIPT

MDULO DE:

ARQUITETURA DE COMPUTADORES

AUTORIA:

FILIPE DE CASTRO FERREIRA

Copyright 2009, ESAB Escola Superior Aberta do Brasil

Copyright 2009, ESAB Escola Superior Aberta do Brasil

1

Mdulo de: Arquitetura de Computadores Autoria: Filipe de Castro Ferreira

Primeira edio: 2009

CITAO DE MARCAS NOTRIAS Vrias marcas registradas so citadas no contedo deste Mdulo. Mais do que simplesmente listar esses nomes e informar quem possui seus direitos de explorao ou ainda imprimir logotipos, o autor declara estar utilizando tais nomes apenas para fins editoriais acadmicos. Declara ainda, que sua utilizao tem como objetivo, exclusivamente na aplicao didtica, beneficiando e divulgando a marca do detentor, sem a inteno de infringir as regras bsicas de autenticidade de sua utilizao e direitos autorais. E por fim, declara estar utilizando parte de alguns circuitos eletrnicos, os quais foram analisados em pesquisas de laboratrio e de literaturas j editadas, que se encontram expostas ao comrcio livre editorial.

Copyright 2008, ESAB Escola Superior Aberta do Brasil

Copyright 2009, ESAB Escola Superior Aberta do Brasil

2

A

presentao

Falar sobre Arquitetura de Computadores , no mnimo, uma tarefa desafiadora. Por um lado, existem muitos produtos que podem ser considerados como computadores. Por outro lado, a rpida evoluo em todos os aspectos da tecnologia de computadores mostra-se praticamente sem fronteiras, a cada dia surgem novidades. Apesar da grande variedade e da rapidez da evoluo da rea de computadores, alguns componentes bsicos so comuns aos computadores, seja um micro ou um

supercomputador. Este Mdulo visa promover uma discusso sobre os conceitos fundamentais de arquitetura de computadores

O

bjetivo

Proporcionar ao aluno uma viso geral do tema Arquitetura de Computadores, entendendo os principais componentes e seus conceitos. Este entendimento base para qualquer estudo no campo da informtica. Este Mdulo de estudos no pretende abordar todos os assuntos relacionados disciplina Arquitetura de Computadores. Esta uma disciplina abrangente e seria impossvel resumi-la em um nico mdulo.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

3

E

menta

Breve histrico do computador; Arquitetura da Mquina de Von Neumann; Conceito de bit, byte, caractere e palavra; Representao numrica nos computadores, relao dos nmeros reais com os nmeros binrios; Tcnicas para efetuar operaes matemticas com os nmeros binrios; Sinal e Magnitude; Complemento a um; Complemento de dois; Hierarquia das memrias, organizao e caractersticas; Classificao das Memrias quanto a leitura e escrita; Funcionamento e caractersticas da memria principal do computador;

Funcionamento da memria cache e a sua relao com a memria principal; Funcionamento dos registradores especiais do processador, responsveis por organizarem o controle da execuo das instrues; Representao da Instruo e anlise do Ciclo da Instruo; Tipos de modos de endereamento; Pipelining; Organizao da interface de E/S; O controle das conexes entre o processador, a memria e os outros dispositivos; Maneiras de comunicao da informao pelos dispositivos do computador; E/S com Polling e Interrupo; E/S com acesso direto memria; Tipos de barramentos e suas diferenas; Formas do computador executar um programa; Linguagens de Programao e Tradutores; Compilao, Ligador e Interpretao; Comparao entre Compilao e Interpretao; Mquinas Virtuais e Java Bytecode.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

4

S

obre o Autor

PMP; Ps-Graduado em Engenharia de Sistemas; MBA em Gerncia de Projetos; Bacharel em Sistemas de Informao. Gerente de Projetos e ex-Consultor Microsoft Brasil. Certificado Microsoft em SharePoint 2007, Project Server 2007 (EPM 2007) e MS Project 2007. Experincia como Gerente de Fbrica de Software, Analista em Projetos de Desenvolvimento de Sistemas e Contedos para EAD. Experincia como Projetista e Administrador de Redes Windows e Linux. Tutor na ESAB (Escola Superior Aberta do Brasil) em Cursos de Ps-Graduao.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

5

S

UMRIO

UNIDADE 1 .............................................................................................................................. 9 Breve Histrico I .................................................................................................................... 9 UNIDADE 2 ............................................................................................................................ 12 Breve Histrico II ................................................................................................................. 12 UNIDADE 3 ............................................................................................................................ 17 Componentes de um Computador Mquina de Von Neumann I ......................................17 UNIDADE 4 ............................................................................................................................ 21 Componentes de um Computador Mquina de Von Neumann II .....................................21 UNIDADE 5 ............................................................................................................................ 25 Elementos Bsicos: representao dos dados ...................................................................25 UNIDADE 6 ............................................................................................................................ 29 Representao Numrica....................................................................................................29 UNIDADE 7 ............................................................................................................................ 33 Operaes Binrias .............................................................................................................33 Overflow ou estouro do limite .............................................................................................. 34 UNIDADE 8 ............................................................................................................................ 36 Representao de Sinal Negativo I ..................................................................................... 36 Sinal e Magnitude................................................................................................................ 36 UNIDADE 9 ............................................................................................................................ 39 Representao de Sinal II ...................................................................................................39 UNIDADE 10 .......................................................................................................................... 42 Sistema de Memria ...........................................................................................................42 UNIDADE 11 .......................................................................................................................... 45 Tipos de Memrias I ............................................................................................................45 UNIDADE 12 .......................................................................................................................... 47 Tipos de Memrias II Memria Principal ..........................................................................47 Capacidade da Memria Principal....................................................................................... 48 UNIDADE 13 .......................................................................................................................... 50 Tipos de Memrias III - Memria Cache .............................................................................50Copyright 2009, ESAB Escola Superior Aberta do Brasil 6

UNIDADE 14 .......................................................................................................................... 54 Registradores ...................................................................................................................... 54 UNIDADE 15 .......................................................................................................................... 57 Representao e Ciclo de Instruo ................................................................................... 57 Representao da Instruo ............................................................................................... 57 Formato das Instrues.......................................................................................................58 Ciclo de Instruo................................................................................................................ 59 UNIDADE 16 .......................................................................................................................... 61 Modos de Endereamento ..................................................................................................61 Modo de endereamento por registrador ............................................................................63 Modo por registrador direto .................................................................................................64 Modo por registrador indireto .............................................................................................. 64 UNIDADE 17 .......................................................................................................................... 65 Pipelining............................................................................................................................. 65 Mtodo Assncrono .............................................................................................................67 Mtodo Sncrono ................................................................................................................. 67 UNIDADE 18 .......................................................................................................................... 69 Organizao de uma Interface de E/S (Comunicao entre a Memria e UCP Barramentos) ...................................................................................................................... 69 UNIDADE 19 .......................................................................................................................... 72 Entrada/Sada ..................................................................................................................... 72 UNIDADE 20 .......................................................................................................................... 74 Formas de Comunicao ....................................................................................................74 UNIDADE 21 .......................................................................................................................... 78 Tcnicas de Transferncia de Dados I ................................................................................ 78 UNIDADE 22 .......................................................................................................................... 81 Tcnicas de Transferncia de Dados II ...............................................................................81 UNIDADE 23 .......................................................................................................................... 83 Tcnicas de Transferncia de Dados III ..............................................................................83 UNIDADE 24 .......................................................................................................................... 86 Padres de Barramento I ....................................................................................................86 UNIDADE 25 .......................................................................................................................... 88 Padres de Barramento II ...................................................................................................88 UNIDADE 26 .......................................................................................................................... 927

Copyright 2009, ESAB Escola Superior Aberta do Brasil

Execuo de Programas I ...................................................................................................92 UNIDADE 27 .......................................................................................................................... 96 Execuo de Programas II ..................................................................................................96 UNIDADE 28 ........................................................................................................................ 100 Execuo de Programas III ............................................................................................... 100 UNIDADE 29 ........................................................................................................................ 105 Execuo de Programas IV ............................................................................................... 105 UNIDADE 30 ........................................................................................................................ 108 Execuo de Programas V ................................................................................................ 108 GLOSSRIO ........................................................................................................................ 112 BIBLIOGRAFIA .................................................................................................................... 113

Copyright 2009, ESAB Escola Superior Aberta do Brasil

8

U

NIDADE

1

Breve Histrico I Objetivo: Conhecer a histria do computador.

Ao longo dos sculos foram construdas algumas mquinas com a funo de realizarem clculos aritmticos e outras operaes inteligentes. A primeira calculadora mecnica foi criada pelo alemo Wilhelm Schickard (1592-1635) em 1623. O funcionamento da mquina era baseado em rodas dentadas e ela era capaz de efetuar adies e subtraes. A inveno de Schickard, no entanto, no foi muito difundida e caiu rapidamente no esquecimento. Posteriormente, Blaise Pascal desenvolve a Pascoalina, uma mquina de calcular mecnica, tambm baseada em rodas dentadas, com o objetivo de livrar seu pai, coletor de impostos de Rouen (Frana), dos fastidiosos clculos que sua profisso lhe impunha.

Figura 1 - Pascoalina

Copyright 2009, ESAB Escola Superior Aberta do Brasil

9

Entre as mquinas que antecederam os modernos computadores ou processadores eletrnicos esto, principalmente, a mquina analtica projetada na primeira metade do sculo XIX pelo matemtico e inventor britnico Charles Babbage, que foi considerado o primeiro computador mecnico. Charles Babbage (1792-1871) concebeu um Computador Analtico dotado de um dispositivo a que chamou de MOINHO (uma mquina de somar com preciso de at 50 casas decimais), e um dispositivo de entrada que leria cartes perfurados contendo no somente nmeros (os dados), mas tambm INSTRUES (o que fazer com os dados). Imaginou ainda um dispositivo de memria que chamou de ARMAZM para guardar os nmeros, um banco com 1000 "registradores" cada qual capaz de armazenar um nmero de 50 dgitos - os nmeros dados pelos cartes de entrada ou ento nmeros resultados de operaes do moinho. Finalmente, incluiu um dispositivo impressor para dar sada aos resultados. As instrues (gravadas em cartes) possveis de ser implementadas pelo moinho eram: Entrar com um nmero no armazm Entrar com um nmero no moinho Mover um nmero do moinho para o armazm Mover um nmero do armazm para o moinho Comandar o moinho para executar uma operao Sair com um resultado

Para construir um dispositivo a partir destas ideias, Babbage contou com a colaborao inestimvel da matemtica Ada Augusta Byron, Lady Lovelace, filha do poeta Lord Byron. Ada desenvolveu sries de instrues para o calculador analtico, criando conceitos tais como sub-rotinas, loops e saltos condicionais. Babbage considerado o precursor do computador. Ada considerada a precursora do software.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

10

Tambm h a mquina tabuladora do americano Herman Hollerith, que trabalhava no departamento de censo dos Estados Unidos e idealizou um sistema de tratamento de informaes com o qual, mediante o uso de cartes perfurados, conseguiu aumentar de dois para duzentos o nmero de dados processados por minuto. Esses cartes, que receberam o nome do inventor, foram utilizados pelos computadores at 1970 como sistema de entrada e sada de dados. Da companhia fundada por Hollerith, a Tabulating Machine Company, surgiu mais tarde a International Business Machines Corporation (IBM).

Figura 2 - Carto Perfurado

Trs dcadas antes de Hollerith concretizar seu projeto, foi publicada a obra do matemtico britnico George Boole, An Investigation into the Laws of Thought (1854; Investigao das leis do pensamento). Boole considerava que os processos mentais do ser humano eram resultado de uma associao sucessiva de elementos simples que se podiam expressar sobre uma base de duas nicas alternativas: sim ou no. Foi essa a origem do mtodo matemtico de anlise formal conhecido como lgebra de Boole. Considerado na poca uma simples curiosidade, o mtodo viria a constituir o fundamento terico da informtica moderna.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

11

U

NIDADE

2

Breve Histrico II Objetivo: Conhecer o computador no sculo XX. Na evoluo dos equipamentos de informtica tornou-se habitual referir-se s etapas de desenvolvimento como "geraes", embora nem sempre haja acordo quanto a seu nmero ou quanto aos critrios utilizados em sua diferenciao. Neste Mdulo no sero classificados as geraes, mas o perodo em que foram criados. Os primeiros computadores eram caracterizados pelo uso de vlvulas a vcuo.

Figura 3 - Foto de vlvula usada na dcada de 40.

1943 a 1945 - ENIAC J. Presper Eckert, John V. Mauchly e Herman H. Goldstine, nos Estados Unidos, construram o ENIAC (Eletronic Numerical Integrator Computer), considerado o primeiro computador programvel universal. Durante a Segunda Guerra Mundial havia a necessidade, por parte do exrcito americano de desenvolver mtodos mais rpidos para calculo das trajetrias e alcance das novas armas. Esse trabalho era feito manualmente, utilizando-se calculadores de mesa. O Armys Ballistics12

Copyright 2009, ESAB Escola Superior Aberta do Brasil

Research Laboratory (BRL) utilizava cerca de 200 pessoas para resolver as equaes necessrias, sendo que a preparao das tabelas para uma nica arma poderia levar vrias horas ou at mesmo dias de trabalho de uma nica pessoa. Em 1943 foi aceito pelo exrcito americano o projeto para a construo do ENIAC. O ENIAC possua aproximadamente 17.480 vlvulas de rdio, pesava 4 toneladas, media 30 metros de comprimento por 3 de largura e ocupava uma rea de 180m2, chegando a consumir 150 KW. Em contrapartida conseguia realizar 5 mil operaes por segundo.

Figura 4 - Parte do Galpo que abrigava o ENIAC.

O ENIAC era uma mquina decimal e no uma mquina binria, onde cada dgito era representado por um anel de 10 vlvulas. A cada instante, apenas uma vlvula ficava em estado ON (ligado), representando um dos dez dgitos. A principal desvantagem do ENIAC era que ele tinha que ser programado manualmente, ligando e desligando chaves e conectando e desconectando cabos. A programao do ENIAC era feita atravs de 6.000 chaves manuais. A cada novo clculo, era preciso reprogramar vrias destas chaves. Isso sem falar no resultado, que era dado de forma binria atravs de um conjunto de luzes. No foi toa que a maior parte dos programadores da poca eram mulheres, s mesmo elas para ter a pacincia necessria para programar e reprogramar esse emaranhado de chaves vrias vezes ao dia.Copyright 2009, ESAB Escola Superior Aberta do Brasil 13

O ENIAC funcionava da seguinte maneira: Primeiro um grupo de cientistas desenvolvia equaes matemticas, na exata sequncia em que elas tinham que ser digeridas pelo sistema. A seguir seis especialistas programavam o computador para execut-las, girando botes de sintonia e plugando centenas de fios nas tomadas corretas. Portanto o que hoje o sistema operacional, em 1946 era uma operao completamente manual. O primeiro teste do ENIAC uma demonstrao feita para generais das Foras Armadas calculou a trajetria de uma bala de canho at um alvo determinado. Alimentado com as equaes, o computador forneceu os dados para que o canho fosse calibrado. A bala acertou o alvo, mas o que impressionou os generais foi que o tempo que o computador levou para resolver. Foi menor que o tempo da trajetria da bala. O nico problema do ENIAC era que para calcular a trajetria de outra bala, at um novo alvo, tudo tinha que ser refeito: das equaes at o (re)acerto dos fios.

1945 a 1952 EDVAC J. Presper Eckert, John V. Mauchly (engenheiros eletrnicos) e Herman H. Goldstine com a consultoria de John von Neumann, Doutor em Matemtica, pela Universidade de Budapeste, hngaro, naturalizado americano, especialista em Lgica, construram o EDVAC (Eletronic Discrete Variable Computer. Em 1945 Von Neumann, que foi um dos principais consultores do projeto ENIAC, sugeriu que o sistema binrio fosse adotado em todos os computadores, e que as instrues e dados fossem compilados e armazenados internamente no computador, na sequncia correta de utilizao. Estas sugestes tornaram-se a base filosfica para projetos de computadores.

1946 - Manchester Mark I Max Newman e a equipe da Universidade de Manchester, na Inglaterra, que teve a participao de Alan Turing, construram o Manchester Mark I, "primeiro computador que funcionou", que teve "a primeira visualizao na tela de dados contidos na memria" e o14

Copyright 2009, ESAB Escola Superior Aberta do Brasil

primeiro programa gravado executado em 21 de junho de 1948. O Harvard Mark I, parcialmente financiado pela IBM. O Mark I tinha o nome tcnico de Calculador Automtico Sequencial Controlado, e foi construdo entre 1939 e 1944, pelo professor Howard Aiken. O Mark I talvez tenha sido a maior mquina calculadora j construda (20 metros de comprimento por 3 de altura e 750 mil componentes). Independente dessa discusso a participao da IBM nos desenvolvimentos dos computadores inegvel. A IBM tambm teria outro destaque na histria dos computadores por um acontecimento: foi em um Mark II em que ocorreu o primeiro bug. A palavra j vinha sendo usada como gria, significando qualquer complicao, desde a Revoluo Industrial. As mquinas eram instaladas em locais onde havia muitos insetos voando e havia grande chance de que algum isento pousar em um lugar errado e causar estragos era grande, e qualquer parada mecnica era atribuda, a princpio, por bug. Com os computadores realmente foi um bug: Em 1945, uma mariposa conseguiu entrar num Mark II do Centro Naval de Virgnia, nos EUA, e travou todo o sistema, a partir da o nome passaria a ser sinnimo de qualquer falha ou erro.

Vdeo Assista ao vdeo Histria dos Computadores atravs do link Estudo Complementar. Vale pena!

Copyright 2009, ESAB Escola Superior Aberta do Brasil

15

Figura 5 Imagem do inseto que ocasionou o primeiro bug.

Caso tenha interesse em ler um histrico mais detalhado sobre os computadores, no deixe de acessar o arquivo Histrico dos Computadores atravs do link Estudo Complementar.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

16

U

NIDADE

3

Componentes de um Computador Mquina de Von Neumann I Objetivo: Conhecer a estrutura da arquitetura da Mquina de Von Neumann

VDEO Ateno! Antes de dar continuidade aos seus estudos. V ao ambiente: CAMPUS ON-LINE e assista ao vdeo referente UNIDADE 3.

A mquina de Von Neumann (John von Neumann) a arquitetura base utilizada pelos computadores atuais. uma arquitetura de utilizao genrica que permite resolver qualquer problema que se possa exprimir sob a forma de um algoritmo. Permite especificar programas que indicam as desejadas sequncias de operaes que devem ser realizadas, sobre a informao representada em binrio.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

17

Figura 6 Arquitetura de Von Neumann

Caso queira saber mais sobre este importante cientista acesse o link: http://pt.wikipedia.org/wiki/John_von_Neumann Ou a biografia completa em vdeo. http://www.youtube.com/watch?v=RF_CZpmVGzw Apesar de estar em italiano, este material muito bom e de fcil compreenso.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

18

A mquina proposta por Von Neumann rene os seguintes componentes: Memria Principal, Central de Processamento (UCP), composta pela Unidade Lgica Aritmtica (ULA) e a Unidade de Controle (UC) e Dispositivos de Entrada e Sada.

Figura 7 Mquina de John Von Neumann

Memria Principal A unidade de memria central serve para guardar programas e dados, sob a forma de uma representao binria. Cada instruo da mquina codificada como uma sequncia de bits. Cada valor de certo tipo codificado por uma determinada sequncia de bits.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

19

Figura 8 Sequncia de bits armazenados na memria principal

Figura 9 Exemplos de Memria Principal

Copyright 2009, ESAB Escola Superior Aberta do Brasil

20

U

NIDADE

4

Componentes de um Computador Mquina de Von Neumann II Objetivo: Conhecer mais dados sobre a Arquitetura da Mquina de Von Neumann

Unidade Central de Processamento (UCP) A unidade de central de processamento (CPU Central Processing Unit) trata do controle global das operaes e da execuo das instrues. Para esse efeito, a UCP contm as seguintes unidades internas: Unidade Lgica e Aritmtica, ULA (ALU- arithmetic and logic unit): A ULA executa as principais operaes lgicas e aritmticas do computador. Ela soma, subtrai, divide, determina se um nmero positivo ou negativo ou se zero. Alm de executar funes aritmticas, uma ULA deve ser capaz de determinar se uma quantidade menor ou maior que outra e quando quantidades so iguais. A ULA pode executar funes lgicas com letras e com nmeros. Unidade de Controle UC: Responsvel por gerar todos os sinais que controlam as operaes no exterior do CPU, e ainda por dar todas as instrues para o correto funcionamento interno do CPU.

A unidade de controle executa trs aes bsicas intrnsecas e pr-programadas pelo prprio fabricante do processador, so elas: busca (fetch), decodificao e execuo. Assim sendo, todo processador, ao iniciar sua operao, realiza uma operao cclica, tendo como base essas trs aes. Dependendo do tipo de microprocessador, a unidade de controle pode ser fixa ou programvel.Copyright 2009, ESAB Escola Superior Aberta do Brasil 21

Cada instruo da mquina pode envolver: Operaes aritmticas e lgicas Operaes de transferncia entre CPU e a Memria Central Operaes de transferncia entre CPU e Unidades de I/O Operaes de controle da sequncia de execuo das instrues

Figura 10 Exemplo de hardware de CPU

Entrada e Sada As unidades perifricas destinam-se a suportar as aes de comunicao da CPU e memria com o exterior, da, a sua designao de unidades de entrada e sada (ou I/O- input / output). So exemplos, o teclado, o monitor, o mouse, a impressora, as interfaces de comunicao com redes de computadores. Tambm, h unidades perifricas destinadas ao

armazenamento de dados, que, depois, so apresentados ao usurio, sob a forma deCopyright 2009, ESAB Escola Superior Aberta do Brasil 22

arquivos, geridos pelos programas do Sistema Operacional. Exemplos: os discos rgidos, discos pticos (CD/DVD), os discos flexveis e as fitas magnticas. Exemplos de dispositivos de Entrada/Sada (Input/Output): Monitor Sada (Output) Teclado Entrada (Input) Impressora Sada (Output) Disco Rgido Entrada e Sada (Input/Output I/O) Disco Flexvel Entrada e Sada (Input/Output I/O) Mouse Entrada (Input) Interface de Rede Entrada e Sada (Input/Output)

Figura 11 Exemplos de dispositivos de E/S

Copyright 2009, ESAB Escola Superior Aberta do Brasil

23

Vdeo Assista ao vdeo Viagem dentro do computador atravs do link Estudo Complementar. Vale pena assistir!

Copyright 2009, ESAB Escola Superior Aberta do Brasil

24

U

NIDADE

5

Elementos Bsicos: representao dos dados Objetivo: Identificar os conceitos de bit, byte, caractere e palavra.

Toda informao introduzida em um computador, sejam dados que sero processados ou instruo de um programa, precisa ser entendida pela mquina, para que possa ser; corretamente, interpretada e processada. As informaes apresentadas na forma de caracteres neste mdulo de estudos, por exemplo, so entendidas porque o leitor conhece o significado dos smbolos, que representam os caracteres alfabticos e os sinais de pontuao. O computador, sendo um equipamento eletrnico, armazena e movimenta as informaes internamente sob forma eletrnica; esta pode ser um valor de voltagem ou de corrente. Para que a mquina pudesse representar eletricamente todos os smbolos utilizados na linguagem humana, seriam necessrios diferentes valores de voltagem (ou de corrente). Tal mquina certamente seria difcil de ser construda para fins comerciais e, possivelmente, teria muito baixa confiabilidade. Esta foi uma das grandes desvantagens do primeiro computador eletrnico construdo, o Eniac. Von Neumann e equipe consideravam muito mais simples e confivel projetar um circuito capaz de gerar e manipular o menor nmero possvel de valores distintos, capaz de entender apenas dois valores diferentes: 0 e 1. Dessa forma, os computadores digitais so binrios. Toda informao introduzida em um computador convertida para um algarismo binrio ou dgito binrio, conhecido como bit. O bit pode ter ento somente dois valores: 0 e 1.25

Copyright 2009, ESAB Escola Superior Aberta do Brasil

Figura 12 Representao do bit 0 e 1

Um caractere isolado no significa nada para nosso sentindo de comunicao, razo pela qual se criam palavras. Da mesma forma, as informaes manipuladas por um computador so codificadas em grupos ordenados de bits, de modo a terem um significado til. A primeira definio formal atribuda a um grupo ordenado de bits, para efeito de manipulao interna mais eficiente, foi instituda pela IBM e , atualmente, utilizada por praticamente todos os fabricantes de computadores. Trata-se do byte, definido como um grupo ordenado de 8 bits, tratados de forma individual, como unidade de armazenamento e transferncia. Como os computadores so mquinas binrias, todas as indicaes numricas referem-se a potncias de 2 e no a potncias de 10 (como no sistema mtrico), por essa razo, a medida Kbyte representa 1.024 byte (2^10 = 1024 bytes = 8192 bits) e no 1000 bytes, o Mbyte (abreviatura do termo mega) representa 1.048.576 bytes (valor igual a 1024 x 1024 ou 210 x 210 = 220) e o giga, representado pelo caractere G, indica o valor igual a 1024 mega ou 1.048.576K ou 230.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

26

Mltiplos de bytes Prefixo binrio (IEC) Nome byte kibibyte(quilobyte) mebibyte(megabyte) gibibyte(gigabyte) tebibyte(terabyte) pebibyte(petabyte) exbibyte(exabyte) zebibyte(zettabyte) yobibyte(yottabyte) Smbolo B KiB MiB GiB TiB PiB EiB ZiB YiB Mltiplo 20 210 220 230 240 250 260 270 280 Nome byte quilobyte megabyte gigabyte terabyte petabyte exabyte zettabyte yottabyte Prefixo do SI Smbolo Mltiplo B kB MB GB TB PB EB ZB YB 100 103 106 109 1012 1015 1018 1021 1024

Figura 13 Mltimplos de bytes

Caso queira saber mais sobre bit, byte, suas potncias e converses, acessem o link: http://pt.wikipedia.org/wiki/Byte

Copyright 2009, ESAB Escola Superior Aberta do Brasil

27

Na computao tambm se criou o conceito de palavra. Assim, alm do bit e do byte, temos o conceito relacionado com o armazenamento e a transferncia de informaes.

Figura 14 Bit, Byte e Palavra.

A palavra nos computadores um valor fixo e constante para um dado processador (16, 32 ou 64 bits). De modo geral, usam-se dois valores diferentes: um relacionado unidade de armazenamento o byte; e outro para indicar a unidade de transferncia e processamento a palavra. Em geral, o computador processa valores representados por uma quantidade de bits igual palavra, indicando assim a capacidade de processamento do sistema, por exemplo, 32 bits ou 64 bits. Uma palavra deve representar um dado ou uma instruo, que pode ser processada, armazenada ou transferida em uma nica operao.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

28

U

NIDADE

6

Representao Numrica Objetivo: Representar numericamente, nos computadores, relao dos nmeros reais com os nmeros binrios.

Os sistemas numricos so sistemas de notao usados para representar quantidades abstratas denominadas nmeros. Usa-se a base para definir o sistema numrico e esta indica a quantidade de smbolos existentes. No dia a dia usa-se 10 smbolos numricos (de 0 at 9), que formam o sistema numrico decimal. O Sistema Decimal Na base decimal os nmeros expressam potncias de 10 em sua representao, como se pode observar nos exemplos abaixo:

Nmero 1758

... 103 * 1

102 * + 7

101 * + 5

100 * + 8 +

10-1 * +

10-2 *

...

O significado de cada nmero : 1758 = (1 * 103) + (7 * 102) + (5 * 101) + (8 * 100) = = 1000 + 700 + 50 + 8 = 1758

Copyright 2009, ESAB Escola Superior Aberta do Brasil

29

O Sistema Binrio Pelo fato do microcomputador ser constitudo de componentes eletrnicos digitais, torna-se necessrio o uso de um sistema numrico com 2 dgitos: o sistema binrio. O sistema binrio, ou de base 2, funciona de maneira anloga ao decimal, porm com apenas dois dgitos, 0 e 1. Neste caso, o dgito 0 representado pela no presena de tenso eltrica enquanto o 1 pela presena de tenso eltrica. Os dgitos de um sistema binrio so chamados de bit, de Binary digit (dgito binrio). A representao de nmeros em bases diferentes pode induzir confuso, portanto colocase um nmero subscrito para indicar a base de numerao adotada. Por exemplo, 7410 e 32310 so nmeros representados na base decimal; 100112 e 1012 so nmeros representados na base binria.

Converso de base binria para decimal Para se converter um nmero, na base binria para a base decimal, deve-se escrever cada nmero que compe (o bit), multiplicado pela base2 (base do sistema), elevado posio que ocupa. Uma posio esquerda da vrgula representa uma potncia e direita, uma potncia negativa. A soma de cada multiplicao de cada dgito binrio pelo valor das potncias resulta no nmero real representado. Por exemplo: 1 0 1 12 = (1 * 23) + ( 0 * 22) + ( 1 * 21) + ( 1 * 20) = 1110 1 0 02 = (1 * 22) + (0 * 21) + (0 * 20) = 410

Copyright 2009, ESAB Escola Superior Aberta do Brasil

30

Converso de base decimal para binria Para converter nmeros decimais em binrios, deve-se tratar o quociente e a parte fracionaria separadamente. Por exemplo, para converter 5310 em binrio faz-se: Operao 53/2 26/2 13/2 6/2 3/2 Quociente 26 13 6 3 1 0 Resto 1 0 1 0 1 1

O resultado a montagem do nmero a partir do ltimo resto da diviso para o primeiro, ou seja, 5310 = 1 1 0 1 0 12.

O Sistema Hexadecimal Embora o sistema binrio seja conveniente para os computadores, excessivamente inconveniente para os seres humanos. Por isto a notao hexadecimal preferida pelos profissionais de computao. A base decimal, embora mais compacta que a binria, desconfortvel devido tediosa converso entre as bases. Neste caso, adotou-se uma notao conhecida como hexadecimal, onde os dgitos binrios so agrupados em conjuntos de quatro. A cada combinao possvel de quatro dgitos binrios atribudo um smbolo.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

31

0000 = 0 0001 = 1 0010 = 2 0011 = 3 0100 = 4 0101 = 5 0110 = 6 0111 = 7

1000 = 8 1001 = 9 1010 = A 1011 = B 1100 = C 1101 = D 1110 = E 1111 = F

Converso de base binria para hexadecimal Para converter nmeros binrios em hexadecimal deve-se agrupar os dgitos binrios quatro a quatro, a partir da vrgula binria e substituir cada grupo pelo seu equivalente hexadecimal. 0100 1111 11002 = 4FC16 Converso de base hexadecimal para binria Para converter hexadecimal em binrio, deve-se substituir cada dgito hexadecimal pelo binrio equivalente de quatro dgitos. DEA16 = 1101 1110 10102

Copyright 2009, ESAB Escola Superior Aberta do Brasil

32

U

NIDADE

7tcnicas para efetuar operaes matemticas com os nmeros

Operaes Binrias Objetivo:Conhecer as binrios.

As operaes em base 2 podem ser feitas utilizando-se as mesmas tcnicas empregadas na aritmtica em base 10 - o raciocnio exatamente o mesmo. O mtodo apresentado o mais fcil para os seres humanos resolverem problemas envolvendo nmeros binrios. Para os computadores, a adio e multiplicao so implementadas utilizando-se circuitos que so anlogos s tcnicas utilizadas pelos seres humanos. A operao de soma de dois nmeros em base 2 efetuada levando-se em conta que s h dois algarismos disponveis (0 e 1). Abaixo, todas as possibilidades: 0+0=0 1+0=1 0+1=1 1 + 1 = 0, e vai um ou 1 02 Um exemplo da soma de dois nmeros na base binria: 10012 + 01012: 1 0 0 1 Transporte do Bit (vai 1) 910 510 1410

+

1 0 1

0 1 1

1 1 0

Copyright 2009, ESAB Escola Superior Aberta do Brasil

33

Um mais um igual a zero e vai um. O resultado corresponde exatamente ao valor esperado da base. A subtrao em base 2 mais complexa por dispormos somente dos algarismos 0 e 1 e, com isso, 0 1; necessita de pedir emprestado, de um valor igual base, no nosso caso 2, obtido do prximo algarismo diferente de zero esquerda. A operao exatamente a mesma de uma subtrao na base decimal. Exemplo: -1 110110 1100 (vai um)

101010

Overflow ou estouro do limite Nos exemplos acima no levado em considerao qualquer limite ou quantidade mxima de algarismos permitida para um dado registrador. Quando uma operao aritmtica resulta em um valor acima do limite mximo possvel, trata-se do problema denominado overflow ou estouro do limite. Quando resultado de uma adio pode ter um nmero de bits maior que o da palavra utilizada esta condio denominada overflow. Quando ocorre um overflow, o processador deve sinalizar este fato, para que o resultado no seja usado. Exemplo: Somar os nmeros 1510 + 4910 num registrador de 6 bits:

Copyright 2009, ESAB Escola Superior Aberta do Brasil

34

111111 15 = (0 0 1 1 1 1)2 49 = (1 1 0 0 0 1)2 64 = (0 0 0 0 0 0)2

(vai um)

Neste caso o valor esperado (64) no pode ser representado em um registrador de 6 bits.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

35

U

NIDADE

8

Representao de Sinal Negativo I Objetivo: Entender Sinal e Magnitude; Complemento a um.

Todos os exemplos citados nas unidades anteriores se referenciam a nmeros positivos. Os nmeros positivos possuem sempre a mesma representao (conforme descrito nas unidades anteriores). Para representar nmeros negativos, h trs formas convencionadas:

Sinal e Magnitude Na representao sinal e magnitude o bit mais esquerda de um nmero binrio reservado para indicar se o nmero positivo ou negativo e conhecido como bit de sinal, onde, convencionalmente, 0 indica um nmero positivo e 1 um nmero negativo. O restante indica a magnitude do nmero (ou seu valor absoluto).

Figura 15 Representao de Nmeros Inteiros em Sinal e Magnitude

Por exemplo, para representar o nmero - 7 em um registrador de 6 bits: -7=100111 O primeiro bit foi usado para representar o sinal (negativo) e apenas 5 bits foram usados para representar o valor absoluto (7).Copyright 2009, ESAB Escola Superior Aberta do Brasil 36

De forma geral pode-se expressar a faixa de um nmero da seguinte forma:

2

n 1

1 X

2

n 1

1 , onde n a quantidade de bits do nmero.

Como exemplo, para um registrador de 6 bits (n = 6), os limites de representao sero: de (26-1 -1) a +(26-1 -1) de (25 -1) a +(25 -1)

Faixa: de -31 a +31 A representao sinal-magnitude apresenta vantagens em relao inverso de um nmero (basta inverter o bit de sinal) e em relao determinar se o nmero positivo ou negativo (basta verificar o bit de sinal). Esta representao apresenta algumas desvantagens. O nmero zero pode ser representado de duas maneiras distintas: +010 = 00002 -010 = 10002 Por conta desta desvantagem, a representao sinal/magnitude normalmente no usada na implementao da ULA (Unidade Lgica Aritmtica). H tambm a possibilidade de ocorrer overflow sem a ocorrncia do vai um para fora do limite do registrador. Sem que haja um estouro do limite mximo do registrador. Por exemplo, se quisermos representar a soma de 15 + 17 = 32 com um registrador de 6 bits ocorrer um overflow, pois como visto, no primeiro exemplo desta unidade, a faixa de valores possveis para 6 bits de -31 a +31.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

37

+15 = 0 0 1 1 1 1 +17 = 0 1 0 0 0 1 100000

Ocorreu overflow, pois os bits da magnitude no foram suficientes para representar o valor desejado. Mas no houve estouro da capacidade do registrador, apenas mudou o bit do sinal.

Representao em complemento a um Para se achar a representao em complemento a um, deve-se inverter todos os bits do nmero, incluindo o do sinal. Por exemplo, o nmero +3 para -3, representado em complemento a um em um registrador de 6 bits: +3 = 0 0 0 0 1 1 -3 = 1 1 1 1 0 0 -> (complemento a um todos os bits invertidos) Esta representao possui vantagem sobre o sinal e a magnitude, pois h apenas um componente para soma e subtrao, diminuindo custo e o tempo de execuo. Entretanto, assim como em sinal e magnitude, h duas representaes para o nmero zero.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

38

U

NIDADE

9

Representao de Sinal II Objetivo: :Entender: Complemento de dois.

Representao em complemento de dois Nesta representao, o nmero negativo (ou a negao de um nmero) obtido em dois passos: Primeiro passo: Obtm-se o complemento de todos os bits do nmero positivo (trocando 0 por 1 e vice-versa) incluindo o bit do sinal (complemento a um) Segundo passo: Ao resultado obtido no primeiro passo soma-se 1 (em binrio), desprezando-se o ltimo transporte, se existir.

Por exemplo: Abaixo a representao em Complemento de 2 do nmero +10 para -10 em um registrador de 8 bits:

+10 = Primeiro passo Segundo passo Resultado -10 -10 = + =

0 0 0 0 1 0 1 0 1 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 0

Copyright 2009, ESAB Escola Superior Aberta do Brasil

39

As propriedades importantes da representao em complemento de 2 so: O sinal determinado pelo bit mais significativo; Negar um nmero duas vezes produz o nmero original; O nmero zero tem apenas uma representao; Somar as representaes em complemento de 2 de um nmero positivo e de um negativo (descartando-se o transbordo) fornece o resultado correto na representao em complemento de 2. Alm disto, a subtrao tratada como uma adio.

Um nmero representado em complemento de 2 pode assumir a seguinte faixa de valores:

2 X 2n 1

n 1

1 , onde n a quantidade de bits do nmero.

A faixa de representao neste caso assimtrica: Para o caso de 8 bits (byte), a faixa : 128 X 127 Para 16 bits (Word), a faixa : 32768 X 32767 Para 32 bits (double word), a faixa : 2147483648 X 2147483647

Copyright 2009, ESAB Escola Superior Aberta do Brasil

40

A principal vantagem ter uma nica representao para o nmero 0. Por exemplo, para representar o nmero zero em um registrador de 6 bits: 0 = 0 0 0 0 0 0

Primeiro passo Segundo passo Resultado

-0

= +

1 1 1 1 1 1 1 1 0 0 0 0 0 0

-0

=

O ltimo transporte ou transbordo (1) desprezado. Portanto, o 0 e o -0 tem uma mesma representao. O mtodo de representao em complemento de dois o mais utilizado para representar nmeros negativos.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

41

U

NIDADE

10

Sistema de Memria Objetivo:Reconhecer a hierarquia das memrias: organizao e caractersticas.

Memria tem papel crtico no desempenho de um sistema computacional. Ela recebe dados e transfere para processador, e vice-versa. Como a cada ciclo de instruo em uma mquina Von Neumann requer que o processador obtenha o cdigo da instruo e seus operandos, a velocidade de transferncia de itens da memria para o processador , de fato, crtica. Devido a grande variedade de caractersticas desejadas e dos diferentes tipos de memria no possvel implementar um sistema de computao com uma nica memria. Na realidade, h muitas memrias no computador, as quais se interligam de forma bem estruturada; constituindo um sistema em si, parte do sistema global e podendo ser denominada subsistema de memria. As principais caractersticas tecnolgicas que diferenciam os vrios tipos de dispositivos de memria incluem: custo, tempo e modo de acesso e persistncia do armazenamento.

Hierarquia de Memrias Para um funcionamento correto e eficaz da manipulao das informaes (instrues e dados de um programa) de e para a memria de um computador, verifica-se necessidade de diferentes tipos de memria. Para certas atividades, a transferncia de informaes a mais rpida possvel (Como por exemplo, execuo das instrues no processador), em outros casos, a rapidez no fator fundamental, mas sim a capacidade de armazenamento.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

42

No sentido de atender as diferentes caractersticas necessrias a um sistema de armazenamento, com uma relao custo/benefcio atraente, as diferentes tecnologias de fabricao e armazenamento de dados so utilizadas e organizadas de forma hierrquica.

Figura 16 - Hierarquia de sistemas de memrias.

Os principais parmetros de anlise das caractersticas das memrias sero apresentados como segue: Tempo de acesso: indica quanto tempo memria gasta no barramento de dados aps uma determinada posio ter sido endereada. o perodo de tempo decorrido desde o instante em que foi iniciada a operao, at que a informao seja disponibilizada. Tempo de ciclo de memria: perodo de tempo decorrido entre duas operaes sucessivas de acesso de leitura ou escrita na memria. Capacidade: a quantidade de informao que pode ser armazenada na memria; a unidade de medida mais comum o byte, embora tambm possam ser usadas outras unidades como clulas, setores, etc. O tamanho da memria (sua capacidade) indica

Copyright 2009, ESAB Escola Superior Aberta do Brasil

43

o valor numrico total de elementos de forma simplificada, atravs da incluso de K (kilo), M (mega), ou T (tera). Volatilidade: memrias podem ser do tipo voltil ou no voltil. Uma memria no voltil a que retm a informao armazenada quando a energia eltrica desligada. Memria voltil aquela que perde a informao armazenada, quando a energia eltrica desligada. Registradores e memria RAM so memrias volteis. Memrias magnticas, ticas e tambm as do tipo ROM, EPROM so memrias do tipo no voltil. Tecnologia de fabricao: ao longo do tempo diversas tecnologias vm sendo desenvolvidas para fabricao de memrias. Entre as mais conhecidas temos as memrias de semicondutores, as memrias de meio magntico as memrias de meio tico. Temporariedade: diz respeito ao tempo de permanncia da informao em um dado tipo de memria. Custo: o custo de fabricao de uma memria bastante variado em funo de diversos fatores, entre os quais se pode mencionar, principalmente: tecnologia de fabricao, que resulta em um maior ou menor tempo de acesso, ciclo de memria, etc. Uma boa unidade de medida de custo preo por byte armazenado, em vez do custo total da memria em si. Isto porque, devido s diferentes capacidades de armazenamento, seria irreal considerar, para comparao, custo pelo preo da memria em si.

Ateno! No d continuidade aos seus estudos sem antes acessar sua SALA DE AULA e fazer a Atividade 1 atravs do link ATIVIDADES.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

44

U

NIDADE

11

Tipos de Memrias I Objetivo: Classificar as Memrias quanto leitura e escrita.

Quanto leitura e escrita, as memrias podem ser classificadas como: R/W - Read and Write (memria de leitura e escrita), comumente chamada de RAM (Random Access Memory ou memria de acesso aleatrio). Esta memria permite operaes de escrita e leitura pelo usurio e pelos programas. Seu tempo de acesso da ordem de poucos nano segundos (ns) e independe do endereo acessado. construda com tecnologia de semicondutores (bipolar, CCD), pode ser esttica (SRAM) ou dinmica (DRAM) e voltil. A MP construda com memria R/W. ROM - Read Only Memory ou memria apenas de leitura. Esta memria permite apenas a leitura e uma vez gravada no pode mais ser alterada. Tambm de acesso aleatrio e no voltil, portanto tambm uma RAM. utilizada geralmente por fabricantes para gravar programas que no se deseja permitir que o usurio possa alterar ou apagar acidentalmente (por ex: a BIOS - Basic Input Output System e microprogramas de memrias de controle). Quando se liga uma mquina, da ROM que vem os programas que so carregados e processados no "boot" (na inicializao o hardware aponta automaticamente para o primeiro endereo da ROM). Desta forma, parte do espao de endereamento da MP ocupada pela ROM. A ROM mais lenta que a R/W e barata, porm o processo produtivo depende de ser programada por mscara ("mask programmed") em fbrica

Copyright 2009, ESAB Escola Superior Aberta do Brasil

45

e devido ao alto custo da mscara somente se torna econmica em grandes quantidades. PROM - Programmable Read Only Memory ou memria apenas de leitura, programvel. Esta memria uma ROM programvel (em condies e com mquinas adequadas, chamadas queimadores de PROM) e geralmente comprada "virgem" (sem nada gravado), sendo muito utilizada no processo de testar programas no lugar da ROM, ou sempre que se queira produzir ROM em quantidades pequenas. Uma vez programada (em fbrica ou no), no pode mais ser alterada. EPROM - Erasable Programmable Read Only Memory ou memria apenas de leitura, programvel (com queimadores de PROM) e apagvel (com mquinas adequadas, base de raio ultravioleta). Esta memria uma PROM apagvel. Tem utilizao semelhante da PROM, para testar programas no lugar da ROM, ou sempre que se queira produzir ROM em quantidades pequenas, com a vantagem de poder ser apagada e reutilizada. EEPROM (ou E2PROM) - Electrically Erasable Programmable Read Only Memory ou memria apenas de leitura, programvel e eletronicamente altervel. Tambm chamada EAROM (Electrically Alterable ROM). Esta memria uma EPROM apagvel por processo eletrnico, sob controle da UCP, com equipamento e programas adequados. mais cara e, geralmente, utilizada em dispositivos nos quais se deseja permitir a alterao, via modem; possibilitando a carga de novas verses de programas distncia ou ento, para possibilitar a reprogramao dinmica de funes especficas de um determinado programa, geralmente relativas ao hardware (p.ex., a reconfigurao de teclado ou de modem, programao de um terminal, etc.).

Copyright 2009, ESAB Escola Superior Aberta do Brasil

46

U

NIDADE

12

Tipos de Memrias II Memria Principal Objetivo:Conhecer o funcionamento e as caractersticas da Memria Principal do computador.

Memria Principal a parte do computador onde programas e dados so armazenados para processamento. A informao permanece na Memria Principal apenas enquanto for necessrio para seu emprego pela UCP, sendo ento a rea da MP liberada para ser posteriormente utilizada por outra informao. Quem controla a utilizao da Memria Principal o Sistema Operacional. Uma das principais caractersticas definidas no projeto de arquitetura de Von Neuman consistia no fato de ser uma mquina de programa armazenado. O fato das instrues, uma aps a outra, poderem ser imediatamente acessadas pela UCP que garante o automotismo do sistema e aumenta a velocidade de execuo dos programas. A memria precisa ter uma organizao que permita ao computador guardar e recuperar informaes quando necessrio. No teria nenhum sentido armazenar informaes que no fosse possvel recuperar depois. Portanto, no basta transferir informaes para a memria. preciso ter como encontrar essa informao mais tarde, quando ela for necessria, e para isso preciso haver um mecanismo que registre exatamente onde a informao foi armazenada, este mecanismo conhecido como Clula. Clula a unidade de armazenamento do computador. A Memria Principal organizada em clulas que a menor unidade da memria que pode ser endereada (no possvel buscar uma "parte" da clula) e tem um tamanho fixo (varia conforme a arquitetura da mquina). As memrias so compostas de um determinado nmero de clulas ou posies e cada clula composta de um determinado nmero de bits.Copyright 2009, ESAB Escola Superior Aberta do Brasil 47

Cada clula identificada por um endereo nico, pela qual referenciada pelo sistema e pelos programas. As clulas so numeradas sequencialmente, uma a uma, de 0 a (N-1), chamado o endereo da clula. A estrutura da Memria Principal um problema do projeto de hardware: - mais endereos com clulas menores ou - menos endereos com clulas maiores?

O tamanho mais comum de clula era 8 bits (1 byte); hoje so comuns clulas contendo vrios bytes. Endereo da clula 0 1 2 3 4 5 ... N Clula de dados (8 bits) 01100010 10111001 01100010 01100010 10111001 01100010 ... N

Capacidade da Memria Principal A capacidade da MP em bits igual ao produto do n de clulas pelo total de bits por clula. T=NxM T = capacidade da memria em bits N = n de endereos M = n de bits de cada clula

Copyright 2009, ESAB Escola Superior Aberta do Brasil

48

Para encontrar a capacidade em bytes, bastaria encontrar a capacidade em bits e depois dividir por 8 (cada byte contm 8 bits) ou ento converter o tamanho da clula para bytes e depois multiplicar pelo nmero de clulas. O ltimo endereo na memria o endereo N-1 (os endereos comeam em zero e vo at N-1).

Copyright 2009, ESAB Escola Superior Aberta do Brasil

49

U

NIDADE

13

Tipos de Memrias III - Memria Cache Objetivo: Conhecer o funcionamento da memria cache e a sua relao com a memria principal.

Cache uma memria especial de alta velocidade projetada para acelerar o processamento das instrues dadas Memria Principal pela CPU. A CPU pode acessar instrues e dados localizados na memria cache muito mais rapidamente do que na memria principal. Para a CPU processar uma instruo necessrio que esta seja carregada no registrador de instruo e seus operandos sejam trazidos da memria para os demais registradores. Enquanto estes acessos Memria Principal (MP) so feitos, a CPU tem que ficar esperando que os dados sejam disponibilizados. Para que a MP no seja um gargalo que limite a velocidade de processamento da CPU; foi criado um esquema de utilizao de memria Cache, que muito mais rpida que a principal, com tempos de acesso compatveis com a velocidade da CPU, e que serve para guardar as ltimas posies de memria acessadas.

Figura 17 - Memria cache e memria principal.

Como a experincia nos mostra que a reutilizao dos mesmos dados ou instrues muito intensa, este processo aumenta o desempenho do sistema de computao.Copyright 2009, ESAB Escola Superior Aberta do Brasil 50

O chamado princpio da localidade est por trs da maneira como os programas operam. Este princpio estabelece que os programas acessem uma parte relativamente pequena do seu espao de endereamento em um instante qualquer. Existem dois diferentes tipos de localidade: Localidade temporal: se um item referenciado, ele tende a ser referenciado novamente dentro de um curto espao de tempo. Localidade espacial: se um item referenciado, itens cujos endereos sejam prximos a eles tendem a ser logo referenciados.

No exemplo abaixo, certo programa constitudo de um grupo de instrues iniciais realizadas em sequncia (Sequncia1) dois loops e o resto do cdigo (Sequncia 2). Assim, quando o programa iniciado as instrues da sequncia1 so consecutivamente executadas uma aps a outra at que a regio de cdigo constituda pelo loop 1 seja executada. A localidade espacial aparece explicitamente na execuo de cada uma das sequncias. A localidade temporal, por sua vez, pode ser percebida quando da execuo de qualquer um dos loops, cuja sequncia de instrues nele contidas ser executada de tempos em tempos (a cada repetio do lao).

Copyright 2009, ESAB Escola Superior Aberta do Brasil

51

Figura 18 Exemplo de Princpio de localidade.

Exemplo dos princpios de localidade espacial e temporal Quando o processador solicita um item de dado gerando uma referncia para seu endereo, que pode ser fsico ou virtual, o gerenciador de memria requisita este item do cache. Duas situaes podem ocorrer: 1. cache hit - Acerto: o item est presente no cache, retornado para o processador praticamente sem perodo de latncia; 2. cache miss - Falta ou Falha: o item no est presente no cache e o processador deve aguardar item ser buscado da memria principal.

A taxa de acertos, ou razo de acertos, corresponde frao dos acessos memria encontrados no nvel superior, e com frequncia usada como medida de performance daCopyright 2009, ESAB Escola Superior Aberta do Brasil 52

hierarquia de memria. A taxa de faltas a frao de acessos memria no encontrados no nvel superior (na cache). Define-se como tempo de acerto o tempo necessrio para acessar o nvel superior da hierarquia (cache), que inclui o tempo necessrio para determinar se o acesso a informao vai gerar um acerto ou uma falta. A penalidade por falta o tempo necessrio para substituir um dos blocos do nvel superior, pelo bloco do nvel inferior contendo a informao desejada, mais o tempo para enviar a informao ao processador. Em razo do nvel superior (cache) ser menor e de ser constitudo de memrias mais rpidas, o tempo de acerto muito menor que o tempo necessrio ao nvel mais baixo da hierarquia (MP). Justamente este tempo de acesso o maior tempo dentro da penalidade por falta. Para que haja aumento de desempenho, com a incluso da memria cache, necessrio que exista mais acertos do que faltas. Isto implica no dimensionamento adequado da memria cache como um todo e principalmente do tamanho de cada bloco.

Vdeo Assista aos vdeos Como um computador funciona (parte 1 e 2) atravs do link Estudo Complementar. Este vdeo uma animao com humor sobre o funcionamento de um computador. Vale pena assistir!

Copyright 2009, ESAB Escola Superior Aberta do Brasil

53

U

NIDADE

14

Registradores Objetivo: Conhecer o funcionamento dos registradores especiais do processador, responsveis por organizarem o controle da execuo das instrues.

Dentro da UCP existe um conjunto de registradores que tem duas funes: Possibilitar ao programador de linguagem de montagem ou de mquina minimizar referncias memria. So os registradores visveis para o usurio. Controlar as operaes da CPU. So usados por programas privilegiados do sistema operacional e pela unidade de controle, para controlar a execuo de programas. So os Registradores de controle e estado.

Registradores visveis para o usurio Registradores visveis ao usurio so aqueles que armazenam as informaes que esto sendo processadas em um determinado instante e podem ser referenciados pela linguagem de mquina que a CPU executa. Podem ser classificados nas seguintes categorias: Registradores de Uso Geral Registradores de Dados Registradores de Endereos

Copyright 2009, ESAB Escola Superior Aberta do Brasil

54

A quantidade e funo de registradores existentes variam de acordo com o modelo do processador e de acordo com o fabricante. Os registradores de uso geral podem ser usados para uma variedade de funes, em alguns casos, podem ser usados para endereamentos. Em outros, existe uma separao clara ou parcial entre registradores de dados e registradores de endereos. Registradores de dados podem ser usados apenas para conter dados e no podem ser usados no clculo de endereamentos dos operandos. Registradores de endereos podem ser empregados, at certo ponto, como registradores de: Propsito Geral ou podem ser dedicados para um determinado modo de endereamentos. Alguns exemplos so: Registradores de Segmento: tem como finalidade indicar ao processador o endereo de um determinado segmento. Registradores de ndices: so usados para endereamento indexado, possivelmente com autoindexao. Apontador de topo de pilha: se houver endereamento de operandos na pilha visvel para o usurio, ento a pilha ser alocada na memria e existir um registrador dedicado que aponta para o topo da pilha. Com isso, as operaes de empilhar e desempilhar no requer um operando explcito.

Uma questo importante de projeto do conjunto de registradores decidir se sero de uso geral ou se tero uso especfico. Com o uso de registradores especializados, o tipo de registrador referenciado como operando de uma instruo geralmente implcito, sendo determinado pelo cdigo de operao. Com isso o campo do operando apenas identifica um registrador de um conjunto de registradores especializados, com economia de alguns bits de instruo. O outro lado desta questo que a especializao limita a flexibilidade de programao.55

Copyright 2009, ESAB Escola Superior Aberta do Brasil

Outra questo importante a quantidade de registradores a serem disponibilizados, seja para uso geral, seja para registradores de dados e de endereos. Um nmero muito pequeno de registradores resulta em mais referncias memria. Um nmero muito grande, por outro lado, no reduz significativamente o nmero de referncias memria. O nmero adequado parece estar entre 8 e 32 registradores (STALLINGS, 2002). O tamanho do registrador deve ser suficiente para acomodar o maior endereo usando no sistema, no caso de registrador de endereos. No caso de registrador de dados, deve ser capaz de conter a maioria dos tipos de dados.

Registradores de Controle e Estado So registradores empregados para controlar a operao da CPU e so usados para a transferncia de dados entre a CPU e a memria. Quatro registradores so essenciais para a execuo das instrues: Contador de Instruo (CI): tem a finalidade de indicar a prxima instruo a ser executada, sendo automaticamente atualizado pelo processador aps a busca da instruo. A instruo buscada carregada no RI. Registrador de Instruo (RI): contm a ltima instruo buscada. onde o cdigo de operao e as referncias a operando so analisadas. Registrador de Endereamento Memria (MAR): contm o endereo de uma posio de memria. A troca de dados com a memria feita usando o MAR e o MBR. Em um sistema com barramento, o MAR conectado diretamente ao barramento de endereo. Registrador de armazenamento temporrio de dados (MBR): contm uma palavra de dados a ser escrita na memria ou a palavra lida mais recentemente.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

56

U

NIDADE

15

Representao e Ciclo de Instruo Objetivo: Identificar a Representao da Instruo e a anlise do Ciclo da Instruo.

Representao da Instruo Quem executa um programa o hardware e o que ele espera encontrar um programa em linguagem de mquina (uma sequncia de instrues de mquina em cdigo binrio). Um programa em linguagem de alto nvel no pode ser executado diretamente pelo hardware, pois ele tem que ser transformado (traduzido) para linguagem de mquina, antes de ser carregada para memria, para que o hardware possa execut-lo. A linguagem de mquina composta de cdigos binrios, representando instrues, endereos, dados e est totalmente vinculada ao conjunto (set) de instrues da mquina.

Funcionalmente, as operaes do computador so:

Matemticas (aritmticas, lgicas, de complemento, de deslocamento.) Movimentao de dados (entre memria e registrador) Entrada-sada (leitura e escrita em dispositivos externos - dispositivos de Entrada / Sada)

Controle (desvio da sequncia de execuo, parar, entre outros)

Copyright 2009, ESAB Escola Superior Aberta do Brasil

57

Cada uma das instrues tem um cdigo binrio associado, que o Cdigo da Operao.

Formato das Instrues A instruo composta de Cdigo de Operao e zero, um ou mais Operandos:

Cdigo de operao (OPCODE) Operando 1 (OP1) OP 2 OP 3...

Cdigo de Operao ou OPCODE - identifica a operao a ser realizada pelo processador. o campo da instruo cujo valor binrio identifica a operao a ser realizada. Cada instruo dever ter um cdigo nico que a identifique.

Operando(s) - o campo da instruo cujo valor binrio sinaliza a localizao do dado (ou o prprio dado) que ser manipulado (processado) pela instruo durante a operao. Em geral, um operando identifica o endereo de memria onde est contido o dado que ser manipulado. Um operando pode tambm indicar um Registrador (que conter o dado propriamente dito ou um endereo de memria onde est armazenado o dado). Os operandos fornecem os dados da instruo. Obs.: Existem instrues que no tm operando. Ex.: Instruo HALT (PARE).

H diversos formatos de instrues, com caractersticas particulares, vantagens e desvantagens. O conjunto de instrues de uma mquina pode ser constitudo por instrues de diversos formatos. Esta flexibilidade permite a escolha da instruo adequada para aplicao em cada caso.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

58

Conjunto de instrues que pode ser analisado sob alguns aspectos, por exemplo: - quantidade de instrues - quantidade de operandos - modo de endereamento ( a forma de sinalizar a localizao de um dado, conhecido como Modos de Endereamento).

Ciclo de Instruo O processamento necessrio para a execuo de uma instruo chamado de ciclo de instruo. De forma simplificada pode-se entender o ciclo de instruo como composto de dois passos bsicos: ciclo de busca e o ciclo de execuo. De forma mais geral, o ciclo de instruo formado pelos seguintes passos: Busca da prxima instruo no endereo da memria principal apontado pelo CI e armazenamento da mesma no RI. Atualizao do CI, fazendo-o apontar para a instruo seguinte (CI= CI +1). Determinao do tipo de instruo armazenada no RI. Se a instruo precisa de operandos armazenados na memria principal, os seus endereos devem ser determinados. Caso necessrio, busca os operandos na memria principal. Execuo da instruo. Retorno ao primeiro passo, para iniciar a execuo da instruo seguinte.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

59

Figura 19 - Ciclo de instruo bsico.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

60

U

NIDADE

16

Modos de Endereamento Objetivo: Conhecer os tipos de modos de endereamento.

Na unidade anterior foi descrito o formato bsico de instrues de mquina e o ciclo de execuo de cada instruo, concluindo que: 1) O endereamento de uma instruo sempre realizado atravs do valor armazenado no Contador de Instruo (CI). Todo o ciclo de instruo iniciado pela transferncia da instruo para o Registrador de Instruo (RI); 2) Toda instruo consiste em uma ordem codificada (cdigo de operao), para o processador executar uma operao qualquer sobre os dados; 3) A localizao do(s) dado(s) pode estar explicitamente indicada na prpria instruo por um ou mais conjuntos de bits, denominados campo do operando. Todos os exemplos apresentados, at esse ponto, definiram o campo operando da instruo como sendo um endereo da MP onde est localizado o dado; no entanto, essa no a nica maneira de indicar a localizao dos dados, havendo outros modos de endereamento. Dentre os diversos modos de endereamento desenvolvidos para processadores, os principais so:

Modo Imediato O mtodo mais simples e rpido de obter um dado indicar seu prprio valor no campo operando da instruo, em vez de busc-lo na memria. A vantagem desse mtodo resideCopyright 2009, ESAB Escola Superior Aberta do Brasil 61

no curto tempo de execuo da instruo, pois no gasta ciclo de memria para sua execuo, exceto o nico requerido para a sua busca.

Desvantagens - O tamanho do dado fica limitado ao nmero de bits do operando (campo operando da instruo). A limitao de tamanho do campo operando reduz o valor mximo do dado que pode ser armazenado. - Este modo de endereamento no permite flexibilidade para alterar dados que variam a cada execuo do programa, portanto no adequado para variveis repetidamente operadas com diferentes valores a cada execuo do programa.

Modo Direto Nesse mtodo, o valor binrio contido no campo operando da instruo indica o endereo de memria onde se localiza o dado.

Vantagens - aplicado em mais situaes que o modo imediato; - Requer apenas uma referncia memria para busca do dado (alm de uma para a busca da instruo), sendo mais rpido que o modo indireto.

Desvantagens - Limitao do endereo da MP que pode ser indicado pelo tamanho do campo operando. - mais lento que o modo imediato.Copyright 2009, ESAB Escola Superior Aberta do Brasil 62

Modo Indireto Nesse mtodo, o valor binrio contido do campo operando representa o endereo de uma clula, mas o contedo da referida clula no o valor de um dado (como no modo direto), outro endereo de memria, cujo contedo o valor do dado. A grande desvantagem desse mtodo , obviamente, a maior quantidade de ciclos de memria requerida para completar o ciclo de instruo, pois para se acessar um dado, no modo indireto, necessrio efetuar dois acessos memria. Um para buscar o endereo do dado e outro para, efetivamente, buscar o dado.

Vantagens - Permite implementar estruturas de organizao de dados mais complexas, mais sofisticadas. - Elimina a limitao de clulas endereveis.

Modo de endereamento por registrador Esse mtodo tem caracterstica semelhante aos modos direto e indireto, exceto que a clula de memria referenciada na instruo substituda por um dos registradores do processador. Com isso, o endereamento mencionado na instruo passa a ser o de um registrador, e no mais de uma clula da MP. A primeira vantagem, logo observada, consiste no menor nmero de bits necessrios para enderear os registradores, visto que estes existem em muito menor quantidade que as clulas de memria. registrador: H duas maneiras de empregar o modo de endereamento por

Copyright 2009, ESAB Escola Superior Aberta do Brasil

63

Modo por registrador direto O registrador endereado na instruo contm o dado a ser manipulado.

Modo por registrador indireto O registrador referenciado armazena o endereo de uma clula de memria onde se encontra o dado.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

64

U

NIDADE

17

Pipelining Objetivo: Entender o que significa Pipelining.

VDEO Ateno! Antes de dar continuidade aos seus estudos. V ao ambiente CAMPUS ON-LINE e assista ao vdeo referente UNIDADE 17.

Pipelining uma tcnica desenvolvida para melhorar o desempenho de processadores. O pipelining permite que um processador sobreponha a execuo de diversas instrues de modo que mais instrues possam ser executadas no mesmo perodo de tempo. Uma pipelining de instrues semelhante a uma linha de montagem, de uma indstria. Na linha de montagem pode-se comear a fazer o segundo produto antes do primeiro estar concludo. De forma anloga, em uma pipelining de instrues, novas entradas so aceitas em uma extremidade, antes que entradas aceitas previamente apaream como sadas na outra extremidade. Por exemplo: Em uma lavanderia, onde cada sacola de roupa a ser limpa equivalente a uma instruo, cada etapa do processo de limpar a roupa (lavar, secar e dobrar) equivale a um ciclo de processamento; e a quantidade de sacolas de roupa limpas num determinado65

Copyright 2009, ESAB Escola Superior Aberta do Brasil

perodo de tempo era equivalente ao throughput do processador. Em uma lavanderia, sem pipeline, embora tenha uma mquina de lavar, uma de secar e uma pessoa para dobrar a roupa; somente uma sacola de roupa limpa de cada vez. Enquanto no lavar, secar e dobrar as roupas desta sacola, nenhuma outra sacola de roupa pode ser limpa. Nada ocorre simultaneamente. Se esta lavanderia utilizasse um processo em pipeline, logo que as roupas da primeira sacola estivessem lavadas, elas passariam para a secadora liberando a mquina de lavar para uma nova sacola de roupas. Assim que as roupas da primeira sacola estivessem secas, ento elas passariam a ser dobradas, as da segunda sacola que estavam sendo lavadas passariam para a o secador e uma nova sacola poderia ser posta na mquina de lavar.

Figura 20 - Fluxo de instrues em um processador com pipeline

Na execuo em pipeline, cada tarefa individualmente ainda requer n segundos e o tempo total para a execuo de uma operao em pipeline , em geral, ligeiramente maior que o tempo para executar a mesma operao monoliticamente (sem pipeline).Copyright 2009, ESAB Escola Superior Aberta do Brasil 66

Um dos overheads associados operao de um pipeline decorrente da necessidade de se transferir dados entre os estgios. H duas estratgias bsicas para controlar a transferncia de dados entre os estgios de um pipeline: o mtodo assncrono e o mtodo sncrono.

Mtodo Assncrono No mtodo assncrono, os estgios do pipeline comunicam-se atravs de sinais de handshaking, indicando a disponibilidade de dados do estgio corrente para o prximo estgio (RDY); indicando a liberao do estgio corrente para o estgio anterior (ACK).

Figura 21 Mtodo assncrono

Mtodo Sncrono No mtodo sncrono, os estgios do pipeline so interconectados por latches (registradores cujo objetivo armazenar dados) que armazenam os dados intermedirios durante a transferncia entre estgios, que controlada por um sinal de relgio. Neste caso, o estgio com operao mais lenta determina a taxa de operao do pipeline.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

67

Um ciclo de relgio

S1Busca de Instrues

S2Decodificao de Instrues

S3Leitura de Registradores Processador sem Pipeline

S4Execuo de Instrues

S5Escrita de Resultados

Um ciclo de relgio L a t c h

Um ciclo de relgio L a t c h

Um ciclo de relgio L a t c h

Um ciclo de relgio L a t c h

Um ciclo de relgio

S1Busca de Instrues

S2Decodificao de Instrues

S3Leitura de Registradores

S4Execuo de Instrues

S5Escrita de Resultados

Processador com Pipeline

Figura 22 Mtodo sncrono

O mtodo assncrono o que permite maior velocidade de operao do pipeline. Entretanto, o mtodo sncrono o mais adotado devido sua simplicidade de projeto e operao.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

68

U

NIDADE

18

Organizao de uma Interface de E/S (Comunicao entre a Memria e UCP Barramentos) Objetivo: Conhecer a organizao da interface de E/S.

A funo primordial de uma interface de E/S realizar controles adequados sobre os dispositivos perifricos, de modo que o processador possa se relacionar com estes perifricos de forma transparente. A organizao de uma interface de E/S pode ser entendida em duas partes, conforme mostrado na figura a seguir.

Figura 23 - Organizao tpica de uma interface de E/S.

Qualquer que seja o tipo de interface, a parte genrica muito semelhante. Nesta parte so encontrados, usualmente, alguns registradores que variam em quantidade de acordo com o tipo de perifrico acoplado. Pelo menos um registrador de dados, um registrador de

Copyright 2009, ESAB Escola Superior Aberta do Brasil

69

controle e um registrador de estado esto inclusos, sendo o acesso a estes registradores feitos atravs de endereos de E/S diferentes. Para operao de sada, o processador escreve um dado no registrador de dados e a interface procede o envio ao perifrico. Na operao de entrada, a interface armazena o dado recebido do perifrico no registrador de dados, que por sua vez lido pelo processador. Na operao de sada, o processador envia comandos atravs do registrador de controle, para que a interface possa interpretar e executar a operao solicitada; esta operao pode ser interna interface ou sobre o perifrico a ela conectado. O registrador de estado usado para veicular informaes gerais sobre uma operao de E/S. Tipicamente, este registrador possui bits para indicar o trmino de uma operao e para indicar condies de erro que eventualmente possam acontecer durante a operao. A parte especfica tem interao direta com o perifrico, sendo desta forma muito diferente de um perifrico para outro. Apesar das diferenas, geralmente na parte especfica temos dois conjuntos de sinais, um a via atravs da qual os dados so transferidos; outro so os sinais de controle com o perifrico.

Barramento de E/S Um barramento, ou bus, nada mais do que um caminho comum pelo qual os dados trafegam dentro do computador. Este caminho usado para comunicaes e pode ser estabelecido entre dois ou mais elementos do computador. O tamanho de um barramento importante, pois ele determina quantos dados podem ser transmitidos em uma nica vez. Por exemplo, um barramento de 16 bits pode transmitir 16 bits de dado, e um barramento de 32 bits pode transmitir 32 bits de dados a cada vez. A grande vantagem do uso do barramento de E/S ser um padro de comunicao entre o dispositivo e o processador, ou seja, uma interface. Isso faz com que sistemas que utilizem barramentos de E/S sejam muito flexveis, em oposio a conexes diretas entre oCopyright 2009, ESAB Escola Superior Aberta do Brasil 70

processador e cada dispositivo de E/S, permitindo que um sistema suporte muitos dispositivos de E/S diferentes; dependendo das necessidades dos seus usurios, e permitindo que estes mudem os dispositivos de E/S, que esto conectados em seus sistemas, medida que as suas necessidades mudam. A principal desvantagem dos barramentos em geral (e tambm dos barramentos de E/S) que tem uma largura de banda fixa que precisa ser compartilhada por todos os dispositivos que esto sobre ele. O barramento pode ser dividido em trs conjuntos: 1. Barramento de endereos: por onde trafegam os endereos de memria ou dispositivos de E/S. Este barramento unidirecional: somente o processador fornece endereos. Tem como funo conduzir um endereo fornecido pelo processador para que este endereo possa ser acessado. 2. Barramento de dados: por onde trafegam os dados do processador para memria e dispositivos de E/S e vice-versa. Portanto, tal barramento bidirecional: o processador tanto envia como recebe dados. 3. Barramento de controle: bidirecional. Por tal barramento trafegam os sinais de controle do microprocessador para memria e dispositivos, bem como da memria e dispositivos para o processador. Tem como funo indicar que o processador quer executar determinada ao (como por exemplo, ler ou gravar de um endereo de memria) ou receber um sinal indicando determinado estado (por exemplo, dado j disponvel no barramento de dados).

Copyright 2009, ESAB Escola Superior Aberta do Brasil

71

U

NIDADE

19

Entrada/Sada Objetivo:Identificar ocontrole das conexes entre o processador, a memria e os outros dispositivos.

Em sistemas como computadores pessoais e estaes de trabalho as interfaces de E/S esto ligadas ao processador atravs de barramentos de endereo, dados e controle, de maneira semelhante conexo entre memria principal e processador. A organizao tpica de um computador incluindo o subsistema de E/S mostrada na figura a seguir.

Figura 24 - Arquitetura de um computador incluindo o subsistema de E/S.

O que todos os dispositivos de entrada tm em comum que eles precisam codificar (converter) a informao de algum tipo em dados que podem ser processados pelo sistema digital do computador. Dispositivos de sada por outro lado, decodificam os dados emCopyright 2009, ESAB Escola Superior Aberta do Brasil 72

informao que entendida pelo usurio do computador. Neste sentido, um sistema de computadores digital um exemplo de um sistema de processamento de dados. O processador realiza acessos de leitura ou de escrita a uma interface de E/S. Em um acesso de leitura, o processador obtm um dado recebido do dispositivo perifrico conectado interface, ou ento uma informao de estado sobre uma operao de E/S em andamento ou recm-completada. Em um acesso de escrita, o processador fornece interface um dado que deve ser enviado ao dispositivo perifrico, ou ento o cdigo de um comando que inicia uma operao de E/S ou uma operao de controle sobre o dispositivo perifrico. Nos acessos s interfaces, o processador executa ciclos de barramento semelhantes aos descritos no captulo anterior. Cada interface de E/S identificada por um endereo nico. Em um acesso de leitura, o processador coloca o endereo da interface no barramento de endereo e ativa um sinal de leitura. Aps certo intervalo de tempo, a interface coloca a informao desejada no barramento de dados. O processador finaliza o ciclo de barramento lendo a informao presente no barramento de dados e retirando o endereo e o sinal de controle. Em um acesso de escrita, o processador coloca o endereo da interface e o dado nos respectivos barramentos, e ativa um sinal de escrita. A interface selecionada armazena a informao presente no barramento de dados. No final do ciclo de barramento, o processador retira o endereo e o dado e desativa o sinal de controle. Assim como nos ciclos de barramento com a memria, todos estes eventos so comandados pelo processador e ocorrem em sincronismo com o sinal de clock.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

73

U

NIDADE

20

Formas de Comunicao Objetivo: Conhecer as diferentes formas de Comunicao da Informao, pelos dispositivos do computador.

As portas de comunicao de um microcomputador permitem a interligao fsica dele com os diversos perifricos como: impressoras, modem, mouse, scanners, etc. H duas maneiras bsicas de comunicao de dados entre o computador e outros equipamentos. Temos a comunicao paralela e a comunicao serial.

Comunicao Serial Na comunicao Serial, o byte enviado por apenas uma via ou fio. Para que isso seja possvel, o byte desmembrado em bits e cada um enviado separadamente, um aps o outro. No local da recepo, os bits so "montados" novamente, recompondo o byte. Os sinais de controle so enviados separadamente.

Figura 25 - Esquema de comunicao serial.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

74

A porta serial contm um chip UART (Universal Asyncbronous Reciver/Transmiter) e alguns componentes de apoio. Como o nome indica, este chip recebe dados provenientes do barramento do PC e os traduz para o formato utilizado nas transmisses seriais. O chip tambm executa o procedimento inverso: receber uma string de dados, remover os caracteres de enquadramento e transferir os bytes de dados para o PC. Como os bits so transmitidos sequencialmente um a um, sua utilizao normalmente indicada apenas para perifricos mais lentos, como por exemplo, teclado, mouse, etc. ou quando o problema da distncia for mandatrio, como nas comunicaes a distncias mdias (tal como em redes locais) ou longas (comunicao via linha telefnica usando modem). A transmisso serial tem recebido aperfeioamentos importantes (seja de protocolo, de interface e de meio de transmisso) que vem permitindo o aumento da velocidade de transmisso por um nico par de fios, cabo coaxial ou de fibra tica. Como o aumento da velocidade de transmisso em interfaces paralelas ocasiona mais skew, a tendncia tem sido no sentido do aperfeioamento das interfaces seriais que hoje permitem taxas de transferncia muito altas com relativamente poucas restries de distncia. Em

microcomputadores, a interface USB - Universal Serial Bus permite hoje ligar at 128 dispositivos a taxas muito altas (centenas de kbps).

Comunicao Paralela Comunicao Paralela aquela em que os bits, que compem um byte ou palavra de dados, so enviados ou recebidos simultaneamente bem como os sinais de controle de comunicao. Para que isso seja possvel, faz-se necessrio um meio fsico (fio) para cada informao, seja ele de dado ou de controle.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

75

Figura 26 - Esquema de comunicao paralela.

O processo de transferncia em paralelo envolve um controle sofisticado e razoavelmente complexo, o que o torna mais caro. A propagao dos sinais no meio fsico um dos problemas mais importantes neste tipo de comunicao. A propagao dos sinais deve ser tal que todos os bits cheguem juntos outra extremidade do cabo. Cada condutor que compe o cabo tem pequenas diferenas fsicas, o que pode tornar a velocidade de propagao dos sinais ligeiramente diferente para cada condutor. Para cabos mais longos, um bit pode chegar a um determinado condutor pode chegar mais adiantado ou atrasado em relao aos demais, tornando a informao irreconhecvel. Este fenmeno chama-se skew. Em face deste problema, h limites para o comprimento do cabo que interliga um dispositivo ao computador, quando se usa o modo paralelo. As restries citadas contribuem para que a utilizao da comunicao em paralelo se limite a aplicaes que demandem altas taxas de transferncia; normalmente associadas a dispositivos mais velozes tais como, unidades de disco, ou que demandem altas taxas de transferncia, como CD-ROM, DVD, ou mesmo impressoras, e que se situem muito prximo do ncleo do computador. Em geral, o comprimento dos cabos paralelos limitado a at um mximo de 1,5 metros. O conector de uma interface paralela do tipo DB-25 e contm 25 pinos.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

76

Figura 27 - conector de uma interface paralela do tipo DB-25

Antes de dar continuidade aos seus estudos fundamental que voc acesse sua SALA DE AULA e faa a Atividade 2 no link ATIVIDADES.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

77

U

NIDADE

21

Tcnicas de Transferncia de Dados I Objetivo Saber utilizar as E/S com Polling e Interrupo.

Em geral, uma operao de E/S envolve a transferncia de dados entre a memria e a interface de E/S. Existem basicamente trs tcnicas para realizar a transferncia de dados: polling, interrupo e acesso direto memria. Descrio a seguir: E/S com Polling Na E/S com polling, o processador controla toda a transferncia de dados entre a memria e a interface de E/S. Para entender como o procedimento desta tcnica, considere o exemplo de uma operao de escrita em um setor de disco. Suponha que a interface controladora de disco semelhante quela mostrada na abaixo. Normalmente, o registrador de estado possui um bit, chamado done bit, que desativado quando um dado escrito no registrador de dados, sendo ativado quando este dado escrito no setor do disco. O diagrama abaixo mostra como acontece escrita de um setor de disco usando-se E/S com polling.

Copyright 2009, ESAB Escola Superior Aberta do Brasil

78

Figura 28 - Exemplo de E/S com polling.

Aps escrever um dado no registrador de dados, o processador l o registrador de estado e testa o done bit, para verificar se o mesmo j foi escrito no setor do disco. Este teste do bit de estado chamado polling. O processador continua realizando o polling at encontrar o done bit ativado, o que indica que o dado j foi escrito no setor do disco. Quando isto acontece, e se ainda existe algum dado a ser enviado, o processador escreve o novo dado no registrador de dados e reinicia o polling. Este ciclo repetido at que todos os dados tenham sido escritos no setor do disco. A principal vantagem da E/S com polling a sua simplicidade. No entanto, esta tcnica possui a desvantagem de que o processador fica dedicado operao de E/S. Isto pode ser extremamente ineficiente, sob o ponto de vista da utilizao do processador. Considere uma operao de envio de um bloco de caracteres para uma impressora. O tempo de impresso de um caracter infinitamente maior que o tempo de execuo de uma instruo. Manter oCopyright 2009, ESAB Escola Superior Aberta do Brasil 79

processador em polling durante o tempo de impresso de cada caracter um desperdcio, j que durante este intervalo de tempo o processador poderia executar alguns milhes de instrues de outro programa. Devido ao fato que o processador fica dedicado operao de E/S at o seu trmino, o uso da tcnica de E/S com polling restrito apenas a sistemas onde apenas um programa pode se encontrar em execuo a cada instante.

E/S com Interrupo Na E/S com polling, o processador fica dedicado operao de E/S porque ele o responsvel por determinar quando um novo dado pode ser transferido entre a memria e a interface de E/S. O mesmo no acontece na E/S com interrupo. Nesta tcnica, a interface responsvel por notificar o processador quando um novo dado pode ser transferido. Enquanto a E/S com polling uma t