Intel 80386
Kategorie: Nezařazeno (celkem: 23179 referátů a seminárek)
Informace o referátu:
- Přidal/a: anonymous
- Datum přidání: 08. srpna 2008
- Zobrazeno: 1894×
Příbuzná témata
Intel 80386
Intel 80386 je mikroprocesor vyráběný firmou Intel a využívaný jako CPU mnoha osobních počítačů od roku 1986 ca do r. 1994. Navazuje na procesory architektury x86, ale architektura byla natolik rozšířena, že se počítá jako zakladatel nové architektury i386.
Procesor má 32bitovou adresovou sběrnici, maximální velikost operační paměti 232 B = 4 096 MB. Procesor má datovou sběrnici o šířce 32bitů (i386DX) nebo u low-end varianty (i386SX) 16bitovou datovou sběrnici. Procesor nemá interní cache paměť.
Procesor má tři módy činnosti - reálný, chráněný a virtuální 8086 (V86). V chráněném režimu mohou programy běžet na jedné privilegované a třech neprivilegovaných úrovních oprávnění. Některé instrukce a registry jsou přístupné pouze v reálném módu nebo na privilegované úrovni chráněného módu. V reálném a V86 módu se procesor chová podobně jako procesor 8086, hlavně z hlediska segmentů adresového prostoru.
Procesor má poměrně složitý systém řízení paměti, kde se adresa, použitá v programu, pomocí dvou a více tabulek v paměti - stránkového adresáře a stránkových tabulek - přepočítává na skutečnou. Systém řízení paměti má dvě úrovně: segmentování, stránkování. Segmentování je vyšší úroveň a nelze ho zcela vypnout (minimální nastavení je jeden kódový a jeden datový segment přes celou paměť). Segmenty mohou mít libovolnou velikost, zatímco stránky mají dvě pevné velikosti - 4KB a 4MB. V reálném režimu je adresace kompatibilní s procesorem 8086, všechny segmenty mají délku 64kB (16bit) a lze takto adresovat paměť do velikosti 1MB.
Registry
Systém registrů je převzat z 8086, jsou rozšířeny o další, jsou 32bitové, vyjma segmentových registrů, které mají viditelnou 16bitovou část a neviditelnou (softwarově nepřístupnou) 64bitovou část cachující v chráněném módu obsah descriptoru. Aplikační registry jsou určeny k přímému použití s výjimkou registru (esp/sp) vyhrazeného jako ukazatel zásobníku:
- Šest 16bitových segmentových reg. (cs,ds,es,ss,fs,gs)
- Osm 32bitových aplikačních reg. (eax,ebx,ecx,edx,esi,edi,ebp,esp)
- U aplikačních registrů lze adresovat i spodních 16 bitů (ax,bx,cx,dx,si,di,bp,sp)
- U registrů pro všeobecné použití lze adresovat i spodních 2 x 8 bitů (al,ah,bl,bh,cl,ch,dl,dh)
- Instrukční čítač 32bitový (eip) nebo 16bitový (ip) podle velikosti slova instrukčního segmentu
- Řídící registr a množina vlajek (eflags)
Registry, se kterými je možné manipulovat pouze v privilegovaném režimu:
- Jeden řídící 32bitový registr s množinou vlajek (cr0), spodních 16bitů odpovídá registru MSW procesoru Intel 80286.
- Dva registry pro správu stránkování (cr2,cr3)
- Ladící registry (dr0,dr1,dr2,dr3,dr6,dr7)
Důležité vlajky v registru eflags:
VM (Virtual 8086 Mode) – je-li tento přepínač nastaven na 1 v chráněném režimu, aktivní proces je v režimu V86
IOPL (IO Priority Level) - toto pole je dvoubitové a udává prioritu potřebnou k provádění vstupů a výstupů. Je-li priorita programu, který provádí v/v operaci nižší (numericky vyšší) než obsah pole IOPL, operace se neprovede a namísto toho se vyvolá výjimka GP (General Protection Fault)
CF Carry - přenos do vyššího řádu aritmetických operací jednotky ALU
OF Overflow - přetečení aritmetických operací jednotky ALU
ZF Zero - výsledek aritmetické nebo logické operace je nula
AF AuxCarry - přenos do vyššího 4bitového nible aritmetických operací jednotky ALU s BCD kódem
PF Parity - sudá nebo lichá parita výsledku
DF Direction - řídí směr zpracování při řetězcových operacích.
Důležité vlajky cr0:
PG - zapnutí stránkování
PE - zapnutí chráněného módu
Seznam mikroprocesorů Intelu | Seznam Intel slotů a socketů |
4004 | 4040 | 8008 | 8080 | 8085 | 8086 | 8088 | iAPX 432 | 80186 | 80188 | 80286 | 80386 | 80486 | i860 | i960 | Pentium | Pentium Pro | Pentium II | Celeron | Pentium III | Pentium 4 | Pentium M | Pentium D | Pentium Extreme Edition | Core | Xeon | Itanium | Itanium 2 (ne-x86 procesory označeny kurzívou) |