caminho de dados

13
Caminho de Dados Busca de Instrução + Instruções Aritm. e Lóg. (R-format) + Instruções de Referência à Memória (I-Format) + Desvio Reg a ser lido # 1 Reg a ser lido #2 Reg a ser escrito Dado de escrita Dado lido #1 Dado lido #2 EscReg 3 Endereço Dado a ser escrito Dado lido LerMem EscMen Extens ão de UAL M U X M U X Memória de Instruções Endereço de leitura Instrução P C 1 Somador 16 32 M U X UAL M U X DvC (aula passada

Upload: morwen

Post on 15-Jan-2016

18 views

Category:

Documents


0 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Caminho de Dados

Caminho de Dados• Busca de Instrução + Instruções Aritm. e Lóg. (R-format) + Instruções de Referência à Memória (I-Format) + Desvio

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

3

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC

(aula passada)

Page 2: Caminho de Dados

Inserindo o Controle

• Identificar os pontos de controle no caminho de dados– Busca da instrução– Operações lógicas e aritméticas– Operações de Memória

• Identificar tipo de controle do sinal– Fluxo de dados através de multiplexadores– Escrita e leitura de dados

• Pensar nos sinais de controle para cada instrução

Page 3: Caminho de Dados

Busca da Instrução

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

3

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC = 0

(=X) Não influencia

Page 4: Caminho de Dados

Controle para Operação Aritmética

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

3

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC = 0op

=0

=1

=1

=0

=0

=1

EscMen = LerMem = 0 pois nem escreve nem lê da memóriaEscReg = 1 pois “Reg a ser escrito” seleciona registrador que vai receber “dado de escrita”

Page 5: Caminho de Dados

Controle para Operação de Carga

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC = 0Add

=1

=1

=0

=0

=1

=0

LerMem = 1 pois lê da memóriaEscReg = 1 pois “Reg a ser escrito” seleciona registrador que vai receber “dado de escrita”

Page 6: Caminho de Dados

Controle para Operação de Armazenamento

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

DvC = 0Add

=1

=0

=X

=1

=0

=X

EscMem = 1 pois escreve da memóriaEscReg = 0 pois não usa o “Reg a ser escrito”

UAL

MUX

Page 7: Caminho de Dados

Controle para Op. de Desvio Condicional

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

DvC = 1Sub

=0

=0

=X

=0

=0

=X

EscMen = LerMem = 0 pois nem escreve nem lê da memóriaEscReg = 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.

(beq)

UAL

MUX

Page 8: Caminho de Dados

Sinal de Controle

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

3

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMen

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC

mDadoEsc

mUAL

mRegDest

UALop

Page 9: Caminho de Dados

Resumo Sinais de Controle

Op 000 010 011 100

add lw sw beq

mRegDest 1 0 X X

mUAL 0 1 1 0

mDadoEsc 1 0 X X

EscReg 1 1 0 0

LerMem 0 1 0 0

EscMen 0 0 1 0

DvC 0 0 0 1

UALop add add add sub

Page 10: Caminho de Dados

Resumo Sinais de Controle

Op 000 010 011 100

add lw sw beq

mRegDest 1 0 X X

mUAL 0 1 1 0

mDadoEsc 1 0 X X

EscReg 1 1 0 0

LerMem 0 1 0 0

EscMen 0 0 1 0

DvC 0 0 0 1

UALop0 0 0 0 0

UALop1 1 1 1 1

UALop2 0 0 0 1

UALop0 = 0UALop1 = 1

Page 11: Caminho de Dados

Implementação da Função de Controle

Op0

Op1

Op2

R-format lw sw beq

mUAL

mDadoEsc

EscMenDvC

LerMen

EscReg

UALOp2

mRegDest

Page 12: Caminho de Dados

Juntando as Partes

Instr [24:22] op

Reg a ser lido # 1

Reg a ser lido #2

Reg a ser escrito

Dado de escrita

Dado lido #1

Dadolido #2

EscReg

3

Endereço

Dado a ser escrito

Dadolido

LerMem

EscMem

Extensãode sinal

UAL

MUX

MUX

Memória de Instruções

Endereço deleitura

Instrução

PC

1 Somador

16 32

MUX

UAL

MUX

DvC

mDadoEsc

mUAL

mRegDest

UALop

ControlePrincipal

mUALmDadoEsc

EscMemDvC

LerMemEscReg

UALOp2

mRegDest

Page 13: Caminho de Dados

Implementação Monociclo

• 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 para armazenar os dados para o banco de

registradores– Duplicação de unidades funcionais