Návrh digitálnych systémov



Yüklə 187.34 Kb.
tarix27.02.2016
ölçüsü187.34 Kb.


Slovenská technická univerzita

Fakulta informatiky a informačných technológií

Ilkovičova 3, 842 16 Bratislava 4

Milan Korenica


Návrh digitálnych systémov
Návrh štruktúry aplikačno-špecifického procesora


Ročník: 5.

Školský rok: 2005/2006

Obsah





Obsah 3

1. Špecifikácia správania 4

1.1 Prvé zjemnenie 4

1.2 Druhé zjemnenie 7

1.3 Stavový automat 11

1.4 Testovacie okolie 12

2. Opis štruktúry 14

2.1 Graf toku údajov 14

2.2 Návrh štruktúry operačnej časti 15

2.3 Graf toku riadenia 17

2.4 Konečný stavový stroj riadiacej jednotky 17

3. Poznámky k implementácii 20





1. Špecifikácia správania

1.1 Prvé zjemnenie


V prvom zjemnení sme globálny proces zjemnili na niekoľko procesov zodpovedajúcich jednotlivým insštrukciám. K stavovým premenným pribudol register AW (Address Word), ktorý uchováva druhú časť inštrukcie v prípade inštrukcií LD, ST a BRZ.
System PROC43-J1 // prvé zjemnenie špecifikácie
DT udaj [cele cislo <-215,+215-1>, operacia + je v dvojkovom doplnkovom kode];

subor_udajov pole P[0-7] udaj;

adresa [nezaporne cislo <0, 220-1>; operacia + je mod 220]

konstanta cele cislo <-29,+29-1> c dopln. kode;

cislo_reg nezaporne cislo <0, 7>;

signal bollovska hodnota {0,1}

instr_symbol symbol{ADD,ADI,NAND,SLT,LD,ST,BRZ,JRE};

instrukcia1 zaznam

opkod: instr_symbol є {ADD,NAND,SLT,JRE};

reg1: cislo_reg;

reg2: cislo_reg;

reg3: cislo_reg;

instrukcia2 zaznam

opkod: instr_symbol є {ADI};

reg1: cislo_reg;

konst: konstanta;

instrukcia3 zaznam

opkod: instr_symbol є {LD,ST,BRZ};

reg1: cislo_reg;

adresa: adresa; //4+16 byte

r_stav є {OD, AF, IF}
PORTY

vstup D data, instrukcia1, instrukcia2, instrukcia3;

Res signal;

Wait, Clk signal;

vystup D data;

A adresa;

Rd/Wr, Req signal;
OPER STAV

PC adresa;

R pole[0-7] udaj; //registre

IR instrukcia;

AW udaj; // druha cast instrukcii LD, ST a BRZ

Contr r_stav;


proces PrGlobal = Reset.

[ReadInstr.(

(IR.opkod=ADD): ANDoper,

(IR.opkod=NAND): NANDoper,

(IR.opkod=SLT): SLToper,

(IR.opkod=ADI): ADIoper,

(IR.opkod=LD): ReadAddr.LDoper,

(IR.opkod=ST): ReadAddr.SToper,

(IR.opkod=BRZ): ReadAddr.BRZoper,

(IR.opkod=JRE): JREoper )]ω;



agent ReadInstr

SI Contr = IF;

TE es, up(CLK=1), ef;

KM (u; es; u). (Wait=0; ; u)*. (Wait=1 ; ;u).(Wait=1; ; A=PC, Rd/Wr=1, Req=1)+ .(Wait=0, D=d ; ; Req=1).(Wait=0; ; Req=0)*.(Wait=1;ef; Req=0);

g IR := d; // IR obsahuje inštrukciu

PC := PC+1;

Contr := OD;
agent ADDoper

SI Contr = OD;

TE es, up(CLK=1), ef;

KM (u; es; u)(u; ef; u);

g R[IR.reg3] := R[IR.reg1] + R[IR.reg2];

Contr := IF;


agent NANDoper

SI Contr = OD;

TE es, up(CLK=1), ef;

KM (u; es; u).(u ; ef ; u);

g R[IR.reg3] := R[IR.reg1] nand R[IR.reg2];

Contr := IF;


agent SLToper

SI Contr = OD;

TE es, up(CLK=1), ef;

KM (u; es; u).(u ; ef ; u);

g R[IR.reg3] := ak < tak 1 inak 0;

Contr := IF;


agent ADIoper

SI Contr = OD;

TE es, up(CLK=1), ef;

KM (u; es; u).(u ; ef ; u);

g R[IR.reg1] := R[IR.reg1] + IR.konst;

Contr := IF;


agent ReadAddr

SI Contr = OD;

TE es, up(CLK=1), ef;

KM u; es; u). (Wait=0; ; u)*. (Wait=1 ; ;u).(Wait=1; ; A=PC, Rd/Wr=1, Req=1)+ .(Wait=0, D=d ; ; Req=1).(Wait=0; ; Req=0)*.(Wait=1;ef; Req=0);

g AW := d; //druha cast instrukcie

PC := PC + 1; // inkrementujeme PC, lebo toto je druhe slovo instrukcie

Contr := AF;


agent LDoper

SI Contr = AF;

TE es, up(CLK=1), ef;

KM (Wait=1; es; u).(Wait=1 ; ; A= IR[3-0].AW, Req=1, Rd/Wr=1) +

.(Wait=0, D=d ; ; Req=1). (u; ef ; Req=0)



g R[IR.reg1] := d;

Contr := IF;


agent SToper

SI Contr = AF;

TE es, up(CLK=1), ef;

KM (Wait=1; es; u).(Wait=1; ;A=IR[3-0].AW, D=R[IR.reg1], Rd/Wr=0, Req=1)+

.(Wait=0 ; ; A= IR[3-0].AW, D=R[IR.reg1], Rd/Wr=0, Req=1).

.(Wait=0 ; ; A= IR[3-0].AW, D=R[IR.reg1] , Req=0, Rd/Wr=1)

. (u; ef ; Req=0)



g Contr := IF;
agent BRZoper

SI Contr = AF;

TE es, up(CLK=1), ef;

KM (u; es; u).(u ; ef ; u);

g PC := ak = 0 tak IR[3-0].AW inak PC;

Contr := IF;


agent Reset

TE es, ef;

KM (u;es;u)(u;ef;u);

g PC := 0;

START

PrGlobal (ez or (up(Clk=1) and Res))



1.2 Druhé zjemnenie

V druhom zjemnení sme agenty pre jednotlivé insštrukcie rozložili na agenty obsahujúce jednu mikrooperáciu. Do operačného stavu pribuli registre MAR (záchytný register pre adresu) a MBR (záchytný register pre dáta). Takýto zápis popisuje systém na úrovni medziregistrových prenosov.


System PROC43-J2 // druhé zjemnenie špecifikácie
DT udaj [cele cislo <-215,+215-1>, operacia + je v dvojkovom doplnkovom kode];

subor_udajov pole P[0-7] udaj;

adresa [nezaporne cislo <0, 220-1>; operacia + je mod 220]

konstanta cele cislo <-29,+29-1> c dopln. kode;

cislo_reg nezaporne cislo <0, 7>;

signal bollovska hodnota {0,1}

instr_symbol symbol{ADD,ADI,NAND,SLT,LD,ST,BRZ,JRE};

instrukcia1 zaznam

opkod: instr_symbol є {ADD,NAND,SLT,JRE};

reg1: cislo_reg;

reg2: cislo_reg;

reg3: cislo_reg;

instrukcia2 zaznam

opkod: instr_symbol є {ADI};

reg1: cislo_reg;

konst: konstanta;

instrukcia3 zaznam

opkod: instr_symbol є {LD,ST,BRZ};

reg1: cislo_reg;

adresa: adresa; //4+16 byte

r_stav є {OD, AF, IF}
PORTY

vstup D data, instrukcia1, instrukcia2, instrukcia3;

Res signal;

Wait, Clk signal;

vystup D data;

A adresa;

Rd/Wr, Req signal;
OPER STAV

PC adresa;

R pole[0-7] udaj; //registre

IR instrukcia;

AW adresa; // adresa z instrukcii LD, ST a BRZ

MAR adresa;

MBR udaj;

Contr r_stav;


proces PrGlobal = Reset.[PrInstrRead.(

(IR.opkod=ADD):PrAdd;

(IR.opkod=NAND):PrNAND;

(IR.opkod=SLT):PrSLT;

(IR.opkod=ADI):PrADI;

(IR.opkod=LD):PrLD;

(IR.opkod=ST):PrST;

(IR.opkod=BRZ):PrBRZ);

(IR.opkod=JRE):PrJRE)] ω;
proces PrInstRead = (LdMAR || IncrPC)[EA](Wait=1)[SetMRd](Wait=0) [LdIR](Wait=1);

proces PrReadAddr = (LdMAR || IncrPC)[EA](Wait=1)[SetMRd](Wait=0) [SetAW](Wait=1);

proces PrADD = ADDop;

proces PrNAND = NANDop;

proces PrSLT = (R[IR.reg1]=R[IR.reg2]): Set0reg3;

proces PrADI = ADIop;

proces PrLD = PrReadAddr.MovAdd-MAR.[SetMRd](Wait=0).StReg1(Wait=1);

proces PrST = PrReadAddr.(MovAdd-MAR || LdMBR).[SetMWr](Wait=0).Set0Req(Wait=1);

proces PrBRZ = PrReadAddr. (R[IR.reg1]=0):MovAdd-PC, (R[IR.reg1] != 0):EA;

proces PrJRE = JREop;


agent LdMAR

TE es,ef;

KM (u;es;u)(u;ef;u);

g MAR := PC
agent IncrPC

TE es, ef;

KM (u;es;u)(u;ef;u);

g PC := PC + 1
agent SetMRd

TE es, ef;

KM (Wait=1;es;A=MAR,Req=1,Rd/Wr=1).(u;ef;u)

g MBR := d
agent LdIR

TE es, ef;

KM (Wait=0;es;u).(u;ef;Req=0);

g IR := MBR;
agent SetAW

TE es, ef;

KM (Wait=0;es;u).(u;ef;Req=0);

g AW := MBR;
agent ADDop

TE es, ef;

KM (u;es;u)(u;ef;u);

g R[IR.reg3] := R[IR.reg1] + R[IR.reg2];
agent NANDop

TE es, ef;

KM (u;es;u)(u;ef;u);

g R[IR.reg3] := R[IR.reg1] nand R[IR.reg2];
agent Set1reg3

TE es, ef;

KM (u;es;u)(u;ef;u);

g R[IR.reg3] := 1;
agent Set0reg3

TE es, ef;

KM (u;es;u)(u;ef;u);

g R[IR.reg3] := 0;
agent ADIop

TE es, ef;

KM (u;es;u)(u;ef;u);

g R[IR.reg1] := R[IR.reg1] + IR.konst;
agent MovAdd-MAR //adresa sa sklada z 4+16 bitov

TE es,ef;

KM (u;es;u)(u;ef;u);

g MAR := IR[3-0].AW;
agent StReg1

TE es,ef;

KM (u;es;u)(u;ef;Req=0);

g R[IR.reg1] := MBR;
agent LdMBR

TE es, ef;

KM (u;es;u)(u;ef;u);

g MBR := R[IR.reg1];
agent SetMWr

TE es, ef;

KM (Wait=1;es;A=MAR,D=MBR,Rd/Wr=0,Req=1).(u;ef;A=MAR,D=MBR);
agent Set0Req

TE es, ef;

KM (wait=0;es; A=MAR,D=MBR,Rd/Wr=1,Req=0)(u;ef;Req=0);
agent MovAdd-PC

TE es,ef;

KM (u;es;u)(u;ef;u);

u PC := IR[3-0].AW;


agent JREop

TE es, ef;

KM (u;es;u)(u;ef;u);

g PC := ;
agent Reset

TE es, ef;

KM (u;es;u)(u;ef;u);

g PC := 0;
START

PrGlobal (ez or (up(Clk=1) and Re));



1.3 Stavový automat

Stavový automat je skonštruovaný z druhého zjemnenia špecifikácie. Prehľadne zobrazuje stavy systému, vstupné predikáty a vykonávané operácie. Z tohto stavového automatu vychádza aj simulácia správania v jazyku VHDL.




Stav

Vstupný vektor

Nasl.

stav


Mikrooperácie

Podprocesy

V PrGlobal



RES

U

IF0

Reset




IF0

U

IF1

LdMAR || IncrPC

PrInstrRead

IF1

Wait=0

IF1

EA

IF1

Wait=1

IF2




IF2

Wait=1

IF2

SetMRd

IF2

Wait=0

IF3




IF3

Wait=0

IF3

LdIR

IF3

Wait=1

OD




OD

IR.opkod=ADD

ADD0







OD

IR.opkod=NAND

NAND0




OD

IR.opkod=SLT

SLT0




OD

IR.opkod=ADI

ADI0




OD

IR.opkod=LD

PRA0




OD

IR.opkod=ST

PRA0




OD

IR.opkod=BRZ

PRA0







OD

IR.opkod=JRE

JRE0




ADD0

u

IF0

ADDop

PrADD

NAND0

u

IF0

NANDop

PrNAND

SLT0

R[IR.reg1]

SLT1




PrSLT

SLT0

R[IR.reg1]>=R[IR.reg2]

SLT2




SLT1

u

IF0

Set1reg3

SLT2

u

IF0

Set0reg3

ADI0

u

IF0

ADIop

PrADI

PRA0

u

PRA1

LdMAR || IncrPC

PrReadAddr

PRA1

Wait=0

PRA1

EA

PRA1

Wait=1

PRA2




PRA2

Wait=1

PRA2

SetMRd

PRA2

Wait=0

PRA3




PRA3

Wait=0

PRA3

SetAW

PRA3

Wait=1,IR.opkod=LD

LD0




PRA3

Wait=1,IR.opkod=ST

ST0




PRA3

Wait=1,IR.opkod=BRZ

BRZ0




LD0

u

LD1

MovAdd-MAR

PrLD

LD1

Wait=1

LD1

SetMRd

LD1

Wait=0

LD2




LD2

Wait=0

LD2

StReg1

LD2

Wait=1

IF0




ST0

u

ST1

MovAdd-MAR

PrST

ST1

Wait=1

ST1

SetMWr

ST1

Wait=0

ST2




ST2

Wait=0

ST2

Set0Req

ST2

Wait=1

IF0




BRZ0

R[IR.reg1]=0

BRZ1




PrBRZ

BRZ0

R[IR.reg1]!=0

IF0




BRZ1

u

IF0

MovAdd-PC

JRE0

u

IF0

JREop

PrJRE






1.4 Testovacie okolie

Aby bolo možné simulovať správanie procesora, bolo potrebné vytvoriť opis správania okolia. Stavový stroj tohto okolia je nasledovný.


Tab. 2: Stavový automat okolia procesora

Stav

Vstupný vektor

Nasl. stav

Operácie

RES

u

NOP

Wait:=1

NOP

Req=0

NOP

 

NOP

Req=1,RdWr=1

DREQ

D:=M[A]

NOP

Req=1,RdWr=0

DREQ

M[A]:=D

DREQ

Req=1

DREQ

 

DREQ

down(CLK=0)

DONE

Wait:=0

DONE

Req=1

DONE

 

DONE

Req=0

NOP

Wait:=1

Do pamäte je vložený krátky program, ktorý otestuje všetky inštrukcie:

0: LD 0 [32]

2: ADI 0 1101b

3: SLT 0 1 2

4: LD 3 [34]

6: LD 4 [35]

8: ADD 3 4 5

9: NAND 3 4 6

10: ST 5 [34]

12: LD 7 [33]

14: BRZ 7 [17] – preskoci jedno slovo

17: LD 6 [33]

19: JRE 6 7 - skok na zaciatok


data:

32: "1010101010101010"

33: "0000000000000000"

34: "0000000000101100"

35: "0000000000000110"

36: "0000000000001011"


2. Opis štruktúry




2.1 Graf toku údajov


Na obrázku 1 je graf toku údajov môjho procesora.


Obr. 1: Graf toku údajov


2.2 Návrh štruktúry operačnej časti

Na obrázku 2 je návrh štruktúry operačnej časti. Riadiace vstupy prvkov nie sú v schéme uvedené kvôli prehľadnosti. Popis prvkov je uvedený nižšie.


Premenné sú reprezentované registrami. Všetky registre majú spoločné označenie niektorých riadiacich vstupov s rovnakou funkciou, preto sú značenia týchto vstupov uvedené len raz a pri ostatných prvkoch je spomenutý len ich výskyt.
MAR je štandardný 20 bitový register. Má jeden dátový vstup a jeden výstup. Má riadený výstup signálom OE a vstup signálom LD.
PC je 20 bitový register. Tak, ako MAR má riadený vstup a výstup, má však aj synchrónny reset R a má riadiaci vstup I pre inkrementovanie o 1. V prípade pretečenia sa pokračuje od 0 a prenos sa neuvažuje.
IR je štandardný 16 bitový register s riadeným vstupom aj výstupom. Výstup je však rozdelený na jednotlivé skupiny bitov podľa významu v inštrukcii. R1, R2 a R3 sú čísla registrov, K je konštanta a A je adresa. V reálnej implementácii nie je potrebné vyrábať takýto register, tieto skupiny bitov sa dajú oddeliť zo samotných výstupov, v schéme je to spravené pre názornosť.
AW je štandardný 16 bitový register s riadeným vstupom a výstupom.
MBR je taktiež štandardný 16 bitový register s riadeným vstupom a výstupom. Keďže má ale dva vstupy a dva výstupy, ktoré sa oba pripájajú na jeden port registra, má na každý vstup a výstup dva uvoľňovacie hradlá a má teda štyri riadiace signály: DOE na zápis hodnoty z registra na dátový výstup procesora, DLD na zápis do registra z dátového vstupu procesora, BOE na výstup hodnoty z registra na vnútornú dátovú zbernicu operačnej časti a BLD na zápis hodnoty z tejto zbernice do registra.
Aritmeticko-logická jednotka ALU operačnej časti má dva 16 bitové vstupy 1 a 2 pre vstup operandov a jeden 16 bitový výstup výsledku R. Riadiaci vstup F má dva bity a vyberá funkciu ALU: sčítanie, logický súčin, porovnanie vstup 1 < vstup 2 a porovnanie vstup 1 >= „0“. Hodnota výsledku v prípade prvých dvoch operácií je súčet resp. logický súčin vstupov 1 a 2. Pri porovnaní vstupov je výstup nasledovný: ak vstup 1 je menší ako vstup 2, na výstupe je hodnota „1“, inak je tam hodnota „0“. Pri porovnaní s nulou sa výstup nenastaví (odpojí sa od zbernice) ale nastaví sa jednobitový signál C: ak vstup 1 je menší ako nula, C je log1, inak log0.
Banka registrov R je presne taká, ako v špecifikácii.
V návrhu sú dva multiplexory M1M2 2 na 1, každý z nich je riadený jednobitovým riadiacim vstupom. Tieto prepínajú vstupy do banky registrov a do ALU.

Doplňujúce informácie k štruktúre operačnej časti: Priamy výstup registra R1 na dátovú zbernicu je hradlovaný signálom R-OE, výstup z ALU je riadený signálom ALU-OE. Taktiež výstup adresy na adresnú zbernicu kombinovaný z IR a AW je riadený signálom AOE1, výstup adresy kombinovaný z registrov R1 a R2 je riadený signálom AOE2. Uvoľňovacie signály OE registrov IR a AW tým pádom nie je potrebné nastavovať.



2.3 Graf toku riadenia

Obr. 3 zobrazuje graf toku riadenia v navrhovanom procesore.



2.4 Konečný stavový stroj riadiacej jednotky

Riadiaca jednotka má nasledovné vstupy a výstupy:



Vstupy: Reset, Wait, IR.opkod, C, Clk

Výstupy: Req, RdWr, MAR-OE, MAR-LD, PC-OE, PC-LD, PC-R, PC-I, IR-LD, AW-LD, MBR-DOE, MBR-BOE, MBR-DLD, MBR-BLD, F, R-OE, ALU-OE, RegWr, M1, M2, AOE1, AOE2
Signály sú označené systémom súčiastka-signál. C je výstup ALU, nastavovaný komparátorom porovnávajúcim na nulu. PC-R je synchrónny reset PC, PC-I je inkrementovanie o 1. F je vstup ALU vyberajúci funkciu. RegWr je signál zápisu do registra.
Samotný FSM špecifikujúci správanie riadiacej jednotky je v tab. 1. Pri každom stave sú uvedené len tie výstupy, ktoré je v tom stave potrebné nastaviť na konkrétnu hodnotu, pri ostatných je hodnota nešpecifikovaná.
FSM riadiacej časti je takmer zhodný s FSM celého procesora z kap. 1.3. Sú tu však dve zmeny: operácia SLT sa vďaka špeciálnemu návrhu ALU vošla do jedného stavu. Naproti tomu operáciu BRZ opäť kvôli návrhu ALU bolo potrebné rozšíriť o jeden stav.

Tab. 1: Konečný stavový stroj riadiacej jednotky



Stav

Vstup

Nasl. stav

Výstupy

RES

Res=1

IF0

PC-R=1

IF0




IF1

MAR-LD=1, PC-OE=1, PC-I=1

IF1

Wait=0

IF1




IF1

Wait=1

IF2




IF2

Wait=1

IF2

MAR-OE=1, MBR-DLD=1, Req=1, RdWr=1

IF2

Wait=0

IF3




IF3

Wait=0

IF3

IR-LD=1, MBR-BOE=1, Req=0

IF3

Wait=1

OD




OD

IR.opkod=ADD

ADD




OD

IR.opkod=NAND

NAND




OD

IR.opkod=SLT

SLT




OD

IR.opkod=ADI

ADI




OD

IR.opkod=LD

PRA0




OD

IR.opkod=ST

PRA0




OD

IR.opkod=BRZ

PRA0




OD

IR.opkod=JRE

JRE




ADD




IF0

F=0, ALU-OE=1, RegWr=1, M1=1, M2=0

NAND




IF0

F=1, ALU-OE=1, RegWr=1, M1=1, M2=0

ADI




IF0

F=0, ALU-OE=1, RegWr=1, M1=0, M2=1

SLT




IF0

F=2, ALU-OE=1, RegWr=1, M1=1, M2=0

JRE




IF0

PC-LD=1, AOE2=1

PRA0




PRA1

MAR-LD=1, PC-OE=1, PC-I=1

PRA1

Wait=0

PRA1




PRA1

Wait=1

PRA2




PRA2

Wait=1

PRA2

MAR-OE=1, MBR-DLD=1, Req=1, RdWr=1

PRA2

Wait=0

PRA3




PRA3

Wait=0

PRA3

AW-LD=1, MBR-BOE=1, Req=0

PRA3

Wait=1

IF0




LD0




LD1

MAR-LD=1, AOE1=1

LD1

Wait=1

LD1

MAR-OE=1, MBR-DLD=1, Req=1, RdWr=1

LD1

Wait=0

LD2




LD2

Wait=0

LD2

MBR-BOE=1, RegWr=1, M1=0

LD2

Wait=1

IF0




ST0




ST1

MAR-LD=1, AOE1=1, MBR-BLD=1, R-OE=1

ST1

Wait=1

ST1

MAR-OE=1, MBR-DOE=1, Req=1, RdWr=0

ST1

Wait=0

ST2

MAR-OE=1, MBR-DOE=1, Req=1, RdWr=0

ST2

Wait=0

ST2

MAR-OE=1, MBR-DOE=1, Req=0, RdWr=1

ST2

Wait=1

IF0




BRZ0




BRZ1

F=4

BRZ1

C=1

BRZ2




BRZ1

C=0

IF0




BRZ2




IF0

PC-LD=1, AOE=1

3. Poznámky k implementácii

Implementácia je rozdelená do štyroch súborov s VHDL kódom:



  • proc_behavior.vhd – obsahuje opis procesora správaním

  • proc_oc_rc.vhd – obsahuje opis procesora pomocou operačnej časti (štruktúrou) a riadiacej časti (správaním)

  • konv.vhd – konverzné funkcie na prevod medzi std_logic a integer typmi

  • okolie.vhd – opis okolia správaním

Súbory je potrebné kompilovať do knižnice work, pretože je v kóde priamo vyžadované jej použitie. Súbor proc_behavior.vhd aj proc_oc_rc.vhd obsahuje tesbench, ktorý testuje daný návrh.


V implementácii nie je premenná IR reprezentovaná štruktúrou, ale binárnym vektorom. Na jednej strane to zjednodušuje implementáciu, na druhej strane to však zhoršuje čitateľnosť. Je tiež potrebné poznať formát inštrukcií, preto ho na tomto mieste uvediem:
instrukcia1:

bity

15 - 13

12 - 10

9 - 7

6 - 4




pole

opkod

reg1

reg2

reg3



instrukcia2:



bity

15 - 13

12 - 10

9 - 0

pole

opkod

reg1

konst

instrukcia3:



bity

15 - 13

12 - 10




3 - 0

pole

opkod

reg1




adresa (prvé 4 bity)






Yüklə 187.34 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azrefs.org 2020
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin