Professional Documents
Culture Documents
Estrutura da CPU
Registradores
De qual tamanho?
Grandeosuficienteparamanterendereocompleto. Grandeosuficienteparamanterpalavracompleta. Normalmente,possvelcombinardoisregistradoresdedados. ProgramaoC. Doubleinta. Longinta.
Reviso:oquetodoselesfazem?
Umconjuntodebits. Incluiflags (cdigoscondicionais). Sinaldoltimoresultado. Zero. Carry. Igual. Overflow Overflow. Habilitar/desabilitarinterrupo. Supervisor.
Modo supervisor
Outros registradores
Ciclo de instruo
Reviso. Stallings,Captulo3.
Ciclo indireto
Desempenho melhorado
Pipelining
Sobreporestasoperaes.
Hazards do pipeline
Pi Pipeline, li oualguma l partedo d pipeline, i li precisa i parar. Tambmconhecidacomobolhadepipeline. Tiposdehazards: Recursos. Dados. Controle.
Hazards de recursos
Duas(oumais)instruesnopipelineprecisamdomesmorecurso. Executadosemsrie,enoemparalelo,parmetropartedopipeline. Tambmchamadohazardestrutural. estrutural P.e.,considerepipelinesimplificadoem5estgios.
Cadaestgiousaumciclodeclock.
Nocasoideal,cadanovainstruoentranopipelineacadaciclodeclock. Suponhaqueamemriaprincipaltenhanicaporta. Considerebuscasdeinstruoeleituraseescritasdedadosumaporvez. Ignoreacache. Leituraouescritadeoperandonopodemserrealizadasemparalelocombuscade instruo. E i d Estgio deb buscade d instruo i fi ficaocioso i porumciclo i l b buscando d I3 I3. P.e.,vriasinstruesprontasparaentrarnafasedeexecuodeinstruo. nicaALU. Umasoluo:aumentarrecursosdisponveis.
Mltiplasportasdamemriaprincipal. MltiplasALUs.
Hazards de dados
Conflitonoacessodeumlocaldeoperando. Duasinstruesaseremexecutadasemsequncia. Ambasacessamumamemriaemparticularouoperandodoregistrador registrador. Senasequnciaestrita,noocorreproblema. Seemumpipeline,valordooperandopoderiaseratualizadoparaproduzir resultadodiferentedaexecuosequencialestrita. P.e.,sequnciadeinstruesdemquinadox86: ADDEAX,EBX SUBECX,EAX /*EAX=EAX+EBX /*ECX=ECX EAX
Hazard de controle
Tambmconhecidocomohazarddedesvio. Pipeline p tomadecisoerradasobrep previsodedesvio. Trazparaopipelineinstruesqueprecisamserdescartadas subsequentemente. Lidandocomdesvios: Mltiplosfluxos. Buscaantecipadadoalvododesvio desvio. Bufferdelaoderepetio. Previsodedesvio. Desvioatrasado.
Fluxos mltiplos
Previso de desvio
Previsonuncatomada: Assumequesaltonoacontecer. Semprebuscaprximainstruo. 68020&VAX11/780. VAXnofarbuscaantecipadaapsdesvioseresultarem faltadepgina(projetodoS/Oversus CPU). Previsosempre p tomada: Assumequesaltoacontecer. Semprebuscainstruoalvo.
Previsoporopcode: Algumasinstruessomaisprovveisderesultaremumsaltodoque outras. Podechegarat75%desucesso. Chavetomada/notomada: Baseadanohistricodedesvio. Boaparalaos. Refinadapelohistricodedesviocomdoisnveisoubaseadoem correlao. Baseadoemcorrelao: Nosdesviosdelao,ohistricoumaboaformadepreviso. Emestruturasmaiscomplexas,adireododesviocorrelacionada comadireodedesvioscondicionados.
Tambmusahistricodedesviosrecentes.
Desvioatrasado:
Nosaltaatquevocrealmenteprecise. Reorganizainstrues.
Registradores do Pentium 4
Registrador EFLAGS
Atributos do ARM
RISC. Arraymoderadoderegistradoresuniformes. MaisdoqueamaioriadosCISC CISC,menosquemuitosRISC RISC. Modelocarregar/armazenar: Operaesexecutamcomoperandosnosregistradores. Instruouniformedetamanhofixo: 32bitsparaconjuntopadroe16bitsparaThumb. Deslocamentoourotaopodemprprocessarregistradoresdeorigem: SeparaunidadesdeALUedeslocamento. Pequenonmerodemodosdeendereamento: Todososendereos decarga/armazenamento g / deregistradores g ecampos p da instruo. Nenhumendereamentoindiretoouindexadoenvolvendovaloresna memria. Endereamentocomautoincrementoeautodecremento: Melhoraoperaesdelao. Execuocondicionaldeinstruesminimizadesvioscondicionais: Limpezadopipelinereduzida.
Modos privilegiados
Mododosistema: Semexceo Usamesmosregistradoresdomodousurio. Podeserinterrompidopor Modosupervisor: SO. Interrupodesoftwareusadaparainvocarserviosdosistemaoperacional. Mododeabortamento: Faltasdememria. Modoindefinido: Tentainstruoquenoaceitapeloncleoprincipalnemporumdos coprocessadores. p Mododeinterruporpido: Sinaldeinterrupodafontedeinterruporpidadesignada. Interruporpidanopodeserinterrompida. Podeinterromperinterruponormal. Mododeinterrupo. Sinaldeinterrupodequalqueroutrafontedeinterrupo.
CPSR
CPSRprocessaregistradordeestado. ModosdeexceotmSPSRdedicado. 16bits b maissignificativos f flags fl do d usurio. Cdigosdecondio(N,Z,C,V). Q estouroousaturaoeminstruesSMID. J instruesJazelle(8bits). GE[3:0]SMIDusambits[19:16]comoflagdemaiorouigual. 16bitsmenossignificativoscontmflagsparamodoprivilegiado. E endian. Desabilitarinterrupo. T instruonormalouThumb. Modo.