32
3. Kolejne generacje mikroprocesorów firmy INTEL
- efektywna wymiana zadań obsługiwanych w danym momencie przez procesor, umożliwiająca realizacje wielu zadań "równocześnie”.
W procesorze 80286 za pomocą jednego rozkazu można zachować stan wszystkich rejestrów starego zadania i załadować do nich nowe wartości związane z nowym zadaniem. Działanie to, zajmujące w starszych systemach wielozadaniowych wiele cennego czasu procesora, tutaj trwa zaledwie 22 mikrosekundy (dla zegara 8 MHz). Ponieważ w procesorze 80286 występują wszystkie rejestry procesorów 8086 i 80186, które w dalszym ciągu są rejestrami ló-bitowymi, obliczanie 24-bitowego adresu fizycznego (16 MB pamięci operacyjnej) jest dosyć złożone. W trybie adresowania wirtualnego rejestry segmentowe CS, SS, DS i ES nie zawierają adresu początku segmentu, pełnią inną funkcję i nazywają si$ selektorami (ang. selector register). W dalszym ciągu są to jednak fizycznie te same rejestry. 16-bitowe selektory (rys. 3.1) są podzielone na trzy pola
- bity 0 i 1 określają poziom uprzywilejowania (RPL),
- bit 2 wskazuje rejestr tablicy deskryptorów globalnych - CiDTR bądź rejestr tablicy deskryptorów lokalnych - LDTR,
- bity 3... 15 zawierają wartość indeksu.
15
3 2 10
Indeks |
RPL | ||
Rys. 3.1. Selektory segmentów: CS, I)S, SS i ES
1 -GDTR 0 -LDTR
Procesor 80286 zawiera następujące dodatkowe rejestry (rys. 3.2)
MSW (ang. machinę status word ) - rejestr stanu,
TR (ang. task register) - rejestr zadania,
GDTR (ang.global descriptor table register) - rejestr tablicy deskryptorów globalnych, LDTR (ang. local descriptor table register) - rejestr tablicy deskryptorów' lokalnych, IDTR (ang. intemipl descriptor table register) - rejestr tablicy deskryptorów przerwań.
Rejestr znaczników ma dwa dodatkowe (w stosunku do mikroprocesora 8086 - zob. p. 2.4 i rys. 2.4) pola specjalne. Ich znaczenie oraz znaczenie bitów rejestru stanu (rys. 3.3) jest następujące
NT (ang. nested task flag ) - znacznik zagnieżdżenia zadania,
IOPL (ang. HO privilege level ) - poziom uprzywilejowania operacji wejścia-wyjścia,
PE (ang. protected modę enable ) - tryb pracy procesora - adresowania rzeczywistego bądź wirtualnego,
TS (ang. task swith ) - przełącznik zadania,
MP (ang. monitorprocessor extension ) - wskaźnik rozszerzenia procesora,
EM (ang. emulate processor extension ) - rozszerzenie procesora emulowane programowo.
Po wyzerowaniu procesora 80286 rejestr MSW przyjmuje wartość 0FFF0H ustawiając tryb adresowania rzeczywistego.
powered by
3.2. Mikroprocesor 80286
-- |
BP | |
Dl | ||
SI | ||
SP |
Wskaźnik bazy
Rejestr indeksowy przeznaczenia Rejestr indeksowy źródła Wskaźnik stosu
15
o
I*LAGS
MSW
o
| Alf" |
AL |
r bh |
BL |
^"ĆH |
CL |
DII |
DL |
15 0 |
AX - akumulator BX - rejestr bazowy CX - rejestr zliczający DX - rejestr danych
15 0
Rejestr wskaźników Słowo stanu
15
0
Wskaźnik rozkazów
Selektory segmentów. |
Dostęp do segmentu: |
Adres początku segmentu |
Długość segmentu | |
CS |
program | |||
DS |
dane | |||
SS |
stos | |||
ES |
ekstra |
15 0 47 40 39 16 15 ’ 0
Rejestry
segmentowe
Deskryptory segmentów ładowane automatycznie, niedostępne programowo
15 0
TR
LDTR
47 40 39 16 15 0
Zadanie
Rejestry niedostępne programowo, ładowane automatycznie przez CPU
39 16 15 0
GDTR
IDTR " ippirl
Adres tablicy deskryptorów
Rys- 3.2. Rejestry mikroprocesora 80286
MSW
f------ |
3 2 10 |
TSHM MF PE| | |
1 nic wykorzystywany, rezerwa INTEL |
Rys. 3.3. Rejestr znaczników i rejestr stanu