140 likes | 270 Views
Conhecendo Hardware Parte 1. Ivan Saraiva Silva Sistemas de Tempo Real Embutidos. Família M68HC08. Um é um sistema computacional onde estão incluídos CPU de 8 bits Sistema de Clock Memória de dados e instruções Entrada e saídas Software. CPU Na família HC08 é baseada na CPU 08 ULA
E N D
Conhecendo HardwareParte 1 Ivan Saraiva Silva Sistemas de Tempo Real Embutidos
Família M68HC08 • Um é um sistema computacional onde estão incluídos • CPU de 8 bits • Sistema de Clock • Memória de dados e instruções • Entrada e saídas • Software
CPU Na família HC08 é baseada na CPU 08 ULA Controle da CPU Acumulador (A) Registrador H:X (16 de índice (endereçamento indireto) Contador de Programa (PC) iniciado com o vetor de reset Registrador Condition Code (CCR) – 8 bits de flag de resultado das operações Apontador de Programa (PC) CPU
CPU Controle ULA A H:X SP PC CCR
Memória • ROM – Pode ser lida ou escrita. Normalmente utilizada para dados. Volátil. • RAM - Só pode ser lida. Não volátil • EPROM (Erasable and Programable ROM) – é um ROM programável e apagável. Utiliza luz ultravioleta. Não volátil • OTP (One Time programable) Programável uma única vez.
Memória • EEPOM (Electricallly Erasable and Programable ROM) – Apagavel eletricamente. Suporta 10.000 escritas • FLASH – Basicamente uma EEPROM mais rápida • I/O – registradores de controle, Status e sinais de I/O acessíveis por outros dispositivos que não a CPU
Código objeto compatível com HC05 Freqüência de barramento de até 8MHz 64 Kbytes de endereçamento (dados, programa e periféricos) SP de 16 bits H:X de 16 bits com acesso a H e X (8 bits) 16 modos de endereçamento Movimentação de dados sem acumulador Multiplicação e divisão rápidas Características da Família
Associado as registradores Flags Carry/Borrow Zero Negativo Mascara de Interrupção Half-Carry - - Overflow Apontador de Pilha Aponta inicialmente para o endereço $00FF Instrução RSP posiciona $FF nos 8 bits menos significativos A pilha pode ser movida da página ($0000 a $00FF) Modelo de programação
PC No reset é iniciado com o conteúdo de $FFFE e $FFFF Endereçamento Inerente (Implícito) Imediato Direto (um byte de endereço) Estendido (dois bytes de endereço) Indexado (com e sem offset de 8 ou 16 bits) Stack Pointer Relativo (PC) Movimentação de dados Modelo de programação
Baixo consumo • Modo WAIT • Habilita interrupção • Desabilita o relógio da CPU • Desabilita interrupção se resetado • Modo STOP • Habilita interrupção • Desabilita o relógio da CPU e periféricos
Reset • I/O é configurada como entrada (zera registradores de direção) • SP iniciado para $00FF • Desabilita interrupções mascaráveis (flag I) • Interrupções externas, WAIT e STOP são resetadas
De software Instrução SWI Parte do fluxo de instrução De hardware Eventos internos ou externos Mascaráveis Int. Externas (/IRQ) Int. do Temporizador Int. do teclado Interrupções
Execução da rotina de serviço Processamento de exceções • Reconhecer evento causador • Arbitragem (se mais de um) • Empilhamento do contexto • Busca do vetor de interrupção