bai giang vi xu ly_d_dt

Upload: eward-ken

Post on 06-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    1/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    2/194

    2

    M c l c

    L I M U ...........................................................................................................................6TI LI U THAM KH O ........................................................................................................7CH NG I MY VI TNH V H VI X L......................................................................8 1.1. T my tnh l n n my vi tnh .....................................................................................8

    1.1.1. My tnh l n ........................................................................................................81.1.2. My tnh con........................................................................................................81.1.3. My vi tnh ..........................................................................................................8

    1.2. S pht tri n c a cc b vi x l .....................................................................................91.2.1. Th h 1 (1971-1973)...........................................................................................91.2.2. Th h 2 (1974-1977)...........................................................................................91.2.3. Th h 3 (1978-1982).........................................................................................101.2.4. Th h 4 (1983-1999).........................................................................................10

    1.3. c i m k thu t c a cc lo i vi x l.........................................................................11 1.3.1. c i m k thu t c a vi x l Intel...................................................................111.3.2. c i m k thu t c a cc b vi x l Motorola.................................................14

    1.4. Gi i thi u s l c c u trc v ho t ng c a h vi x l..............................................15 1.5. Tm t t ch ng I ...........................................................................................................181.6. Cu h i n t p................................................................................................................19 CH NG II B VI X L INTEL 8086/8088.....................................................................202.1. C u trc c a b vi x l 8086........................................................................................20

    2.1.1. Ch c nng v ho t ng c a cc kh i BIU v EU ..............................................212.1.2. Cc thanh ghi.....................................................................................................23

    2.1.3. Cc kh i ch c nng............................................................................................272.1.4. M hnh l p trnh c a vi x l 8086 ...................................................................28

    2.2. C u tr c chn giao ti p c a vi x l 8086/8088.............................................................302.2.1. C u trc chn giao ti p c a vi x l 8086...........................................................302.2.2. 8086 v 8088 .....................................................................................................38

    2.3. T p l nh c a vi x l 8086.............................................................................................382.3.1. Khun d ng l nh................................................................................................392.3.2. Qu trnh x l l nh...........................................................................................412.3.3. Cc nhm l nh...................................................................................................42

    2.4. H th ng ng t c a vi x l 8086 ....................................................................................422.4.1. Qu trnh x l ng t ...........................................................................................442.4.2. Phn lo i ng t ....................................................................................................452.4.3. Cc ng t BIOS v DOS trong cc my tnh IBM PC..........................................47

    2.5. B ng x l ton h c 8087..........................................................................................492.5.1. T p thanh ghi bn trong c a 8087 ......................................................................512.5.2. K t n i 8087 v 8086/8088 ................................................................................522.5.3. T p l nh c a 8087..............................................................................................532.5.4. Khun d ng d li u c a 8087.............................................................................54

    2.6. Tm t t ch ng II ..........................................................................................................54

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    3/194

    3

    2.7. Cu h i n t p................................................................................................................54 CH NG III L P TRNH H P NG CHO VI X L 8086 ............................................553.1. T p l nh h p ng c a Vi x l 8086..............................................................................55

    3.1.1. Nhm l nh v n chuy n d li u...........................................................................553.1.2. Nhm cc l nh tnh ton s h c..........................................................................573.1.3. Nhm cc l nh thao tc bit .................................................................................603.1.4. Nhm cc l nh lm vi c v i chu i k t .............................................................653.1.5. Nhm cc l nh nh y...........................................................................................663.1.6. Cc l nh i u khi n khc ...................................................................................693.1.7. M t s l nh ng t m m DOS v BIOS.................................................................70

    3.2. C u trc c a dng l nh h p ng ...................................................................................723.3. C u trc c a ch ng trnh h p ng ..............................................................................73

    3.3.1. Khai bo kch c ch ng trnh-Cc m hnh b nh ...........................................733.3.2. Khai bo kch c ng n x p.................................................................................743.3.3. Khai bo o n d li u ........................................................................................753.3.4. Khai bo o n m ch ng trnh .........................................................................75

    3.4. Khung c a ch ng trnh H p ng ................................................................................753.4.1. Khung c a ch ng trnh H p ng dch ra d ng.EXE.....................................753.4.2. Khung c a ch ng trnh H p ng dch ra d ng.COM....................................77

    3.5. Cc ch nh a ch ..................................................................................................783.5.1. Ch a ch thanh ghi.....................................................................................783.5.2. Ch a ch t c th.........................................................................................783.5.3. Ch a ch tr c ti p ......................................................................................793.5.4. Ch gin ti p qua thanh ghi...........................................................................793.5.5. Ch a ch t ng i c s ...........................................................................793.5.6. Ch a ch t ng i ch s c s .................................................................803.5.7. Ph ng php b ng m nh thanh ghi o n (segment override)..........................803.6. D li u c a ch ng trnh...............................................................................................81 3.6.1. Bi u di n cc d li u s .....................................................................................813.6.2. Bi u di n cc d li u k t .................................................................................823.6.3. Cc bi n.............................................................................................................82

    3.7. H p dch v ch y m t ch ng trnh..............................................................................85 3.7.1. Cc b c h p dch v ch y m t ch ng trnh h p ng .......................................853.7.2. Ch ng trnh m ph ng EMU8086....................................................................86

    3.8. Cc th t c (ch ng tr nh con) .....................................................................................893.8.1. Khai bo th t c.................................................................................................893.8.2. Thi hnh m t th t c..........................................................................................893.9. L p trnh ng t v ch ng trnh th ng tr..................................................................903.9.1. Cc ng t DOS....................................................................................................903.9.2. L p trnh ng t ....................................................................................................913.9.3. L p trnh th ng tr...........................................................................................94

    3.10.Tm t t ch ng III ........................................................................................................95CH NG IV PH I GHP B VI X L V I B NH ...................................................974.1. Gi i thi u b nh v gi i m a ch .............................................................................97

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    4/194

    4

    4.1.1. C u trc giao ti p c a b nh .............................................................................974.1.2. Gi i m a ch cho b nh ................................................................................99

    4.2. Ghp n i vi x l 8086 v i b nh ...............................................................................102CH NG V PH I GHP B VI X L V I CC THI T B VO RA.......................1055.1. Cc ph ng php i u khi n vo/ra d li u...............................................................105

    5.1.1. c i m vo ra bng ph ng php thm d (polling): ....................................1055.1.2. c i m vo/ra b ng ph ng php ng t..........................................................1065.1.3. c i m i u khi n vo/ra b ng ph ng php DMA ......................................107

    5.2. Cc hnh th c ph i ghp vo ra...................................................................................1075.2.1. Vo/ra ng b gi a CPU v thi t b ngo i vi ..................................................1095.2.2. Vo/ra khng ng b gi a CPU v thi t b ngo i vi........................................110

    5.3. Cc chip h tr i u khi n vo ra d li u thi t b ngo i vi ........................................1125.3.1. PIC 8259A.......................................................................................................1125.3.2. DMA 8237.......................................................................................................118

    5.4. Giao ti p c ng song song c a my tnh .......................................................................1275.5. Giao ti

    p c

    ng n

    i ti

    p: ................................................................................................128

    5.5.1. Truy n d li u n i ti p khng ng b .............................................................1295.5.2. Truy n d li u n i ti p ng b .......................................................................130

    5.6. Cc chip h tr vo ra d li u .....................................................................................1325.6.1. UART-M ch thu pht khng ng b a nng .................................................1325.6.2. USART-M ch thu pht ng b/khng ng b a nng .................................1365.6.3. PPI 8255-Vo ra d li u song song ..................................................................143

    CH NG VI N I GHP V L P TRNH N I GHP V I NGO I VI ........................1506.1. L p trnh c ng n i ti p dng UART 8250...................................................................150

    6.1.1. L p trnh c ng COM b ng l nh ng t ................................................................1556.1.2. Thi t l p thng s ho t ng c ng COM b ng l nh IN/OUT............................156

    6.2. L p trnh c ng vo ra song song .................................................................................1576.2.1. Cc chip MSI lm c ng I/O song song .............................................................1576.2.2. Cc chip LSI lm c ng I/O (PPI 8255).............................................................159

    6.3. L p tr nh cho vi m ch 8259:........................................................................................1626.3.1. Tr ng thi c a 8259: ........................................................................................1626.3.2. L p trnh cho vi m ch 8259:.............................................................................163

    6.4. L p trnh cho DMA 8237.............................................................................................166CH NG VII GI I THI U V VI I U KHI N 8051 ...................................................1697.1. Gi i thi u chung vi i u khi n 8051............................................................................1697.2. C u tr c chung c a vi i u khi n 8051.......................................................................1717.3. M hnh l p trnh c a vi i u khi n 8051 ...................................................................171

    7.3.1. Thanh ghi chnh ...............................................................................................1727.3.2. Thanh ghi ph ..................................................................................................1727.3.3. Thanh ghi tr ng thi ch ng trnh (PSW).........................................................1727.3.4. Thanh ghi ngn x p (Stack Pointer) .................................................................1737.3.5. Con tr d li u DPTR ......................................................................................173

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    5/194

    5

    7.3.6. Thanh ghi cc c ng P0-P3................................................................................1747.3.7. Thanh ghi b m truy n thng n i ti p (Serial Data Buffer) ...........................1747.3.8. Thanh ghi c a b nh th i/b m..................................................................1747.3.9. Cc thanh ghi i u khi n..................................................................................174

    7.4. T ch c b nh c a b vi i u khi n 8051..................................................................1747.4.1. C u trc Bus ....................................................................................................1747.4.2. B nh ch ng trnh ........................................................................................1757.4.3. B nh d li u .................................................................................................175

    7.5. C ch ng t c a 8051...................................................................................................1777.5.1. Ng t ngoi (External Interrupt) ........................................................................1797.5.2. Cc timer/counter trong 8051........................................................................... 179

    7.6. C ng vo/ra song song (Parra llel I/O Por t) t rong 8051..............................................1817.7. C ng n i ti p (Serial Port) c a 8051 ...........................................................................1847.8. T p l nh c a 8051........................................................................................................186

    7.8.1. Cc ch a ch ............................................................................................1867.8.2. Cc k hi u dng trong vi c m t t p l nh......................................................1877.8.3. Cc l nh tc ng n cc c trong thanh ghi tr ng thi ...................................1887.8.4. Cc l nh tnh ton s h c .................................................................................1887.8.5. Cc l nh th c hi n cc php ton logic............................................................. 1897.8.6. Cc l nh trao i d li u ..................................................................................1907.8.7. Cc l nh thao tc x l i s Boolean.............................................................1927.8.8. Cc l nh r nhnh ch ng trnh........................................................................193

    7.9. T ng k t ch ng VII....................................................................................................194

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    6/194

    6

    L I M UBi gi ng K thu t Vi x l c xy d ng trn c s kinh nghi m rt ra qua vi c

    gi ng d y cho sinh vin cc ngnh Cng ngh thng tin, i n t -Vi n thng v i n-i n t c a H c vi n Cng ngh B u chnh Vi n thng trong m t s nm qua v i m cch cung c p cho sinh vin nh ng ki n th c c b n nh t c tnh h th ng lin quan t imn h c K thu t Vi x l.

    h c c t t nh t mn K thu t vi x l, sinh vin c n ph i n m c ki n th cc s c a cc mn h c lin quan nh :

    K thu t m ch i n t , K thu t m ch logic Ki n trc my tnh Tin h c i c ng K thu t l p trnhBi gi ng K thu t vi x l thng qua qua b vi x l 8086/8088 v cc vi m ch lin

    quan khc c a Intel s cung c p cho sinh vin cc khi ni m cn b n v ch y u v m th vi x l 16 bit: c u trc, nguyn t c ho t ng cng cc m ch ph tr , t p l nh h png v cch l p trnh h p ng , cc ph ng th c i u khi n vo/ra d li u, cch ph i ghpc b n c a vi x l. D a trn nh ng ki n th c c b n ny, sinh vin s d dng ti p c nv t nghin c u cc b vi x l tin ti n h n trong h vi x l Intel c ng nh cc h vix l khc. Ph n cu i cng c a bi gi ng cung c p cho sinh vin nh ng ki n th c v m th vi i u khi n 8051, m t h vi i u khi n r t ph bi n t i Vi t nam sinh vin c th tri n khai cc ng d ng th c t .

    Tuy r t c g ng v c n th n trong qu trnh bin so n nh ng ch c r ng khng trnhkh i nh ng thi u sot, tc gi mong nh n c nhi u ki n ng gp c a cc ngnghi p c ng nh c a cc em sinh vin bi gi ng ngy cng hon thi n h n.

    Th gp xin g i v :- TS. Nguy n Qu S - Khoa k thu t i n t 1, H c vi n Cng ngh B u chnh Vi n thng- Email: [email protected]

    H n i, ngy 10/12/2009Tc gi

    TS. Nguy n Qu S

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    7/194

    7

    TI LI U THAM KH O[1] H Khnh Lm, Gio trnh K thu t Vi x l, H c vi n Cng ngh B u chnh

    Vi n thng, Nh xu t b n B u i n, 2006[2] Vn Th Minh, K thu t Vi x l, Nh xu t b n gio d c, 1997.[3] Xun Ti n, K thu t vi x l v l p trnh Assembly cho h vi x l, Nh

    xu t b n Khoa h c v k thu t, 2006

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    8/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    9/194

    9

    (one- chip- microcomputer), v m t h vi x l c kh nng lm vi c v i s li u c di1 bit, 4 bit, 8 bit, 16 bit. Hi n nay m t s my vi tnh c tnh nng c th so snh c v imy tnh con, lm vi c v i s li u c di t l 32 bit (th m ch l 64 bit). Ranh gi i phn chia gi a my vi tnh v my tnh con chnh v th ngy cng khng r nt. M t d ci m tiu bi u nh n bi t my vi tnh l chng u s d ng cc b x l trung tm(CPU) c ch t o b ng cng ngh m ch vi i n t v i m c tch h p l n, m ch VLSI(Very Large Integration) m ng i ta quen g i l cc b vi x l(microProcessor- P)

    Cc b vi x l hi n c tn th tr ng th ng c x p theo cc h ph thu c vo ccnh s n xu t v chng r t a d ng v ch ng lo i. N i b t nh t trong cc h vi x l l 2 h c a 2 nh s n xu t hng u n i ti ng trong lnh v c ny, l h vi x l 80x86 c aIntel v h vi x l 680xx c a Motorola.

    Trong cc ch ng sau chng ta s quan tm ch y u n cc b vi x l, cc m chph tr v cc h th ng xy d ng trn c s linh ki n c a Intel, tuy th chng ta c ng s gi i thi u l t qua v lch s pht tri n v cc c i m chung nh t c a cc th h vi x lt tr c n nay (Ph n 1.2). Cu i cng chng ta s a ra b ng t ng k t, trong nu racc thng s chnh c a cc b vi x k th h g n y nh t c a 2 nh cung c p n i ti ngla Intel v Motorola (Ph n 1.3).1.2. S pht tri n c a cc b vi x l1.2.1. Th h 1 (1971-1973)

    Nm 1971, trong khi pht tri n cc vi m ch dng cho my tnh c m tay, Intel chora

    i b

    vi x

    l

    u tin l 4004 (4 bit) c

    a Rockwell International, IPM-16 (16 bit) c

    a

    National Semiconductor.

    c i m chung c a cc vi x l th h ny l: di t th ng l 4 bit (c ng c th di h n) Cng ngh ch t o PMOS v i c i m m t ph n t nh , t c th p, gi

    thnh r v c kh nng a ra dng t i nh . T c th c hi n l nh: 10-16s/l nh v i t n s ng h fclk= 0,1- 0,8 MHz. T p l nh n gi n v ph i c n nhi u m ch ph tr m i t o nn m t h vi x l

    hon chnh.1.2.2. Th h 2 (1974-1977)

    Cc b vi x l i di n trong th h ny l cc vi x l 8 bit 6502 c a MOSTechnology, 6800 v 6809 c a Motorola, 8080 v 8085 c a Intel v c bi t l b vi x lZ80 c a Zilog. Cc b vi x l ny c t p l nh phong ph h n v th ng c kh nngphn bi t a ch b nh v i dung l ng n 64KB. C m t s b vi x l cn c kh nng phn bi t c 256 a ch cho cc thi t b ngo i vi (h Intel v Zilog). Chng

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    10/194

    10

    c s d ng r ng ri trong cng nghi p v nh t l t o ra cc my tnh 8 bit n i ti ngm t th i nh Apple II v Commodore 64. T t c cc b vi x l th i k ny u c s nxu t b ng cng ngh NMOS (V i m t n bn d n trn m t n v di n tch cao h nso v i cng ngh PMOS) ho c CMOS (ti t ki m i n nng tiu th ) cho php t ct c t 1-8 s/l nh v i t n s ng h fclk = 1-5 MHz.1.2.3. Th h 3 (1978-1982)

    Cc b vi x l trong th h ny c i di n l cc b vi x l 16 bit8086/80186/80286 c a Intel ho c 86000/86010 c a Motorola. S ti n b h n h n so v icc b vi x l 8 bit th h tr c l cc b vi x l 16 bit c t p l nh a d ng v i cc l nhnhn, l nh chia v cc l nh thao tc v i chu i k t . Kh nng phn bi t a ch cho b nh ho c cho thi t b ngo i vi c a cc vi x l th h ny c ng l n h n (t 1MB n 16MB cho b nh v t i 64 K a ch cho thi t b ngo i vi i v i h Intel). y l cc b vix l c dng trong cc my IBM PC, PC/XT, PC/AT v cc my Macintosh c aApple. Ph n l n cc b vi x l trong th h ny u c s n xu t b ng cng ngh HMOS v cho php t c t c t 0,1-1s/l nh v i t n s ng h fclk =5-10 MHz.

    Trong th i k ny c ng xu t hi n cc b vi i u khi n (my vi tnh) 8 bit trong m t v nh 8048/49 v 6805R2 (m ch ny cn c thm c ADC 12 bit cho 4 knh u vo t n gt ) ho c cc b vi i u khi n 1 bit trong v nh MC 14500B v 4 bit trong 1 v nh MC141000.

    1.2.4. Th h 4 (1983-1999)Cc b vi x l i di n trong th h ny l cc vi x l 32 bit 80386/80486 v 64 bit

    Pentium c a Intel 60-66MHz, Intel P6-Pentium Pro 120- 133 MHz, Intel Pentium 150-166-200 MHz v i cc m r ng cho multimedia, Intel Pentium II 233-450 MHz, IntelPentium III 500-550 MHz. Cc thng s c b n c a b vi x l ngy cng c c i thi nbao g m:

    t c ngy cng cao (cc b vi x l hi n i c a INTEL t t i t c 800MHz-3GHz,

    r ng knh thng tin d li u ngy cng l n nh : 32, 64 bit.i u gip cho cc bi ton thi t k s d ng cc h vi x l chuyn d ng v i

    tnh nng a d ng tr nn d dng h n. Song song v i cc h vi x l c a hng INTEL,hng Motorola c ng a ra cc vi x l 32 bit 68020/68030/68040 v cc vi x l 64 bit68060/64. Ngy nay t c c a cc vi x l hi n i c a hng MOTOROLA c ng t trn3GHz. c i m c a cc b vi x l th h ny c s l ng transistor r t l n (t vi 3tri u n trn 50 tri u transistor). Ph n l n cc b vi x l m i th c hi n cc l nh trongm t chu k , v th c t t t c chng u c kh i x l d u ph y ng FPU (Floating-point

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    11/194

    11

    Unit) bn trong. Chng c cc thanh ghi chung 16-32 bit. Nhi u lo i c phn bi t cc t pthanh nghi 32-bit (register file) cho kh i s nguyn (IU-Interger Unit) v t p thanh ghi32-bit cho FPU. Chng c b nh Cache bn trong v i dung l ng ln t i 36KB. a s b nh Cache bn trong phn i: dng cho l nh I_Cache v dng cho d li u D_Cache.Cc b vi x l tin ti n hi n nay (advanced microprocessors) tho mn cc yu c uch t o cc my tnh l n (mainframes) v cc siu my tnh (supercomputers). Cc vi x l th i ny c bus a ch u l 32 bit (phn bi t 4GB b nh ) v c kh nng lm vi cv i b nh o. Ng i ta c ng p d ng cc c ch ho c cc c u trc c s d ng trongcc my tnh l n vo cc b vi x l: c ch x l xen k lin t c dng m l nh (pipeline),b nh cache (b nh l u m), b nh o. Cc b vi x l ny u c Kh i qu n l b nh (MMU) v nhi u khi c cc b ng x l ton h c bn trong. Chnh nh cc c iti n m cc b vi x l th h ny c kh nng c nh tranh c v i cc my tnh nh trong r t nhi u lnh v c ng d ng. Ph n l n cc b vi x l th h ny u c s n xu tb ng cng ngh HCMOS.

    Bn c nh cc b vi x l v n nng truy n th ng th ng c dng xy d ng ccmy tnh v i tp l nh y (complex instruction set computer, CISC) ni trn,trong th i gian ny c ng xu t hi n cc b vi x l c i ti n dng xy d ng cc my tnhv i tp l nh rt g n (reduced instruction set computer, RISC) v i nhi u tnh nng c th so snh v i cc my tnh l n cc th h tr c. l cc b vi x l Alpha c a Digital,PowerPC c a t h p hng Apple- Motorola- IBM... C l hy cn s m, nh ng c ng cnhi

    u bi

    u hi

    n

    c th

    ni

    c r

    ng s

    ra

    i c

    a cc vi x

    l lo

    i RISC chnh l s

    b t u cho m t th h khc trong lch s pht tri n c a cc th h vi x l.

    M t s thng s chnh c a cc b vi x l c a Intel c cho trong B ng I-1, B ngI-2 v B ng I-3.1.3. c i m k thu t c a cc lo i vi x l1.3.1. c i m k thu t c a vi x l Intel

    a/ c i m c a h i808xS pht tri n c a h vi x l i808x ko di kho ng 10 nm. y l h vi x l 8 bit,

    c t n s ho t ng th p.B ng I-1 c i m c a cc vi x l Intel i808x

    TT c i m i8080/i8080A i8085A/i8085AH i8086A/i8086A i8086A/i80C881. Bus d li u 8 bit vo/ra 8 bit vo/ra 8 bit vo/ra 8 bit vo/ra2. Bus a ch 16 bit (ghp) 16 bit (ghp) 20 bit (ghp) 20 bit (ghp)3.

    nh a chb nh 64 kbyte 64 kbyte 1MB 1MB

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    12/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    13/194

    13

    TT c i m i80286 i80386DX i80386SX i80486DX i80486SXl nh/s)

    6.Kh i qu n l b nh (MMU) MMU ngoi MMU ngoi

    MMU

    ngoiMMU trong MMU ngoi

    7.B nh Icachetrong

    16 byte 16 byte 32 byte 32 byte

    8.B nh Dcachetrong

    - 256 byte 256 byte 8 kbyte 8 kbyte

    9. ng x l tonh c 80287 ngoi 80387 ngoi

    80387

    ngoiFPU trong 80387 ngoi

    10. T p l nh 8080 m r ng

    8080 m r ng

    8080 m r ng 8080 m r ng

    8080 m r ng

    11.Ki n trc siuh

    ng/

    ng

    ng

    - - - ng ng 5giai o

    n

    ng ng giai o

    n

    12. Cng ngh HMOS CMOS 0,8m

    CMOS 0,8

    m

    biCMOS 0,6

    mCMOS

    13. M t transistor 134E3 275E3 1,6E6 0,9E6

    14. ng v 68 chn DIP PGA 132chn

    QFP 100

    chn

    PGA 168

    chn

    SQFP 208

    chn

    PGA 168

    chn

    SQFP 208

    chn

    15. Ngu n cung c p 5.0 V 3,3 V-5V 3,3V5,0V 3,3 V5,0V 3,3 V5,0V

    16. My tnhIBM PC/AT

    MS-DOS

    IBM PC

    386 DX,

    MS-DOS,

    Windows

    IBM PC

    386 DX,

    MS-DOS,

    Windows

    IBM PC

    386 DX, MS-

    DOS,

    Windows

    IBM PC

    386 DX, MS

    DOS,

    Windows

    17. Nm s n xu t 1982 1985 1988 1993 1991c/ Cc c i m c a h Pentium

    B ng I-3 c i m c a cc vi x l Intel PentiumTT c i m P. 586 P. Pro P6 Pentium II Pentium III Pentium IV1. Bus d li u 64 bit vo/64

    bit ra

    32 bit

    vo/64 bit ra

    32 bitvo/64 bit

    ra

    32 bit vo/64

    bit ra

    32 bit vo/3

    bit ra

    2. Bus a ch 32 bit 32 bit 32 bit 32 bit 32 bit3.

    nh a ch b nh 4 GB 4 GB 4 GB 4 GB 4 GB

    4. Xung nhp 60-133 MHz 60-200 66-450 350 MHz- 1,3-1,7 GHz

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    14/194

    14

    TT c i m P. 586 P. Pro P6 Pentium II Pentium III Pentium IVMHz MHz 1GHz

    5.MIPS (tri ul nh/s) 112

    6. n v qu n l b nh (MMU) MMU trong MMU trong MMU trong MMU trong MMU trong

    7.B nh Icachetrong

    8 kbyte 8 kbyte 16 kbyte 16 kbyte 32 kbyte

    8.B nh Dcachetrong

    8 kbyte 8 kbyte 16 kbyte 16 kbyte 8 kbyte

    9. ng x l tonh c FPU trong FPU trong FPU trong FPU trong FPU trong

    10. T p l nh11.

    Ki n trc siuh ng/ ng ng

    ng

    ngFPU 8 giai

    o n

    ng

    ngFPU 8 giai

    o n

    ng

    ngFPU 8 giai

    o n

    ng

    ngFPU 8 giai

    o n

    ng

    ngFPU 5 giai

    o n12. Cng ngh BiCMOS 0,8

    m

    biCMOS 0,6

    m

    CMOS 0,35

    m

    CMOS

    0,8m

    CMOS,

    CHMOS

    13. M t transistor 3,1E6 5,5E6 7,5E6 1,2E614. ng v 273 chn

    PGA

    387 chn

    PGA

    242 chn

    PGA

    FC-PGA,

    PPGA

    432 chn

    OLGA

    15. Ngu n cung c p 5V 3,1V-3,5V 2,8V-3,3V 1,35V-2V 1,7V16. My tnh

    PC Pentium

    5, MS-DOS,

    Windows

    PC Pentium

    6, MS-DOS,

    Windows

    PC Pentium

    II,

    Windows

    PC Pentium

    III, Windows

    PC Pentium

    IV, Window

    17. Nm s n xu t 1993 1995 1997 2000 Cu i 20001.3.2. c i m k thu t c a cc b vi x l MotorolaSTT c i m 68000 68010 68020 68030 68040 6780601. Nm s n xu t 1979 1983 1984 1987 1989 1994

    2.

    T n s CLK c c i 25Mhz 25Mhz 33Mhz

    33-50

    Mhz

    33-40

    Mhz 66Mhz

    3.MIPS (tri ul nh/s) 2,4 2,4 6,5 12 39 100

    4. S Transistor 200.000 1,2 tri u 2,5 tri u5. Bus s li u 16 bit 16 bit 32 bit 32 bit 32 bit 32 bit6. Bus a ch 24 bit 24 bit 32 bit 32 bit 32 bit 32 bit

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    15/194

    15

    STT c i m 68000 68010 68020 68030 68040 6780607. Kh nng a ch 16MB 16MB 4G 4G 4G 4G8. S chn 64 ho c 68 64 ho c 68 114 118 179 223

    I_Cache

    6B

    I_Cache

    256B

    I_Cache

    256B

    I_Cache

    4KB

    I_Cache

    8KB

    9.

    B nh cache Khng c D_Cache

    256BD_Cache

    4KBD_Cach

    8KB

    10. Ch b nh o Khng C C C C C

    11.C b MMU bn trong

    Khng Khng

    Bn

    ngoi,

    dng

    68851

    C C C

    12. ng x l tonh

    c

    Khng Khng68881/

    68882

    68882 Bn trong Bn tron

    1.4. Gi i thi u s l c c u trc v ho t ng c a h vi x l

    Hnh I-1 Gi

    i thiu s

    kh

    i t

    ng qut c

    a m

    t h

    vi x

    l.Cc kh i ch c nng chnh c a h vi x l g m:

    Kh i x l trung tm (CPU) Kh i b nh chnh (B nh bn d n) Kh i ph i ghp v i cc thi t b ngo i vi (I/O) Cc bus truy n thng tin.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    16/194

    16

    Trong cc thnh ph n trn, b vi x l-kh i x l trung tm c th c thi trn m tchip l m t thnh ph n r t c b n khng thi u c t o nn my vi tnh. Trong th c t b vi x l cn ph i k t h p thm v i cc b ph n i n t khc nh b nh v b ph ighp vo/ra t o nn m t h vi x lhon chnh. C n l u r ng ch m t h th ng cc u trc nh trn, thu t ng h vi x l mang ngha t ng qut h n so v i thu t ng my vi tnh, v my vi tnh ch l m t ng d ng c th c a h vi x l.

    Ba kh i ch c nng u lin h v i nhau thng qua cc ng dy truy n tn hi ug i chung lBus h th ng. Bus h th ng bao g m 3 bus thnh ph n ng v i cc tn hi ua ch, d li u v i u khi n ta c bus a ch, bus d li u v bus i u khi n.

    CPU ng vai tr ch o trong h vi x l. y l m t m ch vi i n t c tchh p r t cao (B vi x l). Khi ho t ng, n c m l nh c ghi d i d ng cc bit 0 vbit 1 (Cc m nh phn) t b nh , sau n s gi i m cc l nh ny thnh cc dy xungi u khi n ng v i cc thao tc trong l nh i u khi n cc kh i khc th c hi n t ngb c cc thao tc . lm c vi c ny bn trong CPU c thanh ghi dng ch a ach c a l nh th c hi n ti p theo g i l thanh ghi con tr l nh (Instruction Pointer-IP) ho cb m ch ng tr nh (Program Counter-PC), m t s thanh ghi a nng khc cng b tnhton s h c v logic (ALU) thao tc v i d li u. Ngoi ra y cn c cc h th ngm ch i n t r t ph c t p gi i m l nh v t t o ra cc xung i u khi n cho ton h th ng.

    CPU g m c 3 thnh ph n chnh: Kh

    i i

    u khi

    n (CU): B

    i

    u khi

    n t

    o cc tn hi

    u i

    u khi

    n di chuy

    n s

    li

    u

    (tn hi u di chuy n s li u t cc thanh ghi n bus ho c tn hi u vi t vo ccthanh ghi), i u khi n cc tc v m cc b ph n ch c nng ph i lm (i u khi nALU, i u khi n c v vi t vo b nh trong...). B i u khi n c ng t o cc tnhi u gip cc l nh c th c hi n m t cch tu n t . B i u khi n c th ci tb ng m ch i n t ho c vi ch ng trnh (microprogram).

    Kh i logic v s h c (ALU): Kh i s h c v logic-ALU c th th c hi n cc phptnh logic v s h c c ng nh th c hi n cc thao tc khc trn d li u nh phnnh php dch, quay...

    Cc thanh ghi g m m t s thanh ghi ph bi n:o Cc thanh ghi a nng

    o Thanh ghi m ch ng trnh (PC: Program Counter),o Thanh ghi tr ng thi (SR: Status Register),o Thanh ghi m TEMP (Temporary),o Cc thanh ghi a ch b nh (MAR: Memory Address Register),

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    17/194

    17

    o Thanh ghi s li u b nh (MDR: Memory Data Register),o IR l thanh ghi l nh.o Cc thanh ghi truy n thng n i b

    Theo quan i m c a ng i l p trnh, cc thanh ghi c th c phn thnh 2 lo i: ccthanh ghi nhn th y c v khng nhn th y c.

    Hnh I-2 C u trc c a b x l tr ung tm (CPU)B nh bn d n hay cn g i l b nh trong (B nh chnh) l m t b ph n khc r t

    quan tr ng c a h vi x l. T i y (trong ROM) ta c th ch a ch ng trnh i u khi nho t ng c a ton h vi x l. Khi b t ngu n, CPU c th l y l nh b nh trong kh i ng h th ng. M t ph n c a ch ng trnh i u khi n h th ng, cc ch ng trnh ngd ng, d li u cng cc k t qu c a ch ng tr nh th ng c l u tr t m th i trongRAM. Cc d li u v ch ng trnh mu n l u tr lu di c b nh ngoi (B nh ph ).

    Kh i ph i ghp vo/ra (I/O) t o ra kh nng giao ti p gi a h vi x l v i th gi i bnngoi. Cc thi t b ngo i vi nh bn phm, chu t, mn hnh, my in, chuy n i s t n gt (D/A converter, DAC) v chuy n i t ng t/s (A/D converter, ADC), a t ... ulin h v i h vi x l qua b ph n ny. B ph n ph i ghp c th gi a bus h th ng v ith gi i bn ngoi th ng c g i l cc c ng. Nh v y tra s c cc c ng vo l ythng tin t ngoi vo v cc c ng ra a thng tin t trong ra ngoi. Ty theo nhu c u

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    18/194

    18

    c th c a cng vi c, cc m ch c ng ny c th c xy d ng t cc m ch logic ngi n ho c t cc vi m ch chuyn d ng l p trnh c.

    Bus a chth ng c t 16, 20, 24 n 32 ng dy song song chuy n t i thng tinc a cc bit a ch. Khi c/ghi b nh CPU s a ra trn bus ny a ch c a nh linquan. Kh nng phn bi t a ch(s l ng a ch cho nh m CPU c kh nng phnbi t c) ph thu c vo s bit c a bus a ch. V d n u m t CPU c s ng dy ach l N=16 th n c kh nng a ch ha c 2N = 65536 =64K nh khc nhau (1K=210 =1024). Khi c/ghi v i c ng vo/ra, CPU c ng a ra trn bus a ch cc bit a cht ng ng c a c ng. Trn s kh i ta d nh n ra tnh m t chi u c a bus a chqua m tchi u c a m i tn. Ch c CPU m i c kh nng a ra a ch trn bus a ch (sau ny tas th y cn m ch DMAC, m ch i u khi n trao i d li u tr c ti p gi a b nh -thi t bngo i vi c ng c kh nng ny).

    Bus d li u th ng c t 8,16, 20, 24, 32 n 64 ng dy ty theo cc b vi x lc th . S l ng ng dy ny quy t nh s bit d li u m CPU c kh nng x kcng m t lc. Chi u m i tn trn bus s li u ch ra r ng y l bus 2 chi u, ngha l d li u c th truy n i t CPU (d li u ra) ho c truy n n CPU (d li u vo). Cc ph n t c u ra n i th ng v i bus d li u u ph i c trang b u ra 3 tr ng thi c th ghp vo c v ho t ng bnh th ng v i bus ny. Khi ni m Word cc h th ng mytnh chnh l s l ng ng (bit) trong Bus d li u.

    Bus i u khi n th ng g m hng ch c ng dy tn hi u khc nhau. M i tn hi ui

    u khi

    n c m

    t chi

    u nh

    t

    nh. V khi ho

    t

    ng CPU a tn hi

    u i

    u khi

    n t

    i cckh i khc trong h , ng th i n c ng nh n tn hi u i u khi n t cc kh i ph i h p

    ho t ng c a ton h th ng nn cc tn hi u ny trn h nh v c th hi n b i cc ng c m i tn 2 chi u, i u khng ph i l d ch tnh hai chi u c a m t tn hi u ml tnh hai chi u c a c m t nhm cc tn hi u.

    Ho t ng c a h vi x l trn c ng x th nhn theo m t cch khc. Trong khi ho t ng v t i m t th i i m nh t nh, v m t ch c nng m i kh i trong h th ng trnt ng ng v i cc thanh ghi trong (n m trong CPU) ho c cc thanh ghi ngoi (n m r irc trong b nh ROM, b nh RAM v trong kh i ph i ghp I/O). Ho t ng c a ton h th c ch t l s ph i h p ho t ng c a cc thanh ghi trong v ngoi ni trn th c hi ns bi n i d li u ho c s trao i d li u theo cc yu c u nh tr c.1.5. Tm t t ch ng I

    Ch ng I t p trung vo qu tr nh pht tri n c a h vi x l c ng nh cc h th ngmy tnh, cc c i m k thu t c a cc b vi x v t ch c c a h vi x l, my tnh.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    19/194

    19

    Ki n th c chnh c n n m v ng trong ch ng ny l cc thnh ph n chnh c a m t h vi x l, cc lo i bus giao ti p gi a cc thnh ph n ny v cc c i m chung c a m t vix l. y l nh ng ki n th c c s cho vi c h c t p cc ch ng sau.1.6. Cu h i n t p

    1. Trnh by cc th h vi x l2. Cc thnh ph n chnh c a m t h vi x l l g? Ch c nng c a cc thnh ph n

    ny?

    3. Cc c i m k thu t c a m t b vi x l?4. So snh c u trc c a m t h vi x l v i my tnh5. So snh c u trc bus i u khi n v bus d li u?

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    20/194

    20

    CH NG IIB VI X L INTEL 8086/8088Sau khi tm hi u qua v c u trc c a h vi x l. Trong ch ng ny ta s i su tm

    hi u m t b vi x l c th v r t i n hnh c a Intel-B vi x l Intel 8086Tr c h t c n ni r l do t i sao y ta l i ch n ch danh b vi x l 8086 tm

    hi u m khng ph i l b vi x l no khc: Th nh t, y l b vi x l n i ti ng m t th i thu c h 80x86 c a Intel, n c

    s d ng trong nhi u lnh v c khc nhau, nh t l trong cc my IBM PC/XT. Ccb vi x l thu c h ny s cn c s d ng r ng ri trong nhi u nm n a, vmy vi tnh k th a c a cc s n ph m trong h 80x86, cc ch ng tr nh vi t cho8086 v n c th ch y trn cc h th ng tin ti n sau ny.

    Th hai, v gc s ph m th y l b vi x l kh n gi n v v vi c d yhi u n l t ng i d hi u i v i nh ng ng i m i b t u thm nh p vo lnhv c k thu t vi x l.

    Th ba, cc h vi x l tuy c khc nhau nh ng xt cho cng c ng c kh nhi ui m ch y u r t gi ng nhau. Do m t khi n m c cc v n k thu t c a8086, ta s c c s n m b t cc k thu t c a cc b vi x l khc cng trongh Intel 80x86 ho c c a cc h khc.

    2.1. C u tr c c a b vi x l 8086Tr c khi gi i thi u t p l nh v cch th c l p trnh cho b vi x l 8086 ho t ng ta

    c n ph i tm hi u k c u trc bn trong c a n.

    Hnh II-1 S kh i c a b vi x l Intel 8086

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    21/194

    21

    2.1.1. Ch c nng v ho t ng c a cc kh i BIU v EUTheo s kh i trn hnh 3.1 ta th y bn trong CPU 8086 c 2 kh i chnh: kh i giao

    di n bus (Bus Interface Unit-BIU) v kh i th c hi n l nh (Execution Unit-EU). Vi c chiaCPU ra thnh 2 ph n lm vi c ng th i c lin h v i nhau qua hng i l nh lm tngng k t c x l c a CPU. Cc bus bn trong CPU c nhi m v chuy n t i tn hi uc a cc kh i khc. Trong s cc bus c bus d li u 16 bit c a ALU, bus cc tn hi ui u khi n EU v bus trong c a h th ng BIU. Tr c khi i ra bus ngoi ho c i vobus trong c a b vi x , cc tn hi u truy n trn bus th ng c cho i qua cc b m nng cao tnh t ng thch cho n i ghp ho c nng cao ph i ghp.

    Hnh II-2 Ki n tr c bn trong c a Vi x l 8086BIU a ra a ch, c m l nh t b nh , c/ghi d li u t vo c ng ho c b nh .

    Ni cch khc BIU chu trch nhi m a a ch ra bus v trao i d li u v i bus.Trong EU ta th y c m t kh i i u khi n (control unit, CU). Chnh t i bn trong kh i

    i u khi n ny c m ch gi i m l nh ( thi hnh l nh). M l nh c vo t b nh c a n u vo c a b gi i m, cc thng tin thu c t u ra c a n s c a nm ch t o xung i u khi n, k t qu l thu c cc dy xung khc nhau (tu theo m l nh)

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    22/194

    22

    i u khi n ho t ng c a cc b ph n bn trong v bn ngoi CPU. Trong kh i EU cnc kh i s h c v logic (arithmetic anh logic unit-ALU) dng th c hi n cc thao tckhc nhau v i cc ton h ng c a l nh. Tm l i, khi CPU ho t ng EU s cung c p thngtin v a ch cho BIU kh i ny c l nh v d li u, cn b n thn n th c l nh v thihnh l nh.

    Trong BIU cn c m t b nh hng i l nh v i dung l ng 6 byte dng ch a ccm l nh c c n m s n ch EU x l.y l m t c u trc m i c c y vo b vix l 8086/8088 do vi c Intel a c ch x l xen k lin t c, dng m l nh (K thu t ng ng-instruction pipelining) vo ng d ng trong cc b vi x l th h m i. Pipelinel m t c ch c ng d ng t nh ng nm 60 t cc my l n. Nhn y chng tacng tm hi u s qua m t cht v c ch ny:

    Trong cc b vi x l cc th h tr c (nh 8085 ch ng h n), thng th ngho t ng c a CPU g m 3 giai o n: c m l nh (opcode fetch), gi i m l nh(decode) v th c hi n l nh (execution).

    Trong m t th i i m nh t nh, CPU th h ny ch c th th c hi n m t trong bacng vi c ni trn v v v y tu theo t ng giai o n s c nh ng b ph n nh tnh c a CPU tr ng thi nhn r i. Ch ng h n, khi CPU gi i m l nh ho c khi nang th c hi n nh ng l nh khng lin quan n bus (thao tc n i b ) th cc buskhng c dng vo vi c g d n n t nh tr ng lng ph kh nng c a chng(hnh 3.2).

    Trong khi t

    b

    vi x

    l 8086/88, Intel s

    d

    ng c ch

    x

    l xen k

    lin t

    cdng m l nh th CPU c chia thnh 2 kh i v c s phn chia cng vi c cho

    t ng kh i: vi c c m l nh l do kh i BIU th c hi n, vi c gi i m l nh v th chi n l nh l do kh i EU m nhi m. Cc kh i ch c nng ny c kh nng lmvi c ng th i v cc bus s lin t c s d ng: trong khi EU l y m l nh t b m6 byte gi i m ho c th c hi n cc thao tc n i b th BIU v n c th c ml nh t b nh chnh r i t chng vo hng i l nh.

    Hng i l nh ny lm vi c theo ki u vo tr cra tr c (first in-first out-FIFO), ngha l byte no c c t vo m tr c s c l y ra x l tr c. N uc s vo/ra lin t c c a dng m l nh trong b m ny th c ngha l c s ph i h p ho t ng hi u qu gi a hai kh i EU v BIU theo c ch x l xen k lin t c dng m l nh lm tng t c x l t ng th .

    K thu t x l xen k lin t c dng m l nh s khng cn tc d ng tng t c x l chung c a CPU n a n u nh trong m l nh c ch a cc m l nh c a cc l nhCALL (g i ch ng trnh con) ho c JMP (nh y), b i v lc cc l nh ny n i dung

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    23/194

    23

    c a b m s b xo v thay th vo l n i dung m i c n p b i cc ml nh m i do l nh nh y ho c g i quy t nh. Vi c ny tiu t n nhi u th i gian h nso v i tr ng h p trong m ch c m l nh c a cc l nh tu n t .

    Hnh II-3 K thu t ng ng tr ong vi x l 8086/8088Trong b vi x l 8086 ta cn th y c cc thanh ghi 16 bit n m trong c hai kh i BIU

    v EU. Ta s l n l t gi i thi u cc thanh ghi ni trn cng ch c nng chnh c a chng.2.1.2. Cc thanh ghi

    a/ Cc thanh ghi o nKh i BIU a ra trn bus a ch 20 bit a ch, nh v y 8086 c kh nng phn bi t

    ra c 220 = 1.048.576 = 1M nh hay 1Mbyte, v cc b nh ni chung t ch c theobyte. Ni cch khc: khng gian a ch c a 8086 l 1Mbyte. Trong khng gian 1Mbyteb nh c n c chia thnh cc vng khc nhau (i u ny r t c l i khi lm vi c ch nhi u ng i s d ng ho c a nhi m) dnh ring :

    Ch a m ch ng trnh. Ch a d li u v k t qu khng gian c a ch ng trnh. T o ra m t vng nh c bi t g i l ngn x p (stack) dng vo vi c qu n l cc

    thng s c a b vi x l khi g i ch ng tr nh con ho c tr v t ch ng trnhcon.

    Trong th c t b vi x l 8086 c cc thanh ghi 16 bit lin quan n a ch u c acc vng (cc o n b nh ) k trn v chng c g i l cc thanh ghi o n (SegmentRegisters). l thanh ghi o n m CS (Code-Segment), thanh ghi o n d li u DS(Data segment). Thanh ghi o n ngn x p SS (Stack segment) v thanh ghi o n d li uph ES (Extra segment). Cc thanh ghi o n 16 bit ny ch ra a ch u c a b n o ntrong b nh , dung l ng l n nh t c a m i o n nh ny l 64 Kbyte v t i m t th i i mnh t nh b vi x l ch lm vi c c v i b n o n nh 64 Kbyte ny. Vi c thay i gitr c a cc thanh ghi o n lm cho cc o n c th dch chuy n linh ho t trong ph m vikhng gian 1 Mbyte, v v y cc o n ny c th n m cch nhau khi thng tin c n l utrong chng i h i dung l ng 64 Kbyte ho c c ng c th n m trm ln nhau do c

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    24/194

    24

    nh ng o n khng c n dng h t o n di 64 Kbyte v v v y nh ng o n khc c th b t u n i ti p ngay sau . i u ny c ng cho php truy nh p vo b t k o n nh (64Kbyte) no n m trong ton b khng gian 1Mbyte.

    N i dung cc thanh ghi o n s xc nh a ch c a nh n m u o n. a chny cn g i l a ch c s . a ch c a cc nh khc n m trong o n tnh c b ngcch c ng thm vo a ch c s m t gi tr g i l a ch l ch hay l ch (Offset), g inh th v n ng v i kho ng l ch c a to m t nh c th no so v i u o n. l ch ny c xc nh b i cc thanh ghi 16 bit khc ng vai tr thanh ghi l ch(Offset register) m ta s ni n sau. C th , xc nh a ch v t l 20 bit c a m t nh no trong m t o n b t k . CPU 8086 ph i dng n 2 thanh ghi 16 bit (m t thanhghi ch a a ch c s , cn thanh kia ch a l ch) v t n i dung c a c p thanh ghi t o ra a ch v t l theo cng th c sau:

    a ch v t l = Thanh ghi o n x 16 + Thanh ghi l chVi c dng 2 thanh ghi ghi nh thng tin v a ch th c ch t t o ra m t lo i a

    ch g i l a ch logic v c k hi u nh sau: Thanh ghi o n: Thanh ghi l chhay segment: offset

    a ch ki u segment: offset l logic v n t n t i d i d ng gi tr c a cc thanh ghic th bn trong CPU v ghi c n thi t truy c p nh no th n ph i c i ra ach v t l r i c a ln bus a ch. Vi c chuy n i ny do m t b ghp a chth c hi n trong kh i BIU th c hi n (ph n t trn hnh 3.1).

    V d

    : cp CS:IP s

    ch

    ra

    a ch

    c

    a lnh s

    p th

    c hi

    n trong o

    n m. T

    i m

    t th

    i

    i m no ta c CS = F000H v IP = FFFOH thCS:IP ~ FOOOHx16 + FFFOH = FOOOOH + FFFOH = FFFFOH

    a ch FFFFOH chnh l a ch kh i ng c a 8086 d u ~ y l ch s t n g ng c a a ch v t l v i a ch logic. a ch cc nh thu c cc o n khc c ng c th tnh c theo cch t ng t nh v y. T nay khi c n ni n n a ch c a m t nh ta c th s d ng c a ch logic l n a ch v t l v bao gi c ng t n t i s t n g nggi a hai lo i a ch ny (thng qua b t o a ch).

    Tr c khi ni n cc thanh ghi khc ta ni thm cht t v tnh a tr c a cc thanhghi o n v thanh ghi l ch trong a ch logic ng v i m t a ch v t l. i u nyc ng ni ln tnh linh ho t c a c ch segment:offset trong vi c nh a ch c a 8086/88. Nhn vo gi tr cu i cng c a a ch v t l ta th y c th t o ra a ch t nhi ugi tr khc nhau c a thanh ghi o n v thanh ghi l ch

    V d : a ch v t l 12345H c th c t o ra t cc a ch logic:Thanh ghi o n: Thanh ghi l ch

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    25/194

    25

    1000H: 2345H

    1200H: 0345H

    1004H: 2305H

    0300H: E345H

    b/ Cc thanh ghi a nngTrong kh i EU c b n thanh ghi a nng 16 bit AX, BX, CX, DX. i u c bi t l

    khi c n ch a cc d li u 8 bit th m i thanh ghi c th tch ra thnh hai thanh ghi 8 bit caov th p lm vi c c l p, l cc t p thanh ghi AH v AL, BH v BL, CH v CL, DHv DL (trong H ch ph n cao, L ch ph n th p). M i thanh ghi c th dng m t cchv n nng ch a cc t p d li u khc nhau nh ng c ng c cng vi c c bi t nh t nhch thao tc v i m t vi thanh ghi no v chnh v v y cc thanh ghi th ng c gncho nh ng ci tn c bi t r t c ngha.

    C th : AX (accumulator, acc): thanh ghi tch lu . Cc k t qu c a cc thao tc s h c

    th ng c ch a y (k t qu c a php nhn, chia). N u k t qu l 8 bit ththanh ghi AL c coi l thanh ghi tch l y.

    BX (base): thanh ghi c s th ng ch a a ch c s c a m t b ng dng trongl nh XLAT.

    CX (count): Thanh ghi b m. CX th ng c dng ch a s l n l p trongtr

    ng h

    p cc l

    nh LOOP (l

    p), cn CL th

    ng cho ta s

    ln d

    ch ho

    c quaytrong cc l nh dch ho c quay thanh ghi.

    DX (data): thanh ghi d li u DX cng BX tham gia cc thao tc c a php nhnho c chia cc s 16 bit. DX th ng dng ch a a ch c a cc c ng trong ccl nh vo/ ra d li u tr c ti p.

    c/ Cc thanh ghi con tr v ch s Trong 8086 cn c ba thanh ghi con tr v hai thanh ghi ch s 16 bit. Cc thanh ghi

    ny (tr IP) u c th c dng nh cc thanh ghi a nng, nh ng ng d ng chnh c am i thanh ghi l chng c ng m nh nh l thanh ghi l ch cho cc o n t ng ng.C th :

    IP (Instruction Pointer): con tr l nh. IP lun tr vo l nh ti p theo s c th chi n n m trong o n m CS. a ch y c a l nh ti p theo ny ng v i CS:IPv c xc nh theo cch ni trn.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    26/194

    26

    BP (base pointer): con tr c s . BP lun tr vo m t d li u n m trong o nngn x p SS. a ch y c a m t ph n t trong o n ngn x p ng v i SS:BPv c xc nh theo cch ni trn.

    SP (stack pointer): con tr ngn x p. SP lun tr vo nh hi n th i c a ngn x pn m trong o n ngn x p SS. a ch nh ngn x p ng v i SS:SP v c xcnh theo cch ni trn.

    SI (source index): ch s g c hay ngu n. SI ch vo d li u trong o n d li u DSm a ch c th y ng v i DS:SI v c xc nh theo cch ni trn.

    DI (destination index): ch s ch. DI ch vo d li u trong o n d li u DS ma ch c th y ng v i DS:DI v c xc nh theo cch ni trn.

    Ring trong cc l nh thao tc v i d li u ki u chu i th c p ES:DI lun ng v i ach c a ph n t thu c chu i ch cn c p DS:SI ng v i a ch c a ph n t thu c chu ig c.

    d/ Thanh ghi c FR (flag register)y l thanh ghi i u khi n v tr ng thi CPU, m i bit c a n c dng ph n nh

    m t tr ng thi nh t nh c a k t qu php ton do ALU th c hi n ho c m t tr ng thi ho t ng c a EU. D a vo cc c ny ng i l p trnh c th c cc l nh thch h p ti p theocho b vi x l (thng th ng l cc l nh nh y c i u ki n). Thanh ghi c g m 16 bitnh ng ng i ta ch dng h t 9 bit c a n lm cc bit c (hnh 3.3).

    CPAZSTIDO

    0123456789101112131415Cc bit

    CPAZSTIDO

    0123456789101112131415Cc bit

    Hnh II-4 Cc bit i u khi n v t r ng thi tr ong thanh ghi c F

    Cc bit c c th : C ho c CF (Carry flag): c nh . CF = 1 khi c nh ho c mu n t MSSP. P ho c PF (Parity flag): c parity. PF ph n nh tnh ch n l (parity) c a t ng s

    bit 1 c trong k t qu .o C PF =1 khi t ng s bit trong k t qu l ch n (even parity, parity ch n).

    y ta t m dng parity d ng nguyn g c trnh s l ng c ng khi ph i dchc m t even parity thnh tnh ch n l ch n ho c odd party thnh tnhch n l l .

    A ho c AF (Auxilialyry carry flag): c nh ph r t c ngha khi ta lm vi c v icc s BCD.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    27/194

    27

    o AF = 1 khi c nh ho c mu n t m t s BCD th p (4 bit th p) sang m t s BCD cao (4 bit cao).

    Z ho c ZF (Zero flag): c r ng. ZF =1 khi k t qu = 0. S ho c SF (Sign flag): c d u. SF = 1 khi k t qu m. O ho c OF (Over flow flag): c trn. OF = 1 khi k t qu l m t s b 2 v t qua

    ngoi gi i h n bi u di n dnh cho n.Trn y l 6 bit c tr ng thi ph n nh cc tr ng thi khc nhau c a k t sau m t thao

    tc no , trong 5 bit c u thu c byte th p c a thanh c l cc c gi ng nh c a b vi x l 8 bit 8085 c a Intel. Chng c l p ho c xo tu theo cc i u ki n c th saucc thao tc c a ALU. Ngoi ra, b vi x l 8086 cn c cc c i u khi n sau y (ccc ny c l p ho c xo b ng cc l nh ring):

    T ho c TF (Trap flag): c b y. TF = 1 th CPU lm vi c ch ch y t ng l nh(ch ny dng khi c n tm l i trong m t ch ng trnh).

    I ho c IF (Interrupt enable flag): c cho php ng t. IF = 1 th CPU cho php ccyu c u ng t (che c) c tc ng.

    D ho c DF (Direction flag): c h ng. DF = 1 khi CPU lm vi c v i chu i k t theo th t t ph i sang tri (v v y D chnh l c li)

    ngha c a cc c kh r rng. Ring c trn c n ph i lm r h n ta hi u cb n ch t v c ch lm vi c c a n. C trn th ng c dng n khi ta lm vi c v i s b 2 c d u. cho vi c gi i thch c n gi n, u tin gi thi t ta lm vi c v i s b2 di 8 bit, k

    t qu

    AL (xem hnh 3.4). Gi C67 l c

    nh

    t

    bit 6 (B6) ln bit 7 (B7),trong B7 l MSB v c ng chnh l bit d u (SF) c a AL. Ta c th ch ng minh cr ng quan h gi a c OF v i cc c CF v C67 tun theo ph ng trnh sau:

    OF = CF C67.

    Ngha l khi th c hi n cc php ton v i s b 2 c d u, hi n t ng trn s x y ra (c OF = 1) n u c nh t MSB (t t l SF) sang CF nh ng l i khng c nh vo chnh n(SF) ho c ng c l i. i u ny c th t ng qut ho cho cc tr ng h p lm vi c v i s b2 c d u v i di 16/32 bit.

    e/ M t s thanh ghi khcNgoi cc thanh ghi trnh by trn, trong vi x l 8086 cn c cc thanh ghi nh

    thanh ghi m u vo c a b s h c v logic, cc thanh ghi truy n thng n i b . y lcc thanh ph c v ho t ng n i b c a b vi x l. Ng i l p trnh khng th s d ngcc thanh ghi ny l p trnh, v v y ng i ta g i chng l cc thanh ghi khng nhn th y c.2.1.3. Cc kh i ch c nng

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    28/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    29/194

    29

    Hnh II-5 M hnh l p trnh c a vi x l 8086Ch c nng c a cc thanh ghi ny c trnh by trong ph n trn. Ngoi ra khi s

    d ng cc thanh ghi trong m hnh l p trnh c n ch :B ng II-1 M t s ch c nng c bi t c a thanh ghi a nng

    Thanh ghi

    a nngThnh ph n Dung

    l ng Cng d ngAH 8 bit

    AX AL 8 bit Ch y u dng cho cc php ton s h cBH 8 bit

    BXBL 8 bit

    Dng ch a con tr t i b nh CH 8 bit

    CXCL 8 bit

    Ch a s m trong cc l nh l p vngDH 8 bit

    DX DL 8 bit

    Thanh ghi m r ng c a AX trong cc l nh nhn vchia. Thanh ghi ch a n a cao c a m t tch 32 bit ho cn a cao c a s b chia 32 bit.

    Th c hi n c/ghi cc c ng vo/ra, thanh ghi nych a a ch cc c ng c n truy xu t c gi tr a ch l nh n FFh

    B ng II-2 ng d ng c a cc thanh ghi a nngThanh ghi S d ng trong l nh h p ng

    AX MUL, IMUL (ton h ng ngu n kch th c word)DIV, IDIV (ton h ng ngu n kch th c word)IN (nh p word)

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    30/194

    30

    OUT (xu t word) CWDCc php ton x l chu i (string)

    AL MUL, IMUL (ton h ng ngu n kch th c byte)DIV, IDIV (ton h ng ngu n kch th c byte) IN (nh p byte)OUT (xu t byte) XLATAAA, AAD, AAM, AAS (cc php ton ASCII) CBW ( i sang word)DAA, DAS (s th p phn)Cc php ton x l chu i (string)

    AH MUL, IMUL (ton h ng ngu n kch th c byte)DIV, IDIV (ton h ng ngu n kch th c byte)CBW ( i sang word)

    BX XLATCX LOOP, LOOPE, LOOPNECL RCR, RCL, ROR, ROL (quay v i s m byte)

    SHR, SAR, SAL (dch v i s m byte)DX MUL, IMUL (ton h ng ngu n kch th c word)

    DIV, IDIV (ton h ng ngu n kch th c word)B ng II-3 Ph i h p gi a cc c p thanh ghi o n v thanh ghi l ch

    Tham chi u b nh o n m c nh o n khc l chNh n l nh CS Khng IPTc v stack SS Khng SPD li u t ng qut DS CS, ES, SS a ch hi u d ngNgu n c a string DS CS, ES, SS SIch c a string ES Khng DIBX dng lm con tr DS CS, ES, SS a ch hi u d ngBP dng lm con tr SS CS, ES, SS a ch hi u d ng

    2.2. C u tr c chn giao ti p c a vi x l 8086/80882.2.1. C u tr c chn giao ti p c a vi x l 8086

    8086 c bus a ch 20 bit, bus d li u 16 bit, 3 chn ngu n v 17 chn dng cho ccch

    c nng i

    u khi

    n

    c ng v

    theo chu

    n DIP40. Tuy nhin, ta c th

    dng k

    thu

    tghp knh th i gian (time multiplexing) cho php m t chn c nhi u ch c nng nn

    cc chn s c phn ra: 16 chn d li u v a ch (AD0 AD15): cc chn ny s l cc ng a ch

    trong tr ng thi T1 v d li u trong cc tr ng thi T2 T4. 4 chn a ch v tr ng thi 3 chn ngu n

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    31/194

    31

    17 chn nh th i v i u khi nS chn giao ti p c a vi x l 8086 c trnh by trong Hnh II-6 v ch c nng

    c a cc chn c trnh by trong B ng II-4.

    Hnh II-6 C u tr c chn giao ti p c a vi x l 8086B ng II-4 Ch c nng c a cc chn giao ti p

    Chn

    s Tn chn giao

    ti p Ch c nng H ng1 GND C p ngu n 0V C p ngoi vo2 AD14 Bus d li u/a ch 2 chi u, 3 tr ng thi3 AD13 Bus d li u/a ch 2 chi u, 3 tr ng thi4 AD12 Bus d li u/a ch 2 chi u, 3 tr ng thi5 AD11 Bus d li u/a ch 2 chi u, 3 tr ng thi6 AD10 Bus d

    li

    u/

    a ch

    2 chi

    u, 3 tr

    ng thi

    7 AD9 Bus d li u/a ch 2 chi u, 3 tr ng thi8 AD8 Bus d li u/a ch 2 chi u, 3 tr ng thi9 AD7 Bus d li u/a ch 2 chi u, 3 tr ng thi10 AD6 Bus d li u/a ch 2 chi u, 3 tr ng thi11 AD5 Bus d li u/a ch 2 chi u, 3 tr ng thi

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    32/194

    32

    Chn

    s Tn chn giao

    ti p Ch c nng H ng12 AD4 Bus d li u/a ch 2 chi u, 3 tr ng thi13 AD3 Bus d li u/a ch 2 chi u, 3 tr ng thi14 AD2 Bus d li u/a ch 2 chi u, 3 tr ng thi15 AD1 Bus d li u/a ch 2 chi u, 3 tr ng thi16 AD0 Bus d li u/a ch 2 chi u, 3 tr ng thi17 INTR Yu c u ng t c th che c A16/S318 NMI Yu c u ng t khng th che c A16/S319 CLK Xung nhp h th ng A16/S320 GND C p ngu n 0V C p ngoi vo21 RESET Kh i t o vi x l C p ngoi vo22 READY Ch tr ng thi i u khi n C ng vo23 TEST Ch ki m tra i u khi n C ng vo24 INTA(QS1) Ghi nh n ng t C ng ra25 ALE(QS0) Cho php ch t a ch C ng ra26 DEN(S0) Cho php d li u C ng ra 3 tr ng thi27 DT / R(S1) Truy n/Nh n d li u C ng ra 3 tr ng thi28 IO / M(S2) i u khi n I/O v b nh C ng ra 3 tr ng thi29 WR(LOCK) i u khi n ghi (i u khi n kha utin bus) C ng ra 3 tr ng thi30 HLDA(RQ/GT0) Ghi nh n gi C ng vo31 HOLD(RQ/GT0) Yu c u gi (Yu c u/C p bus) C ng vo (2 chi u)32 RD i u khi n c C ng ra 3 tr ng thi33 MN/MX i u khi n ch ho t ng C ng vo34 BHE/S7 ng tr ng thi C ng ra, 3 tr ng thi35 A19/S6 a ch/Tr ng thi C ng ra, 3 tr ng thi36 A18/S5 a ch/Tr ng thi C ng ra, 3 tr ng thi37 A17/S4 a ch/Tr ng thi C ng ra, 3 tr ng thi38 A16/S3 a ch/Tr ng thi C ng ra, 3 tr ng thi39 AD15 Bus d li u/a ch 2 chi u, 3 tr ng thi40 Vcc C p ngu n 5V C p ngoi vo

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    33/194

    33

    8086 c th ho t ng ch t i thi u (minimum mode) hay ch t i a(maximum mode). Ch t i thi u ch dng cho cc h th ng P n gi n cn ch t ia dng cho cc h th ng phc t p h n giao ti p v i cc b nh v I/O ring.

    a/ Ngu n cung c p v xung nhp (VCC, GND v CLK): 8086 s d ng ngu n c p i n +5V10%, 340mA 8086 c 2 chn ngu n n i v i i m 0V c a ngu n nui Dng i n tiu th c c i l 340 mA (10 mA cho lo i CMOS). Xung nhp cung c p nhp lm vi c cho vi x l, c r ng l 77%, dng d ng

    xung ch nh t c chu k v i th i gian s n ln v v s n xu ng nh h n 10ns.b/ Ch n ch ho t ng MN/MX :Chn ny dng ch n ch ho t ng cho 8086, n u m c cao th s ho t ng

    ch t i thi u cn m c th p th s ho t ng ch t i a: Khi ho t ng ch t i thi u, vi x l s ph i tr c ti p i u khi n bus, ph i

    tr c ti p i u khi n trao i d li u v i b nh , ngo i vi Khi ho t ng ch t i a, vi x l i u khi n bus qua m t chip i u khi n

    bus chuyn d ng (8288).B ng II-5 Cc chn tn hi u ho t ng c hai ch t i thi u v t i a

    B ng II-6 Cc chn tn hi u ho t ng ch t i thi u

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    34/194

    34

    B ng II-7 Cc chn tn hi u ho t ng ch t i a

    c/ Cc chn tr ng thi tr ong ch t i a (S0, S1 v S2-status):Cc chn ny s d ng b i b i u khi n bus 8288 t o cc tn hi u i u khi n nh

    B ng II-8.B ng II-8 Cc chn tr ng thi bus

    d/ Cc chn i u khi n bus (HOLD, HLDA, RQ/GT0 , RQ/GT1 , LOCK ): Ch t i thi u:

    o HOLD (gi ): c ng vo tc ng m c cao lm cho P h m ch t t c cc busc a n, tch P kh i b nh v I/O cho php thi t b khc x l bus h th ng. Qu trnh ny g i l truy xu t b nh tr c ti p (DMADirectMemory Access).

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    35/194

    35

    o HLDA (Hold acknowledge): ghi nh n yu c u DMA i v i b i u khi nDMA.

    Ch t i a:o RQ/GT0 , RQ/GT1 (Request/Grant): cc chn ny dng c hai ch c nng

    vo (nhn yu c

    u) v ra (ch

    p nh

    n yu c

    u). Khi m

    t thi

    t b

    mu

    n l

    y

    i u khi n c a bus c c b , n s pht yu c u b ng cch a tn hi u m cth p vo chn yu c u. Sau khi nh n yu c u, 8086 s tr ng thi HOLD vg i tn hi u ch p nh n ra chn ny. y, chn 0 /GT RQ c u tin caoh n chn 1 /GT RQ.

    o LOCK : bo cho cc thi t b khc bi t khng th l y i u khi n c a bus c cb .

    e/ Cc chn ng t (NMI, INTR v INTA):INTR v NMI l cc yu c u ng t kh i ng b ng ph n c ng. NMI (Non-Maskable

    Interrupt) l c ng vo tc ng t i s n ln. NMI l ng t khng th che c v lun cph c v , th ng dng cho cc s ki n nh h ngu n hay cc l i b nh . INTR tc ng m ccao v c th b che b ng cch xo c IF trong thanh ghi c b ng l nh CLI.

    Khi NMI tch c c ( m c cao), i u khi n s c chuy n n a ch ch a trong ccv tr 00008h 0000Bh (v tr con tr ng t NMI).

    Khi INTR tch c c, chu k ghi nh n ng t (interrupt acknowledge cycle) c th chi n. Qu tr nh ny gi ng nh chu k c b nh ngo i tr INTA tch c c thay v RD.Thi t b t o ng t s t m t gi tr 8 bit vo bus d li u (s hi u ng t-n), vi x l c gitr ny v chuy n i u khi n n a ch logic c a ch o n n m trong a ch b nh n*4+2v a ch offset n m trong a ch b nh n*4.

    f/ Chn RESET: ho t ng khi c xung tc ng m c cao, dng kh i ngl i. Sau khi kh i ng, vi x l s c l nh t i a ch FFFF0h. RESET cs d ng khi h th ng c s c .

    g/ Cc chn i u khi n bus (READY, RD , ALE, DEL , DT/R , WR v IO/M ):Trong cc chn i

    u khi

    n n

    y, ch c hai chn READY v RD lm vi c ch

    ti

    a.

    Chn READY: c ng vo READY c l y m u c nh ln c a xung nhp T2(Hnh II-8). N u chn ny m c th p (khng s n sng) th s thm vo m t chuk T3 n a. Chu trnh ny s ti p t c cho n khi no chn READY ln m c cao.C ng vo ny th ng c i u khi n b i thi t b b nh ch m, khng th cungc p d li u kp th i cho P.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    36/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    37/194

    37

    Hnh II-8 Cc chu k c ghi c a vi x l 8086h/ Cc chn tr ng thi (AD16/S3 AD19/S6 v BHE/S7 ):5 tn hi u tr ng thi ny c xu t ra trong cc tr ng thi T2 T4, dng cho cc m c

    ch ki m tra. Bit S7 l bit tr ng thi d (khng dng), bit S6 lun b ng 0, S5 m t tr ngthi c a c ng t IF cn S3, S4 dng xc nh o n ang s d ng:

    B ng II-9 S d ng cc chn t r ng thi

    Tn hi u BHE/S7 (Bus High Enable) ch c xu t trong tr ng thi T1. Khi chn ny m c th p, n s ch AD8 AD15 lin quan n vi c truy n d li u. Qu trnh ny cth x y ra i v i cc truy xu t b nh , I/O hay truy xu t 1 byte d li u t a ch l .

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    38/194

    38

    i/ Bus d li u (AD0 AD15):16 chn ny t o thnh bus d li u hai chi u. Cc ng ny ch h p l trong cc tr ng

    thi T2 T4. Trong tr ng thi T1, chng gi 16 bit th p c a a ch b nh ho c I/O.j/ Bus a ch (AD0 AD15 v AD16/S3 AD19/S6):20 chn ny t ng ng v i bus a ch 20 bit v cho php P truy xu t 1MB v tr b

    nh . Cc ng ra ny ch h p l trong tr ng thi T1, chuy n thnh cc ng d li u vtr ng thi trong tr ng thi T2 T4.2.2.2. 8086 v 8088

    Tr c khi k t thc ph n m t c u trc c a b vi x l, chng ta xem qua m t cht v s gi ng nhau v khc nhau gi a hai b vi x l 8088 v 8086. 8086 l b vi x l 16 bithon chnh, cn 8088 l b vi x l v i 16 bit d li u bn trong (gi ng nh 8086), nh ngkhi ra ngoi bus d li u c a n ch cn 8 bit. C u trc bn trong c a 8088 v 8086 gi ngnhau v c b n, ngoi tr hai i m.

    i m khc nhau u tin l di b nh m l nh (hng i l nh) di ny 8088 l 4 byte cn 8086 l 6 byte; i u ny s c nh h ng t nhi u n s khc bi t v s t c x l c a hai b CPU.

    i m khc nhau th hai l kch th c c a bus d li u: 8088 l 8 bit cn 8086 l 16 bit (trong khi ALU v cc thanh ghi c a hai b CPU v n c di nhnhau. i u ny c nh h ng nhi u n cng nng (Perfomance) v gi thnh c ah th ng xy d ng trn c s cc b vi x l ny. i v i 8086 do bus d li u l16 bit n c th

    c/ghi

    c m

    t t

    n

    m

    hai nh

    th

    ng hng (m

    t t

    trong b

    nh c coi l x p th ng hng khi a ch ch n l byte th p, a ch l l byte

    cao) trong m t chu k c/ghi: cn 8088 do bus d li u ch c 8 bit nn c/ghim t t n m hai nh th ng hng (n m lin ti p nh trn) n ph i th c hi ntrong hai chu k c/ghi.

    B l i nh c i m v t c , 8088 c gi r v dng t o ra cc h th ng v igi ph i chng v n d ph i ghp v i cc thi t b ngo i vi 8 bit ang thnh hnhlc . i u khc nhau n a t t y u ph i x y ra l s khc nhau trong vi c b trcc chn giao ti p c a hai vi m ch..

    M c d c nh ng i m khc nhau nu, nh ng v nh ng i m gi ng nhau l r t cb n v v hai b vi x l c t p l nh gi ng nhau nn v quan i m l p trnh th chng lt ng ng

    2.3. T p l nh c a vi x l 8086T p l nh c a vi x l l m t thnh ph n quan tr ng khng th thi u c a m c vi ki n

    trc t p l nh-m c th hai trong 6 m c c a m t ki n trc my tnh hi n i. Chng ta c n

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    39/194

    39

    ph n bi t t p l nh c a vi x l v t p l nh h p ng c a vi x l. T p l nh c a vi x l lcc l nh c m ho b ng cc m nh phn ph n m c logic s c a vi x l c th hi uv th c hi n c cc tc v . Cn t p l nh h p ng c a b vi x l l cc l nh bi u di nb ng cc k t du i d ng g i nh (mnemonic) c th d dng s d ng v c nh x g n nh l 1-1 v i t p l nh c a vi x l.2.3.1. Khun d ng l nh

    Khi ch n cc khun d ng l nh, ng i thi t k t p l nh cho vi x l quan tm n ccy u t sau y:

    - S l ng cc l nh c bi u di n- Kh nng nh a ch c a cc ch nh a ch- D dng m ho cc l nh- Ki u c a tr ng l nh (c nh hay thay i)- Chi ph v ph n c ng c n thi t gi i m v th c hi n l nhL nh c a vi x l l m t t nh phn c d ng chung g m 2 thnh ph n:- M l nh (Opcode)- Cc v tr hay a ch c a ton h ng (address of operand)VXL 8086 x l t 16 bit. VXL ny c cc d ng l nh di t 2 byte n 6 byte.

    Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6

    M l nh D W MOD Reg R/M dch/d li u

    th p dch/d li u

    caoD li u th p D li u cao

    Trong :

    Byte 1 g m:o Opcode (6 bit): M l nh xc nh tc v c n th c hi no Bit D xc nh ton h ng REG c a Byte 2 l ngu n hay ch:

    - 1: ch

    - 0: Ngu no Bit W xc nh kch c c a ton h ng l 8 bit hay 16 bit

    -

    0: 8 bit

    - 1: 16 bit

    Byte 2 g m: tr ng ch (MOD) v tr ng thanh ghi (REG)o Tr ng MOD xc nh ch nh a ch

    - 00 Khng chnh l ch- 01 chnh l ch 8-bit, m r ng d u- 10 chnh l ch 16-bit

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    40/194

    40

    - 11 R/M l m t thanh ghi, ch nh a ch thanh ghi- N u MOD l 00, 01, ho c 10, tr ng R/M ch n m t trong cc ch

    nh a ch b nh .o R/M tr ng ch: ton h ng thanh nghi/cc thanh ghi dng tnh EAo REG: Tr ng ton h ng thanh ghi/m r ng cho m l nh

    B ng II-10 N u MOD=11-Cc thanh ghi tr ong REG v cc tr ng R/MSTT M W=0 (byte) W=1 (Word)

    1 000 AL AX

    2 001 CL CX

    3 010 DL DX

    4 011 BL BX

    5 100 AH SP

    6 101 CH BP7 110 DH SI

    8 111 BH DI

    V d : Xem xt l nh 8BECh

    o M nh phn: 1000 1011 1110 1100 binaryo M l nh: 100010 -> MOVo Bit D=1: D li u t R/M t i REGo Bit W=1: D li u c kch th c wordo MOD=11: nh a ch thanh ghio REG=101: ch, R/M=100 Ngu no MOV BP, SP

    B ng II-11 N u MOD l 00, 01 ho c 10 th R/M c m t ngha hon ton khc:STT M R/M Ch c nng

    1 000 DS: BX + SI

    2 001 DS: BX + DI

    3 010 SS: BP + SI4 011 SS: BP + DI

    5 100 DS: SI

    6 101 DS: DI

    7 110 SS: BP

    8 111 DS: BX

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    41/194

    41

    V d : L nh 8A15ho Nh phn 1000 1010 0001 0101o M l nh 100010 -> MOVo D = 1, cc lu ng d li u t R/M t i REGo W = 0, 8-bit argument

    o MOD = 00 (no displacement)

    o REG = 010 (DL)

    o REG = 101 ([DI] addressing mode)

    o MOV DL, [DI]

    a/ V d D ng l nh di 1 byte

    o L cc l nh chit thao tc bn trong thanh ghi 8 bit AL cho cc chuy n is :

    - XLAT: chuy n i byte trong AL- AAA: hi u chnh s ASCII trong php c ng

    Trong c u trc l nh ch c m l nh 8 bit v chu k th c hi n l nh ch c 1 chu k myv i 4 chu k nhp ng h .

    D ng l nh di 2 byte n 6 byteo Ph thu c vo ch nh a ch, thao tc b nh , x l theo t ng t hay

    theo byte (W=1/0) di c a l nh c th di 2, 3, 4, 5, 6 byte.o L

    nh MOV v

    n chuy

    n gi

    a ngn nh

    ho

    c thanh ghi v

    i m

    t t

    d

    li

    u 2

    byte ghi trong l nh th l nh c di 4 byte, byte 3, byte 4 ch a gi tr d li u.

    o L nh CALL c di 3 byte trong byte 2 v byte 3 l gi tr dch 16bit trong o n

    2.3.2. Qu trnh x l l nhKhi th c hi n l nh, VXL nh n cc l nh v d li u t b nh 1 byte m t l n. M nh

    phn c a cc l nh c v tr tu n t trong b nh .- VXL tm v gi i m l nh t b nh th c hi n u tin v VXL c n m t l nh

    tr c khi c th lm b t c i u g.- VXL g i i v tr bye l nh trn bus a ch t i b nh - VXL g i tn hi u i u khi n c b nh trn bus i u khi n, b nh g i d li u

    i trn bus d li u

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    42/194

    42

    - VXL c d li u t bus d li u v gi i m l nh. CU ch n vi l nh thi hnhl nh ny. Nh gi i m l nh m VXL bi t c c c n thm thng tin, d li uhay khng. N u c n n s c cc byte ti p theo.

    Thi hnh m t s lo i l nh khc nhau c a VXL:6. VXL nh n t ng l nh ch ng trnh m t cch tu n t , c, gi i m v th c hi n n.7. VXL nh n l nh ho c c c d li u b ng cch g i a ch trn bus a ch, v tn

    hi u c b nh trn bus i u khi n. B nh g i i l nh ho c d li u t i a chnh n c t i CPU trn bus d li u.

    8. VXL ghi m t t d li u ln b nh b ng cch g i a ch ln bus a ch, g i t d li u trn bus d li u v g i tn hi u vi t b nh trn bus i u khi n.

    9. c d li u t c ng, CPU g i i a ch c ng trn bus a ch v g i tn hi u c I/O t i thi t b c ng trn bus i u khi n. D li u t c ng t i CPU trn bus d li u.

    10. ghi d li u ra c ng, CPU11. g i i a ch c ng trn bus a ch v g i d li u c n ghi trn bus d li u, g i tn

    hi u ghi I/O t i thi t b c ng trn bus i u khi n2.3.3. Cc nhm l nh

    T p l nh 8086 c phn chia thnh cc nhm l nh. Cc nhm l nh c chung nhmbit g c. Cc nhm l nh chnh g m:

    Cc l nh dch chuy n d li u nh sao chp d li u, chuy n d li u t b nh rango

    i vi v ng

    c l

    i, cc v

    n chuy

    n d

    li

    u vo/ra ngn x

    p,...

    Cc l nh s h c th c hi n cc php tnh c ng, tr , nhn, chia, tng, gi m, l y b1, b 2,...

    Cc l nh logic th c hi n cc php tnh logic: v, ho c, c ng m un... Cc l nh dch v quay Cc l nh thao tc chu i Cc l nh chuy n i u khi n: nh y c i u ki n, nh y khng i u ki n, g i th

    t c... Cc l nh thao tc cc bit tr ng thi v i u khi n: t v xa cc bit tr ng thi v

    i u khi n c a vi x l.2.4. H th ng ng t c a vi x l 8086

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    43/194

    43

    Hnh II-9 Qu tr nh th c hi n ng tC ng nh cc b vi x l khc, 8086 c m t ch c nng m nh v m m d o trong qu

    trnh ch y ch ng trnh, l kh nng th c hi n ng t.Ng t l thao tc t m d ng ch ng trnh ang ch y (ch ng trnh b ng t) th c hi n

    m t ch ng tr nh khc g i l th t c ph c v ng t (Interrupt Service Routines-ISR), th t c ny ny k t thc b ng l nh IRET (tr ng t). Sau khi k t thc ch ng tr nh ph c v ng t vi x l ti p t c th c hi n ch ng trnh b ng t.

    M t s thu t ng c n nh trong h th ng ng t c a vi x l 8086: Ch ng trnh con ph c v ng t: (Interrupt Service Routine-ISR)

    o L ch ng trnh c th c hi n khi c m t yu c u ng t c ch p nh no K t thc b ng l nh IREToa ch c a ch ng trnh con ph c v ng t bao g m 4 byte: 2 byte cho a

    ch

    Offset v 2 byte cho a ch

    Segment S hi u ng t:

    o L m t s 8 bit c dng phn bi t cc y u c u ng t. B i v c th cnhi u h n m t thi t b pht yu c u ng t n b vi x l cho nn cho b vi x l c th nh n bi t c thi t b th m I thi t b s c gn cho m ts hi u ng t

    o Trong h th ng 8086/8088, c th c n 256 s hi u ng t nh s t 00h n FFh.

    Vector ng t: l vng nh 4 byte l u a ch logic c a ch ng trnh ph c v ng t B ng cc vector ng t

    o L vng nh 1KB th p nh t c dnh ring l u tr cc vector ng to C th xem nh l m t m ng cc vector ng t g m c 256 ph n t o M i vector ng t g m 4 byte: 2 byte u l u a ch offset, 2 byte sau l u a

    ch segmento Cc vector ng t c l u tr theo tr t t tng d n c a s ng t

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    44/194

    44

    o 256 vector ng t c l u tr l n l t trong vng th p nh t c a b nh g i lb ng cc vector ng t c di 4 x 256 = 1024 byte, t a ch 00000H t i003FFH.

    2.4.1. Qu trnh x l ng t

    Hnh II -10 Nhi u ngu n ng t cng a vo 1 u vo yu c u ng t c a CPUVi x l 8086 c th ph c v t i 256 ng t khc nhau nh s t 0 n 255. M i ng t

    ng v i m t ch ng tr nh con ph c v ng t v s c th c hi n khi c g i. a chlogic c a nh b t u c a m i ch ng trnh ny c g i l vector ng t di 4 byte g ma ch o n v a ch offset (offset t tr c a ch o n segment). 256 a ch ny c l u tr l n l t trong vng th p nh t c a b nh g i l b ng cc vector ng t c di 4 x 256 = 1024 byte. T a ch 0000:0000 t i 0000: 03FF. Do xc nh nh ch a a ch b t u c a ch ng trnh con ph c v ng t ta ch c n nhn s ng t v i 4.

    C th thay i n i dung c a vector ng t n tr n m t a ch ch ng trnh conph c v ng t do ng i s d ng v ch ng tnh s c ch y khi ng t t ng ng c g i.Do khi kh i ng ch ng trnh trong ROM Bios c n p sang RAM, k c b ng vectorng t nn c th thay i n i dung c a b ng vector ng t trong vng RAM.

    Cu i m i chu trnh l nh 8086 s ki m tra c ng t no c yu c u hay khng, n u cyu c u ng t s hi u N v n u yu c u ng t ny c CPU p ng, CPU s th c hi n cccng vi c sau:

    1. C t n i dung c a thanh ghi c (FR) vo nh c a ngn x p (B ng vi c t ngth c hi n cu l nh PUSHF).

    C m cc ng t khc tc ng vo CPU CPU chy ch bnh th ng. t ccc IF=0 v TF =0 b ng cch th c hi n cc l nh: CLI v CLT.2. C t a ch o n (segment) c a ch ng tr nh b ng t vo ngn x p b ng l nh

    PUSH CS (l u l i n i dung thanh ghi CS).3. C t a ch l ch (offset) c a l nh k ti p c a ch ng trnh b ng t vo ngn x p

    PUSH IP (L u l i n i dung thanh ghi IP)

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    45/194

    45

    4. L y a ch c a ch ng trnh ph c v ng t s hi u N trong b ng vector ng t n pvo thanh ghi CS v IP:

    o N p 2 byte a ch N*4 vo thanh ghi IPo N p 2 byte a ch N*4+2 vo thanh ghi CSo CS:IP tr t i l nh u tin c a ch ng trnh ph c v ng t

    5. Th c hi n ch ng tr nh ph c v ng t, khi g p l nh cu i cng c a ch ng trnhcon ph c ng t (l nh IRET). B vi x l s quay l i ch ng trnh b ng t t i a chCS:IP c khi ph c t ngn x p b ng cc l nh sau:

    - POP IP

    - POP CS

    - POPF

    2.4.2. Phn lo i ng tPhn lo i ng t: c 3 lo i ng t Ng t m m: l ng t c th c hi n b ng m t l i g i trong m t ch ng trnh ngn

    ng my, l l nh INT v i s hi u ng t km theo (theo ngn ng my) Ng t c ng l ng t c th c hi n khi cc chip i n t trong my tnh ho c ngo i

    vi pht tn hi u yu c u ph c v ng t v truy n n t i chn INTR ho c NMI c a8086 (V d nh ng t bn phm khi n nh phm). Ng t c ng cn c th chiathnh 2 lo i: ng t che c v ng t khng che c.

    Ng t ngo i l : l ng t sinh ra do chnh cc ho t ng bn trong vi x l (nh l itnh ton).

    a/ Cc ng t m m v i s hi u ng t t 0 n 255L nh INT c th yu c u t i a m t trong s t i a 256 ng t. Lo i ng t mong mu n

    c xc nh ph n sau c a cu l nh. Cc b c th c hi n l nh ng t m m t ng t nhcc b c trnh by trong ph n 2.4.1.

    b/ Cc ng t c ng INTR v i s ng t tr ong d i t 0 n 255L i vo INTR c a 8086 cho php cc tn hi u bn ngoi ng t m t ch ng trnh ang

    ch y. Tuy nhin khc v i l i vo NMI, ng t INTR c th b che lm cho yu c u ng tkhng c th c hi n.

    Xo c ng t dng l nh CLI v thi t l p c ng t dng l nh STI.Khi 8086 c reset, c ng t s t ng b xo. Do 8086 c th p ng c

    tn hi u ng t th IF ph i c t tr c b ng STI.IF c ng ph i c xo trong b t c th t c p ng no c a ng t v 2 l do Khng th c hi n ng t cao h n Khng lin t c t ng t chnh mnh

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    46/194

    46

    L nh IRET cu i m i th t c ph c v ng t s khi ph c cc c v l i tr ng thi c achng tr c khi th t c ng t c th c hi n b ng cch l y thanh ghi c ra kh i ngn x p. trnh l p ng t th m ch ph n c ng c n t o ra tn hi u ng t nh h n th i gian th c hi nch ng trnh ph c v ng t.

    p ng c a 8086 i v i m t tn hi u yu c u ng t INTR c i cht khc bi t sov i p ng cc ng t lo i khc. Khc bi t l n nh t l i v i ng t m m l lo i ng t INTR c g i t i 8086 thng qua m t m ch ph n c ng khc nh chip i u khi n ng t u tin(Chip 8259A).

    c/ Ng t s 08086 s t ng th c hi n ng t s 0 n u k t qu c a php ton DIV ho c IDIV qu

    l n so v i thanh ghi ch. V i ng t s 0: 8086 s l u thanh ghi c vo ngn x p Xo c TF, IF c ng nh l u a ch tr v (CS v IP) vo ngn x p. L y a ch b t u th t c ng t cho thanh ghi CS v IP l n l t t i cc a ch

    00002h v 00000h trong b ng con tr ng tp ng cho ng t s 0 hon ton t ng v khng th c m b ng b t c hnh th c no

    nn ph i lm ch c n trong cc ch ng trnh c s d ng l nh chia DIV, IDIV. u i m s d ng ng t ny l khng ph i th c hi n m t ch ng tr nh con ph c t p

    lm php chia trong ch ng trnh chnh. 8086 s t ng ki m tra v ch th c hi n cc th t c c n thi t.

    d/

    Ngt s

    1: ng

    t b

    c nCc ch c nng b c n c trong cc ch ng trnh gim st v g r i, nh ch c nng

    ny ng i l p trnh c th ki m tra c n i dung cc thanh ghi v cc nh (do v y ctc d ng ki m tra).

    Trong ch b c n, h th ng s d ng l i sau khi th c hi n m t cu l nh v ch ch th ti p theo c a ng i l p trnh. C b c (c b y-trap flap) v p ng ng t s 1 c a8086 cho php th c hi n ch c nng b c n m t cch kh d dng.

    8086 s l u thanh ghi c vo ngn x p Xo c TF, IF c ng nh l u a ch tr v (CS v IP) vo ngn x p. L y a ch b t u th t c ng t cho thanh ghi CS v IP l n l t t i cc a ch

    00006h v 00004h trong b ng con tr ng te/ Ng t s 2: Ng t khng th che c8086 th c hi n ng t s 2 khi tc ng m t tn hi u yu c u ng t l m t s n ln c a

    s n xung ln vo chn NMI. 8086 s l u thanh ghi c vo ngn x p

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    47/194

    47

    Xo c TF, IF c ng nh l u a ch tr v (CS v IP) vo ngn x p. L y a ch b t u th t c ng t cho thanh ghi CS v IP l n l t t i cc a ch

    0000Ah v 00008h trong b ng con tr ng tNg t s 2 khng th b che b i b t k cu l nh no.

    f/ Ng t s 3: ng t i m d ngNg t s 3 c th c hi n b i cu l nh INT 3, cho php th c nng t o i m ng t

    (beakpoint) trong m t h th ng. Khi chn vo ch ng tr nh m t i m ng t, h th ng s th c hi n cu l nh tr c i m ng t r i sau nh y t i th t c ph c v ng t.

    8086 s l u thanh ghi c vo ngn x p Xo c TF, IF c ng nh l u a ch tr v (CS v IP) vo ngn x p. L y a ch b t u th t c ng t cho thanh ghi CS v IP l n l t t i cc a ch

    0000Eh v 0000Ch trong b ng con tr ng tg/ Ng t s 4: Ng t trnC trn (OF) c a 8086 s c l p n u k t qu c a m t php tnh s h c trn cc s

    c d u qu l n so v i thanh ghi ch hay nh . 8086 s l u thanh ghi c vo ngn x p Xo c TF, IF c ng nh l u a ch tr v (CS v IP) vo ngn x p. L y a ch b t u th t c ph c v ng t cho thanh ghi CS v IP l n l t t i cc

    a ch 00012h v 00010h trong b ng con tr ng tC 2 cch chnh pht hi n v tr l i l i trn ch ng trnh: Cch 1:

    t cu l

    nh nh

    y n

    u c trn JO ngay sau cu l

    nh tnh ton s

    h

    c. T

    i

    a ch ny c th t m t ch ng tr nh con p ng l i l i trn theo cch mmnh mu n

    Cch 2: t l nh INT 0 ngay sau l nh tnh ton s h c trong ch ng trnh.2.4.3. Cc ng t BIOS v DOS trong cc my tnh IBM PC

    My tnh c 256 ng t c nh s hi u t 00h n FFh. Trong cc ng t c s hi u t 00h n 1Fh l cc ng t c a BIOS, cn cc ng t cn l i t 20h n FFh l ccng t c a DOS.

    D i y ta s tm hi u cc ng t theo t ng nhm ng t.a/ Cc ng t c a BIOS & DOS

    a chvector ng t

    S hi ung t Ch c nng

    Cc ng t ph c v h th ng0-3 0 CPU: chia cho 0

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    48/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    49/194

    49

    80-83 20 K t thc ch ng trnh d ng COM84-87 21 Cc hm c a DOS88-8B 22 a ch k t thc ch ng trnh8C-8F 23 a ch th t c Ctrl+Break90-93 24 Bo l i a94-97 25 c a m m, a c ng98-9B 26 Ghi a9C-9F 27 K t thc ch ng trnh v th ng trA0-A3 28 Dnh cho cc hm khng c DOS cung c p d li u

    29-3F D tr 40 BIOS ph c v a m m41 a ch c a b ng a c ng 142-49 D tr 4A H n gi 4B-6F D tr 70-77 Ng t c ng c a 8259 th 278-7F D tr 80-F0 Dng cho b thng dch BASICF1-FF D tr

    2.5. B ng x l ton h c 8087Chip vi x l 8087 l ng x l ton h c dng chung v i 8086/8088 trong my tnh,

    trong 8087 l vi x l ph (slave) cn 8086/8088 l vi x l chnh (master). 8087chuyn th c hi n cc php tnh cc s v i d u ph y ng thu c nhi u lo i d li u khcnhau. 8086/8088 th c hi n cc php tnh ny thng qua th c hi n cc m ph ng, do t c th c hi n chng r t ch m. N u dng 8087 s tng t c tnh ton cc s d u ph y ng ln r t nhi u.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    50/194

    50

    Hnh II -11 ng v DIP 40 chn v cc tn hi u c a chip ng x l ton h c 8087Cng ngh vo th i k ra i 8086/8088 khng cho php c y 8087 vo bn trong

    8086/8088 nh trong 80486DX v Pentium, do ph i ch t o chip ring th c hi nphp tnh s d u ph y ng. 8086 c ng v DIP 40 chn tn hi u. Cc ng tn hi ua ch v d li u c ghp chung t A0/D0 n A19/D15. Nh v y, 8087 c th trao i d li u theo byte v theo t 16 bit. Cc tn hi u tr ng thi 0S , 1S , 2S v S3, S4, S5,S6, S7 c trong ch lm vi c t i a c a 8086/8088. Nhp ng h CLK c a 8087 ct n s nh t n s c a nhp ng h 8086/8088, b i v 8087 c thi t k lm vi c cngv i 8086/8088 trong h th ng my tnh.

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    51/194

    51

    Hnh II-12 S ch c nng c a b ng x l ton h c 8087Hnh trn l s ch c nng c a 8087. Trong 8087 c 2 n v ch c nng chnh: n

    v i u khi n (Control unit) v n v x l s h c (numeric execution unit).2.5.1. T p thanh ghi bn trong c a 8087

    T p thanh ghi bn trong 8087 c t ch c theo c ch ngn x p (register stack), vc khun d ng nh trong Hnh II-12 v Hnh II-13. Trong c ch ngn x p d li u c y vo (push) nh ngn x p, v tr ST(0), v nh ng d li u c trong ngn x p c t ng y xu ng pha y ngn x p. Khi c ra, d li u c l y t nh ST(0), nh ng d li u cn l i trong ngn x p t ng i ln nh.

    n v i u khi n

    T i u khi nT

    tr

    ng thi

    B m

    d li uD li u L nh m i

    Hng iphp ton

    nh a chv t o rnh bus

    Con tr ngo i t

    Tr ngthi

    a ch

    n v x l s h c

    Hng iphp ton

    n v i ukhi n vi l nh

    TAG

    WORD

    Ch n thanh hi

    (7)(6)(5)(4)(3)(2)(1)(0)

    80 bit'

    Buslu

    th

    a

    Busphn

    s

    Giao ti p

    Cc thanhghi t m

    Modules h c

    Thanh ghi dchl p trnh c

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    52/194

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    53/194

    53

    8086/8088. Tr ng thi ch c a 8086/8088 k t thc khi TEST kh ng nh m c 0, v8086/8088 ti p t c qu trnh x l c a n. Trong ch t i a, INTA v ALE tr thnhhai tn hi u tr ng thi QS1 v QS0, l 2 bit tr ng thi c a b vi x l trong qu trnhth c hi n l nh. Chng c n thi t cho b ng x l v cc thi t b ngo i vi lm vi c k th p ch t ch v i b vi x l.

    Qu trnh tnh ton c a 8087 th c hi n theo 3 b c nh sau: D li u c n p t b nh chnh c a h th ng vo t p h p cc thanh ghi bn

    trong (register stack).

    8087 x l cc d li u v a c n p K t qu c c t tr l i vo b nh chnh c a h th ng.

    2.5.3. T p l nh c a 8087T p l nh c a 8087 g m nhi u l nh tnh ton v i cc s nguyn, BCD v d u ph y

    ng. Chng

    c xem l cc l

    nh m

    rng t

    p l

    nh c

    a 8086/8088. Khi vi

    t ch ng

    trnh, trong c s d ng c cc l nh c a 8087, v 8088, th th t ch ng trnh khngc n b n tm. T t c cc tn l nh c a t p l nh 8087 u c ch ci u l "F", ngha lFloating-point.

    Cc l nh c a 8087 phn thnh cc nhm nh sau:1. Cc l nh v n chuy n cc s th c (Real transfers).2. Cc l nh v n chuy n cc s nguyn (Integer transfers).3. Cc l nh v n chuy n cc s h m i ng gi (Packed decimal transfers0.4. Cc l nh c ng (Addition).5. Cc l nh tr (Subtraction).6. Cc l nh nhn (Multiplication)7. Cc l nh chia (Division).8. Cc l nh khc ( i d u, khai cn b c hai, lm trn s , s m , l y gi tr tuy t

    i,).9. Cc l nh hm l ng gic (Transcendental), logarit, s m .10. Cc l nh so snh (Comparison).11. Cc l nh v i h ng s (Constant).12. Cc l nh i u khi n b x l (Processor Control).Nhm l nh i u khi n b x l l nh ng l nh nh : Kh i t o ban u b x l, c m

    ng t, cho php ng t, n p t i u khi n, c t gi t i u khi n, xo cc ngo i l , n p v c tgi mi tr ng, c t gi v ph c h i tr ng thi, tng con tr ngn x p, gi m con tr ngnx p, lm tr ng thanh ghi, ch CPU, v khng th c hi n g c .

    Generated by Foxit PDF Creator Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.

  • 8/3/2019 Bai Giang Vi Xu Ly_D_DT

    54/194

    54

    2.5.4. Khun d ng d li u c a 8087Khi c t gi vo trong b nh chnh c a h th ng, d li u c th b t k khun d ng

    no, nh ng trong 8087, d li u ch c th c x l v c t gi d i cc d ng s qui nhcho cc tnh ton s d u ph y ng. Khi chuy n t 8087 tr l i b nh chnh c a h th ng, d li u c t ng chuy n v d ng thch h p cho x l bn trong 8086/8088.

    S th c ng n c gi tr l n nh t l 127 (7Fh), s th c di c gi tr l n nh t l 1023(3FFh), v s th c t m th i c gi tr l n nh t l 16383 (3FFFh).2.6. Tm t t ch ng II

    N i dung c a ch ng II t p trung vo nh ng v n c b n nh t c a b vi x l8086/8088 bao g m:

    C u trc c a vi x l 8086