A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

RISC - Reduced Instruction Set Computers Cap. 12.

Apresentações semelhantes


Apresentação em tema: "RISC - Reduced Instruction Set Computers Cap. 12."— Transcrição da apresentação:

1 RISC - Reduced Instruction Set Computers Cap. 12

2 Maiores Avanços nos Computadores zConceito de Família yIBM System/360 – 1964 yDEC PDP-8 ySepara Arquitetura da Implementação zUnidade de Controle Microprogramada yIdealizada por Wilkes – 1951 yProduzida pela IBM S/360 – 1964 zMemória Cache yIBM S/360 model 85 – 1969

3 Maiores Avanços nos Computadores zRAM no Estado Sólido zMicroprocessadores yIntel 4004 – 1971 zPipelining yIntroduz Paralelismo no Ciclo de Execução zMúltiplos Processadores

4 Próximo Passo – RISC zReduced Instruction Set Computer zRecursos Chaves yGrande Número de Registradores de Propósito Geral xOu Uso de Tecnologia de Compilador para Otimizar Uso dos Registradores yConjunto de Instruções Simples e Limitado yÊnfase na Otimização do Pipeline de Instruções

5 Comparação de Processadores zCISC RISC Superscalar zIBM DEC VAX Intel Motorola MIPS IBM Intel z370/168 11/780 486 88000 R4000 RS/6000 80960 z1973 1978 1989 1988 1991 1990 1989 zNº de Instruções z208 303 235 51 94 184 62 zTamanho de Instrução (Bytes) z2-6 2-57 1-11 4 32 4 4 or 8 zModos de Endereçamento z4 22 11 3 1 2 11 zRegistradores de Propósito Geral (GP) z16 16 8 32 32 32 23-256 zMemória de Controle (KBytes) (Microprogramação) z420 480 246 0 0 0 0

6 Força Motriz do CISC zCustos de Software >> Custos do Hardware zLinguagens de Alto Nível (HLL) Cada Vez Mais Complexas zGap Semântico zGrandes Conjtos. de Instrução zMais Modos de Endereçamento zImplementações em Hardware de Sentenças HLL ye.g. CASE (switch) no VAX

7 Intenção de CISC zFacilitar o Desenvolvimento do Compilador zAumentar a Eficiência de Execução yOperações Complexas em Microcódigo zSuportar HLLs Mais Complexas

8 Características de Execução zEstudos Realizados Baseados em Programas Escritos em HLLs yEstudos Dinâmicos Medidos Durante a Execução do Programa zAnálise yOperações Executadas yOperandos Utilizadas ySeqüenciamento de Execução

9 Operações zAtribuições yMovimentação de Dados zSentenças Condicionais (IF, LOOP) yControle de Seqüência zChamada/Retorno de Procedimento Consome Muito Tempo zAlgumas Instruções HLL Resultam em Muitas Operações em Código de Máqina

10 Freqüência Dinâmica Relativa Ocorrência Instrução de Máq.Referência à Mem. Dinâmica(Ponderada)(Ponderada) PascalCPascalCPascalC Atrib.453813131415 Loop5342323326 Call151231334445 If29431121713 GoTo-3---- Outra613121

11 Operandos zPrincipalmente Variáveis Locais Escalares zOtimização Deveria se Concentrar no Acesso a Variáveis Locais PascalCMédia Constante Inteira162320 Variável Escalar585355 Matriz/Estrutura262425

12 Chamadas de Procedimentos zConsome Muito Tempo zDepende do Nº de Parâmetros Passados zDepende do Nível de Aninhamento zMaioria do Programa Não Realizam Muitas Chamadas Seguidas de Muitos Retornos zMaioria das Variáveis São Locais yLocalidade de Referência

13 Implicações zMelhor Suporte  Otimizando yRecursos Mais Utilizados yRecursos que Consomem Mais Tempo zGrande Nº de Registradores yReferência a Operandos zProjeto Cuidadoso de Pipelines yPredição de Desvios, etc. zConjunto de Instruções Simplificado (Reduzido)

14 Implementações RISC Registradores

15 Grande Arquivo de Registradores zSolução em Software yRequer que o Compilador Aloque Registradores xAlocação Baseada nas Variáveis Mais Utilizadas em um Dado Momento yRequer Análise de Programa Sofisticada zSolução em Hardware yTem Mais Registradores xPortanto Mais Variáveis Estarão nos Registradores

16 Registradores para Variáveis Locais zArmazena Variáveis Locais Escalares em Registradores yReduz Acesso à Memória zCada Chamada de Procedimento/Função Muda a Localidade yParâmetros são Passados yResultados são Retornados yVariáveis dos Programas que Chamaram são Restauradas

17 Janelas de Registradores zApenas Poucos Parâmetros zFaixa Limitada de Profundidade de Chamadas zUso de Múltiplos Conjuntos Pequenos de Registradores yChamadas Chaveiam para um Conjunto Diferente de Registradores yRetornos Chaveiam de Volta para Um Conjunto de Reg. Previamente Utilizado

18 Janelas de Registradores zTrês Áreas Dentro do Conjunto de Registradores yRegistradores de Parâmetro yRegistradores Locais yRegistradores Temporários xRegistradores Temporários de um Conjto. Superpõem-se aos Registradores de Parâmetros do Seguinte Passagem de Parâmetros Sem Movimentação de Dados

19 Janelas de Registradores Superpostas

20 Diagrama de Buffer Circular

21 Exemplo de Janela de Registrador zInt global.a, global.b, global.c; zVoid Main(); z{ zInt main.a, main.b, main.c; z... zProc.b(global.a,main.b,main.c); z... z} zVoid Proc.b(int a,b,c); z{ zInt b.a,b.b,b.c; z... zProc.c(global.b,b.a); z... z} zVoi Proc.c(int c,d); z{ zInt c.a; z... z}

22 Int global.a, global.b, global.c; Void Main(); { Int main.a, main.b, main.c;... Proc.b(global.a,main.b,main.c);... } Main.a Main.b Main.c Global.a Main.b Main.c Void Proc.b(int a,b,c); { Int b.a,b.b,b.c;... Proc.c(global.b,b.a);... } Voi Proc.c(int c,d); { Int c.a;... } abcabc b.a b.b b.c c.a Global.b b.a cdcd A B C Exemplo de Janela de Registrador

23 Variáveis Globais zAlocadas pelo Compilador na Memória yIneficiente para Variáveis Freqüentemente Acessadas zSolução Proposta yTer um Conjunto de Registradores para Variáveis Globais

24 Registradores X Cache zArquivo de RegistradoresCache zTodos Escalares LocaisEsc. Locais Recentemente Usados (RU) zVariáveis IndividuaisBlocos de Mem. zVar. Globais do CompiladorVar. Globais RU zSalvar/Restaurar Baseado emSalv./Rest. baseado em Aninhamento de Proc.Algoritmo de Cache zEndereçamento de Reg.End. de Memória

25 Referenciando um Escalar - Arquivo de Registrador de Janela

26 Referenciando um Escalar - Cache

27 Técnica de Colorização de Grafos

28 Implementações RISC RISC Pipelining

29 zMaioria das Instruções são Registrador para Registrador zExecução em Dois Estágios yI: Busca de Instrução yE: Execução xOperação ULA com Entrada e Saída de Registrador zPara Load e Store yI: Busca de Instrução yE: Execução xCalcula Endereço de Memória yD: Memória xOperação de Registrador para Memória e de Memória para Registrador

30 Efeitos de Pipelining

31 Otimização de Pipelining zDesvio Atrasado yNão Toma Desvio Até Execução da Instrução Seguinte Slot de Desvio

32 Desvio Normal e Atrasado EndereçoNormalAtrasadoOtimizado 100LOAD X,ALOAD X,ALOAD X,A 101ADD 1,AADD 1,AJUMP 105 102JUMP 105JUMP 105ADD 1,A 103ADD A,BNOOPADD A,B 104SUB C,BADD A,BSUB C,B 105STORE A,ZSUB C,BSTORE A,Z 106STORE A,Z

33 Uso de Desvio Atrasado

34 RISC X CISC Considerações

35 Porquê CISC? zSimplificação de Compilador? yQuestão Controversa xInstruções de Máquina Complexas São Difíceis de Utilizar xOtimização Mais Difícil zProgramas Menores? yOs Programas Ocupam Menos Memória, Mas… xMemória É Barata yPodem Não Ocupar Menos Bits, Apenas Menores na Forma Simbólica xMais Instruções  Opcodes Maiores xReferência a Registrador Requer Menos Bits

36 Porquê CISC? zProgramas Mais Rápidos? yTendência ao Uso de Instruções Simples yUnidade de Controle Mais Complexa xArmazenamento de Microprogramas de Controle Maior xInstruções Simples Demoram Mais a Executar zConclusão yNão é Claro que CISC é a Solução Apropriada

37 Características RISC zUma Instruções Por Ciclo zOperações Registrador - Registrador zPoucos e Simples Modos de Endereçamento zPoucos e Simples Formatos de Instrução zProjeto Hardwired (Sem Microcódigo) zFormato de Instrução Fixo zMaior Esforço/Tempo de Compilação

38 RISC v CISC zNão Há Divisão Clara zMuitos Projetos Utilizam Ambas Filosofias ye.g. PowerPC e Pentium II

39 Controvérsia zQuantitativa yComparação de Tamanhos de Programas e Velocidade de Execução zQualitativa yQuestões de Suporte a HLLs e Uso de Espaço no CI (VLSI) zProblemas yNão Há Pares de RISC e CISC Comparáveis yNão Há um Conjunto Definitivo de Programas de Teste yDificuldade de Separar os Efeitos do Hardware dos Efeitos do Compilador yMaioria das Comparações Feitas em Laboratório e Não no Mercado yMaioria dos Dispositivos Comerciais São uma Mistura

40 Por onde estudar ? zArquitetura e Organização de Computadores yWilliam Stallings xCap. 12 zManufacturer Web Sites


Carregar ppt "RISC - Reduced Instruction Set Computers Cap. 12."

Apresentações semelhantes


Anúncios Google