Agenda - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Agenda

Description:

Agenda M quinas RISC – PowerPoint PPT presentation

Number of Views:93
Avg rating:3.0/5.0
Slides: 26
Provided by: Windo976
Category:
Tags: agenda | pipeline | sparc

less

Transcript and Presenter's Notes

Title: Agenda


1
Agenda
  • Máquinas RISC

2
Gap Semântico
  • Queda do custo do Hardware o custo relativo do
    Software aumentou.
  • SW é pouco confiável
  • Resposta dos pesquisadores foi desenvolver
    linguagens de programação mais poderosas e
    complexas.
  • Aumento da distância semântica entre operações
    disponíveis em linguagens de alto nível e aquelas
    disponibilizadas pelo hardware dos computadores

3
GAP Semântico
  • Desenvolver arquiteturas que diminuíssem a
    distância entre instruções de linguagem de alto
    nível e instruções de máquina.
  • Características dessa Arquitetura grande
    conjunto de instruções, vários modos de
    endereçamento e implementação de diversos
    comandos de linguagem de alto nível no hardware
    da máquina.

4
Características das HLL (LAN) operações
Ocorrência dinâmica
Instruções valor normalizado
referência a memória
atribuição Laços chamadas if outros
Válido para arquiteturas CISC (Complex
Instruction Set Computer)
5
Características das HLL (LAN) operandos
  • segundo Patterson PATT82a a maioria das
    referências é de variáveis escalares sendo que
    mais de 80 dos escalares são locais

Pascal C Average Integer constant 16 23 20
Scalar variable 58 53 55 Array/structure 26 24 25
  • segundo Lunde LUND77, cada instrução, em média,
    referencia 0.5 operandos na memória e 1.4 nos
    registradores

6
Características das HLL (LAN) chamadas
  • é a operação mais lenta nas linguagens de alto
    nível compiladas
  • segundo Tanenbaum Tane78, 98 de chamadas
    dinâmicas passam menos de 6 argumentos e 92 usam
    menos de 6 variáveis locais
  • segundo KatevenisKATE83, é raro existir uma
    longa seqüência de chamadas à procedimentos.

7
Implicações
  • Deve-se otimizar os processos que consomem mais
    tempo.
  • Deve-se usar um grande número de registradores
    (referência aos operandos)
  • Uso de pipelines
  • Simplified (reduced) instruction set

8
Uso de registradores
  • os registradores são os dispositivos mais rápidos
    de armazenamento
  • deve-se criar uma estratégia para se manter os
    operandos mais freqüentemente acessados nos
    registradores
  • deve-se minimizar as operações de transferência
    de operandos da memória para registradores

abordagem via hardware
9
Abordagem via software
  • visa deixar a tarefa de maximização de uso dos
    registradores para o compilador
  • o compilar irá tentar usar os registradores para
    armazenar as variáveis que serão usadas a maior
    parte do tempo
  • deve utilizar algoritmos sofisticados de análise
    de programas.

10
Abordagem via hardware
  • uso de mais registradores para manter mais
    variáveis por mais tempo
  • deve-se organizar o uso destes registradores de
    forma a diminuir o número de acessos à memória
    principal.

11
Condições de contorno
  • as variáveis locais devem ser salvas a cada
    chamada de nova sub-rotina
  • parâmetros devem ser passados para as sub-rotinas
    chamadas
  • no retorno da chamada as variáveis locais devem
    ser novamente carregadas e os resultados passados
    de volta

12
Janelas de registradores
  • Uma sub-rotina típica passa poucos parâmetros
  • O número de sub-rotinas chamadas é geralmente
    pequena
  • Múltiplos conjuntos de registradores são
    endereçados para diferentes sub-rotinas
  • Uma nova chamada faz com que o processador use
    automaticamente o próximo conjunto de
    registradores
  • Janelas de registradores de sub-rotinas
    adjacentes possuem uma superposição de
    registradores que são usados para se passar os
    parâmetros

13
Janelas de registradores
14
Representação circular
se F for chamado, os conteúdo de A.in e
A.loc devem ser salvos na memória
neste caso, o valor de SWP deve ser alterado
Ao passo que novas sub-rotinas são chamadas, o
valor de CWP deve ser alterado
Implementações típicas usam 8 janelas de 16
registradores cada.
15
Variáveis Globais
  • Uma possibilidade é usar endereçamento de memória
    para as variáveis globais

Outra possibilidade é o uso de registradores de
uso exclusivo para variáveis globais
16
Cache vs. Janela de registradores
17
Arquitetura CISC
  • Conjunto com um grande número de instruções .
  • Motivações
  • simplificação nos projetos de compiladores
  • aumento de desempenho de HLL.
  • Em suma dar melhor suporte as HLL.

18
Argumentos
  • Conjunto com um grande número de instruções
  • - dificultam a implementação de pipeline
  • simplificação nos projetos de compiladores
  • - o compilador deve encontrar os casos que
    combinam exatamente com a construção
  • programas usando CISC são menores
  • - porém os opcodes são maiores, produzindo
    maiores instruções.

19
Características da arquitetura RISC
  • Uma instrução por ciclo
  • Operações entre registradores
  • Modos de endereçamento mais simples
  • Formatos de instruções mais simples

20
Características RISC
  • Tornar as máquinas mais simples para que sejam
    mais velozes
  • Simplicidade
  • Poucas instruções, simples e com poucos formatos
  • Poucos modos de endereçamento
  • Usar apenas LOAD/STORE para movimentação de dados
    entre registradores e memória
  • Baseado em compiladores sofisticados para
    otimizar o código

21
Características RISC
  • Alcançar alto desempenho através de registradores
    rápidos, altas velocidades de CPU e otimização na
    compilação
  • Uma instrução por ciclo
  • Operações registrador a registrador
  • Formato fixo de instruções.
  • Implementação mais eficiente

22
Exemplos
  • RISC MIPS, SPARC, Alpha, HP-PA, PowerPC, i860,
    i960.
  • CISC VAX, PDP-11, Intel i86, Motorola 68K.
  • CISC com macro/micro-instruções RISC internas
    Pentium, AMD Athlon.

23
RISC x CISC
  • Complex Instruction Set Computer (CISC)
  • CISC é caracterizada por usar um grande conjunto
    de instruções complexas, objetivando o uso mínimo
    de memória
  • Instruções típicas CISC incorporam complexos
    modos de endereçamento para os operandos
  • Máquinas CISC usualmente possuem número pequeno
    de registradores
  • Máquinas CISC foram, na maioria, construídas como
    microprogramadas, mas, recentemente, algumas têm
    implementado micro/macro-instruções RISC
    (executadas diretamente pelo hardware).

24
RISC x CISC
  • Reduced Instruction Set Computer (RISC)
  • RISC é caracterizada por usar um conjunto pequeno
    de simples instruções
  • Máquinas RISC usualmente utilizam apenas
    instruções Load e Store para acesso a memória
  • Máquinas RISC frequentemente possuem número
    elevado de registradores
  • Máquinas RISC têm sido construídas para que suas
    instruções sejam diretamente executadas pelo
    hardware (não há microcódigo).

25
RISC vs. CISC
Não existe a melhor arquitetura
Uma boa filosofia usar o melhor dos dois
Write a Comment
User Comments (0)
About PowerShow.com