- registradores
- memória interna
- memória externa
- e2prom
Arquivo de registradores
Os arquivos de registradores definem o contexto a serem salvos em cada modo de operação do UC. Para cada versão da UCP há um contexto diferente até a data são duas revisões definidas pela ATMEL.
Note-se que o ponteiro de pilha
(SP), contador de programa (PC) e o registrador de ligação (LR) são
mapeados para o arquivo de registrador, fazendo com que a contagem
efetiva de registradores de contexto sejam 13 registradores de
propósito geral. O mapeamento de SP, PC e LR permite instruções
comuns, como adições ou subtrações, para usar esses
registradores. Isto resulta em abordagem eficiente da memória.
O registrador R12 é projetado
para manter os valores de retorno das chamadas de funções, e o
retorno condicional com movimento e instrução de teste, para usar
este registrador como um valor implícito de retorno do operando. As
instruções de carga e descarga múltipla têm a mesma
funcionalidade, que permite que eles sejam usados como instruções
de retorno. O conjunto de instruções ortogonais do núcleo
AVR32 permite que todos os registradores no arquivo de registradores
possam ser usados como ponteiros.
Arquivo de registradores em AVR32A
O AVR32A é voltado para aplicações sensíveis ao custo. Portanto,
nenhum hardware de sombreamento de registradores é fornecido. Todos
os dados que devem ser salvos entre os estados de execução são
colocados no sistema de pilha, não nos dedicados registradores como
é feito no AVR32B. A SP sombreado ainda está disponível para os
modos privilegiados, facilitando o dedicado sistema de pilha.
Quando ocorre uma exceção em uma implementação compatível AVR32A
o registrador de estado e o endereço do remetente são empurrados
pelo hardware para a pilha do sistema. Quando uma INT0, INT1, INT2 ou
INT3 ocorre o registrador de estado, o endereço de retorno, R8, R12
e LR são empurrados na pilha do sistema.
Os registradores correspondentes são puxados da pilha pela instrução
RETE. As instruções SCALL e RETS também usam a pilha do sistema
para armazenar o endereço de retorno e registrador de estado.
arquivo de registradores versão A. |
Arquivo de registradores em AVR32 B
O AVR32B permite que o arquivo de registradores seja separados para
os modos de interrupção e de exceção. Estes modos têm um número
de implementações definidas de registradores sombreados, a fim de
acelerar o tratamento de interrupções.
Os registradores sombreadas
são automaticamente mapeados em dependendo do modo de execução
atual. Todos os contextos, com exceção de aplicativos, tem um
dedicado registrador de estado (RSR) e registrador de endereço de
retorno (RAR).
O RSR é usado para armazenar o valor do
registrador de estado no retorno do contexto. O registrador RAR é usado para armazenar o endereço de retorno do contexto. Os
registradores RSR e RAR eliminam a necessidade de armazenar
temporariamente o registrador de estado e o endereço da pilha de
retorno ao entrar em um novo contexto.
arquivo de registradores versão B. |
O arquivo de registradores é projetado com uma parte específica de
implementação e uma parte arquitetônico definida. Dependendo da
implementação, cada um dos modos de interrupção pode ter
diferentes configurações de registradores sombreados. Isto permite
a máxima flexibilidade no direcionamento do processador para a
aplicação diferente.
Três esquemas de sombreamentos diferentes são oferecidos:
- pequeno
- meio
- completo
que vão desde nenhum registrador sombreado a todos registradores
sombreados.
.
Nenhum comentário:
Postar um comentário