Upload
italo-pereira-guimaraes
View
212
Download
0
Embed Size (px)
Citation preview
ELT043 MicrocontroladoresGraduao em Engenharia Eletrnica
Universidade Federal de Itajub IESTI
Prof. Rodrigo de Paula Rodrigues
Microprocessador elementar Parte 2/2
Aula 04
P Elementar | Aplicao
comando 1
roteiro
P
Registros de operao
comando 1comando 2comando 3
...
Modelo de programao
P
ELT043 - Microcontroladores Prof. Rodrigo
Unidade de controle
Unidade de execuo
Registros acessveis
Tipos de dados
Conjunto de instrues
Modos de endereamento
P Elementar | Aplicao
Modelo de programao / arquitetura
Fsicos
operaosinalizaomanipulao de dados
Registros acessveis
Como o dado tratado
binriocomplemento de doisBCD
Tipos de dados
O que faz
movimentaocontrole de fluxoaritmticas
Classes de instrues
Como o argumento especificado
diretamenteindiretamente
Modos de endereamento
ELT043 - Microcontroladores Prof. Rodrigo
manipulao de dados BCDponto fixoponto flutuante
aritmticaslgicascomparao
P Elementar | Registros acessveis
Registros acessveis
Acumuladores
Registros de ndice
Contador de programa
Operaes lgicas e aritmticas
Registros de ndice (endereos)
Contador de programa (endereos)
ELT043 - Microcontroladores Prof. Rodrigo
Ponteiro da pilha Ponteiro da pilha (endereos)
Cdigo de condioCdigo de condio
P Elementar | Registros acessveis
Registros acumuladores
Acumuladores
operaes booleandase aritmticas
ELT043 - Microcontroladores Prof. Rodrigo
(N bits do barramento de dados)M x
P Elementar | Registros acessveis
Contador de programa
Contador de programa
Endereo da prximaInstruo a ser executada
ELT043 - Microcontroladores Prof. Rodrigo
(N bits do barramento de endereos)
P Elementar | Registros acessveis
Registros de ndice
Registros de ndice
Endereo de uma posiode memria especfica
ELT043 - Microcontroladores Prof. Rodrigo
(N bits do barramento de endereos)M x
P Elementar | Registros acessveis
Ponteiro da pilha
Ponteiro da pilha
Endereo da posio atual da pilha de dados
ELT043 - Microcontroladores Prof. Rodrigo
(N bits do barramento de endereos)
P Elementar | Registros acessveis
Cdigo de condio
Cdigo de condio
Condies atreladas ao resultado da ltima operao
efetuada pelo P
ELT043 - Microcontroladores Prof. Rodrigo
(N bits do barramento de dados)
P Elementar | Registros acessveis
Cdigo de condioExemplo do 6800
- - H I N Z
07
Vai um (carry)Estouro
Zero
V C
ELT043 - Microcontroladores Prof. Rodrigo
Zero
Negativo
Interrupo
Meio vai um (bit 3)
P Elementar | Tipos de dados
Tipos de dados
P
BCD
Complemento de 2
ELT043 - Microcontroladores Prof. Rodrigo
P
Ponto fixo
Ponto flutuante
P Elementar | Classes de instrues
Classes de instrues
Manipulao e operaes de memria
Operaes lgicas e aritmticas
ELT043 - Microcontroladores Prof. Rodrigo
Controle do fluxo de execuo
P Elementar | Classes de instrues
Manipulao de dados e operaes de memria
#123 Memria
Memria
ELT043 - Microcontroladores Prof. Rodrigo
Ciclos de escrita ou leitura
P Elementar | Classes de instrues
Operaes lgicas e artmticas
Aritmticas
ELT043 - Microcontroladores Prof. Rodrigo
Booleanas
E Ou No
P Elementar | Classes de instrues
Controle do fluxo de execuo
Desvios
Se CONDIO
ELT043 - Microcontroladores Prof. Rodrigo
SENO
Incondicional Condicional
Cdigo de mquina
P Elementar | Classes de instrues
O que? Com quem?
fazer
Instruo
Instruo a ser efetuadapelo P (OPCODE)
COD. OPE OPERANDO(S)
Valor numrico
ELT043 - Microcontroladores Prof. Rodrigo
fazer pelo P (OPCODE)
Parmetros a serem utilizadospela instruo
Cdigo de mquina
P Elementar | Classes de instrues
COD. OPE OPERANDO(S)
Valor numrico
(6800) Como obter o valor do operando :
ELT043 - Microcontroladores Prof. Rodrigo
(6800)$10 Subtrair os acumuladores A e B$1B Somar os acumuladores A e B$8B0A Adicionar o valor 10 ao
acumulador A
Como obter o valor do operando :
Inerente,imediato, direto, estendido, relativo, indexado, etc.
(Modo de endereamento )
Modo de endereamento inerente
P Elementar | Modos de endereamento
A prpria instruo j designa o(s) operando(s)
COD. OPEComprimento mnimo
ELT043 - Microcontroladores Prof. Rodrigo
Exemplo:Limpar o valor de um acumulador
Modo de endereamento imediato
P Elementar | Modos de endereamento
O valor associado ao operando especificado na prpria instruo
COD. OPE Cdigo da instruo + valor do operandoOPERANDO
ELT043 - Microcontroladores Prof. Rodrigo
Exemplos:Carregar o acumulador com um valor constante
Modo de endereamento direto e estendido
P Elementar | Modos de endereamento
especificado o endereo em memriado valor do operando
Exemplos :
Cdigo da instruo + endereo
COD. OPE ENDEREO
OPERANDO
ELT043 - Microcontroladores Prof. Rodrigo
Exemplos :Carregar o valor do acumulador com um valor presente em um endereo de memria
Modo de endereamento relativo
P Elementar | Modos de endereamento
especificado um endereo relativo aocontador de programas
Cdigo da instruo + deslocamento
CD. OPE DESLOCAMENTO
CP
+
ENDEREO RESULTANTE
ELT043 - Microcontroladores Prof. Rodrigo
ENDEREO RESULTANTE
OPERANDO
Modo de endereamento indexado
P Elementar | Modos de endereamento
especificado um endereo relativo aoregistro de ndice
Cdigo da instruo + deslocamento
CD. OPE DESLOCAMENTO
ndice
+
ENDEREO RESULTANTE
ELT043 - Microcontroladores Prof. Rodrigo
ENDEREO RESULTANTE
OPERANDO
P Elementar | Pilha de dados
Pilha de dados
Operaes
ELT043 - Microcontroladores Prof. Rodrigo
Incluso Retirada
Modo de endereamento: TOPO
P Elementar | Pilha de dados
Pilha de dados
Implementaes
ELT043 - Microcontroladores Prof. Rodrigo
Em cascata Em software
P Elementar | Execuo de programas
Contexto de execuo
0002h
0000h0001h
0005h
0003h0004h
Instruo 3
Instruo 1Instruo 2
Instruo 6
Instruo 4Instruo 5
Contexto X
CP 0003h
Acumuladores
Registro de condio
Contexto X+1
CP 0004h
Acumuladores
Registro de condio
Contexto X+2
CP 0005h
ELT043 - Microcontroladores Prof. Rodrigo
0005h0006h0007h0008h
Instruo 6Instruo 7Instruo 8Instruo 9
Registro de condioCP 0005h
Acumuladores
Registro de condio
P Elementar | Execuo de programas
Contexto de execuo
0002h
0005h
0003h0004h
Instruo 3
Instruo 6
Instruo 4Instruo 5
CP 0004h
Acumuladores
Registro de condio0101h Instruo 6
ELT043 - Microcontroladores Prof. Rodrigo
Registro de condio
0101h0102h0103h0104h
Instruo 6Instruo 7Instruo 8Instruo 9
P Elementar | Interface com perifricos
Interface com perifricos
P Perifricos
Memrias
ELT043 - Microcontroladores Prof. Rodrigo
P Elementar | Interface com perifricos
Modelo de interface com perifricos
Memrias e perifricosP Interface
ELT043 - Microcontroladores Prof. Rodrigo
P Elementar | Interface com perifricos
Modelo de interface com perifricos
Aspectos lgicosAspectos fsicos
ELT043 - Microcontroladores Prof. Rodrigo
(lgica de comunicao) (mapeamento)(conexes fsicas aos barramentos)
P Elementar | Interface com perifricos
Modelo de interface com perifricos
ELT043 - Microcontroladores Prof. Rodrigo
(mapeamento) (conexes fsicas aos barramentos)
P Elementar | Interface com perifricos
Modelo de interface com perifricos
Memria de dadosMemria de programa
Pilha de dados Reservada pelo microprocessador
Perifrico 1 Perifrico N
P
ELT043 - Microcontroladores Prof. Rodrigo
RAM ROM Per. 1 Per. N
P Elementar | Interface com perifricos
Aplicao prtica
Memria Memria
D1 D2 D3
P
ELT043 - Microcontroladores Prof. Rodrigo
MemriaRAM
MemriaROM Perifrico
Barramento de dados
Barramento de endereos
Barramento de controle
Decodificador de endereos
P Elementar | Interface com perifricos
Mapeamento em memriaExemploExemplo
FFFFh
D1
D2
P
ELT043 - Microcontroladores Prof. Rodrigo
0000h
ROM RAM
0400h a 047Fh
0000h a 03FFh
128 bytes
1024 bytes
P Elementar | Interface com perifricos
Mapeamento em memria
ROM1024 bytes
RAM
00h
128 bytes
7Fh
P
64k bytes
FFFFh
ELT043 - Microcontroladores Prof. Rodrigo
000h
1024 bytes
3FFh
0000h
03FFh0400h047Fh
P Elementar | Interface com perifricos
Mapeamento em memria
Endereo no P Endereo na RAMEndereo na ROM
0000h -000h
03FFh -3FFh
0400h 00h-
047Fh 7Fh-
ELT043 - Microcontroladores Prof. Rodrigo
P Elementar | Interface com perifricos
Mapeamento em memria
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bits no barramento de endereos do P
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0ROM 0000h
Dispositivo Endereo no P
0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1ROM 03FFh
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0RAM 0400h
ELT043 - Microcontroladores Prof. Rodrigo
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0RAM 0400h
0 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1RAM 047Fh
P Elementar | Interface com perifricos
Mapeamento em memria
E10
D1
D2 RAM
ROM
ELT043 - Microcontroladores Prof. Rodrigo
P Elementar | Interface com perifricos
Mapeamento em memria
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0ROM 0000h
0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1ROM 03FFh
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0RAM 0400h
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bits no barramento de endereos do PDispositivo Endereo no
P
ELT043 - Microcontroladores Prof. Rodrigo
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0RAM 0400h
0 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1RAM 047Fh
P Elementar | Fim
Obrigado
ELT043 - Microcontroladores Prof. Rodrigo