Computador Didático - Neander
Computador Didático - Neander
Computador Didático - Neander
O Computador Neander
eander - Computador Hipottico Didtico
[Weber 2001] Fundamentos de Arquitetura de Computadores. Raul Weber - Ed. Sagra. Site - ftp://ftp.inf.ufrgs.br/pub/inf107/
O Computador Neander
05/09/2009
O Computador Neander
O Computador Neander
eander - Instruction Set
05/09/2009
O Computador Neander
7 cdigo da oper.
4 3 dont care
endereo direto
O Computador Neander
endereo direto
05/09/2009
O Computador Neander
Busca instruo
Decodifica instruo
O Computador Neander
Arquitetura/Organizao:
Novo elemento necessrio: o registrador de instruo (RI) MEM(PC) corresponde a um acesso memria, usando o contedo do PC como fonte do endereo
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: NOP RT: Passos no nvel RT:
Busca: Execuo:
NOP
Dont care
As transferncias indicam quais caminhos de dados devem existir, mas no indicam os caminhos fsicos reais entre os elementos (registradores e ULA)
O Computador Neander
Arquitetura/Organizao:
Simblico: STA end RT: MEM(end) AC Passos no nvel RT:
Busca: Execuo:
STA end
Dont care
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: LDA end RT: AC MEM(end) Passos no nvel RT:
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC PC + 1
LDA end
Dont care
AC MEM(end); atualiza N e Z
O Computador Neander
Arquitetura/Organizao:
Instruo ADD (soma)
Simblico: ADD end RT: AC MEM(end) + AC Passos no nvel RT:
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC PC + 1
4 3
ADD end
Dont care
AC AC + MEM(end); atualiza N e Z
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: OR end RT: AC MEM(end) OR AC Passos no nvel RT:
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC PC + 1
OR end
Dont care
AC AC OR MEM(end); atualiza N e Z
O Computador Neander
Arquitetura/Organizao:
Simblico: AND end RT: AC MEM(end) AND AC Passos no nvel RT:
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC PC + 1
AND end
Dont care
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: NOT RT: AC NOT AC Passos no nvel RT:
Busca: Execuo: RI MEM(PC) PC PC + 1
NOT
Dont care
AC NOT(AC); atualiza N e Z
O Computador Neander
Arquitetura/Organizao:
Simblico: JMP end RT: PC end Passos no nvel RT:
Busca: Execuo:
JMP end
Dont care
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: JN end RT: IF N = 1 THEN PC end Passos no nvel RT: Se N=1 (desvio ocorre)
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC end
JN end
Dont care
O Computador Neander
Arquitetura/Organizao:
Simblico: JZ end RT: IF Z = 1 THEN PC end Passos no nvel RT: Se Z=1 (desvio ocorre)
Busca: Execuo: RI MEM(PC) PC PC + 1 end MEM(PC) PC end
JZ end
Dont care
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: HLT RT: -Passos no nvel RT:
Busca: Execuo:
HLT
Dont care
O Computador Neander
R E M
read
MEM
write
RDM
10
05/09/2009
O Computador Neander
Arquitetura/Organizao
Operaes com a memria
descreve uma leitura da memria, que realizada pelos seguintes passos:
x MEM(y)
1. REM y 2. Read 3. x RDM
copia y (que um endereo) para o REM ativao de uma operao de leitura da memria copia o contedo de RDM para x
O Computador Neander
Arquitetura/Organizao
Operaes com a memria
descreve uma escrita da memria, que realizada pelos seguintes passos:
MEM(y) x
1. REM y 2. RDM x 3. write
copia y (que um endereo) para o REM copia x (que um dado) para o RDM ativao de uma operao de escrita na memria
11
05/09/2009
O Computador Neander
Arquitetura/Organizao
Operaes com a memria
Observaes (1)
Aps a leitura do PC, seu contedo deve ser incrementado, para apontar para a prxima posio O incremento do PC pode ser feito a qualquer instante aps a transferncia do PC para o REM O incremento do PC pode ser feito em paralelo com outras operaes
O Computador Neander
Arquitetura/Organizao
Operaes com a memria
Observaes (2)
Um desvio condicional que no se realiza no necessita ler o valor do endereo de desvio Ou seja, basta incrementar o PC
12
05/09/2009
O Computador Neander
Arquitetura/Organizao
O Computador Neander
Arquitetura/Organizao:
Simblico: NOP RT: Passos no nvel RT:
Busca:
NOP
Dont care
Execuo:
13
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: STA end RT: MEM(end) AC Passos no nvel RT:
Busca:
STA end
Dont care
Execuo:
O Computador Neander
Arquitetura/Organizao:
Simblico: LDA end RT: AC MEM(end) Passos no nvel RT:
Busca:
LDA end
Dont care
Execuo:
REM PC Read; PC PC + 1 RI RDM REM PC Read; PC PC + 1 REM RDM Read AC RDM; atualiza N e Z
14
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Instruo ADD (soma)
Simblico: ADD end RT: AC MEM(end) + AC Passos no nvel RT:
Busca:
4 3
ADD end
Dont care
Execuo:
REM PC Read; PC PC + 1 RI RDM REM PC Read; PC PC + 1 REM RDM Read AC AC + RDM; atualiza N e Z
O Computador Neander
Arquitetura/Organizao:
Simblico: OR end RT: AC MEM(end) OR AC Passos no nvel RT:
Busca:
OR end
Dont care
Execuo:
REM PC Read; PC PC + 1 RI RDM REM PC Read; PC PC + 1 REM RDM Read AC AC OR RDM; atualiza N e Z
15
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: AND end RT: AC MEM(end) AND AC Passos no nvel RT:
Busca:
AND end
Dont care
Execuo:
REM PC Read; PC PC + 1 RI RDM REM PC Read; PC PC + 1 REM RDM Read AC AC AND RDM; atualiza N e Z
O Computador Neander
Arquitetura/Organizao:
Simblico: NOT RT: AC NOT AC Passos no nvel RT:
Busca:
NOT
Dont care
Execuo:
16
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: JMP end RT: PC end Passos no nvel RT:
Busca:
JMP end
Dont care
Execuo:
O Computador Neander
Arquitetura/Organizao:
Simblico: JN end RT: IF N = 1 THEN PC end Passos no nvel RT: Se N=1 (desvio ocorre)
Busca: REM PC Read; PC PC + 1 RI RDM REM PC Read PC RDM
JN end
Dont care
Execuo:
Execuo:
17
05/09/2009
O Computador Neander
Arquitetura/Organizao:
Simblico: JZ end RT: IF Z = 1 THEN PC end Passos no nvel RT: Se Z=1 (desvio ocorre)
Busca: REM PC Read; PC PC + 1 RI RDM REM PC Read PC RDM
JZ end
Dont care
Execuo:
Execuo:
O Computador Neander
Arquitetura/Organizao:
Simblico: HLT RT: -Passos no nvel RT:
Busca:
HLT
Dont care
Execuo:
18
05/09/2009
O Computador Neander
eander - Parte II: Arquitetura Interna
O Computador Neander
19
05/09/2009
O Computador Neander
Organizao: registradores
AC: um registrador de 8 bits PC: um registrador de 8 bits (registrador-contador) RI: um registrador de 4 bits (ou 8) RDM: um registrador de 8 bits (largura do dado) REM: um registrador de 8 bits (largura do endereo) N: um flip-flop para o cdigo de condio N Z: um flip-flop para o cdigo de condio Z Uma memria de 256 posies (endereos) x 8 bits
O Computador Neander
MEM
write
cargaRDM
Associados Memria: - RDM (dados) - REM (endereos) - sinal de escrita (write) - sinal de leitura (read)
cargaREM
RDM
20
05/09/2009
O Computador Neander
X
selUAL
UAL
N Z
cargaNZ
O Computador Neander
opcode
DECOD.
cargaRI
dont care
N Z
cargaNZ
21
05/09/2009
O Computador Neander
Operaes na UAL
R E M
read
MEM
write
RDM
AC
X
selUAL
UAL
N Z
cargaNZ
AC AC + RDM; atualiza e Z AC AC OR RDM; atualiza e Z AC AC A D RDM; atualiza e Z AC OT(AC); atualiza e Z Dvida: AC RDM; atualiza
e Z (via UAL)
O Computador Neander
Situao at aqui
R E M
read
MEM
write
RDM
AC
Sinais de Controle
X
selUAL
opcode
DECOD.
dont care
UAL
N Z
cargaNZ
Unidade de Controle
RI RDM RDM AC Write Read AC RDM; atualiza e Z AC AC + RDM; atualiza e Z AC AC OR RDM; at. e Z AC AC A D RDM; at. e Z AC OT(AC); atualiza e Z sinais de controle PC RDM PC PC + 1 REM PC REM RDM
cargaRI
22
05/09/2009
O Computador Neander
Acrescentado Escrita do AC
R E M
read
MEM
write
RDM
AC
Sinais de Controle
X
selUAL
opcode
DECOD.
dont care
UAL
N Z
cargaNZ
Unidade de Controle
RI RDM RDM AC Write Read AC RDM; atualiza e Z AC AC + RDM; atualiza e Z AC AC OR RDM; at. e Z AC AC A D RDM; at. e Z AC OT(AC); atualiza e Z sinais de controle PC RDM PC PC + 1 REM PC REM RDM
cargaRI
O Computador Neander
23
05/09/2009
O Computador Neander
MEM
write
cargaRDM
RDM
cargaAC
AC
Sinais de Controle
X
selUAL
opcode
DECOD.
dont care
UAL
N Z
cargaNZ
Unidade de Controle
RI RDM RDM AC Write Read AC RDM; atualiza e Z AC AC + RDM; atualiza e Z AC AC OR RDM; at. e Z AC AC A D RDM; at. e Z AC OT(AC); atualiza e Z sinais de controle PC RDM PC PC + 1 REM PC REM RDM
cargaRI
O Computador Neander
24
05/09/2009
O Computador Neander
Organizao final
sel
PC M U X
cargaPC incrementaPC cargaAC cargaREM
R E M
read
MEM
write
cargaRDM
RDM
AC
X
selUAL
opcode
DECOD.
cargaRI
dont care
UAL
N Z
cargaNZ
O Computador Neander
25
05/09/2009
26
05/09/2009
contador
t0 t1 t2 t3 t4 t5 t6 t7
27
05/09/2009
28