Você está na página 1de 89

MICROPROCESSADORES

Aula 3
Arquitetura Microprocessadores / Microcontroladores

Profº. Rogério D. Dantas

Curso: Eng. De Controle e Automação (Integral)

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 1/89


Microprocessadores

• 1971 - Intel Corporation lançou no


mercado o microprocessador 4004 .
(3.000 transistores ).

• O microprocessador é um dispositivo lógico programável em um único chip de silício.


• Ele trabalha sob o controle de um programa armazenado em memória, executando
operações aritméticas, lógica booleana, tomada de decisão, além de entrada e saída,
permitindo a comunicação com outros dispositivos periférico.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 2/89


Microprocessadores
Evolução histórica dos microprocessadores

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 3/89


Microprocessadores
Evolução histórica dos microprocessadores

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 4/89


Microprocessadores
Geração de Microprocessadores até 2003

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 5/89


Microprocessadores

2010
Lançamento das Famílias
i3, i5 e i7

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 6/89


Microprocessadores
Principais Famílias de Microprocessadores

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 7/89


Microprocessadores
O que encontramos dentro de uma Microprocessador?

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 8/89


Arquitetura dos Microprocessadores
 Microprocessador é a CPU de um computador construído num único Circuito Integrado.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 9/89


Arquitetura dos Microprocessadores
• Contém essencialmente a UNIDADE DE CONTROLE, a UNIDADE LÓGICA E
ARITMÉTICA (ULA) e REGISTRADORES (Acumulador e outros).

• Precisa de periféricos tais como memória e unidade de entrada e saída, para a formação
de um sistema mínimo.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 10/89


Unidade Central de Processamento (CPU)
Unidade de Controle
Unidade de Controle (UC):

• Tem por função básica o controle das demais


unidades da CPU através de sinais para
transferência de dados e sinais de sincronismo
entre unidades.

• Por exemplo: a UNIDADE DE CONTROLE é responsável por enviar um sinal de leitura


de uma instrução da memória ROM e sinais para transferência dessa instrução para a
unidade de decodificação e, na sequência, sinais para as outras unidades que executarão
a instrução, em uma sequência lógica.
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 11/89
Unidade Central de Processamento (CPU)
Unidade Lógica e Aritmética
Unidade Lógica e Aritmética (ULA ou ALU):

• Realiza funções básicas de processamento de


dados (adição, subtração, funções lógicas, etc).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 12/89


Unidade Central de Processamento (CPU)
Registradores

Registradores

• São usados para o armazenamentos internos da


CPU.

• Existem diversos registradores na CPU e o principal


deles é chamado de Acumulador.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 13/89


Microprocessadores
Resumindo...

• Basicamente, o microprocessador é constituído de um conjunto de


registradores (de uso geral e de uso específico), uma ULA (unidade lógica
aritmética) e barramentos interno (de dados, endereços e controle).

• Para funcionar necessita de outros periféricos, como memória, interface de


Entrada/Saída e barramentos de Endereço, Controle e Dados.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 14/89


Definições Básicas de Microprocessadores
Índice de Desempenho de Processadores

O aumento de desempenho (velocidade de processamento) de processadores está


relacionado com os seguintes aspectos:

Aumento de número interno de bits;


Aumento do número externo de bits;
Redução do número de ciclos para executar cada instrução;
Aumento da capacidade e velocidade da memória cache;
Execução de instruções em paralelo.
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 15/89
Definições Básicas de Microprocessadores
Aumento de Clock

O sinal de clock é responsável pelo sincronismo entre as unidades de processamento


internas ao microprocessador e pelas unidades externas.

Quanto maior a frequência de clock mais rápido o processamento. No entanto, não se


pode aumentar de forma indefinida essa frequência. Isso pode causar falhas de
processamento e sobre aquecimento.

O aumento depende de pesquisas com o objetivo de reduzir o tamanho dos componentes


básicos do microprocessador e aumento da quantidade de componentes, sem perda de
estabilidade no funcionamento.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 16/89


Definições Básicas de Microprocessadores
Aumento do número interno de bits:
Uma maior quantidade de bits dos registradores e dos barramentos internos permite a
movimentação de uma maior quantidade de dados por unidade de tempo, aumentando o
desempenho do Microprocessadores.

Aumento do número externo de bits:


Um número maior de bits externos permite a movimentação de uma maior quantidade de
dados por unidade de tempo com os periféricos, tais como memória, unidade de entrada e
saída, controlador de acesso direto memória (DMA).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 17/89


Definições Básicas de Microprocessadores
Redução do número de ciclos para executar cada instrução:

A execução de uma instrução normalmente é feita em duas etapas: busca (onde a


instrução é transferida da memória para a unidade de decodificação) e execução (onde os
sinais de controle ativam, em uma sequência lógica, todas as unidades envolvidas na
execução).

Por exemplo, no microprocessador 8085 as instruções mais rápidas são executadas em


quatro ciclos de clock; as mais lentas, em até 16 ciclos de clock. A redução do número de
ciclos de clock na execução de uma instrução torna o processamento mais rápido.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 18/89


Definições Básicas de Microprocessadores
Aumento da capacidade e velocidade da memória cache:
 Como já foi dito anteriormente, ao longo dos anos, o aumento de velocidade de
processamento dos microprocessadores tem sido muito maior do que o aumento da
velocidade de acesso à memória principal. Assim, a velocidade de acesso à memória
principal torna-se um limitador de desempenho.
 Em razão desse problema foi criada a memória cache. A memória cache (constituída de
memória RAM estática) é usada para acelerar a transferência de dados entre a CPU e a
memória principal (constituída de RAM dinâmica, de menor volume, porém mais lenta).
 O aumento da capacidade e da velocidade da memória cache resulta no aumento da
velocidade de transferência de dados entre a CPU e a memória principal e,
consequentemente, resulta no aumento do desempenho global do sistema.
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 19/89
Definições Básicas de Microprocessadores
Execução de instruções em paralelo:

 O alguns microprocessadores, tais como o 8085 compartilha um barramento comum


entre suas unidades internas e seus periféricos, o que significa dizer que não permite a
execução simultânea de duas operações que utilizem o barramento.

 Assim, apenas uma instrução é executa por vez. Uma arquitetura que permita que duas
ou mais operações sejam executadas simultaneamente torna o processamento mais
rápido.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 20/89


Arquitetura de um Computador

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 21/89


Arquitetura de um Microcontrolador
• Microcontrolador : Computador completo construído em um único Circuito
Integrado.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 22/89


Microcontroladores
Microcontrolador:

 Os microcontroladores são normalmente utilizados para aplicações


específicas, tais como: sistemas de segurança, controle de velocidade de um
motor e outros.

 Eles contêm, dentre outras unidades, portas de entrada e saída, seriais e


paralelas, temporizadores, controles de interrupção, memórias RAM e ROM.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 23/89


Microprocessadores x Microcontroladores
Microprocessador:

• CPU isolada;
• RAM, ROM, Timer e outros perificos são separados;
• O desenvolvedor do projeto pode definir em torno de RAM, ROM e I/O´s;
• Expansível;
• Versátil;
• De uso geral;
• Foco em processamento elevado.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 24/89


Microprocessadores x Microcontroladores
Microcontrolador:
• CPU,RAM, ROM, Timer e I/Os e outros perificos todos em um único CHIP;
• Tamanhos das RAM, ROM e número de I/O´s definidos, sem
possibilidades de configurar;
• Usado em aplicação onde necessite de baixo consumo, baixo custo e
espaço limitado;
• Uso especifico;
• Foco em pequenos processamentos de informações.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 25/89


Algumas definições
• Programa (Software): conjunto de instruções arranjadas de forma organizada
que apresenta função específica (Ex: Programas Básicos, Aplicativos,
Utilitários, etc.);
• Firmware: Programa que está armazenado em memória não volátil (ROM);

• Hardware: partes eletrônicas de um microcomputador;


• Microcontrolador: microcomputador integrado num único chip
(microprocessador + periféricos);

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 26/89


Algumas definições
• FLOPS - FLOating point instructions Per Seconds (Instruções com Ponto Flutuante Por
Segundo). É também uma unidade de desempenho do microprocessador. Indica a
capacidade de trabalhar com números.

• Representação em Ponto Flutuante - Sistema numérico no qual um número real é


representado por um par distinto de numerais: uma mantissa (ou significante) e um
expoente. Possibilita representação de números fracionários.

• Set de Instruções ou Conjunto de Instruções - Conjunto de Mnemônicos (siglas que


fazem lembrar uma ação) que representam todas as instruções do processador. Cada
processador possui o seu set de instruções particular. O microprocessador 8085 possui 74
instruções.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 27/89


Algumas definições
• MIPS – Millions of Instructions Per Seconds (Milhões de Instruções Por Segundo): É
uma unidade de desempenho do microprocessador.

• BIOS – Basic Input/Output System: É o conjunto mínimo de instruções necessárias


para a inicialização do computador. Também gerencia o fluxo de dados entre o sistema
operacional do computador e os dispositivos periféricos conectados.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 28/89


Algumas definições
Periféricos:
• Circuitos acessórios ao microcontrolador que realizam tarefas específicas;

• Exemplos:
Timers;
CCP (Comparação, Captura e PWM);
Conversores Analógico-Digital e Digital-Analógico;
Portas de comunicação (USART, I2C, SPI, USB, CAN,...).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 29/89


Arquiteturas
Arquitetura:
• Objetivo básico de qualquer arquitetura microprocessada é reduzir o tempo de
execução de tarefas.

• Os dois tipos mais conhecidos e utilizados são:


Von Neumann: Instruções e dados compartilham a mesma unidade física de memória.
Harvard: Instruções e dados são armazenados em memórias diferentes.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 30/89


Arquitetura
Von Neumann
• Na arquitetura Von Neumann, as memórias tanto de dados quanto de programa, são
acessadas usando-se o mesmo barramento de dados.

• PORTs de I/O também fazem uso do barramento de dados.

• Vale lembrar aqui que uma instrução é como uma operação matemática, isto é,
composta de operadores, que indicam o que será feito, e operandos, que são os
parâmetros envolvidos na operação. Desta forma, o processo de execução de cada
instrução é dividido em dois momentos: a leitura da instrução e dos operandos (fetch) e a
execução da instrução propriamente dita.

• Nota-se que dessa forma o processador está parte do tempo ocupado com a leitura da
memória de programa e, consequentemente não fica executando o firmware o tempo
todo.
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 31/89
Arquitetura
Von Neumann

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 32/89


Arquitetura
Von Neumann
Arquitetura Von Neumann

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 33/89


Arquitetura
Harvard
• Arquitetura Harvard: tem como principal característica, possuir a memória de
programa separada da memória de dados e é acessada por um barramento
independente.

• Principal vantagem dessa arquitetura é a leitura de instruções e de alguns tipos de


operandos pode ser feita ao mesmo tempo em que a execução das instruções.

• Isso significa que o sistema fica todo o tempo executando instruções, o que acarreta
um significativo ganho de velocidade.

• Enquanto uma instrução está sendo executada, a seguinte está sendo lida. Esse
processo é conhecido como Pipelining (canalização).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 34/89


Arquitetura
Harvard
• Pipelining (canalização).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 35/89


Arquitetura
Harvard

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 36/89


Arquitetura
Harvard

Arquitetura Harvard

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 37/89


Conjunto de Instruções
(Instruction Set)
Conjunto de Instruções:

• Definição: Conjunto de instruções que um processador / microcontrolador


compreende;

• Cada processador / microcontrolador possui seu próprio conjunto de


instruções, inviabilizando, na maioria dos casos, a portabilidade.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 38/89


Conjunto de Instruções
RISC x CISC
Conjunto de Instruções:

• Também podem ser definidos como:

RISC: Computador com Conjunto Reduzido de Instruções, tem um número


de conjunto de instruções reduzido (em torno de 100 instruções).

CISC: Computador com Conjunto Complexo de Instruções, ou seja, tem


um número de conjunto de instruções elevado (de 100 a 200 instruções).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 39/89


Conjunto de Instruções
RISC x CISC
Conjunto de Instruções:

• CISC - Complex Instruction Set Computing (Computador com Conjunto Complexo de


Instruções) Exemplos: Intel e AMD;

• RISC - Reduced Instruction Set Computing (Computador com Conjunto Reduzido de


Instruções) Exemplos: PowerPC (da Apple, Motorola e IBM), SPARC (SUN) e MIPS
R2000;

• Híbrida - Combinação de ambas arquiteturas. Exemplo: Pentium Pro. O núcleo mais


interno usa filosofia RISC.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 40/89


Conjunto de Instruções
RISC x CISC
Etapas de execução de Instruções:

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 41/89


Conjunto de Instruções
RISC x CISC
Grupos de instruções mais comuns em processadores de qualquer
arquitetura:

• Instruções de desvio (No CISC o valor de retorno é guardado na pilha; no RISC é


guardado em um registrador).
• Instruções de transferência entre registradores e memória (No RISC: load/store; no CISC:
load, store, mov etc).
• Instruções de transferência entre registradores;
• Instruções de transferência entre posições de memória;
• Operações aritméticas (soma, subtração...);
• Operações lógicas (and, or, not, rotação ...).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 42/89


Conjunto de Instruções
RISC x CISC
Ciclo de Execução:

• RISC: Instruções são executadas em um único ciclo de via de dados. São instruções
muito parecidas com as micro instruções da arquitetura CISC. Não precisam de
decodificação. Não é possível ter instruções de multiplicação e divisão, por exemplo, por
exigir muitos ciclos para execução. Multiplicações são resolvidas com adições e
deslocamentos.

• CISC: Antes de executar uma instrução, há necessidade de busca da instrução na


memória e de decodificação. Utiliza-se micro-códigos gravados no processador, para a
execução das instruções.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 43/89


Conjunto de Instruções
RISC x CISC
Micro-código:

• RISC: As instruções geradas por um compilador para uma máquina RISC são executadas
diretamente no hardware, sem o uso de micro-códigos. A ausência de interpretação
contribui para o aumento da velocidade de execução.

• CISC: As instruções básicas são gravadas na forma de micro-códigos, que atuam no


hardware estabelecendo os passos de cada instrução. Há necessidade de busca e
decodificação das instruções. O programa compilado tem uma quantidade menor de
instruções assembly do que um programa RISC, mas é mais lento na execução.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 44/89


Conjunto de Instruções
RISC x CISC
Memória e Registradores:

• RISC: Possui uma quantidade muito grande de registradores (em média 512 – com
32 visíveis por vez: 8 para variáveis globais e ponteiros, 8 para parâmetros de
entrada, 8 para variáveis locais e 8 para parâmetros de saída).
• RISC: Número reduzido de acesso à memória (o acesso à memória torna o
processamento mais lento). Alocação de variáveis em registradores. Um ou dois
modos de endereçamento para acesso à memória.
• CISC: Possui um número reduzido de registradores, comparado com o RISC.
Alocação de variáveis em posições de memória, ao invés de registradores.
• CISC: Vários modos de endereçamento para acesso à memória.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 45/89


Conjunto de Instruções
RISC x CISC
Pipeline:

• PIPELINE: Técnica usada para acelerar a execução de instruções. A cada ciclo de clock,
enquanto uma instrução está na etapa de execução, a instrução seguinte está sendo
buscada. O resultado global é que, a cada ciclo, uma nova instrução é iniciada e uma
instrução é encerrada. No caso mostrado a instrução B faz referência à memória.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 46/89


Conjunto de Instruções
RISC x CISC
Pipeline:
• PIPELINE: Enquanto a instrução A precisa de apenas um ciclo para busca e um para
execução, a instrução B precisa de dois ciclos para execução. Caso a instrução B interfira
na etapa de execução da instrução C (por exemplo, usando o mesmo registrador ou
quando a instrução B) é necessário aguardar o término da instrução B antes de executar a
instrução C.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 47/89


Conjunto de Instruções
RISC x CISC

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 48/89


Conjunto de Instruções
RISC x CISC

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 49/89


Resumindo
RISC x CISC

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 50/89


Resumindo
RISC x CISC
Exemplo: Programação CISC x RISC
 Uma simples soma entre dois valores de endereços de memória distintos pode necessitar quatro vezes
mais instruções para um processador RISC quando comparado a um processador CISC. O RISC dispõe
apenas de instruções simples e não consegue acessar a memória diretamente na maioria delas. A soma
entre os valores de endereço M1 e M2 e posterior armazenamento no endereço M1 teria o aspecto para
um processador CISC como descrito abaixo:

SOMA M1, M2

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 51/89


Resumindo
RISC x CISC
Exemplo:

Já para um processador RISC, o mesmo procedimento demandaria o carregamento dos


valores da memória para registradores antes da operação e se pareceria com as linhas de
instrução que seguem:

CARREGAR M1, A
CARREGAR M2, B
SOMA A, B
SALVAR A, M1

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 52/89


Resumindo
RISC x CISC
Comparando Comandos RISC e CISC:
ORG 0x0000

;CISC
MOV REG. DESTINO, VALOR DE ORIGEM

;RISC
LOAD REG. GERAL, VALOR
STORE REG. ESPECIAL, REG. GERAL

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 53/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
CPU de microprocessador / microcontrolador:
• Para isso vamos construir uma CPU do zero e entender como ocorre o fluxo de dados entre ULA,
Memórias de programa e de dados.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 54/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Transceptor de barramento

. EN ⇒ Habilita Chip (Enable)


DIR ⇒ Direção

 Faz o direcionamento do Barramento

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 55/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Transceptor de barramento

 Faz o direcionamento do Barramento

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 56/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Transceptor de barramento

 Faz o direcionamento do Barramento

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 57/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

LE ⇒ LATCH ENABLE (Habilita LATCH)


OE ⇒ OUTPUT ENABLE (Libera o dado do Registrado)

 Registradores de uso geral, para movimentação de dados.

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 58/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

 ULA com seus estados de controle (S0, S1 e S2).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 59/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

 Na saída da ULA, temos o registrador de STATUS, que possui flag de indicações das operações
ocorridas.
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 60/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

BARRAMENTO INTERNO DE DADOS


DATAPATH
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 61/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

1) Descreva a sequência de operações para


calcular: A=X+Y
2) Faça a Tabela de comandos (no nível lógico)
para que esta operação seja executada.

BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 62/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores
RESPOSTA

BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 63/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores 11110000
RESPOSTA

11110000
BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 64/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores
00001111
RESPOSTA

00001111
BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 65/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores
RESPOSTA

11110000 00001111

11111111

BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 66/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores

1) Descreva a sequência de operações para


calcular: X = 0x85 - 0x20
2) Faça a Tabela de comandos (no nível lógico)
para que esta operação seja executada.

BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 67/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
ULA e Registradores
RESPOSTA

BARRAMENTO INTERNO DE DADOS

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 68/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Dá trabalho controlar todos os sinais de controle p/ registradores + ULA + transceptores...

 Cada SEQUÊNCIA vista


anteriormente, pode ser
considerada como uma
MÁQUINA DE ESTADOS
FINITOS (FSM)...

DIR ENA

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 69/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Dá trabalho controlar todos os sinais de controle p/ registradores + ULA + transceptores...

 Cada SEQUÊNCIA vista


anteriormente, pode ser
considerada como uma
MÁQUINA DE ESTADOS
FINITOS (FSM)...

Exemplo de uma sequência como FSM:


S0 = carregar operando em “X”;
DIR ENA
S1 = carregar operando em “Y”;
S2 = somar X+Y;
S3 = salvar resultado em “A” e no registrador de flags “F”;

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 70/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Dá trabalho controlar todos os sinais de controle p/ registradores + ULA + transceptores...

DIR ENA

 SOLUÇÃO: gravar as várias sequências numa MEMÓRIA não volátil (firmware)


Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 71/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3 READ
.
. ONLY LE LE
. Cada sinal de controle dos REGs,
A3 MEMORY reg. X reg. Y
da CPU, e demais componentes OE OE
A2
da CPU será gravado na ROMS2
A1 (ROM) S1
A0 S0 ULA
LE
reg. A
OE

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 72/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3 READ
.
Grava-se as várias .
.
ONLY LE LE
MEMORY ... outros bits de controle reg. X reg. Y
sequências de controle A3
A2
OE OE
S2
das FSMs na memória A1 (ROM) S1
não volátil... A0 S0 ULA
(esse “programa” na
LE
UNIDADE DE CONTROLE reg. A
OE
é chamado FIRMWARE)

FSMs - Máquina de Estados Finito

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 73/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3 READ
.
. ONLY LE LE
. ... outros bits de controle
A3 MEMORY reg. X reg. Y
OE OE
A2
S2
A1 (ROM) S1
A0 S0 ULA
0x54F2
LE
reg. A
OE

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 74/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
Segundo este raciocínio, AN-3
.
READ
quantas operações de . ONLY LE LE
. ... outros bits de controle
A3 MEMORY reg. X reg. Y
controle (quantas FSMs) A2
OE OE
S2
essa memória contém? A1 (ROM) S1
A0 S0 ULA
LE
reg. A
OE

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 75/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
Segundo este raciocínio, AN-3
.
READ
quantas operações de . ONLY LE LE
. ... outros bits de controle
A3 MEMORY reg. X reg. Y
controle (quantas FSMs) A2
OE OE
S2
essa memória contém? A1 (ROM) S1
A0 S0 ULA
LE
reg. A
OE

28 bits = 256 FSMs


(ou 256 sequências)
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 76/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3 READ
.
. ONLY LE LE
. ... outros bits de controle
A3 MEMORY reg. X reg. Y
OE OE
A2
S2
A1
(ROM) S1
A0 S0 ULA
LE
reg. A
CLK OE
CONTADOR
Um contador interno
automatiza os 4
passos de cada FSM

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 77/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3
Vamos chamar .
.
READ
ONLY LE LE
INSTRUÇÃO cada A3
.
MEMORY ... outros bits de controle
OE
reg. X
OE
reg. Y
FSM que o circuito A2
(ROM)
S2
A1 S1
executa em 4 passos! A0 S0 ULA
LE
reg. A
CLK OE
CONTADOR

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 78/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
Neste estágio, AN-3 READ
indicamos externamente .
. ONLY LE LE
. ... outros bits de controle
qual INSTRUÇÃO A3 MEMORY
OE
reg. X
OE
reg. Y
A2
queremos, e o circuito (ROM)
S2
A1 S1
executa internamente A0 S0 ULA
uma FSM de 4 passos!
LE
reg. A
CLK OE
CONTADOR

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 79/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Automatizando o controle da sequência de operações:

AN-1
AN-2
AN-3 READ
.
. ONLY
E SE... A3
.
MEMORY ... outros bits de controle
LE
reg. X
LE
reg. Y
Gravarmos uma série de A2
S2
OE OE

instruções externamente A1
(ROM) S1
S0 ULA
em uma memória? A0

LE
reg. A
CLK OE
CONTADOR

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 80/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)

CONTADOR
Endereço
da memória D9 A9
MEMÓRIA D8 A8
DE D7 A7 READ
.
INSTRUÇÃO . ONLY LE LE
. ... outros bits de controle
D3 A3 MEMORY reg. X reg. Y
OE OE
(ROM/RAM) D2 A2
S2
A1
(ROM) S1
A0 S0 ULA
NESTE ESTÁGIO...
Basta avançar sequencialmente LE
os endereços da memória e reg. A
CLK OE
trocamos automaticamente a CONTADOR
instrução a ser executada!!! (um
contador pode gerar a
sequencia de endereços da
memória).
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 81/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
PORÉM... Pode-se colocar o contador internamente,
Endereço Contador de controlado pelo FIRMWARE! Quando terminar uma
da memória INSTRUÇÕES
instrução, incrementa-se o contador!!!
D9 A9
MEMÓRIA D8 A8
DE D7 A7 READ
.
INSTRUÇÃO . ONLY LE LE
. ... outros bits de controle
D3 A3 MEMORY reg. X reg. Y
OE OE
(ROM/RAM) D2 A2
S2
A1
(ROM) S1
A0 S0 ULA
LE
reg. A
CLK OE
CONTADOR

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 82/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)

Endereço Contador de
da memória INSTRUÇÕES
D9 A9
MEMÓRIA D8 A8
DE D7 A7 READ
.
INSTRUÇÃO . ONLY LE LE
. ... outros bits de controle
D3 A3 MEMORY reg. X reg. Y
OE OE
(ROM/RAM) D2 A2
S2
A1
(ROM) S1
A0 S0 ULA
MAS... E os DADOS
que são os operandos LE
reg. A
de cada FSM ??? CLK
CONTADOR
OE

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 83/89


UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Endereços e controle memória de dados e I/O Controle de
Memória e I/Os
Endereço da memória Instrução Contador de
INSTRUÇÕES
D9 A9
MEMÓRIA D8 A8
DE D7 A7
READ
.
INSTRUÇÃO . ONLY LE LE
. ... outros bits de controle
MEMORY
D3 SOLUÇÃO:
A3 reg. X reg. Y
UMA
(ROM/RAM) D2 OE OE
A2
...uma memória SEPARADA da S2
A
(ROM) S1
memória de instruções só para
1
ULA
A0 S0
dados... ( solução HARVARD )
LE
MEMÓRIA DE
reg. A
DADOS CLK OE
CONTADOR
DISPOSITIVOS
ENTRADA E
SAÍDA (I/Os) BUS de DADOS (bidirecional)
memória e periféricos
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 84/89
UNIDADE CENTRAL DE PROCESSAMENTO (CPU)
Endereços e controle memória de dados e I/O Controle de
Memória e I/Os
Endereço da memória Instrução Contador de
INSTRUÇÕES
D9 A9
MEMÓRIA D8 A8
DE D7 A7 READ
.
INSTRUÇÃO . ONLY LE LE
.
D3 A3 MEMORY reg. X reg. Y
OE OE
(ROM/RAM) D2 A2
S2
A1
(ROM) S1
A0 S0 ULA
LE
MEMÓRIA DE
reg. A
DADOS CLK OE
CONTADOR
DISPOSITIVOS
ENTRADA E
SAÍDA (I/Os) BUS de DADOS (bidirecional)
memória e periféricos CPU : Central Processor Unity
Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 85/89
Atividade – Lista 3
Lista 3: Arquitetura Microprocessadores / Microcontroladores.

• Objetivo: Revisar o conteúdo necessário para o desenvolvimento na disciplina de


Microprocessadores

 Entrega até as 23:55hs do dia 11/09/2022 via moodle

link: https://moodle.gru.ifsp.edu.br/mod/assign/view.php?id=58532

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 86/89


Referências
Referências Bibliográficas:

• Além dos livros, foi utilizado as notas de aulas da disciplina de Sistemas Microprocessados do
professor Dr. João Ranchel da Universidade Federal de ABC (Muito obrigado!).

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 87/89


Considerações Finais
Materiais da aula:

• Os slides das aulas e listas de exercícios estão disponíveis no site.

https://moodle.gru.ifsp.edu.br/course/view.php?id=4234

• Disciplina: MPE06 Microprocessadores - 2º Semestre 2022

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 88/89


Considerações Finais

Obrigado, e até a próxima aula!

Profº. Rogério D. Dantas

e-mail: rogerio.dantas@ifsp.edu.br

Profº. Rogério D. Dantas Aula 3 – Microprocessadores – MPE06 Agosto 2022 89/89

Você também pode gostar