Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 3
Arquitetura Microprocessadores / Microcontroladores
2010
Lançamento das Famílias
i3, i5 e i7
• Precisa de periféricos tais como memória e unidade de entrada e saída, para a formação
de um sistema mínimo.
Registradores
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.
• 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.
• 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,...).
• 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
• 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).
Arquitetura Harvard
• 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.
• 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.
• 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.
• 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.
SOMA M1, M2
CARREGAR M1, A
CARREGAR M2, B
SOMA A, B
SALVAR A, M1
;CISC
MOV REG. DESTINO, VALOR DE ORIGEM
;RISC
LOAD REG. GERAL, VALOR
STORE REG. ESPECIAL, REG. GERAL
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
11110000
BARRAMENTO INTERNO DE DADOS
00001111
BARRAMENTO INTERNO DE DADOS
11110000 00001111
11111111
DIR ENA
DIR ENA
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
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)
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
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
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
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
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
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
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
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
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
link: https://moodle.gru.ifsp.edu.br/mod/assign/view.php?id=58532
• 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!).
https://moodle.gru.ifsp.edu.br/course/view.php?id=4234
e-mail: rogerio.dantas@ifsp.edu.br