COMPUTADOR 2 - Instituto de Matemática e Estatística ...adao/C8051_PARTE01.pdf · Estrutura...
Transcript of COMPUTADOR 2 - Instituto de Matemática e Estatística ...adao/C8051_PARTE01.pdf · Estrutura...
2
Modelo Barramento de Sistema É uma evolução do Modelo de Von Newman. Os dispositivos
(processador, memória e dispositivos de E/S) são interligados
por barramentos.
4
UNIDADE CENTRAL DE PROCESSAMENTO
São funções da UCP, executar as instruções e controlar as
operações no computador.
Um programa, para ser executado pelo processador, deve ser
constituído de uma série de instruções de máquina armazenadas em
células sucessivas da MP.
5
UNIDADE CENTRAL DE PROCESSAMENTO
O ciclo de instrução da CPU consiste em:
Este ciclo de instrução se repete indefinidamente até que o sistema seja
desligado, ou ocorra algum tipo de erro, ou seja, encontrada uma instrução
de parada
6
Barramentos Barramento de Endereços
– Transporta os bits de endereços das posições da memória que
serão lidos ou escritos. É unidirecional
Barramento de Dados
•A informação dessa posição de memória, que está sendo lida da
memória ou será escrita na memória transita pelo barramento de
dados, que é bidirecional.
unidirecional
bidirecional
7
Barramentos Barramento de Controle
– Indica qual a operação que vai ser realizada:
• leitura ou escrita, na maior parte dos casos
– Possui também sinais para
•A arbitragem do barramento a ser utilizado (dados, endereços ou controle)
•Para determinar quem vai utilizar o barramento naquele momento (a UCP ou a
unidade de entrada/saída).
Memória RAM
– A unidade de memória mostra dispositivos RAM e ROM.
– A RAM (random acess memory) é utilizada para armazenar programas
que serão executados. É também usada como armazenamento para
resultados intermediarios ou finais das operações realizadas durante a
execução de um programa.
Memória ROM
– A ROM (ready only memory) armazena instruções e dados que não
mudam e não devem ser perdidos quando o sistema for desligado. Por
exemplo, armazena o programa de carga inicial (BIOS) que o
microcomputador executa ao ser ligado.
– Program counter (PC) ou Contador de Programa:
• Armazena o endereço da próxima instrução que será executada.
Registradores da UCP
PC = 0000h
Registradores da UCP – Registrador de instrução (IR)
• Armazenamento do código da instrução que será executada
IR = 02h
Registradores da UCP – Data pointer - ponteiro de dados, DPTR
• Armazenamento de endereços de dados a serem lidos da memória
DPTR = 0001
Registradores da UCP – Acumulador ou Registrador A (ou Acc)
• Armazena um operando de qualquer instrução lógica ou matemática, bem
como o resultado da referida operação.
– Demais Registradores
• Executam muitas funções de armazenamento e contagem.
PALAVRA – É um grupo de bits. Exemplo de palavra de 16 bits: 10110010 11011111
– Indica o tamanho do barramento de dados (que transporta dados entre a
CPU/memória e entre CPU/dispositivos de E/S).
– Exemplo: em um computador de 16 bits (2 bytes), as instruções e dados
são armazenadas na memória como unidades de 16 bits e são processadas
pela CPU em unidades de 16 bits.
– Quanto maior o tamanho da PALAVRA mais veloz é o computador (pode
executar programas numa taxa mais elevada).
Uma palavra pode ser uma instrução ou um dado.
Dado
– São, por exemplo, infomações numéricas ou caracteres que devem
ser processados por um programa que a CPU está executando.
• +8610 corresponde a 010101102
• O código ASCII para o caracter “V” corresponde a 8 bits como 010101102
Instrução
– São formadas por duas unidades básicas de informação:
• opcode ( operação a ser executada)
• operando ou dado da instrução.
PALAVRA
INSTRUÇÃO INSTRUÇÃO DE 01 BYTE
• 5 bits de opcode e 3 bits de endereço
• Opcode: a primeira parte da palavra (bits 7 a 3) que pode ser por
exemplo adição, subtração ou transferência de dados.
• Operando: a segunda parte da palavra (bits 2 a 0) que indica a
localização onde o operando esta armazenado .
INSTRUÇÃO INSTRUÇÃO DE 1 BYTE
– “MOVA para o acumulador os dados do registrador 3”
11101011
opcode endereço do operando
– Opcode (11101)
• representa mover um byte de dados de um registrador para o registrador
A (acumulador).
– Os últimos três bits (011)
• especificam que o byte de dados que deve ser transferido está no
registrador 3, pois 011 em binário representa o 3 em decimal
INSTRUÇÃO DE 1 BYTE
– CLR A , ou seja, “Limpe o acumulador (A)”
– Neste caso, todos os bits representam o opcode
INSTRUÇÃO INSTRUÇÃO DE 2 BYTES
– 1o BYTE
• Contém o opcode.
– 2o BYTE
• especifica os dados que serão utilizados na instrução usando os modos
de endereçamento direto ou endereçamento imediato.
23
FUNÇÃO DE CONTROLE DA UCP
•RELÓGIO: •Um ciclo de relógio ou de máquina (gerado por um cristal de
quartzo) é o intervalo de tempo entre o início de um pulso e o início do
seguinte.
•Cada operação elementar de uma instrução (busca da instrução, por
exemplo) realiza-se em um passo no ciclo de instrução (busca da
instrução de uma instrução de SOMA por exemplo) e, por essa razão,
costuma-se dividir o ciclo em subciclos defasados no tempo, de modo
que cada um aciona um passo diferente da instrução.
FUNÇÃO DE CONTROLE DA UCP
•UNIDADE DE CONTROLE: •1) Tem como função executar a instrução armazenada no RI através de sinais
de controle que emite em instantes de tempo programados (subciclos). Esses
sinais de controle são enviados aos diversos componentes do sistema, sejam
internos da CPU (como a ULA) ou externos (como a memória ou E/S)
•2) Os sinais de controle emitidos ocorrem em vários instantes durante o
período de realização de um ciclo de instrução 3) que são cadenciados pelo
gerador de sinais conhecido como relógio
24
1
3
3 1 2
FUNÇÃO DE CONTROLE DA UCP
• DECODIFICADOR DE INSTRUÇÃO
• 1) Dispositivo utilizado para identificar as operações a serem realizadas
(operações que estão correlacionadas à instrução em execução) 2) acionando
uma entrada específica da UC, 3) que por sua vez saberá que sinais devem ser
emitidos.
• Cada instrução é uma ordem para que a CPU realize uma operação. É necessário
que cada instrução possua uma identificação própria e única. A unidade de
controle está, por sua vez, preparada para sinalizar adequadamente aos diversos
dispositivos da CPU, conforme ela tenha identificado a instrução a ser executada.
25 1 2
3
0101
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15