Você está na página 1de 20

Metodologia de Projeto em Nível de

Transferência entre Registradores -


RTL
Nils Alexandre Bergsten
Universidade Estadual de Feira de
Santana
2

Nils Alexandre Bergsten Fevereiro, 2011

Introdução
• Componentes combinacionais
▫ Portas lógicas, multiplexadores, somadores,
registradores etc.
▫ Blocos operacionais
• Componentes sequenciais
▫ Máquinas de estado
▫ Blocos de controle – controlam os blocos
operacionais
3

Nils Alexandre Bergsten Fevereiro, 2011

Introdução
• Combinação dos componentes combinacionais e
sequenciais
▫ Chamado de processador
• Processadores de propósitos gerais
▫ Programáveis
• Processadores de propósitos específicos
▫ Customizados
4

Nils Alexandre Bergsten Fevereiro, 2011

Introdução
• Projetistas digitais concentram-se em projeto de
processadores customizados
• Processador customizado
▫ Circuito digital que implementa um algoritmo de
computador
5

Nils Alexandre Bergsten Fevereiro, 2011

Metodologia
• Processo padrão para projetos de sistemas
digitais
▫ Capturar o comportamento
▫ Converter em circuito
6

Nils Alexandre Bergsten Fevereiro, 2011

Metodologia
• A metodologia do projeto RTL
▫ Passo 1: Obter uma máquina de estados de alto
nível
▫ Passo 2: Criar um bloco operacional
▫ Passo 3: Conectar o bloco operacional ao bloco de
controle
▫ Passo 4: Obter a máquina de estados do bloco de
controle
7

Nils Alexandre Bergsten Fevereiro, 2011

Metodologia
• Passo 1: Obter uma máquina de estados de alto
nível
▫ Descrever o comportamento desejado por uma
máquina de estados
▫ Máquina de estados com estados e transições
▫ As condições para as transições e as ações dos
estados são complexas
8

Nils Alexandre Bergsten Fevereiro, 2011

Metodologia
• Passo 2: Criar um bloco operacional
▫ Baseado na máquina de estados de alto nível
▫ O bloco operacional deve ser capaz de realizar as
operações que envolvem dados
• Passo 3: Conectar o bloco operacional ao bloco
de controle
▫ Conectar também as entradas e saídas booleanas
externas ao bloco de controle
9

Nils Alexandre Bergsten Fevereiro, 2011

Metodologia
• Passo 4: Obter a máquina de estados do bloco de
controle
▫ Converter a máquina de estado de alto nível na
FSM do bloco de controle
▫ Substituir as operações que envolvem dados por
sinais de controle que são ativados ou lidos pelo
bloco de controle
10

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
• Máquina de fornecer refrigerante
▫ Entrada “c” de um bit que se torna 1 por um ciclo
de relógio quando um moeda é detectada
▫ Entrada “a” de oito bits indica o valor da moeda
▫ Entrada “s” de oito bits indica o valor do
refrigerante
▫ Saída “d” de um bit se torna 1 durante um ciclo
quando o total de moedas é maior ou igual ao
valor do refrigerante
▫ Não retorna troco
11

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
12

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
• Passo 1: Obter uma máquina de estados de alto
nível
▫ Entradas: c (1 bit), a (8 bits) e s (8 bits)
▫ Saídas: d (1 bit)
▫ Registradores locais: tot (8 bits)
13

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
14

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
• Passo 2: Criar um bloco operacional
▫ Registrador local para “tot”
▫ Somador para calcular “tot + a”
▫ Comparador conectado a “tot” e “s” para comparar
se tot<s
15

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
16

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
• Passo 3: Conectar o bloco operacional ao bloco
de controle
17

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
• Passo 4: Obter a máquina de estados do bloco de
controle
▫ Mesmos estados e transições da FSM de alto nível
(FSMD)
▫ Condições para as transições e ações dos estados
substituídas por sinais de comunicação com o
bloco operacional
▫ Entradas: c, tot_lt_s (1 bit)
▫ Saídas: d, tot_d, tot_clr (1 bit)
18

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
19

Nils Alexandre Bergsten Fevereiro, 2011

Exemplo
Estado S1 S2 C Tot_lt_ N1 N0 D Tot_ld Tot_c
s lr
Início 0 0 0 0 0 1 0 0 1
Início 0 0 0 1 0 1 0 0 1
Início 0 0 1 0 0 1 0 0 1
Início 0 0 1 1 0 1 0 0 1
Esperar 0 1 0 0 1 1 0 0 0
Esperar 0 1 0 1 0 1 0 0 0
Esperar 0 1 1 0 1 0 0 0 0
Esperar 0 1 1 1 1 0 0 0 0
Somar 1 0 ... ... ... ... ... ... ...
Fornecer 1 1 ... ... ... ... ... ... ...
20

Nils Alexandre Bergsten Fevereiro, 2011

Bibliografia
• VAHID, Frank. Sistemas digitais: Projeto,
otimização e HDLs. Artmed, 2008.