A maior rede de estudos do Brasil

Grátis
5 pág.
sap 1- parte1

Pré-visualização | Página 1 de 2

1
Microarquitetura SAP-1
(Parte 1)
Professor: Alexandre Scaico
alexandre.scaico@gmail.com
Faculdade de Ciências Sociais Aplicadas
Curso de Sistemas de Informações
Organização e Arquitetura de Computadores
2
SAP-1
„ SAP = Simple as Possible (Simples quanto 
possível)
„ Arquitetura simples que contempla as idéias 
principais sobre o funcionamento de um sistema 
digital (microarquitetura)
„ O SAP é uma simplificação do 8080/8085
„ O SAP é apresentado incrementalmente em três 
etapas → SAP-1, SAP-2 e SAP-3
„ Vamos estudar o SAP-1
3Arquitetura do SAP-1 4
Arquitetura do SAP-1
„ Contador de Programa (PC – Program Counter)
„ Faz parte da unidade de controle
„ Armazena o endereço da próxima instrução a ser 
buscada na memória
„ Seu valor é incrementado após indicar a posição da 
memória onde a instrução está armazeanada
„ No caso do SAP-1:
„ PC inicia apontando para o endereço 0000
„O incremento do PC é de uma unidade
5
Arquitetura do SAP-1
„ Entrada e REM (Registrador de Endereçamento da 
Memória)
„ A entrada não está mostrada na figura da arquitetura, 
mas sua função é de programar a RAM
„ O REM pode ser visto como parte da memória
„ O REM recebe o endereço contido no PC e endereça a 
memória (o endereçamento é de 4 bits)
6
Arquitetura do SAP-1
„ RAM
„ É uma RAM 16x8
„ Sua programação é feita através de chaves de entrada 
presentes no módulo de Entrada
„ O endereçamento é de 4 bits
„ Em uma palavra da memória (8 bits):
„Os 4 bits superiores contém o código da instrução a ser 
executada
„Os 4 bits inferiores contém o endereço do dado necessário a 
execução da instrução (se houver)
2
7
Arquitetura do SAP-1
„ Barramento W
„ Barramento único do sistema
„ É de 8 bits
„ Utilizado tanto para endereçamento quanto para dados
„ Para endereço usa apenas as 4 linhas mais significativas
„ Para dados utiliza todas as linhas
8
Arquitetura do SAP-1
„ Registrador de Instruções (RI)
„ Faz parte da unidade de controle
„ Armazena a palavra lida da memória a partir do 
endereço apontado pelo PC
„ Os bits que indicam o código da operação são enviados 
ao bloco controlador-sequencializador para 
interpretação
„ Os bits que indicam endereço de dados (se houver) são 
enviados de volta ao barramento no momento certo 
para endereçar a memória
9
Arquitetura do SAP-1
„ Controlador-Sequencializador
„ Gera o sinal CLK (relógio), o sinal CLR (clear) no 
início da execução de um programa, e gera as palavras
de controle (CON) que determinam o que acontece em 
cada transição positiva do relógio
„ A palavra de controle de 12 bits é gerada pelo 
controlador-sequencializador a partir do código da 
operação 
__ __ _ _ _ __ __ 
„ CON = Cp Ep Lm CE Li Ei La Ea Su Eu Lb Lo
10
Arquitetura do SAP-1
„ Acumulador (Acc)
„ Registrador de memória intermediária
„ Armazena o resultado das operações efetuadas pelo 
somador-subtrator
„ Possui duas saídas
„ Uma ligada direto ao somador-controlador
„ Uma controlada por um sinal de controle, ligada ao 
barramento
11
Arquitetura do SAP-1
„ Somador-Subtrator
„ É a ULA desse sistema
„ Realiza apenas duas operações com os valores dos 
registradores A e B
„ Soma (A + B)
„ Subtração em complemento de dois (A –B )
„ É um circuito assíncrono
„ Sua saída muda no instante em que as entradas mudam, mas 
a sua saída pro barramento depende de um sinal de controle
12
Arquitetura do SAP-1
„ Registrador B
„ Registrador de memória intermediária, assim como o 
registrador A
„ Registrador de saída
„ É a porta de saída do sistema
„ É um registrador igual ao registrador B, apenas com 
sua função definida como saída do sistema
„ Indicador visual em binário
„ Conjunto de 8 leds que mostram o conteúdo do 
registrador de saída
3
13
Arquitetura do SAP-1
„ Resumindo
„ Unidade de controle → contador de programa (PC), 
registrador de instruções (RI) e controlador-
sequencializador
„ Produzem a palavra de controle, o clock e o clear
„ ULA → somador-subtrator, registrado A e registrador 
B
„ Memória→ Registrador de endereçamento da memória 
(REM) e a memória RAM 16x8
„ E/S → chaves de programação de entrada, registrador 
de saída e indicador visual em binário
14Arquitetura do SAP-1
15
Sinais de Controle
„ CP→ incremento do PC
„ EP→ habilita a saída do PC ao barramento
„ LM → sinal nível baixo ativo que habilita a entrada 
de dados no REM
„ CE→ habilita a saída da RAM ao barramento
„ LI→ habilita a entrada do RI
„ EI→ habilita a saída do RI
„ LA→ Habilita a entrada do registrador A
16
Sinais de Controle
„ EA → Habilita a saída do registrador A ao 
barramento
„ SU → Define o tipo de operação. SU=0 indica 
soma, e SU=1 indica subtração 
„ EU→ Habilita a saída do somador ao barramento
„ LB→ Habilita a entrada do registrador B
„ LO→Habilita a entrada do registrador de saída
17
Conjunto de Instruções
„ LDA
„ Instrução que carrega uma palavra de dados da RAM 
no acumulador
„ A instrução é composta pelo código da instrução 
seguido pelo endereço da palavra a ser lida
„ LDA 8H
„ A programação utilizando mnemônicos utiliza 
endereçamento hexadecimal
„ Na verdade o que temos são dois conjuntos de 4 bits 
binários indicando a operação e a localização da 
palavra de dados na memória 18
Conjunto de Instruções
„ ADD
„ Instrução que soma um valor da memória ao valor do 
acumulador, armazenando o resultado no acumulador
„ O valor lido da memória é colocado no registrador B, 
o somador efetua a operação e o resultado é 
armazenado no acumulador
„ Exemplo: ADD 9H, (A=00000010 e R9 = 00000011)
„ B = 00000011
„ SUM = 00000101
„ A = 00000101
4
19
Conjunto de Instruções
„ SUB
„ Instrução que subtrai um valor da memória do valor do
acumulador, armazenando o resultado no acumulador
„ Sua execução é similar ao ADD
„ OUT
„ Instrução que transfere o conteúdo do Acumulador 
para o registrador de saída
„ Nessa instrução os 4 bits menos significativos da 
palavra armazenada na memória não possuem 
significado, dado que não há acesso à memória
20
Conjunto de Instruções
„ HLT
„ Instrução que finaliza a excução do processamento
„ Resumo da instruções do SAP-1
21
Conjunto de Instruções
„ Instruções que não referenciam a memória
„ Não envolvem dados armazenados na memória. Ex. OUT, 
HLT.
„ Instruções que referenciam a memória
„ Utilizam dados armazenados na memória. Ex. LDA, ADD e 
SUB 
„ Instrução = I7I6I5 I4 I3I2I1I0
Código da operação
Código do endereço do operando na memória
22
Exemplo de Programa
„ O que faz cada instrução e quais os dados nos 
registradores ao fim da execução do programa?
23
Exemplo de Programa
„ Execução do programa
„ Carrega 9H (valor 01H) no Acc → 01H
„ Soma Acc com o valor em AH (valor 02H) → 03H
„ Soma Acc com o valor em BH (valor 03H) → 06H
„ Subtrai o valor em CH (04H) do Acc → 02H
„ Envia valor do Acc para o registrador de saída
„ Valores do registradores ao fim do programa
„ Acc = 0000 00010 (02H) PC = 06H
„ B = 0000 0110 (04H) RI = Cod HLT
„ Out = 0000 00010 (02H) REM = 5H
24
Programação do SAP-1
„ Cada mnemônico possui um código binário 
correspondente, conforme a tabela abaixo
5
25
Programação do SAP-1 - Exemplos
26
Programação do SAP-1 - Exemplos
27
Programação do SAP-1 - Exemplos
„ Fazer um programa que resolva o seguinte 
problema:
„ 16 + 20 +24 - 32
28
Programação do SAP-1 - Exemplos
„ Fazer um programa que resolva o seguinte 
problema:
„ 16 + 20 +24 - 32
29
Programação do SAP-1 - Exemplos
„ Fazer um programa que resolva o seguinte 
problema:
„ 16 + 20 +24 - 32
30
Programação do SAP-1
„ As instruções devem estar armazenadas na 
memória antes dos dados
„ Essa restrição é devido a forma