Академический Документы
Профессиональный Документы
Культура Документы
Blocos Bsicos
Organizao da Memria
Qualquer dispositivo (memrias, perifricos, etc) acessado pela CPU atravs dos barramentos; Em vrias arquiteturas, os registradores tambm so acessados via endereos de memria; Dependendo do endereo, a CPU pode acessar:
Memria dados (p.ex: RAM); Memria de programa (ROM/FLASH); Registradores Perifricos internos; Perifricos externos;
Mapa de Memria
Mapas de memria: Mapa que identifica quais endereos so utilizados pelos diversos tipos de dispositivos, memria de programa, memria de dados, e que endereos esto livres; Decodificador de Endereos: Circuito digital que aciona o dispositivo, dependendo do endereo definido pela CPU;
Para dispositivos internos, o decodificador j est integrado ao microcontrolador; Para dispositivos externos, o decodificador deve ser includo;
Modos de Endereamento
Modos de Endereamento
So as diferentes maneiras que uma operao acessa os operandos; Os operandos se podem estar na memria de programa, na memria RAM, registradores, etc.. Podem aumentar a eficincia das operaes da UCP;
reduzindo o nmero de bits de codificao das instrues, ou: aumentando a velocidade de execuo das instrues, ou: ambos.
Terminologia
Endereo fsico - endereo real que deve ser provido memria; Endereo de segmento - fornece o endereo de um bloco de memria menor que a totalidade da memria fsica; Endereo de offset - endereo relativo ao incio de um segmento de memria; Endereo lgico - endereo incompleto, mas suficiente para que uma determinada instruo calcule o endereo fsico;
Terminologia (cont.)
Endereo efetivo - endereo calculado pelo processador; Auto-incremento e auto-decremento - capacidade de incrementar e decrementar automaticamente registradores que guardam endereos de memria;
Endereamento a Registrador
Os operandos so registradores. Na maioria dos casos o cdigo da instruo j contm o cdigo do registrador a ser utilizado. - Exemplos: ADD A,R0 ( uC 8051) Soma A e R0, com resultado em R0 R10,R30 (uC AVR) Soma R10 e R30, com resultado em R10
ADD
Endereamento Imediato
O operando, de valor constante, segue o cdigo da instruo;
Endereamento Imediato
O operando, de valor constante, segue o cdigo da instruo; - Exemplos: ADD A,#0Fh (uC 8051) Soma a constante 0Fh ao registrador A ADIWR31:R30,0Fh (uC AVR) Soma 0F ao valor da word representada pelos registradores R31 e R30
Endereamento Direto
O endereo do operando segue o cdigo da instruo;
Endereamento Direto
O endereo do operando segue o cdigo da instruo; Exemplos: MOV A,05h (uC 8051) Move o contedo da posio de memria 05h para o registrador A LDS R2,$FF00 (uC AVR) Move o contedo da posio de memria FF00 para o registrador R2
Endereamento Indireto
Mecanismo de endereamento em dois nveis;
No primeiro nvel a instruo fornece a localizao do endereo do dado; No segundo nvel ento especifica a localizao do dado;
AVR possui;
Registradores X, Y e Z para acesso indireto memria; X, Y e Z podem ser ps-incrementado ou pr-decrementado; LD R1,X+ LD R1,-X X, Y e Z so na realidade R26 a R31
Endereamento Relativo
O endereo efetivo dado pela soma de um offset ao contador de programa
Endereamento Relativo
JC 07h (uC 8051) O valor do endereo do desvio calculado pela soma de 07 ao registrador PC.
Endereamento Relativo
BRCS 23h (uC AVR) O valor do endereo do desvio calculado pela soma de 23h ao registrador PC.
Endereamento Relativo
O valor de offset pode ser positivo ou negativo (complemento de 2); Exemplo: JC FAh
Organizao da memria
8051 possui espao de endereamento separado para:
Memria de Programa: at 64 Kbytes; Memria de Dados Externa: at 64 Kbytes;
Diferentes configuraes:
Memria externa CPU; Memria interna; Cominao de ambas (Interna + Externa 64 Kbytes);
Dois Exemplos: - Memria totalmente externa; - Memria interna e com possvel expanso;
Interna:
Tamanho depende do fabricante Mximo: 256 Bytes;
Externa:
Tamanho mximo: 64 KBytes;
- Mem. Interna:
- Dados e Registradores;
- Mem. Externa:
- Dados e perifricos externos;
Microcontrolador: AT89S52
Processador utilizado em laboratrio;
Quais as caractersticas do AT89S52?
Memria Flash de 8 Kbytes; Memria RAM de 256 bytes; Contador de 16 bits adicional: Timer 2;
Alm dos originais Timer 0 e Timer 1
Temporizao da CPU
Cada ciclo de mquina dividido em 6 estados (States): S1, S2, S3, S4, S5 e S6; Cada estado so 2 pulsos de clock, chamados de fases (Phase): P1 e P2; Tipicamente:
Phase 1: microinstrues aritmticas; Phase 2: microinstrues RTL (transferncia entre
registradores);
Viso Geral
Processadores de 8bits 32 bits, RISC Dividido em famlias
tinyAVR Srie ATtiny
Perifricos limitados;
Arquitetura AVR
ltimos 3 pares de registradores podem ser usados como 3 de 16 bits (registradores R26 a R31, que recebem o nome de X, Y e Z); 64 registradores de funes especiais;
Perifricos internos; Controles; Mapeados no espao de dados (RAM) de endereo 0020 a 005F;
Alguns possuem uma extenso de mais 160 registradores de funes especiais, mapeados na RAM de 0060h a 00FFh; Maioria das instrues pode acessar qualquer registrador em um ciclo;
No permite expanso;
Em um ciclo, para operaes em registradores: realiza a feita a leitura dos operandos; executa a operao na ULA (ALU); escreve o resultado no operando destino;
Em dois ciclos para acesso de leitura/escrita na RAM interna: Calcula o endereo do acesso; Acessa a memria;
Temporizao: Pipelining
Viso Geral
Fabricante: Microchip Technology; PIC Peripheral Interface Controller Arquitetura Harvard (exceto linha PIC32, que baseado no MIPS);
Barramento separado para leitura do cdigo (instrues);
Tamanho das instrues: 12 bits, 14 bits e 16 bits;
Arquitetura RISC;
Conjunto reduzido de instrues;
PIC16 - Arquitetura
Perifricos
Memoria de Programa
Memoria de Dados
Possui bancos de 128 registradores; Cada banco possui registradores especiais e registradores de uso geral; Existe um conjunto de 16 registradores que so acessados em qualquer banco de registradores; No permite expanso de memria de dados;
Temporizao e Pipelining