130 likes | 264 Views
Caminho de Dados. (aula passada). Busca de Instrução + Instruções Aritm . e Lóg . (R-format) + Instruções de Referência à Memória (I-Format) + Desvio. M U X. 1. Somador. UAL. Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita. DvC. 3. PC.
E N D
Caminho de Dados (aula passada) • Busca de Instrução + InstruçõesAritm. e Lóg. (R-format) + Instruções de Referência à Memória (I-Format) + Desvio M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC 3 PC Endereço de leitura Dado lido #1 Dadolido #2 EscMen Instrução M U X Endereço Dado a ser escrito UAL M U X Dadolido M U X Memória de Instruções LerMem EscReg Extensão de sinal 16 32
Inserindo o Controle • Identificarospontos de controle no caminho de dados • Busca da instrução • Operaçõeslógicas e aritméticas • Operações de Memória • Identificartipo de controle do sinal • Fluxo de dados através de multiplexadores • Escrita e leitura de dados • Pensarnossinais de controleparacadainstrução
Busca da Instrução M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC= 0 3 PC Endereço de leitura (=X) Não influencia Dado lido #1 Dadolido #2 EscMen Instrução M U X Endereço Dado a ser escrito UAL M U X Dadolido M U X Memória de Instruções LerMem EscReg Extensão de sinal 16 32
Controle para Operação Aritmética M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC= 0 op 3 PC Endereço de leitura Dado lido #1 Dadolido #2 EscMen =0 =0 Instrução M U X Endereço Dado a ser escrito UAL =1 M U X Dadolido M U X =1 Memória de Instruções LerMem EscReg =0 =1 Extensão de sinal 16 32 EscMen = LerMem = 0 pois nem escreve nem lê da memória EscReg = 1 pois “Reg a ser escrito” seleciona registrador que vai receber “dado de escrita”
Controle para Operação de Carga M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC= 0 Add PC Endereço de leitura Dado lido #1 Dadolido #2 EscMen =0 =1 Instrução M U X Endereço Dado a ser escrito UAL =0 M U X Dadolido M U X =0 Memória de Instruções LerMem EscReg =1 =1 Extensão de sinal 16 32 LerMem = 1 pois lê da memória EscReg = 1 pois “Reg a ser escrito” seleciona registrador que vai receber “dado de escrita”
Controle para Operação de Armazenamento M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC= 0 Add PC Endereço de leitura Dado lido #1 Dadolido #2 EscMen =1 =1 Instrução M U X Endereço Dado a ser escrito UAL =X M U X Dadolido M U X =X Memória de Instruções LerMem EscReg =0 =0 Extensão de sinal 16 32 EscMem = 1 pois escreve da memória EscReg = 0 pois não usa o “Reg a ser escrito”
Controle para Op. de Desvio Condicional (beq) M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita DvC= 1 Sub PC Endereço de leitura Dado lido #1 Dadolido #2 EscMen =0 =0 Instrução M U X Endereço Dado a ser escrito UAL =X M U X Dadolido M U X =X Memória de Instruções LerMem EscReg =0 =0 Extensão de sinal 16 32 EscMen = LerMem = 0 pois nem escreve nem lê da memória EscReg = 0 pois não usa o “Reg a ser escrito” Se R[regA]-R[regB] = 0 então o sinal na saída Zero é 1, se não o sinal na saída Zero é 0.
Sinal de Controle M U X 1 Somador UAL Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita UALop DvC 3 PC Endereço de leitura EscMen Dado lido #1 Dadolido #2 mUAL Instrução mDadoEsc M U X Endereço Dado a ser escrito UAL M U X Dadolido M U X Memória de Instruções mRegDest LerMem EscReg Extensão de sinal 16 32
Resumo Sinais de Controle UALop0 = 0 UALop1 = 1
Implementação da Função de Controle Op0 Op1 Op2 R-format lw sw beq mRegDest mUAL mDadoEsc EscReg LerMen EscMen DvC UALOp2
Juntando as Partes mRegDest mUAL mDadoEsc EscReg M U X LerMem EscMem 1 Somador DvC UAL UALOp2 Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita UALop DvC 3 PC Endereço de leitura EscMem Dado lido #1 Dadolido #2 mUAL Instr [24:22] op Instrução mDadoEsc M U X Endereço Dado a ser escrito UAL M U X Dadolido M U X Memória de Instruções mRegDest Controle Principal LerMem EscReg Extensão de sinal 16 32
Implementação Monociclo • Vantagens • Um ciclo de relógioporinstruçãotornalógicamais simples • Desvantagens • Ciclo de clock determinadopelainstruçãoquelevamaior tempo • Instrução de cargautilizacincounidadesfuncionaisemsérie: tempo de acesso à memória de instruções + • tempo de acessoaobanco de registradores + • retardo da UAL + • tempo de acesso à memória de dados + • tempo paraarmazenaros dados para o banco de registradores • Duplicação de unidadesfuncionais