Processzorok fejlődése, működése
(Intel 80486-ig)

Intel

8085

Az Intel 8085 egy 8 bites processzor, amit az Intel 1977-ben fejlesztett ki. A 8085-ös kompatibilis az elődjével (Intel 8080), de kisebb teljesítményű gépekben is megfelelően működik, ami ahhoz vezetett, hogy egyszerűbb, és olcsóbb gépek előállításánál használták fel. A 8085-ös nevében az utolsó számjegy (5) a feszültségigényére utal. A chip csak +5V-t igényel, szemben a 8080-as három tápfeszültségével (-5V, +5V és +12V). Mindkét processzort gyakran használták CP/M operációs rendszert futtató gépekben (az operációs rendszert eredetileg is a 8080-as és 8085-ös processzorokon való futásra tervezték), később pedig mikrokontrollerként (a kis hardverigénye miatt). A CP/M-et futtató gépekben, és a robbanásszerű ütemben terjedő otthoni PC-kben a 80-as évek elején aztán e két chip helyett inkább a Zilog Z80-t használták.
A 8085-öst nagyon hosszú ideig használták mikrokontrollerként. A DECtape mágnesszalag adattároló vezérlőjeként, videóterminálokban, melyekben később sem váltották le.

Az Intel 8085 egy hagyományos Neumann-elvű processzor, melynek alapja az Intel 8080. A csipet NMOS áramkörnek tervezték. Később a "H" verziósat megerősített NMOS eljárással készítették, gyors statikus RAM-ok mellé. Csupán 5 voltos feszültségre volt szüksége, mint a versenytársak processzorainak, ellenben az előd igényével. A 8085-ös körülbelül 6500 tranzisztort használt.
A 8085-ösbe beépítették a 8224-es (órajel-generátor) és a 8228-as (rendszervezérlő) funkcionalitásait, így nőtt az integritás mértéke. Hátrány a kortársakhoz képest (mint pl. a Z80-as) a tény, hogy az adatbusz alsó nyolc bitje és a (szintén nyolcbites) adatbusz multiplexálva használta ugyanazokat a kivezetéseket (ezek neve: AD0...AD7); ez nem jelentett gondot, ha a kifejezetten ehhez a CPU-hoz kifejlesztett 8155-ös, 8355-ös vagy 8755-ös memóriacsipeket használták.
A 8085 négy új megszakítási vonalat is kapott, ezek neve TRAP, RST7.5, RST6.5 és RST5.5 volt – az első a nem maszkolható interrupt (NMI) megfelelője, a többi három neve a megszakítás kezelésére utal: a megszakítás elfogadásakor a CPU végrehajt egy CALL 3CH/34H/2CH utasítást.
Újdonság továbbá beépített 'soros vonal', vagyis szabadon programozható be- és kiviteli vonal (nevük SID és SOD).

Programozási modell:
A 8085-ös binárisan kompatibilis a 8080-as processzorral. Utasításkészletének alapja a Computer Terminal Corporation által kifejlesztett 8008-as utasításkészlete. Csupán néhány jelentéktelen utasítással egészítették ki a 8080-asból vett utasításkészletet.

Regiszterek:

Az Intel 8085 regiszterei

15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

(bit pozíciók)

A fő regiszterek

A

Flags

AF (accumulator and flags)

B

C

BC

D

E

DE

H

L

HL (indirect address)

Mutató regiszterek

SP

Stack Pointer

Program counter (Program számláló)

PC

Program Counter

Status regiszter

 

S

Z

I

H

-

P

-

C

Flags

A processzor 7 darab 8 bites regiszterrel rendelkezett (A, B, C, D, E, H, L). Az "A" a 8 bites akkumulátorregiszter a többi vagy 6 darab 8 bites regiszter, vagy 3 darab 16 bites regiszterpár az utasítástól függően. Néhány utasítás megengedte, hogy a HL 16 bites akkumulátorregiszterként működjön, és, akárcsak a 8080-ban, a memória címek tartalma a HL-re mutatott, amit "M" pszeudóregiszterként lehetett elérni. Volt még egy 16 bites veremmutató regisztere (stack pointer), és egy szintén 16 bites utasításszámláló regisztere.

Parancsok, utasítások:
Mint minden 8 bites processzornak, az egyszerűség kedvéért az utasítások bájtonként vannak kódolva (tartalmazva a regiszter-sorszámokat, de kihagyva a közvetlen adatokat). Néhányukat követte egy-két bájtnyi adat (közvetlen operandus, memória cím, portszám). Volt nyolc egybájtos hívóutasítás (RST) melyek fixen a 00h, 08h, 10h,..., 38h címekre vonatkoztak; ezek rendszerhívások, hardvermegszakítások vagy debuggerek megállási-pontjainak (breakpoint) megvalósításában voltak hasznosak. Az új megszakítási vonalak és a soros vonal kezelésére két új utasítás szolgált, nevük RIM és SIM (Read/Set Interrupt Mask).

Az Intel 8085 néhány technikai adata:
    -64KiB memóriát képes megcímezni
    -256 be- és kimeneti portot képes kezelni
    -kompatibilis az Intel 8080-nal
    -+5V feszültségre van szüksége
    -órajele 3 - 8 MHz
    -40 tűs kialakítású

Történelem    Működés    Kronológia    4004    4040    8008    8080    8085    8086    8088    80186    80286    80386    80486