Escolar Documentos
Profissional Documentos
Cultura Documentos
ARQUITETURA GERAL:
- Von Neumann
- Data Flow
- Outros
ARQUITETURA DE INSTRUÇÃO:
- CISC (Complex Instruction Set Computer)
- RISC (Reduced Instruction Set Computer)
SISTEMAS DIGITAIS 3 1
3 Sistemas Digitais Programáveis
3.2 UNIDADE CENTRAL DE PROCESSAMENTO (Central Processing Unit - CPU)
CPU BARRAMENTO
D INSTRUÇÕES D DE
DADOS
CLOCK
D DADOS
v
C AC RS
RI DEC
O M
Ci N
* UNIDADE DATA
T Microinstrução Raux
Raux DE PATH
Variáveis de
controle de CONTROLE
entrada
S PC RE S/s COMP
* de outros SISTEMAS
Para a MEMÓRIA
Legenda:
RI – Registrador de Instrução
DEC – Decodificador
CONT – Controlador
Raux – Registrador Auxiliar
S – Somador
PC – Registrador Program Counter (Contador de Programa)
RE – Registrador de Endereços
AC – Registrador Acumulador
RS – Registrador de Saída
S/s – Somador/subtrator
COMP – Comparador
SISTEMAS DIGITAIS 3 2
3 Sistemas Digitais Programáveis
Nota: Variáveis de Controle de entrada
+
Variáveis de Controle de Saída
BARRAMENTO DE CONTROLE
ENDEREÇOS
R Características:
BARRAMENTOS O - memória NÃO VOLÁTIL para
DADOS M armazenamento de PROGRAMAS.
CONTROLES
ENDEREÇOS
Características:
R - memória VOLÁTIL para
A armazenamento de DADOS.
BARRAMENTOS DADOS M
CONTROLES
SISTEMAS DIGITAIS 3 3
3 Sistemas Digitais Programáveis
3.4 REPRESENTAÇÃO DA ORGANIZAÇÃO DE UMA MEMÓRIA
XXXX YYYY
.
.
.
.
.
.
.
ENDEREÇOS DADOS
INÍCIO
ONDE OCORRE:
LEITURA Memória e unidade de controle (UC)
DA
INSTRUÇÃO
DECODIFICAÇÃO
DA
UC
INSTRUÇÃO
EXECUÇÃO
DA UC e/ou DATA PATH
INSTRUÇÃO
DETERMINAÇÃO
DA PRÓXIMA UC
INSTRUÇÃO A
SER LIDA
SISTEMAS DIGITAIS 3 4
3 Sistemas Digitais Programáveis
3.6 METODOLOGIA PARA PROJETO DE SISTEMAS DIGITAIS PROGRAMÁVEIS
OP CODE ...
Ex.: AC 5
b. Registrador
OP CODE R1 R2
Ex.: R1 R2
c. Direto
OP CODE ENDEREÇO DE
MEMÓRIA
Ex.: AC [4]
d. Indireto
OP CODE R O campo de operando
especifica um registrador,
ou ou um endereço de
memória, que contém o
OP CODE ENDEREÇO DE endereço da posição de
MEMÓRIA memória onde está o valor
do operando.
Ex.: AC [R]
SISTEMAS DIGITAIS 3 5
3 Sistemas Digitais Programáveis
e. Relativo
OP CODE ENDEREÇO
RELATIVO
Ex.: PC PC +3
- Tamanho da Instrução:
a. Instruções de 1 palavra
HLT (HALT)
OP CODE
0000
OUT (Saída)
OP CODE
0001
b. Instruções de 2 palavras
OP CODE
0010 X
ADD (Soma)
OP CODE
0011 X
SISTEMAS DIGITAIS 3 6
3 Sistemas Digitais Programáveis
SUB (Subtract)
OP CODE
0100 X
OP CODE
0101 X
Se AC – X = 0 FLAG = 1;
≠ 0 FLAG = 0
Ex.: CPI X
JZ (Jump if Zero)
OP CODE
0110 W
= 1 ; PC PC + W
Se FLAG
= 0 ; PC PC + 1
Ex.: JZ W
c. Instruções de 3 palavras
Notas:
1 – 1 PALAVRA = 4 BITS;
2 – Quantidade de INSTRUÇÕES do exemplo = 8
SISTEMAS DIGITAIS 3 7
3 Sistemas Digitais Programáveis
3.7 SÍNTESE DO DATA PATH
INÍCIO
NADA
0 1
RESET 1
RE PC 1
LÊ MEMÓRIA 2
RI OP CODE
PC PC + 1 3
SISTEMAS DIGITAIS 3 8
3 Sistemas Digitais Programáveis
b. Decodificação e Execução das Instruções
HTL, OUT, LDI e ADD
N
HLT
S N
OUT
2 S
LDI
N
RS AC S N B
ADD
RE PC S
1
RE PC
LÊ MEMÓRIA
PC PC + 1
LÊ MEMÓRIA
PC PC + 1
AC [M]
RA1 [M]
1
RA2 RA1 + AC
AC RA2
SISTEMAS DIGITAIS 3 9
3 Sistemas Digitais Programáveis
c. Decodificação e Execução das Instruções
SUB e CPI
N
SUB
S N
CPI C
RE PC S
RE PC
LÊ MEMÓRIA
PC PC + 1
LÊ MEMÓRIA
PC PC + 1
RA1 [M]
RA1 [M]
RA2 AC – RA1
AC RA1
AC RA2
ATUALIZA
FLAG
SISTEMAS DIGITAIS 3 10
3 Sistemas Digitais Programáveis
d. Decodificação e Execução das Instruções
JZ e STA
N
JZ
S N
STA
ERRO
0 1
FLAG S
RE PC 4
PC PC + 1
RE PC
LÊ MEMÓRIA 5
1 PC PC + 1
LÊ MEMÓRIA
PC PC + 1
RAL [M] 6
RAL [M]
RE PC 7
PC PC + RAL LÊ MEMÓRIA 8
PC PC + 1
1 RAH [M] 9
RE RAH, RAL 10
RS AC 11
Escreve na
Memória
12
SISTEMAS DIGITAIS 3 11
3 Sistemas Digitais Programáveis
3.8 ARQUITETURA PARA O DATA PATH
A partir do GTE do conjunto de instruções, extraem-se as UNIDADES FUNCIONAIS e os
REGISTRADORES necessários, com a respectiva lógica funcional de CONEXÕES.
4 4
4
4
SEL1 COMPARADOR
SOMADOR/SUBTRATOR
4 Ig
RESET
8 RF 4
LRF
LRA2
REGISTRADOR
ERA2 AUXILIAR 2 FLAG
3-state
LRS
REGISTRADOR
ERS DE SAÍDA
3-state
SISTEMAS DIGITAIS 3 12
3 Sistemas Digitais Programáveis
UNIDADE DE CONTROLE (nível RTL)
BARRAMENTO DE ENDEREÇO
8
EM
MEMÓRIA
L/E
3-state BARRAMENTO DE DADOS
4
4
“0”
8 4
LRAL LRAH
SOMADOR REGISTRADOR REGISTRADOR
ERAL AUXILIAR L ERAH AUXILIAR H
8
3-state 3-state 4
RESET
D
CONTADOR 3-
LPC M
DE state
EPC U 4
PROGRAMA
X
CKC
3-State SEL2
LRI
8 REGISTRADOR
DE INSTRUÇÃO
4
4
8 4
RESET
LRE REGISTRADOR
CLK CONTROLADOR
DE
ENDEREÇO FLAG
BARRAMENTO DE ENDEREÇO
L S S L L E E L E L L E C L L L E E L L E
A E E R R R R R R R P P K R R R R R R / M
C L L A A A A S S F C C C E A A A A I E
1 2 1 2 1 2 L H L H
BARRAMENTO DE CONTROLE
SISTEMAS DIGITAIS 3 13
3 Sistemas Digitais Programáveis
RESUMO DOS RECURSOS NECESSÁRIOS:
SISTEMAS DIGITAIS 3 14
3 Sistemas Digitais Programáveis
3.10 ARQUITETURA PARA O CONTROLADOR
3.10.1 Arquitetura de Contador em Anel
MEMÓRIA
4
LRI REGISTRADOR
DE
INSTRUÇÃO
CONTROLADOR
RESET
CONTADOR EM ANEL
4 (12 ESTADOS)
CLK
D ...
E
C HLT
O
D OUT
I LDI MATRIZ
F ADD DE
FLAG
I CONTROLE
SUB
C
A CPI (COMBINATÓRIA)
D JZ(0)
O JZ(1)
R STA
(ONE HOT)
ERRO
...
LAC SEL1 L/E EM
Nota:
JZ (0) JZ c/ FLAG = 0
JZ (1) JZ c/ FLAG = 1
SISTEMAS DIGITAIS 3 15
3 Sistemas Digitais Programáveis
MATRIZ DE CONTROLE
ESTADOS
1 2 ... 12
OUT 13 14 ... 24
LDI 25 26 ... 36
IN ADD
ST
SUB
RU
ÇÕ CPI
ES JZ(0)
JZ(1) 85 86 96
STA 97 98 108
SAÍDAS DO CONTROLADOR
MICROINSTRUÇÕES
SISTEMAS DIGITAIS 3 16
3 Sistemas Digitais Programáveis
Implementação da MATRIZ DE CONTROLE
TEMPO (CLK)
.
. 000 ... 1
1 0 0 ... 0 010 ... 0 .
OUT= LAC, SEL1, ... , L/E, EM LAC, SEL1, ... , L/E, EM . LAC, SEL1, ... , L/E, EM
1 0 1 1 0 1 1 0 1 .
.
.
.
Temporização:
CLK ...
...
LAC
...
SEL 1º 2º ... 12º
ESTADO ESTADO ESTADO
SISTEMAS DIGITAIS 3 17
3 Sistemas Digitais Programáveis
3.11 ARQUITETURA MICROPROGRAMADA
MEMÓRIA
4
LRI REGISTRADOR
DE INSTRUÇÃO
4
MICROINSTRUÇÃO
QUANTIDADE DE ESTADOS
C C
O R
O
N E
N
T G
FLAG V K N W Z SAÍDAS DO
A I MICRO-
E CONTROLADOR
D S INSTRUÇÕES
R
O T
S ... ...
R R
O
A
R
CLK INIBE D
O
R
CLEAR CLK
CONTADOR
CLK
L L CLEAR
INIBE
CLK CLEAR
COMPARADOR LOAD
M.E.F. Busca
L/E de
EM Instruções
TÉRMINO
na
Memória
SISTEMAS DIGITAIS 3 18