0% acharam este documento útil (0 voto)
4 visualizações14 páginas

Características do Microprocessador 80386

O documento discute as características e a arquitetura do microprocessador Intel 80386. Ele possui duas versões - a 80386DX com um barramento de endereços e dados de 32 bits que pode endereçar 4GB de memória, e a 80386SX com um barramento de endereços de 24 bits e barramento de dados de 16 bits que pode endereçar 16MB de memória. A 80386SX foi desenvolvida para aplicações que não exigiam as capacidades completas de 32 bits da 80386DX. O documento descreve a arquitetura interna do 80386, incluindo sua unidade central de processamento, unidade de gerenciamento de memória e unidade de interface de barramento.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
4 visualizações14 páginas

Características do Microprocessador 80386

O documento discute as características e a arquitetura do microprocessador Intel 80386. Ele possui duas versões - a 80386DX com um barramento de endereços e dados de 32 bits que pode endereçar 4GB de memória, e a 80386SX com um barramento de endereços de 24 bits e barramento de dados de 16 bits que pode endereçar 16MB de memória. A 80386SX foi desenvolvida para aplicações que não exigiam as capacidades completas de 32 bits da 80386DX. O documento descreve a arquitetura interna do 80386, incluindo sua unidade central de processamento, unidade de gerenciamento de memória e unidade de interface de barramento.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

UNIDADE–IV: MICROPROCESSADORES AVANÇADOS

CARACTERÍSTICAS SALIENTES DO 80386:

80386 é um microprocessador de 32 bits

Duasversõesdo80386estãocomumentedisponíveis:

80386DX
2)80386SX

80386DX 80386SX

Barramento de endereços de 32 bits, barramento Barramento


de dados de de
32 endereço
bits de 24 bits, barramento de dados de 16 bits

Embalado em grade de pinos cerâmicos de 132 pinos


pacote plano de 100 pinos
array(PGA)

3) Endereçar 4GB de memória 16 MB de Memória

O 80386SX foi desenvolvido após o DX para aplicações que não exigiam a versão de barramento de 32 bits completo.
encontrado em muitos PCs usa o mesmo design básico de placa-mãe que o 80286. A maioria das aplicações é inferior a
16MB de memória, então o SX é uma versão popular e menos cara do microprocessador 80386.

A CPU 80386 suporta 16k segmentos e, portanto, o espaço total de memória virtual é 4GB*16
k=64 terabytes

A seção de gerenciamento de memória suporta

. Memória virtual

. Paginação

. 4 níveis de proteção

. frequência de 20-33 MHz


Arquitetura do 80386:

A Arquitetura Interna do 80386 é dividida em 3 seções.

Unidade Central de Processamento (UCP)

Unidade de gerenciamento de memória (MMU)

Unidade de interface de barramento (BIU)

A unidade central de processamento é dividida em unidade de execução (EU) e unidade de instrução (IU)

A unidade de execução possui 8 registradores de uso geral e 8 registradores de uso especial que são utilizados para

manipulando dados ou calculando endereços de deslocamento.

A unidade de instrução decodifica os bytes de opcode recebidos da fila de código de instrução de 16 bytes e
organiza-os em uma fila de instruções decodificadas de 3 instruções.

Após decodificá-los, passe para a seção de controle para derivar os sinais de controle necessários. O barril
o shifter aumenta a velocidade de todas as operações de deslocamento e rotação.
A lógica de multiplicação/divisão implementa os algoritmos de rotação de deslocamento de bits para completar as operações em

tempo mínimo.
Até multiplicações de 32 bits podem ser executadas em um microsegundo pela lógica de multiplicação/divisão.
A unidade de gerenciamento de memória consiste em

Unidade de segmentação

Unidade de paginação.

•A unidade de segmentação permite o uso de dois componentes de endereço, a saber, segmento e deslocamento para re-

localização e compartilhamento de código e dados.


A unidade de segmentação permite segmentos de tamanho máximo de 4 Gbytes.

A unidade de paginação organiza a memória física em termos de páginas de 4 kilobytes cada.


A unidade de paginação funciona sob o controle da unidade de segmentação, ou seja, cada segmento é ainda subdividido.

em páginas. A memória virtual também é organizada em termos de segmentos e páginas pela memória
unidade de gestão.

•A unidade de Segmentação fornece um mecanismo de proteção em 4 níveis para proteger e isolar o


código do sistema e dados dos do programa de aplicação.

A unidade de paginação converte endereços lineares em endereços físicos.

•O controle e o atributo PLA verificam os privilégios no nível da página. Cada uma das páginas mantém
as informações de paginação da tarefa. O limite e o atributo PLA verificam os limites do segmento e
atributos no nível de segmento para evitar acessos inválidos ao código e aos dados nos segmentos de memória.

A unidade de controle do barramento possui um priorizador para resolver a prioridade dos vários pedidos do barramento.
controla o acesso do ônibus. O driver de endereço controla o ônibus habilita e sinal de endereço A0–
A31. O pipeline e a unidade de dimensionamento dinâmico do ônibus lidam com os sinais de controle relacionados.
Os buffers de dados conectam o barramento de dados interno com o barramento do sistema.

Registrar Organização:

O 80386 possui oito registradores de propósito geral de 32 bits que podem ser usados como 8 bits ou 16 bits.
registros.
Um registrador de 32 bits conhecido como registrador estendido, é representado pelo nome do registrador com prefixo
E.

Um registrador de 32 bits correspondente ao AX é EAX, da mesma forma BX é EBX etc.

Os registradores de 16 bits BP, SP, SI e DI no 8086 agora estão disponíveis com seu tamanho estendido de 32 bits.
e são chamados de EBP, ESP, ESI e EDI.
•AX representa os 16 bits inferiores do registrador de 32 bits EAX.

•BP, SP, SI, DI representam os 16 bits inferiores de seus equivalentes de 32 bits e podem ser usados como
registradores independentes de 16 bits.

Os seis registradores de segmento disponíveis no 80386 são CS, SS, DS, ES, FS e GS.

•O CS e SS são os registradores de segmento de código e de pilha, respectivamente, enquanto DS, ES, FS, GS
existem 4 registradores de segmento de dados.

Um ponteiro de instrução de 16 bits IP está disponível juntamente com seu equivalente de 32 bits EIP.

Registro de Sinal do 80386:

O registrador Flag do 80386 é um registrador de 32 bits. Dos 32 bits, a Intel reservou os bits D18 a
D31, D5 e D3, enquanto D1 é sempre configurado como 1. Dois novos sinais extras são adicionados ao sinal 80286 para

derivar o registrador de flags do 80386. Eles são os flags VM e RF.


VM-Bandeira do Modo Virtual: Se esta bandeira estiver definida, o 80386 entra no modo virtual 8086 dentro do

modo de proteção. Isso deve ser definido apenas quando o 80386 estiver em modo protegido. Nesse modo, se qualquer

uma instrução privilegiada é executada uma exceção 13 é gerada. Este bit pode ser definido usando IRET
instrução ou qualquer operação de troca de tarefa apenas no modo protegido.

Sinal RF-Resume: Este sinal é usado com os pontos de interrupção do registro de depuração. Ele é verificado no início
de cada ciclo de instrução e se estiver definido, qualquer falha de depuração é ignorada durante o ciclo de instrução.
ORFéredefinidoautomaticamenteapósaexecuçãobem-sucedidadecadainstrução,excetoparaIRETePOPF.
instruções.

Além disso, não é limpo automaticamente após a execução bem-sucedida de JMP, CALL e INT
instrução causando uma troca de tarefa. Essas instruções são usadas para definir o RF para o valor especificado por
os dados de memória disponíveis na pilha.

Registros de Descritor de Segmento

Esses registros não estão disponíveis para programadores, mas sim usados internamente para armazenar o
informação do descritor, como atributos, limites e endereços base dos segmentos.

Os seis registradores de segmento têm correspondentes seis registradores de descritor de 73 bits. Cada um deles

contém o endereço base de 32 bits, limite base de 32 bits e 9 bits de atributos.

Estes são carregados automaticamente quando os segmentos correspondentes são carregados com seletores.

Registradores de Controle: O 80386 possui três registradores de controle de 32 bits, CR0, CR2 e CR3, para armazenar globais.

status da máquina independente da tarefa executada. Instruções de carregar e armazenar estão disponíveis para acesso

esses registros.

Registros de Endereço do Sistema: Quatro registros especiais são definidos para se referir às tabelas de descritores suportadas

por 80386.

Registros de Depuração e Teste: A Intel forneceu um conjunto de 8 registros de depuração para depuração de hardware.

desses oito registradores DR0 a DR7, dois registradores DR4 e DR5 são reservados pela Intel.

Os quatro registros iniciais DR0 a DR3 armazenam quatro endereços de ponto de interrupção controláveis pelo programa,

enquanto DR6 e DR7 mantêm respectivamente o status de ponto de interrupção e informações de controle de ponto de interrupção.

Masi dosi regsirtosdeteset sãofornecdiospeol 80386para cachedepágnia,nomeadamenet conrtoel deteset eteset.

registro de status.
MODOS DE ENDEREÇAMENTO
O 80386 suporta ao todo onze modos de endereçamento para facilitar a execução eficiente de operações superiores.
programas de linguagem de nível.

No caso de todos esses modos, o 80386 agora pode ter operandos imediatos de 32 bits ou operandos de registro de 32 bits.

ou deslocamentos.
O 80386 possui uma família de modos escalonados. No caso de modos escalonados, qualquer um dos valores dos registradores de índice

pode ser multiplicado por um fator de escala válido para obter o deslocamento.
O fator de escala válido é 1, 2, 4 e 8.

Os diferentes modos escalonados são os seguintes.

Modo de Índice Escalonado: O conteúdo de um registrador de índice é multiplicado por um fator de escala que pode ser adicionado.

mais para obter o deslocamento do operando.

Modo Indexado Baseado em Escala: Os conteúdos de um registrador de índice são multiplicados por um fator de escala e então

adicionado ao registro base para obter o deslocamento.

Modo Indexado Escalonado Baseado com Deslocamento: O conteúdo de um registrador de índice é multiplicado por um
fator de escala e o resultado é adicionado a um registrador base e um deslocamento para obter o deslocamento de um operando.

Tipos de Dados

Bit

Campo de bits

cadeia de bits

Byte assinado
•Byte não assinado

•Compensação

•Ponteiro

•BCD

BCD Compactado

•Personagem

•Cordas
Modo de Endereço Real do 80386:

Após o reinício, o 80386 começa a partir do local de memória FFFFFFF0H no modo de endereço real.
modoreal, 80386 funciona como um 8086 rápido com registradores e tipos de dados de 32 bits.

No modo real, o tamanho padrão do operando é de 16 bits, mas operandos de 32 bits e modos de endereçamento podem ser
usado com a ajuda de prefixos de substituição.

O tamanho do segmento em modo real é 64k, portanto o endereçamento efetivo de 32 bits deve ser inferior a
0000FFFFFH. O modo real inicializa o 80386 e o prepara para o modo protegido.

Endereçamento de Memória em Modo Real:


No modo real, o 80386 pode endereçar no máximo 1MB de memória física usando endereços
linhas A0-A19.

•A unidade de paginação está desativada no modo de endereçamento real, e, portanto, os endereços reais são os mesmos que os

endereços físicos.
Para formar um endereço de memória físico, os conteúdos dos registradores de segmento apropriados (16 bits) são deslocados.

deixado por quatro posições e então adicionado ao endereço de deslocamento de 16 bits formado usando um dos
modos de endereçamento, da mesma forma que no modo de endereço real 80386.

•O segmento em modo real 80386 pode ser lido, gravado ou executado, ou seja, não há proteção disponível.

•Qualquer busca ou acesso além do limite de segmento gera a exceção 13 em modo de endereço real.
Os segmentos em modo real 80386 podem ser sobrepostos ou não sobrepostos.

A tabela de vetores de interrupção do 80386 foi alocada a um espaço de 1Kbyte começando de 00000H até
003FFH.
Modo Protetor do 80386:

•Todas as capacidades do 80386 estão disponíveis para utilização em seu modo de operação protegido.

•O 80386 em modo protegido suporta todo o software escrito para 80286 e 8086 a ser executado.
sob o controle das habilidades de gerenciamento de memória e proteção do 80386.

•O modo protegido permite o uso de instruções adicionais, modos de endereçamento e capacidades de


80386.

Endereçamento de Memória em Modo Protegido:

Neste modo, o conteúdo dos registradores de segmento é usado como seletores para endereçar descritores que
contém o limite do segmento, o endereço base e o byte de direitos de acesso do segmento.

O endereço efetivo (offset) é adicionado ao endereço base do segmento para calcular o endereço linear.
o endereço linear é usado como endereço físico, se a unidade de paginação estiver desativada, caso contrário o

A unidade de paginação converte o endereço linear em endereço físico.

A unidade de paginação é uma unidade de gerenciamento de memória ativada apenas no modo protegido.
o mecanismo permite o manuseio de grandes segmentos de memória em termos de páginas de 4Kbyte de tamanho.

A unidade de paginação opera sob o controle da unidade de segmentaçãoA unidade de paginação, se habilitada
converte endereços lineares em endereços físicos, em modo protegido.
Segmentação:

•Tabelas de descritores: Essas tabelas de descritores e registradores são manipulados pelo sistema operacional
para garantir o funcionamento correto do processador e, portanto, a execução correta do programa.

Três tipos das tabelas de descritores 80386 são listados da seguinte forma:

•TABELA DE DESCRITOR GLOBAL (GDT)

TABELA DE DESCRITORES LOCAIS (LDT)

TABELA DE DESCRITORES DE INTERRUPÇÃO (IDT)

•Descritores: Os descritores 80386 têm um limite de segmento de 20 bits e um endereço de segmento de 32 bits.
O descriptor do 80386 é uma quantidade de 8 bytes que contém os bits de direitos de acesso ou atributos, juntamente com a base e o limite.
dos segmentos.

•Bits de Atributo do Descritor: O bit A (acessado) indica se o segmento foi


foi acessado pela CPU ou não.

•O campo TYPE decide o tipo de descritor e, portanto, o tipo de segmento.

O bit S decide se é um descritor de sistema (S=0) ou um descritor de segmento de código/dados


(S=1).

O campo DPL especifica o nível de privilégio do descritor.

•O bit D especifica o tamanho da operação do segmento de código. Se D=1, o segmento é um operando de 32 bits.
segmento, caso contrário, é um segmento de operando de 16 bits.

•O bit P (presente) indica se o segmento está presente na memória física ou não. Se


P=1, o segmento está presente na memória física.

•O bit G (granularidade) indica se o segmento é endereçável por página. O bit zero deve
permanecer zero para compatibilidade com processos futuros.

O campo AVL (disponível) especifica se o descritor é para usuário ou para o sistema operacional.
sistema.
O 80386 tem cinco tipos de descritores listados da seguinte forma:

[Link] de Segmentos de Código ou Dados.

[Link] do Sistema.

[Link] locais.

[Link] de Segmento de Estado da Tarefa (TSS).

[Link] de GATE.

Paging:

Operação de Paging:

A paginação é uma das memórias técnicas de gestão utilizadas para multitarefa de memória virtual
sistema operacional.

•O esquema de segmentação pode dividir a memória física em segmentos de tamanho variável, mas o
a paginação divide a memória em páginas de tamanho fixo.

•Os segmentos devem ser os segmentos lógicos do programa, mas as páginas não têm
qualquer relação lógica com o programa.
As páginas são apenas porções de tamanho fixo do módulo de programa ou dados.
A vantagem do esquema de paginação é que o segmento completo de uma tarefa não precisa estar na memória física.
memória a qualquer momento.

•Apenas algumas páginas dos segmentos, que são necessárias atualmente para a execução, precisam ser
disponível na memória física. Assim, a necessidade de memória da tarefa é substancialmente
reduzido, relinquindo a memória disponível para outras tarefas.

•Sempre que as outras páginas da tarefa forem necessárias para execução, elas podem ser buscadas do
armazenamento secundário.

•A página anterior que é executada não precisa estar disponível na memória, e portanto o espaço
ocupado por eles pode ser cedido para outras tarefas.

Assim, o mecanismo de paginação fornece uma técnica eficaz para gerenciar a memória física para
sistemas de multitarefa.

Unidade de Paginação:

A unidade de paginação do 80386 usa um mecanismo de tabela em dois níveis para converter um endereço linear fornecido por

unidade de segmentação em endereços físicos.

A unidade de paginação converte o mapa completo de uma tarefa em páginas, cada uma com tamanho de 4K. A tarefa é ainda
tratado em termos de sua página, em vez de segmentos.
•A unidade de paginação lida com todas as tarefas em termos de três componentes, a saber, diretório de páginas, tabelas de páginas.

e a própria página.

Registro Base do Descritor de Paginação:

O registrador de controle CR2 é usado para armazenar o endereço linear de 32 bits onde ocorreu a falha de página anterior.

detectado.

•O CR3 é utilizado como registrador de endereço base físico do diretório de páginas, para armazenar o início físico
endereço do diretório da página.

Os 12 bits inferiores do CR3 estão sempre zero para garantir um diretório alinhado ao tamanho da página. Um movimento
a operação para CR3 carrega automaticamente os caches de entrada da tabela de páginas e uma operação de troca de tarefa, para

carregar CR0 de forma adequada.

Diretório da Página

Isso tem no máximo 4Kbytes de tamanho. Cada entrada de diretório tem 4 bytes, totalizando assim 1024 entradas.
permitido em um diretório. Os 10 bits superiores do endereço linear são usados como um índice para o correspondente.
entrada do diretório de página. As entradas do diretório de página apontam para tabelas de páginas.
Tabelas de Página:

Cada tabela de páginas tem um tamanho de 4Kbytes e muitas contêm um máximo de 1024 entradas. A tabela de páginas

as entradas contêm o endereço de início da página e as informações estatísticas sobre a página.

•O endereço da página de quadro de 20 bits superior é combinado com os 12 bits inferiores do endereço linear.
os bits de endereço A12-A21 são usados para selecionar as entradas da tabela de 1024 páginas. A tabela de páginas pode ser compartilhada

entre as tarefas.

O bit P das entradas acima indica se a entrada pode ser usada na tradução de endereços.

SeP=1,aentradapodeserusadanatraduçãodeendereços,casocontrário,nãopodeserutilizada.

•O bit P da página atualmente executada está sempre alto.

O bit acessado A é definido pelo 80386 antes de qualquer acesso à página. Se A=1, a página foi acessada.
senão não acessado.

O bit D (bit sujo) é definido antes que uma operação de gravação na página seja realizada. O bit D é
indefinido para entradas do diretor da página.

Os bits reservados pelo sistema operacional são definidos pelo software do sistema operacional.

Os bits de Usuário/Supervisor (U/S) e o bit de leitura/gravação são usados para fornecer proteção. Esses bits são
decodificado para fornecer proteção sob o modelo de proteção de 4 níveis.

•O nível 0 é suposto ter o maior privilégio, enquanto o nível 3 é suposto ter o


mínima privilégio.

Esta proteção fornecida pela unidade de paginação é transparente para a unidade de segmentação.
Modo virtual 8086:

Em seu modo de operação protegido, o 80386DX oferece ambientes de operação virtuais 8086 para
execute os programas 8086.
O modo real também pode ser usado para executar os programas 8086 junto com as capacidades do 80386,
como proteção e algumas instruções adicionais.
Uma vez que o 80386 entra no modo protegido a partir do modo real, ele não pode voltar ao modo real.
modo sem uma operação de reinicialização.
Assim, o modo de operação virtual 8086 do 80386 oferece a vantagem de executar 8086
programas enquanto em modo protegido.
O mecanismo de formação de endereços no modo virtual 8086 é exatamente idêntico ao do 8086 real.
modo.
Em modo virtual, o 8086 pode endereçar 1Mbyte de memória física que pode estar em qualquer lugar na
Espaço de endereçamento de 4Gbytes do modo protegido do 80386.

Assim como o modo real 80386, os endereços no modo virtual 8086 estão dentro de 1 megabyte de memória.
No modo virtual, o mecanismo de paginação e as capacidades de proteção estão disponíveis a serviço de
os programadores.
O 80386 suporta multiprogramação, portanto, mais de um programador pode usar a CPU ao mesmo tempo.
uma vez.

Você também pode gostar