❜ ◆ ❩ ❬ ❭ ▲ ❍ ▼ ◆ ● ❍ ❖ ❬ ❪ ❙ ● ◆ P ❑ ✷ ✸ ✹ ✺ ✻ ✼ ✽ ✼ ✺ ❨ ✽ ✼ ◗ ❑ ❍ ● ▲ ❍ ▼ ◆ ● ❍ ❖ P ▼ ◆ ✼ ✽ ◆ ❙ ❯ ❙ ◆ ❱ ✼ ❂ ✻ ✸ ✺ ✸ ✻ ❏ ◆ ❋ ● ❍ ■ ❏ ❑ ❑ ❍ ● ▲ ❍ ▼ ● ❬ ❍ ❖ P ▼ ◗ ◆ ❨ ◆ ❙ ❯ ❙ ◆ ❩ ❭ ✻ ✷ ❂ ✼ ✽ ✺ ✹ ✸ ✾ ✸ ❇ ✾ ✿ ❈ ❑ ▲ P ◆ ❙ ◆ ❪ ❬ ❖ ❍ ● ◆ ▼ ❍ ❑ ■ ● ✸ ❖ ❍ ● ✷ ✸ ✹ ✺ ✻ ✼ ✽ ✼ ✺ ◆ ❪ ▼ ✻ ❂ ✼ ✽ ❍ ▲ ❭ ✾ ✸ ❇ ✾ ❬ ◆ ❈ ❜ ❞ ❛ ❞ ❝ ❛ ❜ ✡ ❜ ❛ ❜ ❛ ❛ ✦ ❙ ✧ ❜ ✥ ❛ ❵ ❛ ❛ ✚ ❵ ❑ P ◆ ✿ ❬ ❍ ❑ ▼ ❍ ✾ ✸ ❇ ✾ ✿ ❈ ▲ ● ❍ ❑ ❏ ✽ ■ ❍ ● ❋ ❈ ✿ ✾ ❇ ✸ ✾ ❋ ● ◆ ✼ ❩ ❖ ❨ ● ❱ ◆ ❙ ❯ ❙ ◆ ◆ ◗ ▼ P ✷ ❂ ✸ ✹ ✺ ✻ ✼ ✽ ✼ ✺ ✸ ❍ ● ✻ ❱ •Sérgio Cavalcante Arquitetura Arquitetura Básica Básica Arquitetura de Arquitetura de • Unidade de Controle e de ❘❚❙ Sistemas Embarcados Sistemas Embarcados Processamento ALU Controller • Diferen ças �✂✁☎✄✝✆✟✞✠✆☛✡ ☞☛✌✎✍ ✏✒✑☛✓✕✔✗✖✙✘✛✚ ✑✗✜ ✢✒✣ ✤✝✏☛✜ ✔☛✥ – Unidade de Registers Processamento é genérica ✏✒✑✗★ ✩✟✪☛✏✟✫ ✑☛✣ ✩✒✥ ✬✟✭☛★ ✘✕✮✰✯✲✱✴✳✝✵✴✶ PC IR – Unidade de controle n ão armazena ❲☛❏ ❳❚❍ algoritmo (memória) ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❁❊ Operações de Opera ções de Processamento Processamento Capítulo 3 3 Processadores Processadores Capítulo • Load de Propósito Geral Propósito Geral: : de ❘❚❙ – Cópia de memória Software em registrador Software ALU +1 Controller • Opera ção na ALU – Valores em Registers Regist radores s ão processados pela ALU 10 11 e armazenados em PC IR regist rador • St ore ... ❲☛❏ ❳❚❍ 10 – Cópia de ... 11 regist rador em memória ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂✕❫ Introdução Introdução Unidade Unidade de de Controle Controle • Unidade de Controle: configura opera ç ões do datapath • Processadores de Propósito Geral – Sequência de opera ç ões (instru ç ões) desejadas – Processador projetado para uma variedade de tarefas ❘❚❙ armazenadas na memória (programa) computacionais ALU • Ciclo de Instru ção – várias sub- – Baixo custo unitário (Custo NRE para grande volume) Controller operações (cada uma em um • Motorola vendeu meio bilh ão de microcontroladores 68HC05 em ciclo de relógio) 1996 Registers – Busca: armazena instru ção em IR, atualiza PC – Cuidadosamente projetado – Decodificação: determina o que a • Otimiza desempenho, tamanho e potência instrução significa PC IR – Reduzido time-to-market (protótipo), grande flexibilidade – Busca de Operandos: c ópia de dados da memória para • Usuário apenas descreve o software registradores na unid. Processamento ... ❲☛❏ ❳❚❍ – “microprocessor” – “micro” usado devido a ser implementado load R0, M[500] 10 – Execu ção: Processa dados na com poucos circuitos inc R1, R0 ALU ... store M[501], R1 – Armazena resultados: escreve resultados de registrador na ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❁❉ ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❄❴ mem ória •Wearable Computers •1
❛ ❙ ● ❍ ❖ ❬ ❪ ◆ ◆ ▼ P ❑ ❵ ❛ ❛ ❵ ❛ ◆ ❍ ❜ ❯ ❖ P ▼ ◗ ◆ ◆ ❙ ❙ ▲ ◆ ❱ ● ❨ ❩ ❬ ❭ ❜ ❛ ● ✽ ✼ ✺ ✸ ✻ ❂ ✼ ✾ ✼ ✸ ❇ ✾ ✿ ❈ ❤ ❋ ✽ ✻ ❛ ❛ ❜ ❛ ❜ ❜ ❛ ❝ ❞ ❞ ✺ ❜ ❜ ❛ ❛ ✷ ✸ ✹ ❍ ◆ ❍ ❜ ❑ ❵ ❛ ❛ ❵ ❛ ❜ ◆ ❛ ❛ ❜ ❛ ❜ ❜ ❛ P ❙ ❞ ▲ ◆ ❱ ● ❨ ❩ ❬ ❭ ❍ ◆ ▼ ◆ ● ❍ ❖ ❬ ❪ ❝ ❛ ▼ ❍ ✾ ✿ ❈ ✐ ❋ ● ■ ✸ ❏ ❑ ❑ ❍ ● ▲ ❍ ❇ ✾ ❞ ✻ ❜ ❜ ❛ ❛ ✷ ✸ ✹ ✼ ✽ ✽ ✼ ✺ ✸ ✻ ❂ ✼ ● ■ ❯ ❙ ❖ P ▼ ◗ ◆ ◆ ❯ ● ❙ ◆ ❱ ● ❨ ❩ ❬ ❍ ◆ ▲ ❍ ① q r ② ④ ❋ ● ■ ▼ ❏ ❑ ❑ ❍ ● ▲ ❍ ❭ ❍ q ❞ ❜ ❛ ❜ ❜ ❛ ❝ ❛ ❛ ❞ ❜ ⑤ ⑥ ⑦ ❜ ❛ ❛ ❜ ▼ ❙ ◆ ● ❍ ❖ ❬ ❪ ◆ ◆ ❜ P ❑ ❵ ❛ ❛ ❵ ❛ ❦ ♣ ❏ ▲ ❱ ● ❨ ❩ ❬ ❭ ❍ ❙ ▼ ◆ ● ❍ ❖ ❬ ❪ ◆ ❯ ❙ ◆ ❑ ❑ ❍ ● ▲ ❍ ▼ ● ❙ ❍ ❖ P ▼ ◗ ◆ ◆ ◆ ◆ ♦ ♠ ❜ ❛ ❛ ❥ ❦ ❧ ♥ ❞ ♦ ♣ ♦ ♠ ❦ ♥ t ❜ ❛ P ❜ ❑ ❵ ❛ ❛ ❵ ❛ ❜ ❛ ❞ ❛ ❜ ❛ ❜ ❜ ❛ ❝ ❙ ✺ ❙ ◆ ❑ P ◆ ❙ ◆ ❪ ❬ ❖ ❍ ● ▼ ❛ ❍ ▲ ❭ ❬ ❩ ❨ ❜ ❛ ❜ ❜ ● ❛ ❜ ❝ ❛ ❜ ◆ ❜ ❛ ❜ ❙ ❛ ❛ ❜ ❜ ❵ ❜ ◆ ❛ ❛ ❵ P ❑ ❵ ❛ ❛ ❵ ❛ ❛ ❞ ❝ ✽ ❑ ❑ ❏ ■ ✺ ✻ ❍ ● ❋ ✼ ✼ ● ✺ ✸ ✻ ❂ ✼ ✽ ✾ ✸ ❇ ✾ ✿ ❍ ▲ ❛ ◆ ❞ ❜ ❜ ❱ ❛ ◆ ❙ ❯ ❛ ❙ ✷ ❍ ◆ ◗ ▼ P ❖ ❍ ● ✸ ✹ ◆ ▼ ❛ ❞ ◆ ✾ ❋ ✺ ✸ ✻ ❂ ✼ ✽ ✾ ✸ ❇ ✿ ❍ ❈ ❋ ● ❍ ■ ❏ ❑ ❑ ❍ ● ❈ ● ■ ✾ ▼ ✷ ◆ ✸ ✹ ✺ ✻ ✼ ✽ ✼ ◗ P ❏ ❖ ❍ ● ◆ ▼ ❍ ▲ ● ❍ ❑ ❑ ✿ ❇ ❛ ▲ ❯ ❙ ❛ ◆ ❱ ● ❨ ❩ ❬ ❭ ❍ ✸ ▼ ◆ ● ❍ ❖ ❬ ❪ ❛ ❜ ❜ ❞ ✷ ✹ ✸ ❖ ✾ ▲ ❍ ▼ ◆ ● ✽ ❍ ✼ ❂ ✻ P ✺ ✸ ▼ ◗ ✺ ✼ ✽ ✼ ◆ ◆ ❙ ✻ ❈ •S érgio Cavalcante Sub- -opera ç ões opera ç ões da da Unidade Unidade de de Sub- -opera ç ões da Unidade opera ç ões da Unidade de de Sub Sub Controle Controle Controle Controle • Busca • Execu ção ❘❚❙ ❘❚❙ – Cópia da instru ção – Processa dados em IR ALU ALU na ALU Controller Controller – PC: Contador de – (Para esta programa aponta Registers Registers instru ção em para pr óxima instru ção particular nada 10 PC IR PC IR – IR: armazena load R0, M[500] acontece load R0, M[500] instrução que foi durante esta buscada ... ... ❲☛❏ ❳❚❍ sub-operação) ❲☛❏ ❳❚❍ load R0, M[500] load R0, M[500] 10 10 inc R1, R0 inc R1, R0 ... ... store M[501], R1 store M[501], R1 ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❄❡ ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❄❤ Sub- -opera ç ões da Unidade opera ç ões da Unidade de de Sub- -opera ç ões da Unidade opera ç ões da Unidade de de Sub Sub Controle Controle Controle Controle • Armazena • Decodifica ção ❘❚❙ ❘❚❙ resultados – Determina ALU ALU – Escreve dado de significado da Controller Controller registrador em instru ção memória Registers Registers – (Para esta instru ção em 10 PC IR PC IR load R0, M[500] particular nada load R0, M[500] acontece durante esta sub-operação) ... ... ❲☛❏ ❳❚❍ ❲☛❏ ❳❚❍ load R0, M[500] load R0, M[500] 10 10 inc R1, R0 inc R1, R0 ... ... store M[501], R1 store M[501], R1 ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂✕❢ ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂❄❤ Sub- Sub -opera ç ões da Unidade opera ç ões da Unidade de de Ciclos Ciclos de de uma uma Instru ção Instrução Controle Controle • Busca de PC= 100 ❘❚❙ ❘❚❙ Fetch Store Operandos Fetch Decode Exec. ops results ALU ALU Controller Controller – Cópia de dados da memória Registers Registers para registradores no 10 10 datapath PC IR PC IR load R0, M[500] load R0, M[500] ... ... ❲☛❏ ❳❚❍ ❲☛❏ ❳❚❍ load R0, M[500] load R0, M[500] 10 10 inc R1, R0 inc R1, R0 ... ... store M[501], R1 store M[501], R1 ✾✕✿ ✽❁❀ ❃❄✾ ❂✛❅ ❃❄❆ ❂✕❣ q✕r ♣❁s ✉❄q t✛✈ ✉❄✇ t❄③ •Wearable Computers •2
Recommend
More recommend