apostila 1 - arquitetura de computadores -- autor-marcial porto fernandez

Upload: rafael-esteves

Post on 11-Oct-2015

59 views

Category:

Documents


0 download

TRANSCRIPT

  • Unidade

    Objetivo:

    Nesta unidade vamos apresentar os conceitos bsicos de Arquiteturas deComputadores.Iniciamoscomadefiniodealgunsconceitosqueseronecessriosparaoentendimentodeumaarquiteturadecomputadores.Depoisapresentamosumapequenahistriadoscomputadoreseletrnicosdesdeasuainvenoatosdiasdehoje.Finalmenteapresentamososcomponentesgeraisdeumaarquiteturadecomputadores.

    1Conceitos Bsicos

  • ARQUITETURA DE COMPUTADORES 11

    Captulo 1Introduo Arquitetura de Computadores

    Oserhumanosempreprecisourealizarclculos,sejamelesparaar-mazenaracomida,contarosanimaisouconstruirumacasa.Osprimeiroscomputadoresdomundoeramaspessoas.Ocomputadoreraumaprofis-socujotrabalhoeraexecutarosclculosrepetitivosexigidosparacompu-tartabelasdenavegao,cartasdemarseposiesplanetrias.Devidoaoserrosdecorrentedocansaodoscomputadoreshumanos,durantev-riossculososinventorestmprocuradoporumamaneiraquemecanizeestatarefa.

    AtaproximadamentemetadedosculoXX,haviaapenasmquinasrudimentaresqueauxiliavamarealizaodeclculos.Apartirdainvenodavlvulaeletrnica,otransistorecircuitointegrado,foipossvelconstruirmquinaseletrnicascommaiorcapacidadeevelocidade.Elachamadamaisprecisamentecomputadoreletrnicodigitaldeusogeraleestam-quinaquevamosfalarapartirdeagora.

    Os computadores so eletrnicosporquemanipulamdadosusandocircuitosdechaveamentoeletrnico,sejamelesvlvulaseletrnicas,tran-sistores,emaisrecentemente,circuitosintegrados.Digitalsignificaqueocomputadorguardaemanipulatodososdadosinternamentesobaformadenmeros(todososdadosnumricos,todososdadosdetexto,emesmoossonseasfigurassoarmazenadascomonmeros).Odgitosignificadedoedesdequeospovoscomearamacontarcomseusdedos,onomedgitoaplicadaarepresentaodenmeros.deusogeralporquepodemserprogramadosparaexecutarumagrandevariedadedeaplicaes(diferentedeumcomputadordepropsitoespecfico,projetadoparaexecutarsomenteumafuno).

    Arquitetura e Organizao de ComputadoresOstermosArquiteturaeOrganizaodeComputadorestmsignifi-

    cadodistintoparadescreverumsistemadecomputao.Humconsen-sonacomunidadedequeotermoArquiteturadeComputadorrefere-seaosatributosquesovistospeloprogramador.Porexemplo,conjuntodeinstrues,nmerodebitsderepresentaodosdados,endereamentodememriaemecanismosdeentradaesada,soexemplosdeatributosdearquiteturadecomputadores.

    OtermoOrganizaodeComputadoressereferesunidadesope-racionais e suas interconexesparaumadeterminadaarquitetura e sotransparentesparaoprogramador. Porexemplo,tecnologiasdoscompo-nenteseletrnicos,sinaisdecontrole, interfacesentreoscomputadoreseperifricos,soexemplosdeatributosdeorganizaodecomputadores.

    ApesardestelivrotratarespecificamentedeArquiteturadeComputa-dores,aUnidade2apresentaumaintroduoaosconceitosdeLgicaDigi-tal,maisapropriadaparaareadeOrganizaodeComputadores,comoobjetivodefacilitaroentendimentodasdemaisunidades.

  • 12 ARQUITETURA DE COMPUTADORES

    Hardware e SoftwareUmcomputadorumdispositivoqueexecutaquatrofunes:elere-

    cebedadosdeentradas(convertedadosdomundoexteriorparaouniversoeletrnico);armazenaosdados(deformaeletrnica);processadados(exe-cutaoperaesmatemticaselgicas);eexibeosdadosdesadas(mostraosresultadosparaosusuriosatravsdeumatela).

    Umcomputadorconsistenohardwareenosoftware.Ohardwareoequipamentofsico:oprpriocomputadoreosperifricosconectados.Osperifricossotodososdispositivosligadosaocomputadorparafinalidadesdeentrada,sada,earmazenamentodosdados(taiscomoumteclado,ummonitordevdeoouumdiscorgidoexterno).

    Osoftwareconsistenosprogramasenosdadosassociados(informa-o)armazenadosnocomputador.Umprogramaumasequenciadeins-trues que o computador segue com o objetivo demanipular dados. Apossibilidadedeincluirouexcluirprogramasdiferentesafontedeversa-tilidadedeumcomputador.Semprogramas,umcomputadorapenashar-dwaredealtatecnologiaquenofazqualquercoisa.Mascomasequnciadeinstruesdetalhadas,descrevendocadapassodoprograma(escritoporsereshumanos)ocomputadorpodeserusadoparamuitastarefasqueva-riamdoprocessamentodetextoasimulaodepadresdetempoglobais.

    Comoumusurio,vocirinteragircomosprogramasquefuncio-namemseucomputadoratravsdosdispositivosdeentradaconectadosaele,talcomoummouseeumteclado.Vocusaessesdispositivosparafor-neceraentrada(talcomootextodeumrelatrioquevocesttrabalhando)eparadarcomandosaoprograma(talcomoadefiniodequeumafrasedotextovaiaparecercomformatonegrito).Oprogramafornecerasada(osdadosresultantesdasmanipulaesdentrodocomputador)atravsdevriosdispositivosdesada(talcomoummonitorouumaimpressora).

    1.Paravoc,qualacategoriamaisimportantedeumcomputador,ohar-dwareousoftware.Umpodeserutilizadosemooutro?

    2.Pareuminstanteeidentifiqueemsuavoltadispositivosquedispedeumcomputador.Vocobservoucomocomputadoresestoemtodososlugaresecomosoimportantesparaanossavida?

  • ARQUITETURA DE COMPUTADORES 13

    Captulo 2Histria do Computador Eletrnico

    Apesardehaverrelatoshistricosdemquinasquerealizassemcl-culosmatemticoscomoaMquinadePascal(1642),amquinadeCharlesBabbage(1822)atoMarkIdaUniversidadedeHarvard(1944),oprimeirocomputadortotalmenteeletrnicofoioENIAC(1945).

    Paraclassificarasvriasetapasdodesenvolvimentodoscomputado-reseletrnicosdeacordocomatecnologiautilizada,oscomputadoresforamclassificadosemquatrogeraes,queveremosaseguir:

    Primeira GeraoOscomputadoresdeprimeirageraosobaseadosemtecnologiasde

    vlvulaseletrnicas.Estageraoiniciaem1943evaiat1959.Oscom-putadoresdaprimeira geraonormalmenteparavamde funcionarapspoucashorasdeuso.TinhamdispositivosdeEntrada/Sadarudimentares,calculavamcomumavelocidadedemilsimosdesegundoeeramprogra-madosemlinguagemdemquina.

    Em1943,umprojetobritnico,sobalideranadomatemticoAlanTuring, colocou em operao oCOLOSSUS utilizado para decodificar asmensagenscriptografadaspelamquinaEnigma,utilizadaspelosalemesna2GuerraMundial.Suacaractersticamaisinovadoraeraasubstituioderelseletromecnicosporvlvulaeletrnica.Apesardeterumaarqui-teturadecomputador,aindaelenopodeserchamadodeusogeralpoisrealizavaapenasumafunoespecfica.Essamquinausava2.000vlvu-laseletrnicas.

    Em1945,surgiuoENIAC-ElectronicNumericalIntegratorandCom-puter,ouseja, "Computadore IntegradorNumricoEletrnico",projetadoparafinsmilitares,peloDepartamentodeMaterialdeGuerradoExrcitodosEUA,naUniversidadedePensilvnia.FoioprimeirocomputadordigitaleletrnicodegrandeescalaprojetadoporJohn W. MauchlyeJ. Presper Eckert.Esteconsideradopelospesquisadorescomooprimeirocomputa-doreletrnicodeusogeral,isto,poderealizardiferentesfunesapartirda trocadeumprograma, apesar da sua reprogramao levar semanasparaserconcluda.

    OENIACtinhas17.468vlvulas,500.000conexesdesolda,30tone-ladasdepeso,180mdereaconstruda,5,5mdealtura,25mdecompri-mentoerealizavaumasomaem0,0002s.

    OENIACtinhaumgrandeproblema:porcausadonmerograndedevlvulaseletrnicas,operandotaxade100.000ciclosporsegundo,havia1,7bilhodechancesacadasegundodequeumavlvulafalhasse,almdesuperaquecer.Asvlvulasliberavamtantocalor,aproximadamente174KW,quemesmocomosventiladoresatemperaturaambientechegavaa67C.EntoEckert,aproveitoua idiautilizadaemrgoseletrnicos, fazendo

    Vlvula Eletrnica umdispositivo eletrnico for-madoporuminvlucrodevidro de alto vcuo cha-mada ampola contendovrios elementos metli-cos. A vlvula serve paracomutarcircuitoeampli-ficarsinaleltrico.

  • 14 ARQUITETURA DE COMPUTADORES

    queasvlvulasfuncionassemsobumatensomenorqueanecessria,re-duzindoassimasfalhaspara1ou2porsemana.

    Mesmocom18.000vlvulas,oENIACpodiaarmazenarsomente20nmerosdecadavez.Entretanto,graaseliminaodaspeasmveiselefuncionavamuitomaisrapidamentedoqueoscomputadoreseletro-me-cnicos.Noentanto,omaiorproblemadoENIACeraareprogramao.Aprogramaoerarealizadaatravsdaligaodefioseinterruptoresemumpainel.Amudanadecdigodeprogramalevavasemanas.

    Eckert e Mauchly se jun-taramaomatemticoJohn Von Neumannem1944paraproje-taroEDVAC(ElectronicDiscre-te Variable Automatic Compu-ter), que abriu caminhopara oprograma armazenado. Ele foiumsucessordoENIACeusavanumerao binria em vez dedecimalejutilizavaoconceitode programa atravs de cartoperfurado.IssopermitiaaoED-VAC mudanas de programasmaisrpidasemcomparaoaoENIAC.

    Noentanto,aprincipalcontribuiodoEDVACfoiaarquiteturadeprocessador,memriaeunidadesdeentradaesadainterligadasporumbarramento.ArquiteturaconhecidacomoArquitetura Von Neumannutili-zadaathojepelamaioriadoscomputadores.Mostramosaseguiraarqui-teturadoEDVAC.

    Figura 2 Arquitetura do EDVAC (Arquitetura von Neumann)

    Figura 1 ENIAC O primeiro grande computador

    eletrnico [foto Exrcito EUA]

  • 15ARQUITETURA DE COMPUTADORES

    Apenasem1951surgiramosprimeiroscomputadoresproduzidosemescalacomercial,comooUNIVACeoIBM650.

    Segunda GeraoNos equipamentos da se-

    gunda gerao, que durou de1959a1965,avlvulafoisubsti-tudapelotransistor.Otransistorfoicriadoem1947noBellLabo-ratoriesporWilliamShockleyeJ.Brattain.Seutamanhoera100vezes menor que o da vlvula,no precisava esperar um tem-po para aquecimento, consumiamenosenergia,eramaisrpidoemaisconfivel.

    O primeiro computador experimental totalmente com transistor foiconstrudonaUniversidadedeManchestereentrouemoperaoem1953.UmasegundaversodoComputadordeTransistorfoiconstrudaem1955.

    Oscomputadoresdasegundageraocalculavamemmicrossegun-doseerammaisconfiveisqueoscomputadoresdaprimeiragerao.OsseusrepresentantescomerciaisclssicosforamoIBM1401eoIBM7094,jtotalmentetransistorizado.Outracaractersticaimportante,almdousodetransistor,eraautilizaodememriacomncleodeferriteefitamag-nticaparaarmazenamentodedados.Essasmquinasjutilizavamlin-guagemdeprogramaoFORTRANeCOBOL.

    Terceira GeraoA terceira gerao,

    queduroude1964a1970,foi marcada com a substi-tuiodostransistorespelatecnologiadecircuitosinte-grados-transistoresecom-ponenteseletrnicosmonta-dosemumnicosubstrato.O circuito integrado foi in-ventado por Jack St. ClairKilbyeRobertNoyceeper-mitiu a compactao doscomputadores construdoscomtransistor.Nestagera-oo clculodeoperaesmatemticas chegava or-demdenanossegundosalmdoaumentodacapacidade,reduodasdi-mensesfsicasereduonadissipaodecalor.

    OprincipalcomputadorcomercialdaterceirageraofoioIBM360,lan-adoem1964.Eledispunhademuitosmodelosevriasopesdeexpansoquerealizavamaisde2milhesdeadiesporsegundoecercade500milmultiplicaes.OSystem/360foiumdosmaioressucessosdevendadaIBM.

    Figura 3 IBM 1401 [foto Computer

    History Museum]

    Transitor um disposi-tivo eletrnico construdocommaterial semicondu-tor (germnio ou silcio)que funciona como cha-ve de circuito ou ampli-ficador. Ele substituiu avlvula eletrnicapor sermenor, dissipar menoscalor e ter uma durabili-dademaior.

    Figura 4 IBM 360 [foto Computer History Museum]

  • 16 ARQUITETURA DE COMPUTADORES

    Quarta GeraoAquartageraoiniciouem1971eduraathoje.Elacontinuoucom

    autilizaodecircuitointegrados,masdiferenciadadaterceirageraopelautilizaodomicroprocessador,isto,umcircuitointegradoquerenetodasasfunesdocomputador.

    Emnovembro de 1971, a Intel lanou o primeiromicroprocessadorcomercial,o4004.Elefoidesenvolvidoparaumfabricantedecalculadoraseletrnicasjaponesa,aBusicom,comoumaalternativaaocircuitoeletrni-coqueerautilizado.Juntamentecomodesenvolvimentodocircuitointegra-dodememriaRAM,inventadaporRobertDennard,permitiuaconstruodomicrocomputador, equipamentospequenoscomgrandecapacidadedeprocessamento.O4004eracapazderealizarapenas60.000instruesporsegundo,mas seus sucessores, 8008, 8080, 8086, 8088, 80286, 80386,80486,etc,ofereciamcapacidadescadavezmaioresemvelocidadescadavezmaiores.

    A vantagem de um circuito integrado no apenas a reduo dasdimensesdoscomponentesdeumcomputador,masapossibilidadedeseproduzircomponentesemmassareduzindoseucusto.Todososelementosnocircuitointegradosofabricadossimultaneamenteatravsdeumnme-ropequenodemscarasticasquedefinemageometriadecadacamada.Istoaceleraoprocessodefabricaodocomputador,almdereduzirocus-to,damesmaformaqueainvenodaimpressoporGutenbergpossibili-touadifusoebarateamentodoslivrosnosculoXVI.

    Umcomputadortransistorizadode1959continha150.000transisto-resemumareade10m.Essestransistoreseraminfinitamentemenoresqueasvlvulaseletrnicasquesubstituiu,maseramelementosindividu-aisqueexigiamumconjunto individualparafixao.Nosanos80,essaquantidade de transistores podia ser fabricada simultaneamente emumnico circuito integrado.Ummicroprocessador atualPentium 4 contem42.000.000detransistoresfabricadossimultaneamenteumumapastilhadesilciodotamanhodeumaunha.

    Figura 5 Microcomputador IBM PC [foto Computer History Museum]

  • 17ARQUITETURA DE COMPUTADORES

    1.Qualfoiomaiorganhoquandooscomputadorespassaramaserconstru-doscomvlvulaseletrnicasemvezdemecanismoseletro-mecnico?

    2.Qualoprincipalproblemadaprimeirageraodecomputadoresecomoelefoiresolvidoparapermitirsuautilizaodeformaconfivel?

    3.Oqueainvenodotransistortrouxeparaaevoluodoscomputadoreseletrnicos?

    4.Qualasemelhanaentreoprocessodefabricaodeumcircuitointe-gradocomaimprensa?Oqueissopropiciou?

    5.Qual a caracterstica que diferencia a terceira da quarta gerao decomputadoresseambasutilizamocircuitointegrado?

  • ARQUITETURA DE COMPUTADORES18

    Captulo 3Componentes de uma Arquitetura de Computador

    Umcomputadorconstrudocomvrioscomponentesindividuais.AsligaesentreosdiversoscomponentesaessnciadaArquiteturadeCom-putadores.Aformacomooscomponenteseinterligamesecomunicamvaideterminaracapacidadeevelocidadedeprocessamentodeumadetermi-nadaarquitetura.

    Aprimeiraseomostraaarquiteturageraldeumcomputador.Emseguida apresentamos a Arquitetura Harvard e a Arquitetura Von Neu-mann,importantesparaentenderasArquiteturasusadasatualmente.Fi-nalmenteapresentamosaLeideMoore,umprognsticodeevoluodosmicroprocessadoresealgunscomentriossobreoslimitesdela.

    Componentes de um computadorAFigura5mostraaarquiteturasimplificadadeumComputador.Os

    computadoresmodernospodemterumaarquiteturabemmaiscomplexadoqueesta,masosblocosprincipaisestoaquirepresentados.

    Figura 6: Arquitetura de um Computador

    OprincipalmduloaUnidadeCentraldeProcessamento,usualmen-teconhecidacomoCPU(CentralProcessingUnit).ACPUocrebrodocomputadorondetodooprocessamentorealizado.Elaconstitudaportrssubmdulos:aUnidadeLgicaeAritmtica(ULA),osRegistradoreseaUnidadedeControle.NoscomputadoresmodernosaCPUconstrudaemumnicoCircuitoIntegrado(chip).

    AUnidadeLgica eAritmtica (ULA), tambmconhecida comoAri-thmetic and Logic Unit (ALU), responsvel por realizar as operaesdocomputadorcomosomaesubtraoassimcomoasfuneslgicas,OU,E,NOeOUExclusivo.AlgumasULAsmaissofisticadas realizam tambmmultiplicaesedivises.

  • 19ARQUITETURA DE COMPUTADORES

    OsregistradoressomemriasutilizadaspararealizarasoperaesnaCPU.Essasmemriassomuitorpidasedetamanhopequeno,geral-mentesuficienteparaguardarmenosdeumadezenadevalores.AlmdosregistradorescomumhaverumamemriaderascunhodentrodaCPU,chamadadeCache.Elautilizadaparaaumentaravelocidadedeproces-samentoreduzindootempodeacessomemriaexterna.

    AUnidadedeControleresponsvelporcontrolartodoofuncionamen-todaCPUetambmdetodoocomputador.ElacontrolaoprocessamentoentreULAeRegistradoreinteragecomobarramentoexternoondeficamosperifricos.AUnidadedeControletemumafunochavequeainterpreta-odocdigodoprogramaqueirnortearoscomandosdoprocessamento.

    ContinuandonaFigura5podemosobservarumbarramentoetrsm-dulosexternosCPU:Memria,DiscoeInterfacedeEntradaeSada(I/O).

    Obarramentoserveparainterligartodososcomponentesinternosdocomputador.Paraseobteraltasvelocidadesessebarramentogeralmenteparalelo (osdadossoenviadosparalelamente).Nessafigura representa-mosapenasumbarramento,masgeralmenteeledivididoembarramentodedados(ondeosdadostrafegam),barramentodeendereo(ondeindica-mosalocalizaodecadadado)eobarramentodecontrole(ondeindica-mosocomando,porexemplo,ler,escrever,copiar,etc).Emumcomputadorrealexistemvriosnveisdebarramentocomvelocidadesdiferentes,quantomaisprximodaCPUmaisrpidoele,equantomaisprximodosperif-ricosmaislentoele.

    AMemriaconstitudaporumconjuntodememriasemicondutorautilizadaparaarmazenarosdados temporariamente.Podemosdizerqueessaamemriadetrabalhodocomputadoregeralmenteficalocalizadanaplacamedocomputador.EssamemriamaislentaqueosRegistra-doresmasmaisrpidaqueasunidadesdearmazenamentoemdisco.Amemriasemicondutorageralmenteperdeosdadosquandoocomputadordesligado,porissodeve-seusarumaunidadedearmazenamentoperma-nente,odisco.

    Odiscoconsisteemumaunidadeeletro-mecnicaquearmazenaosdadosemumdiscomagnticoquemantmasinformaesmesmoquandoocomputadordesligado.Essaunidadetemgrandecapacidadedearma-zenamentomastemvelocidadedeacessosignificativamentemenoremrela-osmemriassemicondutoras.

    Omdulo deEntrada e Sada, ou Input/Output (I/O), estabelece aligaodocomputadorcomomundoexterno,usandoequipamentosperif-ricos.Essainterfacepermitealigaodetecladosemouses(paraentradadedados),monitoresouimpressoras(paraexibiodosdados)eplacasdecomunicao(paratrocardadosalongadistncia).Essainterfacesignifi-cativamentemaislentaqueosdemaiscomponentesdocomputadordevidoanaturezadosperifricoseaincapacidadehumanadeprocessarinforma-esnavelocidadedoscomputadores.

    Asprximasunidadesirodetalharcadaumdosmdulosquecons-tituemumcomputador.

    Arquitetura HarvardAArquiteturadeHarvard,mostradanafiguraabaixo,umaarqui-

    teturadecomputadorondeoscaminhosdecomunicaoeamemriadearmazenamento das instrues e de dados so fisicamente separados.

  • 20 ARQUITETURA DE COMPUTADORES

    Otermooriginoudacaractersticadocomputadoreletro-mecnicoMarkI,desenvolvidanaUniversidadedeHarvard,quearmazenavainstruesemumafitaperfurada(com24bitsdelargura)eosdadoseramarmazenadosemcontadoreseletromecnicos.Estamquinatinhaespaolimitadoparaoarmazenamentodedados, inteiramentecontidonaUnidadeCentraldeProcessamento,ecomonohavianenhumaligaodessamemriacomoarmazenamentodeinstruo,oprogramaeracarregamentoemodificandodeformainteiramenteisolada(off-line).

    Figura 7 Diagrama de blocos da Arquitetura Harvard

    NaArquiteturadeHarvard,nohnecessidadede fazer comparti-lhamentodasmemriascomdadoeinstruo.Emparticular,alarguradapalavra,osincronismo,atecnologiadaexecuoeaestruturadoendereodememriaparadadose instruespodemdiferir.Emalgunssistemas,asinstruessoarmazenadasemmemriasomentedeleitura(ROM)en-quantoamemriadedadosexigegeralmenteumamemriadeleitura/es-crita(RAM).Emalgunssistemas,hmuitomaismemriadeinstruodoqueamemriadosdadosdevidoaofatodequeosendereosdeinstruosomaioresdoqueendereosdedados.

    EmumcomputadorcomaArquiteturavonNeumann,oprocessadorcentralnopode lerumainstruoerealizarumaleitura/escritadeda-dossimultaneamente.Ambosnopodemocorreraomesmotempoporqueasinstrueseosdadosusamomesmobarramentodesistema.EmumcomputadorcomaarquiteturadeHarvard,oprocessadorcentralpodelerumainstruoeexecutarumacessomemriadedadosaomesmotempoporqueosbarramentos sodistintos.UmcomputadordaArquiteturadeHarvardpodesermaisrpidoparaumdeterminadoprocessadorporqueoacessoaosdadoseinstruonousamomesmobarramento.Noentanto,umaArquiteturadeHarvardexigeumcircuitoeletrnicomaioremaiscom-plexo,comparadocomaArquiteturaVonNeumann.

    Off-line todo processoemumcomputadorquerealizado fora do equipa-mento e independente deocomputadorestarligadoouno.

  • 21ARQUITETURA DE COMPUTADORES

    AArquiteturadeHarvardModificadamuitosemelhanteArquite-turadeHarvard,masdefineumcaminhoalternativoentreamemriadainstruoeoprocessadorcentraldeformaquepermitaqueaspalavrasnamemriadainstruopossamsertratadascomodadossomentedeleitura,noapenas instruo. Issopermitequeosdadosconstantes,particular-mentetabelasdedadosoutextos,sejamalcanadossemterqueprimeira-mentesercopiadoparaamemriadosdados,liberandoassimmaismem-riadedadosparavariveisdeleitura/gravao.Paradiferenciarleituradedadosdamemriadainstruosoutilizadasinstruesespeciais.

    AvantagemprincipaldaArquiteturadeHarvard-acessosimultneoamemriadedadoseinstruo-foicompensadapelossistemasmodernosdecache,permitindoqueumamquinacomArquiteturavonNeumanpu-desseoferecerdesempenhosemelhanteArquiteturadeHarvardnamaio-riadoscasos.

    ApesardissoaArquiteturadeHarvardainda muitoutilizada emaplicaesespecficas,ondeaarquiteturaaindaapresentaboarelaocus-to-desempenho,como:

    ProcessadoresdeSinalDigital (DSPs): Processadores especializa-dosemprocessamentodeudio,vdeooucomunicaes.Essespro-cessadoresprecisamrealizarumagrandequantidadedeoperaesaritmticas emuma grande quantidade de dados, fazendo que aArquiteturaHarvardsejaeconomicamentevivel.

    Osmicrocontroladores,pequenosprocessadoresusadosemaplica-esespecficascomocontroledemquinas,veculos,equipamen-tos.Essesprocessadoressocaracterizadospelapequenaquantida-dedememriadeprograma(geralmentememriaFlash)ememriadedados(SRAM),assim,aArquiteturadeHarvardpodeapressaroprocessamentopermitindooacessoinstruoedadossimulta-neamente.Obarramentoeoarmazenamentoseparadopossibilitaqueasmemriasdeprogramaededadostenhamlargurasdebitsdiferentes.Porexemplo,algunsPICstemumapalavradedadosde8bitsmastempalavrasdeinstruode12,14,16ou32bits,confor-meacomplexidadedoprograma.OsprodutosmaisconhecidosqueusamaArquiteturaHarvardso:processadoresARM(vriosfabri-cantes),oPICdaMicrochipTecnologia,Inc.,eoAVRdaAtmelCorp.

    Arquitetura Von NeumannAArquitetura de vonNeumann

    ummodelodearquiteturaparacompu-tador digital de programa armazenadoonde existe uma nica estrutura com-partilhadaparaarmazenamentodeins-truesededados.Onomeumaho-menagem aomatemtico e cientista decomputao John Von Neumann queprimeiropropsessaidia.

    Um computador com ArquiteturavonNeumannmantmsuas instruesdeprogramaeseusdadosnamemriade leitura/escrita (RAM). Essa arquite-turafoiumavanosignificativosobreos

    Figura 8 Diagrama de Blocos de uma

    Arquitetura von Neumann

  • 22 ARQUITETURA DE COMPUTADORES

    computadoresdosanos40,taiscomooColossuseoENIAC,queerampro-gramadosajustandointerruptoreseintroduzindocabosparaligarossinaisdecontroleentreasvriasunidadesfuncionais.Namaioriadoscomputado-resmodernosusa-seamesmamemriaparaarmazenardadoseinstruesdeprograma.

    OstermosArquiteturavonNeumannecomputadordePrograma-Armazenadosousadosindistintamentenessetexto.Aocontrrio,aAr-quitetura deHarvard armazenaumprograma emum local diferente dolocalutilizadoparaarmazenardados.

    VonNeumannfoienvolvidonoprojetodeManhattan.Ljuntou-seaogrupoquedesenvolveuoENIACparadesenvolveroprojetodocomputadordeprograma-armazenadochamadoEDVAC.OtermoArquiteturavonNeu-mannfoimencionadaemumrelatriosobreoprojetoEDVACdatadode30dejunhode1945,queincluiuidiasdeEckertedeMauchly.OrelatriofoilidoporvrioscolegasdevonNeumannnaAmricaeEuropa,influenciadosignificativamentetodososfuturosprojetosdecomputador.ApesardeserreconhecidoacontribuiodeJ.PresperEckert,JohnMauchlyeAlanTu-ringparaoconceitodecomputadordeprograma-armazenado,essaarqui-teturamundialmentedenominadaArquiteturaVonNeumann.

    Gargalos da Arquitetura Von NeumannOcompartilhamentodeestruturaparaarmazenardadoseinstrues

    entreoprocessadorcentraleamemriaconduzaogargalodeVonNeu-mann,devidolimitaodataxadetransfernciadosdadosdobarramen-toentreoprocessadorcentralememria.Namaioriadecomputadoresmodernos,ataxadetransmissodobarramentogeralmentemuitomenordo que a taxa em que o processador central pode trabalhar. Isso limitaseriamente a velocidade de processamento efetivo quando o processadorcentralexigidoparaexecutaroprocessamentodegrandesquantidadesdedadosnamemria.Oprocessador central forado continuamente aesperaratransfernciadedadosdeouparamemria.Apartirdoaumentodavelocidadedosprocessadoreseoaumentodotamanhoedavelocidadedasmemrias,ogargalodobarramentonicosetransformouemmaisumproblema.OtermodegargaloVonNeumannfoicriadoporJohnBackusemartigono1977ACMTuringAward.

    OproblemadedesempenhodaArquiteturaVonNeumannpodeserreduzidoatravsdousodecacheentreoprocessadorcentraleamemriaprincipal,epelodesenvolvimentodealgoritmosdeprediodedesvio.Oti-mizaesdaslinguagensorientadasaobjetomodernassomenosafetadasqueocdigoobjetolineargeradoporcompiladorFortrandopassado.

    Lei de MooreALeideMooredescreveumatendnciahistricadelongoprazona

    evoluodedesempenhodehardware,emqueonmerodetransistoresquepodemsercolocadosemumcircuitointegradodobraaaproximadamentecadadezoitomeses.Mesmonosendoumaleinaturalquenopossasercontrolada,aLeideMooreumbomprognsticoparaoavanodatecnolo-giamicro-eletrnicanosltimos40anos.

  • 23ARQUITETURA DE COMPUTADORES

    Figura 9 Grfico da Lei de Moore comparando com os processadores lanados [Intel]

    As caractersticasdemuitosdispositivos eletrnicos so fortementeassociadosLeideMoore:velocidadedeprocessamento,capacidadedeme-mriaeonmeroetamanhodospixelsnascmarasdigitais.Todoselescrescemataxasaproximadamenteexponenciais.Issoaumentadodrama-ticamenteousodaeletrnicadigitalemquasetodosossegmentosdaeco-nomiamundial.Atendnciaaconteceaquasemeiosculoenoesperadoreduzirpelomenosat2015.

    Aleirecebeuonomedoco-fundadordaIntel,GordonE.Moore,queintroduziuoconceitoemumartigode1965.Elatemsidousadadesdeentopelaindstriadesemicondutoresparaguiaroplanejamentodelongoprazoeparaajustarmetasparaapesquisaeodesenvolvimento.

    Limites da Lei de MooreEm13deabrilde2005,GordonMooreanunciouemumaentrevista

    quealeinopodesesustentarindefinidamente:Nopodecontinuarparasempre.Anaturezadastaxasexponenciaisquevocosempurraparaforaeeventualmentedisastresacontecem.

    No entanto, previu que os transistores alcanariam os limites at-micosdeminiaturizao:Nostermosdetamanho[dostransistores]vocpodeverquensestamosnosaproximandodotamanhodostomosqueumabarreirafundamental,masseroduasoutrsgeraesantesdeal-canarmosequeparecetodistanteetalveznochegaremosav-lo.Nsaindatemos10a20anosantesquensalcancemosolimitefundamental.Atlpoderemosfazerchipsmaioresequantidadedetransistoresdaordemdebilhes.

    Em1995,omicroprocessadorDigitalAlpha21164tinha9.3milhodetransistores.Seisanosmaistarde,ummicroprocessadoravanadoti-nhamaisde40milhesdetransistores.Teoricamente,comminiaturizaoadicional,em2015essesprocessadoresdevemtermaisde15bilhesdetransistores,eporvoltade2020chegarnaescaladeproduomolecular,ondecadamolculapodeserindividualmenteposicionada.

    Em2003aIntelpreviuqueofimviriaentre2013e2018comprocessodemanufaturade16nanmetroseportascom5nanmetros,devidoaotunelamentoqunticodosilcio.Noentanto,amelhoriadaqualidadedo

  • 24 ARQUITETURA DE COMPUTADORES

    processodefabricaopoderiaaumentarotamanhodoschipseaumentaraquantidadedecamadaspodemanterocrescimentonataxadaLeideMo-oreporpelomenosumadcadaamais.

    NestaunidadeapresentamososconceitosbsicosdeArquiteturasdeCom-putadores.Inicialmenteapresentamosalgumasdefiniesnecessriasparaoentendimentodeumaarquiteturadecomputadoresquesertilemtodasasunidadesdeste livro.Depoisapresentamosumapequenahistriadoscomputadoreseletrnicosdesdeasuainvenonosanos40atosdiasdehoje.Apresentamososcomponentesgeraisdeumaarquiteturadecompu-tadoresqueseroestudadosnasprximasunidades.Finalmenteapresen-tamosasArquiteturasHarvardeVonNeumannalmdeumadiscussosobreaLeideMoore.

    1.ObservandoaFigura8(arquiteturaVonNeumann)avalieoscomponen-tesquepodemlimitarodesempenho.Proponhasoluespararesolveressegargalo

    2.Qualmdulodeumaarquiteturadecomputadoresdevesermaisrpidoparamelhorarodesempenhodeumsistemadeprocessamentonumri-co(muitasoperaesmatemticas)?

    3.Qualmdulodeumaarquiteturadecomputadoresdevesermaisrpidoparamelhorarodesempenhodeumsistemadearmazenamentodeda-dos(muitosdadosguardadoseconsultados)?

    4.PesquisenaInternetalgumastecnologiasqueestosendodesenvolvidasparasuperaraslimitaesdaLeideMoore.

    Museu da Histria do Computador (em ingls) http://www.computerhistory.org/ Histria do Computador (em ingls) http://www.computersciencelab.com/ComputerHistory/History.htm Discusso sobre e Lei de Moore (em ingls) http://www.intel.com/technology/mooreslaw/

  • 25ARQUITETURA DE COMPUTADORES

    FERNANDODECASTROVELLOSO.Informtica: Conceitos Bsicos.7Ed.Editora:Campus,2004.Livrodestinadoaestudantesdecursosdein-troduoainformticacomosfundamentosdaInformticaeintroduzosalunosprogressivamentenosaspectosmais importantesdouniversodoscomputadores,memrias,sistemasoperacionais,unidadesdeentradaesa-da,bancosdedados, linguagens, tecnologiaorientadaaobjetosemuitomais.Repletodeilustraes,exemplos,exerccioserespostas,escritoporumexperienteprofessordecursosdeintroduoInformtica.

    BEHROOZPARHAMI.Arquitetura de Computadores.1Ed.Editora:Mc-Graw-Hill,2008.Livroqueenfatizatantoosprincpiostericosquantoosprojetosprticos,abordandoumamplolequedetpicoserelacionaarqui-teturadecomputadorescomoutroscamposdainformtica.Otemaapre-sentadoemcaptuloscurtos,ordenadosdemaneiraflexvel,emformadeaula,oquefacilitaacompreensodainter-relaoentreosvriostpicossemperderdevistaocontextogeral.

  • Unidade

    Objetivo: Nesta unidade vamos apresentar os conceitos de Lgica Digital necessrios

    para entendimentodasUnidades seguintes. Iniciamos coma apresentaodasunidades lgicas bsicas que possibilitam a construes de todos os circuitoslgicos,emseguidaapresentamososcircuitoscombinacionaismaistradicionaisemumaarquiteturaeconclumoscomaapresentaodoscircuitosseqenciais,queacrescentamoconceitodearmazenamentodainformao.

    Circuitos lgicos digitais

    2

  • ARQUITETURA DE COMPUTADORES 29

    Captulo 1Portas Lgicas Bsicas

    Osblocosbsicosdeumaarquiteturadecomputadorsoas portaslgicasouapenasportas.As portassooscircuitosbsicosquetmpelomenosuma (geralmentemais)entradaseexatamenteumasada.Osva-loresdaentradaedasadasoosvaloreslgicosverdadeirooufalso.Naconvenodecomputaocomumusar0parafalsoe1paraverdadeiro.

    Asportasnotmnenhumamemria.Ovalordasadadependesomen-tedovaloratualdasentradas.Estefatotornapossvelusarumatabela de verdade paradescreverinteiramenteocomportamentodeumaporta.PararepresentarmatematicamentealgicadigitalutilizamosalgebradeBoole.

    Portas bsicasPortas bsicas so portas fundamentais que podem formar outras

    portascomfunesespeciais.Nsconsideramosgeralmentetrstiposb-sicosdasportas,asportasE,asportasOU,easportasNO(ou inversores).Tambmusualchamarasportaspelotermoemingls,respectivamente,AND,OReNOT.

    Porta E (AND)UmaportaEpodeterumnmeroarbitrriodeentradas.Ovalorda

    sada1seesomentesetodasasentradasso1.Senoovalordasada0.Onomefoiescolhidoporqueasada1seesomenteseaprimeiraentra-daeasegundaentrada,e,,ean-simaentradasotodas1.

    frequentementetildesenhardiagramasdasportasedassuasin-terconexes.Emtaisdiagramas,aportaEdesenhadacomo:

    AtabeladeverdadeparaumaportaEcomduasentradasmostradaabaixo:

    x y z

    0 0 0

    0 1 0

    1 0 0

    1 1 1

    lgebra de Boolefoicria-da pelo matemtico Ge-orgeBoole no sculoXIXcom objetivo de definiruma srie de operaeslgicas aplicadas a sis-temas binrios (0s e 1s).Essa lgebra permite re-alizar inferncias lgicasem computadores bin-rios.

  • 30 ARQUITETURA DE COMPUTADORES

    Porta OU (OR)ComoaportaE,aportaOUpodeterumnmeroarbitrriodeentra-

    das.Ovalordasada1,seesomentese,pelomenosdeumdosvaloresdaentrada1.Casocontrrio,asada0.Ousejaovalordasada0somentesetodasasentradasso0.Onomefoiescolhidoporqueasada1,seesomentese,aprimeiraentradaouasegundaentrada,ou,, ou a n-sima entradaso1.

    Emesquemasdecircuito,nsdesenhamosaportaOUcomo:

    AtabeladeverdadeparaumaportaOUcomduasentradasmostra-daabaixo:

    x y z

    0 0 0

    0 1 1

    1 0 1

    1 1 1

    Porta NO (NOT)AportaNOtambmconhecidacomo inversore temexatamente

    umaentradaeumasada.Ovalordasada1seesomenteseaentrada0.Seno,asada0.Ousejaovalordasadaexatamenteoopostodovalordaentrada.

    Emesquemasdecircuito,nsdesenhamosaportaNOcomo:

    Atabeladeverdadeparauminversormostradoabaixo:

    X y

    0 1

    1 0

    Portas compostassvezes,prticocombinar funesdasportasbsicasemportas

    mais complexasafim reduzir o espao emdiagramasde circuito.Nestaseo,nsmostraremosalgumasportascompostasjuntocomsuastabelasdeverdade.

    Porta NO-E (NAND)AportaNOEumaportaEcomuminversornasada.Assimemvez

    dedesenhardiversasportascomesta:

  • 31ARQUITETURA DE COMPUTADORES

    Nsdesenhamosumanicaporta-ecomumpequenoanelnasadacomoeste:

    Aporta-noe,assimcomoaporta-epodeterumnmeroarbitrriodeentradas.

    A tabela de verdade para aporta-noe semelhante tabela paraporta-e,excetoquetodososvaloresdasadasoinvertidos:

    x y Z

    0 0 1

    0 1 1

    1 0 1

    1 1 0

    Porta NO-OU (NOR)AportaNO-OUumaportaOUcomuminversornasada.Assimem

    vezdedesenhardiversasportascomoesta:

    NsdesenhamosumanicaportaOUcomumpequenoanelnasadacomoeste:

    Aportano-ou,assimcomoaportaoupodeterumnmeroarbitrriodeentradas.

    Atabeladeverdadeparaaportano-ousemelhantetabelaparaportaou,excetoquetodososvaloresdasadasoinvertidos:

    x y z

    0 0 1

    0 1 0

    1 0 0

    1 1 0

  • 32 ARQUITETURA DE COMPUTADORES

    Porta OU-EXCLUSIVO (XOR)AportaOU-EXCLUSIVOsimilaraumaportaOU.Apesardepoder

    terumnmeroarbitrriodeentradasnormalmenterepresentamosapenasduasentradas.Ovalordasada1sesomenteumadasentradas1eaoutra0,porissosedizou-exclusivo.Seno,asada0.Assim,emvezdedesenhardiversasportascomoesta:

    Nsdesenhamosumaportaou-exclusivocomomostradaabaixo:

    Atabeladeverdadeparaumaportaou-exclusivocomduasentradasmostradaabaixo:

    x y z

    0 0 0

    0 1 1

    1 0 1

    1 1 0

    MasparaqueserveumaportaOU-EXCLUSIVO?Elaumblocoes-sencialparaaconstruodeumcircuitomuitotilemcomputadores,oSOMADOR.

    1.Analiseastabelasverdadesevejacomopoderserconstrudoumcir-cuitoque implementeuma funoOUapartirde funoE (dica:DeMorgan).

    2. Projeteumcircuitocom lgicadigitalque indiquequandoumacaixadguaestcheia,estvaziaequandoossensoresestocomdefeito(cai-xacheiaenovazia).

    3.PesquisesobrelgebradeBooleevejacomopodemosrepresentarfun-eslgicasdemaneiratextual.

  • ARQUITETURA DE COMPUTADORES 33

    Captulo 2Circuitos Combinacionais

    Umcircuitocombinacionalumcircuitoconstrudocomportasdel-gicadigitalbsicasqueimplementamfunesmaiscomplexas.Aprincipalcaractersticadeumcircuitocombinacionalqueasuasadadependeuni-camentedesuasentradas.Assim,aosecolocarumconjuntodeterminadodeentradassempreobteremosamesmasada.Oscircuitoscombinacio-naisnopossuemnenhumatipodememria.

    Existeuma grande variedadede tipos de circuitos combinacionais.Apresentaremosaquiapenasomultiplexador,decodificador,amatrizlgicaprogramveleossomadores.

    MultiplexadoresUm multiplexador, ou simples-

    mentemux,umdispositivoselecionadadosprocedentesdevriasentradasparaumanicasada.Soutilizadosemsituaesondenecessrioesco-lher apenasuma entrada e isolar asdemaisentradas.

    Emcircuitosdigitais,omultiple-xadorumdispositivoquepossuiv-riasentradasdedadosesomenteumasadadedados.Apartirdeumcircuitodecontrolenoqualaentradaovalordaentradadesejada,possvelesco-lheraportadeentradaquesedesejapassarparaasada.Porexemplo,ummultiplexadordeduasentradasumasimplesconexodeportaslgicascujasadaSaentradaAouaentradaBdependendodovalordeumaentradaCqueselecionaaentrada.

    Ocircuitoabaixomostraumamultiplexadorcom8entradas(E0aE7)e1sada(S).Aseleodaentradarealizadapelaentradadecontrolecom3entrada(C0aC2)quedeveindicaronmerobinriodaentradaquesequerselecionar.Seporexemplo,colocarmosovalor111nasentradasC0aC3vamoshabilitaraentradaE7(asentradasnegadasentramnaportaEondeaentradaE7estligada).AssimovalordaentradaE&(sejaele0ou1)copiadoparaaportaS.

    Umdemultiplexador,ousimplesmentedemux,umdispositivoqueexecutaafunoinversadomultiplexador.Umcircuitodemultiplexadorconstrudoapartirdeumdecodificador,poisapartirdeumcdigodecon-trolepodemosescolherumasada.

    Figura 10 Diagrama de um Multiplexa-dor de 8 entradas e 1 sada com 3 bits

    de controle

  • 34 ARQUITETURA DE COMPUTADORES

    DecodificadoresUmdecodificadoroudecodificador

    de endereos um circuito que possuidois oumaisbitsde controle comoen-trada (por exemplo, umbarramento deendereo)epossuiumoumaisdispositi-vosdesadaquepoderserselecionado.Quandocolocamosumdadonasentra-das de controle C0, C1 eC2, uma dassadas S0 a S7, e apenas uma, sele-cionada.UmdecodificadorcomNbitsdecontroledeentradapodeselecionarat2Ndispositivosindividuaisdesada.

    Umdecodificadortambmpodeserchamadodedemultiplexadoroudemuxquando associamos uma entrada co-mumacadaportaE.QuandoocircuitodecontroleativarumaportaEelavaico-piarodadodeentradaparaumadeter-minadasada,fazendoafunoinversadeummultiplexador.

    Matriz Lgica ProgramvelUmamatriz lgicaprogramvel, tambm conhecido por PAL (Pro-

    gramableArrayLgic)ouPLD(Programmable logic device)umdispositivoeletrnicode lgicadigitalprogramvelquepossibilita implementarumagrandevariedadedecircuitoscombinacionais.

    Masaocontrriodeumaportalgicafixa,quetemumafunode-terminada,umdispositivodematrz lgicaprogramvel temuma funoindefinidanomomentodesuafabricao.Ocircuitodeveserprogramadoparaexecutarafunodesejada.Existemumagamaenormedefabricantesdedispositivosprogramveisedecategoriasdedispositivos,cadaumcomuma aplicao especfica. Alguns dispositivos so programveis apenasumavezeoutrospodemserprogramadosvriasvezes.Algunsdispositivosreprogramveisperdemsuaprogramaoquandodesligadoseoutrosman-tmagravaomesmoquandoaenergiadesligada.

    QualquerfunoboleanapodeserconstrudaapartirdacombinaodeportasEeportasOU.Ocircuitomostradonafiguraabaixomostraumexemplodeumdispositivodematrizdelgicaprogramvel.AsentradasAeBsosinaisdeentradadocircuito.Aprimeirafunoimplementadagerarosinalprprioeanegaodecadasinal.UmamatrizfaztodasascombinaespossveisnamatrizdeportasE.ComotemosduasentradasAeB,teremos4combinaespossveisdefunoE.Essaetapageratodososprodutosdossinaisdeentrada.

    AetapaseguinteumamatrizdeportasOU,quepermiteacombinaodetodasasentradasE.Nessecasotemosumfusvel,queimadonoprocessodegravao,quevaidefinirquaisfuneslgicasseroimplementadasparacadasada.Essaetapageraassomas dosprodutosdesejados.Comessaorganizaopodemosimplementarqualquerfunodelgicabinria.

    Figura 11 Diagrama de um Decodifica-dor de 8 sadas com 3 bits de controle

  • 35ARQUITETURA DE COMPUTADORES

    Figura 12 Diagrama de uma Matriz Lgica Programvel com 2 entradas e 4 sadas

    SomadorOsomadorbinrioumcircuitoquerealizaaoperaodesoma,e

    tambmsubtraoemcomplementodedois,deumbit.EssencialmenteosomadorconstitudoporumOU-ExclusivoquecalculaoresultadoeumEquecalculaovai-um.Oprincpiomostradonomeio-somador,masumcircuitorealosomadorcompleto,ambosmostradosnasprximassees.

    Meio SomadorOCircuitosomadorrealizaasomadeumbittendocomoresultadoa

    valordasomaeobitdevai-umconformediagramamostradoabaixo:

    Atabeladeverdadedeummeio-somadormostradoabaixo:

    X Y S Co

    0 0 0 0

    0 1 1 0

    1 0 1 0

    1 1 0 1

  • 36 ARQUITETURA DE COMPUTADORES

    Somador CompletoApesardomeiosomadorinformarobitdevaium,elenoconsiderao

    vaiumdobitanterior,assimelespodeserusadoparasomarobitmenossignificativo.

    Pararealizarumasomacompletaprecisamosutilizarocircuitoso-madorcompletoquetantoinformaovai-umparaoprximobit,comocon-sideraovai-umdobitanteriordasoma.Odiagramadosomadorcompletomostradoabaixo:

    Atabeladeverdadedeumsomador-completomostradoabaixo:

    A B Ci S Co

    0 0 0 0 0

    0 0 1 1 0

    0 1 0 1 0

    0 1 1 0 1

    1 0 0 1 0

    1 0 1 0 1

    1 1 0 0 1

    1 1 1 1 1

    1. Imaginecomoumcircuitodecodificadorpoderiaexibirumdigitoutili-zandoumdisplayde7segmentos.

    2.Pesquisesobreosdiversostiposdematrizlgicaprogramveleexempli-ficaaplicaesparacadaum.

    3. Monteumcircuitosomadorde4bitsunindo4modulodesomadorcom-pleto.Eseusarmeiosomadores?

  • ARQUITETURA DE COMPUTADORES 37

    Captulo 3Circuitos Sequenciais

    Mostramosnasseesanterioresqueasadadeumcircuitocombi-nacionaldependeunicamentedesuasentradas.Omotivoqueoscircuitoscombinacionais no tm nenhumamemria. Para construir circuitos delgicadigitaismaissofisticados,incluindocomputadores,nsprecisamosdeumdispositivomaispoderoso.Essedispositivo,chamadoFlip-flop,umcircuitocujasadadependealmdassuasentradasnocircuitotambmdoseuestadoprecedente.Ouseja,umcircuitoquetemamemriadoestadopassado.

    Paraqueumdispositivosirvacomoumamemria,devetertrsca-ractersticas:

    odispositivodeveterdoisestadosestveis(tratamosdedadosbinrios)

    devehaverumamaneiradeleroestadododispositivo

    devehaverumamaneiradeatribuir, pelomenosumavez, o seuestado.

    possvelproduzircircuitosdigitaiscommemriausandoportasl-gicasquejforamvistas.Parafazerisso,nsprecisamosintroduzirocon-ceitode realimentao (feedback).At agora, ofluxo lgiconos circuitosqueestudamosfoidaentradasada,ouumcircuitoacclico.Agoransintroduziremosumcircuitoemqueasadarealimentaasuaentrada,per-mitindorealizaramanutenodeumestado,mesmoquandoainformaonaentradacesse.

    Flip-FlopsFlip-Flop SR

    OFlip-flopSRumtiposimplesdecircuitoseqencial,isto,oestadodaentradadependedasadaanterior.Afiguraabaixomostraodiagramaesquemticodeumflip-flpoSReosmbolousualmenteutilizado.OsmboloparaoFlip-flopoulatchS-Rmostradonafiguraabaixo.

    Figura 13 Diagrama e Smbolo de um Flip-Flop SR

  • 38 ARQUITETURA DE COMPUTADORES

    AsadadaportaNO-OUverdadeirasomentequandoambasasen-tradassofalsas.AsadadecadaumadasportasNO-OUrealimentadadevoltaentradadaoutraporta.IstosignificaqueseasadadeumaportaNO-OUverdadeira,asadadaoutradeveserfalsa.Seasada dapar-tesuperiordaportaNO-OU,verdadeiraouum,issosignificaqueumadasentradasdaporta doNO-OUdebaixo,verdadeira,easada doNO-OUdebaixodeveserfalso.

    Paraqueasada doNO-OUsuperiorserverdadeira,ambassuasentradastmqueserfalsas.

    AoacionaraentradaS,asada daportaNO-OUdebaixotorna-sefalsoeasada daportaNO-OUsuperior,foradaaverdadeiro.AoacionarSoutravezedeslig-loemseguida,asadadocircuitopermaneceinalterada.OqueaconteceuquensarmazenamosovalordoSnocircui-toquepermaneceSmesmoquealtereaentrada.Osvaloresdesada e sosempreopostas.

    DesligandoSeacionandoReodesligandoemseguida,qualquerquesejaovalorarmazenadofarcomqueasada daportaNO-OUsuperior,foradaafalsoesada daportaNO-OUdebaixotorna-severdadeiro.DapodemosconcluirqueaentradaSverdadeiratornaasada verdadei-raeaentradaRverdadeiratornaasada falsa.

    EssecircuitoumlatchS-R(umatrava).AsentradasSeRajustamatrava,fazendoverdadeiroefalso.Asadadocircuitoestvelemumouou-troestadocomasentradasremovidas.Nspodemosremoveraentradaquecausouumasadaparticulareasadapermanecerinalterada.Oestado,easada,mudarsomentequandoaentradacomplementaraplicada.Ocircuitotemdoisestadosestveis,porissochamamosdecircuitobiestvel.

    AentradaS=R=1nopermitida.Seambasasentradassoverda-deiras,ambasassadasdevemserfalsas.Istoimplicasada = =0,quelogicamenteincompatvel.Nestasituaoocircuitoinstvelequandoumadasentradasretornaaoestadofalso,aentradarestantedeterminaoestadoestveleasmudanasdasada.

    Figura 14 Flip-Flop SR com Habilitador (relgio)

    Afiguraacimamostraumflip-flopSRcomhabilitadorqueacrescen-taumpardeportaslgicasEcomumaentradacomumE(Enable).Nessecaso,quandoaentradaEest falsa (zero)asadadelaseaentradadasportasNO-OUpermanecememfalso,noimportandoovalordeSouR.QuandoaentradaEficaverdadeira,ovalordasportasSeRsoencami-nhadasparaasportasNO-OU.Issogarantequeapenasquandoohabili-tadorestiverativoquepoderemosacionarasportasReS.

    Podemos construir um circuito de flip-flop SR com portas NO-Ecomomostradoabaixo.O funcionamentomuitosemelhanteaocircuitocomportaNO-OU.Suagrandevantagemque industrialmentemaisfcilconstruirumaportaNO-EdoqueumaportaNO-OU.

    Latchs.

  • 39ARQUITETURA DE COMPUTADORES

    Figura 15 Flip-flop RS NO-E com relgio

    Podemoscascateardoiscircuitosflip-flopconsecutivos,possibilitan-dooisolamentodosinaldeentradaesada.Oflip-flopcomduassees,tambmconhecidocomoflip-flopmestre-escravo (master-slave), temessenomeporqueoregistrodeentradaoperadapelaseomestra(master),en-quantoaseodesadaescrava(slave)ativadaapenasduranteasegundametadedecadaciclodepulsodedisparodorelgio.

    Oflip-flopmestre-escravoRSNO-Emostradoabaixo:

    Figura 16 Flip-flop RS mestre-escravo

    O flip-flop RSmestre-escravo consiste realmente em dois circuitosidnticosdeflip-flopRS, comomostradoacima.Entretanto,um inversorconectandoasduasentradasderelgio(C)assegura-sedequeasduasse-esestejamhabilitadasdurantemetadedecicloscomsinaloposto.Comoimpossvelestasduasportasderelgiosejamativadasnomesmoinstante,evitamosqueovalorpassediretamenteparaoestgioseguinte.

    SecomeamoscomaentradaC=0,asentradasSeRestodesconec-tadasdoflip-flopmestredeentrada.Conseqentemente,nenhumamudan-anossinaisdeentradairafetaroestadodassadasfinais.

    QuandoosinaldeCvailgica1,asentradasdeSedeRpodemcontrolaroestadodoflip-flopdeentrada,apenascomocomcircuitodeflip-flopRSjexaminado.Entretanto,aomesmotempoosinalinvertidodeCaplicadoouflip-flopescravo(slave)dasadaimpedindoqueoestadodoflip-flop de entrada tenha efeito no segundo estgio. Conseqentemente,todasasmudanasdesinaisdeentradanasportasRedeSsoseguidaspelatravadaentradaquandoCestivernalgica1,masnorefletindonassadasde e .

    QuandoCcaioutravezlgica0,asentradasdeSedeRestoiso-ladasoutravezdaentrada.Aomesmotempo,osinalinvertidodeCpermite

  • 40 ARQUITETURA DE COMPUTADORES

    agoraqueoestadoatualdatravadaentradaalcanceatravadasada.Con-seqentemente,assadasde e podemsomentemudaroestadoquandoosinaldeCcaideumalgica1lgica0.

    Haindaumproblemanoresolvidocomaorganizaomestre-es-cravo,acondiodecorridapossveldeocorrerquandoasentradasdeSeRestonalgica1eCcairde1para0.Noexemploacima,nssuporauto-maticamentequearaaterminarsemprecomatravamestranalgica1estado,masnosercertoqueestacomcomponentesreais.Conseqente-mente,precisamosterumamaneiradeimpedirqueessascondiesocor-ram.Umasoluoadicionaralgumfeedbackadicionaldosetorescravoparaomestre.Ocircuitoresultantechamadoumflip-flopJK.

    Flip-Flop tipo JKParaimpedirapossibilidadedeumacondioindefinidaqueocorre

    quandoasentradasdeSedeRestoemnvel1quandoaentradaderelgiohabilitaaportaEdeumflip-flopSR,nsdevemosgarantirqueasportasnodeixaroocorreressasituao.Aomesmotempo,nsaindaqueremosqueoflip-flopdevepodermudaroestadoemcadatransiodaentradaderelgioCLK,seossinaisdalgicadaentradaJKestiveremem1.

    SeasadadeQestem1(oflip-flopestnoestadoSet),aentradaSnopodefaz-loajustar-seaoqueelej.Conseqentemente,nspodemosincapacitaraentradaSsemincapacitaroflip-flop.Namesmamaneira,seasadadeQestem0(oflip-flopestnoestadoReset),aentradadeRpodeserdesabilitadasemcausarnenhumdano.

    Ocircuitoabaixomostraasoluo.Aoflip-flopRSnsadicionamosduasconexesnovasdassadasdeQedeQdevoltasportasdeentradaoriginais.Lembre-sequeumaportadeNANDpodeterqualquernmerodeentradas.Paramostrarquensfizemosumaalteraonofuncionamentodocircuito,nsmudamosasdesignaesdasportasdeentradasedoflip-flopprprio.AsentradassodesignadasagoraJ(emvezdeS)eK(emvezdeR).Ocircuitointeiroconhecidocomoumflip-flopJK.

    Figura 17 Flip-flop tipo JK

    Namaioriadasvezes,oflip-flopJKcomporta-sedamesmaformaqueumflip-flopRS.AssadasdeQedeQmudarodestadosomentequandohouverquedanosinalCLK,easentradasJeKcontrolarooestadodassadas.

    Mashumadiferena.Comoumadasduasentradasdalgicasem-predesabilitadadeacordocomoestadodesadadoflip-flop,olatchmestrenopodemudaroestadoenquantoaentradadeCLKestiverem1.Emlugardisso,aentradadehabilitaopodemudaroestadodolatchmestreapenasumavez,depoisdoqualelenomudaroutravez.Istonoaconteciacomoflip-flopRS.

    Condio de corrida uma falha em sistemaeletrnico ou programade computador em que oresultado do processo inesperadamente depen-dentedasequnciaousin-croniadeoutroseventos.

  • 41ARQUITETURA DE COMPUTADORES

    SeasentradasdeJedeKestiveremambasemnvel1eosinaldeCLKcontinuaamudar,assadasdeQedeQmudarosimplesmenteoes-tadocomcadabordadequedadosinaldeCLK.(OcircuitomestredolatchmudaroestadocomcadatransiodabordadeCLK).Nspodemosusarestacaractersticaparagarantiraestabilidadedoflip-flop.Paravriosti-pos,estaanicamaneiradeassegurar-sedequeoflip-flopmudeoestadosomenteumavezemcadaimpulsoderelgio.

    Flip-Flop tipo DUmavezquensaplicamosaidiadeusarumrelgiononossolatch

    SR,nspodemoscomearlivrandodoproblemadefazerS=R=1esimplifi-caraentradaanossocircuito.

    Geralmenteoquensqueremosfazercomumdispositivodearmaze-namentoguardarumbitdeinformao.Anecessidadeparaexplicitamen-teajustarerestaurarumacomplexidadeadicional.Oquensgostara-mosumcircuitoquetenhaumanicaentradadedadosDeumanicasadadedadosQ.Quandoosinaldepulsodedisparoelevado,oquequeapareceemDdeveserovalorarmazenadoemQ.

    Ocircuitodefiguraabaixotalcircuito.Temumaentradadedados,D,eumaentradadecontrole,Cusadapararelgio.AentradadedadosconectadaatravsdoEdaportaentradadeSdeumlatchSR.conecta-daigualmenteatravsdeuminversoreoEdaportaentradadeR.EasportassoconetadasentradadeCdocircuito.SeCfalso,nenhumsinalalcanaatravaeseuestadopermaneceinalterado.SeCverdadeiroeDverdadeiro,aentradadeSverdadeiraeovalorarmazenadotemumvalordeverdadeiro,queigualaoD.SeCverdadeiroeDfalso,aentradadeRdatravaestconduzidaatravsdoinversoreumvalordefalso,queigualaD,armazenado.

    Figura 18 Flip-flop tipo D

    Oconceitodeumflip-flopD,ondeobitaserarmazenadoestaplicadoentradadeSdeumflip-flopSR,eatravsdeuminversorentradadeR,podesomenteserfeitoparatrabalharapenasquandooCLKforhabilitado.

    Oflip-flopDarmazenaoqueestnaportaDquandoCLKverdadei-ro.SeCLKestverdadeirosomentedepoisqueoscircuitosdeentradaseestabilizem,estecircuitoarmazenarovalorcorretodoD,porquehso-menteumaentradadedadosD.Nessecasoumasituaoindefinidacomo,porexemplo,S=R=1nopodeocorrernunca.

    EnquantoaentradaCLKverdadeira,asmudanasaDestorefleti-dasnasadadocircuito.OvalorDentocopiadaparaocircuitodolatch,mantendoodispositivoestvel.

    Umpontoessencialsobreoflip-flopdeDquequandoaentradadepulsoderelgiocai0assuassadaspodemmudaroestado,asadaQ

  • 42 ARQUITETURA DE COMPUTADORES

    exibesempreoestadodaentradaDnomomentodopulsodedisparo.Istonoacontecianosflip-flopsRSeJK.AseomestradoRSmudariarepe-tidamenteoestadoparaestabilizarossinaisdesadaquandoalinhadopulsodedisparodorelgiofora1,easadadeQrefletiriaqualquerentradaquerecebeurecentemente.AseomestradoJKreceberiaeguardariaumaentradaatamudanadoestado,enuncamudariaesseestadoatocicloseguinte do pulso de relgio ocorra.Esse comportamentono possvelcomoflip-floptipoD.

    Registrador de deslocamentoORegistradordeDeslocamentoumcircuitopararealizaraconver-

    sodedadosseriaisemdadosparalelos,assimcomoaconversodedadosparalelosparaserial.Afiguraabaixomostraumcircuitoderegistradordedeslocamentoserial-paralelo.

    Figura 19 Registrador de deslocamento Serial-Paralelo

    O circuito construdo com flip-flopsD ligados em srie, isto , asadaQdeumflip-flopligadaentradaDdoflip-flopseguinte.Osinalderelgioaplicadoatodososflip-flopsdeformaquesepossagarantirasincronizaodocircuito.Osinalserializadointroduzidonocircuitoatra-vsdaportaDdoprimeiroflip-flop.Acadaciclodorelgio,odadodaportaDtransferidoparaaportaQ.Noprximocicloessedadocopiadoparaoflip-flopseguinteeassimsucessivamente.Aofinalde4ciclos,onde4otamanhodapalavradesseexemplo,podemoslerosdadosparalelizadosatravsdasportasQAaQD.OcircuitopodetambmdispordeumsinalClearparainiciaroregistrador(limparocontedoanterior).

    OutrapossibilidadedecircuitoRegistradodeDeslocamentorealizarafunoinversa,isto,transformardadosparalelosemserial,mostradonafiguraabaixo.

    Figura 20 Registrador de Deslocamento Paralelo-Serial

  • 43ARQUITETURA DE COMPUTADORES

    O circuito tambm construdo com flip-flops D ligados em srie,isto,asadaQdeumflip-flopligadaentradaDdoflip-flopseguinte.Osinalderelgioaplicadoatodososflip-flopsdeformaquesepossaga-rantirasincronizaodocircuito.Agoranesseexemplo,odadoparaleloaplicadoasportasPAaPD.Observequeobitmaissignificativoaplicadonaextremidadedireitadocircuito,poisesteseroprimeiroasertransmi-tido,enquantoPDseroltimo.AcadacicloderelgioodadodaportaDtranferidoparaaportaQqueestligadaaportaDdoflip-flopseguinte.Aofinalde4ciclos,onde4otamanhodapalavradesseexemplo,podemoslerosdadosserializadosatravsdaportaQdoltimoflip-flop.

    ContadoresUmaexignciacomumemcircuitosdigitaisrealizarcontagem,tanto

    parafrentecomoparatrs.Osrelgiosdigitaispulsosestoemtodaparte,ostemporizadoressoencontradosemumagrandevariedadedeequipa-mentos, como, fornos demicroonda,mquinas de lavar almdos vriosdispositivosemautomveis.

    Emboraexistammuitasvariaesdecontadorbsico,sotodosfun-damentalmentemuitosemelhantes.Dividimososcontadoresemdoisgran-desgrupos,oscontadoresassncronoseoscontadoressncronos.

    Contadores AssncronosUmcontadorassncrononoprecisadeumsinalderelgiocomum

    parasincronizarocircuito.Bastaaplicarumrelgionasuaentradaeacadapulsoserincrementado(oudecrementado)umacontagem.

    Afiguraabaixomostraotipoomaisbsicodocircuitodecontagembinrio.

    Esse contador contrudocomdoisflip-flopsJKondeasa-daQdoprimeiroligadaportade relgio do segundo flip-flop.Oflip-flopJKapresentaumcompor-tamentointeressante,quandoam-basasportasJeKestoem1,natransiodorelgioasadaQvaimudar de estado. Assim quandoocorreumatransionaportaderelgiode1para0,asadaQvaitrocardenvel.AsadaQdopri-meiroflip-flopest ligadanapor-tade relgiodosegundoflip-flop.Agora,osegundoflip-flopsomentevaitrocardeestadoquandoasa-da Q sofrer uma transio de 1para0.Com isso,osegundoflip-flopvaitrocardeestadoapenasacadaduas transiesdoprimeiro

    flip-flop.ObservenafiguradocontadorassncronooresultadodasadaQ0eQ1,elamostranmerosde0a3noformatobinrio,isto,acadatransionorelgioeleincrementaumnmeroexibindoumaseqncia0,1,2e3.

    Figura 21 Contador Assncrono de 2 bits

  • 44 ARQUITETURA DE COMPUTADORES

    Aoadicionarmosmaisflip-flopscascateandoasportasdesadacomaportaderelgioseguintepodemosconstruircontadoresdequalquerquan-tidade binria.Um circuito contador geralmente apresenta uma entradaparazerarocontador(reset)deformaqueacontagempossaserreiniciada.

    Um problema grave com os contadores assncronos que todos osflip-flops individuaisnomudamo estado aomesmo tempo.Como cadaflip-floplevaumtempoparamudardeestado,umcircuitodecontadorcomvriosdgitosprecisamosesperarumtempograndeparaqueosdadosseestabilizemaolongodocircuito,mostrandovaloreserrneosatestabilizar.Quandoociclodecontagembaixo,isto,ostemposdemudanadecadacontagemforemgrandes,edevidoaincapacidadedoolhohumanodeiden-tificaracontagemrpida,essefenmenonocausagrandesimpactos.Po-rmseacontagemforrpida,oserrostornamocircuitoimpossveldeusar.

    Pararesolveresseproblemapodemosusarumcontadorsncrono,isto,todasasmudanasdeestadoocorremsimultaneamentecadenciadasporumrelgionico.

    Contadores SncronosEmnossadiscussoinicialsobrecontadoresfalamosanecessidade

    deenviarosinalrelgiosimultaneamenteatodososflip-flopsdemodoqueosbitsdecontagemmudassemoestadoaomesmotempo.Pararealizarissoprecisamosaplicaromesmopulsoderelgioemtodososflip-flops.Entre-tanto,noqueremosquetodososflip-flopsmudemdeestadoacadapulsoderelgio.Paraisso,precisamosadicionaralgumasportasdecontroleparadeterminarquandocadaflip-flopdevemudaroestadoequandonodeve.

    Nafiguraabaixomostramosumcontadorsncronode3dgitocons-trudocomtrsflip-flopstipoJK.Podemosobservarqueosinalderelgioomesmoparatodososflip-flops,entotodosirotrocardeestadosimul-taneamente,evitandoaCondiodeCorridaquepodeocorrernocontadorassncrono.Oprimeiroflip-flopJKtemambasasentradasem1,portantoasuasadaQ0irtrocardeestadoacadacicloderelgio.Outropontoim-portanteacolocaodeumaportaEnoltimoflip-flopnoqualomotivoserexplicadoaseguir.

    Figura 22 Circuito e Forma de onda de um contador sncrono

  • 45ARQUITETURA DE COMPUTADORES

    Observandoodiagramadeformadeondapodemosentenderofun-cionamento.Opontoimportantequeoflip-flopJKtrocaoestadodesuasadaquandoasentradasJeKestoem1,poroutrolado,quandoasen-tradasJeKestoemoasuasadaQpermanecenomesmoestado.ComoJKdoflip-flopFF0estem1asadaQ0trocaemcadatransiodeclock,assim,oestadodeQ1somentevaitrocarquandoQ0etambmJeKdoFF1realizaratransiode1para0.OterceirobitQ2vaitrocarapenasquandoQ0eQ1realizarematransiode1para0,porissoaportaE.

    Assim,conseguimosimplementarumcontadordetrsdgitosondeosinalderelgioaplicadosimultaneamente,tornandoocircuitomaiscon-fiveleseguro.

    Nestaunidadeapresentamosos conceitosbsicosdeLgicaDigitalnecessriosparaentendimentodastcnicasdeArquiteturadeComputa-dores.Iniciamoscomaapresentaodasportaslgicasbsicas,comoE,OU,NOT,quepossibilitamaconstruesdetodososcircuitoslgicos,emseguida apresentamos os circuitos combinacionaismais tradicionais emuma arquitetura, como multiplexadores, decodificadores e somadores, econclumoscomaapresentaodoscircuitosseqenciais, iniciandocomosvriostiposdeFlip-flopseapresentandooscircuitosderegistradordedeslocamentoecontadores.

    1.Vocobservouquepodemosconstruirflip-flopscomdiversasportaseobtendoomesmoresultado.Pesquiseparasaberasrazesparaescolherumououtrotipo.

    2.Analisandoocircuitodeumcontadorsncrono,imaginecomovocpo-deriaconstruirumcontadordenmerosquanofossepotnciadedois.

    3.Pesquisesobrelinguagensdedescriodehardware(HDL),comoVHDLeVerilog.Pensesobreadiferenanotrabalhodedesenvolversoftwareehardwarenosdiasatuais.

    Apostila de Lgica Digital (em portugus) http://wwwusers.rdc.puc-rio.br/rmano/cl.html Curso de Lgica Digital (em portugus) http://pt.wikiversity.org/wiki/Lgica_Digital

  • 46 ARQUITETURA DE COMPUTADORES

    Catlogos de circuitos integrados digitais Texas Instruments (em ingls)

    http://focus.ti.com/logic/docs/logichome. tsp?sectionId= 450&familyId=1

    THOMASFLOYD.Sistemas Digitais.9Ed.Editora:Bookman,2007.Li-vroderefernciaclssicacommaisde25anosdesdeaprimeiraedio,proporcionandoaoestudanteodesenvolvimentodehabilidadesprticas.umaobracompletaeseupontofortesoasinmerasaplicaesreaisdesistemasdigitaisnasindstrias.

    RONALDJ.TOCCI,NEALS.WIDMER,GREGORYL.MOSS.Sistemas Di-gitais: Princpios e Aplicaes. 10Ed.Editora:PearsonPrentice-Hall,2007.Outrolivroderefernciaclssicojna10edio.Osautorestentamtrataratecnologiadigitalcomoequilbrioentreomaterialjexistenteeonovo,decorrentedasinovaes.Olivroofereceamplascondiesparaqueoalunodesenvolvaumslidoemodernoconhecimentonareadeeletrnicadigital.Eleincluiexemploseitensampliadoseatualizados.ComodestaquetemosaapresentaodelinguagensHDLcomoAHDLeVHDL,assimcomoametodologiadeprojetodecircuitosintegrados.

    FRANKVAHID.Sistemas Digitais.1Ed.Editora:Bookmark,2008.Estelivrotratadoprojetodesistemasdigitaiscomumaabordagemmaisatualatravsdautilizaode linguagensde especificaodehardware (HDL).Otexto,almdeapresentarosfundamentos,utiliza-sedelesparaprojetarsistemasdigitaisdecomplexidadeelevadaedeutilidadeprtica.Enfatizaoprojetodecomponenteseonvelde transfernciaentre registradoreseapresentadeformaslidaasbasesdoprojetodigitaltalcomopraticadoprofissionalmente,preparandooleitorparaostemasmaisavanadoscomocircuitosFPGAs(FieldProgrammableGateArrays),deimportnciafunda-mentalnaindstria.

  • Unidade

    Objetivo: Nestaunidadevamosapresentardetalhadamentetodososcomponentesquefazem

    parte de uma arquitetura de computador. Iniciamos apresentando a UnidadeCentraldeProcessamento,ocrebrodocomputador,responsvelpelocontroledo computador alm das operaes aritmticas. Em seguida apresentamos asmemrias,unidadesparaarmazenamentodeinformaes.Apresentamosdepoisos barramentos de um computador. Finalmente mostramos os dispositivos deentradaesada,ouseja,osdispositivosqueinteragemcomoserhumano.

    Estruturas de uma arquitetura de computadores

    3

  • ARQUITETURA DE COMPUTADORES 49

    Captulo 1Unidade Central de Processamento (UCP)

    A Unidade Central de Processamento (UCP), ouCentral Processing Unit (CPU),omduloprincipaldeumaarquiteturadecomputador.Ela responsvelpor realizaro controledosistemadecomputador,almdeexecutarfunesdeclculoaritmtico.Ocontroledosistemarealizadoatravsdaexecuodeumprograma,isto,umaseqnciadecomandospreviamentedefinidosnecessriospararealizarumprocessamento.

    DesdeosprimeiroscomputadoressemprehouveumaUCP,implemen-tadaemumgabineteouplaca.Masatualmente,quandofalamosemUCP,geralmenteestamosnosreferindoaocircuito integradoquerealiza todasessasfunesomicroprocessador.

    Aevoluotecnolgicadosmicroprocessadoressurpreendentementegrande,apartirdemicroprocessadoresquetrabalhavamcomrelgio(clock)dealgunskHzequepodiamprocessarpoucosmilharesdeinstruesporsegundo,atualmenteatingiu-serelgiosdaordemde4GHzecompoderdeprocessamentodevriosbilhesdeinstruesporsegundo.Acomplexida-dedoscircuitosintegradostambmcresceu:dealgunsmilharesdetranss-toresparacentenasdemilhesdetransstoresemumchip.

    AUCP temcomo funoprincipal integrar todo o sistemado com-putador,isto,realizaocontroledefuncionamentodetodasasunidadesfuncionaiseresponsvelpelocontroledaexecuodetodososprogramasdosistema.

    Histria do MicroprocessadorOprimeiromicroprocessadorcomercialfoilanadopelaIntelem1971,

    originalmenteumcircuito integrado especial para atenderuma empresajaponesaquefabricavacalculadoraseletrnicas.OprocessadorIntel4004eraumcircuito integradoprogramvelque trabalhavacomregistradoresde4bits,clockde740Khz,umconjuntode46instruesepossuacercade2300transistores.Apesardoinsucessodofabricantedecalculadoras,omicroprocessadorprogramvel4004foiutilizadopormuitasoutrasaplica-es.Umacaractersticaimportanteparaavaliaracapacidadeedesempe-nhodeumprocessadorotamanhodapalavra.Otamanhodapalavravaideterminarotamanhodosregistradores,tamanhodobarramentoetama-nhodaunidadearitmtica.Quantomaiorotamanhodapalavra,maioracapacidadedeprocessamento.

    AIntelprosseguiucomodesenvolvimentodenovosmicroprocessado-res:8008,o8080eo8085(todosde8bits).O8080foiumgrandesucessoetornou-seabaseparaosprimeirosmicrocomputadoresnofinaldadca-dade1970queutilizavamosistemaoperacionalCP/M.AnosmaistardeaZiloglanouomicroprocessadorZ80,cominstruescompatveiscomo8080(compatvelecomvriasmelhorias)quetambmfezgrandesucesso.Essefoioprimeiromomentodahistriaemquesefezumclonedemicro-

  • 50 ARQUITETURA DE COMPUTADORES

    processador,dispositivoquepermitiaexecutarsemalteraoprogramasesistemasoperacionaisdesenvolvidosparaoutrosprocessadores(hardware).

    Nesseinstante,odesenvolvimentodohardwareesoftwaretornaram-seindependentes,poisatentoosoftwareeratotalmentedependentedeumhardwareespecficodeumfabricante.AMotorolalanouasuaprpriafamliademicroprocessadores,o68000.Todosessesmicroprocessadoresde8bitsforamusadosemvrioscomputadorespessoais(Sinclair,Apple,TRS-80,Commodore,etc).

    AIBMdecidiuentrarnomercadodecomputadorespessoaisem1981lanandooseuIBM-PCqueutilizouumdosprimeirosmicroprocessadoresde16bits,oIntel8088(derivadodo8086lanadoem1978)queviriaaini-ciarumafamliadecomputadoresqueutilizamosathoje.Ointeressantequeoprocessador8088,apesardemaisrecentequeo8086,utilizavaumbarramentoexternode8bits(o8086tinhabarramentoexternode16bits),permitindoautilizaode componentes (memrias, I/O, etc) compatveiscomasfamliasanteriores,tornandoopreodoIBM-PCmuitoprximodoscomputadoresde8bitsmascomcapacidadesuperior.AliadoamarcaIBM,um computador demaior capacidade e preo semelhante, tornou-se umenormesucesso.

    AAppleutilizavaosprocessadoresdaMotoroladafamlia68000(de32bits)nosseuscomputadoresMacintosh.Outrosfabricantestambmlan-aram os seusmicroprocessadores de 16 bits, a Zilog o Z8000, a TexasInstrumentsoTMS9900,aNationalSemiconductoro16032,masnenhumfabricantetevetantosucessocomoaIntel.

    A Intel foi lanando sucessivamente melhoramentos na sua linha80X86,o8086,8088,80186,80188,80286,80386,80486,Pentium,Pen-tiumPro,PentiumMMX,PentiumII,PentiumIII,PentiumIV,PentiumM,PentiumD,PentiumDualCoreePentiumQuadCore(emordemcronol-gica). Algumasmelhorias importantesnessa evoluo foi ousomemriavirtualemultitarefano80386,ocoprocessadormatemticointegradono80486eopipelinedeprocessamentonalinhaPentium.

    AssimcomoaZilognocasodo8080,aAMDsurgiucomofabricantedemicroprocessadores clones da famlia x86,mas a partir de um certomomento partiu para o desenvolvimento de sua prpria linha demicro-processadores,aindamantendocompatibilidadecomosprodutosIntel:K6,Athlon,Duron,Turion,Sempron,etc.

    Arquitetura de uma Unidade Central de Processamento (UCP)

    OfuncionamentofundamentaldaUnidadeCentraldeProcessamento(UCP),noobstanteoformatofsicoearquitetura,executarumasequn-ciadeinstruesarmazenadaschamadaprograma.Oprogramarepre-sentadoporumasriedenmerosquesomantidosemalgumtipodeme-mrianocomputador.Hquatroetapasquequasetodososprocessadorescentraisexecutamemsuaoperao:abuscadeinstrues,adecodificao,aexecuoeescritadedados.Afiguraaseguirmostraodiagramaemblo-cosdeumaUnidadeCentraldeProcessamento(UCP).

  • 51ARQUITETURA DE COMPUTADORES

    Figura 23 Diagrama em blocos de uma Unidade Central de Processamento

    Aprimeiraetapa,abuscadeinstruo,envolverecuperarumains-truo(querepresentadaporumnmeroouporumaseqnciadosn-meros)namemriadeprograma.AposiodainstruoemexecuonamemriadeprogramadeterminadaporumContadordePrograma (PCProgram Counter),quearmazeneumnmeroqueidentificaoendereodememriaatualdainstruodoprograma.Ouseja,oContadordeProgramaguardaolocaldoprogramaparaaUnidadeCentraldeProcessamento.De-poisqueumainstruobuscada,oPCserincrementadodocomprimentodeinstruoparaqueaponteparaaprximainstruoqueserexecuta-danocicloseguinte.Geralmenteamemriadeprogramaumdispositivomaislentoqueoprocessador,fazendocomqueaUnidadeCentraldePro-cessamentopareparaesperarainstruoqueserexecutada.Paraisso,amaioriadosprocessadoresmodernosutilizaatcnicadeCachequearma-zenaoprogramaemmemriasmaisrpidasquepossibilitamumaumentonavelocidadedeexecuodoprograma.

    AinstruoqueaUnidadeCentraldeProcessamentobuscaname-mriausadaparadeterminaroqueirfazer.Naetapadedecodificao,ainstruoquebradaempartesnoqualcadaumatemumsignificadoparaasoutraspartesdaUnidadeCentraldeProcessamento.AmaneiracomoumvalornumricodeinstruointerpretadodefinidapeloConjuntodeInstrues,conhecidatambmpelasiglaISA(Instruction Set Architecture).Frequentemente,aprimeirapartedainstruocompostaporumgrupodenmeros,chamadoopcode,quevaiindicaraoperaoqueirexecutar.Aspartesrestantesdonmerodainstruogeralmenteindicamainformaoexigidaparaessainstruo,porexemplo,osoperandosdeumaoperaoaritmtica.Taisoperandosgeralmentesodadosdeprocessamento,comoumvalorconstante,ouumlugarparaencontrarumvalor:umregistradorouumendereodememria.NosprojetosmaisantigosdeUnidadesCentraldeProcessamento,osblocosresponsveispeladecodificaodainstruoeramdispositivosdehardwarenoalterveis.Entretanto,emalgunspro-

    Program Counter umregistrautilizadoemqual-quer processador queguarda a posio deme-mria (endereo) onde seencontra a instruo doprogramaqueserexecu-tadapeloprocessador.

  • 52 ARQUITETURA DE COMPUTADORES

    cessadoresmaismodernosecomplexos,oConjuntodeInstruorepre-sentadoporummicroprograma,desdobrandoumainstruomaiscomple-xaemvriasinstruesmaissimples,porexemplo,umamultiplicaopodeser simplificada por uma seqncia de somas. Ummicroprograma podetambmserreprogramveldemodoquepossasermodificadoparamudaramaneiraqueoProcessadordecodificaasinstruesmesmodepoisquefoifabricado.

    Depoisdasetapasdebuscadeinstruoedecodificao,aprximaetapaaexecuodainstruo.Duranteessaetapa,asvriaspartesdoprocessadorcentralsoconectadasepodemexecutaraoperaodesejada.Se,porexemplo,umaoperaodaadio foisolicitada,umaUnidadedeLgicaeAritmtica(ULA)serconectadaaumregistradordeentradasedesadas.Nasentradassoaplicadososnmerosqueseroadicionados,easadaconterasomafinal.AULAcontmoscircuitosparaexecutaropera-esaritmticaselgicasdasentradas(comoaadioeoperaeslgicas).Seaoperaodaadioproduzumresultadodemasiadograndeparaqueoprocessadorconsigaguardar,marcadaumaindicaodeexcessoarit-mticoemumregistrador.Essaindicao,geralmenteumsimouno,conhecidacomo flag.

    Opassofinal,aescritadedados,simplesmenteescreveosresultadosdaetapadaexecuoaalgumlocaldamemria.Osresultadospodemserescritosemalgumregistradorinternodoprocessadorparapermitiroaces-somaisrpidopelasinstruessubseqentes.Emoutroscasososresul-tadospodemserescritosemumamemriaexternamaislenta,masmaisbarataemaior.AlgunstiposdeinstruesmanipulamoContadordePro-grama,fazendoquesemudeaseqnciadeexecuodoprograma.Essasinstruessochamadas saltose facilitamacriaodecomportamen-toscomolaos,execuocondicionaldeprograma(comousodeumsaltocondicional),eexecuodefunespr-definidasnosprogramas.Muitasinstruespoderomudaroestadoemfunodedgitosemumregistrodeindicao,osflags.Essesindicadorespodemserusadosparainfluenciarcomoumprogramasecomporta.Porexemplo,umainstruodotipocom-paraoconsideradoisvaloreseajustaumnmero (flag)noregistrodeacordocomqualmaior.Esteflagpodeentoserusadoporumainstruodesaltocondicionalparaalteraraseqnciadeumdeterminadofluxodeprograma.

    Apsaescritadosdadosresultantes,haverarepetiodetodoopro-cesso,comociclodebuscadainstruoseguintedevidoaoincrementodovalordoContadordePrograma(PC).Seainstruoanterioreraumsalto,oContadordeProgramasermodificadoparaconteroendereodanovains-truoestabelecidonosalto(condicionalouno),eaexecuodeprogramacontinuanormalmente.Emalgunsprocessadoresmaiscomplexosdoqueeste,mltiplasinstruespodemserbuscadas,decodificadaseexecutadassimultaneamente.Estametodologiageralmenteconhecidacomopipeli-ne,quemuitocomumnosprocessadoresatuaisusadosemcomputadoreseoutrosdispositivos.

    Amaioriadeprocessadores,ecertamenteamaioriadedispositivosdelgicasequencial,sosncronospornatureza.Isto,soprojetadosparaoperarsobreacadnciadeumsinaldesincronizao.Estesinal,conheci-docomoumsinalderelgio(clock),temgeralmenteaformadeumaondaquadradaperidica.Calculandoo tempomximoqueos sinais eltricospodemsertransmitidospelastrilhasdocircuitodeummicroprocessador,osprojetistaspodemselecionaroperododerelgiomaisapropriado.

    Microprograma o cdi-gobsicodeumprocessa-dor, definindo instruesbsicasparaoperaesdecontroledeumaUCP.

    Flag um registradorsimplesqueindicaumes-tado de um processador,geralmente constitudoporumbitepodeassumirosvalores0ou1.

  • 53ARQUITETURA DE COMPUTADORES

    Este perodo deve sermais longo do que o tempo queum sinal semova,ousepropaga,nospiorescasoshipotticos.

    Aoajustaroperododorelgioparaumvalorbemacimadopiordashiptesesdeatrasodepropagao,possvelprojetarumprocessadoreamaneiraqueosdadossemovamcomsegurana.Essatticatemavanta-gemdesimplificarocircuitodoprocessador,entretanto,temosadesvan-tagemdequeoprocessadoragoradeveesperarpeloseucomponentemaislentos,mesmoquetodososdemaissejammaisrpidos.Estalimitaopodeser compensadaatravsde tcnicasdeparalelismoquepossibilitamau-mentarodesempenho.

    Entretanto,asmelhoriasdearquiteturasozinhasnoresolvemtodososproblemasdosprocessadorescomsincronismoglobal.Porexemplo,umsinalderelgioestsujeitoaosatrasosdequalqueroutrosinaleltricodecontrole.Taxasderelgiomaiselevadasemprocessadorescadavezmaiscomplexos tornam difcilmanter todos os sinais de relgio em todas asunidades funcionaisem fase (sincronizado). Issoobrigouemmuitospro-cessadoresmodernosaconstruirumcircuitoespecficoparagarantirquetodosossinaisderelgiosejamidnticosafimevitarqueoatrasodeumsinalfaacomqueoprocessadorfuncionemal.Umoutroproblemasrioqueocorrecomoaumentadataxaderelgiooaumentosignificativodaquantidadedecalordissipadapeloprocessadorcentral.OaumentodataxaderelgioaumentaamudanadeestadodasportaslgicasCMOSquecon-somemenergiaapenasquandohmudanadeestado,aumentandoadissi-paodecalor.Consequentemente,oaumentodataxaderelgioaumentaocalordissipadoexigindoqueoprocessadorcentralnecessitededispositivosderefrigeraomaiseficazes.

    Unidade Lgica e AritmticaAUnidadeLgicaeAritmtica(ULA),ouArithmetic Logic Unit(ALU),

    aunidadedaUnidadeCentraldeProcessamento(UCP),outambmCPU,responsvelpelaexecuodasoperaesaritmticase lgicas.JohnvonNeumannjpropsoconceitodeULAem1945,quandoconstruiuocom-putadorEDVAC.

    AULAexecutaasprincipaisoperaeslgicasearitmticasqueumcomputadorprecisarealizar.Elafazasoperaesdesoma,subtrao,mul-tiplicaoedeterminaseumnmerozero,positivoounegativo.Almdasfunesaritmticas,umaULAdevesercapazdedeterminarseumaquan-tidadeigual,menoroumaiorqueoutra.AULAtambmrealizaasfuneslgicasbsicascomoE,OU,OU-Exclusivo,assimcomoanegao, tantocomnmeroscomocaracteres.

    AfiguraabaixomostraodiagramalgicodeumaULAsimplesde2bits.Osdadosdeentrada,provavelmentedeumregistrador,socolocadosnasentradasA(0),A(1)eB(0),B(1).AsentradasOP(0),OP(1)eOP(2)deter-minamotipodeoperaoaserrealizada.Assadas,ondeoresultadofinalpodeserlidoeescritoemumregistrador,soOUT(0)eOUT(1).AentradaCARRYINserveparaconsiderarovaiumdeumcircuitoULAcascateadoeasadaCARRYOUTserveparaindicarovaiumparaocircuitoseguin-te.Ligando-seumasriedeULAsatravsdasentradasesadasCARRYINeCARRYOUTpodemosconstruirULAscomtamanhodepalavrasmaiores.

    Carry um indicador deestouro,queindicaquan-do o valor de um regis-tradorsuperaoseuvalormximo admitido. Ge-ralmente utilizado nasoperaes de soma paraindicarovai-um.

  • 54 ARQUITETURA DE COMPUTADORES

    Figura 24 Unidade Lgica e Aritmtica de 2 bits (AND, OR, XOR e SOMA) [Eagle GFDL]

    Pararealizarcorretamenteasoperaesaritmticas,umaULAdeveoperarnmeroscomamesmabaseemesmoformato.Osprimeiroscompu-tadoresusavamdiversossistemasnumricos,basesnumricas,represen-taesdesinais,complementodeum,complementodedois,sinal-magni-tude.ParacadaumdessesconjuntosdeparmetrosnecessriorealizarumprojetodeULAdiferente,almdanecessidadederealizaraconversode todos os dados quando se trocava de computador.Nos computadoresmodernos (ltimos30 anos) quase sempre seutilizanmerobinrio emrepresentaodecomplementodedois,representaomaissimplesparaaULArealizaradiesesubtraes,ecaracteresASCII.

    UmaULArecebegeralmentedadosdosregistradores,quesoproces-sadoseosresultadosdaoperaosoarmazenadosnosregistradoresdesada.TeoricamentepossvellerdadosdiretamentedamemriaerealizaraoperaonaULApormodesempenhoimpactadonegativamentedevidoaomaiortempodeleituradememriacomparadocomotempodeclculo.

    AmaioriadasULAspodemrealizarasseguintesoperaes:

    Operaesaritmticas(adio,subtrao)

    Operaeslgicasembit:AND,OR,XOReNOT

    Operaesdedeslocamentodebits(deslocamentosservemparare-alizarmultiplicaesedivisespor2).

    ASCII o acrnimo paraAmerican Standard Codefor Information Inter-change,umacodificaodecaracteresdeoitobitsque representa caracte-res alfanumericos parapermitir a representaode textos emumcompu-tador.

  • 55ARQUITETURA DE COMPUTADORES

    Apesarde serpossvel implementar circuitospara realizar clculosmais complexos como logaritmos, exponenciais ou razes quadradas, ge-ralmenteessasfunessorealizadasatravsdealgoritmosdesoftware.Oaumentodacomplexidadedocircuitoparafunespoucousadaspodenoservantajosoparacomputadoresdeusogeral.Pormmquinasdeproces-samentonumricopodemimplementaressasfunesemcircuito.

    Outrofatorimportanterelacionadorepresentaodenmeroemumcomputadorotamanhoeaprecisoemumprocessadorpodetratar.Nocasodeumprocessadorbinrio,umbitserefereaumaposiosignificantenonmerorepresentadonoprocessador.Onmerodebitsqueumproces-sadorusapararepresentarosnmeroschamadodetamanhopalavra,oularguradapalavra,oudelarguradobarramentodedados.Aosetra-tarespecificamentedenmerosinteiros,chamamosprecisodenmerointeiro.Estenmerocaracterizaasdiversasarquiteturasdeprocessador,efrequentementeumparmetroimportanteparadefiniracapacidadedoprocessador.Porexemplo,umprocessadorde8bitstrataumafaixaden-merosquepodemserrepresentadosporoitoelementosbinrios(cadadgitoquetemdoisvalorespossveis),isto,28ou256nmerosdiscretos.Assim,otamanhodonmerointeirovaidefinirolimitedohardwarequevaidefiniracapacidadedetratamentodenmerosinteirosqueosoftwarepodetratar.

    Afaixadeinteirospodetambmdefinironmerodeposiesnamem-riaqueoprocessadorcentralpodeenderear(localizar).Porexemplo,seumprocessadorusa32bitspararepresentarumendereodememria,ecadaendereodememriarepresentaumbyte(8bits),aquantidademximadememriaqueoprocessadorpodeenderear232bytesou4GB.Estaumaideiamuitosimplessobreoespaodeendereamentodeumprocessador,masmuitosmtodosdeendereamentomaiscomplexos,comoapaginao,possi-bilitamaumentarotamanhodamemriautilizandoamesmafaixadeinteiro.

    Convmlembrarqueotamanhodapalavradefinidoprincipalmentepelacapacidadedeendereamentodoprocessador.Umprocessadordealtodesempenhousa16,32,64e,atmesmo,128bitsdelargura.Enquantoisso,microcontroladorescomnecessidadesmenorespodemusarprocessa-doresde4ou8bits.

    Unidade de Ponto FlutuanteDamesmamaneiraqueumaALUrealizaroperaesentrenmeros

    inteiros,umaUnidadedePontoFlutuante(UPF)tambmrealizaoperaesaritmticasentredoisnmeros,maselesrealizamoperaescomnmeroemrepresentaodepontoflutuante,muitomaiscomplexaquearepresen-taodecomplementoparadois.Pararealizaressesclculos,umaUPFtemvrioscircuitoscomplexos,incluindoalgumasULAsinternas.UsualmenteengenheiroschamamumaULAocircuitoquerealizaoperaesaritmticascomnmerosinteirosemcomplementoparadoisouBCD.

    Unidade de ControleAUnidadedeControle (UC)responsvelporgerar todosossinais

    quecontrolamasoperaesnointeriordaUCP.Almdisso,tambmtemoobjetivodecontrolarasinterfacesdeentradaesadadoprocessadorcomomundoexterno.AUCrealizaadecodificaodeinstrueseexecutaasaesdessasinstrues.

    BCD acrnimo de Bi-nary Coded Decimal querepresentaumtipodeco-dificao numrica pararepresentar algarismosconstitudapor4bits(re-presentandonmerosde-cimaisde015).

  • 56 ARQUITETURA DE COMPUTADORES

    Aunidadedecontroleexecutatrsaesbsicasessenciaisedefini-daspeloprprio fabricantedoprocessador.Soelas:buscade instruo(fetch),decodificaoeexecuodeinstruo.

    Assimsendo,todoprocessador,aoiniciarsuaoperao,realizaumaoperaocclicaeseqencialdessastrsaes.Dependendodotipodepro-cessador,aunidadedecontrolepodeseserfixaouprogramvel.Aunidadefixaaquelaunidadequejvemcomtodooconjuntodeinstruesdefini-doeprogramadopelofabricantenafabricaodoprocessador.Naunidadeprogramvel,omicro-programa,cdigoquedecodificaeexecutaasinstru-esprogramadoexternamentenoinciodefuncionamentodoprocessa-dor,permitindoareconfiguraodasinstruesquandonecessrio.

    Os microprocessadores da famlia Intel como 8080, 8088, 80286,80386,80486ePentium,possuemunidadedecontrolefixa.UmexemplodeunidadedecontroleprogramvelpodeservistonosprocessadoresBitSlices,arquiteturadehardwaremodularquepermiteaoprojetistaassociarunida-desdeprocessamentoeprogramaroconjuntodeinstrues.OutroexemploautilizaodeField-ProgrammableGateArray (FPGA).OFPGAumamatrizlgicaprogramvelquepermiteaimplementaodesoft-processors,isto,processadoresdefinidosemsoftwareparaumdispositivoFPGA,si-mulandoofuncionamentodevriosprocessadoresdeusoespecfico.

    Inicialmente,aUnidadedeControleforneceoendereodememriadeondedeveretirarainstruo,geralmentecompostaporumbyteoumais.Essa instruopodeconterumcdigodeoperao (opcode),ouumope-randooudado.Almdemanterocontrolesobreaposiodememriaquecontmainstruoatualqueocomputadorestexecutando,aUnidadedeControle,aodecodificarocdigodeoperao,informaUnidadeLgicaeAritmtica(ULA)qualoperaoaexecutarouqualoperaodeescritaouleituraderegistradoroumemriadeveexecutar.

    Almdasoperaesaritmticas,aUnidadedeControletambmtemacapacidadederealizaroperaeslgicas,porexemplo:E,OU,XOR,com-paraoedeslocamentodebitsparaadireitaeparaaesquerda.Essasope-raessorealizadaspelaUnidadeLgicaeAritmtica(ULA),pormtemrelaomuitoprximadaUnidadedeControlepoisinfluenciaocomporta-mentodaUC.Agrandemaioriadedosfabricantesdemicroprocessadoresimplementamessasfunes,maspodematribuiummnemnicodiferenteacadaumadelas,eodenominaconjuntodeinstruesdeumdeterminadoprocessador.

    OutracaractersticamuitoimportanteemumaUnidadedeControlequeaarquiteturadeumprocessadorpodeserdedoistipos:orientadaporregistradorouorientadaparamemria.Sefororientadapararegistradores,porexemplo,aarquiteturaIntel,aULA,apsexecutarqualqueroperaolgicaouaritmtica,semprevaiarmazenaroresultadonoregistradoracu-mulador.Sefororientadaparamemria,comoocasodosmicroprocessa-doresdaMotorola,nemsempreoresultadoarmazenadonoacumulador,podendo ser armazenado diretamente em qualquer posio dememria.Terminadaaexecuodainstruo,aUnidadedeControleincrementaocontadordeprograma(PC)einiciaoprocessamentodaprximainstruo.Essainstruogeralmenteestlocalizadanoprximoendereodemem-riaou,emcasomenoscomum,quandoexisteumainstruoexplcitadedesvio(salto),ocomputadorvaiexecutaraprximainstruoindicadapelainstruodedesvio.

    Opcode um cdigo deoperao, um cdigo re-presentado em uma ins-truo de programa querealizaumasriede fun-esdecomando.

  • 57ARQUITETURA DE COMPUTADORES

    Ciclo de InstruoOprocessomaisimportantedeumaUnidadedeControleoCiclode

    Instruo,quedeterminacomoumainstruovaiserexecutada.Umciclodeinstruo,tambmconhecidocomociclobuscar-descodificar-executar,oprocedimentonoqualumcomputadorprocessaumainstruodelin-guagem-mquinaouumprogramaarmazenadonasuamemria

    Otermobuscar-e-executadeusogeral.Ainstruodeveserbus-cadadamemria,eentoserexecutadapeloprocessadorcentral.Essaaatividadefundamentaldeumcomputador,quandoseuprocessadorleexecutaumasriedeinstruesescritasemsualinguagem-mquina.

    Oprocessadordecadacomputadorpodeterciclosdeinstruodife-rentesdeacordocomasuaarquiteturaeconjuntodeinstrues.AsetapasdeumCiclodeInstruosodescritasaseguir:

    1. Buscar a instruo na memria principalOprocessadorcolocaovalorarmazenadonocontadordeprograma(PC)

    nobarramentodeendereo.Oprocessadorrecebeentoainstruodame-mriaprincipalatravsdobarramentodedadosparaoregistradordedados(MDRMemoryDataRegister).OvalordoMDRcolocadoentonoregistrodeinstruoatual(CIRCurrentInstructionRegister),umcircuitoquemantmainstruotemporariamentedemodoquepossaserdecodificadaeexecutada.

    2. Decodificar a instruo

    Odecodificadordeinstruointerpretaeexecutaainstruo.ORe-gistro de Instruo (IR Instruction Register) mantm a instruo atual,quandoocontadordeprograma(PC)recalculaoendereonamemriadaprximainstruoaserexecutado.

    3. Buscar dados da memria principalCasoainstruolidasereferencieaumdadoarmazenadonamem-

    riaprincipal,nestemomento,essevalorlido.ChamamosessainstruodeInstruodeEndereamentoIndireto.Essainstruolosdadosdame-mriaprincipaleoscolocanosregistradoresdoprocessadorparapermitirarealizaodasoperaes.

    4. Executar a instruoApartirdoregistradordeinstruo,osvaloresquecompemains-

    truo sodecodificadospelaUnidadedeControle.Assim, a informaodecodificada comouma seqncia de sinais de controle so enviadas sunidadesde funodoprocessadorparaexecutarasaesexigidaspelainstruo.Casoosparmetrossejamoperadores,osvaloressoencami-nhadosUnidadedeLgicaAritmtica(ULA)paraoper-loseescreveroresultadodevoltaaumregistrodoprocessador.Umsinaldecontroleen-viadoparatrsdeformaaconfirmaraexecuodainstruo.

    5. Armazenar o resultadoOresultadogeradopelaoperaoexecutadaarmazenadonamem-

    riaprincipal,ouemitidoaumdispositivodesada.BaseadonofeedbackdosinaldecontroledaULA,oPCincrementadoparaenderearainstruoseguinte ouatualizadoumendereodiferente ondea instruo seguintesejabuscada.Ociclorepetidoento.

    Podemos separar o tempo de execuo de uma instruo emduasfases:ciclodebusca.Estasetapassoasmesmasparacadainstruo.Ociclodebuscaprocessaainstruodapalavradeinstruoquecontemumopcodeeumoperando.

  • 58 ARQUITETURA DE COMPUTADORES

    6. Executar o cicloAsetapas3e4dociclodeinstruosopartedociclodaexecuo.

    Essasetapasmudaroacadainstruo.

    AprimeiraetapadociclodaexecuoadoProcesso-Memria.OsdadossotransferidosentreoprocessadoreomdulodeI/O(memria).Estoemseguidasoexecutadasasoperaesmatemticascomusodedadosetambmoperaeslgicaspararefernciaaosdados.Asalteraesprincipaissoaetapaseguinte,naverdade,umaalteraonaseqnciadasoperaes,porexemploumaoperaodosalto.

    RegistradoresORegistradordeumaUnidadeCentraldeProcessamentoumtipo

    dememriarpidaecompequenacapacidadeconstrudadentrodaUCPeutilizadaparaoarmazenamentotemporriodedadosnoprocessamento.PelofatodeestaremprximosdaUnidadeLgicaeAritmticaedesercons-trudacomcircuitosdememriamuitorpidospossibilitaomaiordesem-penhonoprocessamento.Osregistradoresficamnotopodahierarquiadememria,porissoaformamaisrpidaecaradesearmazenarumdado.

    Osregistradoressoutilizadosnaexecuodeprogramasdecompu-tadoresparadisponibilizarumlocalparaarmazenardadostemporrio.Namaioriadoscomputadoresmodernos,oprocessadorcopiaasinformaes(da-dos),guardadosnamemriaexterna,paraumregistrador.Asinstruesquerealizamalgumclculonumricooudecontroleutilizamessesdados,agoralidosemmaiorvelocidade,soexecutadaspeloprocessadore,finalmente,osresultadosdaoperaosomovidosdevoltaparaamemriaprincipal.

    Podemosclassificarosregistradoresemduascategorias:

    Registradores de dados:utilizadosparaarmazenarvaloresnum-ricosoucaracteres, taiscomonmeros inteiros,pontosflutuanteoucaracteresASCII.EmalgumasUCPsexisteumregistradordedadosespecial,chamadoacumulador,querecebeodadodeopera-esaritmticaseutilizadoimplicitamenteemmuitasoperaes.Oacumuladorusadosemprecomoumoperandodequalquerope-raoeondeasfunesdecomparaopodemserrealizadas(eleimplementafunesdecomparao).AsUCPsmaisatuaisdispede vrios registradores com as funes de acumulador, portantononecessitademoverdadosparaumregistradorespecfico.

    Registradores de Endereo:soregistradoresquerecebemoen-dereodeumobjeto.OprincipalregistradordeendereooPCouo indicadordeendereoda instruoemexecuo.Outrotipodeinformaosoos"ponteiros" (variveiscontendooendereo)queapontamparaumdeterminadodadonamemria.

    Processador CISC/RISCOsprocessadoresseclassificamemduasgrandesfamliasconforme

    acaractersticadoseuconjuntodeinstrues:CISCeRISC.Umcomputa-dorcomconjuntodeinstruescomplexas(CISCComplex Instruction Set Computer)umaarquiteturaemquecadainstruopodeexecutardiversasoperaesdebaixonvel,taiscomoumaleituradamemria,umaoperaoaritmticaeumaescritanamemria,usandoumanicainstruo.Oter-mofoiinventadoemcontrastecomasiglaRISCcomputadorcomconjuntodeinstruesreduzidas(RISC-Reduced Instruction Set Computer).

  • 59ARQUITETURA DE COMPUTADORES

    OexemplomaiscomumdearquiteturadeprocessadorCISCafam-liaIntelx86.Noentanto,vriosoutroscomputadorestambmutilizamessaarquiteturacomo:System/360,PDP-11,VAX,68000.

    Duranteosanos70,avaliou-sequeocrescenteaumentodacomple-xidadedaslinguagensdeprogramaodecomputadorespoderiaserme-lhorexecutada(melhorarodesempenho)sefossemusadasinstruesmaiscomplexas (mais funesna instruo) emmenosciclos.Algumasnovasinstruesforamadicionadasparasofisticaralinguagem"assembly"paraseremmelhoraproveitadaspelaslinguagensdealtonvel.Oscompiladoresforamatualizadosparaaproveitar-sedestasinstruesmaiscomplexas.Osbenefciosdeinstruessemanticamentemaisricascomcodificaomaiscompactapodemserconsideradoscomoumgrandeaumentodedesempe-nhoparaacompilaoeexecuodeprogramasgeradospeloscompilado-res.Comoasmemriassolimitadasnotamanhoenavelocidade,ocdi-gocompactotrariamuitosbenefcios.Naturalmente,arazofundamentaldessamelhoriaqueasmemrias(isto,RAMdinmicas)sosignificati-vamentemaislentasquandocomparadasaoprocessadorcentral.

    ApesardadiferenaentreRISCeCISC,elastornaram-semenossig-nificativascomaevoluodasarquiteturasCISC.OprocessadorIntel486implementouopipelinede instrues, sendoseguidopelaAMD,Cyrix, eIBM.Essesprocessadoresquebraramcadainstruoemumsubconjuntodeinstruesrazoavelmentesimplesquesoexecutadasemseqncia(pi-peline),caractersticamuitosemelhanteaumconjuntodeinstruestpicodeumprocessadorRISC.AgeraoPentiumeraumaversosuperescalardesseprincpios,maissemelhanteaoRISC.Osprocessadoresx86moder-nosdecodificamequebraminstruesemseqnciasdinmicasdemicro-operaesinternas,quenosomenteosajudaaexecutarumsubconjuntomaiordeinstruesemumaformadepipeline,mastambmfacilitamumaotimizaomaisavanadadoparalelismodemicro-instruo,aumentandooseudesempenho.

    OacrnimoRISC(ReducedInstructionSetComputer)indicaumpro-cessadorcomconjuntodeinstruesreduzido,umaestratgiadeprojetodeconjuntodeinstruesdeprocessadorqueenfatizaasimplificaodasins-trues,deformaqueasimplificaopodeaumentarodesempenho,jqueasinstruesexecutammuitomaisrapidamente.Omotivodessaestratgiaqueamaioriadasfunesdeummicroprocessadorsosimples,assimsimplificandoaarquiteturatornamaiseficienteesseprocessamento.ParaasfunescomplexasumprocessadorRISCmuitoineficiente,comparadocomumprocessadorCISC,mascomoanecessidadedessasfunesme-nor,odesempenhoglobalacabaficandomelhor.AsprincipaisfamliasdeprocessadoresRISCso:Alfa,MIPS,PA-RISC,PowerPCeSPARC.

    Algumasobservaesquejustificaramosprimeirosprojetosdepro-cessadores RISC em 1975 era que a compilao de programas em umaquantidadedememrialimitada,nessapocanaordemdealgunsKbytes,nopermitiaoaproveitamentointegraldoconjuntodeinstruescomple-xas,maiorjustificativadasarquiteturasCISC.Almdisso,ousodeesque-made endereamento complexo torna necessria a utilizao demuitosciclosdeleituradememriaparaexecutarumcomando.ApropostaRISCquefunesseriammelhorexecutadasatravsdeseqnciasdeinstruesmaissimples,executadasaumamaiorvelocidadedevidoapossibilidadedeseutilizarrelgios(clocks)maiores.Outropontofavorvelautilizaodeinstruescomcomprimentofixoerestringindoasoperaesaritmticasaosregistrosinternosdoprocessador(nofazoperaesaritmticasemme-

  • 60 ARQUITETURA DE COMPUTADORES

    mria),facilitouaimplementaodepipelines,reduzindootempodeleituraedecodificaodeinstrues.

    umenganoacharqueemumprocessadorcomconjuntodeinstru-esreduzidasasinstruessosimplesmenteeliminadas,tendoporre-sultadoumconjuntomenordasinstrues.Naverdadeaolongodosanos,oconjuntodeinstruesdosprocessadoresRISCtemcrescidonotamanho,ehojemuitosdeles tmumconjuntode instruesmaiordoquemuitosprocessadoresCISC.AlgunsprocessadoresdoRISCtaiscomooTransputerdaINMOStmoconjuntodeinstruotograndequantoumIBMSiste-ma/370,tipicamenteumprocessadorCISC.Pelooutrolado,oDECPDP-8,mquina claramente equipada comprocessadorCISC, porquemuitasdesuas instrues envolvemacessos dememriamltiplos, tem somente 8instruesbsicas,maisalgumasinstruesestendidas.

    Outras caractersticas encontradas tipicamente nas arquiteturasRISCso:

    Formato de instruo uniforme, usando uma nica palavra comoopcodenasmesmasposiesdebitemcadainstruo,exigindomenosdecodificao;

    Registrosdeusogeralidnticos,permitindoquealgumregistrosejausado em algum contexto, simplificando o projeto do compilador(emboranormalmentehunsregistrosdevrgulaflutuante);

    Modalidadesdeendereamentosimples.Oendereamentocomple-xoexecutadoatravsdasseqnciasdaaritmticae/ouoperaesdecarga-armazena;

    Noentanto,devemosteremmentequeasexceesabundam,natu-ralmente,tantodentrodomundoCISCedoRISC.

    Concluindo,podemosdizerqueapesardascaractersticasmarcantesquediferenciamumprocessadorCISCdeumRISC,recentementeessasdife-renotem-sereduzido.Podemosdizerqueambasastcnicassoutilizadasnosprocessadoresmodernostornando-sedifcilclassificarumprocessador.

    Melhorando o desempenho de processadoresAlgumastcnicaspodemserutilizadasparamelhorarodesempenho

    dosprocessadores:

    Processamentoempipeline.

    Cachedememriadentrodochipdoprocessador.

    Previsodedesvio(branchprediction).

    Execuoespeculativa(speculativeexecution).

    1.Pesquiseumaarquiteturaeumconjuntodeinstruodeumprocessa-dorsimples(microcontrolador).

    2.Umaunidadedepontoflutuanteessencial?Vocpodesimularsuasfunesatravsdesoftware?

    3.Procureaespecificaodemicroprocessadoresmodernosevejaquaisf