caminho de dados

Post on 15-Jan-2016

18 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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

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)

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

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

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”

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”

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

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

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

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

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

Implementação da Função de Controle

Op0

Op1

Op2

R-format lw sw beq

mUAL

mDadoEsc

EscMenDvC

LerMen

EscReg

UALOp2

mRegDest

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

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

top related