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
Top Related