circuitos integrados - IME-USP

Propaganda
MICROCOMPUTADORES
(Organização Básica II)
Professor Adão de Melo Neto
Organização Básica II

Microprocessador
– 0 microprocessador tipicamente é um único CI (circuito integrado)
que contém todos os circuitos das unidades de controle e lógica e
aritmética, em outras palavras, a UCP.
– É comum chamar o microprocessador de CPU
Organização Básica II

Unidade de Memória
– A unidade de memória mostra dispositivos RAM e ROM.
– A RAM (random acess memory) é utilizada para armazenar programas e
dados que serão frequentemente alterados durante a operação. É também
usada como armazenamento para resultados intermediarios ou finais das
operações realizadas durante a execução de um programa.
Organização Básica II

Unidade de Memória
– 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.
Organização Básica II

Unidade de Entrada/Saída
– Contém os circuitos de interface necessários para permitir
que os periféricos se comuniquem adequadamente com o restante
do computador.
Organização Básica II

Microprocessador (ou UCP)
– a seção de controle e temporização
– a seção de registradores e
– a ULA
Organização Básica II

Microprocessador ou UCP (Seção de controle e temporização)
–
A principal função é buscar e decodificar (interpretar) códigos de instruções da
memória de programa e
–
então gerar os sinais de controle necessários requisitados pelas outras secões da
CPU de modo a realizar a execução das instruções.
Organização Básica II

Microprocessador ou UCP (Seção de controle e temporização)
– Ela também gera os sinais de temporização e de controle (por exemplo:
R/W, clock) que são utilizadas pela RAM e ROM externas e pelos
dispositivos de E/S.
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Contém vários registradores (internos a CPU), e cada um deles
realiza uma função especial.
– Program counter (PC):
• Armazena os endereços dos códigos das instrucões a medida que são
buscados da memória.
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Contém vários registradores (internos a CPU), e cada um deles
realiza uma função especial.
– Program counter (PC):
• Armazena os endereços dos códigos das instrucões a medida que são
buscados da memória.
PC = 0000
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Registrador de instrução (IR)
• Armazenamento de códigos de instrução a medida que vão sendo
decodificados
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Registrador de instrução (IR)
• Armazenamento de códigos de instrução a medida que vão sendo
decodificados
IR = 02
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Contém vários registradores (internos a CPU), e cada um deles
realiza uma função especial.
– Data pointer - ponteiro de dados, DPTR
• Armazenamento de endereços de dados a serem lidos da memória
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Contém vários registradores (internos a CPU), e cada um deles
realiza uma função especial.
– Data pointer - ponteiro de dados, DPTR
• Armazenamento de endereços de dados a serem lidos da memória
DPTR = 0001
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– 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.
Organização Básica II

Microprocessador ou UCP (Seção de registradores)
– Registradores R0 a R7
• Muitas funções de armazenamento e contagem.
Organização Básica II

Microprocessador ou UCP (ULA)
– Realiza uma diversidade de operações lógicas e a aritméticas sobre
os dados.
– Estas operações sempre incluem adição, subtração, AND, OR, XOR.
deslocamento, incremento e decremento.
Organização Básica II

Microprocessador ou UCP (ULA)
– As CPUs mais avançadas possuem ULAs que podem multiplicar e
dividir.
– As operações que uma ULA deve realizar estão sob o controle da
seção de temporização e controle, que, naturalmente, faz o que é
informado pelos códigos de instrução que ela lê da memória.
Organização Básica II

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).
Organização Básica

PALAVRA (dado ou instrução)
– Uma palavra pode ser um DADO ou uma INSTRUÇÃO
Organização Básica

PALAVRA (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
Organização Básica

PALAVRA (INSTRUÇÃO)
– São formadas por duas unidades básicas de informação:
• opcode ( operação a ser executada)
• endereço do operando que deve ser usado na operação.
Organização Básica II

PALAVRA (INSTRUÇÃO)
– Exemplo de uma instrução de 8 bits
• 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.
• Endereço do operando: a segunda parte da palavra (bits 2 a 0) que
indica a localização onde o operando esta armazenado .
Organização Básica II

INSTRUÇÃO DE 1 BYTE (EXEMPLO 1)
– “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 (0112)
Organização Básica II

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.
– Os bytes são armazenados em posições sucessivas da memória
– ENDEREÇAMENTO DIRETO
• O operando representa o endereço que indica ao computador onde os
dados estão armazenados.
– ENDEREÇAMENTO IMEDIATO
• O operando é o proprio valor em vez do endereço do valor.
Organização Básica II

INSTRUÇÃO DE 3 BYTES
– Os bytes são armazenados em posições sucessivas da memória
Organização Básica II

INSTRUÇÃO DE 3 BYTES (EXEMPLO)
– Opcode “02”
• Diz que ao computador que ele deve desviar (JUMP).
• Informa a unidade de controle que é uma instrução de três bytes
• Para que ela possa saber para onde desviar, deve buscar na memória os
dois próximos bytes.
DESVIA PARA O ENDEREÇO “2050”
Download