Você está na página 1de 26

Aula

Introdução a Sistemas Digitais

Projeto RTL: parte operativa (PO) e parte de


controle (PC).
Projeto da parte operativa (PO) :
multiplexadores, barramento, paralelismo, analise
de área x desempenho.
Projeto da parte controle (PC) : máquina de
estados, microprogramação, analise de área x
desempenho.
Exemplos: fluxogramas ASM vistos
anteriormente.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Parte de Controle e Parte Operativa 3

Unidade de Controle: Unidade de Caminhos de Dados:


-Modelada por FSM -Modelada por transferência entre
-Define uma sequencia de registradores (RT)
ações conforme o relógio -Define transformações sincronas e
controlando o datapath e assincronas de dados ao longo do
blocos externos. bloco.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Modelo Parte Operativa – Parte de Controle 3

status

E/S Operadores comandos E/S


Máquina de
Registradores
Estados
Conexões
PO PC

relógio

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Considerações 3

• A partir do fluxograma pode-se obter um


bloco de controle onde cada bloco ASM do
fluxograma corresponderá a um estado no
controle. (desperdício x tecnicas de
otimização)
• Fluxograma possui operações factiveis do
ponto de vista de sistemas digitais.
• Operações que podem ser realizadas em um
ciclo de relógio.
• Decisão dos recursos disponíveis na parte
operativa, interdependencia com o projeto da
parte de controle.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Diferenças entre Linguagem X Hardware 3

Custo das conexões

• Durante a simulação (Matlab, C, etc…), o custo de uma ligação


entre uma variável e outra é gratuíta. Isto não reflete a realidade
dos circuitos.

• A temporização ou o atraso dos componentes envolvidos no projeto


está escondida quando se usa linguagem de alto nível.

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Projeto do Bloco Operacional (PO) 3

Conjunto de Registradores

Rede de Interconexões

Conjunto de Operadores

Rede de Interconexões

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Conexões com Multiplexadores 3

• m registradores de n-bits cada


• Cada registrador tem um mux de m:1 de n-bits por entrada
• Se Cm é o custo de 1 mux 2:1

Custo total = m * Cm * (n-1)

C0 Cm-1
C1

enR1 enRm-1
enR0
enR0 R0 R1 Rm-1
clk clk
clk

n*m bits

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Conexões com Multiplexadores 3

Transferências simultaneas = + paralelismo

R0 ← R1 ao mesmo tempo que R2 ← Rm-1

C0 C2 Cm-1
C1

enR1 enR2 enRm-1


enR0
enR0 R0 R1 R2 Rm-1
clk clk clk
clk

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Conexões com Barramento 3

• m registradores de n-bits cada


• Se Cb é o custo do buffer de 3 estados

Custo total = m * Cb * n ou 2 * m * Cb * n

ENWm-1
ENW0 ENW1

R0 R1 Rm-1
clk clk clk

ENR0 ENR1 ENRm-1

n bits

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Conexões com Barramento 3

Serialização das transferências

Exemplo: R0 ← R1 ciclo de clock 1

0 ENW2 ENWm-1
ENW0 ENW1

R0 R1 R2 Rm-1
clk clk clk clk
0 ENR2 ENRm-1
ENR0 ENR1

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Conexões com Barramento 3

Serialização das transferências

Exemplo: R2 ← Rm-1 ciclo de clock 2

0
ENW2 ENWm-1
ENW0 ENW1

R0 R1 R2 Rm-1
clk clk clk clk

ENR2 ENRm-1
0
ENR0 ENR1

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Comparação Mux X Barramento 3

Custo mux para inserção de registradores

(m+1) * Cm * (n-1+m) : quadrádico em termos de m

Custo barramento para inserção de registradores

(m+1)*Cb*n

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Projeto da PO com MUX 3

• Determinar os recursos a serem disponiveis na PO para


determinar o paralelismo das operações.

1. Montagem da tabela de transferência: tabela onde cada variável


parece em uma coluna e as linhas são ordenadas pelo estado.
Todas as operações que mudam a variavel naquele estado são
registradas.
2. Alocação de variáveis em registradores. Determinar quantas
variaveis irão ser alocadas em registradores tentado minimizar o
numero de registradores diferentes. (register alocation and life-time
analysis)
3. Escolha dos operadores necessários

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Exemplo: Multiplicador por somas Aula
sucessivas 3

Idle

S1
0
start
0
1 AR

Início P← 0
1
AR ← A 0
BR ← B BR
ACC ← 0
R ← ACC 1
P← 1
ACC ← ACC + AR
BR ← BR - 1

done

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
PO com operadores e mux p/ multiplicação 3

A
Reset

AR 1 ACC BR

R
=0
=0

+/-
Somador/Subtrator

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
PO com operadores e mux p/ multiplicação 3

Aumento de Paralelismo
B

A
Reset

AR ACC 1 BR

=0 Somador Subtrator =0

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
PO com Barramento p/ multiplicação 3

E/S

cargaR1

AR BR ACC 1
R1

R2

cargaR2
Função +/-

1 transferência por ciclo

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
PO com Barramento p/ multiplicação 3

E/S

cargaR1

AR BR ACC 1
R1

R2

cargaR2
Função +/-
E/S

2 transferências por ciclo

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Projeto Bloco de Controle (PC) 3

Estado Atual
Função de
Saída

Função Status
Próximo
Entrada Externas Parte Operativa
Estado

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Temporização PC-PO 3

Relógio

Estado Atual

Função Saída

Parte Operativa

Função Prox.
Estado

f= 1
tpFF + TpFS + tpPO + tpFPE + tsetFF

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Projeto Bloco de Controle (PC) 3

Estado Atual
Função de
Saída

Status
Função
Próximo
Entrada Externas Parte Operativa
Estado

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Temporização PC-PO 3

Relógio

Estado Atual

Função Saída

Parte Operativa

Status

Função Prox.
Estado

f= 1
tpFF + TpFS + tpPO + tpFPE + tsetFF
Maior numero de estados na PC

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Controle de Carga do Registrador 3

relógio
R1
Condição

condição

R1

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Exemplo: Extrator de Raiz Quadrada 3
Numeros inteiros e positivos
Ler X
-- inicialização
R=1; d=2; s=4, t=1;
Enquanto (t==1) {
r=r+1;
d=d+2; clk
reset ready
s=s+d+1; start
Extrator Raiz Quadrada
t=ac(s,x); x r
}
devolve(r);
}
ac(a,b)
semsinal a, b;
{
Se (a<=b) retorna (1); Senão retorna (0);
}

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Exemplo: Extrator de Raiz Quadrada 3

Idle S1

0 0
start t ← S ≤ Raiz

1
1
Raiz ← dado

R=1; d=2;
s=4, t=1
r ← r+1;
d ← d+2;
s ← s+d+1;

done

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt


Aula
Exemplo: Extrator de Raiz Quadrada 3
Exercicio

• Projetar:
– Projeto da Parte Operativa (baseada em multiplexadores)
– Parte de Controle (FSM)

Disciplina: Sistemas Digitais – Profa. Dra. Fernanda Gusmão de Lima Kastensmidt

Você também pode gostar