Inserindo o Controle Organização de Computadores • Identifica pontos de controle no caminho de dados – Busca da instrução – Operações lógicas e aritméticas – Memória • Identifica tipo de controle do sinal – Fluxo de dados através de multiplexadores – Escrita de dados • Deriva sinais de controle para cada instrução • Coloca todos os sinais juntos Busca da Instrução no Final do Ciclo Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções M U X RegDst Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita EscReg 16 Somador Operação da UAL UAL fonte M u x Zero Resultado da UAL UAL Exten- 32 são de sinal M u x Don’t care (X) DvC= 0 Controle para Operação Aritmética Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções M U X RegDst =1 Somador Operação da UAL =op 3 Reg a ser lido #1 UAL fonte Reg a ser =0 Zero lido #2 Reg a ser Resultado M escrito da UAL u x Dado de UAL escrita EscReg =1 16 Exten- 32 são de sinal M u x DvC =0 EscMem =0 Memória de dados Endereço Dado lido Dado a ser escrito LerMem =0 MemParaReg =1 0 M u x 1 Controle para Operação de Carga Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções M U X RegDst =0 Reg a ser lido #1 Reg a ser UAL fonte lido #2 =1 Reg a ser 0 M escrito u x Dado de 1 escrita EscReg =1 16 Exten- 32 são de sinal Somador Operação da UAL 3 =Add Zero Resultado da UAL UAL M u x DvC =0 EscMem =0 Memória de dados Endereço Dado lido Dado a ser escrito LerMem =1 MemParaReg =0 0 M u x 1 Controle para Operação de Armazenamento Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções Reg a ser lido #1 Reg a ser UAL fonte M lido #2 =1 U Reg a ser 0 M X escrito u x Dado de 1 escrita RegDst =X EscReg =0 16 Exten- 32 são de sinal Somador Operação da UAL 3 =Add Zero Resultado da UAL UAL M u x DvC =0 EscMem =1 Memória de dados Endereço Dado lido Dado a ser escrito LerMem =0 MemParaReg =X M u x Controle para Operação de Desvio Condicional (beq) Organização de Computadores PC+1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções Reg a ser lido #1 Reg a ser UAL fonte M lido #2 =0 U Reg a ser M X escrito u x Dado de escrita RegDst =X EscReg =0 16 Exten- 32 são de sinal Somador Operação da UAL 3 =Sub Zero Resultado da UAL UAL M u x DvC =1 EscMem =0 Memória de dados Endereço Dado lido Dado a ser escrito LerMem =0 MemParaReg =X M u x Sinais de Controle Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Endereço de leitura Instrução Memória de Instruções M U X RegDst Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita EscReg 16 Somador Operação da UAL 3 UAL fonte M u x Zero Resultado da UAL UAL Exten- 32 são de sinal M u x DvC EscMem Memória de dados Endereço Dado lido Dado a ser escrito LerMem MemParaReg M u x Resumo dos Sinais de Controle Organização de Computadores op RegDst UALfonte MemParaReg EscReg LerMem EscMem DvC UALOp 000 add 1 0 1 1 0 0 0 Add 001 addi 0 1 1 1 0 0 0 Add 010 lw 0 1 0 1 1 0 0 Add 011 sw X 1 X 0 0 1 0 Add 100 beq X 0 X 0 0 0 1 Sub Tabela-verdade para os Três Bits de Controle da UAL Organização de Computadores Op2 Op1 Op0 Código de Operação Operação da UAL lw 0 1 0 010 (soma) sw 0 1 1 010(soma) beq 1 0 0 110 (subtração) Tipo R(add) 0 0 0 010 (soma) Função de Controle para Implementação Monociclo Organização de Computadores op RegDst UALfonte MemParaReg EscReg LerMem EscMem DvC UALOp0 UALOp1 UALOp2 000 Tipo R 1 0 1 1 0 0 0 0 1 0 010 lw 0 1 0 1 1 0 0 0 1 0 011 sw X 1 X 0 0 1 0 0 1 0 100 beq X 0 X 0 0 0 1 0 1 1 Implementação da Função de Controle (PLA) Organização de Computadores Entradas op RegDst UALfonte MemParaReg EscReg LerMem EscMem DvC UALOp0 UALOp1 UALOp2 000 Tipo R 1 0 1 1 0 0 0 0 1 0 010 lw 0 1 0 1 1 0 0 0 1 0 011 sw X 1 X 0 0 1 0 0 1 0 100 beq X 0 X 0 0 0 1 0 1 1 Op2 Op1 Op0 Saídas Formato R Iw sw beq RegDst UALfonte MemparaReg EscReg LerMem EscMem DvC UALOp2 Juntando as Partes Organização de Computadores PC +1 1 Resultado da UAL Somador Registradores PC Instr [24:22] op Endereço de leitura Instrução Memória de Instruções M U X RegDst RegDst Controle Principal UALfonte MemparaReg EscReg LerMem EscrMem DvC UAL Op2 Reg a ser lido #1 Reg a ser lido #2 Reg a ser escrito Dado de escrita EscReg 16 Somador Operação da UAL UAL fonte M u x Zero Resultado da UAL UAL Exten- 32 são de sinal M u x DvC EscMem Memória de dados Endereço Dado lido Dado a ser escrito LerMem MemParaReg M u x Implementacão Monociclo Organização de Computadores • Vantagens – Um ciclo de relógio por instrução torna lógica mais simples • Desvantagens – Ciclo de clock determinado pela instrução que leva maior tempo • Instrução de carga utiliza cinco unidades funcionais em série tempo de acesso à memória de instruções + – tempo de acesso ao banco de registradores + – retardo da UAL + – tempo de acesso à memória de dados + – tempo de estabilidade dos dados para o banco de registradores – Duplicação de unidades funcionais