TRÖÔØNG ÑAÏI HOÏC ÑAØ LAÏT

CẤU TRÚC MÁY TÍNH

GIAÙO TRÌNH

NGUYEÃN HÖÕU LỘC

2000

Caán Truùc Maùy Tính

-2-

MUÏC LUÏC Chöông 1: GIÔÙI THIEÄU CHUNG..................................................................................... 5 I. NGOÂN NGÖÕ VAØ MAÙY AÛO, MAÙY TÍNH NHIEÀU CAÁP: ......................................... 5 II. PHAÀN CÖÙNG VAØ PHAÀN MEÀM: ............................................................................. 7 III. LÒCH SÖÛ PHAÙT TRIEÅN MAÙY TÍNH: .................................................................... 8 1. Theá heä khoâng: ........................................................................................................ 8 2. Theá heä thöù nhaát: ..................................................................................................... 9 3. Theá heä thöù hai: ..................................................................................................... 10 4. Theá heä thöù ba: ...................................................................................................... 10 5. Theá heä thöù tö: ....................................................................................................... 11 Chöông 2: CAÁU TRUÙC CHUNG MAÙY TÍNH............................................................... 15 I. CAÙC BOÄ XÖÛ LYÙ....................................................................................................... 15 1. Thöïc hieän leänh ..................................................................................................... 16 2. Toå chöùc CPU ........................................................................................................ 17 3. Thöïc hieän leänh song song: ................................................................................... 18 II- BOÄ NHÔÙ CHÍNH: ................................................................................................... 22 1. Bit.......................................................................................................................... 22 2. Ñòa chæ boä nhôù: ..................................................................................................... 23 3. Traät töï cuûa byte: ................................................................................................... 24 4. Maõ söûa loãi:............................................................................................................ 25 5. Boä nhôù chính trong caùc IBM PC ......................................................................... 26 III- CAÙC THIEÁT BÒ LÖU TRÖÕ (BOÄ NHÔÙ PHUÏ): ...................................................... 28 1. Baêng töø: ................................................................................................................ 28 2. Ñóa töø .................................................................................................................... 29 3. Ñóa meàm ............................................................................................................... 32 4. Ñóa quang.............................................................................................................. 33 IV - CAÙC THIEÁT BÒ VAØO / RA .................................................................................. 35 1. Baøn phím: ............................................................................................................. 38 2. Maøn hình:.............................................................................................................. 38 3. Modem:................................................................................................................. 41 4. Chuoät: ................................................................................................................... 45 5. Maùy in :................................................................................................................. 48 6. Ngoõ ra noái tieáp chuaån RS–232–C ....................................................................... 54 Chöông 3: LÔÙP VAÄT LYÙ ................................................................................................. 57 I. CAÙC CHIP VI XÖÛ LYÙ VAØ CAÙC BUS..................................................................... 57 1. Caùc chip vi xöû lyù: ................................................................................................. 57 2. Caùc bus cuûa maùy tính ........................................................................................... 60 3. Bus ñoàng boä......................................................................................................... 62 4. Bus khoâng ñoàng boä............................................................................................... 65 5. Phaân xöû bus .......................................................................................................... 67 II. THÍ DUÏ VEÀ CHIP VI XÖÛ LYÙ VAØ BUS ................................................................. 71

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-3-

1. Chip vi xöû lyù 8088 cuûa hoï Intel ........................................................................... 71 2. Thí duï veà bus ........................................................................................................ 74 III. Boä nhôù .................................................................................................................... 76 1. Phaân loaïi boä nhôù baùn daãn .................................................................................... 77 2. Toå chöùc boä nhôù:.................................................................................................... 77 3. Moät soá khaùi nieäm veà boä nhôù khaùc:...................................................................... 79 IV. Giao tieáp ................................................................................................................. 81 1. Caùc chip I/O......................................................................................................... 81 2. Giaûi maõ ñòa chæ. ................................................................................................... 82 Chöông 4 LÔÙP VI CHÖÔNG TRÌNH ............................................................................ 85 I. NHAÉC LAÏI LÔÙP VAÄT LYÙ: ...................................................................................... 86 1. Caùc thanh ghi:....................................................................................................... 86 2. Bus noäi:................................................................................................................. 86 II. MOÄT VÍ DUÏ VEÀ VI CHÖÔNG TRÌNH: ................................................................ 88 Chöông 4: LÔÙP VI CHÖÔNG TRÌNH ........................................................................... 90 I. NHAÉC LAÏI LÔÙP VAÄT LYÙ: ...................................................................................... 91 1. Caùc thanh ghi:....................................................................................................... 91 2. Bus noäi:................................................................................................................. 91 II. MOÄT VÍ DUÏ VEÀ VI CHÖÔNG TRÌNH: ................................................................ 93 Chöông 5: LÔÙP MAÙY QUY ÖÔÙC .................................................................................. 95 I. CAÙC THÍ DUÏ VEÀ LÔÙP MAÙY QUI ÖÔÙC: ............................................................... 95 II. CAÙC KHUOÂN DAÏNG LEÄNH ............................................................................... 101 III. KIEÅU ÑÒNH VÒ ÑÒA CHÆ : .................................................................................. 102 1. Ñònh ñòa chæ töùc thôøi:.......................................................................................... 103 2. Ñònh ñòa chæ tröïc tieáp.......................................................................................... 103 3. Ñònh ñòa chæ thanh ghi ........................................................................................ 104 4. Ñònh ñòa chæ giaùn tieáp ......................................................................................... 105 5. Ñònh chæ soá.......................................................................................................... 106 6. Ñònh ñòa chæ ngaên xeáp ........................................................................................ 107 III. LUOÀNG ÑIEÀU KHIEÅN ........................................................................................ 108 1. Luoàng ñieàu khieån tuaàn töï vaø caùc leänh nhaûy. .................................................... 108 2. Thuû tuïc ................................................................................................................ 109 3. Ñoàng thuû tuïc. ...................................................................................................... 109 4. Baãy ...................................................................................................................... 110 5. Ngaét .................................................................................................................... 110 Chöông 6: LÔÙP MAÙY HEÄ ÑIEÀU HAØNH ..................................................................... 112 I. BOÄ NHÔÙ AÛO ........................................................................................................... 113 II. CAÙC LEÄNH VAØO/RA AÛO .................................................................................... 117 1. Caùc taäp tin tuaàn töï .............................................................................................. 117 2. Caùc taäp tin truy xuaát ngaãu nhieân ....................................................................... 119 3. Hieän thöïc caùc leänh vaøo/ra aûo............................................................................. 120

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

....................... Caùc leänh quaûn lyù thö muïc ....... 124 III.... 125 Nguyeãn Höõu Loäc Khoa Vaät Lyù ............................................ CAÙC LEÄNH AÛO DUØNG TRONG XÖÛ LYÙ SONG SONG .........................Caán Truùc Maùy Tính -4- 4................

Khoù khaên laø caùc ngoân ngöõ maùy naøy coøn quaù nguyeân sô neân raát khoù söû duïng. Chöông trình maùy tính goàm moät daõy leänh saép xeáp theo moät trình töï nhaát ñònh ñeå thöïc hieän moät vieäc cho tröôùc. Vôùi ngoân ngöõ L2 coù theå hình dung ñeán moät maùy tính goïi laø maùy aûo. Kyõ thuaät naøy goïi laø bieân dòch (compile). Ñoù laø ngoân ngöõ maùy. Coøn vôùi phieân dòch thì moãi leänh trong chöông trình L2 ñöôïc phaân tích roài thöïc hieän ngay vaø nhö vaäy döôøng nhö khoâng toàn taïi chöông trình dòch. NGOÂN NGÖÕ VAØ MAÙY AÛO. Caùch thöù 2 laø töøng leänh cuûa chöông trình vieát baèng L2 seõ ñöôïc thöïc hieän töông öùng vôùi moät daõy caùc leänh L1.Caán Truùc Maùy Tính -5- CHÖÔNG 1: GIÔÙI THIEÄU CHUNG Maùy tính soá laø thieát bò coù khaû naêng giaûi caùc baøi toaùn baèng caùch thöïc hieän moät soá leänh höõu haïn. thöôøng hay hôn L1. hình thaønh ngoân ngöõ maùy. caùc ngoân ngöõ L1 vaø L2 khoâng neân quaù khaùc nhau. Hai khaùi nieäm bieân dòch vaø phieân dòch môùi ñaàu coù veõ hôi gioáng nhau. Nhìn chung. MAÙY TÍNH NHIEÀU CAÁP: Coù 2 caùch ñeå giaûi quyeát vaán ñeà naøy. Caû hai caùch ñeàu ñöôïc söû duïng roäng raõi. Ñeå bieân dòch vaø phieân dòch ñöôïc ñôn giaûn. Taäp leänh môùi naøy taïo thaønh moät ngoân ngöõ môùi (ngoân ngöõ L2) laø taäp caùc leänh khaùc leänh maùy (ngoân ngöõ L1. Thöïc teá laø caû hai caùch naøy ñeàu nhaèm ñöa vaøo moät taäp leänh môùi deã söû duïng hôn ngoân ngöõ maùy. ) Caùch thöù nhaát ñeå thöïc hieän chöông trình vieát baèng L2 laø dòch leänh cuûa chöông trình thaønh daõy caùc leänh töông ñöông L1. Nhöõng linh kieän ñieän töû trong moãi maùy tính chæ coù theå nhaän bieát vaø thöïc hieän tröïc tieáp moät soá leänh höõu haïn vaø moät chöông trình maùy tính chæ coù theå thöïc hieän treân maùy tính ñoù neáu söû duïng chính soá leänh höõu haïn ñoù. Song phaûi thaáy raèng trong tröôøng hôïp bieân dòch taát caû chöông trình L2 seõ phaûi dòch sang L1 sau ñoù chöông trình L1 thöïc hieän. ngöôøi ta taïo ra caùc leänh. leänh trong L2 seõ ñöôïc chuyeån thaønh moät daõy leänh trong L1 ñeå thöïc hieän. Thoâng thöôøng ngöôøi ta coù khuynh höôùng choïn caùc leänh naøy caøng ñôn giaûn caøng toát ñeå haïn cheá möùc ñoä phöùc taïp (vaø dó nhieân laø giaù thaønh ) cuûa caùc linh kieän ñieän töû caàn thieát. vaãn khoâng phaûi laø moät ngoân ngöõ laäp trình Nguyeãn Höõu Loäc Khoa Vaät Lyù . Maùy tính seõ thöïc hieän chöông trình môùi baèng L1 thay vì L2. Kyõ thuaät naøy khoâng caàn taïo ra toaøn boä moät chöông trình L1 neân goïi laø phieân dòch (interpret). I. Nghóa laø L2. Khi cheá taïo ra moät maùy tính môùi. Taäp leänh maø maùy tính thöïc hieän tröïc tieáp taïo ra moät ngoân ngöõ cho pheùp ngöôøi söû duïng trao ñoåi ñöôïc vôùi maùy tính.

Moãi ngoân ngöõ môùi döïa vaøo ngoân ngöõ ñaõ coù tröôùc ñoù. Caáp 0: Lôùp vaät lyù. Nhöõng chöông trình naøy chaéc chaén seõ ñöôïc dòch ra L2. Ñoù laø phaàn cöùng goàm caùc cöûa logic.1: Kieán truùc maùy tính nhieàu caáp Caáp 1: Lôùp vi chöông trình. Ngöôøi ta coù theå taïo ra moät chuoãi caùc ngoân ngöõ. Ngoân ngöõ ôû lôùp döôùi ñôn giaûn. caøng leân lôùp treân ngoân ngöõ caøng phöùc taïp. Nhöõng leänh môùi naøy taïo ra moät ngoân ngöõ L3 nhôø vaäy coù theå vieát caùc chöông trình cho maùy tính aûo duøng ngoân ngöõ L3. Nhö vaäy ngöôøi ta laïi ñònh nghóa moät taäp leänh môùi gaàn guó vôùi ngöôøi söû duïng hôn vaø ít phuï thuoäc hôn vaøo maùy tính nhö L2. trong caáp naøy ta thaáy coù chöông trình goïi laø vi chöông trình duøng ñeå phieân dòch nhöõng leänh ôû caáp 2. Thöôøng chuùng ta thaáy caùc maùy tính coù 6 caáp. caùc coång (caûng) v.v… Chuùng ta seõ ñi saâu vaøo caáp 0 trong giaùo trình naøy. Khaùc vôùi caáp 0. Nguyeãn Höõu Loäc Khoa Vaät Lyù . loaïi sau deã söû duïng hôn so vôùi loaïi tröôùc.Caán Truùc Maùy Tính -6- lyù töôûng. Ngoân ngöõ maùy L1 Hình 1. Ñieàu naøy coù veõ nhö traùi ngöôïc vôùi yù töôûng ban ñaàu khi taïo ra ngoân ngöõ L2: taïo moät ngoân ngöõ ñôn giaûn vaø deã söû duïng cho con ngöôøi hôn L1 laø ngoân ngöõ cuûa maùy. Ña soá caùc maùy tính hieän nay coù ít nhaát 2 caáp. do vaäy ngöôøi ta xem maùy tính nhö moät choàng caùc lôùp (caáp) nhö trình baøy trong hình 1. Ngoân ngöõ Ln Caáp 3 Maùy aûo M3.1. Ngoân ngöõ L3 Caáp 2 Maùy aûo M2. Caáp n Maùy aûo Mn. Ngoân ngöõ L2 Caáp 1 Maùy thöïc M1.

Caán Truùc Maùy Tính -7- Caáp 2: Lôùp maùy qui öôùc. daây noái. caùc baûng maïch. Ranh giôùi giöõ phaàn cöùng vaø phaàn meàm thöôøng xuyeân thay ñoåi. thieát bò ñaàu cuoái v. Caùc maïch ñieän töû naøy keát hôïp vôùi caùc phaàn töû cô khí.2. coøn caáp 4 vaø 5 thöôøng laø bieân dòch (ñieàu naøy khoâng phaûi luoân ñuùng). caùc thuaät toaùn hoaëc caùc leänh. Hôn theá phöông phaùp ñeå hoã trôï caùc caáp treân laø khaùc nhau: Caáp 2 vaø 3 thöôøng ñöôïc phieân dòch. Coù theå xem ñaây laø moät lôùp lai (hybrid). Hôn theá nöõa ngaøy caøng thaáy raèng ranh giôùi giöõ caùc lôùp maùy tính ngaøy caøng khoâng roõ raøng. Caáp 3: Lôùp heä ñieàu haønh. Duøng nhöõng töø gôïi nhôù ñeå laäp trình do vaäy thuaän tieän hôn. nguoàn nuoâi. Song Nguyeãn Höõu Loäc Khoa Vaät Lyù . Nhöõng nhaø laäp trình heä thoáng thöôøng chuù yù ñeán caùc caáp thaáp (töø caáp 3 trôû xuoáng). Baát kyø moät pheùp toaùn naøo ñoù giaûi ñöôïc baèng phaàn meàm ñeàu coù theå thöïc hieän tröïc tieáp baèng phaàn cöùng vaø baát kyø moät leänh naøo ñoù thi haønh baèng phaàn cöùng ñeàu coù theå moâ phoûng baèng phaàn meàm. ngaøy mai laïi thöïc hieän baèng phaàn cöùng vaø ngöôïc laïi. Ngöôøi ta coù theå coù caáp 6 hoaëc caáp cao hôn cho nhöõng öùng duïng cuï theå ñöôïc xem laø coâng cuï cho caùc lónh vöïc chuyeân ngaønh.v… Caáp 4: Lôùp hôïp ngöõ. II. Coù laäp luaän cho raèng phaàn cöùng vaø phaàn meàm töông ñöông vôùi nhau veà maët logic (hardware and software are logically equivalent). ñóa quang…. trong khi aáy vôùi nhöõng nhaø laäp trình öùng duïng laïi quan taâm ñeán nhöõng caáp cao hôn (töø caáp 4 leân). Coù nhöõng caùi hoâm nay thöïc hieän baèng phaàn meàm.v… khaùc vôùi nhöõng gì khoâng sôø thaáy ñöôïc nhö caùc yù töôûng tröøu töôïng. PHAÀN CÖÙNG VAØ PHAÀN MEÀM: Nhöõng chöông trình vieát baèng ngoân ngöõ maùy ñeàu coù theå thöïc hieän tröïc tieáp baèng caùc maïch ñieän töû maø khoâng caàn phaûi bieân dòch hay phieân dòch. boä nhôù. Nhö vaäy phaàn meàm goàm caùc thuaät toaùn vaø caùch theå hieän chuùng baèng leänh: caùc chöông trình. Thöôøng ôû lôùp naøy taát caû caùc maùy tính ñeàu coù nhöõng ñieåm gioáng nhau duø chuùng ñöôïc taïo bôûi nhöõng nhaø saûn xuaát khaùc nhau. Ngoân ngöõ söû duïng ôû caáp 1. khaû naêng thöïc hieän nhieàu leänh song song v. Caáp 5: Lôùp öùng duïng: Duøng ngoân ngöõ caáp cao ñeå laäp trình. nhöõng chöõ vieát taét deã hieåu hôn vôùi con ngöôøi. Coù theå thaáy toàn taïi moät khoaûng caùch raát lôùn giöõa caáp 3 vaø caáp 4.3 laø ngoân ngöõ soá trong khi aáy töø caáp 4 ngöôøi ta söû duïng nhöõng töø. Caùc nhaø saûn xuaát ñeàu cung caáp keøm theo maùy "Soå tay ngoân ngöõ maùy" trong ñoù coù taäp leänh rieâng cuûa töøng maùy. Nhöõng chöông trình naøy ñöôïc caát giöõ treân nhöõng thieát bò löu tröõ nhö ñóa töø. maùy in. caùc daây noái goïi chung laø phaàn cöùng. Nhö vaäy phaàn cöùng laø nhöõng gì coù theå sôø thaáy ñöôïc nhö caùc maïch tích hôïp. Ngoaøi moät soá caùc leänh ñaõ bieát (coù trong caáp 2 ) trong lôùp naøy coøn xuaát hieän nhieàu leänh ñaëc bieät nhö toå chöùc quaûn lyù boä nhôù.

III. Caùi môùi trong maùy naøy laø noù ñoïc caùc leänh töø bìa ñuïc loã vaø xöû lyù chuùng. giaùo sö toaùn taïi Ñaïi hoïc Cambridge. con gaùi cuûa moät nhaø thô Anh teân Lord Byron vaø cuõng laø ngöôøi trôï lyù cuûa Babagge laø ngöôøi ñaàu tieân vieát chöông trình cho maùy tính. chia vaø chuyeån keát quaû veà quaày baùn haøng. nhaân. Vì vaäy sau naøy Boä quoác phoøng Hoa kyø ñaõ laáy teân Ada ñeå ñaët cho moät ngoân ngöõ laäp trình do nhoùm Bull taïo ra. Nhö vaäy vieäc öùng duïng maùy tính ngaøy caøng deã daøng maëc daàu chuùng ngaøy caøng phöùc taïp. chính vì lyù do naøy maø veà sau Niklaus Wirth ñaõ laáy teân Pascal ñaët cho ngoân ngöõ laäp trình maø oâng ñaõ saùng taïo neân. John Atanassoff thuoäc Iowa State College vaø George Stibbitz thuoäc Bell Labs ñaõ cheá taïo ra caùc maùy tính. Maùy naøy ñöôïc laäp trình nhôø 1 ngoân ngöõ ñôn giaûn goïi laø hôïp ngöõ. Coái xaây nhaän caùc toaùn haïng töø quaày baùn haøng sau ñoù thöïc hieän coäng. tröø. cuõng chính vì vaäy neân coù theå xem Babbage laø OÂng toå cuûa ngaønh maùy tính hieän nay. Maùy chæ tính toaùn vôùi moät thuaät toaùn ñôn. Tuy vaäy nhöõng yù töôûng cuûa Babagge ñaõ ñaët neàn moùng cho maùy tính ñieän töû ngaøy nay. coái xaây (Boä tính toaùn). Maùy naøy hoaït ñoäng toát tuy vaäy Babagge mong thöïc hieän ñöôïc vôùi nhieàu thuaät toaùn khaùc hôn vaø oâng ñaõ ñeå nhieàu thôøi gian nghieân cöùu taïo ra 1 maùy tính môùi. Tuy nhieân Babbage khoâng theå taïo ra caùi maùy hoaøn toaøn nhö yù vì coâng ngheä theá kyû thöù XIX ñaõ khoâng ñaùp öùng ñöôïc. Song vaãn coù theå xem oâng laø moät trong nhöõng ngöôøi tieân phong cheá taïo ra maùy tính. LÒCH SÖÛ PHAÙT TRIEÅN MAÙY TÍNH: 1. Baron Gottfried von Leibniz (1646-1716) theâm vaøo pheùp nhaân vaø pheùp chia vaø ñoù chính laø tieàn thaân cuûa maùy tính boû tuùi (calculator) ngaøy nay cuûa chuùng ta. ñaõ thieát keá vaø xaây döïng ñöôïc maùy sai phaân (difference engine). Maùy naøy goàm boán boä phaän: Quaày baùn haøng (Boä nhôù). Ada Augusta Lovelace. Taïi Hoa kyø. Naêm 1642 luùc aáy Pascal môùi 19 tuoåi ñaõ taïo ra moät maùy hoaøn toaøn baèng cô khí ñieàu khieån baèng tay vaø thöïc hieän ñöôïc pheùp coäng vaø pheùp tröø . Cuøng Nguyeãn Höõu Loäc Khoa Vaät Lyù . John Mauchley laø giaùo sö vaät lyù taïi Ñaïi hoïc Pennsylvania maø chuùng ta seõ ñeà caäp sau. Moät trong nhöõng phuï taù cuûa Stibbitz. maùy phaân tích (analytical engine). Trong nhöõng naêm 1930 moät kyõ sö Ñöùc teân Konrad Zuse ñaõ taïo ra moät soá maùy tính laøm baèng rô le ñieän töø duø chöa bieát ñeán coâng trình cuûa Babagge. phöông phaùp sai phaân höõu haïn söû duïng caùc ña thöùc . ngoõ vaøo (Boä ñoïc bìa ñuïc loã) vaø ngoõ ra (boä xuyeân bìa hay maùy in).Caán Truùc Maùy Tính -8- vieäc phaân ñònh caùc lôùp giuùp cho ngöôøi laøm vieäc vôùi maùy tính taïi 1 lôùp n naøo ñoù seõ khoâng caàn bieát nhieàu ñeán chi tieát caùc lôùp döôùi. Theá heä khoâng: Nhöõng maùy tính cô vaø ñieän töø (1642-1945) Blaise Pascal (1623-1662) laø ngöôøi coù coâng chính trong vieäc taïo ra maùy laøm toaùn ñaàu tieân. Raát tieác laø taát caû caùc maùy naøy ñeàu ñaõ bò phaù huõy trong nhöõng ñôït neùm bom xuoáng Berlin naêm 1944. 30 naêm sau. Neáu nhö maùy cuûa Atanassoff khoâng chaïy ñöôïc nhö mong muoán thì maùy cuûa Stibbitz vôùi yeâu caàu thaáp hôn ñaõ hoaït ñoäng toát vaø ñöôïc giôùi thieäu naêm 1940 taïi Dartmouth College. Taát caû ñeàu thöïc hieän baèng cô khí. Maõi ñeán 150 naêm sau ñoùù Charles Babbage (1792-1871).

Sau naøy ngöôøi ta thöôøng xem ENIAC laø maùy tính ñieän töû ñaàu tieân cuûa nhaân loaïi. naëng 30 taán vaø tieâu thuï 140KW. ñöôïc hoaøn taát naêm 1944 ôû Harvard goàm 72 töø. Taïi Hoa kyø. vaø ñeán nay vaãn laø cô sôû cho haàu heát caùc maùy tính soá. oâng quyeát ñònh taïo moät maùy baèng rôø le maø tröôùc ñoù Babagge ñaõ khoâng theå thöïc hieän ñöôïc baèng caùc baùnh xe raêng cöa. caùc nhaø nghieân cöùu ôû M. Vieäc xuaát nhaäp duøng caùc baêng giaáy ñuïc loã. Mauchley vaø sinh vieân J. Theá heä thöù nhaát: Nhöõng maùy tính ñeøn ñieän töû (1945-1955) Caùc maùy tính ñieän töû ñöôïc phaùt trieån nhanh trong theá chieán thöù 2 phuïc vuï caùc muïc ñích quaân söï. WEIZAC ôû Vieän Weizmann nöôùc Israel v. Sau chieán tranh.T. döï aùn naøy bò toån haïi sau khi hoï rôøi khoûi Penn ñeå thaønh laäp coâng ty maùy tính ôû Philadelphia sau naøy laø coâng ty Unisys. moät trong nhöõng ngöôøi tham gia trong döï aùn ENIAC tröôùc ñaây laø nhaø toaùn hoïc noåi tieáng John von Neumann ñeán Princeton vaø thieát keá ra maùy IAS. Maùy naøy goàm 18. Maùy tính coù khaû naêng löu tröõ chöông trình ñaàu tieân .Caán Truùc Maùy Tính -9- luùc aáy Howard Aiken ñeå thöïc hieän luaän aùn taïi Havard ñaõ phaûi laøm moät khoái löôïng lôùn caùc baøi toaùn baèng tay. cuõng xaây döïng moät maùy tính. John Mauchley ñeà nghò quaân ñoäi taøi trôï cho vieäc xaây döïng maùy tính ñieän töû. Vôùi coâng vieäc ban ñaàu laø saûn xuaát ra caùc maùy ñuïc loã cho caùc bìa vaø caùc maùy xeáp bìa baèng cô khí. tieán haønh xaây döïng moät maùy tính ñieän töû goïi laø ENIAC (Electronic Numerical Integrator And Computer).000 ñeøn ñieän töû vaø 1500 rôø le. Khoùa hoïc laø söï khôûi ñaàu cho söï phaùt trieån oà aït trong vieäc thieát keá caùc maùy tính soá lôùn. Kyõ nguyeân ñieän töû ñaõ baét ñaàu. Maùy tính ñaàu tieân cuûa Aiken laø maùy Mark I. Maurice Wilkes thieát keá EDSAC taïi Ñaïi hoïc Cambridge. Ñeà nghò ñöôïc chaáp thuaän vaøo naêm 1943. Tuy vaäy caùc coâng trình naøy ñeàu naèm trong caùc döï aùn bí maät quaân söï. MANIAC ôû Los Alamos Laboratory. Chính vì vaäy oâng mong muoán thöïc hieän caùc baøi toaùn moät caùch töï ñoäng. Mauchley vaø Eiker toå chöùc moät khoùa hoïc heø ñeå moâ taû caùc coâng vieäc cuûa hoï cho nhöõng baïn ñoàng nghieäp. sau ñoù nhôø caùc coâng trình cuûa Babagge maø oâng tìm thaáy trong thö vieän.I. Vaøo cuøng thôøi gian von Neumann xaây döïng maùy IAS. Sau ñoù Aiken hoaøn taát maùy Mark 2 vaø caùc maùy tính rô le trôû neân loãi thôøi. Caùc maùy khaùc nhö JOHNIAC ôû Rand Corporation. Chæ bieát raèng taïi Ñöùc coù nhöõnng maùy tính cuûa Zuse. Presper Eckert. 2. Whirlwind 1. Trong luùc aáy. ILLIAC ôû Ñaïi hoïc Illinois. sau ñoù maùy 704 ra ñôøi vaø Nguyeãn Höõu Loäc Khoa Vaät Lyù . OÂng ñaõ ñöa ra thieát keá cô baûn goïi laø maùy von Neumann. naêm 1953 IBM saûn xuaát ra maùy tính 701. Döï aùn naøy daãn ñeán phaù minh ra boä nhôù loõi cuûa Jay Forrester vaø daãn ñeán taïo ra caùc maùy tính mini thöông maïi ñaàu tieân.v… Eckert vaø Mauchley laøm ra maùy keá tieáp EDVAC (Electronic Discrete Variable Automatic Computer) . taïi Anh coù COLOSSUS maø moät trong nhöõng ngöôøi tham gia thieát keá laø nhaø toaùn hoïc noãi tieáng ngöôøi Anh teân Alan Turing. moãi töø 23 soá thaäp phaân vaø coù chu kyø leänh laø 6 sec.

ñoù laø bus ñôn goïi laø omnibus. System 360 coù nhieàu ñoåi môùi. moät ngoân ngöõ coù tröôùc PASCAL. PDP-8 coù moät ñoåi môùi chính. Maùy naøy coù theå ñoïc vaø ghi baêng töø. YÙ töôûng veà caùc hoï maùy ñöôïc öa chuoäng ngay laäp töùc.Phaàn meàm vieát vieát treân cô sôû duøng ñöôïc treân caùc maùy kieåu khaùc.Caán Truùc Maùy Tính -10- naêm 1958 IBM saûn xuaát ra maùy 709 vaø trôû thaønh moät trong nhöõng coâng ty maùy tính haøng ñaàu theá giôùi. Theá heä thöù ba: Nhöõng maùy tính IC (1965-1980) Maïch tích hôïp IC (integrated circuit) hay coøn goïi vi maïch tích hôïp ñöôïc phaùt minh cho pheùp vaøi chuïc transistor ñöôïc ñaët trong moät chip ñôn. Walter Brattain vaø William Shockley (Giaûi thöôûng Nobel Vaät lyù 1956). Vaøo naêm 1964. System 360 duøng vi maïch. hoï xaây döïng moät phieân baûn cuûa 709 baèng transistor. coù coâng suaát vaø kích thöôùc taêng. Vaøi naêm sau ñoù DEC giôùi thieäu PDP-8. Theá heä thöù hai: Nhöõng maùy tính transistor (1955-1965) Transistor ñöôïc phaùt minh ôû Bell Labs naêm 1948 bôûi John Bardeen. Vaøo thôøi ñieåm naøy IBM ñaõ trôû thaønh moät coâng ty thieát keá maùy tính chính nhôø baùn caùc maùy höôùng kinh doanh nhoû vôùi maùy 1401. Kenneth Olsen. in keát quaû nhanh hôn 7094.T.û Vôùi coâng ty IBM. moät coâng ty khôûi ñaàu môùi. 4. Moät bus laø moät taäp caùc daây noái song song duøng ñeå lieân keát caùc thaønh phaàn khaùc nhau trong 1 maùy tính. 3. quan trong laø heä naøy vaøi kieåu (model) chaïy cuøng moät loaïi hôïp ngöõ. moät coâng ty maùy tính haøng ñaàu giôùi thieäu moät saûn phaåm. vaø trong moät vaøi naêm haàu heát caùc nhaø saûn xuaát maùy tính coù moät hoï caùc maùy chung. Trong 10 naêm. Naêm 1961 maùy PDP-1 xuaát hieän vôùi giaù thaønh nhieàu so vôùi caùc maùy tính tröôùc ñoù. moät maùy coù toác ñoä nhanh hôn maùy 7094 vì beân trong CPU coù moät cô cheá song song thaät söï. maùy 12 bit nhöng giaù thaønh reû hôn PDP-1 gaàn 10 laàn. thaønh laäp coâng ty DEC naêm 1957 ñeå saûn xuaát maùy tính thöông maïi. Maùy tính transistor ñaàu tieân ñöôïc xaây döïng ôû Lincoln Laboratory cuûa M. Coù nhieàu naùy tính khaùc xuaát hieän trong thôøi kyø naøy tuy vaäy chæ coù moät maùy noåi baät vôùi moät lyù do khaù khaùc bieäaø ñaùng ñeà caäp. vaø bao goàm nhieàu ñaëc tröng trong phaàn cöùng taïo deã daøng cho coâng vieäc cuûa trình bieân dòch. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Maùy ñöôïc thieát keá cho caû tính toaùn trong thöông maïi vaø tính toaùn trong khoa hoïc. Moät trong caùc kyõ sö laøm taïi ñaáy. goïi laø TX-0 (Transistorized eXperimental computer 0). Caáu truùc naøy ñöôïc chaáp nhaän vaø thöïc hieän haàu heát caùc maùy tính nho. ñoïc vaø ñuïc loã caùc bìa. Caùc nhaø thieát keá coù chieán thuaät khaùc so vôùi caùc ñoái thuû caïnh tranh laø hoï ñaët bieät xaây döïng moät maùy vôùi yù ñònh laäp trình baèng ngoân ngöõ Algol 60. Moät trong nhöõng ñoåi môùi cuûa PDP-1 laø boä hieån thò vaø khaû naêng veõ nhieàu ñieåm treân maøn hình 512x512. Naêm 1964. IBM .I. transistor ñaõ caùch maïng hoaù maùy tính vaø vaøo cuoái thaäp nieân 50 caùc maùy tính ñeøn ñieän töû bò loaïi boû. maùy Bourroughts B5000. maùy 7090 vaø sau ñoù 7094. Coâng nghieäp maùy tính mini ñöôïc khai sinh . CDC giôùi thieäu maùy 6600.

chöông trình khaùc coù theå tính toaùn 360 cuõng laø maùy tính ñaàu tieân coù theå moâ phoûng caùc maùy tính khaùc. Söï phaùt trieån naøy daãn ñeán coù theå saûn xuaát caùc maùy tính nhoû hôn vaø nhanh hôn. Chuùng ñeàu coù caùc thanh ghi höôùng töø vaø moät boä nhôù höôùng byte. Theá heä thöù tö: Nhöõng maùy tính VLSI vaø PC (1980-?) Vaøo thaäp nieân 80. Hieän nay caùc maùy tính coù theå chia laøm 5 loaïi: Loaïi Maùy vi M 1 2 1 3 Meg abyte 1 4 32 128 Maùy IBM PC PDP11/84 SUN-4 IBM 300 Cray 2 Thoâng duïng Xöû lyù vaên IPS (*) tính mini mini me baûn thöïc Maùy tính Sieâu Mainfra ÑK thôøi gian 0 0 Maùy chuû maïng Ngaân haøng Sieâu 1 1024 Döï baùo thôøi maùy tính 25 tieát MIPS: (Million of Instructions Per Second) Trieäu leänh trong 1 giaây. vi maïch côõ cöïc lôùn (Very Large Scale Integration) coù khaû naêng chöùa vaøi chuïc ngaøn cho ñeán haøng chuïc trieäu transistor treân moät chip ñôn. thöïc hieän baûng tính (spreadsheet) vaø moät soá caùc öùng duïng maø caùc maùy tính lôùn hôn khoâng thöïc hieän toát ñöôïc. 5. Theá giôùi maùy tính mini cuõng ñaõ coù moät böôùc tieán lôùn trong theá heä maùy tính vi maïch khi DEC giôùi thieäu maùy PDP-11. Caùc maùy vi tính ñöôïc söû duïng theo caùch khaùc vôùi maùy tính lôùn. coù vaøi chöông trình trong boä nhôù ñoàng thôøi ñeå khi moät chöông trình ñang chôø vieäc xuaát/nhaäp hoaøn taát. PDP-11 raát ñöôïc caùc tröôøng Ñaïi hoïc öa chuoäng vaø DEc daãn ñaàu trong vieäc saûn xuaát caùc maùy tính mini so vôùi caùc nhaø saûn xuaát khaùc. Chuùng ñöôïc söû duïng cho vieäc xöû lyù vaên baûn (word processing). Moät ñaëc tröng khaùc laø khoâng gian ñòa chæ lôùn (luùc baáy giôø) cho 224 byte nhôù (16 megabyte). Treân nhieàu khía caïnh thì coù theå xem PDP-11 nhö ngöôøi em cuûa hoï 360. Ngaøy caøng xuaát hieän caùc maùy tính duøng cho caù nhaân vôùi giaù caû raát thaáp goïi laø maùy vi tính. Nguyeãn Höõu Loäc Khoa Vaät Lyù . moät keá thöøa 16-bit cuûa PDP-8.Caán Truùc Maùy Tính -11- Ñoåi môùi quan troïng khaùc trong 360 laø ña laäp trình (multi-programming).

chuùng chöùa moät löôïng lôùn caùc maïch xuaát nhaäp nhöng thöïc teá khoâng ñöôïc söû duïng roäng raõi. Coäng ngheä MMX ñöôïc Intel phaùt trieån ñeå ñaùp öùng nhu caàu veà truyeàn thoâng ña phöông tieän (multimedia) Nguyeãn Höõu Loäc Khoa Vaät Lyù . Naêm 1976 Intel cho ra ñôøi 8085 laø 8080 ñoùng voû chung vôùi vaøi thaønh phaàn vaøo/ra boå sung. Söï khaùc nhau cô baûn cuûa 80386 vaø 80486 laø söï hieän dieän cuûa boä ñoàng xöû lyù toaùn hoïc (coprocessor). chip naøy ít nhieàu töông thích vôùi caùc chip duøng chung vôùi 8088.Caán Truùc Maùy Tính -12- Hoï Intel: Naêm 1968 coâng ty Intel ñöôïc thaønh laäp ñeå cheá taïo caùc chip nhôù. 8088 vaø 8086 ñeà khoâng theå ñòa chæ hoaù ñöôïc boä nhôù lôùn hôn 1 megabyte. Intel coâng boá chip Pentium. Gioáng nhö 80286. boä ñieàu khieån boä nhôù vaø 8K boä nhôù ñeäm truy caäp nhanh (cache) treân 1 chip ñôn. moät CPU ñôn chip 16-bit thaät söï. Pentium theá heä 2 coù toác ñoä töø 75 ñeán 200MHz.5 trieäu transistor treân 1 chip. 80286 ñöôïc duøng trong IBM PC AT vaø PS/2. Caùc chip Pentium MMX (theá heä 3) coâng boá vaøo thaùng 1 naêm 1997 coù toác ñoä leân ñeán 233MHz vôùi treân 4. Intel cho ra ñôøi 80186 vaø 80188 laø caùc phieân baûn môùi cuûa 8086 vaø 8088. Khi IBM choïn 8088 laøm CPU cho caùc maùy vi tính IBM PC ñaàu tieân. Thaùng 10 naêm 1992.1 trieäu transistor. Intel ñaàu tö chip ña naêng (general purpose) 8080 vaø saûn phaåm naøy ñaõ gaây soùng gioù trong coâng nghieäp vaø trôû thaønh maët haøng coù thò tröôøng lôùn. Vaøi naêm keá tieáp. 80386. Roài keá tieáp Intel cho ra ñôøi 8086. Pentium ñaõ ñöôïc söû duïng coâng ngheä sieâu voâ höôùng (superscalar technology). chip naøy trôû thaønh chuaån coâng nghieäp cuûa maùy tính caù nhaân. Sau ñoù chuyeån sang saûn xuaát caùc CPU ñôn chip theo yeâu caàu vaø Intel ñaõ thöïc hieän chip 4004 loaïi 4 bit vaø 8008 loaïi 8 bit. chip naøy baét ñaàu söû duïng vaøo thaùng 03 naêm 1993. Sau ñoù laø söï xuaát hieän 8088 coù caáu truùc gioáng 8086 nhöng bus döõ lieäu chæ coù 8 bit neân giaù thaønh reû hôn vaø chaäm hôn. Pentium coù 32 bit ñòa chæ vaø 64 bit döõ lieäu tuy vaãn chæ coù caùc thanh ghi 32 bit beân trong. Chip 80486 DX ñöôïc giôùi thieäu ñaàu tieân vaøo thaùng 4 naêm 1989. Sau ñoù laø 80486 töông thích vôùi 80386 vaø vöôït troäi hôn. Pentium theá heä 1 coù toác ñoä 60 /66 MHz. moät phieân baûn töông thích vaø vöôït troäi 8086. Keá tieáp laø moät CPU 32-bit thaät söï treân 1 chip. Intel ñaõ baùn ñöôïc vaøi trieäu saûn phaåm naøy. Ñeå khaéc phuïc vaán ñeà naøy Intel ñaõ thieát keá 80286. tích hôïp khoaûng 3. Taäp leänh cô baûn gioáng 8086 vaø 8088 nhöng toå chöùc boä nhôù khaùc vaø raéc roái hôn. Töø söï thaønh coâng baát ngôø töø 2 loaïi chip treân.3 trieäu transistor. Pentium coù 2 loaïi boä cache. Gioáng nhö 8088. tích hôïp treân 3. ñaây laø moät thaønh coâng lôùn cuûa Intel. coâng ngheä naøy coù khaû naêng keát hôïp vôùi caùc maùy coù taäp leänh thu nhoû RISC (Reduced Instruction Set Computer).

Atari . chip naøy veà cô baûn gioáng 68010 nhöng theâm caùc chaân ñòai chæ ñeå coù theå ñòa chæ hoùa boä nhôù 2 gigabyte thay vì 16 megabyte ít oûûi. Naêm 1979. chip naøy töông thích vôùi 6800 ñoàng thôøi ñöôïc theâm vaøo caùc ñaëc tröng phuï taïo deã daøng cho caùc pheùp tính soá 16-bit.5 trieäu transistor treân 1 chip. Chip 6800 laø chip 8 bit so saùnh ñöôïc vôùi 8080. 68008. Ñeán naêm 1999 vôùi söï xuaát hieän cuûa Pentium III maùy vi tính coù khaû naêng bieåu dieãn khoâng gian ba chieàu vaø nhaän bieát cuõng nhö toång hôïp tieáng noùi. Sau ñoù laø söï xuaát hieän cuûa 68012. ñöôïc thò tröôøng chaáp nhaän vaø ñöôïc söû duïng roäng raõi laøm boä ñieàu khieån cho caùc thieát bò coâng nghieäp trong nhöõng naêm ñaàu cuûa thaäp nieân 70. Ñaây laø ñieàu ít coù coâng ty naøo daùm laøm tröôùc ñoù. aâm thanh soá vaø caùc troø chôi trong khoâng gian ba chieàu…. caùc phieân baûn môùi chæ coù vaøi leänh ñöôïc theâm vaøo caùc phieân baûn cuõ. Caùc nhaø saûn xuaát maùy vi tính Macintosh. Motorola. Nhìn chung chip naøy coù söï khôûi ñaàu khaù thaønh coâng vaø taïo ra moät gia ñình 680x0 raát gioáng nhau theo quan ñieåm ngöôøi laäp trình. gioáng heät 68000 chæ khaùc ôû choã söû duïng bus döõ lieäu 8 bit nhaèm taïo ra caùc saûn phaåm giaù thaønh thaáp. 68008 khoâng ñöôïc söû duïng roäng raõi.Caán Truùc Maùy Tính -13- Thaùng 5 naêm 1997 Intel coâng boá chip Pentium II vôùi caùc toác ñoä leân ñeán 300MHz tích hôïp treân 7. Khoâng gioáng 8088 cuûa Intel. Vaán ñeà ôû ñaây laø boä nhôù aûo (virtual memory) . Chip môùi naøy. Amiga choïn 68000 laøm CPU vì chip naøy hoaøn toaøn caét ñöùt vôùi quaù khöù vaø coù chieàu daøi töø 32 bit. Motorola giaûi quyeát baèng caùch ñöa ra 68010 coù caùc ñaëc tröng caàn thieát. Naêm 2001 Intel cho ra ñôøi Pentium IV toác ñoä leân ñeán 1. Tieáp theo laø chip 6809. Hoï Motorola: Moät thôøi gian ngaén sau khi Intel giôùi thieäu 8080. Taàn soá laøm vieäc toái ña laø 950MHz. Khoâng bao laâu sau ngöôøi ta muoán thöïc hieän caùc heä ñieàu haønh tinh vi nhö UNIX duøng 68000. Chip thöù 2 trong hoï Motorola. Chip 68000 laø moät caáu truùc lai giöõa 16 bit vaø 32 bit. 68000 ñöa ra moät söï thieát keá hoaøn toaøn môùi thay vì töông thích vôùi caùc chip ñaõ loãi thôøi. Nguyeãn Höõu Loäc Khoa Vaät Lyù .7GHz duøng coâng ngheä sieâu oáng daãn (hyper pipelined technology) caûi thieän ñaùng keå chaát löôïng hình aûnh soá. 68000 coù khaû naêng hoã trôï nhöng chöa ñaày ñuû. Motorola giôùi thieäu 1 chip hoaøn toaøn môùi khoâng töông thích vôùi 6800 hoaëc 6809. Söï phaùt trieån caùc CPU cuûa Intel phaûn aùnh toaøn boä söï phaùt trieån trong coâng nghieäp maùy tính. nhaø cung caáp linh kieän baùn daãn caïnh tranh vôùi Intel ñöa ra 6800.

Caán Truùc Maùy Tính -14- Moät naêm sau Motorola laïi cho ra ñôøi 68020 laø moät chip 32 bit thaät söï. Chuùng moâ phoûng toaøn boä caùc leänh vaø thaäm chí phaàn lôùn caùc chip naøy töông thích caû caùc chaân cuûa caùc chip Intel. Söï caïnh tranh giöõa caùc chip cuûa Intel vaø caùc chip cuûa Motorola seõ tieáp tuïc trong nhieàu naêm nöõa. Apollo vaø Hewlett-Packard. Chip tieáp theo laø 68030 maø söï caûi tieán naèm ôû quaûn lyù boä nhôù. moät ñoàng xöû lyù toaùn hoïc. Sau naøy laïi xuaát hieän chip Power PC. 68040 vôùi 80486. Baát cöù phaàn cöùng hay phaàn meàm naøo hoaït ñoäng treân caùc maùy vi tính duøng caùc chip cuûa Intel cuõng seõ hoaït ñoäng treân caùc maùy vi tính duøng caùc chip töông thích cuûa AMD vaø Cyrix. Hieän nay nhieàu coâng ty trong ñoù chuû yeáu laø AMD (Advanced Micro Designs) vaø Cyrix saûn xuaát caùc boä vi xöû lyù hoaøn toaøn töông thích vôùi caùc boä vi xöû lyù cuûa Intel. 68020 laø moät thaønh coâng lôùn vaø laø nhaân cuûa haàu heát caùc traïm laøm vieäc (workstation) cheá taïo bôûi Sun Microsystems. ñôn vò quaûn lyù boä nhôù vaø cache treân chip. 68040 gioáng nhö 80486 chöùa CPU. Roõ raøng ta coù theå so saùnh 68030 vôùi 80386. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Pentium vôùi Power PC cuûa 2 coâng ty Intel vaø Motorola.

Chuùng ta caàn phaûi bieát sô löôïc caáu truùc chung cuûa maùy tính tröôùc khi nghieân cöùu kyõ caùc caáp lôùp khaùc nhau trong caùc chöông sau. CAÙC BOÄ XÖÛ LYÙ Boä xöû lyù trung taâm (CPU) laø ñaàu naõo cuûa maùy tính. Trong chöông naøy seõ giôùi thieäu 3 thaønh phaàn naøy vaø söï phoái gheùp chuùng. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caáu truùc cuûa moät maùy tính ñôn giaûn coù theå ñöôïc hình dung nhö sau: Ñôn vò Ñieàu khieån (CU) Ñôn vò Soá hoïc vaø Logic (ALU) Caùc thanh ghi Boä Nhôù Chính Ñóa Maùy in Thieát bò Vaøo / Ra Hình 2.1 Bus I. boä nhôù vaø caùc thieát bò vaøo/ra.Caán Truùc Maùy Tính -15- CHÖÔNG 2: CAÁU TRUÙC CHUNG MAÙY TÍNH Moät maùy tính bao goàm caùc boä xöû lyù. Chöùc naêng cuûa noù laø thöïc hieän caùc chöông trình naèm trong boä nhôù chính baèng caùch naïp leänh sau ñoù giaûi maõ roài thöïc hieän tuaàn töï heát leänh naøy ñeán leänh khaùc.

f. Haàu heát caùc maùy tính ñeàu coù caùc thanh ghi nhö thanh ghi chöùa (accumulator). thanh ghi traïng thaùi (status register). b. giaûi maõ leänh) vaø ñôn vò soá hoïc vaø logic (thöïc hieän caùc pheùp toaùn nhö coäng. VAØ. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Thöïc hieän leänh CPU thöïc hieän leänh tuaàn töï nhö sau: a. thanh ghi chæ soá (index register). h. Moät taäp lôùn thöôøng toàn taïi nhieàu leänh khoâng ñöôïc söû duïng roäng raõi. nhaân.v… CPU goàm coù caùc thanh ghi cho pheùp löu giöõ keát quaû taïm thôøi hoaëc thoâng tin ñieàu khieån. soá leänh cuûa moät taäp leänh thöôøng trong khoaûng töø 20 ñeán 300. Xu höôùng trong thöïc teá seõ ngöôïc laïi. con troû ngaên xeáp (stack pointer) v.Caán Truùc Maùy Tính -16- Boä xöû lyù trung taâm goàm ñôn vò ñieàu khieån (giöõ nhieäm vuï laáy leänh. Thanh ghi quan troïng nhaát laø thanh ñeám chöông trình (Program Counter) chæ ñeán vò trí cuûa leänh tieáp theo seõ thöïc hieän. HOAËC v. Tìm naïp leänh keá tieáp töø boä nhôù vaøo thanh ghi leänh Thay ñoåi noäi dung thanh ñeám chöông trình ñeå xaùc ñònh ñòa chæ Giaûi maõ leänh vöøa naïp Xaùc ñònh nôi chöùa döõ lieäu trong boä nhôù Tìm naïp döõ lieäu vaøo caùc thanh ghi trong CPU neáu caàn thieát Thöïc hieän leänh Löu keát quaû vaøo nôi thích hôïp Trôû veà böôùc 1 ñeå thöïc hieän leänh keá tieáp Caùc böôùc tuaàn töï treân goïi laø chu kyø tìm naïp-giaûi maõ. d.v… 1. Moät taäp leänh coù soá leänh lôùn khoâng nhaát thieát toát hôn moät taäp leänh nhoû. tröø.thöïc hieän leänh Taäp hôïp taát caû leänh ngöôøi laäp trình coù theå söû duïng ôû moät caáp ñöôïc goïi laø taäp caùc leänh hay goïi ngaén ngoïn laø taäp leänh (instruction set) cuûa caáp ñoù. Ñoái vôùi caáp maùy qui öôùc. g. e. moät taäp leänh nhoû seõ toát hôn. chia. leänh keá c. Moãi thanh ghi coù moät chöùc naêng rieâng. Ngoaøi ra coù thanh ghi leänh (Instruction register).

Maùy tính naøy thao taùc raát nhanh. Modula 2. 2. Trong hình treân pheùp coäng ñöôïc söû duïng ñeå minh hoaï. B. Toå chöùc CPU Ñöôøng döõ lieäu (data path) cuûa moät maùy von Neumann kinh ñieån A+B A B A B ALU A+B Hình 2. ALU thöïc hieän pheùp toaùn coäng. ñöa ra keát quaû treân thanh ghi xuaát ra. Pascal. tröø vaø caùc thao taùc (operation) ñôn giaûn khaùc treân caùc toaùn haïng (operand) chöùa trong A vaø B.Caán Truùc Maùy Tính -17- Caùc trình bieân dòch (compiler) cuûa caùc ngoân ngöõ caáp cao nhö Ada. Maùy tính coù moät taäp leänh raát nhoû goïi laø maùy coù taäp leänh ñöôïc ruùt goïn RISC (Reduced Instruction Set Computer). coàng keành vaø khoù söû duïng. C thöôøng hoaït ñoäng toát treân caùc maùy coù taäp leänh nhoû vaø ñöôïc choïn loïc hôn laø treân caùc maùy coù taäp leänh lôùn. Nguyeãn Höõu Loäc Khoa Vaät Lyù .2 Ñöôøng döõ lieäu bao goàm caùc thanh ghi vaø ñôn vò soá hoïc vaø logic. caùc thanh ghi naøy coù theå ñöa giaù trò vaøo 2 thanh ghi nhaäp vaøo teân A. Döõ lieäu trong thanh ghi xuaát coù theå ñöôïc caát giöõ trôû laïi moät thanh ghi cuûa CPU hoaëc ñöa trôû laïi boä nhôù neáu muoán. Hai thanh ghi naøy choát caùc ngoõ nhaäp vaøo cuûa ñôn vò soá hoïc vaø logic trong luùc ALU tính toaùn.

Vì theá caùc maùy tính coù toác ñoä caøng nhanh phaûi coù kích thöôùc caøng nhoû.Caán Truùc Maùy Tính 3. 1971) döïa vaøo soá luoàng leänh (instruction stream) vaø soá luoàng döõ lieäu (data stream) cuûa maùy tính ñoù: SISD: maùy loaïi ñôn leänh. ña döõ lieäu (Single Instruction stream.SIMD: maùy loaïi ñôn leänh. coù moät luoàng leänh (nghóa laø moät chöông trình) ñöôïc thöïc hieän bôûi 1 CPU vaø coù moät boä nhôù chöùa döõ lieäu. Vôùi caùc maùy tính coù toác ñoä cao. Maùy tính song song ñöôïc chia thaønh 3 loaïi (theo Flynn. ngöôøi ta ñaõ tìm nhieàu bieän phaùp ñeå hoaøn thieän phaàn cöùng.v… Ngay caû trong moâ hình tuaàn töï naøy. Multiple Data stream) MIMD: maùy loaïi ña leänh. Ñeå laøm ñöôïc ñieàu aáy. coù theå nghó ñeán 1 quaù trình song song nhö tìm-naïp leänh keá tieáp tröôùc khi leänh ñang thöïc hieän hoaøn taát. moät chaát duøng laøm nguoäi nhanh. Tuy nhieân. ñôn döõ lieäu (Single Instruction stream. nhieáu giôùi haïn vaät lyù khaùc nhau baét ñaàu xuaát hieän khi taêng toác ñoä phaàn cöùng. Thöïc hieän leänh song song: -18- Töø nhöõng ngaøy ñaàu khai sinh ra maùy tính. ña döõ lieäu (Multiple Instruction stream. toaøn boä khoaûng caùch maø tín hieäu coù theå di chuyeån töø CPU ñeán boä nhôù vaø ngöôïc laïi seõ khoâng theå lôùn hôn 20 cm. Ñieàu naøy coù nghóa laø ñeå xaây döïng moät maùy tính coù thôøi gian leänh laø 1 ngiaây. Ñoâi khi caùc sieâu maùy tính ñöôïc ñaët chìm trong chaát loûng freon. ngöôøi ta thieát keá maùy tính goàm nhieàu CPU toác ñoä chaäm hôn nhöng hoaït ñoäng song song. Single Data stream) . Leänh ñaàu tieân ñöôïc tìm-naïp töø boä nhôù vaø thöïc hieän. Leänh thöù hai ñöôïc tìm-naïp vaø thöïc hieän v. nhöõng nhaø thieát keá ñaõ coá gaéng taïo ra nhöõng maùy tính xöû lyù nhanh. khoaûng 30cm/ngiaây vaø trong caùp ñoàng laø 20cm/ngiaây. Vôùi maùy tính CDC6600 coù nhieàu ñôn vò chöùc naêng (caùc ALU) Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ví duï: Khoâng coù moät tín hieäu naøo coù theå di chuyeån vöôït ñöôïc vaän toác cuûa aùnh saùng trong chaân khoâng. Multiple Data stream) Maùy von Neumann truyeàn thoáng thuoäc loaïi SISD. Nhieàu coâng trình nghieân cöùu ñaõ ñöôïc tieán haønh ñeå xaây döïng nhöõng maùy tính song song nhö vaäy. Ñeå giaûi quyeát vaán ñeà naøy. khaû naêng sinh nhieät lôùn vaø neáu laép maùy tính vaøo 1 theå tích nhoû thì seõ khoù tieâu taùn nhieät. thay vì taïo ra moät CPU toác ñoä cao.

Neáu thôøi gian daønh cho moãi ñôn vò xöû lyù laø m ngiaây thì phaûi maát 5m ngiaây ñeå thöïc hieän moät leänh. Quaù trình naøy tieáp tuïc cho ñeán khi khoâng theå tieáp tuïc ñöôïc nöõa.3: Moät CPU vôùi 5 ñôn vò chöùc naêng hoaït ñoäng song song YÙ töôûng cuûa phöông phaùp thieát keá naøy laø ñôn vò ñieàu khieån tìm-naïp moät leänh vaø sau ñoù ñöa ñeán moät ñôn vò chöùc naêng thích hôïp ñeå thöïc hieän. Moät bieán thaùi cuûa yù töôûng naøy laø taùch vieäc thöïc hieän moät leänh ra thaønh nhieàu phaàn. Trong hình sau ta thaáy moät CPU coù 5 ñôn vò xöû lyù Hình 2. Nguyeãn Höõu Loäc Khoa Vaät Lyù .4: Moät maùy ñöôøng oáng coù 5 ñôn vò xöû lyù Caùch toå chöùc nhö trong hình ñöôïc goïi laø maùy ñöôøng oáng (Pipeline machine). ñôn vò ñieàu khieån tìm-naïp chæ thò keá tieáp vaø ñöa ñeán moät ñôn vò chöùc naêng khaùc. Trong luùc ñoù. hoaëc vì taát caû caùc ñôn vò chöùc naêng cuøng loaïi ñang baän hoaëc moät toaùn haïng vaãn coøn ñang ñöôïc tính toaùn.Caán Truùc Maùy Tính -19- Hình 2. Tuy nhieân vôùi caùc toå chöùc treân coù theå xem moãi leänh thöïc hieän chæ trong m ngiaây do vaäy taêng toác ñoä xöû lyù leänh cuûa maùy leân gaáp 5 laàn.

ÖÙng duïng ñieån hình cuûa loaïi maùy SIMD laø döï baùo thôøi tieát.2 . Hình 2.5 Ñöôøng döõ lieäu ôû ñaây töông töï nhö trong hình 2. phöông phaùp tính ñeàu gioáng nhau nhöng vôùi caùc döõ lieäu khaùc. Töông töï ALU thöïc söï laø moät ALU vector. Ngöôïc laïi.5 b) treân 2 vector nhaäp vaø keát quûa ñöôïc laáy ra ôû vector xuaát. Moät caáu truùc khaù thích hôïp cho coâng vieäc naøy laø maùy vector (vector machine) döôïc trính baøy trong hình 2. Ñoù laø maùy tính ILLIAC IV nhö minh hoïa trong hình 2. chæ khaùc ôû choã thay vì coù moät bieán ñôn cho töøng ngoõ nhaäp cuûa ALU.Caán Truùc Maùy Tính -20- Chuù yù raèng maëc duø maùy söû duïng cô cheá song song beân trong. caùc maùy SIMD thao taùc treân nhieàu taäp döõ lieäu song song. moät maùy ñöôøng oáng daãn vaãn laø maùy SISD do chæ coù moät chöông trình vaø moät taäp döõ lieäu. ta coù moät vector vôùi n ngoõ nhaäp. moät thieát keá khôûi ñaàu töø Ñaïi hoïc Illinois. Thí duï nhö tính nhieät ñoä trung bình haøng ngaøy cho nhieàu vuøng.6 sau: Nguyeãn Höõu Loäc Khoa Vaät Lyù .5 Moät maùy khaùc gaàn gioáng vôùi SIMD laø boä xöû lyù daõy (array processor. coù khaû naêng thöïc hieän moät thao taùc nhö pheùp coâng vector (hình 2. Moät soá sieâu maùy tính coù caáu truùc töông töï vôùi caáu truùc naøy.

Heä thoáng ñaët choã tröôùc trong maùy bay laø moät thí duï. Moät ñôn vò ñieàu khieån truyeàn caùc leänh vaø chuùng ñöôïc thöïc hieän bôûi taát caû caùc boä xöû lyù theo kieåu saùt goùt (lockstep). thænh thoaûng chuùng söû duïng chung moät boä nhôù. moät maùy MIMD söû duïng boä nhôù chia seû (shared memory).Caán Truùc Maùy Tính -21- Hình 2.6 Nguyeãn Höõu Loäc Khoa Vaät Lyù . Hình 2. maø töøng leänh moät vì chuùng ta coù nhieàu luoàng leänh vaø nhieàu luoàng döõ lieäu. trong ñoù caùc CPU khaùc nhau laøm vieäc vôùi nhöõng chöông trình khaùc nhau.6: Boä xöû lyù daõy cuûa maùy ILLIAC IV Caáu truùc naøy bao goàm moät maïng vuoâng caùc phaàn töû boä xöû lyù / boä nhôù. nhieàu ngöôøi cuøng ñaët choã ñoàng thôøi nhöng khoâng tieán haønh song song. Boä xöû lyù daõy ñaëc bieät thích hôïp cho vieäc tính toaùn ma traän. Hình 2.7 a trình baøy moät boä ña xöû lyù (multiprocessor). Caùc boä xöû lyù truy xuaát tôùi boä nhôù chia seû (duøng chung) thoâng qua bus. Loaïi maùy thöù ba laø MIMD. moãi boä xöû lyù söû duïng döõ lieäu rieâng laáy töø moät boä nhôù rieâng.

ñöôïc quaûng caùo coù theå söû duïng caû soá thaäp phaân laãn soá nhò phaân. Moät bit coù theå laø 0 hoaëc 1. Caùc boä ña xöû lyù khaùc khoâng söû duïng moät bus maø duøng nhieàu bus ñeå laøm giaûm taûi. Vieäc truy xuaát boä nhôù rieâng khoâng duøng ñeán bus chính seõ laøm giaûm moät löôïng lôùn löu löôïng treân bus chính. Tuy nhieân ñieàu gì seõ xaûy ra.BOÄ NHÔÙ CHÍNH: Boä nhôù laø moät phaàn cuûa maùy tính duøng ñeå chöùa chöông trình vaø döõ lieäu ñang thöïc hieän. duøng cho 10 soá töø 0 ñeán 9 coøn 6 toå hôïp khoâng söû duïng. Vì lyù do naøy ngöôøi ta noùi soá nhò phaân hieäu quûa hôn soá thaäp phaân. Moät thieát keá ñoù ñöôïc trình baøy trong hình 2. II. Thí duï: 16 bit ôû daïng thaäp phaân coù theå chöùa caùc soá töø 0 tôùi 9999. moät kyõ thuaät söû duïng caùc töø nhôù ñöôïc thöôøng xuyeân söû duïng trong töøng boä xöû lyù.Caán Truùc Maùy Tính -22- Khi nhieàu boä xöû lyù toác ñoä nhanh truy xuaát ñoàng thôøi tôùi boä nhôù chia seû (duøng chung) treân cuøng moät bus thì seõ xaûy ra xung ñoät (conflict). neáu moät ngöôøi naøo ñoù thoâng minh coù theå taïo ra moät linh kieän ñieän töû ñoä tin caäy cao coù theå chöùa tröïc tieáp caùc soá töø 0 ñeán 9 baèng caùch chia ñieän aùp töø 0 tôùi 10 volt thaønh 10 khoaûng. 4 linh kieän naøy coù theå chöùa baát kyø soá thaäp phaân naøo töø 0 tôùi 9999. Ngöôøi ta thöôøng cho raèng caùc maùy tính söû duïng soá nhò phaân laø vì tính hieäu quûa cuûa loaïi soá naøy. do vaäy ñaây laø phöông phaùp ñaùng tin caäy nhaát ñeå maõ hoaù thoâng tin soá. Moät soá khaùc söû duïng caching. caùc boä xöû lyù khaùc khoâng theå thaâm nhaäp ñeán. Moät soá maùy tính nhö caùc mainframe cuûa IBM. Nhöõng nhaø thieát keá boä ña xöû lyù ñaõ tìm nhieàu phöông aùn khaùc nhau ñeå giaûm thieåu söï tranh chaáp vaø caûi thieän hieäu xuaát. 4 linh kieän nhö vaäy seõ cung caáp 10000 toå hôïp. chæ cho 10000 toå hôïp trong khi 16 bit nhò phaân coù theå chöùa 65536 toå hôïp khaùc nhau. Caøng nhieàu giaù trò caàn ñöôïc phaân bieät. Boä nhôù naøy söû duïng cho caùc maõ chöông trình vaø döõ lieäu khoâng caàn chia seû. 4 bit cho ta 16 toå hôïp. caøng ít coù söï khaùc bieät giöõa 2 giaù trò keà caän nhau vaø caøng khoù tin caäy vaøo boä nhôù.6b cho thaáy moãi boä xöû lyù coù moät boä nhôù cuïc boä (rieâng). Heä thoáng soá nhò phaân chæ yeâu caàu 2 giaù trò ñeå phaân bieät. Möu meïo naøy ñaït ñöôïc baèng caùch duøng 4 bit ñeå chöùa moät soá thaäp phaân. Ngöôøi ta thaáy raèng thoâng tin soá coù theå ñöôïc caát giöõ baèng caùch phaân bieät caùc giaù trò khaùc nhau cuûa moät ñaïi löôïng vaät lyù lieân tuïc nhö ñieän aùp hoaëc doøng ñieän. Cuõng coù theå Nguyeãn Höõu Loäc Khoa Vaät Lyù . Bit Ñôn vò cô baûn cuûa boä nhôù laø moät chöõ soá nhò phaân goïi laø bit (binary digit). ñeå töø ñoù boä xöû lyù coù theå ghi vaø ñoïc thoâng tin 1. Khoâng coù maùy tính soá naøo löu tröõ chöông trình maø khoâng coù boä nhôù.

Vôùi nhöõng linh kieän nhö vaäy. soá oâ nhôù toái ña coù theå ñòa chæ hoaù (ñaùnh ñòa chæ) tröïc tieáp m laø 2 . Hình 2. chuùng seõ ñaùnh ñòa chæ töø 0 tôùi n-1. Tuy nhieân chæ caàn 3 bit ñeå dieãn taû ñòa chæ trong caùc hình 2.7b vaø 2. roõ raøng soá thaäp phaân coù hieäu quaû hôn. tuy nhieân dung löôïng boä nhôù tröôùc nhoû hôn boä nhôù sau. Ñòa chæ boä nhôù: Boä nhôù goàm caùc oâ nhôù hay coøn goïi laø vò trí nhôù (location). Moãi oâ nhôù chöùa moät maãu thoâng tin (piece of information). moãi oâ nhôù coù 8 bit vaø moät boä nhôù coù 212 oâ nhôù. Moät oâ nhôù coù k bit seõ coù theå chöùa 1 trong 2k toå hôïp bit khaùc nhau. Moãi oâ nhôù coù moät soá goïi laø ñòa chæ hoaëc vò chæ (address) cuûa oâ nhôù. 2. moãi oâ nhôù coù 60 bit thì caû hai ñeàu caàn 12 bit cho ñòa chæ.7 trình baøy 3 caùch toå chöùc khaùc nhau cho moät boä nhôù 96 bit.7c Soá bit trong ñòa chæ lieân quan ñeán soá oâ nhôù toái ña coù theå ñòa chæ hoùa tröïc tieáp trong boä nhôù vaø khoâng tuøy thuoäc vaøo soá bit cuûa moãi oâ nhôù. Soá bit cuûa moãi oâ nhôù ñoái vôùi moät soá maùy tính ñaõ ñöôïc baùn treân thò tröôøng nhö sau: Bourroughs B 1700 1 bit /oâ nhôù IBM-PC 8 bit /oâ nhôù DEC PDP-8 12 bit /oâ nhôù IBM 1130 16 bit /oâ nhôù Electrologica X8 27 bit /oâ nhôù Nguyeãn Höõu Loäc Khoa Vaät Lyù .7 a caàn ít nhaát 4 bit ñeå dieãn taû caùc soá töø 0 ñeán 11. Neáu 1 ñòa chæ coù m bit. Moät boä nhôù coù 212 oâ nhôù. Caùc chöông trình coù theå tham chieáu ñeán caùc ñòa chæ naøy. Hình 2. Caùc oâ nhôù chöùa cuøng moät soá bit. Neáu boä nhôù coù n oâ nhôù. Trong tröôøng hôïp naøy ta chæ coù 16 toå hôïp.Caán Truùc Maùy Tính -23- duøng chuùng ñeå bieåu dieãn caùc soá nhò phaân. chæ duøng 0 vaø 1.7 Thí duï: Trong hình 2.

thí duï coäng 2 töø vôùi nhau. Caùc soá seõ bò ñaûo ngöôïc vaø phaûi caàn coù moät giaûi phaùp phaàn meàm ñeå ñoåi caùc byte trong 1 töø sau khi sao cheùp. 3. Traät töï cuûa byte: Byte trong 1 töø ñöôïc ñaùnh soá töø traùi sang phaûi hoaëc töø phaûi sang traùi. Hình 2. tröø vaø caùc thao taùc khaùc treân caùc töø 32 bit. Do vaäy. Heä thoáng ñaùnh soá baét ñaàu töø soá lôùn goïi laø maùy tính Big-endian (baäc cao) ngöôïc laïi Little-endian (baäc thaáp) Ñòa chæ Big Endian Little Endian Ñòa chæ 0 4 8 1 0 4 8 12 0 2 3 4 1 5 Byte 1 5 0 4 3 2 Byte Töø 32 bit (a) 2 Töø 32 bits Hình 2.8 Ñieàu quan troïng caàn hieåu trong caû 2 heä thoáng Big-endian vaø Little-endian laø khi maùy tính muoán göûi hoà sô töø maùy tính naøy sang maùy tính khaùc treân maïng. trong khi ñoù moät maùy duøng 1 töø 32 bit seõ coù 4 byte/töø. Nhieàu byte goäp laïi thaønh töø (word). trong ñoù caùc byte ñöôïc ñaùnh soá töø traùi sang phaûi ñoái vôùi hoï Motorola chaúng haïn. Moät maùy tính söû duïng 1 töø 16 bit nghóa laø maùy coù 2 byte/töø. soá nguyeân hoaëc döõ lieäu khaùc) vaø (b) Nguyeãn Höõu Loäc Khoa Vaät Lyù . coäng. maùy coù 32 bit seõ coù caùc thanh ghi 32 bit vaø caùc leänh ñeå thöïc hieän pheùp dòch chuyeån.8a mieâu taû moät phaàn boä nhôù cuûa moät maùy tính 32 bit. Söï löïa choïn naøy thoaït nhìn khoâng quan troïng nhöng bao haøm moät yù nghóa raát lôùn. haàu heát caùc nhaø cheá taïomaùy tính ñeàu chuaån hoaù 1 oâ nhôù coù 8 bit vaø goïi laø moät byte.8b ñaïi dieân cho hoï maùy tính 32 bit duøng phöông phaùp ñaùnh soá thöø phaûi sang traùi chaúng haïn nhö hoï Intel. moät maùy 16 bit seõ coù caùc thanh ghi 16 bit vaø caùc leänh ñeå thao taùc caùc töø 16 bit. Haàu heát caùc leänh cuûa maùy tính ñeàu thao taùc treân töø. Hình 2. Coù moät phöông phaùp khaùc nhöng cuõng khoâng hieäu quaû laém laø theâm 1 header tröôùc moãi hoà sô cho bieát loaïi döõ lieäu theo sau (chuoãi.Caán Truùc Maùy Tính -24- Honeywell 6180 36 bits /oâ nhôù CDC Cyber 60 bits / oâ nhôù Trong nhöõng naêm gaàn ñaây.

AC vaø BC. 4. maùy tính hieåu raèng ñaõ xaûy ra moät loãi boä nhôù. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ñeå traùnh nhöõng loãi nhö vaäy. ta coù theå xaây döïng moät danh saùch caùc töø ma hoaøn toaøn hôïp leä. Khoaûng caùch naøy laø khoaûng caùch Hamming ñaày ñuû. Thí duï ta maõ hoaù töø nhôù 4 bit 1100 trong caùc vuøng AB. caùc bit phuï ñöôïc kieåm tra ñeå xem coù loãi hay khoâng. Ñieàu naøy cho pheùp maùy tính nhaän chæ phaûi thöïc hieän nhöõng chuyeån ñoåi caàn thieát. taát caû 2m toå hôïp caùc bit ñeàu hôïp leä nhöng do coù tính caùc bit kieåm tra. ta coù theå xaùc ñònh chuùng coù bao nhieâu bit töông öùng khaùc nhau. caùc bit phuï ñöôïc theâm vaøo ôû moãi töø nhôù theo moät phöông phaùp ñaëc bieät. Cho 2 töø maõ 10001001 vaø 10110001. Keá tieáp ta theâm 1 bit kieåm tra chaún leû vaøo töøng vuøng troáng coøn laïi ñeå taïo ra kieåm tra chaün. caùc boä nhôù ñeàu duøng caùc maõ phaùt hieän loãi hoaëc caùc maõ söûa loãi. ta chæ caàn thöïc hieän pheùp toaùn XOR theo bit hai töø maõ ñaõ cho va ñeám soá bit 1 trong keát quaû. Cho moät giaûi thuaät ñeå tính caùc bit kieåm tra. B vaø C taïo thaønh 7 vuøng khaùc nhau. Soá caùc bit treân 2 töø maõ khaùc nhau goïi laø khoaûng caùch Hamming. Ñaët toaøn boä chieàu daøi bit laø n (n=m+r).ABC. caàn coù d loãi ñôn bit (single bit error) seõ ñoåi maõ naøy thaønh maõ kia. Cöù 1 bit cho 1 vuøng. YÙ nghóa cuûa vieäc xaùc ñònh khoaûng caùch laø neáu 2 töø maõ coù khoaûng caùch Hamming laø d.9 coù 3 voøng troøn A. chæ coù 2m trong 2n töø maõ coù giaù trò hôïp leä. ôû thí duï naøy 2 töø maõ coù 3 bit khaùc nhau. Thí duï: Haõy xem moät bieåu dieãn ñoà hoaï ñôn giaûn minh hoïa roõ yù töôûng veà maõ söûa loãi cho caùc töø nhôù 4 bit Sô ñoà Venn hình 2. Khi söû duïng caùc maõ naøy. töø dfanh saùch naøy tìm ra 2 töø maõ coù khoaûng caùch Hamming nhoû nhaát. Vôùi moät töø nhôù m bit. Khi ñoïc moät töø ra khoûi boä nhôù. Khi ñoïc boä nhôù thaáy xuaát hieän moät töø maõ khoâng hôïp leä. Moät ñôn vò coù m bit döõ lieäu vaø r bit kieåm tra ñöôïc xem nhö moät töø maõ (code word) n bit. Thí duï caùc töø maõ 11110001 vaø 00110000 coù khoaûng caùch Hamming laø 3 vì caàn coù 3 loãi ñôn bit ñeå ñoåi maõ naøy thaønh maõ kia.Caán Truùc Maùy Tính -25- chieàu daøi laø bao nhieâu. Maõ söûa loãi: Thænh thoaûng boä nhôù maùy tính cuõng taïo ra loãi do caùc xung ñieän aùp treân ñöôøng caáp ñieän hoaëc do nhöõng nguyeân nhaân khaùc. Ñeå hieåu caùc loãi ñöôïc xöû lyù nhö theá naøo ta caàn phaûi bieát thöïc söï loãi laø gì? Giaû söû moät töø nhôù coù m bit döõ lieäu vaø ta seõ theâm vaøo r bit dö thöøa (redundant) hoaëc r bit kieåm tra. Ñeå xaùc ñònh soá bit khaùc nhau. Trong baát kyø tröôøng hôïp naøo ta cuõng thaáy raèng vieäc thieáu moät tieâu chuaån veà traät töï byte laø noãi phieàn toaùi chính khi trao ñoåi döõ lieäu giöõa caùc maùy tính khaùc nhau.

384 KB treân laø vuøng nhôù döï tröõ cho heä thoáng hay coøn goïi vuøng nhôù cao UNA (Upper Memory Area). Boä nhôù chính trong caùc IBM PC Caùc maùy tính caù nhaân PC (Personal computer) ban ñaàu söû duïng caùc chip vi xöû lyù 20 bit ñòa chæ coù khaû naêng ñòa chæ hoaù moät khoâng gian boä nhôù toái ña 1 MB trong ñoù 640KB döôùi ñöôïc goïi laø vuøng nhôù qui öôùc (conventionnal memory). Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ngöôïc laïi. Boä nhôù 1MB ñöôïc chia laøm 16 vuøng nhôù. Neáu boâ vi xöû lyù chaïy ôû cheá ñoä thöïc (real mode). Söï saép xeáp naøy toàn taïi ñeán baây giôø.9 Kích thöôùc töø Soá bit kieåm tra Kích thöôùc chung Phaàn traêm 8 4 12 50 16 5 21 31 32 6 38 19 64 7 71 11 128 8 136 6 256 9 265 4 512 10 522 2 Hình 2. Pentium Pro. chæ coù 1 MB ñaàu tieân ñöôïc truy xuaát. Caùc chip vi xöû lyù coù nhieàu bit ñòa chæ hôn laàn löôït ra ñôøi laøm cho khoâng gian boä nhôù toái ña taêng daàn (16M ñoái vôùi 80286.10: Soá bit kieåm tra caàn thieát cho maõ söûa loãi ñôn 5. moãi vuøng 64 KB goïi laø phaân ñoaïn (segment) ñöôïc ñaùnh soá töø 0 ñeán F (coøn goïi laø caùc phaân ñoaïn töø 0000 ñeán F000) 640 KB vuøng nhôù qui öôùc bao goàm caùc phaân ñoaïn töø 0000 ñeán 9000 vaø 384 KB vuøng nhôù döï tröõ cho heä thoáng bao goàm caùc phaân ñoaïn töø A000 ñeán F000.Caán Truùc Maùy Tính -26- Hình 2. neáu boä vi xöû lyù ôû trong cheá ñoä baûo veä (protected mode). toaøn boä khoâng gian nhôù coù theå truy xuaát ñöôïc. 64G ñoái vôùi Pentium II) Vuøng nhôù lôùn hôn 1MB goïi laø vuøng nhôù môû roäng (extended memory). 80486. 4G ñoái vôùi 80386. Pentium MMX. Pentium.

16 MB nhôù (8 bit hoaëc 9 bit neáu coù bit chaün leû) Caùc SIMM 72 chaân coù dung löôïng 1 M. Tuy vaäy vaãn coù caùc PC chæ thieáu 128KB thay vì 384KB nhôø vaøo caùc bieän phaùp saép xeáp laïi boä nhôù. Caùc nhaø thieát keá board chính thöôøng thöïc hieän caùc khaû naêng sau ñeå traùnh xung ñoät: Söû duïng RAM nhanh hôn ñeå löu tröõ baûn sao cuûa caùc ROM chaäâm. Caùc SIMM 30 chaân coù dung löôïng 256K. ROM video (32K)RAM duøng trong boä nhôù chính laø RAM ñoäng (Dynamic RAM) vaø caùc RAM ñoäng caûi tieán nhö EDO-RAM (Extended Data Out RAM) vaø SDRAM (Synchronous DRAM) coù thôøi gian truy xuaát trong khoaûng töø 10 nsec ñeán 200 nsec. 16 M. 1M. 4M. 16 M töø nhôù 32 bit (hoaëc 36 bit neáu keå theâm caùc bit kieåm tra chaún leû) Nguyeãn Höõu Loäc Khoa Vaät Lyù . goïi laø taïo cöûa soå. Thí duï caùc PC coù 4 MB RAM ñöôïc caøi ñaët cho thaáy chæ coù 3712 KB ñöôïc söû duïng bao goàm 640KB cho vuøng nhôù qui öôùc vaø 3072 KB cho vuøng nhôù môû roäng. do vaäy 384 KB RAM truøng ñòa chæ vôùi vuøng nhôù daønh cho heä thoáng seõ bò boû qua (nghóa laø toång dung löôïng boä nhôù RAM söû duïng ñöôïc seõ baèng toång dung löôïng boä nhôù RAM caøi ñaët tröø ñi 384 K). caùc phaân ñoaïn E000 vaø F000 ñöôïc daønh cho boä nhôù chæ ñoïc chöùa heä xuaát nhaäp cô baûn ROM BIOS (Basic Input Output System) treân board chính. 8 M.Caán Truùc Maùy Tính -27- Moät vaán ñeà quan troïng ñaõ xaûy ra trong caùc PC laø söï xung ñoät giöõa caùc chip boä nhôù RAM (Random Access Memory) ñöôïc caøi ñaët cuøng vôùi boä nhôù daønh cho heä thoáng. Söï xung ñoät xaûy ra do caùc phaân ñoaïn A000 vaø B000 ñöôïc daønh cho RAM video. voâ hieäu hoaù caùc ROM naøy trong xöû lyù. 4M. Taét caùc RAM khoâng söû duïng taïo cöûa soå nhaèm traùnh xung ñoät trong vuøng UMA. Saép xeáp laïi RAM khoâng ñöôïc söû duïng taïo cöûa soå. 8 M. Ñieàu naøy coù nghóa laø taát caû RAM chieám nhöõng ñòa chæ naøy phaûi bò taét hoaëc caùc thaønh phaàn neâu treân khoâng thöïc hieän ñöôïc chöùc naêng cuûa mình ñeå traùnh xung ñoät trong vuøng UMA. caùc phaân ñoaïn C000 vaø D000 ñöôïc daønh cho boä nhôù chæ ñoïc ROM vaø RAM cuûa caùc board caém treân caùc khe caém môû roäng (expansion slot) cuûa board chính (mainboard). 1M. 2M. 2M. 512K. 4M. Phaàn lôùn caùc PC taïo cöûa soå cho ROM BIOS (thöôøng laø 64K). Caùc chip nhôù RAM hieän nay ñöôïc gheùp thaønh caùc moñun nhôù moät haøng chaân goïi laø SIMM hoaëc caùc moñun nhôù hai haøng chaân goïi laø DIMM. 32M vaø 64 MB nhôù hay 256K.

2M. Ngoaøi boä nhôù RAM ñoäng. baêng töø (magnetic tape) laø thieát bò löu tröõ ñaàu tieân. Tìm vaø naïp heä ñieàu haønh.Caán Truùc Maùy Tính -28- Caùc DIMM 168 chaân coù dung löôïng 1M. board chính. 4M. trong caùc PC coøn toàn taïi caùc boä nhôù chæ ñoïc ROM löu caùc chöông trình coá ñònh nhö ROM BIOS vaø ROM baøn phím hay boä ñieàu khieån baøn phím. Cung caáp caùc chöông trình cho boä vi xöû lyù ñeå thöïc hieän caùc thao taùc lieân quan ñeán caùc thieát bò xuaát/nhaäp.11 Nguyeãn Höõu Loäc Khoa Vaät Lyù . 16 M töø nhôù 64 bit (hoaëc 72 bit neáu keå theâm caùc bit kieåm tra chaün leû). baøn phím vaø nhöõng thaønh phaàn quan troïng khaùc cuûa maùy tính. Baèng caùch thay ñoåi doøng ñieän trong ñaàu ghi. Baêng töø coù chieàu daøi 2400 ft ñöôïc quaán treân moät oáng cho (feed reel) qua 1 ñaàu ghi ñeán oáng nhaän (take-up reel). OÅ baêng töø cuûa maùy tính töông töï nhö maùy ghi baêng trong gia ñình. boä ñieàu khieån ñóa. giaù thaønh cuûa boä nhôù chính töông ñoái cao. Do ñoù haàu heát caùc maùy tính ñeàu coù theâm caùc thieát bò löu tröõ (boä nhôù phuï) toác ñoä thaáp. 8 M. maùy tính coù theå ghi thoâng tin leân baêng töø ôû daïng caùc veät töø hoaù nhoû (magnetized spot) Hình 2. III. ROM BIOS chöùa caùc chöông trình thöïc hieän caùc chöùc naêng cô baûn sau: Kieåm tra nhöõng thaønh phaàn cuûa maùy tính khi khôûi ñoäng nhö: boä nhôù. Baêng töø: Veà maët lòch söû. board video. 1.CAÙC THIEÁT BÒ LÖU TRÖÕ (BOÄ NHÔÙ PHUÏ): Vì moãi töø nhôù trong boä nhôù chính ñöôïc truy xuaát tröïc tieáp vôùi thôøi gian raát ngaén. reû hôn vaø thöôøng coù dung löôïng lôùn hôn nhieàu.

Caùc ñaàu töø ñöôïc ñaët treân 1 giaù (caùnh tay . ta phaûi ñoïc qua heát caùc baûn ghi töø 1 tôùi n-1. muoán ñoïc baûn ghi n. Neáu chöông trình ghi caùc baûn ghi ngaén treân baêng töø. Maät ñoä ghi tieâu bieåu cuûa baêng töø laø 1600bpi (byte per inch). Thoâng tin ñöôïc ghi treân moät soá voøng troøn ñoàng taâm goïi laø raõnh hoaëc coøn goïi töø ñaïo (track). vieäc söû duïng baêng töø seõ coù hieäu quaû cao.Caán Truùc Maùy Tính -29- Hình 2. Baêng töø laø loaïi thieát bò truy xuaát tuaàn töï noái tieáp. CPU coù theå thöïc hieän haøng trieäu leänh moãi giaây.12). Ñaàu töø coù beà roäng ñuû ñeå ñoïc hoaëc ghi thoâng tin leân raõnh moät caùch chính xaùc. 1 khe (gap) ñöôïc ñeå laïi treân baêng töø trong luùc oå baêng töø giaûm (taêng) toác ñoä xuoáng (leân) khi döøng (khôûi ñoäng) baêng tröôùc ñaàu ñoïc . nhieàu khoaûng troáng seõ bò boû phí ôû caùc khe. Haàu nhö baêng töø chæ thích hôïp khi döõ lieäu ñöôïc truy xuaát tuaàn töï noái tieáp. moãi khung (frame) chöùa 1 byte coäng theâm 1 bit phuï (dö). OÅ ñóa thöôøng goàm nhieàu ñóa xeáp theo chieàu ñöùng caùch xa nhau khoaûng 1 inch. chöông trình phaûi ñoïc haàu nhö toaøn boä baêng vaø maát khoaûng vaøi phuùt. Ñóa töø Ñóa töø (disk) laø moät ñóa kim loaïi hình troøn coù ñöôøng kính töø 5 tôùi 10 inch ñöôïc phuû töø treân 2 maët bôûi nhaø saûn xuaát (hình 2. trong luùc baêng töø laïi laøm gia taêng söï laõng phí veà thôøi gian. Vò trí xuyeân taâm cuûa caùc ñaàu töø (khoaûng caùch töø truïc) goïi laø töø truï (cylinder). Neáu thoâng tin muoán ñoïc naèm ôû cuoái baêng. 2. goïi laø bit kieåm tra chaün leû ñeå caûi thieän ñoä tin caäy. OÅ ñóa coù n ñóa seõ coù 2n ñaàu töø vaø coù 2n raõnh treân 1 töø truï. Sau khi oå baêng töø thöïc hieän xong vieäc ghi 1 baûn ghi vaät lyù (physical record). Baèng caùch ghi caùc baûn ghi daøi hôn caùc khe nhieàu. Maät ñoä thöôøng duøng khaùc laø 800bpi vaø 6250 bpi. Neáu baêng töø ñöôïc ñònh vò ôû vò trí khôûi ñaàu (ñaàu töø ñang ôû ñaàu baêng). Nguyeãn Höõu Loäc Khoa Vaät Lyù .arm ) dòch chuyeån vaøo ra theo ñöôøng baùn kính. Ñóa coù töø vaøi chuïc ñeán vaøi traêm raõnh treân moãi maët. ÔÛ moät maùy tính vôùi caùc byte 8 bit.11 trình baøy caùch toå chöùc thoâng tin treân baêng töø.

Caùc thao taùc truy xuaát ñóa luoân baét ñaàu ôû ñaàu cuûa moät cung. Nguyeãn Höõu Loäc Khoa Vaät Lyù .Caán Truùc Maùy Tính -30- (a) OÅ ñóa coù 1 ñóa (b) OÅ ñóa coù 4 ñóa Hình 2. chöông trình phaûi cung caáp nhöõng thoâng tin sau: töø truï (cylinder). Neáu phaûi truy xuaát nhieàu cung vöôït qua raõnh khaùc trong cuøng moät töø truï (nghóa laø töø maët 0 sang maët 1 ôû cuøng vò trí cuûa giaù noái ñaàu töø). thöôøng coù khoaûng töø 10 ñeán 100 cung treân 1 raõnh. khoâng bao giôø ôû giöõa cung. ñaàu töø (head) (caû 2 thoâng tin treân ñònh roõ 1 raõnh naøo ñoù). neáu truy xuaát qua ranh giôùi cuûa töø truï.12 Caùc raõnh ñöôïc chia thaønh nhieàu cung (sector). cung (sector) naøo ôû ñoù thoâng tin baét ñaàu. phaûi maát thôøi gian quay trong khi ñònh vò laïi caùc ñaàu töø cho töø truï keá tieáp vaø ñôïi cho cung 0 quay trôû laïi. Moät cung chöùa moät soá byte naøo ñoù. Tuy nhieân. thöôøng laø 512 bytes. soá löôïng töø ñöôïc truyeàn ñi. Ñeå chæ roõ moät thao taùc truy xuaát ñóa. ta seõ khoâng maát thôøi gian bôûi vì vieäc chuyeån töø ñaàu töø naøy sang ñaàu töø khaùc ñöôïc thöïc hieän baèng maïch ñieän töû maø khoâng lieân quan ñeán phaàn cô khí. ñòa chæ boä nhôù chính nôi thoâng tin ñeán hoaëc ñi vaø thoâng tin ñöôïc ñoïc töø ñóa vaøo boä nhôù hay ñöôïc ghi töø boä nhôù leân ñóa.

Caán Truùc Maùy Tính -31- Hình 2.v… Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caùc ñaàu töø treân ñóa winchester ñöôïc ñònh daïng theo phöông phaùp khí ñoäng löïc hoïc vaø lô löûng treân moät ñeäm khí taïo ra do söï quay troøn cuûa ñóa. Thieát bò laøm coâng vieäc maõ hoaù vaø giaûi maõ ñöôïc goïi laø boä maõ hoaù/giaûi maõ ENDEC (Encoder . Ña soá caùc ñóa thôøi kyø ñaàu ñeàu quay vôùi vaän toác 3600 voøng /phuù neân thôøi gian treã cöïc ñaïi laø 16. haøng traêm GB (teân caùc mainframe) Döõ lieäu nhò phaân döôùi daïng caùc chuoãi bit 0. Khi ñaàu töø ñaõ ôû ñuùng vò trí. Gaàn nhö taát caû caùc maùy tính ñeàu söû duïng oå ñóa coù nhieàu ñóa nhö moâ taû ôû treân ñeå löu tröõ caùc döõ lieäu quan troïng.Decoder). coøn hieän nay laø haøng chuïc. Thôøi gian truy xuaát toång coäng chính laø thôøi gian tìm kieám coäng vôùi thôøi gian treã luaân phieân vaø thôøi gian truy xuaát thöïc. (Hieän nay vaän toác quay ñaõ leân ñeán 5400-7200 rpm). quaù trình giaûi maõ chuoãi xung seõ dieãn ra ñeå ta coù laïi döõ lieäu nhò phaân thoâ ban ñaàu. Thôøi gian ñôïi (bò boû phí) ñeå quay tôùi cung ñuùng thay ñoåi töø 0 (neáu chöông trình gaëp may) ñeán heát toaøn boä thôøi gian quay. Thay vaøo ñoù ngöôøi ta maõ hoaù chuùng. Dung löôïng cuûa ñóa ban ñaàu thöôøng khoaûng haøng chuïc MB. Coù nhieàu phöông phaùp maõ hoaù khaùc nhau nhö ñieàu cheá taàn soá FM (Frequency Modulation). ñieàu cheá taàn soá thay ñoåi MFM (Modified Frequency Modulation) v. Loaïi thöôøng duøng nhaát laø ñóa winchester (thaäp nieân 60). OÅ ñóa ñöôïc bòt kín (traùnh oâ nhieãm do buïi). Vieäc chuyeån ñoåi naøy nhaèm phuø hôïp vôùi vieäc ñaûo chieàu cöïc tính caùc vuøng töø tính treân ñóa khi coù söï thay ñoåi chieàu doøng ñieän treân ñaàu ghi. tröôùc tieân ñaàu töø phaûi di chuyeån. vaø maát töø 20 ñeán 100msec ñeå ñi töø töø truï trong cuøng ra ñeán töø truï ngoaøi cuøng.13 : Khoaûng caùch ñaàu töø vôùi maët ñóa Neáu ñaàu töø ñöôïc ñònh vò treân moät töø truï sai. 1 (daïng thoâ) khoâng ñöôïc ghi tröïc tieáp leân ñóa. nghóa laø chuyeån ñoåi döõ lieäu nhò phaân thoâ thaønh chuoãi xung vaø ghi leân ñóa. Söï di chuyeån naøy goïi laø tìm kieám (seek). Nhöõng ñóa naøy thöôøng goïi laø ñóa cöùng (hard disk). Khi ñoïc döõ lieäu treân ñóa. Thôøi gian ñôïi naøy goïi laø thôøi gian treã luaân phieân (rotational latency). boä ñieàu khieån phaûi ñôïi cho tôùi khi cung ñaàu tieân quay tôùi ñuùng taïi ñaàu töø ñoïc vieát thì môùi baét ñaàu truy xuaát.67 msec. Moãi laàn tìm kieám seõ maát 3 msec giöõa caùc raõnh keá caän nhau.

15 cung treân 1 raõnh. soá voøng quay/ phuùt laø 300 vaø toác ñoä döõ lieäu laø 500 kbps.5 inch chöùa nhieàu döõ lieäu hôn vaø nhôø chöùa trong voû cöùng do vaäy ñöôïc baûo veä toát hôn. laø phöông tieän nhoû goïn coù theå ñem ñi xa ñöôïc.88 MB.5 inch. Caùc oå ñóa meàm ñeàu söû duïng phöông phaùp maõ hoaù MFM khi ñoïc vaø ghi döõ lieäu treân ñóa meàm. kích thöôùc 3. 2 maët söû duïng ñöôïc. Ñeå laøm giaûm söï hao moøn naøy. Do vaäy. Vôùi loaïi kích thöôùc 3. caùc ñaàu töø cuûa ñóa cöùng lô löûng treân beà maët ñóa ôû khoaûng caùch vaøi micron.0 trôû leân ñaõ hoå trôï cho loaïi ñóa meàm naøy. ngöôøi ta ruùt ñaàu töø leân treân vaø ngöøng quay ñóa khi oå ñóa khoâng ñoïc hoaëc khoâng ghi thoâng tin. seõ coù thôøi gian treã khoaûng nöûa giaây ñeå moâtô taêng toác ñoä. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ngaøy nay kích thöôùc ñóa thöôøng laø 3. Ñoù laø söû duïng ñóa meàm (diskette hay Floppy disk). moâi tröôøng tieáp xuùc cuûa beà maët ñóa vaø ñaàu töø seõ bò hao moøn töông ñoái nhanh.25 inch gaàn nhö khoâng coøn söû duïng nöõa do ñóa 3. Hình 2. Caùc phieân baûn DOS 5. trong caùc maùy vi tính. dung löôïng thöôøng laø 1. Do ñoù.14: Hoaït ñoäng ñóa meàm Khoâng nhö caùc ñóa Winchester. Ñóa meàm -32- Vôùi söï xuaát hieän cuûa maùy vi tính.5 inch.Caán Truùc Maùy Tính 3.5 inch naêm 1987 vaø söû duïng trong caùc heä thoáng PS/2. coù 80 raõnh. khi coù leänh ñoïc hoaëc ghi thoâng tin keá tieáp. ñaàu töø cuûa caùc ñóa meàm thöïc söï tieáp xuùc vôùi beà maët ñóa. coøn loaïi 5. ngöôøi ta coù moät phöông phaùp ñeå caøi ñaët phaàn meàm. Haõng Toshiba cuõng ñaõ saûn xuaát caùc ñóa meàm dung löôïng 2.44MB.

Kyõ thuaät naøy coù nhieàu heä quaû quan troïng. Ban ñaàu ñóa quang ñöôïc trieån khai ñeå ghi caùc chöông trình truyeàn hình nhöng roài chuùng cuõng ñöôïc duøng laøm caùc thieát bò löu tröõ cuûa maùy tính. Caùc ñóa quang coù maät ñoä ghi thoâng tin cao hôn nhieàu so vôùi caùc ñóa töø thoâng thöôøng. Thöù hai. Thöù hai. moãi nhoùm ñöôïc môû roäng theâm töø 8 ñeán 14 bit baèng caùch duøng maõ Reed-Solomon. Tröôùc tieân. thoâng tin soá treân ñóa thöôøng chöùa nhieàu loãi. Phöông phaùp maõ hoaù naøy duøng nhieàu bit hôn maõ Hamming ñeå coù theå söûa nhieàu loãi. Caùc ñóa quang naøy döïa vaøo coâng ngheä ñaõ duøng trong maùy quay ñóa aâm taàn Compact Disc vaø ñöôïc goïi laø CD ROM (Compact Disc Read Only Memory) Ñóa CD ROM ñöôïc cheá taïo baèng caùch duøng moät tia laser coù coâng suaát cao ñeå ñoát chaùy caùc loã coù kích thöôùc 1 micron (10-6 m) treân moät ñóa chuû (master disk). Thieát bò duøng ñeå ñoïc ñóa CD ROM coù moät boä phaân tích ño naêng löôïng phaûn xaï töø beà maët khi coù moät tia laser coâng suaát thaáp phaùt tôùi beà maët. Ñóa quang -33- Trong nhöõng naêm gaàn ñaây. Thöù nhaát. do ñóa plastic coù bao phuû moät lôùp nhoâm ñöôïc daäp theo khuoân neân seõ khoâng thaät chính xaùc. ngöôøi ta bieåu thò cho moãi laàn chuyeån tieáp pit-land hoaëc land-pit laø 1. Caùc ñóa quang ñaàu tieân ñöôïc saùng cheá bôûi 1 taäp ñoaøn ñieän töû cuûa Haø Lan laø Philips vaø ñöôïc phaùt trieån theâm vôùi söï hôïp taùc cuûa Sony cuûa Nhaät. Keá ñeán phuû leân beà maët moät lôùp nhoâm moûng vaø tieáp theo laø moät lôùp plastic baûo veä trong suoát. Töø ñóa chuû naøy. Khoái laø ñôn vò cô baûn ñöôïc ñòa chæ hoaù. Theâm 3 bit ñaëc bieät vaøo giöõa moãi nhoùm vaø theâm moät byte ñoàng boä ñeå taïo thaønh moät khung (frame). ngöôøi ta taïo ñöôïc moät khuoâng duøng laøm maãu ñeå taïo nhöõng baûn sao treân caùc ñóa plastic. ñaàu ñoïc trong oå ñóa coù moät göông chính xaùc ñöôïc ñieàu khieån bôûi moät cô caáu trôï ñoäng (moät maùy ñeå ñieàu khieån moät coã maùy to hôn) duøng ñeå theo doõi beà maët ñóa nhaèm buø laïi söï khoâng hoaøn haûo khi cheá taïo. khoâng ghi thoâng tin nhö caùc ñóa meàm thoâng thöôøng vaø ñöôïc cheá taïo haøng loaït baèng maùy töï ñoäng theo moät khuoân maãu saün neân giaù thaønh raát thaáp.Caán Truùc Maùy Tính 4. caùc ñóa quang (optical disk) (khaùc vôùi ñóa töø) ñaõ ñöôïc ñöa vaøo söû duïng. döõ lieäu ñöôïc ghi leân ñóa duøng moät phöông phaùp maõ hoaù phöùc taïp goïi laø maõ söûa loãi xen keõ (cross interleave) Reed-Solomon. Döõ lieäu ñöôïc ghi thaønh caùc nhoùm 24 byte. Khoaûng caùch giöõa 2 laàn chuyeån tieáp cho bieát coù bao nhieâu bit zero giöõa caùc bit. Maëc duø phöông phaùp naøy phöùc taïp vaø toán moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . Hôn nöõa thay vì bieåu thò pit laø 0 vaø land laø 1 (hoaëc ngöôïc laïi). do caùc ñóa CD ROM ñöôïc daäp khuoâng. Caùc loã ñöôïc goïi laø pit vaø nhöõng vuøng khoâng bò ñoát chaùy giöõa caùc pit goïi laø land seõ coù söï phaûn xaï khaùc nhau giuùp ta phaân bieät ñöôïc giöõa pit vaø land. Moät nhoùm 98 khung taïo thaønh moät khoái (block) chöùa 2 KByte döõ lieäu. Vaán ñeà loãi ñöôïc xöû lyù baèng 2 caùch.

Ghi töøng raõnh TAO (Track At Once): cho pheùp ghi leân ñiaõ nhieàu laàn.Caán Truùc Maùy Tính -34- vuøng ñiaõ ñaùng keå nhöng laïi cho ta ñoä tin caäy raát cao vôùi vaät lieäu söû duïng coù giaù thaønh thaáp.vuøng troáng) vaø traïng thaùi voâ ñònh hình (khoâng phaûn xaï aùnh saùng . Ñaây laø moät loaïi ñiaõ quang coù dung löôïng döõ lieäu lôùn hôn vaø khaû naêng truy nhaäp nhanh hôn caùc ñiaõ quang Nguyeãn Höõu Loäc Khoa Vaät Lyù . Coù 2 phöông phaùp ghi CD-R: Ghi toaøn ñiaõ moät laàn DAO (Disc At Once): döõ lieäu toaøn ñiaõ chæ ñöôïc ghi leân ñiaõ moät laàn. giaù trò 0 vaø 1 khoâng phaûi laø giaù trò loã vaø vuøng troáng maø laø giaù trò chuyeån ñoåi. khoâng gioáng nhö ñiaõ töø theo caùc töø truï vaø raõnh rieâng bieät. Khi tia laser ñoát chaùy. Chieàu daøi toái thieåu moãi laàn ghi laø 300 khoái. Töông töï nhö treân ñiaõ töø. khoâng ghi theâm leân ñöôïc nhöõng laàn sau. CD ghi laïi ñöôïc CD-RW (CD-ReWriteable) trong ñoù lôùp döõ lieäu lôùp kim loaïi . Hình 2. lôùp maøy naøy chuyeån sang maøu ñen vaø ñoùng vai troø caùc loã döõ lieäu (pit). Ñiaõ naøy coù caáu truùc töông töï nhö CD thöôøng. Khuoâng daïng naøy ñöôïc minh hoïa trong hình 2. 52X. Nguyeân taéc ghi döõ lieäu döïa theo söï thay ñoåi traïng thaùi cuûa lôùp kim loaïi: traïng thaùi tinh theå (phaûn xaï aùnh saùng . Thoâng tin treân CD ROM ñöôïc ghi theo daïng xoaén oác lieân tuïc. Caùc oå ñiaõ ñoïc nhanh coù toác ñoä laø boäi soá cuûa toác ñoä cô sôû naøy (Thí duï 24X. 48X. Lôùp chöùa döõ lieäu laø lôùp polymer höõu cô (cyanine vaø phthalocyanine). Read Multiple). 36X.15 Toác ñoä ñoïc cô baûn cuûa moät ñiaõ quang laø 150 KByte/sec.vuøng loã) Ñiaõ quang maät ñoä cao DVD (Digital Video Disk hay Digital Versatile Disk) laø theá heä ñiaõ quang môùi seõ thay theá ñiaõ CD trong töông lai gaàn.…) Döõ lieäu ñöôïc löu tröõ treân CD ROM theo phöông phaùp maõ hoaù EFM (Eight to Fourteen Modulation). 32X.15 CD ghi laïi ñöôïc CD-R (CD-Recordable) laø loaïi ñiaõ quang töøng ñöôïc goïi laø WORM (Write Once.

Moät maùy tính ñieàu khieån 1 thieát bò hoaù hoïc töï ñoäng coù theå tröïc tieáp xuaát döõ lieäu tôùi caùc maùy thoâng qua thieát bò ñeå ñieàu hoaø caùc chaát hoaù hoïc ñöôïc sinh ra. Coù 2 caùch toå chöùc vaøo/ra thöôøng söû duïng trong maùy tính ngaøy nay. ta phaûi cung caáp cho noù moät chöông trình vaø caùc döõ lieäu keøm theo. IV . töùc thôøi laøm gia taêng nhieät ñoä nhöng khoâng taïo thaønh moät pit treân beà maët. Toác ñoä truy nhaäp cô baûn 1x cuûa 1 oå DVD laø 1. Ñiaõ plastic ñöôïc bao phuû moät hoãn hôïp kim loaïi coù nhieàu chaát laï nhö terbium vaø gadolinium. Ñoàng thôøi nam chaâm cuõng phaùt ra moät töø tröôøng theo 1 trong 2 höôùng. Ñiaõ naøy coù theå xoaù vaø ghi ñeø leân gioáng nhö caùch ñaõ ghi laàn ñaàu. bieåu thò laø 0 hoaëc 1. Sau khi thöïc hieän xong. Khi xung laser heát. Caùc kim loaïi naøy coù tính chaát raát ñaùng quan taâm laø ôû nhieät ñoä thaáp chuùng khoâng nhaïy caûm vôùi töø tröôøng. Taát caû caùc thieát bò vaøo/ra ñeàu ñöôïc noái vôùi caùc keânh. Dung löôïng döõ lieäu tính haøng GByte (~4.CAÙC THIEÁT BÒ VAØO / RA Tröôùc khi moät maùy tính thöïc hieän moät vieäc naøo ñoù. Khi muoán thöïc hieän vaøo/ra . maùy tính phaûi thoâng baùo keát quaû cho ngöôøi söû duïng.321 MByte/sec (nhanh gaáp 9 laàn toác ñoä cuûa moät oå ñiaõ CD thöôøng.Caán Truùc Maùy Tính -35- tröôùc noù. caùc ñaàu ñoïc cuûa oå ñiaõ bao goàm moät boä phaùt tia laser vaø moät nam chaâm.16 . Moät kính thieân vaên maët trôøi hoaït ñoäng nhôø maùy tính coù theå thöïc hieän nhaäp döõ lieäu töø caùc thieát bò quan saùt maët trôøi. CPU naïp 1 chöông trình ñaëc bieät vaøo moät trong caùc keânh vaø yeâu caàu keânh ñoù thöïc hieän. nhöng ôû nhieät ñoä cao. Trong thieát keá naøy. 1 boä nhôù vaø moät hoaëc nhieàu boä xöû lyù vaøo/ra (I/O processor) goïi laø caùc keânh döõ lieäu (data channel).7GB) . Keânh seõ töï ñieàu khieån taát caû caùc vieäc vaøo/ra tôùi Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ngöôøi ta söû duïng tính chaát naøy ñeå ghi thoâng tin. Boä phaùt tia laser baén ra moät xung aùnh saùng cöïc ngaén vaøo kim loaïi. Khoâng phaûi taát caû thoâng tin vaøo ra ñeàu ñöôïc döï ñònh daønh cho con ngöôøi. moät heä thoáng maùy tính bao goàm 1 CPU (Hoaëc coù theå nhieàu CPU). caáu truùc phaân töû cuûa chuùng töï saép thaúng haøng theo baát cöù höôùng naøo hieän coù. Söï phaùt trieån ñiaõ quang ôû giai ñoaïn 3 laø caùc phöông tieän quang coù theå xoaù ñöôïc baèng caùch duøng kyõ thuaät quang-töø (MO->magneto-optical). Caùc mainframe lôùn söû duïng thieát keá ñöôïc trình baøy trong hình 2. Thoâng tin naøy coù theå ñoïc theo cuøng caùch nhö vôùi CD ROM baèng caùch duøng moät tia laser coù böùc xaï yeáu hôn nhieàu. Caùc oå DVD 4X ñeàu coù khaû naêng ñoïc CD-ROM vôùi vaän toác 32X. kim loaïi ñaõ ñöôïc töø hoaùcoù theå ôû 1 trong 2 höôùng. Vieäc ñöa thoâng tin vaøo maùy tính vaø laáy thoâng tin ra khoûi maùy tính ñöôïc goïi laø vaøo/ra .

Haàu heát caùc maùy vi tính naøy coù moät khung chöùa caùc card vôùi 1 board maïch in lôùn ñöôïc goïi laø board chính (mainboard). Thuaän lôïi cuûa caùch toå chöùc naøy laø cho pheùp CPU hoaøn toaøn khoâng quan taâm ñeán coâng vieäc giöõa thieát bò vaøo/ra vôùi keânh.Caán Truùc Maùy Tính -36- vaø töø boä nhôù ñeå CPU töï do laøm nhöõng vieäc khaùc. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caùc maùy vi tính duøng moät caáu truùc heä thoáng ñôn giaûn hôn nhö trong hình 2. Cuoái cuøng. bus thöù 3 cho pheùp boä xöû lyù trung taâm truy xuaát boä nhôù maø khoâng phaûi duøng tôùi nhöõng bus khaùc. keânh göûi tôùi CPU moät tín hieäu ñaëc bieät goïi laø ngaét (interrupt) ñeå buoäc CPU ngöøng baát kyø ñieàu gì ñang laøm vaø chuù yù ñeán keânh ñoù. Bus boä nhôù (memory bus) cho pheùp keânh ñoïc vaø ghi caùc töø döõ lieäu (data word) töø boä nhôù. Baèng caùch naøy ta coù theå thöïc hieän vieäc tính toaùn vaø vaøo / ra cuøng moät luùc Hình 2. neân chuùng thöôøng ñöôïc trang bò ít nhaát 3 bus.16 Vì caùc mainframe taïo ra moät taûi vaøo/ra lôùn.17 . Bus vaøo/ra cho pheùp boä xöû lyù trung taâm phaùt caùc leänh tôùi caùc keânh vaø cho pheùp caùc keânh ngaét boä xöû lyù trung taâm. Board chính chöùa moät chip vi xöû lyù. Khi thöïc hieän xong. boä nhôù vaø caùc chip hoã trôï khaùc.

thieát bò ñoù seõ seõ yeâu caàu vaø ñöôïc caáp bus khi caàn ñeán.18 Nhieäm vuï cuûa boä ñieàu khieån laø ñieàu khieån thieát bò vaøo/ra vaø ñieàu khieån truy caäp bus. Khi CPU vaø boä ñieàu khieån vaøo/ra ñoàng thôøi muoán söû duïng bus thì ngöôøi ta duøng moät chip goïi laø boä phaân xöû bus (bus arbiter) ñeå quyeát ñònh thaønh phaàn ñöôïc söû duïng bus. Haáu heát caùc maùy vi tính coù 1 bus goïi laø bus heä thoáng (system bus) duøng ñeå keát noái CPU. maøn hình…. Moãi thieát bò vaøo ra coù hai phaàn. phaàn chöùa caùc maïch ñieän töû goïi laø boä ñieàu khieån (controller). Nhìn chung.Caán Truùc Maùy Tính -37- Hình 2. CPU coù theå laáy taát caû caùc chu kyø bus ñeå truy caäp boä nhôù. Khi khoâng coù thieát bò vaøo/ra naøo laøm vieäc. Boä ñieàu khieån thöôøng ñöôïc ñaët treân 1 card vaø caém vaøo khe môû roäng treân board chính tröø caùc boä ñieàu khieån khoâng tuøy choïn (nhö baøn phím). caùc thieát bò vaøo/ra ñöôïc cho quyeàn öu tieân cao hôn CPU do caùc thieát bò nhö oå ñóa khoâng theå döøng hoaït ñoäng hoaëc ñôïi laøm maát döõ lieäu. Hình 2. Tuy nhieân khi coù moät thieát bò vaøo/ra ñang chaïy ñoàng thôøi.17 Caáu truùc logic cuûa maùy vi tính ñöôïc trình baøy trong hình 2.18. Vieäc ñieàu khieån ñoïc hoaëc ghi moät khoái döõ lieäu tröïc tieáp vôùi boä nhôù maø khoâng qua boä xöû lyù goïi laø truy xuaát boä nhôù tröïc tieáp (DMA: Direct Memory Access) Bus khoâng chæ ñöôïc duøng bôûi caùc boä ñieàu khieån vaøo/ra maø coøn bôûi CPU ñeå tìm naïp caùc leänh vaø döõ lieäu. boä nhôù vaø caùc thieát bò vaøo/ra.. thöôøng ñöôïc ñaët treân board chính. Quaù trình naøy goïi laø ñaùnh caép chu kyø (cycle Nguyeãn Höõu Loäc Khoa Vaät Lyù . phaàn kia chöùa chính caùc thieát bò vaøo/ra nhö oå ñóa.

xanh laù caây vaø xanh döông). Boä xöû lyù ñoïc ma traän phím. Maøn hình: Maøn hình chuû yeáu goàm moät ñeøn tia aâm cöïc CRT (Cathode Ray Tube) vaø caùc nguoàn cung caáp ñieän.Caán Truùc Maùy Tính -38- stealing) vaø laøm toác ñoä maùy tính chaäm laïi. Baøn phím: Baøn phím coù nhieàu loaïi khaùc nhau. CRT chöùa moät suùng baén moät chuøm tia ñieän töû ñaäp vaøo maøn huyønh quang ñaët ôû phía tröôùc ñeøn. cuõng nhö khoâng bò keït phím. nhö trong hình 2. caùc baøn phím hieän nay coøn söû duïng loaïi chuyeån maïch baèng tuï ñieän coù öu ñieåm choáng moøn vaø buïi baùm. So saùnh vôùi mainframe coù nhieàu bus thì hieän töôïng naøy khoâng theå xaûy ra. chuøm tia ñieän töû queùt qua Nguyeãn Höõu Loäc Khoa Vaät Lyù . baûn treân di chuyeån so vôùi baûn döôùi coá ñònh laøm ñieän dung thay ñoåi.20 (caùc maøn hình maøu coù 3 suùng ñieän töû töông öùng vôùi 3 maøu ñoû. Vôùi loaïi phöùc taïp hôn. Chuyeån maïch coù 2 baûn baèng nhöïa noái thaønh ma traän chuyeån maïch ñöôïc thieát keá ñeå phaùt hieän nhöõng thay ñoåi veà ñieän dung cuûa maïch. Moät vaøi thieát bò vaøo/ra phoå bieán seõ ñöôïc ñeà caáp ñeán sau ñaây: 1. Khi aán phím. Boä xöû lyù baøn phím laø chip vi ñieàu khieån 8048 hoaëc 8049 hoaëc caùc chip töông thích nhö 6805 cuûa Motorola. Ngoaøi loaïi chuyeån maïch baèng cô khí. vì vaäy moät doøng ñieän caûm öùng ñöôïc nhaän bieát. 2. Ngaøy nay ngöôøi ta duøng nhieàu loaïi thieát bò vaøo/ra. chuyeån ñoåi maõ vi trí cuûa phím thaønh maõ queùt (scan code) roài truyeàn ñeán board chính cuûa maùy tính. Trong thôøi gian queùt ngang. Loaïi chuyeån maïch naøy khoâng döïa vaøo tieáp xuùc baèng kim loaïi neân traùnh ñöôïc moøn vaø buïi. Ngoaøi ra coøn coù loaõi phím caûm bieán ñieän töø (thay ñoåi doøng ñieän theo hieäu öùng Hall) Baøn phím trong heä thoáng IBM PC vaø töông thích ban ñaàu thöïc chaát laø moät boä xöû lyù baøn phím truyeàn thoâng vôùi maùy tính baèng moät lieân keát döõ lieäu rieâng bieät nhaèm truyeàn noái tieáp nhöõng khung 11 bit (8 bit döõ lieäu vaø caùc bit ñieàu khieån) nhöng khoâng theo chuaån RS-232C. giaûi maõ caùc tín hieäu aán phím. döôùi moãi phím coù moät nam chaâm ñi qua 1 cuoän daây khi goõ phím. Ñôn giaûn nhaát laø moät chuyeån maïch (switch) ñeå taïo ra moät tieáp xuùc veà ñieän khi aán phím.

Toaøn boä aûnh thöôøng ñöôïc queùt laäp laïi töø 30 tôùi 60 laàn trong 1 giaây. 20 maøn hình trong moät thôøi gian khoaûng 50 microsec vaø vaïch ra moät ñöôøng gaàn nhö naèm ngang treân maøn hình. Sau 400 ñeán 1000 laàn queùt. vì vaäy ngöôøi ta hay duøng hieäu ñieän theá xoay chieàu. Neáu boá trí phía sau lôùp tinh theå loûng moät lôùp göông phaûn xaï. Phaân töû trong lôùp tinh theå loûng chuyeån höôùng 90 ñoä giöõa hai maët kính.Caán Truùc Maùy Tính -39- Hình 2. lôùp tinh theå loûng coù traïng thaùi toái. Tia queùt ngang ñöôïc ñieàu khieån bôûi moät ñieän aùp taêng tuyeán tính ñöa ñeán caùc phieán laøm leäch ngang ñaët ôû beân traùi vaø beân phaûi suùng ñieän töû. ta caàn boä phaân cöïc aùnh saùng. Aùnh saùng beân ngoaøi bò phaân cöïc vaø xoaén theo höôùng phaân töû tinh theå loûng khieán tia saùng ñi qua ñöôïc lôùp tinh theå loûng. Ñeå ñònh höôùng aùnh saùng ñuùng theo höôùng phaân töû tinh theå loûng. Tia saùng bò giöõ laïi trong tinh theå loûng maø khoâng ñi qua hay phaûn xaï laïi ñöôïc nöõa. ñieän aùp treân caùc phieán laøm leäch doïc vaø ngang ñöôïc nghòch ñaûo cuøng luùc ñeå ñaët chuøm tia ñieän töû trôû veà goùc phía treân beân traùi cuûa maøn hình huyønh quang. Hieäu ñieän theá duøng cho tinh theå loûng töông ñoái thaáp. Keá ñeán chuøm tia ñieän töû thöïc hieän moät ñöôøng hoài ngang trôû veà caïnh beân traùi ñeå baét ñaàu laàn queùt keá tieáp. Ñeøn CRT hieän nay coù 2 kieåu: cong vaø phaúng. Maøn hình tinh theå loûng döïa treân hieäu öùng tröôøng xoaén (twisted nematic field effect). Kieåu maøn hình cong coù maët ngoaøi ôû chính giöõa maøn hình phình ra. Kieåu phaúng laø loaïi ñeøn Trinitron chæ cong theo chieàu ngang vaø coù chieàu doïc phaúng. töø 5 ñeán 15V. Khi tia saùng thoaùt ra phía beân kia tinh theå loûng ta caàn boä phaân cöïc aùnh saùng khaùc. 60o töø treân) Nguyeãn Höõu Loäc Khoa Vaät Lyù . Vieäc queùt doïc ñöôïc ñieàu khieån bôûi moät ñieän aùp tuyeán tính taêng chaäm hôn nhieàu ñöa ñeán caùc phieán laøm leäch doïc ñaët ôû phía treân vaø döôùi suùng ñieän töû. Maøn hình tinh theå loûng theo nguyeân taéc keå treân coù ñoä töông phaûn raát thaáp (goùc nhìn 15o) Goùc quan saùt cuõng raát haïn cheá (20o töø ngang. Nguoàn saùng coù theå laø LED hay caùc loaïi ñeøn khaùc. Tröôøng tónh ñieän moät chieàu coù theå phaù hoûng caáu truùc tinh theå. ta coù theå duøng aùnh saùng thöôøng beân ngoaøi ñeå quan saùt maøn hình. Ñoù laø chaát loûng höõu cô maø phaân töû cuûa noù coù khaû naêng phaân cöïc aùnh saùng daãn ñeán thay ñoåi cöôøng ñoä saùng. Tröôøng tónh ñieän ñöôïc duøng ñeå ñieàu khieån höôùng phaân töû tinh theå loûng. Caùc maùy tính xaùch tay söû duïng boä phaän hieån thò laø maøn hình tinh theå loûng (Liquid Crystal Display). lôùp tinh theå loûng coù traïng thaùi saùng Duøng ñieän cöïc trong suoát (thí duï indium oxyt)naèm phía döôùi lôùp kính keùo phaân töû tinh theå loûngñònh höôùng theo tröôøng tónh ñieän.

Tín hieäu naøy laø tín hieäu töông töï taàn soá cao.Caán Truùc Maùy Tính -40- Coù 3 loaïi thieát bò ñaàu cuoái thöôøng duøng: caùc thieát bò ñaàu cuoái aùnh xaï kyù töï (character-map terminal). goïi laø pixel. ñieàu khieån vieäc queùt chuøm tia ñieän töû ñeå veõ caùc kyù töï leân maøn hình. moät maøn hình coù 25x80 kyù töï ñoøi hoûi 4000 byte trong RAM video trong ñoù 2000 byte cho caùc kyù töï vaø 2000 byte cho thuoäc tính cuûa chuùng. coù nhaáp nhaùy hay khoâng? v. Toaøn boä moät doøng caùc kyù töï ñöôïc tìm-naïp moät laàn ñeå coù theå tính ñöôïc caùc doøng queùt rieâng leû. Moãi pixel coù theå hoaëc saùng hoaëc toái ñeå bieåu thò moät bit thoâng tin. Treân caùc traïm laøm vieäc (workstation). CPU sao cheùp chuùng vaøo boä nhôù RAM video döôùi daïng caùc byte xen keõ. Do vaäy. cuõng nhö moät soá maïch ñieän töû duøng ñeå truy xuaát bus vaø taïo tín hieäu video (video signal). • Caùc thieát bò ñaàu cuoái aùnh xaï bit Thay ñoåi ôû ñaây laø maøn hình khoâng ñöôïc xem nhö daõy 25x80 kyù töï maø laø moät daõy caùc phaàn töû hình aûnh. maøn hình tieâu bieåu coù 1024x1024 pixel. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Moãi kyù töï ñöôïc keát hôïp vôùi 1 byte thuoäc tính ñeå moâ taû caùch theå hieän kyù töï. Moät soá card coù dung löôïng boä nhôù lôùn hôn ñeå löu giöõ nhieàu aûnh maøn hình. Treân caùc maùy vi tính. cöôøng ñoä.21 Ñeå hieån thò caùc kyù töï. Caùc thieát bò ñaàu cuoái thöôøng duøng aùnh xaï bit hôn aùnh xaï kyù töï ñöôïc goïi laø maøn hình ñoà hoïa. Nhieàu card video coù theå hoaït ñoäng ôû caû 2 cheá ñoä aùnh xaï bit vaø aùnh xaï kyù töï döôùi söï ñieàu khieån cuûa phaàn meàm vaø ta goïi laø card video ñoà hoaï.v… . maøn hình coù theå chöùa thöôøng 480x640 pixel. caùc thieát bò ñaàu cuoái aùnh xaï bit (bit-map terminal) hay maøn hình ñoà hoïa vaø caùc thieát bò ñaàu cuoái chuaån RS-232C (reference standard 232-C terminal).21 ñeå hieån thò döõ lieäu xuaát leân maøn hình. Coâng vieäc cuûa card video (video card) laø laëp laïi vieäc tìm naïp caùc kyù töï töø RAM video vaø taïo ra caùc tín hieäu caàn thieát ñieàu khieån maøn hình. • Caùc thieát bò ñaàu cuoái aùnh xaï kyù töï Haàu heát caùc maùy vi tính ñeàu söû duïng sô ñoà trình baøy trong hình 2. Thuoäc tính coù theå bao goàm: maøu saéc. Treân card truyeàn noái tieáp (serial communication board) laø moät ñoaïn boä nhôù goïi laø RAM video (video RAM). Vì card video xuaát tín hieäu video neân maøn hình phaûi ñaët gaàn maùy tính (khoaûng vaøi met). Hình 2.

• Loaïi maøn hình sieâu VGA (SVGA= Super VGA) coù ñoä phaân giaûi 800x600 • Loaïi maøn hình kieåu maûng ñoà hoïa môû roäng XGA (Extended Graphics Array) coù ñoä phaân giaûi 1024x768 • Loaïi maøn hình kieåu UVGA (Ultra VGA) coù ñoä phaân giaûi 1280x1024. Soá bit cho bus döõ lieäu cuïc boä coù theå laø 64 bit hoaëc thaäm chí 128 bit (khoâng phaûi laø bus döõ lieäu 32 bit cuûa khe bus môû roäng treân board chính maø card video caém treân ñoù. Ñeå caûi tieán toác ñoä cuûa moät card video. Modem: Vôùi löôïng maùy tính söû duïng ngaøy caøng taêng.20a. Phaàn meàm coù theå thieát laäp moät maãu baát kyø vaø maãu ñoù seõ ñöôïc cho hieän leân maøn hình ngay. thí duï: moät ma traän coù kích thöôùc 9x14 bit vaø laøm ñaày nhöõng bit caàn thieát ñeå laøm cho kyù töï xuaát hieän.25mm hay ít hôn. ta caàn xem xeùt 3 khía caïnh: ⋅ Boä xöû lyù ñoà hoïa (chip ñoà hoïa) ⋅ RAM video ⋅ Bus cuïc boä 3. chuùng coù caùc ñoä phaân giaûi (soá pixel theo chieàu ngang vaø chieàu doïc) khaùc nhau tuøy theo loaïi maøn hình: • Loaïi maøn hình kieåu maûng ñoà hoïa video VGA (Video Graphic Array) coù ñoä phaân giaûi 640x480. Do doù caàn coù caùc CPU toác ñoä cao ñeå thao taùc treân caùc bit hoaëc phaûi ñöôïc trang bò caùc phaàn cöùng ñaëc bieät quaûn lyù caùc pixel nhanh choùng. Ñeå veõ caùc kyù töï. ñöôøng daây ñieän thoaïi töï nhieân . trong ñoù tín hieäu ñöôïc bieåu thò 1 vôùi ñieän aùp khoaûng 5 volt vaø 0 vôùi ñieän aùp 0 volt. Toaøn boä phaàn cöùng chòu traùch nhieäm hieån thò daõy bit. Taát caû nhöõng öùng duïng ñeàu duøng heä thoáng ñieän thoaïi ñeå cung caáp ñöôøng thoâng tin. nhu caàu truyeàn thoâng tin giöõa maùy tính naøy. Chip ñoà hoïa thöôøng laø chip ñôn noái tröïc tieáp vôùi RAM video qua moät bus cuïc boä (local bus). töø ñaây cho pheùp cheá taïo caùc bit ñoà hoïa (Graphics chipset) Haàu heát caùc maøn hình hieän nay laø maøn hình ña taàn soá (multi frequency) nhaèm thích hôïp vôùi nhieàu tieâu chuaån khaùc nhau cuûa tín hieäu video. phaàn meàm phaûi quyeát ñònh caáp phaùt.Caán Truùc Maùy Tính -41- YÙ töôûng nhö vaäy cuõng duøng sô ñoà nhö ôû hình 2.21. khoâng thích hôïp ñeå truyeàn tín hieäu maùy tính. Phöông phaùp naøy cho pheùp chöông trình taïo ra nhieàu kieåu chöõ (font) vaø troän laãn chuùng neáu muoán. Moät vaán ñeà lieân quan ñeán RAM video cuûa caùc card video ñoà hoïa laø ñoä roäng cuûa bus döõ lieäu giöõa chip ñoà hoïa vaø RAM video. Moät tín hieäu soùng sin ôû taàn soá khoaûng töø 1000 Nguyeãn Höõu Loäc Khoa Vaät Lyù . nhö trong hình 2. Tín hieäu hai möùc ñieän aùp seõ bò saùi daïng khi truyeàn qua daây ñieän thoaïi daãn ñeán caùc loãi truyeàn. Ñoái vôùi caùc maøn hình maøu. nhöng chuùng coù 2 baát lôïi laø ñoøi hoûi dung löôïng video RAM lôùn vaø hieäu suaát thaáp. Maëc daàu caùc thieát bò ñaàu cuoái aùnh xaï bit coù tính meàm deõo cao. ngoaïi tröø RAM video coù dung löôïng töông ñoái lôùn. Kích thöôùc naøy caøng nhoû aûnh hieån thò caøng neùt. ngöôøi ta coøn ñònh nghóa kích thöôùc cuûa moät ñieåm aûnh (ñuùng ra laø khoaûng caùch giöõa boä ba ñieåm maøu cuûa moät ñieåm aûnh tính baèng mm). hieän nay khoaûng 0. Tuy nhieân.

Vôùi nhöõng sô ñoà khaùc ngöôøi ta cuõng coù theå truyeàn 3 hoaëc nhieàu bit ôû moãi khoaûng thôøi gian. neân moät soùng sin thuaàn tuùy khi truyeàn ñi seõ khoâng mang theo moät thoâng tin naøo caû. hoaëc 315 ñoä cho pheùp vôùi moãi khoaûng thôøi gian töông öùng ta seõ coù 2 bit. Neáu döõ lieäu phaùt laø moät chuoãi caùc kyù töï 8 bit. Hình 2. ngöôøi ta muoán ñöôøng truyeàn coù khaû naêng keát noái 8 bit ñoàng thôøi. bit naøy sau bit kia (hoaëc Nguyeãn Höõu Loäc Khoa Vaät Lyù .22. Do söï thay ñoåi cuûa soùng sin hoaøn toaøn coù theå ñoaùn tröôùc. 2 möùc ñieän aùp khaùc nhau töông öùng vôùi 0 vaø 1 ñöôïc söû duïng. 135. toác ñoä bit seõ lôùn hôn toác ñoä baud. Trong ñieàu cheá pha (phase modulation) ñôn giaûn [xem hình 2. Ñieàu naøy ñöôïc khai thaùc laøm cô sôû cho haàu heát caùc heä thoáng thoâng tin. Trong caùc heä thoáng ñieàu pha phöùc taïp hôn. ngöôøi ta coøn keát hôïp caùc thay ñoåi pha vôùi caùc thay ñoåi bieân ñoä trong soùng mang bò ñieàu cheá vaø goïi laø ñieàu cheá QAM (Quadrature Amplitude Modulation) nhaèm chuyeån taûi nhieàu thoâng tin hôn. 225.22(b)]. bieân ñoä vaø taàn soá khoâng thay ñoåi. Khi chuyeån 2 hoaëc nhieàu bit trong moät khoaûng thôøi gian . Trong ñieàu cheá taàn soá [xem hình 2.22 (c)]. taàn soá hoaëc pha. Baèng caùch thay ñoåi bieân ñoä. chuoãi caùc bit 0 vaø 1 ñöôïc truyeàn ñi nhö trong hình 2.Caán Truùc Maùy Tính -42- ñeán 2000 Hz goïi laø soùng mang (carrier).22 Trong ñieàu cheá bieán ñoä (amplitude modulation) [xem hình 2. Döõ lieäu soá phaùt ôû toác ñoä raát thaáp seõ nghe moät tieáng oàn lôùn ñoái vôùi bit 1 vaø khoâng coù oàn ñoái vôùi bit 0. nghóa laø 8 ñoâi daây.22(d)]. Vì ñöôøng daây ñieän thoïai chæ cung caáp 1 keânh (channel). pha soùng mang bò dòch ñi 45. khi truyeàn ñi seõ ít bò saùi daïng hôn. Ngoaøi caùc kyõ thuaät ñieàu cheá soùng mang neâu treân. möùc ñieän aùp laø haèng soá nhöng taàn soá soùng mang seõ khaùc nhau ñoái vôùi 1 vaø 0. neân caùc bit phaûi ñöôïc phaùt noái tieáp. Quaù trình naøy goïi laø söï ñieàu cheá (modulation). döõ lieäu soá ñöôïc ñieàu cheá taàn soá seõ nghe 2 aâm (tone) töông öùng vôùi 0 vaø 1. goïi laø maõ hoaù pha 2 bit (dibit). nhöng pha cuûa soùng mang thay ñoåi 180° khi döõ lieäu chuyeån töø 0 sang 1 hoaëc töø 1 sang 0. Raát nhieàu ngöôøi nhaàm laãn 2 thuaät ngöõ naøy. luùc baét ñaàu cuûa moãi khoaûng thôøi gian (time interval). Caùch ñieàu cheá taàn soá nhö vaäy coøn ñöôïc goïi laø laäp khoaù dòch taàn soá FSK ( Frequency Shift Keying ). Toác ñoä bieán ñieäu ñöôïc tính theo baud töông öùng vôùi soá bieán ñieäu trong moät giaây (coøn goïi laø soá khoaûng thôøi gian cô baûn cuûa bieán ñieäu).

Truyeàn ñoàng boä vaø khoâng ñoàng boä . Thí duï: vôùi toác ñoä döõ lieäu 1200 baud. Coù 2 phöông phaùp khaùc nhau ñöôïc duøng ñeå truyeàn caùc kyù töï. Trong phöông phaùp truyeàn khoâng ñoàng boä (asynchronous). Duøng moät modem thöù hai ôû ñaàu thu ñeå ñoåi soùng mang ñaõ ñieàu cheá thaønh soá nhò phaân. Bôûi vì caùc bit ñeán ñaàu thu ôû nhöõng khoaûng thôøi gian caùch ñeàu nhau. 1 bit ôû moät thôøi ñieåm vaø phaùt caùc bit ôû daïng caùc nhoùm 1 hoaëc 2 bit ñöôïc ñieàu bieân.Caán Truùc Maùy Tính -43- nhoùm thaønh 2 neáu duøng phöông phaùp maõ hoaù dibit). thuû tuïc truy xuaát lieân keát cho caùc modem LAPM (Link Access Procedure for Modems) cho tieâu chuaån V. Hai modem ôû 2 thieát bò truyeàn vaø nhaän phaûi coù cuøng tieâu chuaån phaùt hieän loãi vaø söûa loãi.8 Kbps coù theå ñaït ñeán 115200 bps. Thí duï nhö hieäu xuaát neùn laø 4 : 1 seõ taêng toác ñoä cuûa modem leân 4 laàn. Hieäu suaát neùn caøng cao toác ñoä truyeàn döõ lieäu cuûa modem caøng lôùn. Neáu söû duïng caùc phöông phaùp ñieàu cheá trong hình Nguyeãn Höõu Loäc Khoa Vaät Lyù . V. Loaïi thieát bò nhaän caùc kyù töï töø moät maùy tính döôùi daïng caùc tín hieäu 2 möùc.42 v. Neùn döõ lieäu vaø khaû naêng caøi ñaët saün trong moät soá modem nhaèm tieát kieäm thôøi gian truyeàn vaø chi phí truyeàn. v… . Tieâu chuaån MLP5. Caùc modem môùi nhaát hieäu ñang ñöôïc söû duïng roäng raõi coù toác ñoä truyeàn döõ lieäu laø 56 Kbps. Caùc modem thöôøng tuaân theo caùc tieâu chuaån khaùc nhau tuyø vaøo nhöõng ñaëc tröng vaø khaû naêng cuûa chuùng. Modem phaùt caùc bit rieâng leõ trong moät kyù töï ôû nhöõng khoaûng thôøi gian caùch ñeàu nhau. Phaùt hieän loãi vaø khaû naêng cuûa moät soá modem nhaän bieát coù loãi phaùt sinh vaø yeâu caàu truyeàn laïi döõ lieäu ñaõ bò sai . ñoàng hoà (clock) cuûa modem cho bieát khi naøo phaûi laáy maãu tín hieäu ñöôøng truyeàn ñeå ñoïc gía trò cuûa caùc bit rieâng leõ. tín hieäu coù söï thay ñoåi cöù sau moãi 833 microgiaây. Thí duï: moät ngöôøi ñaùnh maùy treân moät thieát bò ñaàu cuoái chia seû thôøi gian (time-sharing terminal) seõ khoâng ñaùnh ôû cuøng moät toác ñoä. modem 14400 bps coù döõ lieäu ñöôïc neùn seõ coù toác ñoä truyeàn 57600 bps vaø modem 28. Caùc nghi thöùc söûa loãi ñaõ ñöôïc duøng laø nghi thöùc maïng cuûa Microcom cho caùc tieâu chuaån MNP1 ñeán MNP4 (Microcom Networking Protocol). maëc duø khoaûng thôøi gian giöõa 2 bit lieân tieáp trong moät kyù töï coá ñònh. Bell Lab vaø Uyû Ban Tö Vaán quoác teá veà ñieän thoaïi vaø ñieän tín CCITT (Consultative Committee on International Telephone and Telegraph) ñaõ ñaët ra nhöõng tieâu chuaån cho caùc nghi thöùc (Protocol) truyeàn qua modem. nhö vaäy khoaûng thôøi gian giöõa hai kyù töï lieân tieáp khoâng phaûi laø haèng soá .42 bis laø caùc tieâu chuaån coù nghi thöùc neùn döõ lieäu. Toå chöùc naøy ñöôïc ñaët teân laø Hieäp hoäi vieãn thoâng quoác teá ITU (International Telecommunication Union ) vaø caùc nghi thöùc ñöôïc phaùt trieån goïi laø caùc tieâu chuaån ITU – T. neân ngay khi modem thu xaùc ñònh ñieåm baét ñaàu cuûa moät kyù töï. ñieàu taàn hoaëc ñieàu pha goïi laø modem. Söï bieán thieân toác ñoä naøy laøm naûy sinh vaán ñeà laøm theá naøo ñeå maùy thu coù theå nhaän ra bit ñaàu tieân cuûa moät kyù töï . khoaûng thôøi gian giöõa 2 kyù töï khoâng coá ñònh.

bôûi vì maùy thu khoâng coù caùch naøo bieát ñöôïc coù bit 1 hay 0 ôû ñaàu. 2 bit Stop seõ cho moät khung 11 bit. Ñeå giuùp maùy thu nhaän ra nôi baét ñaàu moät kyù töï . Phöông phaùp truyeàn khoâng ñoàng boä ñöôïc minh hoaï trong hình 2. ÔÛ nhöõng toác ñoä cao hôn. ôû giöõa hoaëc ôû cuoái kyù töï . moät khi ñaõ ñoàng boä. Phöông phaùp truyeàn ñoàng boä (synchronous) khoâng söû duïng bit Start vaø caùc bit Stop. ngöôøi ta chæ duøng moät bit Stop. vì vaäy bit Start laø 0. Do vaäy. Trong phöông phaùp naøy. Caùc bit Stop laø 1 ñeå phaân bieät vôùi caùc bit Start. Hình 2.1 bit Start.20. Truyeàn ñoàng boä thöôøng tieán haønh ôû toác ñoä 4800 bps. ngöøôi ta phaùt tröïc tieáp moät bit Start ngay tröôùc moãi kyù töï. traùi laïi ñieàu naøy khoâng caàn ñeán trong truyeàn baát ñoàng boä do caùc söï baét ñaàu cuûa moãi kyù töï ñaõ ñöôïc chæ roõ baèng 1 bit Start. Trong phöông phaùp truyeàn ñoàng boä. Keát quaû laø toác ñoä truyeàn döõ lieäu ñöôïc taêng leân.23 :Caùc phöông thöùc truyeàn ( a) Truyeàn baát ñoàng boä ( b) Truyeàn ñoàng boä . ngay caû luùc khoâng phaùt döõ lieäu.Caán Truùc Maùy Tính -44- 2. toác ñoä bit ( bit rate ) trong khoaûng töø 110 bps tôùi 19200 bps.23(a). ta khoâng coù caùch naøo phaân bieät giöõa bit 0 vaø khoâng coù döõ lieäu. Truyeàn ñoàng boä ñoøi hoûi caùc xung ñoàng hoà (clock) trong maùy thu vaø phaùt phaûi duy trì ñoàng boä trong nhöõng khoaûng thôøi gian daøi. Thôøi gian truyeàn coù theå tieáp tuïc laâu maø khoâng coù söï taùi ñoàng boä cuûa maùy thu vôùi pha Nguyeãn Höõu Loäc Khoa Vaät Lyù . ÔÛ toác ñoä 110 bps. moät kyù töï goàm toaøn bit 1 theo sau laø 7 bit 0 seõ khoâng phaân bieät ñöôïc vôùi moät kyù töï goàm 7 bit 0 vaø theo sau laø bit 1. coäng vôùi moät bit kieåm tra chaún leõ. caùc modem vaãn tieáp tuïc gôûi caùc kyù töï ñeå duy trì ñoàng boä. cho pheùp modem nhaän bieát bit baét ñaàu cuûa kyù töï. 110 bps töông öùng vôùi toác ñoä 10 kyù töï moãi giaây. Moät kyù töï goàm toaøn caùc bit 0 seõ khoâng theå naøo nhìn thaáy ñöôïc. Hôn nöõa. ngöôøi ta duøng hai bit stop. Trong phöông phaùp truyeàn khoâng ñoàng boä. Thoâng thöôøng. 9600 bps. khoâng gioáng nhö truyeàn khoâng ñoàng boä. hoaëc thaäm trí coøn cao hôn. khoaûng thôøi gian giöõa 2 kyù töï luoân baèng nhau. Ñeå caûi tieán ñoä tin caäy. ngöôøi ta phaùt theâm 1 hoaëc 2 bit stop ngay sau moãi kyù töï. Giöõa bit Start vaø caùc bit Stop laø caùc bit döõ lieäu ñöôïc phaùt ôû nhöõng khoaûng thôøi gian baèng nhau. Moät kyù töï ñaëc bieät “idle” ñöôïc gôûi ñi khi khoâng coù döõ lieäu phaùt. ñöøông truyeàn ñöôïc giöõ ôû traïng thaùi 1 khi khoâng coù döõ lieäu ñöôïc phaùt ñeå cho pheùp phaùt hieän maïch hôû. Boä ñònh thì trong modem thu ñöôïc khôûi ñoäng khi bit Start ñeán. vì theá moät kyù töï 7 bit.

Truyeàn ñôn coâng. vaø song coâng. caùc maùy tính chæ ñöôïc söû duïng bôûi nhöõng chuyeân gia laäp trình laønh ngheà. 4. gôûi moät chuoãi caùc kyù töï tôùi thieát bò B. baùn song coâng. Trong suoát moät cuoäc truyeàn.Caán Truùc Maùy Tính -45- cuûa maùy phaùt tuyø thuoäc vaøo söï oån ñònh cuûa caùc xung ñoàng hoà. A vaø B ñoåi vai troø laàn nöõa. Caáu hình naøy ít ñöôïc duøng trong caùc maùy tính vì khoâng coù caùch naøo ñeå maùy thu phaùt tín hieäu nhaän bieát (acknowledgement signal) tôùi maùy phaùt. con ngöôøi coù theå söû duïng maùy tính moät caùch roäng raõi vaøo moät soá coâng vieäc maø hoï muoán thöïc hieän. hoaït ñoäng nhö moät maùy thu. Ñoâi khi nhöõng khoái kyù töï naøy duøng maõ Hamming hoaëc nhöõng kyõ thuaätï khaùc ñeå phaùt hieän ñeå söûa loãi ñöôøng truyeàn. cho bieát thoâng ñieäp (message) ñaõ ñöôïc nhaän ñuùng. moät con ñöôøng cho moãi höôùng. Tình huoáng thoâng thöôøng laø thieát bò A . Neáu coù loãi. Söï ñoái thoaïi (conversation) giöõa maùy phaùt vaø maùy thu veà ñieàu gì phaûi laøm keá tieáp goïi laø nghi thöùc truyeàn (protocol). hoaït ñoäng nhö moät maùy phaùt . Ngaøy nay. Vaøo nhöõng naêm 1950. vaø hoï khoâng caàn bieát nhieàu. truyeàn song coâng khoâng maát thôøi gian ñeå thay ñoåi höôùng truyeàn. Ñöôøng truyeàn ñôn coâng (simplex) coù khaû naêng truyeàn döõ lieäu chæ theo höôùng. Ñieån hình caùc xung ñoàng hoà. Moät caùch khaùi quaùt. ñöôøng truyeàn song coâng töông ñöông vôùi 2 ñöôøng truyeàn ñôn coâng. Phaùt thanh vaø truyeàn hình laø nhöõng thí duï veà truyeàn ñôn coâng . ñöôøng truyeàn song coâng (full–duplex) coù theå phaùt vaø nhaän döõ lieäu ñoàng thôøi ôû caû hai höôùng. Nguyeân nhaân khoâng phaûi do tính chaát cuûa ñöøông daây. A phaùt laïi thoâng ñieäp ñaõ gôûi laàn nöõa. bôûi vì noù coù theå ñieàu haønh giao thoâng treân caû 2 höôùng nhöng khoâng ñoàng thôøi. Ñöøông xe löûa laø moät ví duï cuûa phöông thöùc truyeàn baùn song coâng. Nguyeãn Höõu Loäc Khoa Vaät Lyù . (hoaëc thaäm chí khoâng muoán bieát) veà caùch laøm vieäc cuûa maùy tính hoaëc caùch laäp trình treân maùy tính. Thôøi gian caàn ñeå chuyeån ñöôøng truyeàn baùn song coâng töø höôùng naøy thaønh höôùng kia coù theå daøi gaáp nhieàu laàn thôøi gian truyeàn kyù töï. Ñöôøng truyeàn baùn song coâng (half–duplex) coù theå phaùt vaø nhaän döõ lieäu treân caû 2 höôùng nhöng khoâng ñoàng thôøi. oån ñònh ñuû ñeå cho pheùp caùc khoái haøng ngaøn kyù töï phaùt ñi maø khoâng caàn söï taùi ñoàng boä. Vì 2 ñöôøng truyeàn coù theå tieán haønh song song. moät modem seõ laø maùy phaùt vaø modem coøn laïi laø maùy thu. vaø A seõ gôûi thoâng ñieäp keá tieáp tôùi B. Caùc maùy tính theá heä ENIAC chæ ñöôïc ngöôøi cheá taïo ra noù söû duïng. moät ñöôøng cho moãi höôùng neân truyeàn song coâng coù theå phaùt nhieàu thoâng tin hôn truyeàn baùn song coâng vôùi cuøng toác ñoä döõ lieäu. ñôn giaûn chæ vì moät ñaàu cuoái chæ coù 1 maùy phaùt vaø ñaàu cuoái kia chæ coù moät maùy thu. Sau ñoù A vaø B ñoåi vai troø cho nhau. B gôûi thoâng baùo trôû laïi A cho bieát kyù töï nhaän ñöôïc coù loãi khoâng? Neáu khoâng coù loãi ñöôøng truyeàn. Ngöôïc laïi. Chuoät: Caøng ngaøy ngöôøi söû duïng maùy tính caøng khoâng caàn coù nhieàu kieán thöùc veà caùch laøm vieäc cuûa maùy tính. baùn song coâng vaø song coâng Coù 3 phöông phaùp truyeàn ñöôïc duøng trong muïc ñích truyeàn thoâng tin : Ñôn coâng.

Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ñaõ coù nhieàu tranh luaän veà chuoät caàn phaûi coù bao nhieâu nuùt nhaán. Moät loaïi chuoät cô khí coù hai baùnh xe cao su nhoâ ra ôû phía döôùi. moät con troû nhoû (cursor) treân maøn hình cuõng di chuyeån theo.24. Khi di chuyeån chuoät treân baøn. chuoät quang (optical mouse). Moãi baùnh xe seõ ñieàu khieån moät bieán trôû. Chuoät ñöôïc Douglas Englebart phaùt minh vaøo naêm 1964 taïi tröôøng ñaïi hoïc Stanford. Khi di chuyeån thaúng goùc vôùi chuïc chính.Caán Truùc Maùy Tính -46- Nhieàu ngöôøi nhaän thaáy vieäc goõ caùc leänh (thöôøng khoù hieåu) treân baøn phím laø khoâng quen thuoäc vôùi ngöôøi söû duïng. nhöõng ngöôøi thaønh thaïo thích coù nhieàu nuùt ñeå thöïc hieän nhöõng ñieàu khaùc thöôøng. Baèng caùch ño söï thay ñoåi ñieän trôû coù theå bieát moãi baùnh xe quay bao nhieâu. Chuoät thöôøng coù 2 hoaëc 3 nuùt nhaán (button). Xerox aùp duïng chuoät cho heä thoáng maùy tính Alto caûi tieán. vaø hoï troû môùi tôùi muïc maø hoï muoán. vaø chuoät cô khí–quang (opto–mechanical mouse).24: Chuoät coù baùnh xe duøng ñeå troû ñeán caùc muïc trong menu. Coù 3 loaïi chuoät ñang ñöôïc söû duïng: Chuoät cô khí (mechanical mouse). vaø nhö vaäy tính ñöôïc chuoät ñaõ di chuyeån bao xa theo moãi höôùng . cho pheùp choïn caùc muïc töø trình ñôn (menu) treân maøn hình. Khi chuoät di chuyeån song song vôùi truïc chính. Ngöôøi bình thöôøng thích coù moät nuùt nhaán hôn (vì khoù coù söï nhaàm laãn). vaøo luùc naøy ñang ñöôïc thí nghieäm vaø chæ söû duïng cho nghieân cöùu. Naêm 1973. Chuoät chính thöùc ñöôïc goïi laø boä ñònh vò X–Y treân maøn hình. Chuoät (mouse) laø thieát bò thoâng duïng nhaát cho pheùp ngöôøi söû duïng troû treân maøn hình. cho pheùp ngöôøi söû duïng troû tôùi caùc muïc treân maøn hình. Hình 2. Chuoät laø moät hoäp plastic nhoû ñaët treân baøn caïnh thieát bò ñaàu cuoái. coù caùc truïc vuoâng goùc nhau ñöôïc minh hoïa trong hình 2. Ngöôøi ta raát thích nhöõng heä thoáng trong ñoù maùy tính theå hieän caùc trình ñôn (menu) treân maøn hình. Duøng moâ hình naøy ñoøi hoûi phaûi coù moät caùch ñeå troû treân maøn hình. baùnh xe kia seõ quay. Moät loaïi chuoät cô khí khaùc cuõng ñaït ñöôïc hieäu quaû nhö vaäy baèng caùch duøng moät quaû caàu nhoû hôi nhoâ ra ôû phía döôùi. moät baùnh xe seõ quay.

thay vaøo ñoù moät diod phaùt saùng LED (Light Emitting Diode) vaø moät boä taùch quang phía döôùi. Nguyeãn Höõu Loäc Khoa Vaät Lyù . ngöôøi söû duïng nhaáp (click) moät nuùt nhaán. Microsoft ñöa ra moät loaïi chuoät môùi goïi laø chuoät thoâng minh (intelligent mouse). nhöng thoâng thöôøng khi söû duïng. Maïch ñieän töû beân trong chuoät seõ ñeám soá doøng cuûa maïng löôùi ñi qua theo moãi höôùng. Sau ñoù moät muõi teân (con troû) ñöôïc hieån thò treân maøn hình ôû vò trí töông öùng vôùi vò trí cuûa chuoät. Gioáng nhö chuoät cô khí coù hai baùnh xe. Tuy nhieân. Chuoät quang ñöôïc duøng treân moät mieáng ñeäm plastic ñaëc bieät coù moät maïng löôùi caùc doøng keû chöõ nhaät caùch khoaûng gaàn nhau. Khi chuoät di chuyeån caùc baùnh xe quay vaø caùc xung aùnh saùng ñaäp vaøo boä taùch quang moãi khi coù moät khe hôû xuaát hieän giöõa LED vaø boä taùch quang.25: Caáu taïo cuûa chuoät cô khí-quang Maëc duø chuoät ñöôïc thieát keá theo nhieàu caùch khaùc nhau. Hình 2. Baùnh xe naøy coù hai chöùc naêng chuû yeáu laø cuoän caùc taøi lieäu hoaëc nhöõng trang Web baèng caùch ñaåy baùnh xe tôùi lui . chuoät cô khí-quang cuõng coù hai baùnh xe quay ñöôïc gaén vuoâng goùc nhau. Ñoâi khi ngöôøi ta coøn duøng 2 byte cho moãi truïc toaï ñoä. Cuoái naêm 1996. Byte ñaàu tieân chöùa moät soá nguyeân coù daáu cho bieát chuoät ñaõ di chuyeån theo chuïc X bao nhieâu ñôn vò trong 100 mgiaây cuoái. Khi muõi teân troû tôùi moät muïc thích hôïp. Loaïi naøy khoâng coù baùnh xe hoaëc quaû caàu. boä taùch quang doø doøng keû ñi ngang qua baèng caùch xem söï thay ñoåi löôïng aùnh saùng phaûn hoài töø LED. tuy gioáng nhö caùc chuoät Microsoft chuaån nhöng coù theâm moät baùnh xe nhoû ôû beân treân giöõa hai nuùt phaûi vaø traùi cuûa chuoät. moãi baùnh coù moät LED ôû giöõa vaø moät loaït khe hôû khaùc ñeàu nhau xung quanh chu vi baùnh xe cuøng vôùi moät boä taùch quang ñaët ngay beân ngoaøi baùnh xe. Phaàn meàm caáp thaáp trong maùy tính nhaän thoâng tin naøy vaø ñoåi chuyeån ñoäng töông ñoái do chuoät gôûi tôùi thaønh vò trí tuyeät ñoái. Caùc kyù töï tôùi maùy tính thöôøng ñi treân ñöôøng caùp RS-232–C. Soá xung phaùt hieän ñöôïc seõ tæ leä vôùi khoaûng caùch di chuyeån treân maøn hình cuûa con troû. Khi chuoät di chuyeån treân löôùi. Byte thöù hai cuõng cho bieát thoâng tin nhö vaäy nhöng theo truïc Y.Caán Truùc Maùy Tính -47- Loaïi thöù hai laø chuoät quang. nhö theå chuùng ñöôïc ñaùnh treân maøn phím. Loaïi thöù ba laø chuoät cô khí-quang. nuùt ñoù maùy tính seõ hieåu muïc naøo ñaõ ñöôïc choïn töø söï nhaän bieát muõi teân ñang ôû nôi naøo treân maøn hình . Byte thöù ba chöùa traïng thaùi hieän taïi cuûa caùc nuùt nhaán. chuoät ñeàu gôûi moät chuoãi 3 byte tôùi maùy tính sau moãi 100 mgiaây.

Döôùi ñaây chuùng ta seõ moâ taû vaén taét caùc loaïi maùy in chính vaø caùch laøm vieäc cuûa chuùng . nhöng ôû ñaây caùc kyù töï ñöôïc taïo noåi treân moät xích baèng theùp bao boïc treân tôø giaáy.v… Ñeå söû duïng chuoät thoâng minh ta phaûi coù phaàn meàm hoã trôï nhö Microsoft Internet Explorer. chuùng coù moät baùnh xe hình nang hoa (gioáng nhö hình moät hoa cuùc) vôùi caùc kyù töï treân caùc caùnh. moãi buùa cho moät vò trí coät. Moät doøng ñöôïc in baèng caùch höùông daãn buùa ñaäp vaøo ngay chöõ Nguyeãn Höõu Loäc Khoa Vaät Lyù . sau ñoù cho ñieän chaïy qua nam chaâm. Ñeå thoaû maõn ñöôïc nhu caàu naøy ngöôøi ta ñaõ cheá taïo ra nhieàu loaïi maùy in.Caán Truùc Maùy Tính -48- chöùc naêng thöù hai gioáng nhö nuùt nhaán thöù ba cuûa moät chuoät coù ba nuùt nhaán . Ñeå in moät kyù töï. chuoät coù theå gheùp noái vôùi caùc PC baèng caùch giao tieáp: Giao tieáp noái tieáp. maùy in quay kyù töï ñuùng ñeán tröôùc moät nam chaâm ñieän. ñaït toác ñoä töø 20 ñeán 40 kyù töï moãi giaây. nhöng ñoái vôùi nhöõng öùng duïng khaùc nhö caàn in hoà sô ra giaáy phaûi caàn ñeán moät loaïi thieát bò khaùc. Caùc mainframe lôùn cuõng duøng maùy in taùc ñoäng. Maùy in 80 coät seõ coù 80 caùi buùa. Maùy in loaïi naøy coù chöùc löôïng toát. Loaïi chuoät naøy raát thuaän tieän khi ta duyeät nhieàu trang Web. Board chính hoaëc khoâng coù caùc coång noái tieáp. Maùy in : Thieát bò ñaàu cuoái CRT coù theå ñaùp öùng ñöôïc vôùi nhieàu öùng duïng. laøm vieäc vôùi caùc baûn tính . 5. ñaëc bieät khi duøng vôùi daûi ruybaêng than (carbon). chuoät noái vôùi caùc PC qua caùc coång noái tieáp COM (thöôøng coù hai coång noái tieáp cho moät PC laø COM1 vaø COM2). Board giao tieáp bus rieâng caám treân khe hôû roäng cuûa board chính vaø truyeàn thoâng vôùi trình ñieàu khieån thieát bò baèng bus cuûa board chính. Phaàn lôùn nhöõng maùy tính môùi hieän nay coù coång chuoät chuyeân duïng treân board chính. Giao tieáp bus Vôùi giao tieáp noái tieáp. öùng kyù töï ñoù ñaäp vaøo ruy baêng. Nhöõng öùng duïng trong Office 97 cuõng hoã trôï chuoät thoâng minh. Maùy in loaïi coå xöa nhaát. ñeå laïi moät chöõ treân giaáy. Hieän nay. daïng in naøy ñöôïc duøng trong caùc maùy in coù baùnh xe loaïi voøng (daisy wheel). thu nhoû. Ñaàu noái treân caùp cuûa chuoät laø ñaàu noái ñöïc 9 chaân hoaëc 25 chaân. maùy in taùc ñoäng (impact). Treân caùc maùy tính caù nhaân hieän nay. laøm vieäc gioáng nhö moät maùy ñaùnh chöõ : Moät mieáng kim loaïi hoaëc plastic coù chöõ noåi ñaäp vaøo moät daõi ruy baêng möïc tieáp xuùc vôùi tôø giaáy. Maùy in taùc ñoäng . phaàn meàm naøy coøn cho pheùp ta aán giöõ phím Ctrl khi xoay baùnh xe ñeå phoùng to. giao tieáp naøy goïi laø giao tieáp chuoät PS/2 vì ñöôïc söû duïng treân caùc heä thoáng PS/2 cuûa IBM töø naêm 1987. v. Giao tieáp chuoät PS / 2 . Chuoät söû duïng giao tieáp bus thöôøng ñöôïc duøng trong caùc heä thoáng khoâng coù coång chuoät duïng treân board chính hoaëc khoâng coù caùc coång noái tieáp.

Nhöõng maùy in naøy coù theå in moät trang chæ trong vaøi giaây hoaëc ít hôn. Ngöôøi ta coù theå taêng chaát löôïng in leân baèng hai kyõ thuaät : Duøng nhieàu kim hôn vaø coù caùc voøng troøn choàng cheùo leân nhau. coù tính linh hoaït tuyeät haûo. Luùc baét ñaàu moãi trang in.26 (a) Chöõ “A” Treân moät ma traän 5x7 ( b) chöõ “A” ñöôïc sinh vôùi maùy in 24 kim choàng cheùo nhau. Trong moät voøng quay cuûa xích. trong ñoù ñaàu in coù töø 7 ñeán 24 kim hoaëc hoaù töø tính ñöôïc queùt ngang qua moãi doøng in.26(a) minh hoaï chöõ “ A” ñöôïc in treân moät ma traän 5x7.26(b) theå hieän moät chöõ “ A” ñöôïc in baèng maùy in 24 kim taïo ra caùc ñieåm choàng cheùo nhau. laø maùy in laser (laser printer). Hình 2. Moãi ñieåm coù theå ñöôïc in hoaëc khoâng in tuøy thuoäc vaøo kyù töï ñöôïc in. Caùc maùy in laser haàu heát ñeàu duøng kyõ thuaät gioáng nhö maùy sao cheùp quang (photocopy). vì vaäy coù theå in toaøn boä moät doøng. Thöôøng moät doøng phaûi ñöôïc queùt nhieàu laàn ñeå sinh ra caùc ñieàm choàng cheùo nhau. Phaàn chính cuûa maùy in laø moät troáng quay chính xaùc. Hình 2. Maùy in loaïi reû tieàn coù 7 kim ñeå in 80 kyù töï treân moät doøng vôùi moãi kyù töï laø moät ma traän laø 5x7. Maùy in laser Coù leõ söï phaùt trieån lyù thuù nhaát veà in. troáng ñöôïc naïp ñieän aùp 1000 volt vaø ñöôïc phuû moät chaát caûm quang. Thieát bò naøy cho moät hình aûnh chaát löôïng cao. Thöïc teá doøng in luùc ñoù goàm 7 doøng ngang. nhöng thay vì duøng ñieän aùp ñeå laøm leäch ngang. Hình 2. Loaïi maùy in thoâng duïng khaùc laø maùy in ma traän (matrix printer). moãi doøng coù 5x80 ñieåm. toác ñoä nhanh vaø laøm giaûm giaù thaønh thieát bò ngoaïi vi.Caán Truùc Maùy Tính -49- thích hôïp phía tröôùc noù. töø khi Johann Gutenberg cheá ra loaïi maùy di ñoäng vaøo theá kæ 15. sau ñoù aùnh saùng töø phaàn nguoàn phaùt laser ñöôïc queùt doïc theo chieàu daøi troáng nhö chuøm tia ñieän töû cho ñeøn hình CRT. Caùc maùy in ma traän toát coù theå hoaït ñoäng vôùi nhieàu cheá ñoä ñeå ñieàu hoaø söï khaùc bieät giöõa chöùc löôïng in vaø toác ñoä. Kyõ thuaät cô baûn ñöôïc in hoïa trong hình 2. ngöôøi ta duøng moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . töøng kyù töï seõ xuaát hieän ôû moãi coät. vaø chaéc chaén chaúng bao laâu nöõa kyõ thuaät haøy coù theå söû duïng ñöôïc trong caùc maùy keát hôïp in vaø sao cheùp . 27. Maùy in ma traän. do ñoù chaát löôïng in taêng leân nhöng ñoàng thôøi toác ñoä in cuõng giaûm xuoáng.

caàn nhaäp 4000 byte. cô khí vaø quang hoïc . Vôùi phöông phaùp ñaàu. veõ ñöôøng thaúng. Tia laser ñöôïc ñieàu cheá ñeå sinh ra maãu caùc veät saùng vaø toái . maùy tính chæ cho ra daïng vaên baûn thoâng thöôøng vôùi caùc leänh choïn kieåu chöõ. Phaàn meàm seõ ñieàu khieån caùc LED saùng vaø taét ñeå hình thaønh moät doøng. Sau ñoù giaáy ñi qua moät cuoän ru loâ nhieät ñeå keát dính boät in tónh ñieän leân giaáy. doøng caùc ñieåm thöù nhaát ñaït ñeán toner. ÔÛ laàn quay sau. nhöng caàn nhieàu maïch ñieän töû ñeå ñieåu khieån caùc LED. Moät maùy tính beân trong maùy in xaây döïng moät baûn ñoà bit (bit map) cho töøng trang vaø chuyeån tôùi maùy in. chuaån bò tích ñieän vaø phuû boä in laàn nöõa cho trang keá tieáp. ngöôøi ta thöôøng goïi laø ñoäng cô in (print engine). Moät maùy in coù toác ñoä in 12 trang/phuùt yeâu caàu baêng thoâng giöõa maùy tính vaø maùy in laø 6400 bps. troáng phoùng ñieän vaø laøm saïch boät in tónh ñieän coøn treân ñoù. Tuy nhieân.Caán Truùc Maùy Tính -50- göông quay hình baùt giaùc ñeå queùt doïc theo chieàu daøi troáng. baèng caùch gaén moät haøng LED doïc theo chieàu daøi troáng (hoaëc höôùng tôùi troáng qua sôïi quang ). Ñeå in moät trang 50 doøng 80 kyù töï vôùi moät kieåu chöõ. Ñieåm baát lôïi laø caàn coù moät maùy tính beân trong maùy in. Caùc nhaø cheá taïo maùy in laser keát hôïp caùc ñoäng cô in vôùi moät soá maïch ñieän töû vaø phaàn meàm rieâng cuûa hoï ñeå taïo ra moät maùy in hoaøn haûo . Caùc maãu maø tia laser ñaäp vaøo seõ maát ñieän tích. coá ñònh hình aûnh. troáng quay moät phaàn cuûa ñoä ñeå cho pheùp doøng keá tieáp ñöôïc queùt. Thuaän lôïi cuûa phöông phaùp naøy laø baêng thoâng caàn thieát giöõa maùy in vaø maùy tính raát thaáp. moät hoäp chöùa boät ñen nhaïy caûm vôùi tónh ñieän maø ta goïi laø boät in tónh ñieän. Quaù trình naøy laø söï keát hôïp cöïc kì phöùc taïp cuûa kyõ thuaät vaät lyù hoùa hoïc. khi ñöôïc laép raùp ñaày ñuû. Moät laùt sau. Hình 2. Ñaây laø moät thieát keá quang ñôn giaûn. vì theá hình thaønh moät aûnh cuûa doøng ñoù. trong khi ñoù ñöôøng truyeàn RS–232–C coù theå laøm vieäc vôùi toác ñoä 9600 baud. troáng ñaõ phuû boät in tónh ñieän ñöôïc öùng leân giaáy vaø chuyeån boät ñen naøy leân giaáy. Ñeå löu giöõ moät baûn ñoà bit cho moät trang kiùch thöôùc Nguyeãn Höõu Loäc Khoa Vaät Lyù . Cuoái cuøng. Hai phöông phaùp khaùc ñeå saép ñaët ñoäng cô in vaøo trong moät maùy in hoaøn haûo.27: Hoaït ñoäng cuûa moät maùy in laser . chöõ nhaät vaø hình troøn. treân ñöøông truyeàn taûi. Cuõng coù theå söû duïng moät loaïi ñoäng cô in hôi khaùc khoâng duøng tia laser. Boät in tónh ñieän bò huùt bôûi caùc ñieåm vaãn coøn tích ñieän. Sau khi moät doøng caùc ñieåm ñöôïc queùt.

Taàn soá dao ñoäng naèm trong phoå aâm taàn (100KHz).Caán Truùc Maùy Tính -51- 8.15mm. Do vaäy. Ñaùng tieác laø caùc heä thoáng saép chöõ in chuyeân nghieäp caàn töø 1000 tôùi 2000 ñieåm/inch. duøng moät kính hieån vi coân g suaát thaáp. Heä thoáng naøy thöôøng goïi laø WYSIWYG (What You See Is What You Get). Ñöôøng kính gioït möïc vaøo khoaûng 0. Trình phieân dòch (interpreter) trong maùy in ñoåi ngoân ngöõ PostScript thaønh caùc pixel vaø in chuùng. Phöông phaùp naøy laøm cho maùy in reû hôn nhieàu. toác ñoä döõ lieäu laø 1. Ta nhaän thaáy. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Neáu so saùnh nhöõng taøi lieäu ñöôïc saép xeáp chöõ in chuyeân nghieäp. coâng xuaát tính toaùn vaø baêng thoâng . ta caàn moät megabyte boä nhôù trong maùy tính . Maùy in laser ñaõ laøm phaùt sinh moät coâng ngheä hoaøn toaøn môùi. PostScript laø moät chuaån quan trong ñoái vôùi maùy in laser . nhöng roõ raøng khi di chuyeån 600 ñieåm/inch hoaëc cao hôn. Ñaàu phun ñöôïc queùt theo chieàu ngang taïo neân töøng doøng in. goïi laø desktop publishing (duøng moät maùy tính nhoû vaø moät maùy in laser ñeå laøm taøi lieäu in coù chaát löôïng cao). maùy quay phim coù theå sao cheùp taøi lieäu ñeå in deå daøng baèng caùch duøng maùy in LED ( LED printer ) coù ñoä phaân giaûi 450 ñieåm/inch. Hy voïng laø tính noäi dung cao seõ buø laïi ñöôïc boä phaân giaûi vaät lyù thaáp cuûa taøi lieäu. vaø sau ñoù naïp vaøo maùy in laser. IBM PC vaø nhöõng maùy tính khaùc coù phaàn meàm cho pheùp ngöôøi söû duïng ñaùnh caùc taøi lieäu vaø cho xuaát hieän treân maøn hình gioáng nhö daïng xuaát cuoái cuøng cuûa chuùng. Kích thöôùc vaø khoaûng caùch giöõa töøng gioït möïc ñöôïc ñieàu khieån qua boä dao ñoäng aùp ñieän. Maùy in phun möïc Möïc daãn ñieän ñöôïc phun thaønh tia qua moät loã raát nhoû. Sau ñoù. vaø chæ chuyeån aûnh bit thoâ (chöa xöû lyù) tôùi maùy in . Gioït möïc ñöôïc tích ñieän qua moät ñieän cöïc naèm phía tröôùc oáng phun.5x11 inch vôùi moät inch vuoâng coù 300 x 300 ñieåm. Nhieàu heä thoáng dòch vaên baûn nhaäp thaønh moät ngoân ngöõ trung gian goïi laø PostScript.6 megabit/giaây.06mm vaø khoaûng caùch giöõa moãi gioït laø 0. moät soá heä thoáng duøng maùy tính vaø boä nhôù beân trong maùy tính ñeå xaây döïng baûn ñoà bit. gioït möïc ñöôïc hai ñieän cöïc thöù hai ñieàu khieån vaø phun leân giaáy (hai traïng thaùi: coù möïc vaø khoâng coù möïc). ngöôøi ta caàn moät löôïng khaù lôùn boä nhôù. ta seõ thaáy söï khaùc bieät thöïc roõ raøng. Maùy Macintosh. Ñeå traùnh toán keùm veà maùy tính vaø maùy in. toác ñoä maùy in coù theå bò chaäm laïi neáu toác ñoä döõ lieäu khoâng ñaït ñöôïc yeâu caàu naøy. nhöng luùc naøy caàn phaûi chuyeån 1 megabyte aûnh trong 5 giaây. Cuõng coù theå thieát keá moät heä thoáng dung hoøa ñöôïc 2 thaùi cöïc naøy.

Nhieàu oáng phun ñöôïc xeáp thaønh haøng treân ñaàu in laøm taêng toác ñoä in. Kyù töï ñöôïc hình thaønh trong moät ma traän ñieåm. Vôùi 100000 gioït trong moät giaây (taàn soá 100 KHz) ta coù toác ñoä in laø 100 kyù töï trong 1 giaây. aùp suaát boït khí ñaåy gioït möïc ra khoûi loã phun. gioït möïc seõ ñaäp phaûi khuoân che vaø bò bôm laïi hoäp ñöng möïc. Ñieän trôû nung noùng möïc in vaø taïo neân boït khí. Nhieàu loã phun xeáp thaønh haøng hình thaønh ñaàu maùy in. Neáu khoâng ñöôïc tích ñieän. noù seõ bò ñaùnh leäch höôùng vaø phun thaúng leân giaáy in. moät kyù töï caàn coù khoaûng 1000 gioït möïc. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Neáu gioït möïc ñöôïc tích ñieän. Boït khí ñöôïc taïo baèng moät ñieän trôû ñoát raát nhoû. Möïc coù theå ñöôïc phun theo nguyeân taéc boït hôi (Bulbe Jet Printer).28: Nguyeân taéc hoaït ñoäng maùy in phun möïc Nguyeân taéc in döïa treân ñieän tích cuûa gioït möïc. khoâng caàn ñeán khuoân che. Boä dao ñoäng aùp ñieän chæ hoaït ñoäng khi caàn phun möïc. Ñeå coù chaát löôïng toát. Nguyeân taéc phun möïc lieân tuïc treân ngaøy nay haàu nhö ñöôïc thay theá baèng nguyeân taéc phun giaùn ñoaïn.Caán Truùc Maùy Tính -52- Hình 2.

Caáu hình cuûa caùc coång song song khoâng phöùc taïp nhö caùc coång noái tieáp. caùc coång coù caùc khaû naêng taêng cöôøng ECP (Enhanced Capabilities Port ) giuùp ta naâng toác ñoä truyeàn leân 2 MB/giaây thay vì laø 40–60 KB/giaây vaø 80 --300 KB/giaây ôû caùc coång song song 4 bit vaø 8 bit. Ngaét Ñia ï chæ bus coån g 8/16 bit LPT1 --3B IRQ7 ISA CH 8/16 bit LPT2 LPT 37 ÒRQ5 ISA 1 8H 8/16 bit LPT2 LPT 27 Khoân ISA 2 8H g coù Hình 2. EPP ñöôïc thieát keá cho Nguyeãn Höõu Loäc Khoa Vaät Lyù .Caán Truùc Maùy Tính -53- Hình 2. Baûng ôû hình 2.30:Caùc ñòa chæ I/O vaø caùc ngaét chuaån cuûa coång song song . v. Caû hai coång naøy ñeàu ñöôïc xaùc ñònh theo chuaån IEEE 1284 ( ñaây laø chuaån giao tieáp caùc thieát bò ngoaïi vi song song hai chieàu cho maùy tính caù nhaân. Khi caùc heä thoáng PS/2 xuaát hieän. CD–ROM vaø caû caùc modem. Tuy nhieân chuùng laïi khoâng ñöôïc hoã trôï trong caùc PC chuaån. Caùc coång EPP vaø ECP ñöôïc caùc coâng ty Microsoft vaø Hewlett Packard hôïp taùc phaùt trieån. Giao tieáp qua coång maùy in cho pheùp ta xuaát ñoàng thôøi 8 bit döõ lieäu ra maùy in neân toác ñoä truyeàn nhanh. maùy in ñöôïc gheùp vôùi PC qua coång song song (parallel port) hay coøn goïi laø coång maùy in (printer port) LPT.30 trình baøy caùc ñòa chæ I / O vaø caùc ngaét chuaån cho cuûa coång song song. Caùc PC coù nhöõng chip “superI/O ( SIO )“ coù theå hoå trôï EPP vaø ECP. Heä thoáng LPT chuaån LPT thay theá Hieän nay ôû coång song song khoâng chæ söû duïng ñeå gheùp noái vôùi maùy in maø coøn gheùp noái vôùi caùc thieát bò khaùc nhö caùc thieát bò löu tröõ . Caùc heä thoáng khaùc truyeàn döõ lieäu qua coång maùy in coù theå truyeàn moät laàn 4 bit (xuaát 8 bit song song vaø nhaän 4 bit song song) .. caùc cheá ñoä truyeàn döõ lieäu. ).29: Nguyeân taéc hoaït ñoäng maùy in phun boït hôi Hieän nay. IBM ñöa ra caùc coång song song 8 bit roài sau ñoù caùc coång song song 8 bit söû duïng kyõ thuaät truy xuaát tröïc tieáp boä nhôù DMA (Direct Memory Access). LAN adaptor. xaùc ñònh caùc tính chaát vaät lyù cuûa coång. Caùc coång song song taêng cöøông EPP (Enhanced Parallel Port ). Caùc IBM–PC ngay töø ban ñaàu ñaõ coù phaàn meàm heä xuaát nhaäp cô baûn BIOS (Basic Input Output System) cuõng nhö heä ñieàu haønh DOS hoã trôï cho 3 coång maùy in. caùc tieâu chuaån veà ñieän v. ôû caùc maùy tính caù nhaân. Ñieàu naøy xaûy ra do luùc ban ñaàu caùc IBM–PC khoâng quan taâm ñeán vaán ñeà nhaäp döõ lieäu qua coång maùy in vaø goïi caùc coång naøy laø coång 4 bit.

döõ lieäu ñöôïc ñaët saün saøng (Data Set Ready). Haàu heát chuaån RS–232–C ñònh nghóa 25 ñöôøng tín hieäu nhöng trong thöïc teá chæ coù moät soá ít ñöôïc söû duïng ( haàu heát bò boû qua khi thieát bò ñaàu cuoái ñöôïc noái tröïc tieáp vôùi maùy tính khoâng qua modem ). Khi muoán phaùt döõ lieäu.interface ). Trong thieát bò ñaàu cuoái. moät UART khaùc thu nhaän caùc bit vaø taùi taïo laïi toaøn boä kyù töï sau coù hieån thò leân maøn hình. 300. Döõ lieäu nhaäp töø baøn phím cuûa thieát bò ñaàu cuoái ñi qua moät boä chuyeån ñoåi song song ra noái tieáp trong thieát bò ñaàu cuoái. 6. Baát kyø thieát bò ñaàu cuoái naøo ñöôïc hoã trôï chuaån giao tieáp RS–232–C ñeàu coù theå keát noái vôùi moät maùy tính baát kyø cuõng ñöôïc hoã trôï chuaån giao tieáp naøy . Coù haøng chuïc coâng ty cheá taïo maùy tính vaø haøng traêm coâng ty cheá taïo caùc thieát bò ñaàu cuoái. caùc oå ñóa vaø caùc thieát bò löu tröõ döï phoøng trong khi ECP thieát keá cho caùc maùy in toác ñoä cao vaø coù söû duïng keânh DMA . Khi baät nguoàn thieát bò ñaàu cuoái hoaëc maùy tính. ñöôïc laäp leân 1 ñeå baùo cho modem bieát raèng ñang hoaït ñoäng. modem seõ ñöa tín hieäu xoaù ñeå phaùt CTS (Clear To Send ).Caán Truùc Maùy Tính -54- LAN adaptor. tín hieäu DTR. Caùc toác ñoä thöôøng söû duïng laø110. Neáu modem muoán caáp pheùp. thieát bò ñaàu cuoái hoaëc maùy tính ñöa ñöôøng tín hieäu yeâu caàu phaùt RTS (Request To Send ) leân 1 ñeå yeâu caàu cho pheùp. Thöïc teá UART laø moät boä ñoåi töø song song ra noái tieáp. leân 1 ñeå traû lôøi. caùc möùc ñieän aùp vaø yù nghóa cuûa töøng tín hieäu treân. vaø sau ñoù ñöôïc UART taäp hôïp laïi trong maùy tính . Ñeå thieát bò ñaàu cuoái baát kyø duøng ñöôïc vôùi baát kyø maùy tính naøo . Moãi chaân ñieàu khieån moät luoàng bit theo moät höôùng (one–way) ngöôïc nhau. leân 1 ñeå baùo söï hieän dieän. vì toaøn boä moät kyù töï (1 byte) ñöôïc ñöa ñeán UART theo kieåu song song. Ñeå truyeàn thoâng. 2400. maùy tính tìm naïp kyù töï töø boä nhôù chính vaø gôûi ñeán UART. Ngoõ ra noái tieáp chuaån RS–232–C . Caùc chaân 2 vaø 3 töông öùng vôùi chaân phaùt vaø nhaän döõ lieäu. 9600 vaø 19200 bit / sec . Ñeå hieån thò moät kyù töï. goïi laø RS–232–C (Reference Standard). döõ lieäu thieát bò ñaàu cuoái saün saøng (Data Terminal Ready). ngöôøi ta cheá ra moät chuaån giao tieáp cho pheùp keát noái giöõa maùy tính vaø thieát bò ñaàu cuoái (Standard computer–terminal. Töông töï. moãi maùy tính vaø thieát bò ñaàu cuoái ñeàu coù moät chip goïi laø thu phaùt khoâng ñoàng boä chung UART (Universal Asynchronous Receiver Transmitter ) cuõng nhö maïch logic truy xuaát bus. UART xuaát ra töøng bit moät ôû töøng thôøi ñieåm vôùi moät toác ñoä cho saün. Caùc thieát bò ñaàu cuoái theo chuaån RS–232–C coù moät boä keát noái chuaån 25 chaân (25–pin). modem laäp ñöôøng tín hieäu DSR. Chuaån RS–232–C ñònh nghóa kích thöôùc cô khí vaø hình daïng boä keát noái. 1200. sau ñoù UART dòch kyù töï ra treân caùp RS–232–C töøng bit moät. Nguyeãn Höõu Loäc Khoa Vaät Lyù .

ñeå kieåm tra vaø caùc chöùa naêng veà ñònh thì. Caùc baûng trong hình 2. Chaân 1 2 3 4 5 6 7 8 9 Tín CD RxD TxD DTR SG DSR RTS CTS RI Moâ taû Phaùt hieän soùng mang Nhaän döõ lieäu Phaùt döõ lieäu Döõ lieäu ñaàu cuoái saün Noái ñaát Döõ lieäu ñöôïc ñaët saün -55- hieäu I/O Nhaäp Nhaäp Xuaát Xuaát … Nhaäp Xuaát Nhaäp Nhaäp saøng saøng Yeâu caàu phaùt Xoaù ñeå phaùt Tín hieäu chæ baùo rung chuoâng Keát noái 9 chaân thaønh 25 chaân 9 chaân 1 2 3 4 5 6 7 8 9 25 chaân 8 3 2 20 7 6 4 5 22 Tín hieäu CD RxD TxD DTR SG DSR RTS CTS RI Hình 2.31 chæ roõ nhöõng chaân ra cuûa nhöõng noái noái tieáp 9 chaân vaø keát noái ñoåi 9 thaønh 25 chaân.Caán Truùc Maùy Tính Caùc chaân cuûa ñaàu noái coång noái tieáp 9 chaân. Nguyeãn Höõu Loäc Khoa Vaät Lyù .31 Caùc chaân ra cuaû ñaàu noái 9 chaân vaø keát noái ñoåi 9 chaân thaønh 25 chaân Caùc chaân coøn laïi ñöôïc duøng cho nhöõng traïng thaùi khaùc nhau.

Tuy nhieân caû hai ñeàu gioáng nhau ñoái vôùi haàu heát caùc phaàn meàm.Caán Truùc Maùy Tính -56- Chip 8250 UART söû duïng trong caùc maùy tính IBM PC chuaån ban ñaàu vaø hieän vaãn coøn söû duïng trong caùc board noái tieáp giaù thaønh thaáp. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Bus ISA ( industry standard architecture ) ban ñaàu laø bus 8–bit cuûa IBM PC cho caùc maùy PC chuaån vaø XT. Caùc PC AT 286 söû duïng chip 16450 UART. Chip 16550A UART söû duïng tröôùc tieân trong caùc heä thoáng PS/2. Hieän nay chip naøy söû duïng roäng raõi trong caùc IBM PC hoaëc trong caùc heä thoáng töông thích . Caùc board naøy cho pheùp heä thoáng thu thaäp vaø söû duïng döõ lieäu chung vôùi nhieàu thieát bò vôùi chæ moät khe môû roäng vaø moät ngaét.32 Caùc ñòa chæ coång vaø ngaét chuaån . chip naøy coù caùc chöùc naêng gioáng vaø coù chaân töông thích vôùi chip 16450. Chi tieát veà caùc loaïi bus seõ ñeà caäp trong chöông 3. ISA laø cô sôû cho maùy tính caù nhaân hieän ñaïi vaø laø kieán truùc ban ñaàu ñöôïc söû duïng troïng ñaïi ña soá caùc heä thoáng PC.32) Heä thoáng bus Taát caû Taát caû Bus ISA Bus ISA COMx COM1 COM2 COM3 COM4 Ñòa chæ coång 3F8H 2F8H 3E8H 2E8H IRQ IRQ4 IRQ3 IRQ4* IRQ3* Hình 2. chæ khaùc laø coù theâm vuøng ñeäm thu phaùt 16 byte trôï giuùp cho nhöõng truyeàn thoâng nhanh hôn vaø cho pheùp nhieàu keânh DMA truy xuaát. Chip UART laø thaønh phaàn chuû yeáu coång noái tieáp COM trong caùc IBM PC hieän nay. Heä thoáng bus ISA 8–bit coù 8 möùc ngaét trong khi heä thoáng bus ISA 16-bit coù 16 möùc ngaét . Khi moät coång noái tieáp ñöôïc caøi ñaët trong heä thoáng. chip naøy thích hôïp hôn ñoái vôùi caùc ñöôøng truyeàn toác ñoä cao so vôùi chip 8250. sau ñoù môû roäng thaønh 16 bit cho IBM PC AT. Hieän nay Windows 95 hoã trôï tôùi 128 coång noái tieáp. ta phaûi caáu hình coång ñeå söû duïng caùc ñòa chæ I/0 rieâng bieät ( ñòa chæ coång ) vaø caùc yeâu caàu ngaét IRQ ( interrupt request ) ( chi tieát veà ngaét ñöôïc trình baøy trong caùc chöông sau ). (* : Thöïc teá neân choïn caùc ngaét khaùc ). cho pheùp ta söû duïng nhöõng board nhieàu coång noái tieáp trong heä thoáng. Sau ñaây laø nhöõng ñòa chæ coång vaø caùc ngaét chuaån (hình 2.

veà maïch soá. Toaøn boä caùc khaùi nieäm treân thöôøng ñöôïc tìm thaáy trong caùc saùch vaø taøi lieäu veà kyõ thuaät soá. I. Maïch coäng moät töø nhieàu bit (multibit word) ñöôïc xaây döïng baèng caùch noái nhieàu maïch coäng toaøn phaàn 1 bit. do vaäy ta khoâng ñeà caäp laïi ôû ñaây. phuø hôïp vôùi caáp logic soá ñang nghieân cöùu. maïch giaûi maõ (decoder). Cuõng coù theå laäp trình cho moät daõy logic laäp trình ñöôïc PLA (Programmable Logical Array) ñeå coù caùc haøm ñaïi soá logic tuøy yù. Caùc maïch logic ñôn giaûn ñöôïc xaây döïng baèng caùch toå hôïp tröïc tieáp caùc coång rieâng reõ trong caùc chip coù ñoä tích hôïp thaáp SSI. NAND. PROM. NOR vaø NOT. Caùc boä nhôù RAM tónh SRAM (static RAM ) khoâng caàn laøm töôi (refresh) nhöng caùc boä nhôù RAM ñoäng DRAM (dynamic RAM) caàn phaûi laøm töôi theo chu kyø ñeå buø laïi söï roø ræ do caùc tuï ñieän kyù sinh treân chip gaây ra. Ñònh nghóa cuûa chuùng ta döïa treân söï ñoùng goùi (packaging). Caùc phaàn keá tieáp seõ ñöa ra caùc thí duï chi tieát cho caùc boä vi xöû lyù vaø caùc bus. vieäc söû duïng caùc PLA mang laïi hieäu quûa cao hôn nhieàu so vôùi vieäc söû duïng caùc chip SSI. Maïch coäng toaøn phaàn 1 bit (full adder) coù theå ñöôïc xaây döïng töø 2 maïch coäng baùn phaàn 1 bit (half adder). maëc duø moät soá CPU coù caáu truùc vaø coâng suaát tính toaùn cuûa moät mainframe nhoû. Khi caàn nhieàu haøm ñaïi soá logic.Caán Truùc Maùy Tính -57- CHÖÔNG 3: LÔÙP VAÄT LYÙ Caùc maùy tính ñöôïc xaây döïng töø nhöõng chip maïch tích hôïp chöùa caùc phaàn töû chuyeån maïch raát nhoû goïi laø cöûa (gate). maïch maõ hoùa (encoder). Vì caùc boä vi xöû lyù lieân quan raát chaët cheõ ñeán vieäc thieát keá caùc bus chuùng söû duïng. chuùng ta cuõng giôùi thieäu veà thieát keá bus trong phaàn naøy. maïch phaân keânh (demultiplexer). maïch dòch bit (shifter) vaø ALU. Nhöõng cöûa thöôøng duøng nhaát laø AND. 1. Caùc maïch logic phöùc taïp hôn ñöôïc xaây döïng töø nhöõng chip coù ñoä tích hôïp trung bình MSI chuaån nhö : maïch choïn keânh (multiplexer). Caùc chip vi xöû lyù: Chuùng ta seõ duøng thuaät ngöõ “boä vi xöû lyù” ñeå dieãn taû moät CPU baát kyø chöùa trong moät chip. Noäi dung chính cuûa chöông naøy ñeà caäp ñeán caùc vaán ñeà veà ñôn vò xöû lyù trung taâm CPU (central processing unit) vaø ñaëc bieät laø caùch moät chip CPU giao tieáp vôùi boä nhôù vaø caùc thieát bò ngoaïi vi. EPROM vaø EEPROM. Nhöõng boä nhôù ñöôïc söû duïng trong maùy tính laø RAM. tröôùc tieân chuùng ta xem xeùt moät soá khía caïnh chung cuûa caùc boä vi xöû lyù (microprocessor) töø goùc caïnh lôùp vaät lyù. CAÙC CHIP VI XÖÛ LYÙ VAØ CAÙC BUS Trong phaàn naøy. OR. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Pheùp toaùn soá hoïc cuûa maùy tính ñöôïc thöïc hieän baèng caùc maïch coäng. keå caû caùc chaân ra (pinout) (yù nghóa cuûa caùc tín hieäu treân caùc chaân khaùc nhau). ROM.

qua caùc chaân naøy. nghóa laø tín hieäu chuyeån traïng thaùi töø thuï ñoäng sang tích cöïc ñeå taïo ra moät taùc ñoäng. Khi moät tín hieäu ôû traïng thaùi thuï ñoäng. möùc ñieän aùp cao (+ 5 volt) cuûa tín hieäu seõ gaây ra moät taùc ñoäng. Ñeå traùnh nhaàm laãn. khoâng taïo ra moät taùc ñoäng naøo.Caán Truùc Maùy Tính -58- Chuùng ta seõ taäp trung vaøo caùc CPU chöùa trong moät chip ñôn vôùi lyù do söï giao tieáp cuûa caùc CPU naøy vôùi phaàn coøn laïi cuûa heä thoáng ñöôïc xaùc ñònh roõ. tuy ôû daïng hôi khaùc. Caùc chaân treân moät chip vi xöû lyù ñöôïc chia thaønh 3 loaïi chính : ñòa chæ. Treân moät soá chaân. Nhöõng chaân naøy ñöôïc noái ñeán caùc chaân töông töï treân caùc chip boä nhôù vaø caùc chip I/O thoâng qua moät taäp hôïp caùc ñöôøng song song goïi laø bus. Chuùng ta seõ ñi vaøo chi tieát caùch ñoïc vaø ghi ôû phaàn döôùi. döõ lieäu vaø ñieàu khieån. Sau ñoù boä vi xöû lyù xaùc laäp (chuyeån traïng thaùi töø thuï ñoäng sang tích cöïc) moät ñöôøng ñieàu khieån ñeå thoâng baùo cho boä nhôù raèng muoán ñoïc moät töø. chuùng ta seõ thoáng nhaát noùi raèng tín hieäu ñöôïc xaùc laäp (asserted) (hôn laø noùi tín hieäu chuyeån thaønh möùc cao hoaëc möùc thaáp). Ñeå tìm naïp moät leänh. taát caû thoâng tin cuûa chuùng vôùi theá giôùi beân ngoaøi ñeàu thöïc hieän ñöôïc. trong tröôøng hôïp naøy toaøn boä quaù trình ñöôïc laëp laïi cho moãi töø theâm vaøo. Moät chip vôùi m chaân ñòa chæ coù theå ñòa chæ hoùa Nguyeãn Höõu Loäc Khoa Vaät Lyù . Maëc duø taøi lieäu sau ñaây lieân quan coù theå ñeán caùc boä vi xöû lyù. Ñeán ñaây coù moät löu yù veà maët thuaät ngöõ. coøn write ñöôïc xaùc laäp ôû möùc thaáp. vaøo thôøi ñieåm naøy. moät soá khaùc nhaän tín hieäu vaøo töø beân ngoaøi vaø moät soá coù theå thöïc hieän ñöôïc caû 2 chöùc naêng naøy. Vì theá ñoái vôùi moät soá chaân. chuùng ta coù theå bieát ñöôïc baèng caùch naøo CPU coù theå taùc ñoäng qua laïi vôùi boä nhôù vaø caùc thieát bò I / O ôû caáp logic soá. chaân töông öùng hay tín hieäu laø khoâng xaùc laäp. Boä vi xöû lyù thaáy tín hieäu naøy seõ nhaän töø yeâu caàu vaø thöïc thi leänh. ñoù laø soá chaân ñòa chæ vaø soá chaân döõ lieäu. Treân moät soá chaân khaùc. Coù 2 thoâng soá chính ñeå xaùc ñònh hieäu suaát (performance) cuûa moät boä vi xöû lyù. Boä nhôù traû lôøi baèng caùch ñöa töø ñöôïc yeâu caàu (requested word) leân caùc chaân döõ lieäu cuûa boä vi xöû lyù vaø xaùc laäp moät tín hieäu cho bieát yeâu caàu ñaõ ñöôïc thöïc hieän. Khoâng coù caùch truyeàn thoâng tin naøo khaùc. Moät soá chaân xuaát caùc tín hieäu töø CPU. caùch thöùc caùc CPU giao tieáp vôùi caùc thieát bò I / O v. Ngöôïc vôøi xaùc laäp laø khoâng xaùc laäp (negated). teân caùc tín hieäu coù theâm moät gaïch ngang ôû treân. ñöôïc thieát laäp ôû möùc thaáp. Baèøng caùch hieåu roõ chöùc naêng cuûa töøng chaân. tröôùc tieân boä vi xöû lyù ñaët ñòa chæ boä nhôù cuûa leänh ñoù leân caùc chaân ñòa chæ. Leänh coù theå yeâu caàu ñoïc hoaëc ghi caùc töø döõ lieäu. möùc ñieän aùp cuûa tín hieäu taïo ra moät taùc ñoäng laïi laø möùc thaáp. Caùc chip vi xöû lyù tieâu bieåu coù khoaûng töø 40 ñeán 300 chaân. ñieàu quan troïng caàn quan taâm laø CPU truyeàn thoâng tin vôùi boä nhôù vaø caùc thieát bò I/O baèng caùch ñöa caùc tín hieäu ra vaø nhaän caùc tín hieäu vaøo treân caùc chaân.v… cuõng lieân quan ñeán caùc maùy tính mini (minicomputer) vaø trong phaïm vi naøo ñoù lieân quan ñeán caùc mainframe. Nhöõng chaân ñöôïc xaùc laäp ôû möùc thaáp. xaùc laäp coù nghóa laø ñöôïc thieát laäp ôû möùc cao vaø ñoái vôùi moät soá chaân khaùc. caùc yù töôûng cô baûn nhö caùch thöùc caùc CPU tham khaûo boä nhôù. Vì vaäy WRITE ñöôïc xaùc laäp ôû möùc cao.

24. Phaân xöû bus (bus arbitration). trong khi ñoù boä vi xöû lyù coù 32 chaân döõ lieäu thöïc hieän cuøng coâng vieäc ñoù chæ vôùi moät thao taùc. 32 vaø 64. Töông töï. caùc chaân ñieàu khieån coù theå ñöôïc nhoùm thaønh caùc loaïi chính nhö sau : Ñieàu khieån bus (bus control). Caùc chaân ñieàu khieån ñieàu hoøa doøng döõ lieäu vaø ñònh thì cho döõ lieäu ñeán hoaëc töø boä vi xöû lyù.Caán Truùc Maùy Tính -59- (address) ñeán 2m byte boä nhôù. Hình 3.1. Nhieàu thoâng tin chi tieát hôn seõ ñöôïc cung caáp khi em xeùt caùc chip cuûa Intel vaø Motorola sau naøy. Boä vi xöû lyù naøo cuõng coù chaân caáp nguoàn (thöôøng laø 5 volt hay thaáp hôn). chaân tieáp ñaát vaø chaân tín hieäu clock daïng xung vuoâng (ta goïi laø xung clock). Vaäy chip coù 32 chaân döõ lieäu seõ xöû lyù nhanh hôn nhieàu. Caùc tín hieäu khaùc. Caùc giaù trò thöôøng duøng cuûa m laø 16. cho bieát boä vi xöû lyù hoaëc muoán ñoïc boä nhôù hoaëc muoán ghi bhn hoaëc laøm moät ñieàu gì khaùc. 16. 32 vaø 36. Tuy vaäy. Haàu heát caùc chaân ñieàu khieån bus laø caùc ngoõ ra töø boä vi xöû lyù tôùi bus (vaäy thì chuùng laø caùc ngoõ vaøo ñoái vôùi caùc chip boä nhôù vaø caùc chip I/O . Chuùng ta seõ moâ taû toùm taét töøng loaïi trong caùc muïc döôùi ñaây. Traïng thaùi (status). sau ñoù chuyeån Nguyeãn Höõu Loäc Khoa Vaät Lyù .bit. coù theå ñoïc hoaëc ghi moät töø (word) n-bit vôùi moät thao taùc ñôn. nghóa laø ñònh ñòa chæ cho toái ña 2m byte boä nhôù. boä vi xöû lyù coù theå yeâu caàu moät thieát bò I/O khôûi ñoäng. 20. seõ maát 4 thao taùc (operation) ñeå ñoïc moät töø 32. Moät boä vi xöû lyù coù 8 chaân döõ lieäu. Caùc giaù trò thöôøng duøng cuûa n laø 8. moãi boä vi xöû lyù coøn coù moät soá chaân ñieàu khieån. Trong haàu heát caùc heä thoáng. nhöng bao giôø cuõng ñaét hôn. Baùo hieäu vôùi ñoàng xöû lyù (coprocessor signaling). moät chip vôùi n chaân döõ lieäu. Moät chip CPU toång quaùt söû duïng caùc nhoùm tín hieäu treân ñöôïc trình baøy trong hình 3. Ngoaøi caùc chaân ñòa chæ vaø döõ lieäu. Xöû lyù ngaét (interrupt).1: Caùc chaân ra logic cuûa 1 boä vi xöû lyù ñieån hình Caùc chaân xöû lyù ngaét laø caùc ngoõ vaøo töø thieát bò I/O tôùi boä vi xöû lyù. vaø coù caùc coâng duïng linh tinh khaùc. Caùc chaân khaùc coù coâng duïng thay ñoåi tuøy theo caùc chip vi xöû lyù khaùc nhau.

Nhöõng quy luaät nhö vaäy ñöôïc goïi laø nghi thöùc bus (bus protocol). nhaèm traùnh tröôøng hôïp hai thieát bò cuøng söû duïng bus ñoàng thôøi. Trong khi nhöõng nhaø thieát keá boä vi xöû lyù ñöôïc töï do söû duïng baát kyø loaïi bus naøo hoï muoán ôû beân trong chip. caùc boä vi xöû lyù coøn coù nhieàu chaân linh tinh khaùc. Vôùi muïc ñích phaân xöû bus. Ñeå boä vi xöû lyù vaø boä ñoàng xöû lyù thoâng tin vôùi nhau deã daøng. Nhieàu chip vi xöû lyù ñöôïc thieát keá ñeå hoaït ñoäng vôùi caùc boä ñoàng xöû lyù. Moät soá boä vi xöû lyù coù moät ngoõ ra duøng ñeå traû lôøi tín hieäu yeâu caàu ngaét. vôùi caùc ñaàu noái (connector) ñaët ôû nhöõng khoaûng caùch ñeàu nhau ñeå caém caùc board boä nhôù vaø caùc board I/O. Caùc bus cuûa maùy tính Moät bus laø moät nhoùm caùc ñöôøng daãn chung giöõa nhieàu thieát bò. trong moät chip vi xöû lyù cuõng coù nhieàu bus ñeå keát noái caùc thaønh phaàn beân trong. Moät soá chaân cung caáp hoaëc nhaän caùc thoâng tin traïng thaùi.2. Khi I/O ñaõ hoaøn taát coâng vieäc. Ngoaøi ra phaûi coù theâm caùc chæ tieâu kyõ thuaät veà ñieän vaø cô ñeå caùc board gaén theâm seõ ñaët vöøa trong khung chöùc card (card cage) vaø caùc ñaàu noái phaûi phuø hôïp vôùi caùc raõnh caém treân board chính. Moät thí duï phoå bieán laø bus heä thoáng (system bus ) hieän coù treân taát caû maùy vi tính. nhö minh hoïa trong hình 3. Trong taøi lieäu. ñeå coù theå noái caùc board ñöôïc thieát keá vôùi bus heä thoáng phaûi coù nhöng quy luaät xaùc ñònh roõ raøng veà caùch laøm vieäc cuûa bus. ngöôøi ta cung caáp nhöõng chaân ñaëc bieät ñeå taïo ra vaø chaáp nhaän nhöõng yeâu caàu khaùc nhau. Nguyeãn Höõu Loäc Khoa Vaät Lyù . 2. bao goàm töø 50 ñaán 100 ñöôøng ñoàng ñöôïc khaéc song song treân board chính. moät soá khaùc duøng cho vieäc reset maùy tính (laäp laïi traïng thaùi ban ñaàu cho maùy tính ) vaø soá chaân khaùc nöõa duøng ñeå ñaûm baûo söï töông thích vôùi caùc chip I/O cuõ. ñoâi khi bus ñöôïc veõ gioáng caùc muõi teân lôùn trong hình veõ naøy. Hôn nöõa. thí duï nhö kieåm tra xem coù loãi I/O naøo xaûy ra hay khoâng. haàu heát laø caùc chip daáu chaám ñoäng (floating – point). nhöng ñoâi khi laø chip ñoà hoïa (graphic) hoaëc laø caùc chip khaùc. caû veà tính vaät lyù vaø ñieän aùp. chip ñieàu khieån I/O xaùc laäp moät tín hieäu treân moät trong soá caùc chaân xöû lyù ngaét ñeå ngaét CPU vaø yeâu caàu CPU phuïc vuï thieát bò I/O. Tuy nhieân.Caán Truùc Maùy Tính -60- sang thöïc hieän moät coâng vieäc höõu ích khaùc trong khi caùc thieát bò I/O toác ñoä chaäm vaãn ñang thöïc hieän coâng vieäc cuûa chuùng. CPU cuõng ñöôïc xem nhö moät thieát bò. hoaëc vôùi caùc boä nhôù cuïc boä (local memory ). Ngoaøi nhöõng chaân tín hieäu naøy. Taát caû thieát bò noái vôùi bus ñeàu phaûi tuaân theo caùc quy luaät naøy. caùc bus cuõng ñöôïc daønh cho nhöõng muïc ñích ñaëc bieät nhö laø keát noái moät boä vi xöû lyù vôùi moät hoaëc nhieàu boä ñoàng xöû lyù. Caùc chaân phaân xöû bus ñöôïc caàn ñeán ñeå ñieàu hoøa löu löôïng thoâng tin treân bus.

Ñaùng tieác laø vieäc tieâu chuaån hoùa trong laõnh vöïc naøy döôøng nhö raát khoù coù theå xaûy ra khi ñaõ coù quaù nhieàu ñaàu tö cho nhöõng heä thoáng khoâng töông thích naøy. Thieát bò tích cöïc goïi laø thieát bò chuû bus hay thieát bò chuû (master). seõ ñöôïc ñeà caäp coù theå trong phaàn caùc thí duï veà bus. Vì lyù do naøy.Caán Truùc Maùy Tính -61- Hình 3. caùc bus cuûa IBM PC vaø PC AT (IBM PC and PC AT bus). CPU ñoùng vai troø moät thieát bò chuû vaø boä ñieàu khieån ñóa haønh ñoäng nhö moät thieát bò phuï thuoäc. Megabus (Honeywell). traùi laïi moät soá khaùc laø caùc thieát bò thuï ñoäng (passive) chôø caùc yeâu caàu. boä kích bus chuû yeáu laø moät maïch khuyeách ñaïi tín hieäu Nguyeãn Höõu Loäc Khoa Vaät Lyù . Khi CPU ra leänh boä ñieàu khieån ñóa ñoïc hoaëc ghi moät khoái döõ lieäu. boä ñieàu khieån ñóa trôû thaønh thieát bò chuû khi yeâu caàu boä nhôù nhaän caùc töø döõ lieäu ñoïc töø oå ñóa. Massbus (PDP-11. Omnibus (PDP-8). Baây giôø chuùng ta baét ñaàu nghieân cöùu veà caùch laøm vieäc cuûa bus. chuû yeáu laø caùc maùy tính cuûa IBM vaø töông thích söû duïng caùc chip vi xöû lyù cuûa Intel. Fastbus (vaät lyù naêng löôïng cao). Tuy nhieân.2 Heä thoáng maùy tính coù nhieàu bus Nhieàu bus ñaõ ñöôïc söû duïng phoå bieán trong theá giôùi maùy tính. ñaëc bieät neáu bus töông ñoái daøi hoaëc coù nhieàu thieát bò noái vôùi bus. haàu heát caùc thieát bò chuû ñeàu ñöôïc noái vôùi bus qua moät chip goïi laø boä kích bus (bus driver). SBI (VAX–11/780 ). Nubus (Macintosh II). Unibus (PDP-11). duøng chæ chung caùc thaønh phaàn caáu taïo neân moät heä thoáng maùy tính ) noái vôùi bus laø caùc thieát bò tích cöïc (active) coù theå khôûi ñoäng vieäc truyeàn bus. Multibus I (8086). Versabus (Motorola) vaø VME bus (680 x 0). S-100 bus (hobby computer). Caùc thaønh phaàn cuûa maùy tính thöôøng xuaát caùc tín hieäu nhò phaân coù doøng khoâng ñuû maïnh ñeå cung caáp cho bus. Multibus II (80386). VAX). thieát bò thuï ñoäng goïi laø thieát bò phuï thuoäc bus hay thieát bò phuï thuoäc (slave). Moät soá bus ñaõ vaø ñang söû duïng hieän nay treân caùc maùy tính caù nhaân. EISA bus (80386). Moät soá bus noåi tieáng nhö : Camac bus (vaät lyù haït nhaân). Qbus (LSI-11). Moät soá thieát bò (töø thieát bò ñöôïc dòch töø chöõ device. vaøo thôøi ñieåm sau. Microchannel (PS/2).

hoaëc laø thaønh phaàn coù caùc ngoõ ra cöïc thu hôû (open collector output) nhaèm ñaït ñöôïc cuøng moät hieäu quûa. Töông töï. döõ lieäu vaø ñieàu khieån. bus cuõng coù caùc ñöôøng ñòa chæ . Tín hieäu treân ñöôøng naøy laø moät soùng vuoâng coù taàn soá thöôøng naèm trong khoaûng 5 MHz vaø 100 MHz goïi laø xung ñoàng hoà. Thí duï: moät soá boä vi xöû lyù duøng 3 chaân tín hieäu ñeå maõ hoùa caùc thao taùc nhö ñoïc boä nhôù. ghi I/O hoaëc moät soá thao taùc khaùc. cho pheùp thaû noåi khoâng keát noái (disconnect) khi khoâng caàn ñeán. Loaïi bus kia. Ñeå bieát caùch laøm vieäc cuûa moät bus ñoàng boä. ñòa chæ. Treân haàu heát caùc bus. Giaû thieát raèng vieäc ñoïc moät byte töø boä nhôù maát 3 chu kyø dao ñoäng. khoâng caàn phaûi gioáng nhau giöõa taát caû caùc caëp thieát bò. Bus tieâu bieåu coù moät ñöôøng ñieàu khieån ñoïc boä nhôù. khoâng coù xung ñoàng hoà chuû. xöû lyù ngaét vaø xöû lyù loãi. xung ñoàng hoà coù taàn soá 4 MHz neân moät chu kyø dao ñoäng seõ daøi 250 ngiaây. Nhöõng vaán ñeà naøy aûnh höôûng nghieâm troïng ñeán toác ñoä vaø baêng thoâng cuûa bus. Gioáng nhö boä vi xöû lyù. toång coäng 750 ngiaây töø luùc baét ñaàu chu kyø T1 ñeán khi keát thuùc chu kyø T3. goïi laø chu kyø bus (bus cycle). döõ lieäu. Taát caû hoaït ñoäng treân bus. Bus ñoàng boä Caùc bus coù theå chia thaønh 2 loaïi rieâng bieät tuøy thuoäc vaøo phöông phaùp ñoàng boä cuûa chuùng. 3. yeâu caàu boä nhôù MREQ (memory request) vaø ñieàu khieån ñoïc RD (read) ñeàu ñöôïc theå hieän theo cuøng moät tyû leä thôøi gian. chuùng ta seõ nghieân cöùu kyõ chuùng trong phaàn sau. moät ñöôøng ñieàu khieån ñoïc I/O. Loaïi bus ñoàng boä (synchronous bus) coù moät ñöôøng ñöôïc caáp tín hieäu töø moät boä dao ñoäng duøng thaïch anh. keát quaû laø taát caû caùc tín hieäu ñöôïc OR vôùi nhau. cô cheá phaân xöû bus. Nguyeãn Höõu Loäc Khoa Vaät Lyù . moät ñöôøng ñieàu khieån ghi I/O v. ghi boä nhôù. Khi coù 2 hoaëc nhieàu thieát bò cuøng xaùc laäp caùc ngoõ ra ñoàng thôøi treân moät ñöôøng cöïc thu hôû. Trong thí duï naøy. moät ñöôøng ñieàu khieån ghi boä nhôù. bus khoâng ñoàng boä (asynchronous bus). haàu heát caùc thieát bò phuï thuoäc ñeàu ñöôïc noái tôùi bus qua moät boä thu bus (bus receiver). ñoïc I/O. Caùc chip giao tieáp bus naøy (bus interface chip) thöôøng laø thaønh phaàn coù ngoõ ra 3 traïng thaùi (tri-state output). Sau ñaây chuùng ta seõ laàn löôït khaûo saùt töøng loaïi bus naøy. Tuy nhieân khoâng nhaát thieán phaûi coù moät aùnh xaï 1-1 giöõa caùc tín hieäu cuûa boä vi xöû lyù vaø cuûa bus.Caán Truùc Maùy Tính -62- soá. Caùc ñöôøng xung ñoàng hoà.v… Moät chip giaûi maõ caàn coù giöõa CPU vaø moät bus nhö vaäy ñeå chuyeån ñoåi tín hieäu maõ hoùa 3 bit thaønh caùc tín hieäu rieâng bieät coù theå ñieàu khieån caùc ñöôøng bus. coù cöïc thu hôû. ta haõy khaûo saùt giaûn ñoà thôøi gian ôû hình 3.OR ). moät chip keát hôïp goïi laø boä thu phaùt bus (bus transceiver) ñöôïc duøng ñeán. Ta cuõng giaû thieát phaûi maát 10 ngiaây ñeå tín hieäu thay ñoåi töø möùc thaáp sang möùc cao hoaëc ngöôïc laïi.3 (a) laøm thí duï. Söï saép xeáp naøy goïi laø OR noái daây (wired. Chu kyø bus coù theå coù chieàu daøi baát kyø theo yeâu caàu. ñeàu chieám moät soá nguyeân chu kyø xung ñoàng hoà. moät soá ñöôøng ñöôïc thieát keá coù 3 traïng thaùi vaø moät soá khaùc. caàn ñaëc tính OR noái daây. Ñoái vôùi caùc thieát bò coù theå hoaït ñoäng ôû caû 2 vai troø chuû vaø phuï thuoäc. Caùc vaán ñeà chính trong vieäc thieát keá bus (ngoaøi soá ñöôøng ñòa chæ vaø ñöôøng döõ lieäu) laø ñoàng boä (clocking) bus.

Nguyeãn Höõu Loäc Khoa Vaät Lyù . boä nhôù chæ coù 250 + 250 + 125 – 110 – 50 = 465 ngiaây töø thôøi ñieåm ñòa chæ xuaát hieän cho ñeán khi boä nhôù phaûi xuaát döõ lieäu leân bus. CPU cuõng phaûi xuaát ñòa chæ cho toaùn haïng trong khoaûng thôøi gian 110 ngiaây keå töø ñieåm giöõa ôû caïnh leân cuûa xung clock T1. CPU ñoïc caùc ñöôøng döõ lieäu vaø caát giaù trò vaøo moät thanh ghi noäi. CPU ñaët ñòa chæ cuûa byte muoán ñoïc trong boä nhôù leân caùc ñöôøng ñòa chæ. CPU khoâng xaùc laäp caùc ñöôøng tín hieäu MREQ vaø RD . Tín hieäu MREQ cho bieát boä nhôù . Neáu caàn. Roõ raøng ngöôøi thieát keá maùy vi tính khoâng neân choïn moät chip boä nhôù coù thôøi gian thieát laäp ñòa chæ laø 75 ngiaây. boä nhôù xaùc laäp ñöôøng tín hieäu WAIT ( khoâng theå hieän treân hình veõ) tröôùc caïnh xuoáng cuûa xung clock T2 khi WAIT ñöôïc choát. Trong baûng ñaëc tính thôøi gian. Ngoaøi ra. TAD ≤ 110 ngiaây. Do coù nhieàu ñöôøng ñòa chæ. Keát hôïp caùc raøng buoäc treân TAD vaø TDS. moät chu kyø boä nhôù khaùc coù theå baét ñaàu ôû caïnh leân keá cuûa xung ñoàng hoà. thay vaøo ñoù laø 2 ñöôøng vaø chuùng caét cheùo nhau taïi thôøi ñieåm thay ñoåi ñòa chæ. Sau moät khoaûng thôøi gian sao cho caùc ñöôøng ñòa chæ oån ñònh giaù trò môùi. neân khoâng theå bieãu dieãn chuùng nhö moät ñöôøng ñôn trong hình veõ. khoâng phaûi thieát bò I/O. khoâng phaûi moät nhö xung clock. Khoâng coù gì xaûy ra trong suoát chu kyø T2 thôøi gian naøy daønh cho boä nhôù ñeå giaûi maõ ñòa chæ vaø ñöa döõ lieäu leân bus. Thí duï TAD laø khoaûng thôøi gian giöõa caïnh leân cuûa xung clock T1 vaø thôøi ñieåm caùc ñöôøng ñòa chæ ñaõ ñöôïc thieát laäp oån ñònh.Caán Truùc Maùy Tính -63- Chu kyø T1 ñöôïc baét ñaàu bôûi caïnh leân cuûa xung clock. Baèng caùch duøng quy öôùc nhö vaäy ta seõ thaáy khoâng coù noäi dung naøo cuûa caùc ñöôøng döõ lieäu coù yù nghóa cho ñeán khi vaøo chu kyø T3. Trong baûng ñaëc tính thôøi gian (timing specification) ôû hình 3. MREQ vaø RD ñöôïc xaùc laäp. 8 kyù hieäu trong giaûn ñoà thôøi gian (timing diagram) ñöôïc giaûi thích roõ hôn. Thôøi gian naøy seõ quan troïng neáu tín hieäu MREQ taùc ñoäng leân chaân choïn chip CS (chip select) cuûa chip boä nhôù bôûi vì moät soá boä nhôù yeâu caàu thôøi gian thieát laäp ñòa chæ phaûi xaûy ra tröôùc thôøi ñieåm choïn chip. ñang ñöôïc truy xuaát vaø tín hieäu RD giuùp phaân bieät vieäc ñoïc vôùi vieäc ghi.3(b). Baûng ñaëc tính thôøi gian cuõng yeâu caàu döõ lieäu phaûi coù giaù trò söû duïng treân caùc ñöôøng döõ lieäu ít nhaát 50 ngiaây tröôùc khi xuaát hieän caïnh xuoáng cuûa xung clock T3 ñeå döõ lieäu coù thôøi gian oån ñònh tröôùc khi CPU ñoïc. Taùc ñoäng naøy cheøn theâm caùc traïng thaùi chôø (wait state) vaøo chu kyø ñoïc boä nhôù cho tôùi khi boä nhôù hoaøn taát coâng vieäc vaø khoâng xaùc laäp ñöôøng tín hieäu WAIT . trong tröôøng hôïp xaáu nhaát. Moät khoaûng thôøi gian sau caïnh leân cuûa T1. Ñieàu naøy coù nghóa laø nhaø saûn xuaát chip phaûi ñaûm baûo raèng trong thôøi gian cuûa baát kyø chu kyø ñoïc toaùn haïng naøo. ÔÛ caïnh xuoáng cuûa chu kyø T3. Baûng ñaëc tính thôøi gian coøn ñaûm baûo ñòa chæ seõ ñöôïc thieát laäp ít nhaát 60 ngiaây tröôùc khi MREQ ñöôïc xaùc laäp. Neáu boä nhôù khoâng ñaùp öùng ñuû nhanh. Khi ñaõ ñoïc döõ lieäu. phaàn veät môø ngay tröôùc 2 ñöôøng cheùo caét nhau cho bieát giaù trò ôû phaàn veät môø khoâng quan troïng hoaëc khoâng coù giaù trò söû duïng.

Kyù Thoâng soá M M Ñ hieäu in ax ôn vò Trì hoaõn ñòa chæ 1 TA n 10 s D n TM Ñòa chæ oån ñònh tröôùc MREQ 6 0 s L TM Trì hoaõn MREQ töø caïnh xuoáng T1 8 n 5 s TR Trì hoaõn RD keå töø caïnh xuoáng cuûa T1 8 n 5 s L TD Thôøi gian thieát laäp döõ lieäu tröôùc caïnh 5 n xuoáng T3 0 s S TM Trì hoaõn MREQ keå töø caïnh xuoáng T3 8 n 5 s H n TR Trì hoaõn RD keå töø caïnh xuoáng cuûa T3 8 5 s H TD Thôøi gian löu giöõ döõ lieäu sau khi RD 0 n khoâng xaùc laäp s H Hình 3. TDH cho bieát phaûi duy trì döõ lieäu treân bus bao laâu sau khi RD khoâng coøn xaùc laäp. Cuoái cuøng. Trong tröôøng hôïp xaáu nhaát. caû 2 tín hieäu MREQ vaø RD seõ ñöôïc xaùc laäp trong khoaûng thôøi gian 85 ngiaây keå töø caïnh xuoáng cuûa xung clock T1.3 (b) : Baûng ñaëc tính thôøi gian Nguyeãn Höõu Loäc Khoa Vaät Lyù . chip boä nhôù seõ chæ coù 250 + 250 – 85 – 50 = 365 ngiaây sau khi MREQ vaø RD xaùc laäp ñeå ñöa döõ lieäu töø boä nhôù leân bus. döõ lieäu phaûi ñöôïc duy trì oån ñònh treân bus laâu hôn moät chuùt. tuy nhieân ñoái vôùi moät soá boä vi xöû lyù trong thöïc teá.Caán Truùc Maùy Tính -64- Ñòa chæ Döõ lieäu MREQ RD ø Hình 3. Söï raøng buoäc naøy ñöôïc coäng theâm vaøo söï raøng buoäc treân ñòa chæ. Boä nhôù coù theå loaïi boû döõ lieäu ra khoûi bus ngay khi RD khoâng coøn xaùc laäp.3 (a) : Giaûn ñoà thôøi gian ñoïc döõ lieäu treân bus ñoàng boä Vôùi söï raøng buoäc treân TM vaø TRL. Thôøi gian TMH vaø TRH cho bieát phaûi maát bao laâu ñeå MBREQ vaø RD khoâng coøn xaùc laäp sau khi döõ lieäu ñaõ ñöôïc ñoïc.

Nguyeãn Höõu Loäc Khoa Vaät Lyù . heä thoáng cuõ maëc duø vaãn chaïy ñöôïc vôùi heä thoáng môùi nhöng khoâng theå taêng toác ñoä leân ñöôïc vì nghi thöùc bus yeâu caàu boä nhôù xaùc laäp caùc ñöôøng döõ lieäu ngay tröôùc caïnh xuoáng cuûa chu kyø T3.Caán Truùc Maùy Tính -65- Hình 3. vieäc thu ngaén chu kyø xung ñoàng hoà coù theå daãn ñeán moät soá vaán ñeà kyõ thuaät. Ngoaøi caùc chu kyø ñoïc vaø ghi. Vôùi xung ñoàng hoà coù taàn soá 8 MHz. Do moïi coâng vieäc ñeàu ñöôïc thöïc hieän trong nhöõng khoaûng thôøi gian laø boäi soá cuûa chu kyø xung clock.33 Mbyte/giaây. aûnh höôûng naøy goïi laø leäch bus (bus skew). Ñieàu quan troïng laø thôøi gian cuûa moät chu kyø phaûi daøi so vôùi thôøi gian leäch bus ñeå ngaên caûn yù töôûng veà caùc khoaûng thôøi gian ñöôïc soá hoùa khoûi söï phaù vôõ trong ñoàng boä tín hieäu töông töï. Tuy nhieân. söï löïa choïn chuû yeáu laø ngaãu nhieân. Vaán ñeà naøy seõ ñöôïc ngöôøi thieát keá bus quyeát ñònh sao cho thuaän tieän. Trong thí duï treân. thôøi gian moät chu kyø giaûm moät nöûa vaø chuùng ta nhaän ñöôïc 2. 4. coù nhiaàu thôøi gian tôùi haïn hôn luoân luoân ñöôïc xaùc ñònh roõ. ñeå chuyeån moät byte phaûi maát 750 ngiaây vôùi baêng thoâng toái ña laø 1. Giaû söû moät vaøi naêm sau khi heä thoáng trong hình 3. ñaây laø moät thí duï toát veà caùch laøm vieäc cuûa moät bus ñoàng boä. moät khi chu kyø xung clock ñöôïc choïn. boä nhôù vaø thieát bò I/O ñaõ ñöôïc thieát keá cho chu kyø bus naøy.3 ñöôïc thieát keá.67 Mbyte/giaây. Bus khoâng ñoàng boä Maëc duø laøm vieäc vôùi caùc bus ñoàng boä seõ deã hôn do caùc khoaûn thôøi gian rôøi raïc cuûa chuùng.3(a) vaø 3. neáu moät CPU caù bieät vaø boä nhôù coù khaû naêng hoaøn taát vieäc chuyeån döõ lieäu trong 3. Thay vì chæ chuyeån ñuùng moät byte. thaät khoù coù theå naâng caáp trong töông lai. vieäc ñoïc moät khoái n byte chieám (n +2) chu kyø xung clock thay vì 3 n chu kyø. caùc CPU vaø boä nhôù môùi hoaït ñoäng vôùi thôøi gian moät chu kyø laø 100 ngiaây thay vì 250 ngiaây. chuùng vaãn phaûi keùo daøi tôùi 4 chu kyø bôûi vì nhöõng chu kyø bò phaân ñoaïn nhoû khoâng ñöôïc pheùp duøng trong bus ñoàng boä. Ngöôøi ta coù theå xem vaán ñeà naøy nhö phaàn cöùng töông ñöông vôùi söï choïn löïa cuûa ngöôøi laäp trình bieåu dieãn caùc khoái troáng cuûa ñóa trong motä baûn ñoà bit baèng caùc bit 0 hay caùc bit 1. Vaán ñeà cuoái cuøng laø caùc tín hieäu ñieàu khieån seõ ñöôïc xaùc laäp ôû möùc cao hay möùc thaáp. nhieàu bus ñoàng boä coøn hoå trôï vieäc chuyeån caùc khoái döõ lieäu. Trong thí duï naøy. Treân thöïc teá. nhöng cuõng coù moät soá vaán ñeà xaûy ra. Moät phöông phaùp khaùc ñeå gia taêng toác ñoä bus laø thu ngaén thôøi gian cuûa moät chu kyø. Caùc tín hieäu treân caùc ñöôøng khaùc nhau khoâng phaûi taát caû ñeàu coù cuøng toác ñoä.3(b) chæ laø moät phieân baûn raát ñôn giaûn veà caùc raøng buoäc thôøi gian thöïc. thieát bò phuï thuoäc xuaát töøng byte trong thôøi gian cuûa moãi chu kyø xung clock cho tôùi khi soá ñeám byte giaûm heát. Khi baét ñaàu ñoïc moät khoái.1 chu kyø. Teä hôn nöõa. Tuy nhieân. thieát bò chuû phaûi cho thieát bò phuï thuoäc bieát caàn chuyeån bao nhieâu byte döõ lieäu baèng caùch ñöa soá ñeám byte leân caùc ñöôøng döõ lieäu trong thôøi gian cuûa chu kyø T1.

trình baøy trong hình 3. ñôïi thieát bò chuû keá tieáp. seõ khoâng xaùc laäp SSYN vaø chuùng ta trôû laïi traïng thaùi ban ñaàu. moät soá coù toác ñoä nhanh vaø moät soá coù toác ñoä chaäm. tín hieäu RD vaø caùc tín hieäu caàn thieát khaùc. MSYN ñöôïc xaùc laäp Nguyeãn Höõu Loäc Khoa Vaät Lyù . Khi thöïc hieän xong. thieát bò naøy bieát raèng döõ lieäu ñaõ söû duïng ñöôïc. MSYN khoâng coøn xaùc laäp seõ laøm SSYN khoâng xaùc laäp. vôùi taát caû caùc tín hieäu khoâng coøn xaùc laäp. nhö trong hình 3. Khi thaáy tín hieäu naøy. Cuoái cuøng. vaø cuõng laøm cho thieát bò phuï thuoäc xaùc laäp SSYN . Khi thaáy tín hieäu MSYN khoâng coøn xaùc laäp. vì theá seõ choát döõ lieäu laïi. neáu bus coù moät taäp hôïp khoâng ñoàng nhaát caùc thieát bò. Giaûn ñoà thôøi gian cuûa caùc bus khoâng ñoàng boä söû duïng caùc muõi teân ñeå chæ nguyeân nhaân vaø keát quaû.4.5. RD vaø MSYN . bus khoâng coù xung clock chuû. RD vaø MSYN khoâng coøn xaùc laäp. Hình 3. tín hieäu MREQ . bus phaûi thích öùng vôùi caùc thieát bò coù toác ñoä chaäm nhaát vaø do ñoù caùc thieát bò coù toác ñoä nhanh khoâng theå ñöôïc söû duïng heát khaû naêng cuûa chuùng. Phaàn cô baûn bao goàm 4 söï kieän sau : 1.Caán Truùc Maùy Tính -66- Ñaët söï kieän naøy vaøo nhöõng tröôøng hôïp khaùc. thieát bò thuï ñoäng seõ thöïc hieän coâng vieäc baèng chính toác ñoä cuûa mình. khi thieát bò chuû ñaõ xaùc laäp caùc ñöôøng ñòa chæ. MREQ . sau ñoù khoâng xaùc laäp caùc ñöôøng ñòa chæ cuøng vôùi MREQ . keát thuùc thao taùc ñoïc döõ lieäu. Ngay khi tín hieäu chuû bus thaáy tín hieäu SSYN ñöôïc xaùc laäp. Xaùc laäp tín hieäu MSYN laøm cho caùc ñöôøng döõ lieäu ñöôïc xaùc laäp. Thay vì raøng buoäc moïi thöù vôùi xung clock. thieát bò phuï thuoäc seõ xaùc laäp ñöôøng tín hieäu ñoàng boä phuï thuoäc SSYN (slave synchronization ). Xaùc laäp SSYN laøm cho caùc ñöôøng ñòa chæ. Kyõ thuaät pha troän naøy coù theå giaûi quyeát baèng caùch duøng bus khoâng ñoàng boä. thieát bò phuï thuoäc bieát chu kyø ñaõ hoaøn taát.4 : Hoaït ñoäng cuûa moät bus khoâng ñoàng boä Taäp caùc tín hieäu phoái hôïp vôùi nhau theo caùch naøy goïi laø baét tay hoaøn toaøn (full handshake ). thieát bò chuû seõ xaùc laäp noät tín hieäu ñaëc bieät goïi laø tín hieäu ñoàng boä chuû MSYN ( master synchronibzation ).

Moät daïng ñôn giaûn caù bieät cuûa phaân xöû bus taäp trung ñöôïc trình baøy trong hình 3.Caán Truùc Maùy Tính 2. thieát bò ñöùng gaàn boä phaân xöû bus nhaát seõ kieåm tra xem coù phaûi ñaõ ñöa ra moät yeâu caàu bus hay khoâng. Trong sô ñoà naøy. chuùng vaãn khoâng laøm aûnh höôûng ñeán caëp thieát bò coù toác ñoä nhanh hôn nhieàu. Khi thaáy coù yeâu caàu bus. nhöng treân thöïc teá haàu heát caùc bus laø bus khoâng ñoàng boä. 5. Neáu ñuùng. Thuaän lôïi cuûa loaïi bus khoâng ñoàng boä ñeán ñaây ñaõ roõ. Roõ raøng phöông phaùp baét tay hoaøn toaøn coù thôøi gian ñoäc laäp. chuùng ta haõy xeùt cô cheá phaân xöû bus taäp trung. Phaân xöû bus Cho tôùi luùc naøy. Tröôùc tieân.5. Caâu traû lôøi laø caàn coù moät soá cô cheá phaân xöû bus naøo ñoù ñeå ngaên caûn söï tranh chaáp. 3. caùc chip I/O cuõng coù theå trôû thaønh caùc thieát bò chuû khi ñoïc vaø ghi boä nhôù. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Moät caâu hoûi ñöôïc ñaët ra : “ Ñieàu gì seõ baûy ra neáu coù hai hoaëc nhieàu thieát bò cuøng luùc muoán trôû thaønh thieát bò chuû ?”. Caùc boä ñoàng xöû lyù cuõng trôû thaønh thieát bò chuû khi caàn ñeán caùc toaùn haïng. -67- SSYN ñöôïc xaùc laäp ñeå ñaùp öùng theo MSYN MSYN khoâng xaùc laäp ñeå ñaùp öùng theo SSYN . CPU chæ phaûi xaùc laäp caùc tín hieäu vaø boä nhôù chæ phaûi töông taùc laïi. Thöïc ra. chuùng ta ñaõ ngaàm giaû thieát chæ coù moät thieát bò chuû laø CPU. vaø chuùng cuõng gaây ra caùc ngaét. Caùc cô cheá phaân xöû bus coù theå laø taäp trung hoaëc khoâng taäp trung. Moãi söï kieän ñöôïc gaây ra bôûi moät söï kieän tröôùc. thieát bò naøy seõ tieáp quaûn bus vaø khoâng truyeàn tín hieäu caáp bus xuoáng cho caùc thieát bò khaùc. nhöng trong caùc heä thoáng maùy tính mini ñoâi khi laø moät thieát bò rieâng. Neáu khoâng yeâu caàu bus. Neáu moät caëp thieát bò chuû – phuï thuoäc caù bieät coù toác ñoä chaäm. khoâng phaûi bôûi xung clock. SSYN khoâng xaùc laäp ñeå ñaùp öùng theo söï khoâng xaùc laäp cuûa MSYN . thieát bò naøy truyeàn tín hieäu caáp bus tôùi thieát bò keá tieáp treân ñöôøng daây vaø cöù nhö vaäy cho ñeán khi coù moät thieát bò naøo ñoù nhaän tín hieäu caáp bus vaø tieáp quaûn bus. Ñöôøng naøy ñöôïc noái qua taát caû caùc thieát bò I/O theo kieåu noái tieáp gioáng nhö chuoãi caùc boùng ñeøn treân caây giaùng sinh. Nhieàu boä vi xöû lyù thieát keá saün boä phaân xöû bus ngay trong chip CPU. Nguyeân nhaân laø do heä thoáng ñoàng boä deã laép ñaët hôn. Vôùi caùch keát noái naøy. Khoâng coù söï hoài tieáp ( nguyeân nhaân vaø haäu quaû ) vaø neáu caùc thaønh phaàn ñöôïc choïn hoaøn toaøn thích hôïp. khoâng coù caùch naøo boä phaân xöû bus bieát ñöôïc coù bao nhieâu thieát bò ñang yeâu caàu bus. 4. caùc thieát bò laøm vieäc seõ khoâng caàn baét tay. boä phaân xöû bus phaùt tín hieäu cho pheùp duøng bus baèng caùch xaùc laäp ñöôøng caáp bus ( bus grant line ). Khi thaáy tín hieäu caáp bus. boä phaân xöû bus ñôn seõ quyeát ñònh thieát bò naøo keá tieáp laø thieát bò chuû. Bus chöùa moät ñöôøng yeâu caàu thieát keá theo kieåu OR noái daây ñöôïc xaùc laäp bôûi moät hoaëc nhieàu thieát bò vaøo baát cöù luùc naøo. boä phaân xöû bus chæ bieát coù hay khoâng coù yeâu caàu söû duïng bus.

Thieát bò naøo ñöùng gaàn nhaát seõ coù öu tieân cao nhaát. 8 hoaëc 16 möùc). CPU cuõng phaûi daønh quyeàn söû duïng bus vaø coù öu tieân thaáp nhaát. 1 vaø 2 (caùc bus treân thöïc teá thöôøng coù 4. coøn caùc thieát bò I/O thöôøng xuyeân phaûi daønh bus nhanh vì neáu khoâng döõ lieäu seõ maát. Trong nhieàu heä thoáng. Trong soá caùc thieát bò coù cuøng möùc öu tieân. do vaäy vaøo cuoái moãi chu kyø. Sô ñoà naøy coù ñaëc tính laø caùc thieát bò ñöôïc caáp quyeàn öu tieân tuøy thuoäc vaøo caùc thieát bò ñoù ñöùng gaàn bao nhieâu ñoái vôùi boä phaân xöû bus.5: Boä phaân xöû bus taäp trung Neáu coù nhieàu möùc öu tieân ñöôïc yeâu caàu ñoàng thôøi. caùc ñöôøng yeâu caàu bus vaø caáp bus seõ ñoåi thaønh khoâng xaùc laäp. moät ñöôøng cho moãi thieát bò. Motorola vaø moät chip khaùc nöõa söû duïng heä thoáng naøy. Keát quaû laø caùc thieát bò khaùc coù theå yeâu caàu bus trong luùc thieát bò ñaàu tieân ñang söû duïng bus. Moãi thieát bò ñöôïc noái ñeán moät trong caùc möùc yeâu caàu bus. Nhöõng thieát bò caøng coù yeâu caàu caáp baùch veà thôøi gian seõ ñöôïc noái ñeán caùc möùc öu tieân caøng cao. Moãi möùc öu tieân coù moät ñöôøng yeâu caàu bus vaø moät ñöôøng caáp bus. Thieát keá naøy seõ giôùi haïn soá thieát bò laø 16. Thí duï VAX SBI coù 16 ñöôøng yeâu caàu bus coù öu tieân. Boä phaân xöû bus coù theå coù 2 möùc öu tieân. thieát bò naøo cuõng ñeàu bieát coù phaûi laø thieát bò coù öu tieân cao nhaát hay khoâng. chæ daønh ñöôïc bus khi khoâng coù thieát bò naøo khaùc chieám duïng. thieát bò naøy xaùc laäp ñöôøng yeâu caàu. Hình 3. vaø do ñoù coù ñöôïc pheùp duøng bus trong chu kyø keá tieáp hay Nguyeãn Höõu Loäc Khoa Vaät Lyù . phaàn tieáp theo sau cuûa phaân xöû bus coù theå baét ñaàu. Nhieàu boä phaân xöû bus coù theâm ñöôøng tín hieäu thöù 3 ñeå moät thieát bò xaùc laäp ñöôøng naøy khi nhaän caáp bus vaø chieám giöõ bus. coù theå baét ñaàu ngay khi ñöôøng traû lôøi ñoåi sang traïng thaùi thuï ñoäng. boä phaân xöû bus chæ phaùt tín hieäu caáp bus treân möùc öu tieân cao nhaát. Khi moät thieát bò muoán duøng bus. Caùc chip PDP-11. YÙù töôûng ôû ñaây laø CPU coù theå luùc naøo cuõng phaûi ñôïi. Sô ñoà naøy ñoøi hoûi theâm moät ñöôøng bus nöõa vaø nhieàu maïch logic cho töøng thieát bò. ngöôøi ta aùp duïng sô ñoà raøng buoäc chuoãi. Ñeå ñeán gaàn nhöõng öu tieân ngaàm ñònh döïa treân khoaûng caùch töø boä phaân xöû tôùi thieát bò.Caán Truùc Maùy Tính -68- Sô ñoà naøy ñöôïc goïi laø söï raøng buoäc chuoãi (daisy chaining ). Taïi thôøi ñieåm naøy. thieát bò chuû keá tieáp ñaõ ñöôïc choïn. Taát caû caùc thieát bò ñeàu kieåm tra taát caû caùc ñöôøng yeâu caàu bus. Khi söû duïng phöông phaùp phaân xöû bus khoâng taäp trung. ta khoâng caàn coù boä phaân xöû bus. Caùc ñóa quay ôû toác ñoä cao neân khoâng theå ñôïi. nhöng vieäc söû duïng caùc chu kyø bus trôû neân toát hôn. Vaøo luùc thao taùc chuyeån döõ lieäu hieän taïi hoaøn taát. nhieàu bus coù nhieàu möùc öu tieân. Ngay khi ñöôøng tín hieäu traû lôøi naøy (acknowledgement line) ñöôïc xaùc laäp.

Ñöôøng bus ñaàu tieân laø ñöôøng yeâu caàu bus keát noái theo kieåu OR noái daây. Ñeå chieám bus. Vì theá. Neáu töø nhôù naøy ñaõ laø 1. Thieát bò naøy trôû thaønh thieát bò chuû. Hình 3. Trong caùc heä thoáng ña xöû lyù. baét ñaàu truyeàn döõ lieäu. Khi khoâng coù thieát bò naøo yeâu caàu bus. 2. Taát caû thieát bò ñöôïc noái theo sô ñoà raøng buoäc chuoãi. vaø traùnh ñöôïc aûnh höôûng khi boä phaân xöû bus bò hö ôû tröôøng hôïp phaân xöû bus taäp trung. So vôùi phöông phaùp phaân xöû bus taäp trung. tröôùc tieân thieát bò kieåm tra xem bus coù raûnh hay khoâng vaø tín hieäu phaân xöû bus ñang nhaän ôû ngoõ vaøo IN coù ñöôïc xaùc laäp khoâng. Moät kieåu phaân xöû bus khoâng taäp trung khaùc ñöôïc duøng heä thoáng Multibus. ngoõ ra out cuûa thieát bò seõ khoâng ñöôïc xaùc laäp ñeå yeâu caàu moïi thieát bò khaùc ôû phaàn döôùi cuûa chuoãi khoâng xaùc laäp IN vaø OUT. Moät yù töôûng nhoû veà phaân xöû bus cho thaáy. vì theá giaù thaønh seõ reû hôn. sô ñoà naøy töông töï vôùi sô ñoà phaân xöû bus theo kieåu raøng buoäc chuoãi ban ñaàu. Sô ñoà trình baøy trong hình 3. chæ coù moät thieát bò coù ngoõ vaøo IN xaùc laäp vaø ngoõ ra OUT khoâng xaùc laäp. nhöng giaûm ñöôïc giaù thaønh do khoâng coù boä phaân xöû bus. 1. Neáu töø nhôù naøy laø 0. thieát bò ñaàu tieân beân traùi luoân ñöôïc truy xuaát bus lieân tuïc. boä xöû lyù ñoù phaûi ñôïi cho tôùi khi boä xöû lyù hieän ñang duøng caáu truùc döõ lieäu keát thuùc vaø laäp töø nhôù trôû veà 0. Boä xöû lyù A ñoïc töø x vaø thaáy baèng zero (chu kyø bus 0) Boä xöû lyù B ñoïc töø x vaø thaáy baèng zero (chu kyø bus 1) Nguyeãn Höõu Loäc Khoa Vaät Lyù . phöông phaùp naøy ñoøi hoûi nhieàu ñöôøng bus hôn.6 chæ söû duïng 3 ñöôøng vaø vaán ñeà coù bao nhieâu thieát bò hieän dieän khoâng quan troïng. Chuoãi caùc söï kieän sau ñaây trình baøy moät tình huoáng xaûy ra sai. neáu tín hieäu ôû ngoõ vaøo IN ñöôïc xaùc laäp. nhanh hôn. Heä Multibus cuõng ñöa ra phöông phaùp phaân xöû bus taäp trung. boä xöû lyù ñöôïc pheùp laäp töø leân 1 vaø söû duïng caáu truùc döõ lieäu ñoù. Tuy nhieân.Caán Truùc Maùy Tính -69- khoâng. Ñöôøng thöù 2 goïi laø BUSY ñöôïc xaùc laäp bôûi thieát bò chuû hieän taïi. Ñöôøng thö ba ñöôïc duøng ñeå phaân xöû bus. ngöôøi ta thöôøng duøng moät töø nhôù ñeå baûo veä caùc caáu truùc döõ lieäu duøng chung (shared data structure). Phöông phaùp sau cuøng veà phaân xöû bus coù lieân quan ñeán caùc thao taùc ña chu kyø (multiple cycle operation). vì theá ngöôøi thieát keá heä thoáng coù khaû naêng löïa choïn. Neáu tín hieäu ôû ngoõ vaøo IN khoâng xaùc laäp. xaùc laäp ñöôøng BUSY vaø ngoõ ra OUT.6 : Phaân xöû bus khoâng taäp trung cuûa Multibus. chæ khaùc laø khoâng coù boä phaân xöû bus. Khi söï tranh chaáp qua ñi. thieát bò khoâng theå trôû thaønh thieát bò chuû. Ñaàu cuûa chuoãi naøy ñöôïc giöõ ôû traïng thaùi xaùc laäp baèng caùch noái vôùi ñöôøng caáp ñieän 5 volt. ñöôøng phaân xöû bus ñaõ xaùc laäp ñöôïc truyeàn tôùi taát caû thieát bò.

Vieäc baùo hieäu ngaét seõ yeâu caàu bus. Giaûi phaùp cho vaán ñeà naøy laø theâm moät ñöôøng tín hieäu phuï thuoäc vaøo bus. Nguyeân taéc naøy cho pheùp moät CPU coù khaû naêng thöïc hieän nhieàu chu kyø bus maø khoâng coù söï ngaên caûn naøo. IBM PC. nhieàu CPU coù leänh ñoïc töø nhôù. Hieän nay coù nhieàu chip chuaån ñieàu khieån ngaét ñang söû duïng roäng raõi. Vì coù theå coù nhieàu thieát bò ñoàng thôøi taïo ra ngaét. goïi laø LOCK. phaù vôõ tình traïng raéc roái naøy. chuùng ta chæ môùi ñeà caäp ñeán nhöõng chu kyø bus thoâng thöôøng.7 Hình 3. Giaûi phaùp thöôøng duøng laø gaùn möùc öu tieân cho thieát bò vaø duøng boä phaân xöû taäp trung ñeå caáp öu tieân cho caùc thieát bò coù yeâu caàu veà thôøi gian tôùi haïn. keát quaû daãn ñeán söï roái loaïn. Khi CPU yeâu caàu thieát bò I/O thöïc hieän moät coâng vieäc. vôùi thieát bò chuû ñoïc döõ lieäu töø thieát bò thuï ñoäng hoaëc ghi döõ lieäu leân thieát bò thuï ñoäng. PS/2 vaø caùc maùy töông thích vôùi IBM PC söû duïng chip 8259A cuûa Intel. Ñieàu raéc roái laø moät leänh nhö vaäy caàn 2 chu kyø bus. neáu laø 0 seõ laäp leân 1. thaät khoù thieát keá moät heä thoáng ña xöû lyù laøm vieäc ñuùng. PC AT. Coù moät cô hoäi nhoû (nhöng khoâng phaûi laø khoâng coù) laø boä xöû lyù thöù 2 seõ leûn vaøo giöõa chu kyø ñoïc vaø chu kyø ghi. 6. Boä xöû lyù A ghi 1 vaøo töø x (chu kyø bus 2) Boä xöû lyù B ghi 1 vaøo töø x (chu kyø bus 3) -70- Neáu chuoãi söï kieän naøy xaûy ra. ñöôïc xaùc laäp khi baét ñaàu moät leänh nhö vaäy. neân vaán ñeà phaân xöû ôû ñaây cuõng gioáng nhö ñoái vôùi caùc chu kyø thoâng thöôøng. 2 boä xöû lyù seõ ñoàng thôøi nghó raèng coù söï truy xuaát loaïi tröø ñoái vôùi caáu truùc döõ lieäu duøng chung. khoâng coù boä xöû lyù naøo ñöôïc pheùp trôû thaønh thieát bò chuû cho tôùi khi LOCK trôû laïi traïng thaùi khoâng xaùc laäp. Xöû lyù ngaét Cho tôùi ñaây.Caán Truùc Maùy Tính 3.7: Söû duïng boä ñieàu khieån ngaét 8259A Coù theå noái tröïc tieáp 8 chip ñieàu khieån I/O (cuûa 8 thieát bò I/O) vôùi 8 ngoõ vaøo yeâu caàu ngaét Irx ( Interrupt Request ) cuûa 8259A. moâ taû trong hình 3. Ñeå traùnh tình traïng naøy. thöôøng chôø ñôïi moät ngaét khoâng coâng vieäc ñöôïc thöïc hieän. Moät coâng duïng quan troïng khaùc cuûa bus laø xöû lyù ngaét. Khi coù moät thieát bò muoán gaây ra moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . Khi LOCK xaùc laäp. moät ñeå ñoïc vaø moät ñeå ghi. CPU. Ñoái vôùi caùc bus khoâng tính chaát naøy. 4.

tröø phi ñang coù moät ngaét khaùc chôø giaûi quyeát. 8088 coù theå hoaït ñoäng ôû moät trong hai cheá ñoä : cheá ñoä toái thieåu (minimum mode) vaø cheá ñoä toái ña (maximum mode). Khi coù nhieàu hôn 8 thieát bò I/O. Baát cöù khi naøo coù theå. khaû naêng lôùn nhaát coù theå coù. 8259A coù moät vaøi chaân ñeå quaûn lyù söï noái taàng naøy. xem xeùt loaïi bus thoâng duïng duøng cho hoï vi xöû lyù naøy. 8259A coù moät soá thanh ghi noäi. Khi phaàn meàm ñaõ xöû lyù ngaét vaø saün saøng nhaän moät ngaét keá tieáp. IBM PC bus 1. thöïc teá laø cheá ñoä chæ coù moät boä xöû lyù. Trong luùc taäp trung nghieân cöùu vaøo ñeà taøi thieát keá bus. Phaàn cöùng cuûa CPU duøng soá naøy taïo chæ soá (index) trong moät baûng caùc con troû (interrupt vector). Baây giôø chuùng ta haõy xeùt moät soá thí duï veà caùc boä vi xöû lyù thöïc teá vaø caùc bus cuûa chuùng. CPU coù theå ñoïc vaø ghi döõ lieäu treân chuùng baèng caùch duøng caùc chu kyø bus thoâng thöôøng vaø caùc chaân ñieàu khieån ñoïc RD (read). Khi coù moät hoaëc nhieàu ngoõ vaøo IRx xaùc laäp. Beân trong chip naøy coù moät nhoùm ñöôøng döõ lieäu 16 bit. CPU gôûi moät xung trôû laïi 8259A treân chaân traû lôøi ngaét INTA (interrupt acknowledge). Cheá ñoä toái thieåu ñöôïc duøng trong caùc heä thoáng nhoû vôùi vaøi thieát bò ngoaïi vi. 8088 ñeàu thöïc hieän tìm naïp leänh tröôùc. chuùng ta ñaõ boû qua ñeå ñôn giaûn vaán ñeà.Caán Truùc Maùy Tính -71- ngaét. Caùc thanh ghi cuûa 8259A cuõng coù theå ñöôïc ghi ñeå ñöa 8259A vaøo moät trong caùc cheá ñoä hoaït ñoäng. Thí duï 8088 söû duïng Nguyeãn Höõu Loäc Khoa Vaät Lyù . phaàn giaûi thích treân cuõng ñuû cho chuùng ta hieåu nhöõng ñieàu cô baûn thieát yeáu veà caùch laøm vieäc cuûa bus vaø caùch töông taùc giöõa boä vi xöû lyù vôùi caùc bus. phaàn meàm seõ ghi moät maõ ñaëc bieät vaøo moät trong nhöõng thanh ghi cuûa 8259A. Khi CPU coù theå xöû lyù moät ngaét. ñieàu khieån ghi WR ( write ). cho pheùp keát noái vôùi 64 thieát bò I/O trong moät heä thoáng ngaét 2 taàng (two-stage). ñeå khi caàn ñeán leänh keá tieáp. THÍ DUÏ VEÀ CHIP VI XÖÛ LYÙ VAØ BUS Trong phaàn naøy chuùng ta khaûo saùt chi tieát boä vi xöû lyù thuoäc hoï Intel ôû caáp phaàn cöùng. thieát bò naøy xaùc laäp ñöôøng tín hieäu Irx töông öùng. 8259 seõ xaùc laäp ñöôøng tín hieäu ngaét INT (interrupt). Taïi thôøi ñieåm ñoù 8259 ñöôïc kyø voïng ñeå xaùc ñònh ngoõ vaøo taïo ra yeâu caàu ngaét baèng caùch xuaát soá cuûa ngoõ vaøo leân bus döõ lieäu. ñöôøng naøy tröïc tieáp ñieàu khieån chaân yeâu caàu ngaét treân CPU. leänh naøy ñaõ saün saøng ñöôïc söû duïng. choïn chip CS (chip select ) vaø ñòa chæ A0. Trong tröôøng hôïp naøy. ñeå tìm ñòa chæ cuûa thuû tuïc (procedure) vaø thöïc thi trình phuïc vuï ngaét. nhöng ôû moät thôøi ñieåm chæ ñoïc vaø ghi 8 bit vôùi boä nhôù (nghóa laø bus döõ lieäu cuûa heä thoáng chæ roäng 8 bit). taát caû 8 ngoõ vaøo Irx cuûa moät 8259A ñöôïc noái bbvôùi caùc ngoõ ra INT cuûa 8 boä xöû lyù ngaét 8259A nöõa. caùc 8259A ñöôïc noái theo kieåu cascade. II. Chip vi xöû lyù 8088 cuûa hoï Intel 8088 laø boä vi xöû lyù loaïi NMOS ñaët trong moät voû 40 chaân. laäp maët naï moät taäp caùc ngaét vaø caùc ñaëc tính khaùc. coù theå ñòa chæ hoùa toái ña 1 megabyte boä nhôù. 8088. maõ naøy seõ gaây cho 8259A khoâng xaùc laäp ñöôøng INT. vôùi 20 ñöôøng ñòa chæ.

Tình huoáng naøy ñöôïc theå hieän bôûi caùc kyù hieäu A16/ S3 ñeán A19/ S6 ( xem caùc chaân töø 35 ñeán 38 ). ÖÙng vôùi thôøi gian ñaàu cuûa chu kyø bus nhöõng chaân naøy ñöôïc goïi laø AD0-AD7. laàn naøy caùc tín hieäu logic ñöôïc theå hieän. 8088 xaùc laäp chaân LOCK ñeå baùo cho caùc thieát bò chuû khaùc khoâng ñöôïc söû duïng bus. beân caïnh coù ghi moät con soá cho bieát coù bao nhieâu ñöôøng tín hieäu treân ñoù (thí duï 20 cho A0-A19). chuùng ta seõ veõ caùc chip vôùi caùc chaân logic (logical pinout) hôn laø caùc chaân ra vaät lyù (Physical pinout) cuûa chuùng. Caùc chaân ra (pinout ) cuûa 8088 ôû cheá ñoä toái ña ñöôïc trình baøy trong hình 3. vì theá chuùng ta seõ khoâng baøn theâm veà cheá ñoä toái thieåu trong taøi lieäu naøy. RD khoâng nhaát thieát phaûi duøng trong cheá ñoä toái ña. do muoán giaûm soá chaân caàn thieát sao cho 8088 ñaët vöøa trong moät voû 40 chaân.8 (a). laø caùc chaân ñòa chæ luùc baét ñaàu moãi chu kyø bus vaø laø caùc chaân cho bieát thoâng tin traïng thaùi luùc keát thuùc. gaïch cheùo duøng ñeå phaân bieät hai tín hieäu khoâng lieân quan nhau nhöng coù chung moät chaân. Caùc chaân naøy ñöôïc goïi laø A0 –A19. Ngöôøi ta duøng nhöõng quy luaät chính xaùc ñeå chi phoái vieäc ñònh thì naøy. thöïc teá laø cheá ñoä coù nhieàu hôn moät boä xöû lyù. 8088 hoaït ñoäng ôû cheá ñoä toái ña. 2 teân vôùi daáu gaïch cheùo ñöôïc duøng ôû ñaây chæ laø 2 caùch khaùc nhau ñeå noùi veà cuøng moät söï vieäc. Chaân tín hieäu naøy thöôøng duøng chuû yeáu Nguyeãn Höõu Loäc Khoa Vaät Lyù . Trong caùc heä maùy tính caù nhaân. Chaân naøy ñöôïc xaùc laäp ôû möùc cao ñeå ñöa CPU vaøo cheá ñoä toái thieåu vaø ñöôïc xaùc laäp ôû möùc thaáp ñeå ñöa CPU vaøo cheá ñoä toái ña. vì theá khoâng bao giôø coù söï laàm laãn.8(c) trình baøy caùc loaïi bus.Caán Truùc Maùy Tính -72- trong moät boä ñieàu khieån maùy giaët seõ hoaït ñoäng ôû cheá ñoä toái thieåu. chuùng ñôn giaûn hôn trong cheá ñoä toái thieåu. khoâng quan taâm ñeán caùc tín hieäu naøy ñöôïc ñaët treân chaân naøo. YÙ nghóa cuûa caùc chaân trong 2 cheá ñoä khaùc nhau. RD cho bieát CPU ñang ôû chu kyø ñoïc boä nhôù. caàn coù theâm 8 chaân cho bus döõ lieäu. Tuy vieäc duøng kyù hieäu naøy deã gaây laàm laãn. khoâng döïa vaøo chaân naøo ñöôïc söû duïng. Ñeå traùnh toái ña söï nhaàm laãn naøy. 8088 duøng 6 chaân ñeå ñieàu khieån bus. Caùc chaân töø 35 ñeán 38 cuõng ñöôïc gheùp. do bôûi caùc thoâng tin gioáng nhö vaäy. Caùc chaân traïng thaùi S0 − S2 (Status) xaùc ñònh laïi chu kyø bus maø 8088 muoán söû duïng. Baûng lieät keâ trong hình 3. Vì 8088 truyeàn döõ lieäu 8 bit ôû moät thôøi ñieåm. nhöng ñaây laø caùch ñaët teân cuûa Intel. ôû ñaây chuùng ta theå hieän A0-A19 rieâng vôùi D0-D7. laø caùc chaân ñòa chæ. Cuoái cuøng vò trí chuùng ta choïn cho moãi tín hieäu trong hình veõ. Chaân 33 ñöôïc goïi laø MN / MX (minimum / maximum). Trong hình 3. Thí duï. bôûi vì chuùng khoâng lieân quan nhau veà tính logic. nhöng khoâng bieåu thò hai tín hieäu Mn vaø MX . coù theå xuaát phaùt töø caùc tín hieäu S0-S2 nhöng ñoâi khi laïi raát thuaän tieän. Tín hieäu naøy caàn duøng ñeå daønh ñoäc quyeàn truy xuaát tôùi boä nhôù trong moät soá leänh quyeát ñònh cuûa CPU yeâu caàu nhieàu chu kyø bus. Thöïc teá vieäc ñeà caäp ñeán moät soá chaân duøng chung khoâng caàn thieát cho söï hieåu bieát veà caùch laøm vieäc cuûa chip.8(b) ta laïi thaáy 8088. thay vaøo ñoù caùc tín hieäu lieân quan vôùi nhau ñöôïc nhoùm laïi ñeå tieän cho vieäc giaûi thích. 20 trong 40 chaân giöõ ñòa chæ boä nhôù hoaëc I/O maø 8088 seõ ñoïc hoaëc ghi. Moät ñöôøng cheùo ngaén. Tuy nhieân. ôû thôøi gian sau cuûa chu kyø bus chuùng laø caùc chaân döõ lieäu. caùc ñöôøng döõ lieäu D0 – D7 ñöôïc gheùp treân cuøng chaân vôùi A0-A7.

boä nhôù phaûi ñaët tín hieäu READY ôû traïng thaùi khoâng xaùc laäp tröôùc chu kyø xung clock thöù 4. hoaëc moät soá vaán ñeà quan troïng khaùc khoâng theå ñôïi.Caán Truùc Maùy Tính -73- trong caùc heä thoáng ña xöû lyù. Bình thöôøng ñöôøng INTR ñöôïc caùc thieát bò I/O söû duïng. vaø giöõ ôû traïng thaùi naøy cho ñeán byte yeâu caàu ñöôïc ñöa leân bus. traùi laïi ñöôøng NMI ñöôïc duøng ñeå chæ ra caùc loãi kieåm tra chaún leõ cuûa boä nhôù. Khi 8088 yeâu caàu moät byte töø boä nhôù. coù theå duøng 8088 vôùi caùc boä nhôù coù toác ñoä nhanh hay chaäm. Söï khaùc nhau giöõa 2 tín hieäu laø phaàn meàm coù theå taïm thôøi che (voâ hieäu hoùa) loaïi ngaét che ñöôïc. Tuy nhieân. Neáu boä nhôù thoûa maõn yeâu caàu naøy boä nhôù xaùc laäp ñöôøng READY trong luùc ñöa byte döõ lieäu yeâu caàu leân bus döõ lieäu. vaø chæ coù vaäy.maskable interrupt) ñöôïc duøng ñeå ngaét CPU. nhöng phaûi ñôïi cho tôùi khi phaàn meàm cho pheùp ngaét trôû laïi. Hình 3. neáu boä nhôù coù toác ñoä quaù chaäm. CPU muoán boä nhôù xuaát döõ lieäu ra trong 4 chu kyø xung clock. Ngaét bò che (masked interrupt) khoâng bò maát. ñaây laø traïng thaùi ñôïi.8 : (a) Caùc chaân ra vaät lyù cuûa 8088 (b) Caùc chaân ra logic cuûa 8088 (c) Caùc loaïi chu kyø bus cuûa 8088 Caùc tín hieäu ngaét che ñöôïc INTR (maskable interrupt) vaø ngaét khoâng che ñöôïc NMI (non . Khoâng gioáng 5 tín hieäu ñieàu khieån bus khaùc READY laø moät ngoõ vaøo (input). Nguyeãn Höõu Loäc Khoa Vaät Lyù . Baèng phöông phaùp naøy.

Nguyeãn Höõu Loäc Khoa Vaät Lyù . 2. Tín hieäu naøy duøng ñeå thieát laäp laïi traïng thaùi cho CPU. giöõa 8088 vaø chip ñoàng xöû lyù daáu chaám ñoäng (floating point coprocessor) 8087. Bus coù 62 ñöôøng lieät keâ trong hình 3. boä ñoàng xöû lyù trôû thaønh thieát bò chuû truy xuaát boä nhôù . thí duï. 8088 seõ khôûi ñoäng 8087 ( chip ñoàng xöû lyù daáu chaám ñoäng ) song song vôùi boä ñoàng xöû lyù. Tab coù 31 chaân raûnh maï vaøng ôû moãi maët taïo tieáp xuùc toát veà ñieän vôùi ñaàu noái. Tín hieäu TEST cho pheùp 8088 kieåm tra traïng thaùi cuûa boä ñoàng xaùc laäp. coät kyù hieäu In laø caùc tín hieäu vaøo töø bus tôùi board chính. Chuùng ta ñaõ baøn veà tín hieäu MN / MX .9. Moãi card coù moät baûng chaân (tab) treân card ñaët vöøa vaøo khe môû roäng. vaø coät kyù hieäu Out laø caùc tín hieäu ñöôïc taïo ra treân board chính vaø xuaát leân bus. 8088 coù theå kieåm tra xem boä ñoàng xöû lyù ñaõ thöïc hieän chöa. IBM PC bus ñaõ trôû thaønh bus chuaån toàn taïi treân caùc heä thoáng döïa treân 8088 bôûi vì gaàn nhö taát caû caùc maùy tính töông thích vôùi PC ñeàu söû duïng bus naøy ñeå cho pheùp caùc board I/O keát noái vaøo heä thoáng cuûa chuùng.Caán Truùc Maùy Tính -74- Hai ñöôøng yeâu caàu bus vaø caáp bus RQ / RTx (request/grant) ñöôïc duøng ñeå phaân xöû bus. Söï kieåm tra naøy caàn thieát bôûi vì khi gaëp moät leänh daáu chaám ñoäng. Caùc tín hieäu S3-S6 vaø QSx chöùa thoâng tin veà traïng thaùi noäi cuûa CPU. Khi 8088 caàn keát quaû cuûa pheùp toaùn daáu chaám ñoäng. Söû duïng 2 ñöôøng naøy boä ñoàng xöû lyù coù theå yeâu caàu 8088 thaû noåi taát caû caùc bus ( nghóa laø 8088 töï khoâng keát noái vôùi bus veà maët ñieän ). IBM PC bus laø moät thí duï toát veà moät bus söû duïng treân caùc heä thoáng maùy tính daân duïng giaù thaønh thaáp. IBM goïi bus laø keânh I/O (I/O channel). thí duï. Theo taøi lieäu. CPU ñöôïc ñaët ôû traïng thaùi ban ñaàu. IBM PC bus laø neàn taûng cuûa IBM PC AT bus cuõng nhö caùc bus khaùc. Ngöôøi ta cuõng khoâng roõ taïi sao nhaø saûn xuaát cung caáp nhöõng tín hieäu naøy. khi ngöôøi söû duïng aán nuùt reset treân baøn ñieàu khieån. vaäy chæ coøn tín hieäu RESET. 8 ñöôøng döõ lieäu vaø ñöôïc söû duïng roäng raõi trong caùc heä thoáng döïa treân 8088. neáu chöa 8088 phaûi ñôïi. coù khoaûng 6 ñaàu noái (connector) hay coøn goïi laø caùc khe môû roäng (extension slot) ñaët caùch nhau 3/4 inch ñeå gaén caùc card vaøo. chuùng thöôøng khoâng ñöôïc söû duïng. Bus coù 20 ñöôøng ñòa chæ. Bus ñöôïc khaéc treân board chính. Trong hình naøy. Sau khi ñöôïc thieát laäp laïi. Haàu heát caùc maùy tính töông thích vôùi PC ñeàu söû duïng bus naøy. Trong thöïc teá. tröø khi ñöôøng tín hieäu LOCK hieän ñang ñöôïc xaùc laäp. Trong phaàn naøy chuùng ta seõ xem xeùt kyõ IBM PC bus. Bình thöôøng 8088 seõ caáp bus cho baát kyø yeâu caàu bus naøo nhö vaäy vaøo cuoái chu kyø bus hieän taïi. nhöng khoâng coù ai khaùc goïi nhö vaäy. Thí duï veà bus Bus laø moät chaát keo ñeå noái caùc heä thoáng maùy tính vôùi nhau. Ngöôøi ta coù theå duøng 2 ñöôøng naøy ñeå ñieàu khieån 2 boä ñoàng xöû lyù. Chuùng ta chæ ñeà caäp ñeán vì coù 2 trong soá caùc tín hieäu cuûa bus duøng teân naøy.

31818MHz) Tín hieäu ñoàng hoàø 210 ns (4. (Ban ñaàu IBM nghó raèng ngöôøi tieâu thuï muoán duøng nhöõng maùy thu hình maøu laøm thieát bò hieån thò ñeå tieát kieäm chi phí khi mua moät maøn hình maùy tính (monitor). nhöng vì ñaõ choïn löïa neân IBM vaãn caøi taàn soá naøy vaøo maùy tính).77 MHz) Khôûi ñoäng CPU 20 ñöôøng ñòa chæ 8 ñöôøng döõ lieäu Cho pheùp choát ñòa chæ Ñoïc boä nhôù Vieát boä nhôù Ñoïc vaøo/ra Vieát vaøo/ra Cho pheùp ñòa chæ (CPU thaû noåi bus) Kieåm tra keânh vaøo/ra Keânh vaøo/ra saün saøng Yeâu caàu ngaét Yeâu caàu DMA X X Traû lôøi DMA Ñeám +5V. +12V Ñaát Khoâng duøng treân PC X CHK RDY IRQ7 X X X X X IRQ2- DRQ1DRQ3 DACK0DACK3 T/C Power GND Reserve d Hình 3. Duø khoâng coù ai laøm nhö vaäy. Tín hieäu 14. Tín hieäu OSC CLK RESET A0-A19 D0-D7 ALE MEMR MEMW IOR IOW AEN IO CH IO CH Ñöôøng 1 1 1 20 8 1 1 1 1 1 1 1 1 6 3 4 1 5 3 1 Vaøo Ra X X X X X X X X X X Moâ taû Tín hieäu ñoàng hoà 70ns (14. thöïc söï laøm vieäc Nguyeãn Höõu Loäc Khoa Vaät Lyù .Caán Truùc Maùy Tính -75- Caùc maùy IBM PC ban ñaàu (cuõng nhö nhöõng maùy töông thích) coù moät boä dao ñoäng thaïch anh taïo xung clock taàn soá 14.31818 MHz. Taàn soá naøy khoâng ñöôïc choïn tuøy yù maø do yeâu caàu taïo ra tín hieäu burst maøu (color burst) söû duïng trong caùc heä thoáng truyeàn hình maøu ôû Baéc Myõ vaø Nhaät.77 MHz.9 : Caùc tín hieäu treân IBM PC bus Taàn soá cuûa tín hieäu OSC quaù cao ñoái vôùi 8088 (taàn soá hoaït ñoäng toái ña cuûa 8088 laø 5 MHz) neân ta phaûi chia taàn soá OSC cho 3 ñeå coù tín hieäu 4.31818 MHz hieän dieän treân ñöôøng tín hieäu dao ñoäng OSC (oscillator) cuûa bus.

Caán Truùc Maùy Tính -76- nhö moät xung clock chuû (master clock) ñeå quyeát ñònh thôøi gian cuûa moät chu kyø bus. caùc maùy naøy coù tín hieäu CLK taàn soá cao hôn. Hình 3. Vieäc chia taàn soá cuûa boä dao ñoäng thaïch anh cho 3 ñöôïc thöïc hieän bôûi moät chip taïo xung clock 8284A cuûa Intel.77 MHz cuõng ôû treân bus vaø ñöôïc goïi laø CLK.Moät soá maùt töông tbhích vôùi PC chaïy ôû taàn soá 8 MHz söû duïng phieân baûn nhanh hôn cuûa chip 8088.3µm vôùi hôn 200 trieäu transistor. Tín hieäu taàn soá 4. Chæ caàn moät trong soá phaàn töû ñoù coù vaán ñeà thì caû chip khoâng theå hoaït ñoäng ñöôïc Nguyeãn Höõu Loäc Khoa Vaät Lyù . coù möùc thaáp trong 2/3 vaø möùc cao trong 1/3 chu kyø tín hieäu. Xu theá ngaøy nay laø phaûi taïo ra caùc chip nhôù vöøa coù dung löôïng lôùn vôùi kích thöôùc nhoû vaø phaûi coù toác ñoä cao vôùi giaù thaønh thaáp. Boä nhôù Boä nhôù baùn daãn. Chuùng ñöôïc cheá taïo nhö nhöõng chip rieâng bieät.10:Sô ñoà ñôn giaûn bus PC chuaån söû duïng vôùi 8088 III. caàn phaûi hieåu khoâng chæ 8088 maø coøn phaûi bieát moät soá chip hoå trôï cho 8088 vaø caùch söû duïng chuùng. khoâng ñoái xöùng nhö tín hieäu OSC. Trong khi caùc chip nhôù thoâng thöôøng coù kích thöôùc caáu truùc ñieån hình côõ 1µm thì caùc chip nhôù 64MB giaûm tôùi 0. baét buoäc CPU vaø caùc thieát bò I/O töï khôûi ñoäng laïi. 8284A cuõng taïo ra tín hieäu RESET treân bus. nhôø tính töông thích veà kích thöôùc vaø möùc ñoä logic. ñeå nhaän bieát nhieàu ñöôøng khaùc cuûa bus. IBM PC bus cuõng coù 20 ñöôøng ñòa chæ vaø 8 ñöôøng döõ lieäu ñeå bus ñöôïc söû duïng vôùi 8088. maïch ñieän beân ngoaøi gôûi moät tín hieäu tôùi 8284A ñeå xaùc laäp RESET. toác ñoä truy caäp cao. Ñeå thieát laäp laïi traïng thaùi ban ñaàu cho CPU. Tuy nhieân. tuï ñieän vaø ñieän trôû phaûi cuøng hoaït ñoäng chính xaùc vôùi toác ñoä cao treân cuøng moät chip ñoù. naêng löôïng tieâu thuï thaáp neân ñöôïc thieát keá laøm boä nhôù chính.

Phaân loaïi boä nhôù baùn daãn -77- Chæ caàn döïa treân thôøi gian vieát vaø caùch vieát. Boä nhôù coù noäi dung ghi saün moät laàn khi cheá taïo goïi laø boä nhôù coá ñònh vaø ñöôïc kyù hieäu la øROM (Read Only Memory). Nhöõng chip nhôù ñöôïc thieát keá sao cho coù ñaày ñuû moät soá chöùc naêng cuûa moät boä nhôù: Moät ma traän nhôù goàm caùc oâ nhôù. thoâng tin seõ bò maát ñi khi nguoàn ñieän nuoâi bò caét. Giöõa ROM vaø RAM coù moät lôùp caùc boä nhôù ñöôïc goïi laøEPROM (Erasable Programmable ROM ) coù theå xoaù ñöôïc baèng tia cöïc tím vaø ghi laïi ñöôïc. moãi oâ nhôù öùng vôùi moät bit nhôù. Do vaäy caùc chöông trình duøng cho vieäc khôûi ñoäng PC nhö boot vaøBIOS phaûi naïp treân caùc boä nhôù ROM. Caùc loaïi naøy coøn ñöôc goïi laøboä nhôù nöûa coá ñònh. Maïch logic giaûi maõ ñòa chæ oâ nhôù. boä nhôù nöûa coá ñònh vaøboä nhôù ñoïc/vieát. caùc bit coù theå ghi baèng thieát bò ghi cuûa ngöôøi söû duïng trong moät laàn (Programmable ROM).Caán Truùc Maùy Tính 1. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caùc boä nhô ùDRAM thöôøng thoûa maõn nhöõng yeâu caàu khi caàn boä nhôù coù dung löôïng lôùn: trong khi ñoù khi caàn coù toác ñoä truy xuaát lôùn thì laïi phaûi duøng caùc boä nhôù SDRAM vôùi giaù thaønh ñaéc hôn. PROM laø moät daïng khaùc. neáu khoâng noäi dung seõ maát theo söï roø ñieän tích treân tuï. Boä nhôù coù theå ñoïc/vieát nhieàu laàn goïi laø RAM (Random Access Memory) goàm coù 2 loaïi:boä nhôù ñoïc/vieát tónh SRAM (Static RAM) thöôøng ñöôïc xaây döïng treân caùc maïch ñieän töû flip-flop vaøboä nhôù ñoïc/vieát ñoäng DRAM (Dynamic RAM) ñöôïc xaây döïng treân cô sôû nhôù caùc ñieän tích ôû tuï ñieän. Toå chöùc boä nhôù: Boä nhôù thöôøng ñöôïc toå chöùc goàm nhieàu vi maïch nhôù ñöôïc gheùp laïi ñeå coù ñoä daøi töø vaø toång soá töø caàn thieát. Nhöng caû hai loaïi naøy coù nhöôïc ñieåm laø thuoäc loaïi bay hôi (volatile). boä nhôù naøy phaûi ñöôïc hoài phuïc noäi dung ñeàu ñaën. coù theå chia thaønh boä nhôù coá ñònh.11: Phaân loaïi boä nhôù baùn daãn 2. Sau khi ñaõ vieát (baèng maët naï) töø nhaø maùy thì ROM loaïi naøy khoâng vieát laïi ñöôc nöõa. Hình 3. EEPROM (Electric Earasable PROM) coù theå xoaù ñöôïc baèng doøng ñieän.

Caán Truùc Maùy Tính
Maïch logic cho pheùp ñoïc noäi dung oâ nhôù. Maïch logic cho pheùp vieát noäi dung oâ nhôù. Caùc boä ñeäm vaøo, boä ñeäm ra vaø boä môû roäng ñòa chæ v.v...

-78-

Caùch toå chöùc ñôn giaûn nhaát laø toå chöùc theo töù (word organized) vôùi söï choïn tuyeán tính (linear selection). Moät ma traän nhôù nhö vaäy coù ñoä daøi cuûa coät baèng soá löôïng töø W vaø ñoä daøi cuûa haøng baèng soá löôïng bit B trong moät töø. Boä choïn töø phaûi giaûi maõ 1 töø W. Phöông phaùp choïn tuyeán tính coù thôøi gian taâm nhaäp ngaén nhöng caàn moät boä giaûi maõ lôùn khi toång soá töø lôùn do ñoù laøm taêng giaù thaønh saûn phaåm. Kích thöôùc cuûa phaàn giaûi maõ ñòa chæ seõ giaûm ñi khi toå chöùc ma traän nhôù vaø phaàn logic choïn töø cho pheùp giaûi maõ hai böôùc (two-level decoding). Ma traän nhôù söû duïng giaûi maõ hai böôùc öùng vôùi töø vaät lyù vaø töø logic. Töø vaät lyù bao goàm soá löôïng bit trong moät haøng ma traän. Töø logic bao goàm soá löôïng bit töông öùng vôùi moät töø logic ñöôïc nhaän bieát vaø göûi ra cuøng moät luùc. caàn 2 boä giaûi maõ: moät boä giaûi maõ haøng ñeå choïn moät öø vaät lyù vaø moät boä giaûi maõ coät goàm moät vaøi maïch doàn keânh (multiplexor) choïn moät töø logic töø moät töø vaät lyù ñaõ choïn.

Hình 3.12: Moät thí duï veà giaûi maõ 2 böôùc cho ma traän ROM 128x128

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-79-

Hình 3.13: Moät thí duï sô ñoà caáu taïo cuûa 1 chip DRAM

3. Moät soá khaùi nieäm veà boä nhôù khaùc:
- Boä nhôù chôùp nhoaùng (Flash Memory) Trong ít naêm gaàn ñaây, moät loaïi boä nhôù khoâng bay hôi môùi ñaõ xuaát hieän treân thò tröôøng, thöôøng ñöôïc söû duïng thay theá cho caùc oå ñóa meàm vaø cöùng trong nhöõng maùy tính xaùch tay (notebook). Ñoù laø boä nhôù flash. Caáu truùc cuûa chuùng cô baûn nhö EEPROM. Do vaäy chæ caàn ñieän theá côõ 12 V laø coù theå cho pheùp thöïc hieän 10 000 chu trình xoaù vaø laäp trình. Boä nhôù flash coù theå hoaït ñoäng gaàn meàm deûo nhö DRAM vaø SRAM nhöng laïi khoâng maát soá lieäu khi bò caét ñieän. Muïc ñích söû duïng chính cuûa boä nhôù flash laø ñeå thay theá cho caùc oå ñóa meàm vaø oå ñóa cöùng dung löôïng nhoû> Do noù laø maïch tích hôïp neân coù öu ñieåm laø kích thöôùc nhoû vaø tieâu taùn naêng löôïng thaáp, khoâng bò aûnh höôûng cuûa va ñaäp. Caùc ñóa cöùng chaát raén döïa treân cô sôû caùc boä nhôù flash coù lôïi theá veà coâng suaát tieâu thuï cuõng nhö giaù thaønh coù dung löôïng tôùi vaøi MByte. Caùc card nhôù loaïi naøy cuõng coù öu ñieåm laø khoâng gaëp phaûi vaán ñeà maát thoâng tin nhö tröôøng hôïp RAM CMOS khi pin Ni-Cd bò hoûng. Thôøi gian löu tröõ thoâng tin trong boä nhôù flash ít nhaát cuõng laø 10 naêm coøn thì phaûi laø 100 naêm, trong thôøi gian naøy thì caùc ñóa meàm vaø cöùng ñaõ bò hoûng roài. - Boä nhôù cache (khay) Vôùi caùc cpu toác ñoä nhanh (treân 33MHz), caàn phaûi xen caùc traïng thaùi ñôïi khi truy xuaát döõ lieäu tôùi caùc DRAM reû tieàn nhöng coù thôøi gian thaâm nhaäp chaäm (60-120ns). Ñieàu ñoù laøm giaûm hieäu suaát cuûa toaøn maùy tính. Coù theå giaûi quyeát baèng caùch duøng caùc SRAM coù thôøi gian thaâm nhaäp ngaén hôn (20-25ns, thaâ.m chí 12ns) nhöng giaù thaønh laïi raát ñaét. Boä nhôù cache keát hôïp ñöôïc caùc lôïi ñieåm nhanh cuûa SRAM vaø reû cuûa DRAM ñeå xaây döïng ñöôïc moät boä nhôù coù hieäu suaát cao cho PC. Giöõa CPU vaø boä nhôù chính baèng DRAM, ngöôøi ta xen vaøo moät boä nhôù SRAM nhanh coù dung löôïng nhoû baèng 1/10 hoaëc 1/100 laàn boä nhôù chính goïi laø cache; döôùi söï ñieàu khieån cuûa boä ñieàu khieån cache,

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-80-

boä nhôù naøy seõ löu tröõ taïm thôøi caùc soá lieäu thöôøng ñöôïc goïi vaø cung caáp noù cho CPU trong thôøi gian ngaén. - Boä nhôù video Tröôùc ñaây ngöôøi ta söû duïng RAM ñoäng DRAM (Dynamic RAM) laøm RAM video nhöng loaïi RAM naøy ngaøy caøng khoâng thích hôïp vôùi caùc board video ñoà hoaï coù ñoä phaân giaûi cao ñoøi hoûi toác ñoä truyeàn döõ lieäu phaûi raát cao. Thí duï ôû ñoä phaân giaûi 1024*768, taàn soá queùt doïc 72 Hz, soá bit maøu laø 24 bit (maøu thöïc) boä nhôù RAM video phaûi ñöôïc ñoïc ôû toác ñoä khoaûng 170 trieäu bit trong moät sec, laø toác ñoä gaàn toái ña cuûa caùc DRAM quy öôùc. Hieän nay ngöôøi ta duøng caùc loaïi RAM khaùc nhö EDO–RAM (Extended Data Out), V–RAM ( Video RAM ), MD–RAM (Multibank RAM ). SGRAM (Synchronous Graphics RAM ) laøm RAM video. EDO–RAM laø loaïi RAM naïp ñoäc laäp tröôùc cho nhöõng maïch rieâng bieät laàn truy xuaát keá tieáp seõ baét ñaàu tröôùc khi laàn truy xuaát tröôùc ñoù hoaøn taát. EDO–RAM coøn ñöôïc söû duïng trong boä nhôù chính. V–RAM laø loaïi boä nhôù coù coång keùp cho pheùp boä xöû lyù vaø chip gia toác treân board video cuõng nhö chip DAC hoaëc ngay caû boä vi xöû lyù cuûa PC coù theå truy xuaát RAM video cuøng moät luùc. MD–RAM laø kieåu boä nhôù chuyeân duøng cho nhöõng öùng duïng ñoà hoaï vaø hình aûnh. MD-RAM ñöôïc toå chöùc thaønh nhöõng daõy nhoû cho pheùp caøi ñaët ôû nhieàu kyùch thöôùc ña tích hôïp 32KB. Laáy thí duï vôùi ñoä boä phaân giaûi 1924 * 768 vaø 24 bit maøu ta caàn kyùch thöôùc boä nhôù RAM video laø 2.3MB. Neáu duøng caùc D–RAM 256 K* 16 vaø bus 64-bit kyùch thöôùc boä nhôù RAM video phaûi laø 4 MB bao goàm hai daõy moãi daõy boán chip nhôù. Baèng caùch duøng MD–RAM ta coù theå caáu taïo boä nhôù 2.5 MB vôùi hai hoaëc ba chip rôøi. Nhö vaäy traùnh laõng phí ñöôïc 1.5 MB, töø ñoù giaûm giaù thaønh cho boä nhôù RAM video . SG–RAM laø kieåu boä nhôù coù theå hoaït ñoäng ñöôïc ôû taàn soá 66 MHz hoaëc nhanh hôn cuõng nhö ñöôïc söû duïng trong caùc board meï coù ñònh chuaån bus lieân keát noái thaønh phaàn ngoaïi vi PCI ( peripheral component interconnect ) . Caùc heä thoáng bus söû duïng trong maùy tính (nhö ISA, EISA hoaëc MCA) aûnh höôûng ñeán toác ñoä xöû lyù caùc thoâng tin hình aûnh. Chi tieát caùc loaïi bus naøy vaø caùc bus khaùc seõ ñöôïc ñeà caäp ñeán trong chöông 3. Bus ISA coù 16 bit döõ lieäu hoaït ñoäng ôû taàn soá 8.33 MHz. Caùc bus EISA vaø MCA coù 32 bit döõ lieäu nhöng chæ hoaït ñoäng ôû taàn soá thöù 10 MHz . Caùc taàn soá vöøa neâu laø caùc toác ñoä bus, khoâng phaûi laø toác ñoä cuûa CPU . Ñeå caûi thieän giôùi haïn naøy, ngöôøi ta ñoå xung bus cuïc boä VESA (VL–Bus) 32–bit hoaït ñoäng ôû toác ñoä ñaày ñuû ôû CPU leân ñeán 40 MHz. Khi heä thoáng bus PCI ñöôïc aùp duïng , soá bit döõ lieäu ñöôïc xöû lyù ñoàng thôøi laø 64 bit vôùi toác ñoä 66MHz .

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

xöû lyù ñoà hoaï v. Phaàn naøy seõ xem xeùt phaàn cuoái cuøng. cung caáp söï linh hoaït nhaát trong giao tieáp vôùi ngoaïi vi. Caùc chip I/O Coù nhieàu chip I/O ñaõ ñöôïc söû duïng vaø cuõng coù nhieàu chip môùi saûn xuaát ñang ñöôïc giôùi thieäu. caùc boä vi xöû lyù vaø caùc bus. Caùc chip thoâng duïng bao goàm caùc UART.v… . USART (Universal Synchronous Receiver Transmitter) coù theå ñieàu khieån truyeàn ñoàng boä baèng caùch duøng nhieàu nghi thöùc khaùc nhau vaø cuõng thöïc hieän taát caû chöùc naêng cuûa moät UART.Caán Truùc Maùy Tính -81- Cho ñeán hieän nay nhöõng ngöôøi söû duïng maùy tính ñaõ ñöôïc nghe nhieàu veà caùc board video ña phöông tieän (Multimedia ) coù khaû naêng söû lyù caùc aûnh tónh vaø aûnh ñoäng. Toác ñoä cho pheùp cuûa caùc UART thöôøng töø 50 bps tôùi 19. Treân caùc board video loaïi naøy ngöôøi ta duøng chip chuyeân duøng ASIC ñeå neùn vaø giaûi neùn tín hieäu video theo giaûi thuaät cuûa MPEG . hoaëc nhaäp döõ lieäu töø thieát bò ñaàu cuoái.5 hoaëc 2 bit stop. 1. ñoä roäng kyù töï töø 5 tôùi 8 bit. UART (Universal Asynchronous Receiver Transmitter) laø moät chip coù theå ñoïc moät byte töø bus döõ lieäu vaø ôû töøng thôøi ñieåm xuaát töøng bit noái tieáp nhau tôùi thieát bò ñaàu cuoái treân ñöôøng truyeàn noái tieáp. caùc chip nhôù vaø moät soá boä ñieàu khieån I/O. 1. Qua nhöõng chip naøy maùy tính truyeàn thoâng vôùi theá giôùi beân ngoaøi. caùc chip I/O.14. ñeøn hoaëc maùy in. xöû lyù tính hieäu hình. taát caû ñeàu ñöôïc noái qua moät bus. Ta ñaõ nghieân cöùu chi tieát veà caùc boä nhôù. thí duï nhö baøn phím. taát caû ñeàu döôùi söï ñieàu khieån cuûa chöông trình. coù 1. caùc boä ñieàu khieån CRT. Giao tieáp Moät heä thoáng maùy tính coù kích thöôùc nhoû ñeán trung bình tieâu bieåu bao goàm moät chip vi xöû lyù. IV. Chip PIO Chip xuaát / nhaäp song song PIO ( Parallel Input / Output ) tieâu bieåu laø chip 8255A cuûa Intel. Moät heä thoáng nhoû döïa treân boä vi xöû lyù söû duïng moät PIO thöôøng coù theå thay theá hoaøn toaøn moät board goàm nhieàu chip SSI vaø MSI. 8255A coù 24 ñöôøng I/O ñeå giao tieáp vôùi baát kyø thieát bò naøo töông thích vôùi TTL.2 Kbps. ñöôïc trình baøy trong hình 3. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Cuõng nhö caùc board video xöû lyù aûnh ñoäng ba chieàu ( 3– D ) . USART. Vì chuùng ta ñaõ xeùt UART ôû chöông 2. chuyeån maïch. neân phaàn naøy chæ nghieân cöùu veà giao tieáp song song ( parallel interface ) nhö moät thí duï cho moät chip I/O. coù theå duøng hoaëc khoâng duøng bit kieåm tra chaún leû. caùc boä ñieàu khieån ñóa vaø caùc PIO. Chöông trình cuûa CPU coù theå ghi 0 hoaëc 1 leân moät ñöôøng baát kyø hoaëc ñoïc traïng thaùi nhaäp cuûa moät ñöôøng baát kyø.

2 ñöôøng ñòa chæ cuûa 8255A ñöôïc noái vôùi caùc bit thaáp nhaát cuûa bus ñòa chæ. 2. caùc ñöôøng ñieàu khieån ñoïc vaø ghi döõ lieäu. Neáu ñöôïc choïn nhö moät phaàn cuûa boä nhôù. PIO ñöôïc choïn theo moät trong hai caùch : nhö moät thieát bò I/O thöïc söï hoaëc nhö moät phaàn cuûa boä nhôù. moät EPROM 2K x 8 bit cho chöông trình. thí duï söû duïng tín hieäu IORQ treân IBM PC bus. CPU chæ phaûi ñoïc thanh ghi töông öùng. chuùng ta phaûi xaùc ñònh moät khoâng gian ñòa chæ I/O roõ raøng. B. Maïch logic caàn thieát ñeå choát nhöõng xung nhö vaäy vaø laøm cho chuùng coù giaù trò ñoái vôùi CPU ñöôïc bao goàm beân trong phaàn cöùng cuûa 8255A. Caùc cheá ñoä hoaït ñoäng khaùc cung caáp khaû naêng baét tay vôùi caùc thieát bò ngoaïi vi vaø xuaát nhaäp 2 chieàu. Trong saûn xuaát EPROM coù theå ñöôïc thay theá baèng ROM. Caùch ñôn giaûn nhaát laø söû duïng 8255A nhö 3 coång 8 – bit (8 bit port) ñoäc laäp: A. Hai ñöôøng ñòa chæ choïn moät trong 4 thanh ghi noäi. goïi laø I/O ñöôïc aùnh xaï boä nhôù (memory-mapped Nguyeãn Höõu Loäc Khoa Vaät Lyù . Haõy xeùt moät maùy vi tính ñôn giaûn bao goàm moät CPU 8-bit vôùi 16 ñöôøng ñòa chæ. 8255A seõ ñöa döõ lieäu leân coång xuaát vaø ñôïi thieát bò ngoaïi vi gôûi 1 xung trôû veà baùo raèng vöøa nhaän döõ lieäu vaø yaâu caàu döõ lieäu keá. Muïc naøy giuùp chuùng ta xem xeùt kyõ hôn vaán ñeà naøy. Heä thoáng nhoû naøy coù theå ñöôïc duøng nhö moät maãu (prototype) cho boä naõo cuûa moät ñoà chôi hoaëc cuûa moät thieát bò ñôn giaûn.Caán Truùc Maùy Tính Hình 3. 8255A coøn coù 8 ñöôøng döõ lieäu noái tröïc tieáp vôùi bus döõ lieäu vaø caùc ñöôøng khaùc: moät ñöôøng choïn chip. CPU chæ phaûi ghi moät soá 8 bit vaøo thanh ghi töông öùng. B vaø C. Thí duï ñeå xuaát döõ lieäu cho moät thieát bò khoâng luoân luoân saün saøng nhaän döõ lieäu trong cheá ñoä baét tay. Töø sô ñoà chöùc naêng cuûa 8255A chuùng ta thaáy ngoaøi 24 chaân cho 3 coång. Ñeå thieát laäp caùc ñöôøng tín hieäu treân coång. Bình thöôøng. Moãi coång keát hôïp vôùi moät thanh ghi choát 8 bit beân trong 8255A. 2 ñöôøng ñòa chæ vaø moät ñöôøng ñeå thieát laäp laïi traïng thaùi ban ñaàu cho chip. chuùng ta seõ taäp trung treân moät soá cheá ñoä hoaït ñoäng ñôn giaûn. Ñeå duøng coång laøm moät coång nhaäp. Neáu ñöôïc choïn nhö moät thieát bò I/O.14 : Chip PIO 8255A -82- Maëc duø CPU coù theå ñònh caáu hình cho 8255A theo nhieàu caùch baèng vieäc naïp caùc thanh ghi traïng thaùi beân trong chip. moät RAM 2K x 8 bit cho döõ lieäu vaø moät PIO. töông öùng vôùi caùc coång A. C vaø thanh ghi traïng thaùi. Cho ñeán luùc naøy chuùng ta ñaõ sô boä bieát qua caùch choïn chip ñoái vôùi caùc chip boä nhôù vaø caùc chip I/O ñaõ khaûo saùt. Giaûi maõ ñòa chæ. Thanh ghi naøy coù caùc bit xaùc ñònh coång naøo laø coång nhaäp vaø coång naøo laø coång xuaát vaø nhöõng chöùc naêng khaùc. soá 8-bit seõ xuaát hieän treân caùc ñöôøng tín hieäu xuaát vaø seõ duy trì giaù trò (ñöôïc choát) cho tôùi khi thanh ghi ñöôïc ghi laàn nöõa.

5 ngoõ vaøo naøy ñöôïc noái vôùi caùc ñöôøng ñòa chæ A11-A15. chuùng ta phaûi choïn vò trí ñaët 3 thaønh phaàn naøy vaøo trong khoâng gian ñòa chæ ñoù. RAM cuõng caàn 2K vaø PIO caàn 4 byte. Neáu vaø chæ neáu 5 ñöôøng ñòa chæ naøy ñeàu baèng 0.15. moät byte cuûa EPROM ñöôïc tham chieáu bôûi moät ñòa chæ boä nhôù 16 bit coù daïng 00000xxxxxxxxxxx (nhò phaân). Do khoâng gian ñòa chæ laø 64 khaùc. Treân thöïc teá khoâng coù coång OR 5 ngoõ vaøo ôû caùc hoï SSI chuaån. Coång NOR 8 ngoõ vaøo ñöôïc saûn xuaát nhieàu vaø coù soá ngoõ vaøo töông ñoái thích hôïp. neân caàn theâm moät coång ñaûo cho ñöôøng ñòa chæ A15 nhö treân hình veõ. neáu chuùng ta ñaõ choïn ñòa chæ cho PIO thoâng qua khoâng gian ñòa chæ I/O. ta seõ so saùnh 5 ñöôøng ñòa chæ cao vôùi 00000. Ta söû duïng 2 coång NAND 8 ngoõ vaøo moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . nhö trong hình 3. Caùc byte cuûa RAM öùng vôùi caùc ñòa chæ nhò phaân coù daïng 10000xxxxxxxxxxx. Do EPROM chieám caùc ñòa chæ töø 0 ñeán 2K trong khoâng gian ñòa chæ 64K neân 5 bit cao cuûa ñòa chæ ñeàu baèng 0. Moät maïch coù theå xaùc laäp CS cho PIO chæ khi treân bus ñòa chæ xuaát hieän ñuùng ñòa chæ nhö trình baøy trong hình veõ. Tuy nhieân. ta seõ khoâng maát ñòa chæ daønh cho boä nhô ù(nhöng taát nhieân seõ maát 4 ñòa chæ trong khoâng gian ñòa chæ I/O). Söï choïn löïa sau coù hôi tuøy tieän nhöng ta seõ choïn theo caùch naøy nhaèm minh hoïa moät soá vaán ñeà ñaùng quan taâm trong giao tieáp vôùi I/O.13 (a). ta söû duïng coång naøy baèng caùch noái ñaát 3 ngoõ vaøo khoâng duøng vaø ñaûo tín hieäu ngoõ ra ñeå coù cuøng keát quaû vôùi coång OR 5 ngoõ vaøo. Theo quan ñieåm cuûa ngöôøi laäp trình. Do vaäy. RAM chieám caùc ñòa chæ töø 32K ñeán 34K vaø PIO chieám 4 byte cao nhaát cuûa khoâng gian ñòa chæ töø 65532 tôùi 65535. do vaäy CS ñöôïc xaùc laäp (xaùc laäp ôû möùc thaáp). khoâng coù söï khaùc nhau trong vieäc choïn caùch ñònh ñòa chæ cho I/O. Vôùi caùch phaân ñòa chæ nhö trong hình 3. Moät khaû naêng ñöôïc trình baøy trong hình 3. ñoái vôùi vaán ñeà giao tieáp. Theo quy öôùc. RAM vaø PIO trong khoâng gian ñòa chæ 64K Phöông phaùp toát hôn ñeå nhaän ñöôïc cuøng keát quaû laø duøng moät coång OR coù 5 ngoõ vaøo. caùc ngoõ vaøo khoâng söû duïng seõ khoâng ñöôïc veõ treân sô ñoà maïch.12.15 : Vò trí cuûa EPROM. chuùng ta phaûi daønh 4 byte trong khoâng gian ñòa chæ boä nhôù cho 3 coång 8 bit vaø thanh ghi ñieàu khieån. vieäc choïn chip EPROM coù theå thöïc hieän baèng caùch söû duïng moät boä so saùnh 5 bit. trong ñoù EPROM chieám caùc ñòa chæ töø 0 ñeán 2K. EPROM caàn 2K khoâng gian ñòa chæ. Hình 3. Giaûi maõ ñòa chæ cho PIO hôi phöùc taïp hôn do PIO ñöôïc choïn bôûi 4 ñòa chæ coù daïng 11111111111111xx.Caán Truùc Maùy Tính -83- I/O). Ta cuõng duøng cuøng nguyeân taéc nhö vaäy cho RAM.

do vaäy chæ caàn 2 bit laø ñuû. Ñeán ñaây ta nhaän thaáy vieäc quyeát ñònh ñaët RAM ôû ñòa chæ 8000H coù veû bôùt tuøy tieän. ta coù theå noái tröïc tieáp CS vôùi A15 nhö trong hình 3. Thuû thuaät naøy thöïc teá döïa vaøo taát caû caùc ñòa chæ cuûa EPROM vaø chæ coù ñòa chæ cuûa EPROM coù bit A15 baèng 0. caàn duøng 6 chip SSI : 4 chip 8 ngoõ vaøo. Maïch logic giaûi maõ ñaày ñuû baây giôø chæ caàn 2 coång NAND vaø 1 coång ñaûo. Do coång ñaûo coøn ñöôïc taïo ra töø moät coång NAND baèng caùch noái 2 ngoõ vaøo laïi vôùi nhau. Thöïc teá.Tuy nhieân.16: (a) Giaûi maõ ñòa chæ toaøn phaàn (b) Giaûi maõ ñòa chæ töøng phaàn Nguyeãn Höõu Loäc Khoa Vaät Lyù . Maïch logic giaûi maõ ñòa chæ ôû hình 3. Ñeå thieát laäp maïch logic giaûi maõ ñòa chæ cho hình 3. Coù theå thöïc hieän giaûi maõ RAM baèng caùch chuù yù ñeán caùc ñòa chæ cuûa RAM ñeàu coù daïng 10xxxxxxxxxxxxxx. neáu maùy tính thöïc söï chæ coù moät CPU. Hình 3. Baát lôïi cuûa caùch giaûi maõ ñòa chæ naøy laø vieäc ñoïc ôû caùc ñòa chæ 0-001000000000000 hoaëc 0-0011-00000000000 hoaëc 0-0100-00000000000 seõ cho cuøng keát quaû. neáu caùc nhaø thieát keá maùy tính muoán coù theå naâng caáp trong töông lai.16 (b).16(b) ñöôïc goïi laø maïch giaûi maõ ñòa chæ töøng phaàn ( partial address decoding ) do khoâng söû duïng toaøn boä ñòa chæ.16 (a). moïi ñòa chæ ôû nöûa döôùi cuûa khoâng gian ñòa chæ seõ choïn EPROM. ta coù theå duøng moät thuû thuaät ñeå ñôn giaûn hoùa vieäc giaûi maõ ñòa chæ. 1 coång OR 2 ngoõ vaøo vaø moät chip coù 3 coång ñaûo. 2 chip nhôù vaø PIO. ta chæ caàn 1 chip coù 4 coång NAND 2 ngoõ vaøo. moät ñòa chæ baát kyø baét ñaàu baèng 11 phaûi laø ñòa chæ cuûa PIO. Do ta khoâng söû duïng caùc ñòa chæ khaùc vôùi 00000xxxxxxxxxxx neân söï vieäc treân khoâng gaây moät toån haïi naøo. Tuy nhieân.Caán Truùc Maùy Tính -84- coång OR 2 ngoõ vaøo ñeå noái caùc ñöôøng treân bus ñòa chæ vôùi chaân CS cuûa PIO. Töông töï. hoï seõ khoâng duøng phöông phaùp giaûi maõ ñòa chæ töøng phaàn.

Lôùp döôùi cuøng phaûi laø moät maùy phaàn cöùng thöïc söï vôùi caùc maïch tích hôïp. so saùnh vaø laäp voøng) ñöôïc thöïc thi töøng böôùc bôûi moät trình phieân dòch chaïy treân lôùp vi chöông trình . logic. Taát caû caùc leänh coù theå coù coù ôû lôùp maùy qui öôùc (thí duï caùc leänh soá hoïc. caùc leänh phöùc taïp hôn nöõa. Maëc duø caùc phöông trình ô ûmoät lôùp coù theå ñöôïc thöïc thi bôûi moät trình phieân dòch. ø Do caáu truùc cuûa lôùp vi chöông trình. ñöôïc xaùc ñònh bôûi phaàn cöùng neân thöôøng thoâ sô vaø khoù laäp trình. vaø trong moät soá tröôøng hôïp. khoâng phaûi laø laäp trình vieân nhoû (small programmer). vaø maëc duø trình phieân dòch naøy cuõng coù theå ñöôïc thöïc thi bôûi moät trình phieân dòch khaùc. Ngaøy nay. thay vì tìm kieám caùc maïch chia chuùng ta laáy ra moät baûng lieät keâ cuûa vi chöông trình vaø tìm kieám phaàn chöông trình phieân dòch caùc leänh chia. logic. hôn nöõa laïi thöôøng xuyeân dòch chuyeån. … ñöôïc thöïc thi tröïc tieáp bôûi phaàn cöùng. khoâng coøn ñuû khaû naêng taùch rieâng caùc maïch chia do bôûi chuùng khoâng hieän höõu. Chuùng ta seõ baét ñaàu vieäc khaûo saùt lôùp vi chöông trình baèng vieäc nhaéc laïi moät caùch toùm taét caùc khoái cô baûn trong maïch soá. Treân caùc maùy tính lôùp hieän nay. Muïc ñích cuûa thieát keá naøy hieån nhieân daãn ñeán moät toå chöùc ñöôïc toái öu hoùa cao ñoä ñoái vôùi vieäc tìm-naïp. so saùnh.Caán Truùc Maùy Tính -85- CHÖÔNG 4 LÔÙP VI CHÖÔNG TRÌNH Ranh giôùi giöõa phaàn cöùng vaø phaàn meàm khoâng ñöôïc xaùc ñònh roõ. laäp voøng. cuõng chính vì vaäy neân vôùi lôùp nay chuùng ta chæ khaûo saùt sô löôïc coù tính chaát lòch söû maø thoâi. chuùng laø moät phaàn trong caáu truùc cuûa lôùp vi chöông trình do vaäy cuõng lieân quan ñeán caùc vi laäp trình vieân (microprogrammer). Ngöôøi ta coù theå thaùo oác caùc baûn maïch cuõ (back panel) vaø chæ ra caùc thaønh phaàn ñieän töû duøng cho leänh chia. Caùc khaûo saùt veà ñònh thì thöôøng quan troïng vaø chuùng ñaõ daãn Rosin ( 1974 ) ñeán ñònh nghóa vi chöông trình laø “söï hieän thöïc caùc heä thoáng hôïp lyù ñaøy trieån voïng thoâng qua söï phieân dòch treân caùc maùy khoâng hôïp lyù “ . Vi chöông trình vieân laø ngöôøi vieát caùc vi chöông trình. Trong chöông naøy chuùng ta seõ nghieân cöùu caùch thöùc vi chöông trình ñieàu khieån caùc thaønh phaàn phaàn cöùng vaø caùch thöùc vi chöông trình phieân dòch caùc leänh cuûa lôùp maùy quy öôùc.v. coù nhöõng maùy khoâng ñöôïc vi chöông trình hoaù (maùy RISC). Caùc maùy tính tröôùc ñaây coù caùc leänh soá hoïc. v. caùc nguoàn cuøng lôùp vaø caùc ñoái töôïng “cöùng“ töông töï khaùc. giaûi maõ vaø thöïc thi caùc leänh cuûa lôùp maùy quy öôùc. Ngaøy nay. dòch. heä thoáng lôùp baäc naøy khoâng theå tieáp tuïc ñeán voâ taän. Lôùp vi chöông trình coù moät chöùc naêng ñaëc bieät: Thöïc thi caùc trình phieân dòch cho caùc maùy aûo khaùc. toái thieåu cuõng veà maët nguyeân taéc. dòch. Vôùi moãi moät leänh. Nguyeãn Höõu Loäc Khoa Vaät Lyù . chuùng ñaõ ñöôïc ñeà caäp ñeán trong chöông tröôùc. hòeân höõu moät maïch phaàn cöùng rieâng bieät ñeå thöïc hieän leänh naøy. goïi laø vi caáu truùc.

Thoâng tin ñaët trong thanh ghi seõ toàn taïi cho ñeán khi coù moät thoâng tin khaùc thay theá. moät thanh ghi luoân luoân laø nguoàn vaø thanh ghi coøn laïi luoân luoân laø ñích. 2.Caán Truùc Maùy Tính -86- Keá ñeán chuùng ta ñi vaøo troïng taâm cuûa vaán ñeà. 2 … . moät nhoùm thanh ghi ñöôïc ñaùnh soá 0. caùc ALU. I. 1. caùc bus. caùc bus naøy chæ keát noái hai thaønh phaàn do vaäy khoâng caàn caùc ñöôøng ñòa chæ hoaëc caùc ñöôøng ñieàu khieån bao quaùt chæ caàn n ñöôøng döõ lieäu vaø trong tröôøng hôïp toång quaùt moät hoaëc hai ñöôøng ñieàu khieån cuõng ñuû. Caùc thaønh phaàn naøy hoaëc ñöôïc tìm thaáy trong caùc taøi lieäu veà maïch soá hoaëc ñaõ ñöôïc khaûo saùt trong chöông tröôùc. Treân moät soá maùy tính. Caùc bus ñôn höôùng ñieån hình ñöôïc duøng ñeå noái hai thanh ghi. NHAÉC LAÏI LÔÙP VAÄT LYÙ: 1. Khoâng gioáng bus heä thoáng ñaõ khaûo saùt ôû chöông 3. boä nhôù thöôøng ñaët beân ngoaøi chip xöû lyù. Noùi caùch khaùc. Caùc thanh ghi ñaïi khaùi cuõng gioáng nhö boä nhôù chính. Caùc keát noái naøy coù theå ñöôïc thöïc hòeân hoaëc khoâng trong vaøi ngiaây. Nhieàu thaønh phaàn coù khaû naêng töï keát noái hoaëc khoâng keát noái veà maëch ñòeân vôùi bus (nhöng vaãn keát noái veà maët vaät lyù. Coâng vieäc cuûa vi laäp trình vieân laø vieát moät chöông trình ñieàu khieån caùc thanh ghi. caùch thöùc caùc leänh phöùc taïp hôn ñöôïc thieát laäp töø chuoãi caùc leänh (primitive). ñieåm khaùc nhau laø caùc thanh ghi ñöôïc ñaët beân trong boä xöû lyù neân chuùng ñöôïc ñoïc vaø ghi nhanh hôn so vôùi vieäc ñoïc vaø ghi caùc töø trong boä nhôù chính. Caùc bus ñöôïc duøng do bôûi vieäc chuyeån song song taát caû caùc bit cuøng moät luùc seõ nhanh hôn nhieàu so vôùi truyeàn noái tieáp töøng bit moät ôû moãi thôøi ñieåm. Thí duï: caùc bus ñöôïc duøng ñeå cho pheùp noäi dung cuûa moät thanh ghi ñöôïc sao cheùp ñeán moät thanh ghi khaùc. Caùc maùy tính lôùn hôn vaø ñaét tieàn hôn thöôøng coù nhieàu thanh ghi hôn caùc maùy nhoû vaø reõ tieàn.1 coù giaù trò ôû lôùp vi chöông trình coøn ñöôïc goïi laø cuïc boä (local) hay boä nhôù nhaùp (Scratchpad memory). Moät bus maø caùc thaønh phaàn keát noái coù ñaëc tính naøy ñöôïc goïi laø Nguyeãn Höõu Loäc Khoa Vaät Lyù . Bus noäi: Bus noäi laø taäp hôïp caùc ñöôøng daây truyeàn tín hieäu theo daïng song song. ôû ñaây chuùng ta chæ nhaéc laïi moät caùch toùm taét. Caùc thanh ghi: Thanh ghi laø thaønh phaàn löu tröõ thoâng tin. caùc boä nhôù vaø caùc thaønh phaàn phaàn cöùng khaùc cuûa maùy. Quùa trình ñoïc thoâng tin ra khoûi moät thanh ghi khoâng laøm thay ñoåi noäi dung cuûa thanh ghi naøy. Bus ñôn höôùng chæ coù theå chuyeån döõ lieäu theo moät chieàu trong khi bus song höôùng chuyeån döõ lieäu theo caû hai chieàu nhöng khoâng ñoàng thôøi. Moät thanh ghi coù theå ñaët tröng hoaù baèng moät con soá cho bieát thanh ghi löu tröõ bao nhieâu bit. moät baûn sao noäi dung cuûa thanh ghi ñöôïc taïo ra vaø baûn goác trong thanh ghi khoâng bò xaùo troän. khi moät thanh ghi ñöôïc ñoïc. n . Caùc bus song höôùng ñieån hình ñöôïc duøng khi baát kyø thanh ghi naøo trong taäp thanh ghi cuõng coù theå laø nguoàn hoaëc laø ñích. Moät bus coù theå laø ñôn höôùng (unidirectional) hay song höôùng (bidirectional). chuùng phaûi söû duïng boä nhôù chính ñeå löu tröõ caùc keát quaû trung gian. Lôùp vi chöông trình luoân luoân coù moät soá thanh ghi nhaèm löu döõ thoâng tin caàn thieát cho vieäc xöû lyù leänh ñang ñöôïc phieân dòch.

1 hoaëc khoâng keát noái. noäi dung cuûa thanh ghi bôûi caùc tín hieäu treân Bus. Khi OE khoâng xaùc laäp. CK vaø cho pheùp xuaát OE (output enable). Bình thöôøng 2 tín hieäu naøy ôû traïng thaùi tónh nhöng thænh thoaûng chuùng ñöôïc xaùc laäp. Ngöôïc laïi khi OE ñöôïc xaùc laäp. noäi dung cuûa thanh ghi ñöôïc naïp neân bus xuaát ( thanh ghi xuaát thoâng tin leân bus ) Hình 4. R chaúng haïn. Khi CK xaùc laäp.1 (a) moâ taû moät thanh ghi 8 bit ñöôïc noái vôùi moät bus nhaäp vaø moät bus xuaát. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caùc bus ba traïng thaùi ñöôïc söû duïng roäng raõi khi coù nhieàu thaønh phaàn noái ñeán bus vaø chuùng ñeàu coù khaû naêng ñöa thoâng tin leân bus .Caán Truùc Maùy Tính -87- bus ba traïng thaùi (tristate bus) vì moãi moät ñöôøng cuûa bus coù theå laø 0. noái ñeán taát caû caùc flip flop. Thanh ghi bao goàm 8 flip flop loaïi D. Thao taùc môû coång ñöa thoâng tin cuûa moät thanh ghi leân bus ñeå noät thanh ghi khaùc naïp vaøo thöôøng xaûy ra ôû lôùp vi chöông trình. Thanh ghi coù hai tín hieäu ñieàu khieån. thanh ghi khoâng ñöôïc keát noái vôùi bus xuaát. Khi CK khoâng xaùc laäp. coù caùc ngoõ vaøo noái vôùi Bus xuaát cuûa thanh ghi vöøa moâ taû ôû treân. Ñeå thöïc hieän ñieàu naøy.1 (a) chi tieát moät thanh ghi 8-bit noái vôùi moät bus nhaäp vaø moät bus xuaát b) kyù hieäu cuûa moät thanh ghi 16 – bit vôùi moät bus nhaäp vaø 2 bus xuaát Neáu coù moät thanh ghi khaùc. OE phaûi ñöôïc xaùc laäp vaø giöõ ôû traïng thaùi naøy ñuû laâu ñeå ñöa thoâng tin leân bus oån ñònh. moãi flip flop löu tröõ 1 bit vaø ñöôïc noái vôùi bus xuaát qua moät coång ñeäm khoâng ñaûo. Hình 4. thanh gi naøy coù theå truyeàn thoâng tin ñeán R. Keá ñeán ñöôøng CK cuûa R ñöôïc xaùc laäp ñeå naïp cho R thoâng tin naøy. thanh ghi ñöôïc naïp töø bus nhaäp. gaây neân taùc ñoäng töông öùng.

2: Sô ñoà khoái cuûa 1 CPU ñôn giaûn cuûa moät maùy tính ñieän töû thieát keá theo phöông phaùp vi chöông trình hoaù.Caán Truùc Maùy Tính -88- Hình 4. Ñeå thöïc hieän moät leänh coäng (ADD) caàn moät heä toái thieåu caùc pheùp vi toaùn: Kyù töï gôïi nhôù Ghi chuù MAR-M Noái MAR vôùi BUS M MBR-M Noái MBR vôùi BUS M PC-D Noái PC vôùi BUS D IA-D Noái IA (cuûa IR) vôùi BUS D AC-D Noái Accumulator vôùi BUS D MTS Noái BUS M vôùi BUS S qua ALU DTS Noái BUS D vôùi BUS S qua ALU S-MAR Noái BUS S vôùi MAR Nguyeãn Höõu Loäc Khoa Vaät Lyù .1 b) trình baøy moät thanh ghi 16 bit vôùi 2 bus xuaát . MOÄT VÍ DUÏ VEÀ VI CHÖÔNG TRÌNH: Hình 4. moãi bus ñöôïc ñieàu khieån bôiû moät tín hieäu OE khaùc nhau II.

Xaây döïng keát caáu cuûa heä thoáng coù theå quyeát ñònh trong giai ñoaïn cuoái cuûa quaù trình thieát keá Nguyeãn Höõu Loäc Khoa Vaät Lyù .3: heä toái thieåu caùc pheùp vi toaùn S-MBR S-PC S-IR S-AC R W PLUS -89- VI LEÄNH MEM Nhaûy ALU BUSM BUSD BUSS Ñòa chæ PC-MAR DTS PCD SMAR |ADDR| R (MBR)IR MTS MBRM SIR DECOD JOPC (IA)MAR DTS IAD SMAR |DATA| R MBR+A PLUS MBRM ACD SAC PC+1 ONE PCD SPC Hình 4.Ñaùnh ñòa chæ thoâng soá hoaù Öu ñieåm: Giaûm sai laàm logic .Caán Truùc Maùy Tính Noái BUS S vôùi MBR Noái BUS S vôùi PC Noái BUS S vôùi IR Noái BUS S vôùi AC Ñoïc noäi dung trong Mem ra MBR Vieát noäi dung töø MBR vaøo Mem Coäng noäi dung coù treân BUS D vaø BUSM taïi ALU vaø ñöa ra BUS S ONE Noái BUS D vôùi BUS S qua ALU coäng 1 JMP Nhaûy ñeán ñòa chæ trong leänh sau neáu A=0 JOPC Nhaûy ñeán ñòa chæ cuûa maõ leänh (giaûi maõ leänh) Hình 4.Coù khaû naêng moâ phoûng nhieàu thieát bò coù chöùc naêng khaùc nhau baèng 1 maùy .4: Vi chöông trình thöïc hieän leänh ADD Söû duïng caùc phöông phaùp vieát chöông trình: .Moùc noái chöông trình con .Ñaùnh ñòa chæ chæ soá hoaù .

v.Caán Truùc Maùy Tính -90- CHÖÔNG 4: LÔÙP VI CHÖÔNG TRÌNH Ranh giôùi giöõa phaàn cöùng vaø phaàn meàm khoâng ñöôïc xaùc ñònh roõ. cuõng chính vì vaäy neân vôùi lôùp naøy chuùng ta chæ khaûo saùt sô löôïc coù tính chaát lòch söû maø thoâi. Caùc thaønh Nguyeãn Höõu Loäc Khoa Vaät Lyù . dòch. coù nhöõng maùy khoâng ñöôïc vi chöông trình hoaù (maùy RISC). giaûi maõ vaø thöïc thi caùc leänh cuûa lôùp maùy quy öôùc. logic. Trong chöông naøy chuùng ta seõ nghieân cöùu caùch thöùc vi chöông trình ñieàu khieån caùc thaønh phaàn phaàn cöùng vaø caùch thöùc vi chöông trình phieân dòch caùc leänh cuûa lôùp maùy quy öôùc. goïi laø vi caáu truùc. caùch thöùc caùc leänh phöùc taïp hôn ñöôïc thieát laäp töø chuoãi caùc leänh (primitive). khoâng coøn ñuû khaû naêng taùch rieâng caùc maïch chia do bôûi chuùng khoâng hieän höõu. chuùng ñaõ ñöôïc ñeà caäp ñeán trong chöông tröôùc. caùc bus. Taát caû caùc leänh coù theå coù coù ôû lôùp maùy qui öôùc (thí duï caùc leänh soá hoïc. so saùnh. Lôùp vi chöông trình coù moät chöùc naêng ñaëc bieät: Thöïc thi caùc trình phieân dòch cho caùc maùy aûo khaùc. dòch. Maëc duø caùc phöông trình ô ûmoät lôùp coù theå ñöôïc thöïc thi bôûi moät trình phieân dòch. thay vì tìm kieám caùc maïch chia chuùng ta laáy ra moät baûng lieät keâ cuûa vi chöông trình vaø tìm kieám phaàn chöông trình phieân dòch caùc leänh chia. caùc nguoàn cuøng lôùp vaø caùc ñoái töôïng “cöùng“ töông töï khaùc. v. Ngaøy nay. vaø maëc duø trình phieân dòch naøy cuõng coù theå ñöôïc thöïc thi bôûi moät trình phieân dòch khaùc. Caùc maùy tính tröôùc ñaây coù caùc leänh soá hoïc. heä thoáng lôùp baäc naøy khoâng theå tieáp tuïc ñeán voâ taän. Chuùng ta seõ baét ñaàu vieäc khaûo saùt lôùp vi chöông trình baèng vieäc nhaéc laïi moät caùch toùm taét caùc khoái cô baûn trong maïch soá. Ngaøy nay. Treân caùc maùy tính lôùp hieän nay. Do caáu truùc cuûa lôùp vi chöông trình. hôn nöõa laïi thöôøng xuyeân dòch chuyeån. caùc boä nhôù vaø caùc thaønh phaàn phaàn cöùng khaùc cuûa maùy. Muïc ñích cuûa thieát keá naøy hieån nhieân daãn ñeán moät toå chöùc ñöôïc toái öu hoùa cao ñoä ñoái vôùi vieäc tìm-naïp. vaø trong moät soá tröôøng hôïp. caùc leänh phöùc taïp hôn nöõa. Keá ñeán chuùng ta ñi vaøo troïng taâm cuûa vaán ñeà. … ñöôïc thöïc thi tröïc tieáp bôûi phaàn cöùng. ñöôïc xaùc ñònh bôûi phaàn cöùng neân thöôøng thoâ sô vaø khoù laäp trình. logic. Vi chöông trình vieân laø ngöôøi vieát caùc vi chöông trình. laäp voøng. caùc ALU. toái thieåu cuõng veà maët nguyeân taéc. chuùng laø moät phaàn trong caáu truùc cuûa lôùp vi chöông trình do vaäy cuõng lieân quan ñeán caùc vi laäp trình vieân (microprogrammer). Coâng vieäc cuûa vi laäp trình vieân laø vieát moät chöông trình ñieàu khieån caùc thanh ghi. Ngöôøi ta coù theå thaùo oác caùc baûn maïch cuõ (back panel) vaø chæ ra caùc thaønh phaàn ñieän töû duøng cho leänh chia. Lôùp döôùi cuøng phaûi laø moät maùy phaàn cöùng thöïc söï vôùi caùc maïch tích hôïp. so saùnh vaø laäp voøng) ñöôïc thöïc thi töøng böôùc bôûi moät trình phieân dòch chaïy treân lôùp vi chöông trình . hòeân höõu moät maïch phaàn cöùng rieâng bieät ñeå thöïc hieän leänh naøy. Caùc khaûo saùt veà ñònh thì thöôøng quan troïng vaø chuùng ñaõ daãn Rosin ( 1974 ) ñeán ñònh nghóa vi chöông trình laø “söï hieän thöïc caùc heä thoáng hôïp lyù ñaøy trieån voïng thoâng qua söï phieân dòch treân caùc maùy khoâng hôïp lyù “ . Vôùi moãi moät leänh. khoâng phaûi laø laäp trình vieân nhoû (small programmer).

moät baûn sao noäi dung cuûa thanh ghi ñöôïc taïo ra vaø baûn goác trong thanh ghi khoâng bò xaùo troän. Thoâng tin ñaët trong thanh ghi seõ toàn taïi cho ñeán khi coù moät thoâng tin khaùc thay theá. ôû ñaây chuùng ta chæ nhaéc laïi moät caùch toùm taét. 2 … . boä nhôù thöôøng ñaët beân ngoaøi chip xöû lyù. Thí duï: caùc bus ñöôïc duøng ñeå cho pheùp noäi dung cuûa moät thanh ghi ñöôïc sao cheùp ñeán moät thanh ghi khaùc. Caùc thanh ghi ñaïi khaùi cuõng gioáng nhö boä nhôù chính. Khoâng gioáng bus heä thoáng ñaõ khaûo saùt ôû chöông 3. chuùng phaûi söû duïng boä nhôù chính ñeå löu tröõ caùc keát quaû trung gian. 2. 1 hoaëc khoâng keát noái. Caùc keát noái naøy coù theå ñöôïc thöïc hòeân hoaëc khoâng trong vaøi ngiaây.1 coù giaù trò ôû lôùp vi chöông trình coøn ñöôïc goïi laø cuïc boä (local) hay boä nhôù nhaùp (Scratchpad memory). Caùc bus ba traïng thaùi ñöôïc söû duïng roäng raõi khi coù nhieàu thaønh phaàn noái ñeán bus vaø chuùng ñeàu coù khaû naêng ñöa thoâng tin leân bus . NHAÉC LAÏI LÔÙP VAÄT LYÙ: 1. Lôùp vi chöông trình luoân luoân coù moät soá thanh ghi nhaèm löu döõ thoâng tin caàn thieát cho vieäc xöû lyù leänh ñang ñöôïc phieân dòch. Noùi caùch khaùc. caùc bus naøy chæ keát noái hai thaønh phaàn do vaäy khoâng caàn caùc ñöôøng ñòa chæ hoaëc caùc ñöôøng ñieàu khieån bao quaùt chæ caàn n ñöôøng döõ lieäu vaø trong tröôøng hôïp toång quaùt moät hoaëc hai ñöôøng ñieàu khieån cuõng ñuû. moät nhoùm thanh ghi ñöôïc ñaùnh soá 0. Caùc bus song höôùng ñieån hình ñöôïc duøng khi baát kyø thanh ghi naøo trong taäp thanh ghi cuõng coù theå laø nguoàn hoaëc laø ñích. n . khi moät thanh ghi ñöôïc ñoïc. Quùa trình ñoïc thoâng tin ra khoûi moät thanh ghi khoâng laøm thay ñoåi noäi dung cuûa thanh ghi naøy. Treân moät soá maùy tính. Caùc bus ñôn höôùng ñieån hình ñöôïc duøng ñeå noái hai thanh ghi. Bus ñôn höôùng chæ coù theå chuyeån döõ lieäu theo moät chieàu trong khi bus song höôùng chuyeån döõ lieäu theo caû hai chieàu nhöng khoâng ñoàng thôøi. Moät thanh ghi coù theå ñaët tröng hoaù baèng moät con soá cho bieát thanh ghi löu tröõ bao nhieâu bit. moät thanh ghi luoân luoân laø nguoàn vaø thanh ghi coøn laïi luoân luoân laø ñích. Caùc bus ñöôïc duøng do bôûi vieäc chuyeån song song taát caû caùc bit cuøng moät luùc seõ nhanh hôn nhieàu so vôùi truyeàn noái tieáp töøng bit moät ôû moãi thôøi ñieåm. Moät bus maø caùc thaønh phaàn keát noái coù ñaëc tính naøy ñöôïc goïi laø bus ba traïng thaùi (tristate bus) vì moãi moät ñöôøng cuûa bus coù theå laø 0.Caán Truùc Maùy Tính -91- phaàn naøy hoaëc ñöôïc tìm thaáy trong caùc taøi lieäu veà maïch soá hoaëc ñaõ ñöôïc khaûo saùt trong chöông tröôùc. Caùc maùy tính lôùn hôn vaø ñaét tieàn hôn thöôøng coù nhieàu thanh ghi hôn caùc maùy nhoû vaø reõ tieàn. Caùc thanh ghi: Thanh ghi laø thaønh phaàn löu tröõ thoâng tin. Bus noäi: Bus noäi laø taäp hôïp caùc ñöôøng daây truyeàn tín hieäu theo daïng song song. I. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Nhieàu thaønh phaàn coù khaû naêng töï keát noái hoaëc khoâng keát noái veà maëch ñòeân vôùi bus (nhöng vaãn keát noái veà maët vaät lyù. ñieåm khaùc nhau laø caùc thanh ghi ñöôïc ñaët beân trong boä xöû lyù neân chuùng ñöôïc ñoïc vaø ghi nhanh hôn so vôùi vieäc ñoïc vaø ghi caùc töø trong boä nhôù chính. 1. Moät bus coù theå laø ñôn höôùng (unidirectional) hay song höôùng (bidirectional).

CK vaø cho pheùp xuaát OE (output enable). coù caùc ngoõ vaøo noái vôùi Bus xuaát cuûa thanh ghi vöøa moâ taû ôû treân. noái ñeán taát caû caùc flip flop. gaây neân taùc ñoäng töông öùng. thanh ghi khoâng ñöôïc keát noái vôùi bus xuaát. moãi flip flop löu tröõ 1 bit vaø ñöôïc noái vôùi bus xuaát qua moät coång ñeäm khoâng ñaûo. Thao taùc môû coång ñöa thoâng tin cuûa moät thanh ghi leân bus ñeå noät thanh ghi khaùc naïp vaøo thöôøng xaûy ra ôû lôùp vi chöông trình. thanh ghi ñöôïc naïp töø bus nhaäp. Khi CK xaùc laäp. OE phaûi ñöôïc xaùc laäp vaø giöõ ôû traïng thaùi naøy ñuû laâu ñeå ñöa thoâng tin leân bus oån ñònh.1 (a) moâ taû moät thanh ghi 8 bit ñöôïc noái vôùi moät bus nhaäp vaø moät bus xuaát.1 b) trình baøy moät thanh ghi 16 bit vôùi 2 bus xuaát . Keá ñeán ñöôøng CK cuûa R ñöôïc xaùc laäp ñeå naïp cho R thoâng tin naøy. Ngöôïc laïi khi OE ñöôïc xaùc laäp. Bình thöôøng 2 tín hieäu naøy ôû traïng thaùi tónh nhöng thænh thoaûng chuùng ñöôïc xaùc laäp.1 (a) chi tieát moät thanh ghi 8-bit noái vôùi moät bus nhaäp vaø moät bus xuaát b) kyù hieäu cuûa moät thanh ghi 16 – bit vôùi moät bus nhaäp vaø 2 bus xuaát Neáu coù moät thanh ghi khaùc. Khi CK khoâng xaùc laäp. moãi bus ñöôïc ñieàu khieån bôiû moät tín hieäu OE khaùc nhau Nguyeãn Höõu Loäc Khoa Vaät Lyù . thanh gi naøy coù theå truyeàn thoâng tin ñeán R. Ñeå thöïc hieän ñieàu naøy. Thanh ghi coù hai tín hieäu ñieàu khieån. Khi OE khoâng xaùc laäp. Thanh ghi bao goàm 8 flip flop loaïi D. noäi dung cuûa thanh ghi ñöôïc naïp neân bus xuaát ( thanh ghi xuaát thoâng tin leân bus ) Hình 4. R chaúng haïn.Caán Truùc Maùy Tính -92- Hình 4. noäi dung cuûa thanh ghi bôûi caùc tín hieäu treân Bus. Hình 4.

2: Sô ñoà khoái cuûa 1 CPU ñôn giaûn cuûa moät maùy tính ñieän töû thieát keá theo phöông phaùp vi chöông trình hoaù. MOÄT VÍ DUÏ VEÀ VI CHÖÔNG TRÌNH: -93- Hình 4. Ñeå thöïc hieän moät leänh coäng (ADD) caàn moät heä toái thieåu caùc pheùp vi toaùn: Kyù töï gôïi nhôù Ghi chuù MAR-M Noái MAR vôùi BUS M MBR-M Noái MBR vôùi BUS M PC-D Noái PC vôùi BUS D IA-D Noái IA (cuûa IR) vôùi BUS D AC-D Noái Accumulator vôùi BUS D MTS Noái BUS M vôùi BUS S qua ALU DTS Noái BUS D vôùi BUS S qua ALU S-MAR Noái BUS S vôùi MAR S-MBR Noái BUS S vôùi MBR S-PC Noái BUS S vôùi PC S-IR Noái BUS S vôùi IR Nguyeãn Höõu Loäc Khoa Vaät Lyù .Caán Truùc Maùy Tính II.

Xaây döïng keát caáu cuûa heä thoáng coù theå quyeát ñònh trong giai ñoaïn cuoái cuûa quaù trình thieát keá VI LEÄNH PC-MAR |ADDR|MBR (MBR)IR DECODE (IA)MAR |DATA|MBR MBR+A PC+1 Nguyeãn Höõu Loäc Khoa Vaät Lyù .Ñaùnh ñòa chæ thoâng soá hoaù Öu ñieåm: Giaûm sai laàm logic .Caán Truùc Maùy Tính S-AC R W PLUS Noái BUS S vôùi AC Ñoïc noäi dung trong Mem ra MBR Vieát noäi dung töø MBR vaøo Mem Coäng noäi dung coù treân BUS D vaø BUSM taïi ALU vaø ñöa ra BUS S ONE Noái BUS D vôùi BUS S qua ALU coäng 1 JMP Nhaûy ñeán ñòa chæ trong leänh sau neáu A=0 JOPC Nhaûy ñeán ñòa chæ cuûa maõ leänh (giaûi maõ leänh) Hình 4.3: heä toái thieåu caùc pheùp vi toaùn MEM R MTS JOPC DTS R IAD SMAR MBRM SIR Nhaûy ALU DTS BUSM BUSD PCD BUSS SMAR Ñòa chæ -94- PLUS MBRM ACD SAC ONE PCD SPC Hình 4.Ñaùnh ñòa chæ chæ soá hoaù .4: Vi chöông trình thöïc hieän leänh ADD Söû duïng caùc phöông phaùp vieát chöông trình: .Coù khaû naêng moâ phoûng nhieàu thieát bò coù chöùc naêng khaùc nhau baèng 1 maùy .Moùc noái chöông trình con .

tröôùc tieân laø Intel. 1. tröø nhöõng ngöôøi laäp trình chuyeân nghieäp. Cuoái cuøng. Ñaëc tính naøy hôn nöõa coøn lôùp ngöôøi söû duïng laäp vi chöông trình. Caùc CPU naøy ñöôïc duøng ñeå minh hoïa yù töôûng thieát keá moät maùy tính nhö laø moät chuoãi caùc lôùp maùy. Ngoaøi ra. chöông naøy chuû yeáu xöû lyù nhöõng leänh vaø caáu truùc maø caùc chöông trình cuûa ngöôøi söû duïng duøng ñeán (nghóa laø chöông trình öùng duïng). ngöôøi söû duïng (khoâng phaûi ngöôøi cheá taïo maùy) khoâng theå vieát chöông trình cho maùy lôùp 1. Caùc khía caïnh veà caáu truùc vaø nhöõng leänh lieân quan ñeán ngöôøi vieát heä ñieàu haønh seõ bò boû qua hoaëc ñöôïc gaùc laïi cho tôùi khi vaán ñeà ñöôïc baøn ñeán trong chöông 6. ôû ñaây khoâng cung caáp moät moâ taû hoaøn toaøn ñaày ñuû. Muïc ñích cuûa vieäc nghieân cöùu hoï CPU hieän coù naøy laø nhaèm trình baøy nhöõng yù töôûng ñöôïc thaûo luaän ôû ñaây coù theå ñöôïc aùp duïng nhö theá naøo vôùi theá giôùi thöïc. söï phöùc taïp raát lôùn cuûa caáu truùc lôùp 1 cuõng ñuû laøm haàu heát nhöõng ngöôøi laäp trình e ngaïi. Caùc maùy naøy seõ ñöôïc so saùnh vaø ñoái chieáu theo nhieàu caùch khaùc nhau ñeå trình baøy nhöõng choïn löïa khaùc nhau cuûa caùc nhaø thieát keá khaùc nhau. do khoâng coù moät maùy naøo coù söï baûo veä phaàn cöùng ôû lôùp 1. Nhöõng ñaëc tính khaùc nhau veà caáu truùc cuûa chuùng seõ ñöôïc khaûo saùt vaø thoâng tin veà laäp trình treân chuùng cuõng ñöôïc giôùi thieäu taïi nhöõng ñieåm caàn thieát. vaø do vaäy CPU naøy ñöôïc söû duïng roäng raõi haàu nhö treân khaép theá giôùi. ngay treân nhöõng maùy ngöôøi söû duïng coù theå vi laäp trình. Do bôûi treân nhieàu maùy. Nguyeãn Höõu Loäc Khoa Vaät Lyù . neân khoâng theå cho pheùp moät ngöôøi söûa sai (debug) caùc vi chöông trình môùi trong khi moät ngöôøi khaùc ñang söû duïng maùy. CAÙC THÍ DUÏ VEÀ LÔÙP MAÙY QUI ÖÔÙC: Thay vì coá gaéng ñònh nghóa moät caùch chính xaùc lôùp maùy qui öôùc laø gì (coù leõ khoâng theå ñònh nghóa ñöôïc). Tuy nhieân. I. Hoï 8088 cuûa Intel : Baét ñaàu thaûo luaän veà lôùp maùy qui öôùc vôùi chip 8088 cuûa Intel laø thích hôïp vì ñaây laø boä oùc cuûa caùc maùy IPM PC vaø nhöõng maùy moâ phoûng theo. ngoân ngöõ maùy lôùp 2 ñöôïc phaùt trieån tröôùc baát kyø moät ngoân ngöõ maùy naøo khaùc vaø vaãn ñöôïc xem laø moät ngoân ngöõ maùy phoå bieán. haõy tham khaûo nhöõng taøi lieäu ñöôïc caùc nhaø cheá taïo ra chuùng xuaát baûn. Theo lòch söû. chuùng ta seõ giôùi thieäu lôùp maùy naøy baèng caùch khaûo saùt caùc ví duï.Caán Truùc Maùy Tính -95- CHÖÔNG 5: LÔÙP MAÙY QUY ÖÔÙC Chöông naøy giôùi thieäu lôùp maùy qui öôùc (lôùp 2) vaø thaûo luaän nhieàu khía caïnh veà caáu truùc cuûa lôùp naøy. Ñeå hieåu thoâng suoát veà taát caû chi tieát cuûa caùc CPU. Hôn nöõa. vi chöông trình ñöôïc ñaët trong boä nhôù chæ ñoïc.

döõ lieäu. Moãi thanh ghi phaân ñoaïn troû tôùi moät nôi naøo ñoù trong khoâng gian ñòa chæ 220 byte. Töông töï. Vôùi boä nhôù 220 byte. neáu thanh ghi naøy troû ñeán ñòa chæ 96000 vaø boä ñeám chöông trình coù giaù trò 1024. ñaùnh soá lieân tuïc baét ñaàu töø 0 nhö trình baøy trong hình 5. nhö trình baøy trong hình 5. Giaûi phaùp naøy ñöa ra 4 thanh ghi phaân ñoaïn (segment): maõ.1. Chip 8088 coù theå ñòa chæ hoùa 220 byte. Ñeå giaûi quyeát vaán ñeà naøy. ngaên xeáp vaø phuï (code. taát caû vieäc tìm naïp leänh ñeàu coù lieân quan ñeán thanh ghi phaân ñoaïn maõ. neân caùc soá 20 bit roõ raøng khoâng thuaän tieän. leänh keá tieáp seõ ñöôïc tìm naïp töø ñòa chæ 97024. moãi thanh ghi phaân ñoaïn chöùa moät ñòa chæ boä nhôù troû tôùi neàn (base) cuûa moät phaân ñoaïn 64K. Töø khoâng nhaát thieát baét ñaàu ôû byte chaün maëc duø vôùi caùc töø baét ñaàu ôû byte chaün. Thí duï. Caùc leänh coù theå hoaït ñoäng treân caùc byte 8 bit hoaëc treân caùc töø 16 bit. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Vôùi giaù trò naøy cuûa thanh ghi phaân ñoaïn maõ.Caán Truùc Maùy Tính -96- Hình 5. Ñeå truy xuaát moät leänh ôû ngoaøi taàm naøy. 8088 vaø 8086 gioáng heät nhau neân moïi ñieàu chuùng ta noùi veà 8088 cuõng aùp duïng ñöôïc cho 8086. Vì caùc thanh ghi vaø moïi thöù khaùc cuûa maùy ñeàu duøng caùc töø 16 bit. caùc nhaø thieát keá CPU phaûi caàn ñeán giaûi phaùp goïi laø "queø quaët" (kludge=moät bieät ngöõ cuûa maùy tính chæ moät phöông phaùp khoâng lòch söï vaø vuïng veà ñöôïc duøng ñeå laøm moät ñieàu gì ñoù). Cuoái cuøng. data.1:Caáu truùc boä nhôù cuûa 8088 ÔÛ lôùp maùy qui öôùc. stack vaø extra). thanh ghi phaân ñoaïn phuï (cuõng duøng ñeå truy xuaát phaân ñoaïn döõ lieäu) laø moät thanh ghi döï phoøng khi caàn.2. 8088 thöïc söï caàn caùc ñòa chæ 20 bit ñeå ñòa chæ hoùa boä nhôù. thanh ghi phaân ñoaïn döõ lieäu vaø thanh ghi phaân ñoaïn ngaên xeáp duøng ñeå truy xuaát caùc phaân ñoaïn döõ lieäu vaø phaân ñoaïn ngaên xeáp. caùc leänh ñaët trong taàm ñòa chæ töø 96000 tôùi 161535 ñeàu ñöôïc truy xuaát. ta phaûi thay ñoåi noäi dung thanh ghi phaân ñoaïn maõ. 8086 laøm vieäc coù hieäu quaû hôn.

8088 khoâng ñöôïc trang bò ñeå xöû lí caùc soá thanh ghi phaân ñoaïn chæ troû tôùi nhöõng ñòa chæ laø boäi soá cuûa 16 ñeå 4 bit thaáp nhaát cuûa ñòa chæ laø zero vaø 4 bit naøy khoâng caàn caát vaøo thanh ghi phaân ñoaïn.Caán Truùc Maùy Tính -97- Sô ñoà naøy coù nghóa laø baát cöù luùc naøo. sau ñoù coäng soá thöù 2 vôùi AX vaø cuoái cuøng caát AX vaøo boä nhôù. nhö ñaõ noùi treân. Cuõng coù theå duøng nhöõng thanh ghi khaùc. Theo lyù thuyeát.2: Söû duïng caùc thanh ghi phaân ñoaïn treân 8088 Moät soá trình bieân dòch giôùi haïn chöông trình vôùi chieàu daøi 64K cho vaên baûn chöông trình (nghóa laø caùc leänh) vaø 64K khaùc cho caû döõ lieäu vaø ngaên xeáp nhaèm traùnh toån phí (overhead) thôøi gian keát hôïp vôùi vieäc naïp vaø caát lieân tuïc caùc thanh ghi phaân ñoaïn hoaëc duøng thanh ghi phaân ñoaïn phuï. chöông trình coù theå naïp 1 trong 2 soá nguyeân naøo ñoù vaøo AX. Thí duï ñeå tính toång 2 soá nguyeân. caùc thanh ghi phaân ñoaïn neân coù ñoä roäng 20 bit ñeå troû tôùi baát kyø ñòa chæ naøo trong khoâng gian ñòa chæ 220 byte. Thanh ghi AX chuû yeáu ñöôïc duøng cho caùc pheùp toaùn soá hoïc.3 ). Tuy nhieân. 8088 coù 14 thanh ghi 16 bit ( hình 5. nhöng caùc leänh töông öùng ñeå thöïc hieän pheùp toaùn seõ daøi hôn vaø chaäm hôn so vôùi nhöõng leänh duøng thanh ghi AX. Hình 5. caùc thanh ghi phaân ñoaïn chæ chöùa 16 bit cao cuûa ñòa chæ 20 bit. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Nhö vaäy. 256K boä nhôù ñeàu coù theå truy xuaát ñöôïc maø khoâng phaûi thay ñoåi moät thanh ghi phaân ñoaïn naøo caû.

Khi duøng phöông phaùp ñòa chæ hoaù naøy. theo sau laø boä ñeám chöông trình PC duøng ñeå troû tôùi leänh keá tieáp (lieân quan tôùi vò trí baét ñaàu cuûa phaân ñoaïn maõ). BX.CX. thanh ghi naøy chöùa nöûa cao cuûa moät tích 32 bit hoaëc nöûa cao cuûa soá bò chia 32 bit. Thanh ghi SI vaø DI ñöôïc duøng cho caùc thao taùc chuoãi. voøng laëp keát thuùc. thanh ghi CX chöùa soá ñeám trong caùc leänh voøng laëp. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Keá tieáp laø 4 thanh ghi phaân ñoaïn. Thí duï. DX laø moät thanh ghi môû roäng cuûa AX trong caùc leänh nhaân vaø chia.DX) ñeàu coù nöûa thaáp vaø nöûa cao. Moät thao taùc chuoãi ñieån hình caàn coù ñòa chæ nguoàn xaùc ñònh bôûi thanh ghi SI trong phaân ñoaïn döõ lieäu vaø ñòa chæ ñích xaùc ñònh bôûi thanh ghi DI trong phaân ñoaïn phuï. Thanh ghi BP vaø SP thöôøng ñöôïc duøng ñeå ñòa chæ hoaù stack. BP troû tôùi ñaùy cuûa khung ngaên xeáp hieän taïi vaø SP troû tôùi ñænh cuûa khung ngaên xeáp. Ñeå laëp laïi moät voøng laëp n laàn. CX ñöôïc giaûm 1 cho ñeán khi CX baèng zero. Bieán cuïc boä cuûa thuû tuïc hieän taïi thöôøng ñöôïc ñòa chæ hoaù baèng caùch cung caáp böôùc nhaûy (offset) cuûa bieán töø BP (bôûi vì bieán cuïc boä khoâng theû chæ roõ ñòa chæ lieân quan tôùi SP). Söû duïng caùc thanh ghi theo kieåu naøy laø daáu veát coøn toàn taïi cuûa caùch laøm vieäc trong 8088 cuõ (CPU 8 bit). CX ñöôïc naïp giaù trò n sau moãi laàn laëp. Moãi thanh ghi 16 bit naøy (AX. chuùng ñeàu coù theå ñöôïc ñòa chæ hoaù rieâng leû.3: Caùc thanh ghi 8088 Thanh ghi BX tieâu bieåu duøng ñeå chöùa con troû ( pointer ) troû ñeán boä nhôù. leänh cho pheùp di chuyeån 1 soá byte töø nguoàn tôùi ñích.Caán Truùc Maùy Tính -98- (a) Hình 5. nhö ñaõ moâ taû tröôùc ñaây. chuùng hình thaønh moät taäp 8 thanh ghi 1 byte coù theå duøng vôùi leänh thao taùc treân caùc ñaïi löôïng 1 byte.

Caán Truùc Maùy Tính -99- Hai thanh ghi cuoái cuøng laø con troû chöông trình IP (instruction pointer) vaø caùc côø (flag). Caùc bit A vaø C bieåu thò soá nhôù xuaát hieän ôû giöõa vaø cuoái toaùn haïng. Nhieàu leänh tham chieáu 1 hoaëc 2 toaùn haïng (operand). Trong hình 5. bit Z ñöôïc thieát laäp laø 1 khi keát quaû baèng zero vaø bò xoùa veà 0 khi keát quaû khaùc zero.4) laø thanh ghi môùi. Moät caùch toùm taét. tröôøng dst laø ñích cuûa thoâng tin vaø thöôøng bò thay ñoåi bôûi leänh. Nhöõng bieán theå naøy ñöôïc phaân bieät baèng moät bit trong leänh. leänh INC coäng theâm 1 vaøo toaùn haïng. hoaëc trong caùc thanh ghi hoaëc trong boä nhôù.5. Thí duï. Moät soá leänh coù vaøi bieán theå lieân quan maät thieát. caùc bit coù yù nghóa nhö sau: Bit D xaùc ñònh höôùng (direction) cuûa caùc thao taùc chuoåi. Boä ñeám chöông trình troû tôùi leänh keá tieáp seõ ñöôïc thöïc hieän. Nhoùm ñaàu tieân chöùa caùc leänh di chuyeån döõ lieäu beân trong maùy . 1 cho keát quaû aâm. Ñeå thuaän tieän. Bit I cho pheùp ngaét. Hình 5. Thaät ra ñaây khoâng phaûi laø thanh ghi bình thöôøng maølaø 1 taäp hôïp caùc bit coù theå ñöôïc thieát laäp (set). Ñoái vôùi pheùp nhaân Nguyeãn Höõu Loäc Khoa Vaät Lyù . vaø v. treân haàu heát caùc maùy khaùc chuùng ñöôïc goïi laø boä ñeám chöông trình vaø töø traïng thaùi chöông trình PSW (program status word).4: Thanh ghi caùc côø cuûa 8088 Caùc bit coøn laïi thöôøng ñöôïc goïi laø caùc maõ ñieàu kieän (condition code) bôûi vì chuùng ñöôïc thieát laäp vaø xoùa bôûi nhöõng leänh khaùc nhau tuøy thuoäc vaøo nhöõng ñieàu kieän khaùc nhau xaûy ra (keát quaû aâm. moät bieán theå hoat ñoäng treân caùc töø 16-bit vaø moät soá bieán theå hoaët ñoäng treân caùc byte 8-bit. ta seõ chia caùc leänh thaønh nhieàu nhoùm. nhöng moät soá trong chuùng ñöôïc duøng cho nhöõng chip keá thöøa. Bit T cho pheùp chaïy chöông trình töøng böôùc ñeå theo doõi. Haàu heát caùc leänh ñeàu coù nhieàu daïng maõ hoaù khaùc nhau tuyø thuoäc vaøo baûn chaát cuûa caùc toaùn haïng.v… ). zero. xoùa (clear) vaø kieåm tra bôûi nhöõng leänh khaùc nhau. coù theå xöû lyù vôùi bit coù daáu hoaëc khoâng. giöõa caùc thanh ghi. caû soá coù daáu vaø khoâng coù daáu. chuùng thöôøng thay ñoåi giöõa leänh naøy vôùi leänh khaùc vaø chuùng ta seõ khoâng baøn theâm ôû ñaây. Thanh ghi caùc côø (xem hình 5. caùc leänh dòch bit coù theå dòch traùi hoaëc dòch phaûi. Bit 0 ñöôïc thieát laäp khi keát quaû cuûa pheùp toaùn soá hoïc bò traøn.5. 0 cho keát quaû döông. tröôøng scr laø nguoàn cuûa thoâng tin vaø khoâng bò thay ñoåi. Bit S ñöôïc thieát laäp bôûi caùc leänh soá hoïc. Leänh ADD coäng nguoàn vaøo ñích. Coù nhöõng quy luaät cho pheùp moät toaùn haïch naøo ñoù laø nguoàn hay laø ñích . Thí duï. Ña soá leänh ñeàu coù 2 bieán theå. bit P laø bit kieåm tra chaün leû (parity) keát quaû cuûa moät leänh soá hoïc. Traùi laïi. Coù 7 bit khoâng ñöôïc söû duïng trong 8088. Cuoái cuøng. Nhoùm thöù 2 thöïc hieän caùc pheùp tính soá hoïc. boä nhôù vaø ngaên xeáp. Taäp leänh cuûa 8088 ñöôïc lieät keâ trong hình 5. Töông töï.

Nhoùm thöù 3 thöïc hieän caùc pheùp tính soá BCD (binary-coded decimal). Duø daïng löu tröõ naøy khoâng coù hieäu quaû nhöng traùnh ñöôïc söï caàn thieát phaûi ñoåi soá thaäp phaân sang nhò phaân roài sau ñoù phaûi ñoåi laïi thaønh thaäp phaân ñeå xuaát keát quaû. xöû lyù töøng byte nhö laø hai nibble (nöûa byte)4 bit. Moät vaøi keát hôïp cuõng ñöôïc cung caáp. Keát quaû cuûa caùc leänh kieåm tra vaø so saùnh ñöôïc caát trong nhöõng bit khaùc nhau cuûa thanh ghi côø. sau ñoù thöïc hieän nhaûy döïa vaøo keát quaû sinh ra. Caùc toå hôïp bit töø 1010 tôùi 1111 khoâng ñöôïc duøng . caùc bit trong thanh ghi côø ). moät soá nguyeân 16-bit coù theå chöùa moät soá thaäp phaân töø 0 ñeán 9999. Jxx nghóa laø taäp caùc leänh nhaûy coù ñieàu kieän tuøy thuoäc vaøo keát quaû cuûa pheùp so saùnh tröôùc ( nghóa laø. Moãi nibble chöùa moät soá thaäp phaân (töø 0 ñeán 9). Caùc leänh ñaïi soá logic vaø dòch / quay thao taùc vôùi caùc bit trong 1 töø hoaëc 1 byte theo nhieàu caùch khaùc nhau. Nhöõng leänh naøy ñöôïc duøng ñeå thöïc hieän caùc pheùp tính soá hoïc treân caùc soá BCD.Caán Truùc Maùy Tính -100- chia. tích soá hoaëc soá bò chia 32-bit ñöôïc caát trong AX (chöùa phaàn thaáp) vaø DX (chöùa phaàn cao). Hình 5. Nguyeãn Höõu Loäc Khoa Vaät Lyù .5 taäp leänh cuûa 8088 Hai nhoùm leänh keá tieáp thöïc hieän pheùp kieåm tra vaø so saùnh.

byte naøy laøm cho leänh ñöôïc laëp laïi cho tôùi khi thoûa maõn moät ñieàu kieän naøo ñoù. vaø chuùng ta ñaõ ñeà caäp ñeán moät tieàn toá. Hình 5. toaùn haïng kia khoâng ôû trong boä nhôù. II. Vì vaäy toàn taïi nhöõng leänh coäng 2 thanh ghi. vaø v. neáu 1 toaùn haïng ôû trong boä nhôù. Nhieàu leänh chöùa hoaëc chæ roõ vò trí cuûa döõ lieäu ñöôïc leänh söû duïng. Nhìn chung. Nhöõng leänh naøy coù theå ñöôïc môû ñaàu baèng 1 byte ñaëc bieät goïi laø REP. xuaát / nhaäp vaø döøng CPU. 8088 ( vaø caû 80286. caát.coäng thanh ghi vôùi boä nhôù Nguyeãn Höõu Loäc Khoa Vaät Lyù . 80386 ) coù moät soá leänh tieàn toá ( prefix ). Thí duï leänh so saùnh 2 kyù töï xem chuùng coù gioáng nhau khoâng caàn phaûi xaùc ñònh roõ caùc kyù töï naøo ñöôïc so saùnh. CAÙC KHUOÂN DAÏNG LEÄNH Chöông trình bao goàm moät chuoãi caùc leänh. REP laøm cho leänh theo sau tieàn toá naøy ñöôïc laëp laïi. treân moät soá maùy khaùc coù theå coù 2 hoaëc 3 chieàu daøi khaùc nhau. vôùi caùc leänh 2 toaùn haïng. baèng hoaëc daøi hôn chieàu daøi cuûa 1 töø.Caán Truùc Maùy Tính -101- 8088 coù vaøi leänh naïp. Nhöõng leänh naøy bao goàm caùc leänh bieán ñoåi. so saùnh vaø queùt chuoãi caùc kí töï hoaëc caùc töø. Moãi tieàn toá naøy laø moät byte ñaëc bieät thöôøng ñöùng tröôùc leänh. caùc khoái döõ lieäu tuøy yù coù theå ñöôïc di chuyeån.v… Nhoùm cuoái cuøng laø nhöõng leänh hoãn ñoän khoâng thích hôïp trong moät nhoùm naøo caû. Hôn nöõa caùc leänh coù theå coù chieàu daøi ngaén hôn. nhö CX chaúng haïn.6: 3 khuoân daïng chæ thò tieâu bieåu Thí duï veà caùc khuoân daïng leänh Hoï 8088/80286/80386 cuûa Intel Vôùi caùc CPU cuûa Intel. Baèng caùch naøy. Treân moät soá maùy lôùp 2. so saùnh. trong ñoù CX bò giaûm 1 sau moãi laàn laëp cho tôùi khi baèng 0. Nhöõng tieàn toá khaùc ñöôïc duøng ñeå buoäc leänh phaûi tìm naïp toaùn haïng cuûa leänh töø ngaên xeáp hoaëc töø phaân ñoaïn phuï thay vì töø phaân ñoaïn döõ lieäu. taát caû caùc leänh coù cuøng chieàu daøi. moãi leänh xaùc ñònh moät ñoäng taùc cuï theå naøo ñoù. Vaán ñeà chung cho bieát caùc toaùn haïng ôû ñaâu ñöôïc goïi laø ñònh ñòa chæ hay ñòa chæ hoùa hay ñaùnh ñòa chæ ( addressing ) seõ ñöôïc thaûo luaän trong phaàn sau nöõa.tình huoán hoaøn toaøn khaùc vaø raát ít theo quy luaät. Hình 5. di chuyeån. Moät phaàn cuûa leänh ñöôïc goïi laø maõ thao taùc (operation code ) hoaëc opcode cho bieát ñoäng taùc gì ñöôïc thöïc hieän.6 trình baøy vaøi khuoân daïng ( format ) tieâu bieåu cho caùc leänh lôùp 2. LOCK daønh rieâng bus cho toaøn boä leänh ñeå cho pheùp ñoàng boä ña xöû lí. REP.

Treân 80386. 2 hoaëc 4 byte khaùc döôïc duøng laøm toaùn haïng haèng soá ( thí duï ñeå chuyeån soá 100 vaøo thanh ghi). Treân 80386. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Moät soá caùc kieäu naøy caàn theâm 1 byte. 2 hoaëc 4 byte nöõa ñeå xaùc ñònh ñòa chæ boä nhôù vaø 1. index. Moät caùch logic. III. nhöng vôùi 80386 caùc opcodeù-byte ñeàu ñaõ ñöôïc taän duïng heát.nhöng khoâng toàn taïi leänh coäng töø nhôù naøy vôùi töø nhôù kia. CX. vì theá opcode 15 ñöôïc duøng nhö laø phöông tieän ñeå ñi tôùi caùc opcode 2 byte. Moãi leänh coù theå coù 6 tröôøng. trong caùc phaân ñoaïn 32 bit. Treân nhieàu maùy. Theo sau byte opcode trong haàu heát caùc leänh laø 2 byte thöù 2 cho bieát toaùn haïng ôû ñaâu. Treân 8088 vaø 80286. Vì chæ coù 8 bit neân byte thöù 2 ñöôïc chia thaønh 1 tröôøng kieåu 2 bit vaø 2 tröôøng thanh ghi 3 bit . KIEÅU ÑÒNH VÒ ÑÒA CHÆ : Caùc leänh coù theå ñöôïc phaân loaïi theo soá ñòa chæ söû duïng.21. BX. BP hoaëc SP caàn ñöôïc chæ roõ nhö thanh ghi khaùc. SI. töông töï vôùi 2 tröôøng kieåu/thanh ghi trong hình 5. moãi tröôøng coù taàm töø 0 tôùi 5 byte. leänh ngaén nhaát vaãn daøi 1 byte. nhöng caùc quy luaät maõ hoaù caám moät soá toå hôïp naøo ñoù vaø duøng chuùng cho nhöõng tröôøng hôïp ñaëc bieät. PDP-11 cho pheùp ñieàu naøy nhö laø moät keát quaû tröïc tieáp caûu tính tröïc giao. Moät caùch toång quaùt. vieäc thöïc hieän pheùp toaùn soá hoïc chæ coù 1 ñòa chæ vaø ngöôøi ta söû duïng 1 thanh ghi ñaëc bieät goïi laø thanh chöùa (accumulator). leänh ngaén nhaát daøi 1 byte vaø leänh daøi nhaát coù 9 byte ( keå caû caùc tieàn toá REF. DX. Nhö vaäy chæ coù 4 caùch ñeå ñòa chæ hoaù caùc toaùn haïng (PDP-11 coù 8) vaø 1 trong caùc toaùn haïng luoân luoân phaûi laø thanh ghi. Moät leänh coäng thanh ghi 1 vôùi thanh ghi 2 ñöôïc xeáp vaøo loaïi coù 2 ñòa chæ bôûi vì leänh phaûi xaùc ñònh caùc thanh ghi naøo tham gia vaøo pheùp coäng. Neân nhôù raèng taäp caùc thanh ghi ñöôïc ñaùnh soá cuûa CPU thöïc teá hình thaønh moät boä nhôù toát ñoä cao vaø xaùc ñònh moät khoâng gian ñòa chæ. nhöng vôùi vieäc coäng theâm caùc tieàn toá.Caán Truùc Maùy Tính -102- vaø coäng boä nhôù vôùi thanh ghi. caùc kieåu hoaøn toaøn khaùc vôùi caùc kieåu treân 8088 vaø80286. Sô ñoà naøy khoâng phaûi laø sô ñoà lyù töôûng nhöng ñôn giaûn laø vì chuùng khoâng coøn bit. gioáng nhö leänh coäng 2 töø nhôù phaûi cho bieát caùc töø nhôù naøo ñöôïc coäng. Treân 8088 moãi opcode laø 1 byte. 2 vaø 3 ñòa chæ. thanh ghi naøy cung lôùp 1 toaùn haïng. moät leänh coù theå daøi tôùi 17 byte. goïi laø SIB (scale. moät thanh ghi baát kyøtrong caùc thanh ghi AX. Caáu truùc duy nhaát trong tröôøng opcode laø vieäc duøng bit thaáp trong moät soá leänh ñeå cho bieát byte /töø vaø duøng bit keá beân ñeå cho ñòa chæ boä nhôù (neáu coù) laø nguoàn hay ñích. LOCK vaø caùc tieàn toá thay theá phaân ñoaïn ). Ngoaøi ra moät soá leänh coù 1. kích thöôùc cuûa toaùn haïng vaø kích thöôùc cuûa ñòa chæ. base ) ñeå cho theâm moät ñaëc tính kyõ thuaät nöõa. DI. caùc leänh coù theå coù 1.

Ñònh ñòa chæ tröïc tieáp Phöông phaùp ñôn giaûn khaùc ñeå xaùc ñònh moät toaùn haïng laø cung lôùp ñòa chæ cuûa töø nhôù chöùa toaùn haïng. Trong moät leänh vôùi ñòa chæ 3 bit (nghóa laø tröôøng thanh ghi). 16 hoaëc 32 bit). chuùng coù moät taäp lôùn caùc leänh phaân bieät trong ñoù moät trong hai toaùn haïng laø töùc thôøi. Leänh coäng xaùc ñònh ñòa chæ m coù keát quaû laø Accumulator:= accumulator + memory[m] Caùc leänh coäng coù 2 ñòa chæ söû duïng 1 ñòa chæ laø nguoàn vaø ñòa chæ kia laø ñích . ADDQ vaø CMPI cho pheùp caùc leänh töùc thôøi ñeå ñöôïc maõ hoùa moät caùch hieäu quaû hôn. 9 opcode khaùc nhau söû duïng cho leänh Add. cuõng coù nhöõng khaû naêng khaùc vaø trong phaàn tieáp theo chuùng ta seõ khaùm phaù ra ñieàu ñoù. Moät caùch toång quaùt. Noäi dung cuûa 2 nguoàn ñöôïc coäng vôùi nhau vaø caát keát quaû vaøo ñích. ñòa chæ naøo laø tröïc tieáp seõ ñöôïc thaûo luaän sau. Ñònh ñòa chæ töùc thôøi: Caùch ñôn giaûn nhaát ñeå 1 leänh xaùc ñònh 1 toaùn haïng laø phaàn ñòa chæ cuûa leänh chöùa chính toaùn haïng ñoù. sau ñoù coäng nguoàn vôùi ñích: Destination := destination + source Caùc leänh coù 3 ñòa chæ cho bieát 2 nguoàn vaø 1 ñích. coù 2 phöông phaùp: söû duïng caùc Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ñònh ñòa chæ töùc thôøi (immediate addressing) coù coâng duïng khoâng yeâu caàu moät tham chieáu boä nhôù ñeå tìm naïp toaùn haïng. Tuy nhieân. moät soá leänh chæ cho pheùp haèng soá laø 8 bit hoaëc 16 bit. nhöng treân 68020 vaø 68030 caû 3 loaïi chieàu daøi ñeàu ñöôïc pheùp. caùc leänh ñaët bieät nhö ADDI.Caán Truùc Maùy Tính -103- Treân nhöõng maùy naøy ñòa chæ thöôøng laø ñòa chæ cöûa töø nhôù m. Ñieåm baát lôïi laø toaùn haïng bò giôùi haïn bôûi moät soá ñaët vöøa trong moät tröôøng ñòa chæ. Daïng naøy ñöôïc goïi laø ñònh ñòa chæ tröïc tieáp (Direct addressing ). Thöïc teá. moät toaùn haïng nguoàn baát kyø coù theå laø haèng soá. Chi tieát veà caùch thöùc maùy tính nhaän bieát ñòa chæ naøo laø töùc thôøi. Moät toaùn haïng nhö vaäy ñöôïc goïi laø toaùn haïng töùc thôøi (immediate operand) bôûi vì toaùn haïng ñöôïc tìm naïp töï ñoäng töø boä nhôù cuøng luùc vôùi leänh vaø ñöôïc söû duïng ngay laäp töùc. khoâng phaûi laø ñòa chæ hoaëc thoâng tin khaùc moâ taû toaùn haïng ñoù ôû ñaâu. giôùi haïn cuûa caùc toaùn haïng laø 3 bit. Ngoaøi ra. Chuùng ta ñaõ ít chuù yù ñeán caùch caùc bit cuûa 1 tröôøng ñòa chæ ñöôïc phieân dòch ñeå tìm toaùn haïng. Thay vaøo ñoù. ôû ñoù toaùn haïng ñöôïc ñònh vò. 5 trong soá ñoù cho pheùp coù toaùn haïng töùc thôøi. 2. haïn cheá nhöõng lôïi ñieåm cuûa caùch ñònh ñòa chæ naøy. Caùc CPU cuûa Intel khoâng coù kieåu ñònh ñòa chæ cho caùc toaùn haïng töùc thôøi. 680x0 coù kieåu ñònh ñòa chæ töùc thôøi. 1. tuøy thuoäc vaøo caùch chæ ra ñích vaø chieàu daøi cuûa toaùn haïng töùc thôøi (8. Treân 68000.

Caùc maùy ñöôïc thieát keá vôùi caùc thanh ghi vì 2 lyù do : Nguyeãn Höõu Loäc Khoa Vaät Lyù . 8088 vaø 80286 söû duïng caùc ñòa chæ tröïc tieáp 16 bit. 860x0 coù 2 daïng ñònh ñòa chæ tröïc tieáp. Löu yù laø trong moïi tröôøng hôïp. trong daïng ñònh ñòa chæ naøy. vaø do vaäy aùp duïng cho taát caû caùc leänh coù moät hoaëc nhieàu tröôøng toaùn haïng. vieäc söû duïng 2 khoâng gian ñòa chæ seõ roõ hôn. moät daïng vôùi ñòa chæ 16 bit vaø moät daïng vôùi ñòa chæ 32 bit. Hình 5. Neáu coù moät leänh thanh ghi töông öùng vôùi moãi moät leänh boä nhôù. Caû 2 daïng naøy ñöôïc xaùc ñònh bôûi caùc giaù trò trong tröôøng MOD 3 bit.Caán Truùc Maùy Tính -104- opcode khaùc nhau hoaëc söû duïng moät kieåu ñònh ñòa chæ ñaëc bieät cho moãi loaïi toaùn haïng. tröôøng ñòa chæ chöùa soá cuûa caùc thanh ghi löu giöõ toaùn haïng. Moät maùy vôùi 16 thanh ghi vaø 65536 töø nhôù thöïc söï coù 2 khoâng gian ñòa chæ.7: Ñòa chæ tröïc tieáp Caùc CPU cuûa Intel ñeàu coù ñònh ñòa chæ tröïc tieáp. moät nöûa soá opcode daønh cho caùc toaùn haïng boä nhôù vaø moät nöûa daønh cho caùc toaùn haïng thanh ghi. 3. Moät bit trong opcode ñöôïc caàn ñeán ñeå ghi roõ khoâng gian ñòa chæ naøo ñöôïc söû duïng. caùc phaân ñoaïn 16 bit ôû cheá ñoä baûo veä. Neáu sau ñoù bit ñöôïc loaïi boû khoûi tröôøng opcode vaø ñöôïc ñaët vaøo tröôøng ñòa chæ. Ngöôøi ta nghó ñeán moät ñòa chæ treân moät maùy nhö vaäy coù 2 phaàn: (a) moät bit cho bieát thanh ghi hoaëc töø nhôù (b) moät tröôøng ñòa chæ cho bieát thanh ghi naøo hoaëc töø nhôù naøo. Do coù ít thanh ghi hôn töø nhôù neân caàn ñòa chæ nhoû hôn vaø nhö vaäy caùc leänh coù daïng khaùc nhau thöôøng ñöôïc duøng cho caùc toaùn haïng thanh ghi vaø caùc toaùn haïng boä nhôù. Bit seõ cho bieát khoâng gian ñòa chæ naøo ñöôïc söû duïng. Ñònh ñòa chæ thanh ghi Khaùi nieäm ñònh ñòa chæ thanh ghi cuõng gioáng nhö ñònh ñòa chæ tröïc tieáp. caùc ñòa chæ tröïc tieáp deàu khoâng bao truøm toaøn boä khoâng gian ñòa chæ . Trong cheá ñoä baûo veä 32 bit. 80386 söû duïng caùc ñòa chæ 16 bit ôû caùc cheá ñoä thöïc vaø aûo. caùc ñòa chæ tröïc tieáp daøi 32 bit. Caùc ñòa chæ trong 64K ñaàu tieân cuûa boä nhôù ñöôïc tham chieáu baèng daïng ngaén trong khi caùc ñòa chæ treân 64K caàn daïng daøi.

Caû 2 chip Intel vaø Motorola ñeàu coù moät löôïng lôùn caùc leänh laáy caùc toaùn haïng töø caùc thanh ghi vaø ñaët keát quaû vaøo moät thanh ghi. 1 hoaëc moät soá voâ haïn cho moãi ñaëc tính (voâ haïn coù nghóa laø nhieàu ñuû ñeå ngöôøi laäp trình khoâng caàn phaûi toán thôøi gian suy nghó phaûi laøm gì neáu ñieàu gì ñoù ñaõ ñöôïc duøng heát ). Ñaùng tieác laø coù 8 hoaëc 16 thanh ghi cuõng laøm phöùc taïp cho vieäc laäp trình do bôûi phaûi taïo ranhieàu quyeát ñònh nhö : caùc toaùn haïng naøo. Noäi dung ôû vò trí 1000 khoâng phaûi laø toaùn haïng maø troû tôùi toaùn haïng vaø vì lyù do naøy. noäi dung taïi vò trí 1000 laø 1510.vander Poel (1968) ñaõ nhaän xeùt moät caùch tinh teá. Neáu 1510 coù trong R1. caùc maùy tính phaûi ñöôïc cung lôùp hoaëc 0. Ñònh ñòa chæ giaùn tieáp duøng con troû trong boä nhôù khoâng thöïc hieän ñöôïc treân baát kyø thanh ghi naøo. Ñònh ñòa chæ giaùn tieáp laø sô ñoà trong ñoù ñòa chæ cho bieät töø nhôù naøo hoaëc thanh ghi naøo chöùa ñòa chæ cuûa toaùn haïng. SI vaø DI ñöôïc söû duïng trong kieåu ñòa chæ giaùn tieáp. caùc keát quaû trung gian naøo ñöôïc giöõ trong boä nhôù chính. 4. Treân 8088 vaø 80286. treân 80386 taát caû caùc thanh ghi ñeàu coù theå söû duïng ñöôïc cho kieåu ñònh ñòa chæ naøy. chæ coù BX. Ñònh ñòa chæ giaùn tieáp Ñònh ñòa chæ tröïc tieáp laøsô ñoà trong ñoù ñòa chæ cho bieát töø nhôù naøo hoaëc thanh ghi naøo chöùa toaùn haïng.L. Thí du coù theå ñaët con troû trong SI vaø chæ ra raèng toaùn haïng ñaët trong boä nhôù taïi ñòa chæ ñöôïc troû tôùi bôûi SI. caùc keát quaû trung gian naøo ñöôïc giöõ trong soá thanh ghi giôùi haïn ñoù vaø caùc toaùn haïng naøo. Thay vaøo ñoù noäi dung cuûa vò trí 1510 ñöôïc tìm naïp vaø ñaët vaøo R1. Hình 5. W. BP. ta goïi laø con troû (pointer). Thí duï xeùt moät leänh naâp moät thanh ghi (chuùng ta seõ goïi laø thanh ghi R1 ) giaùn tieáp töø vò trí nhôù 1000. Caùc boä xöû lyù cuûa Intel ñeàu coù ñònh ñòa chæ giaùn tieáp thoâng qua thanh ghi.Caán Truùc Maùy Tính -105- (a) caùc thanh ghi nhanh hôn boä nhôù chính (b) bôûi vì coù quaù ít thanh ghi neân chæ caàn ít bit ñeå ñòa chæ hoùa chuùng. Noäi dung 16 bit naøy (1510) khoâng ñöôïc ñaët trong thanh ghi R1. ta coù leänh ñòa chæ tröïc tieáp.8: Ñòa chæ giaùn tieáp Tröôùc tieân noäi dung taïi vò trí 1000 ñöôïc tìm naïp vaøo 1 thanh ghi noäi cuûa CPU. Nguyeãn Höõu Loäc Khoa Vaät Lyù .

Caán Truùc Maùy Tính

-106-

68000 cho pheùp ñòng ñòa chæ giaùn tieáp thoâng qua caùc thanh ghi ñòa chæ vaø khoâng coù daïng ñònh ñòa chæ giaùn tieáp naøo khaùc. Treân 68020 vaø 68030 ñònh ñòa chæ giaùn tieáp coøn coù daïng thoâng qua boä nhôù. Ñaây laø moät trong nhöõng khaùc nhau chính giöõa 68000 vaø caùc CPU sau naøy. Moät soá maùy cho pheùp ñònh ñòa chæ giaùn tieáp nhieàu lôùp. ÔÛ kieåu ñònh vò ñòa chæ naøy, ngöôøi ta duøng moät con troû ñeå ñònh vò moät töø nhôù vaø chính töø nhôù naøy troû tôùi moät töø nhôù khaùc vaø vv… Ñòa chæ töùc thôøi, tröïc tieáp, giaùn tieáp vaø ñòa chæ giaùn tieáp nhieàu lôùp bieåu dieãn moät söï tieán trieån trong vieäc ñònh ñòa chæ. Ñònh ñòa chæ töùc thôøi khoâng caàn tham chieáu boä nhôù vì toaùn haïng ñöôïc tìm naïp cuøng luùc vôùi leänh. Ñònh ñòa chæ tröïc tieáp caàn moät tham chieáu boä nhôù ñeå tìm naïp toaùn haïng. Ñònh ñòa chæ giaùn tieáp caàn 2 tham chieáu boä nhôù, moät cho con troû vaø moät cho toaùn haïng. Ñònh ñòa chæ giaùn tieáp nhieàu lôùp caàn ít nhaát 3 tham chieáu boä nhôù, 2 hoaëc nhieàu tham chieáu cho con troû vaø moät cho toaùn haïng. Caùc tham chieáu boä nhôù trong ngöõ caûnh naøy goàm caùc tham chieáu thanh ghi.

5. Ñònh chæ soá
Nhieàu thuaät toaùn caàøn thöïc hieän moät thao taùc naøo ñoù treân moät chuoãi caáu truùc döõ lieäu löu giöõ trong nhöõng vò trí nhôù lieân tieáp. Thí duï xeùt moät khoái n töø maùy chieám caùc vò trí A, A +1, A+2,…,A+n-1 Caùc töø naøy phaûi ñöôïc chuyeån ñeán caùc vò trí B,B+1,B+2,…,B+n-1 Giaû thuyeát raèng maùy coù leänh MOVE A,B Chuyeån noäi dung cuûa vò trí A tôùi vò trí B, ngöôøi ta coù theå thöïc thi leänh naøy vaø thay ñoåi treân chính leänh thaønh MOVE A+1,B+1 Thöïc thi leänh laàn nöõa, sau ñoù laïi thay ñoåi leänh laàn nöõa vaø laäp laïi cho tôùi khi taát caû n töø ñöôïc sao cheùp heát. Maëc duø caùc chöông trình töï thay ñoåi ñöôïc duøng phoå bieán tröôùc kia, nhöng nay ñöôïc xem nhö moät phöông caùch laäp trình dôû. Caùc chöông trình nhö vaäy khoù söûa sai vaø laøm khoù khaên cho vieäc duøng chung moät chöông trình giöõa nhieàu ngöôøi söû duïng trong heä thoáng phaân chia thôøi gian. Vaán ñeà sao cheùp cuõng coù theå ñöôïc giaûi quyeát baèng ñònh ñòa chæ giaùn tieáp. Moät thanh ghi hoaëc moät töø nhôù ñöôïc naïp vôùi ñòa chæ A ; moät thanh ghi hoaëc moät töø nhôù thöù 2 ñöôïc naïp vôùi ñòa chæ B. leänh MOVE duøng 2 thanh ghi naøy laøm caùc con troû. Sau moãi laàn sao cheùp moät töø , caùc con troû ñöôïc taêng theâm 1. Caùc con troû laø moät phaàn cuûa döõ lieäu, khoâng phaûi laø phaàn cuûa chöông trình vaø nhöõng ngöôøi söû duïng khoâng ñöôïc duøng chung ñoàng thôøi.

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-107-

Moät giaûi phaùp khaùc laø coù 1 hoaëc nhieàu thanh ghi, goïi laø thanh ghi chæ soá (Index register) hoaït ñoäng nhö sau. Ñòa chæ coù 2 phaàn: soá cuûa moät thanh ghi chæ soá vaø moät haèng soá. Ñòa chæ cuûa toaùn haïng laø toång cuûa haèng soá vôùi noäi dung cuûa thanh ghi chæ soá. Trong thí duï tröôùc, neáu caû 2 ñòa chæ ñöôïc ñònh chæ soá baèng caùch duøng moät thanh ghi chæ soá chöùa soá nguyeân k, leänh MOVE A, B seõ chuyeån noäi dung cuûa vò trí nhôù A+k tôùi B+k. Baèng caùch khôùi ñoäng thanh ghi chæ soá laø 0 vaø taêng noäi dung thanh ghi naøy leân moät löôïng baèng kích thöôùc cuûa töø sau khi sao cheùp 1 töø, chæ caán moät thanh ghi cho voøng laëp sao cheùp. Hôn nöõa, vieäc taêng thanh ghi seõ nhanh hôn vieäc taêng 1 vò trí nhôù. Ñònh chæ soá (indexing) cuõng thöôøng ñöôïc duøng ñeå ñònh ñòa chæ 1 tröôøng coù offset ñaõ bieát töø vò trí baét ñaàu 1 caáu truùc ñaõ cho. Caùc bieán cuïc boä trong moät thuû tuïc cuõng ñöôïc truy xuaát theo phöông phaùp naøy. Trong thí duï ñaõ cho ôû treân, ngöôøi ta caàn taêng thanh ghi chæ soá moät löôïng ñuùng baèng kích thöôùc cuûa töø sau moãi laàn söû duïng. Nhu caàu taêng hoaëc giaûm thanh ghi chæ soá ngay tröôc hoaëc sau khi söû duïng raát phoå bieán neân 1 soá maùy tính cung lôùp nhöõng leänh hoaëc caùc kieåu ñònh ñòa chæ ñaëc bieät hoaëc thaäm chí caùc thanh ghi chæ soá ñaëc bieät töï ñoäng taêng hoaëc giaûm. Söï thay ñoåi töï ñoäng cuûa moät thanh ghi chæ soá ñöôïc goïi laø töï ñònh chæ soá (autoindexing). Caû 2 chip cuûa Intel vaø Motorola ñeàu coù nhieàu kieåu ñònh ñòa chæ khaùc nhau bao goàm ñònh chæ soá. 680x0 cuõng coù kieåu töï ñònh chæ soá.

6. Ñònh ñòa chæ ngaên xeáp
Chuùng ta ñaõ löu yù raèng vieäc taïo ra caùc leänh maùy caøng ngaén caøng tieát kieäm boä nhôù vaø thôøi gian cuûa CPU. Giôùi haïn cuoái cuøng cuûa vieäc giaûm chieàu daøi ñòa chæ seõ daãn ñeán caùc leänh khoâng coù ñòa chæ, chæ coù opcode. Ñaây laø ñieàu coù theå xaûy ra baèng caùch toå chöùc maùy xung quanh moät caáu truùc döõ lieäu goïi laø ngaên xeáp (Stack). Ngaên xeáp bao goàm caùc phaàn töû döõ lieäu ( töø, kyù töï, bit, vv…) ñöôïc caát theo moät traät töï lieân tieáp trong boä nhôù. Phaàn töû ñaàu tieân ñöôïc caát vaøo ngaên xeáp. Phaàn töû gaàn nhaát ñöôïc caát vaøo stack seõ ôû ñænh cuûa ngaên xeáp. Keát hôïp vôùi moät ngaên xeáp laø moät thanh ghi hoaëc töø nhôù chöùa ñòa chæ cuûa ñænh ngaên xeáp, ñöôïc goïi laø con troû ngaên xeáp (stack pointer). Maët duø ñaõ thaûo luaän veà ngaên xeáp ôû chöông 4, chuùng ta cuõng seõ oân laïi ôû ñaây bôûi vì vieäc söû duïng ngaên xeáp cho caùc pheùp toaùn soá hoïc hoaøn toaøn khaùc vôùi vieäc söû duïng ngaên xeáp ñeå löu giöõ caùc bieán cuïc boä ( dó nhieân coù theå duøng keát hôïp caû 2). Hình 5.9 minh hoïa hoaït ñoäng cuûa ngaên xeáp. Trong hình 5.9(a) ñaõ coù 2 phaàn töû trong ngaên xeáp. Ñaùy cuûa ngaên xeáp ôû vò trí nhôù 1000 vaø ñænh cuûa ngaên xeáp ôû vò trí nhôù 1001. Con troû ngaên xeáp chöùa ñòa chæ cuûa phaàn töû treân ñænh ngaên xeáp, töùc laø 1001 ; nghóa laø troû tôùi ñænh cuûa ngaên xeáp. Trong hình 5.9(b), 6 ñöôïc caát vaøo ngaên xeáp vaø con troû ngaên xeáp chöùa 1002 laø ñænh môùi cuûa ngaên xeáp. Trong hình 5.9(c), 75 ñöôïc caát leân ngaên xeáp, taêng con troû ngaên xeáp leân 1003. Trong hình 5.9(d), 75 ñöôïc laáy ra khoûi ngaên xeáp.

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-108-

Hình 5.9: Hoaït ñoäng cuûa moät ngaên xeáp Caùc maùy tính höôùng ngaên xeáp (stack-oriented) coù leänh caát ( push) caùc noäi dung cuûa vò trí nhôù hoaëc thanh ghi vaøo ngaên xeáp. Moät leänh nhö vaäy phaûi thöïc hieän vieäc sao cheùp phaàn töû ñoù vaø taêng con troû ngaên xeáp. Töông töï, leänh laáy (pop) ñænh cuûa ngaên xeáp ñöa vaøo thanh ghi hoaëc vò trí nhôù phaûi thöïc hieän moät sao cheùp môùi vaøo nôi thích hôïp vaø giaûm con troû ngaên xeáp. Moät soá maùy tính coù ngaên xeáp ñaûo ngöôïc, vôùi nhöõng phaàn töû ñöôïc caát lieân tieáp vaøo nhöõng vò trí thaáp hôn cuûa boä nhôù thay vì caát lieân tieáp vaøo nhöõng vò trí cao hôn nhö trong hình 5.9.

III. LUOÀNG ÑIEÀU KHIEÅN
Luoàng dieàu khieån coù lieân quan tôùi trình töï thöïc thi caùc leänh. Nhìn chung, caùc leänh ñöôïc thöïc hieän laàn löôïc ñöôïc tìm naïp töø nhöõng vò trí lieân tieáp. Caùc leänh goïi thuû tuïc laø nguyeân nhaân laøm thay luoàng ñieàu khieån, döøng thuû tuïc ñang thöïc hieän hieän taïi vaø baét ñaàu thuû tuïc ñöôïc goïi. Ñoàng thöôøng trình (coroutine) lieân quan ñeán thuû tuïc (procedure) vaø laøm cho luoàng ñieàu khieån bò thay ñoåi. Caùc baåy vaø caùc ngaét cuõng laøm cho luoàng ñieàu khieån thay ñoåi khi coù caùc ñieàu kieän ñaëc bieät xaûy ra. Taát caû caùc vaán ñeà naøy seõ ñöôïc thaûo luaän trong caùc phaàn sau.

1. Luoàng ñieàu khieån tuaàn töï vaø caùc leänh nhaûy.
Ña soá caùc leänh khoâng laøm thay ñoåi luoàng ñieàu khieån. Sau khi moät leänh ñöôïc thöïc hieän, leänh tieáp theo sau trong boä nhôù ñöôïc tìm naïp vaø thöïc hieän. Sau moãi moät leänh, boä ñeám chöông trình ñöôïc taêng bôûi chieàu daøi cuûa leänh. Neáu quan saùt treân moät khoaûng thôøi gian daøi so vôùi thôøi gian trung bình cuûa leänh, boä ñeám chöông trình gaàn nhö coù moät haøm tuyeán tính theo thôøi gian. Noùi caùch khaùc, traät töï ñoäng trong ñoù boä xöû lyù thöïc söï thöïc hieän caùc leänh gioáng nhö traät töï trong ñoù caùc leänh xuaát hieän theo söï lieät keâ cuûa chöông trình. Neáu chöông trình chöùa caùc leänh nhaûy, moái lieân heä ñôn giaûn naøy giöõa traät töï trong ñoù caùc leänh ñöôïc thöïc hieän trong boä nhôù vaø traät töï trong ñoù caùc leänh ñöôïc thöïc hieän khoâng coøn ñuùng nöõa. Khi coù maët caùc leänh nhaûy, boä ñeám chöông trình khoâng coøn laø moät haøm taêng ñeàu theo thôøi gian. Keát quaû laø khoù hình dung chuoãi thöïc thi leänh töø baûn danh

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

ñieàu duy nhaát caàn bieát laø laøm gì. chuùng ñeàu laø caùc thuû tuïc. Leänh goïi thuû tuïc cuõng laøm thay ñoåi doøng ñieàu khieån nhö leänh nhaûy nhöng khoâng gioáng. Böùc thö ñoù laøm khai sinh ra cuoäc caùch maïng cho phöông phaùp laäp trình coù caáu truùc. Söï khaùc nhau naøy ñöôïc phaûn aùnh trong caùch maø ñieàu khieån ñöôïc chuyeån giöõa A vaø B. khoâng phaûi ôû phaùt bieåu theo sau laàn trôû veà tröôùc. thuû tuïc B baét ñaàu ñöôïc thöïc thi ôû ñaàu thuû tuïc. vieäc thöïc thi A khoâng phaûi ôû ñaàu thuû tuïc maø ôû phaùt bieåu theo sau lôøi goïi thuû tuïc B. moät trong nhöõng nguyeân lyù cuûa phöông phaùp naøy laø thay theá phaùt bieåu GO TO baèng nhöõng daïng coù caáu truùc hôn cuûa luoàng ñieàu khieån. A duøng leänh goïi thuû tuïc leänh naøy ñaët ñòa chæ quay veà (ñòa chæ cuûa phaùt bieåu theo sau leänh goïi ) vaøo nôi naøo ñoù thí duï vaøo ñænh cuûa ngaên xeáp. Thuû tuïc B tính toaùn trong moät khoaûng thôøi gianvaø sau ñoù trôû veà thuû tuïc A. Tính khoâng ñoái xöùng naûy sinh töø thöïc teá. Hôn nöõa. vieäc thöïc thi B laïi baét ñaàu ôû ñaàu thuû tuïc B. neáu A goïi B nhieàu laàn. ñieàu khieån ñaàu tieân ñöôïc chuyeån töø A tôùi B – goïi – vaø sau ñoù ñieàu khieån ñöôïc chuyeån töø B tôùi A – trôû veà. hoï deã gaây ra loãi. thuû tuïc traû ñieàu khieån trôû veà cho phaùt bieåu hoaëc leänh theo sau leänh goïi. bôûi vì hieäbn thöïc IF. phaàn thaân cuûa thuû tuïc coù theå ñöôïc xem nhö xaùc ñònh moät leänh môùi ôû lôùp cao hôn. Khi ñieàu khieån chuyeån töù A tôùi B . Ñoàng thuû tuïc. goïi. Khi thöïc hieän song coâng vieäc. bôûi vì caû A vaø B ñeàu khoâng phaûi laø chöông trình chính. 3. Khi ngöôøi laäp chöông trình gaëp raéc roái trong vieäc theo doõi chuoãi leänh maø boä xöû lyù seõ thöïc thi. Neáu A chaïy theâm moät khoaûng thôøi gian vaø goïi B laàn nöõa. trong ñoù oâng ñeà nghò neân traùnh duøng phaùt bieåu GO TO. traùi laïi A khoâng bao giôø baét ñaàu laïi töø ñaàu thuû tuïc. Khi A goïi B. Thoaït nhìn coù leõ ta seõ nghó raèng tình huoáng naøy coù tính ñoái xöùng. nhö voøng laäp WHILE. Töø quan ñieåm naøy.Caán Truùc Maùy Tính -109- saùch cuûa chöông trình. Dó nhieân. khoâng caàn bieát caùch thöïc hieän. Ñeå hieåu phaàn maõ chöùa leänh goïi thuû tuïc. Söï quan saùt naøy ñaõ daãn ñöôøng cho Dijkstra (1968) vieát moät thö gaây tranh luaän sau naøy coù töïa ñeà ‘GO TO Statement Considered Harmfull ‘ (phaùt bieåu GO TO ñöôïc xem nhö coù haïi). leänh goïi thuû tuïc ñöôïc xem nhö moät leänh ñôn cho duø coù theå raát phöùc taïp. nhöõng chöông trình naøy bieân dòch thaønh nhöõng chöông trình lôùp 2 chöùa nhieàu leänh nhaûy. Trong höôùng hoaït ñoäng naøy. WHILE vaø nhöõng caáu truùc ñieàu khieån lôùp cao khaùc yeâu caàu vieäc nhaûy. Thuû tuïc Kyõ thuaät quan troïng nhaát ñoái vôùi caùc chöông trình coù caáu truùc laø thuû tuïc. 2. khi ñieàu khieån töø B trôû veà A . B luoân luoân baét ñaàu laïi ôû ñaàu thuû tuïc moãi laàn ñöôïc goïi. Trong chuoãi goïi thoâng thöôøng. coù söï phaân bieät roõ giöõa thuû tuïc goïi vaø thuû tuïc ñöôïc Xeùt thuû tuïc A goïi thuû tuïc B. Sau ñoù leänh Nguyeãn Höõu Loäc Khoa Vaät Lyù . vôùi caùch nhìn khaùc. Tuy nhieân.

Baãy tieát kieäm ñöôïc thôøi gian vaø boä nhôù so vôùi phöông phaùp kieåm tra ñieàu khieån bôûi ngöôøi laäp trình. Ñoâi khi ta coù 2 thuû tuïc A vaø B. Khi töø B trôû veà A. Moät phöông phaùp khaùc coù khaû naêng ñieàu khieån traøn laø duøng moät thanh ghi 1 bit ñöôïc thieát laäp laø 1 moãi khi xaûy ra traøn. nghóa laø luoàng ñieàu khieån ñöôïc chuyeån ñeán 1 vò trí nhôù naøo ñoù thay vì tieáp tuïc theo trình töï. Ñieàu naøy nghóa laø baãy ôû moät lôùp coù theå ôû döôùi söï ñieàu khieån cuûa chöông trình ôû lôùp thaáp hôn. ñoäc laäp vôùi vieäc coù bao nhieâu leänh soá hoïc xuaát hieän trong chöông trình chính. neáu keát quaû cuûa 1 pheùp toaùn soá hoïc vöôït quaù soá lôùn nhaát coù theå bieåu dieãn. Baãy Baãy (trap) laø moät loaïi lôøi goïi thuû tuïc töï ñoäng ñöôïc khôûi ñoäng bôûi 1 ñieàu kieän naøo ñoù do chöông trình taïo ra .Caán Truùc Maùy Tính -110- naøy ñaët ñòa chæ cuûa B vaøo boä ñeám chöông trình ñeå hoaøn taát vieäc goïi. bôûi vì vieäc naøy deã daøng choàng laáp vôùi vieâc khaùc vaø cuõng tieát kieäm ñöôïc boä nhôù. Ngaét Ngaét (interrupt) laø nhöõng thay ñoåi trong luoàng ñieàu khieån gaây ra khoâng phaûi do chöông trình ñang ñöôïc thöïc thi maø do bôûi moät taùc ñoäng khaùc. nhö in 1 thoâng baùo loãi. Neáu phaùt hieän thaáy coù traøn. bôûi vì vieäc naøy chæ caàn xaûy ra ôû moät vaøi thuû tuïc cuûa lôùp 1. boä naøy thöïc hieän 1 ñoäng taùc thích hôïp naøo ñoù. baãy khoâng xuaát hieän. Khi A chuyeån ñieàu khieån tôùi B. leänh naøy ñôn giaûn chæ laáy ñòa chæ trôû veà töø ngaên xeáp vaø ñaët vaøo boä ñeám chöông trình . Ñieåm cô baûn cuûa baãy laø baãy ñöôïc khôûi ñoäng bôûi 1 ñieàu kieän ngoaïi leä naøo ñoù gaây ra bôûi chính chöông trình vaø ñöôïc phaàn cöùng hoaëc vi chöông trình phaùt hieän. vi phaïm söï baûo veä. 4. vi chöông trình naøy ñôn giaûn chæ thöïc hieän söï kieåm tra. 5. Hieän thöïc nhö vaäy vöøa toán khoâng gian nhôù vöøa laøm cho toác ñoä chaäm laïi. Taïi vò trí coá ñònh ñoù coù moät leänh nhaûy tôùi 1 thuû tuïc goïi laø boä ñieàu khieån baãy (trap handler). Moät vaøi ñieàu kieän thöøông gaây ra baãy laø traøn treân daáu chaám ñoäng. laàn goïi A gaàn ñaây nhaát 2 thuû tuïc maø trong ñoù thuû tuïc naøy xem thuû tuïc kia nhö laø moät thuû tuïc ñöôïc goïi laø caùc ñoàng chöông trình (coroutine) hay ñoàng thuû tuïc. Neáu keát quaû cuûa pheùp toaùn naèm trong phaïm vi cho pheùp. Baãy cuõng coù theå ñöôïc thöïc hieän nhôø vaøo vieäc kieåm tra thöïc hieän bôûi trình bieân dòch ôû lôùp 1. Vi chöông trình thöïc hieän vieäc kieåm tra vaãn tieát kieäm thôøi gian hôn so vôùi vieäc kieåm tra cuûa ngöôøi laäp trình. thöôøng lieân quan tôùi I/O. traøn stack. ñòa chæ cuûa baãy ñöôïc naïp vaøo boä ñeám chöông trình. tìm naïp moät töø ôû ñòa chæ leû vaø chia cho zero. B khoâng söû duïng leänh goïi maø laø leänh quay veà. Khi B trôû veà. nghóa laø. moät baãy xuaát hieän. Traøn (overflow) laø moät thí duï. opcode khoâng ñöôïc xaùc ñònh. Baãy thöôøng ñöôïc thöïc hieän baèng caùch coù vi chöông trình. Nguyeãn Höõu Loäc Khoa Vaät Lyù . thuû tuïc naøy goïi thuû tuïc kia nhö laø moät thuû tuïc. Treân nhieàu maùy tính. ñieàu khieån nhaûy tôùi phaùt bieåu theo sau leänh goïi B. ñieàu khieån khoâng ñi tôùi phaùt bieåu ñaàu tieân cuûa thuû tuïc (tröø laàu ñaàu tieân) maø ñi tôùi phaùt bieåu theo sau phaùt bieåu “trôû veà “ gaàn nhaát.thöôøng laø ñieàu kieän quan troïng nhöng hieám khi xaûy ra. khôûi ñoäng thieát bò khoâng coù thöïc. traøn döôùi daáu chaám ñoäng. Ngöôøi laäp trình muoán kieåm tra traøn phaûi ñöa theâm vaøo moät leänh “nhaûy neáu bit traøn ñöôïc thieát laäp” sau moãi leänh soá hoïc.

Neáu chöông trình chaïy laïi moät trieäu laàn vôùi cuøng döõ lieäu vaøo. Khi hoaøn taát.Caán Truùc Maùy Tính -111- thí duï chöông trình ra leänh cho ñóa khôûi ñoäng truyeàn thoâng tin vaø thieát laäp traïng thaùi ñóa ñeå cung lôùp moät ngaét ngay khi vieäc truyeàn thoâng tin hoaøn taát. Chöông trình naøy phaûi khôûi ñoäng laïi quaù trình bò ngaét moät caùch chính xaùc ôû traïng thaùi gioáng nhö ñaõ coù khi xaûy ra ngaét. Nguyeân nhaân ñoái vôùi vieät taùi taïo laïi baãy aø khoâng taùi taïo laïi ngaét laø baãy ñöôïc gaây ra tröïc tieáp bôûi chöông trình coøn ngaét toát nhaát ñöôïc gay ra giaùn tieáp bôûi chöông trình. Nguyeãn Höõu Loäc Khoa Vaät Lyù . baãy seõ laïi xaûy ra ôû cuøng moät nôi cho moãi laàn chaïy nhöng ngaét laïi khaùc. Gioáng nhö baãy. nghóa laø khoâi phuïc laïi taát caû caùc thanh ghi noäi veà traïng thaùi tröôùc khi xaûy ra ngaét. ngaét cuõng laøm ngöøng chöông trình ñang ñöôïc thöïc thi vaø chuyeån ñieàu khieån ñeán boä ñieàu khieån ngaét ñeå thöïc hieän moät soá ñoäng taùc thiùch hôïp. thí duï tuyø thuoäc chính xaùc luùc moät ngöôøi ôû thieát bi ñaàu cuoái aán phím CR (carriage return). Söï khaùc nhau cô baûn giöõa baãy vaø ngaét laø caùc baãy ñoàng boä vôùi chöông trình coøn ngaét laò khoâng ñoàng boä. boä ñieàu khieån ngaét traû ñieàu khieån cho chöông trình bò ngaét.

Tình huoáng naøy ñöôïc moâ taû cho tröông hôïp maùy tính chæ coù 1 boä nhôù ñeå löu tröõ moïi chöông trình. Thay vaøo ñoù. Cuõng nhö moät trình phieân dòch chaïy treân maùy lôùp 1 coù theå phieân dòch caùc chöông trình vieát baèng ngoân ngöõ maùy lôùp 2 moät trình phieân dòch chaïy treân maùy lôùp 2 coù theå phieân dòch caùc chöông trình vieát baèng ngoân ngöø maùy lôùp 3. Phöông phaùp thöïc thi caùc chöông trình lôùp 3 naøy coù nghóa laø moät phaàn thôøi gian maùy tính coù chöùc naêng cuûa moät maùy 3-lôùp vaø moät phaàn thôøi gian coù chöùc naêng cuûa moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . vi chöông trình tìm naïp caùc leänh tröïc tieáp töø chöông trình ngöôøi söû duïng. Do vaäy chuùng ta seõ goïi lôùp 3 laø lôùp maùy heä ñieàu haønh do thieáu thuaät ngöõ toång quaùt chaáp nhaän ñöôïc. khaûo saùt chuùng vaø thöïc thi chuùng. Caùc leänh lôùp 3 taàm thöôøng coù theå ñöôïc dòch tröïc tieáp bôûi vi chöông trình. söï khaùc nhau naøy thöïc teá do bôûi lôùp maùy heä ñieàu haønh ñöôïc phaùt trieån daàn daàn ra khoûi lôùp maùy qui öôùc. nhaân vaø laäp voøng khoâng ñöôïc thöïc hieän tröïc tieáp baèng phaàn cöùng. tình huoáng seõ thay ñoåi.Caán Truùc Maùy Tính -112- CHÖÔNG 6: LÔÙP MAÙY HEÄ ÑIEÀU HAØNH Caùc chöông tröôùc ñaõ trình baøy caùch thöùc moät trình bieân dòch chaïy treân lôùp vi chöông trình (lôùp 1) thöïc thi caùc chöông trình vieát cho lôùp maùy qui öôùc (lôùp 2). chuùng ñöôïc tìm naïp. Chuùng ta seõ goïi nhöõng leänh naøy laø caùc leänh lôùp 3 "taàm thöôøng" (ordinary) do bôûi chuùng bao goàm caùc thao taùc bình thöôøng nhö caùc pheùp toaùn soá hoïc. Vi chöông trình ngöøng phieân dòch chöông trình cuûa ngöôøi söû duïng vaø baét ñaàu phieân dòch heä ñieàu haønh. Dó nhieân neáu leänh keá cuûa chöông trình ngöôøi söû duïng cuõng laø leänh OSML. Vôùi caùc lyù do coù tính lòch söû. ÔÛ chöøng möïc maø chuùng coù lieân quan. Maëc duø ta coù theå coù heä ñieàu haønh phieân dòch taát caû caùc leänh cuûa lôùp 3. Tuy nhieân ngay khi gaëp moät leänh OSML. trình phieân dòch chaïy treân maùy lôùp 2 hoã trôï cho maùy lôùp 3 ñöôïc goïi laø heä ñieàu haønh (operating system). ñöôïc khaûo saùt vaø ñöôïc thöïc thi nhö moät chuoãi caùc böôùc nhoû bôûi vi chöông trình. Mieãn laø chæ coù caùc leänh taàm thöôøng ñang thöïc thi. heä ñieàu haønh thöïc thi moät leänh naøo ñoù laøm cho vi chöông trình tieáp tuïc tìm naïp vaø thöïc thi caùc leänh cuûa chöông trình ngöôøi söû duïng. dòch bit v v… chuùng ta cuõng seõ goïi caùc leänh khaùc cuûa maùy lôùp 3 (chuùng khoâng hieän dieän trong maùy lôùp 2) laø caùc leänh OSML (Operating System Machine Language) ñeå nhaán maïnh chuùng chæ hieän dieän trong lôùp maùy heä ñieàu haønh. Coù söï khaùc bieät quan troïng giöõa caùch maø lôùp maùy heä ñieàu haønh ñöôïc hoã trôï caùch maø lôùp maùy qui öôùc ñöôïc hoã trôï. logic. Heä ñieàu haønh sau ñoù khaûo saùt leänh OSML trong chöông trình ngöôøi söû duïng vaø thöïc thi leänh naøy. nhöng ñieàu naøy khoâng coù hieäu quaû cuõng nhö khoâng caàn thieát. caùc leänh cuûa lôùp maùy qui öôùc nhö goïi thuû tuïc. heä ñieàu haønh seõ ñöôïc khôûi ñoäng laàn nöõa. Khi leänh OSML ñaõ ñöôïc thöïc thi. Treân moät maùy tính ñöôïc vi laäp trình. Haàu heát caùc leänh cuûa lôùp maùy heä ñieàu haønh cuõng hieän dieän ôû lôùp maùy qui öôùc. maùy lôùp 2 coù theå ñöôïc söû duïng nhö theå maùy naøy laø moät phaàn cöùng thaät söï . Maùy lôùp hai coù theå ñöôïc laäp trình bôûi nhöõng ngöôøi khoâng bieát gì veà maùy lôùp 1 vaø trình phieân dòch cuûa lôùp naøy.

Maùy IBM 650. ta coù moät heä thoáng ña laäp trình nhoùm (batch). Giaûi phaùp cho vaán ñeà naøy laø duøng boä nhôù phuï. nhö ñóa chaüng haïn. boä ñeám chöông trình cuûa lôùp 2 troû tôùi leänh cuûa heä ñieàu haønh ñang ñöôïc thöïc thivaø boä ñeám chöông trình cuûa lôùp 1 cho bieát phaàn cöùng thöïc söï maø vi leänh ñöôïc thöïc thi. BOÄ NHÔÙ AÛO Trong nhöõng ngaøy ñaàu cuûa maùy tính. Thoâng thöôøng hoï duøng moät giaûi thuaät chaïy raát chaäm so vôùi giaûi thuaät khaùc maø giaûi thuaät toát hôn thöôøng seõ raát lôùn nghóa laø chöông trình söû duïng giaûi thuaät toát hôn seõ khoâng ñaët vöøa trong boä nhôù cuûa maùy tính. Thöù 2 laø xuaát/nhaäp taäp tin(file I/O). chuùng ta seõ moâ taû chi tieát sau trong chöông naøy. Vôùi daïng hoãn hôïp. heä ñieàu haønh hoã trôï cho vaøi maùy aûo lôùp 3 chaïy song song. moät soá maùy aûo ñang ñöôïc söû duïng tröïc tuyeán (on line). Ngöôøi laäp trình chia chöông trình thaønh moät soá maûng nhoû goïi laø phaàn phuû laáp (overlay) coù theå ñaët vöøa Nguyeãn Höõu Loäc Khoa Vaät Lyù . 3 chöông trình ñang chaïy. Tröôùc tieân laø boä nhôù aûo (virtual memory). boä ñeám chöông trình. I. Neáu khoâng coù caùc thieát bò ñaàu cuoái töø xa. Trong khi thöïc thi moät leänh OSML. caùch maø caùc quaù trình (process) coù theå thöïc thi ñoàng thôøi ôû lôùp 3. Khaùi nieäm quaù trình laø moät khaùi nieäm quan troïng. heä ñieàu haønh seõ ñöôïc nghieân cöùu nhö moät lôùp ñôn. Ñieàu caàn ñeà caäp laø ña soá caùc heä ñieàu haønh cuûa caùc maùy tính lôùn ñeàu laø caùc heä thoáng ña laäp trình (multiprogramming system). boä nhôù coù dung löôïng nhoû vaø raát ñaét tieàn. Neáu moãi maùy aûo ñöôïc noái vôùi moät thieá bò ñaàu cuoái töø xa. Ngöôïc laïi. nghóa laø thay vì chæ hoã trôï cho maùy aûo lôùp 3. Moät quaù trình coù theå xem nhö moät chöông trình ñang chaïy vôùi taát caû caùc thoâng tin traïng thaùi cuûa chöông trình (boä nhôù. Chuùng ta seõ taäp trung vaøo 3 vaán ñeà quan troïng. moãi chöông trình treân moãi maùy (aûo). ñieàu naøy khoâng coù nghóa laø moïi heä ñieàu haønh ñeàu ñöôïc toå chöùc coù moät lôùp. Moät caùch khaùi quaùt. traïng thaùi vaøo/ra…). Thöù 3 vaø cuoái cuøng laø xöû lyù song song. moät kyõ thuaät ñöôïc cung caáp bôûi nhieàu heä ñieàu haønh laøm cho maùy coù nhieàu boä nhôù hôn laø maùy thaät söï coù. caùc thanh ghi. moät soá heä ñieàu haønh naâng cao ñöôïc caáu truùc thaønh 1 chuoãi nhieàu lôùp. ta coù moät heä thoáng chia seû thôøi gian (time-shared system). Trong chöông naøy ñeå ñôn giaûn. Phaàn chuû yeáu cuûa heä ñieàu haønh lieân quan ñeán vieäc quaûn lyù taát caû maùy aûo hôn laø phieân dòch caùc leänh OSML. Moät heä thoáng chia seû thôøi gian tröôùc ñaây chaïy raát toát treân PDP-1 vôùi kích thöôùc boä nhôù toång coäng chæ coù 4096 töø 18 bit cho caû heä ñieàu haønh vaø caùc chöông trình cuûa ngöôøi söû duïng. Thôøi ñoù nhöõng ngöôøi laäp trình phaûi toán nhieàu thôøi gian ñeå neùn kích thöôùc caùc chöông trình sao cho ñaët vöøa trong moät boä nhôù nhoû.Caán Truùc Maùy Tính -113- maùy 2-lôùp. moät soá maùy khaùc thì khoâng. Moät trong nhöõng trình bieân dòch vieát baèng ALGOL 60 ñaàu tieân ñöôïc vieát cho maùy tính chæ coù 1024 töø nhôù. boä ñeám chöông trình cuûa lôùp 3 troû tôùi leänh OSML. maùy tính khoa hoïc haøng ñaàu luùc naøy (vaøo nhöõng naêm cuoái thaäp nieân 1950) chæ coù moät boä nhôù 2000 töø. moät khaùi nieäm ôû möùc cao hôn caùc leänh vaøo/ra maø ta ñaõ nghieân cöùu trong chöông tröùôc. Moãi chöông trình coù moät traïng thaùi rieâng bao goàmboä ñeám chöông trình rieâng.

Baây giôø thaäm chí caùc boä vi xöû lyù. baây giôø goïi laø boä nhôù aûo.Caán Truùc Maùy Tính -114- trong boä nhôù. moãi khi ñòa chæ 4097 ñöôïc tham chieáu. 4096 töø cuûa boä nhôù ñeàu coù theå ñöôïc truy xuaát tröïc tieáp nhöng chuùng khoâng caàn töông öùng vôùi caùc ñòa chæ töø 0 tôùi 4096. 1. Maët duø phaàn phuû ñöôïc duøng roäng raõi qua nhieàu naêm nhöng kyõ thuaät naøy keùo theo nhieàu coâng vieäc lieân quan ñeán vieäc quaûn lyù phaàn phuû. Thí du ïxeùt moät maùy tính coù moät tröôøng ñòa chæ 16 bit trong caùc leänh cuûa maùy naøy vaø coù 4096 töø nhôù. Phaân trang Nhoùm Manchester ñaõ naûy sinh moät yù töôûng taùch rieâng khaùi nieäm veà khoâng gian ñòa chæ vaø caùc vò trí oâ nhôù (memory location). roõ raøng coù thuaän lôïi trong vieäc giuùp cho ngöôøi laäp trình thoaùt khoûi nhieàu coâng vieäc keá toaùn phieàn phöùc. Tröôùc khi phaùt minh ra boä aûo. Thí duï ta coù theå “baûo” maùy tính raèng töø baây giôø trôû ñi moãi khi ñòa chæ 4096 ñöôïc tham chieáu.v … noùi caùch khaùc ta ñaõ ñònh nghóa moät aùnh xaï töø khoâng gian ñòa chæ leân caùc ñòa chæ boä nhôù thöïc. vaø moät caùch toång quaùt quaûn lyù toaøn boä quaù trình phaàn phuû maø khoâng caàn coù söï giuùp ñôõ naøo töø maùy tính. töø nhôù 4095 ñöôïc söû duïng vaø v. moãi khi ñòa chæ 8191 ñöôïc tham chieáu. Khoâng gian ñòa chæ (address space) cuûa maùy tính naøy bao goàm caùc soá 0. 65535 bôûi vì ñoù laø taäp caùc ñòa chæ coù theå coù. nhö trình baøy trong hình 6. ngöôøi ta ñaõ coù söï phaân bieät giöõa caùc ñòa chæ döôùi 4096 vaø caùc ñòa chæ baèng hoaëc treân 4096. YÙ töôûng taùch rieâng khoâng gian ñòa chæ vaø caùc ñòa chæ boä nhôù nhö sau. 2…. Ngöôøi ta khoâng coù söï phaân bieät nhieàu giöõa khoâng gian ñòa chæ vaø caùc ñòa chæ cuûa boä nhôù thöïc bôûi vì phaàn cöùng baét buoäc phaûi coù söï töông öùng moät-moät giöõa chuùng vôùi nhau. Ñaàu tieân phöông phaùp naøy ñöôïc duøng treân moät soá maùy tính trong nhöõng naêm 1960. Soá töø ñòa chæ hoaù ñöôïc chæ tuyø thuoäc vaøo soá bit coù trong moät ñòa chæ vaø khoâng coù lieân quan duø baèng caùch naøo vôùi soá töø nhôù thöïc söï söû duïng ñöôïc. 1961). chöông trình ñoïc phaàn phuû keá tieáp vaø goïi phaàn phuû naøy vaø v. haàu heát thöôøng gaén lieàn vôùi nhöõng ñeà aùn nghieân cöùu thieát keá heä thoáng maùy tính. keå caû 80386 vaø 68030 cuõng nhö caùc boä vi xöû lyù sau naøy ñeàu coù heä thoáng boä nhôù aûo raát phöùc taïp. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ngöôøi laäp trình coù traùch nhieäm taùch chöông trình thaønh caùc phaàn phuû. quyeát ñònh xem moãi phaàn phuû ñöôïc caát ôû ñaâu trong boä nhôù phuï. Ñeå chaïy chöông trình. moät nhoùm ngöôøi ôû Manchester nöôùc Anh ñaõ deà nghò moät phöông phaùp thöïc hieän töï ñoäng quaù trình che phuû.1. Baát cöù luùc naøo. Vaøo naêm 1961. phaàn phuû ñaàu tieân ñöôïc ñem vaøo boä nhôù vaø chaïy trong moät khoaûng thôøi gian. töø nhôù 0 ñöôïc söû duïng. Khi phaàn phuû ñaõ hoaøn taát. Phöông phaùp naøy. Moät chöông trình treân maùy tính naøy coù theå ñòa chæ hoaù 65536 töø nhôù vì coù 65536(216) ñòa chæ 16 bit. ngöôøi laäp trình thaäm chí khoâng caàn bieát quaù trình che phuû dang xaûy ra (Fotheringham. Maëc duø tröôùc khi ñöôïc phaùt bieåu thaúng nhöng 2 phaàn ñòa chæ ñöôïc xem nhö khoâng gian ñòa chæ coù ích ( caùc ñòa chæ treân 4096 khoâng ñöôïc duøng bôûi vì chuùng khoâng töông öùng vôùi caùc ñòa chæ cuûa boä nhôù thöïc). töø nhôù 1 ñöôïc söû duïng.v.

Caán Truùc Maùy Tính

-115-

Hình 6.1: AÙnh xaï trong ñoù caùc ñòa chæ töø 4096 tôùi 8191 ñöôïc aùnh xaï leân caùc ñòa chæ boä nhôù chính töø 0 tôùi 4095 Baèng hình veõ naøy, hình veõ aùnh xaï caùc ñòa chæ töø khoâng gian ñòa chæ leân caùc vò trí boä nhôù thöïc, moät maùy 4K thöôøng chæ coù moät aùnh xaï coá ñònh giöõa caùc ñòa chæ töø 0 tôùi 4095 vaø 4096 töø cuûa boä nhôù, khoâng coù boä nhôù aûo. Moät caâu hoûi thuù vò laø: ñieàu gì seõ xaûy ra neáu tröông trình nhaûy tôùi moät ñòa chæ naèm trong khoaûng 8192 vaø 12297? treân maùy khoâng coù boä nhôù aûo, chöông trình seõ gaây ra moät baãy loãi ( error trap) in ra moät thoâng baùo thích hôïp nhö “boä nhôù ñöôïc tham chieáu khoâng hieän höõu“ (non-existent memory referenced) vaø keát thuùc chöông trình. Treân maùy coù boä nhôù aûo, chuoãi caùc böôùc sau seõ xaûy ra: 1. Noäi dung caùc boä nhôù chính seõ ñöôïc caát vaøo boä nhôù phuï 2. Caùc töø nhôù töø 8192 tôùi 12287 ñöôïc ñaët vaøo boä nhôù phuï 3. Caùc töø nhôù töø 8192 tôùi 12287 ñöôïc naïp vaøo boä nhôù chính 4. Baûn ñoà ñòa chæ ñöôïc thay ñoåi ñeå aùnh xaï caùc ñòa chæ töø 8192 tôùi 12287 leân caùc vò trí töø 0 tôùi 4095 5. Vieäc thöïc hieän tieáp tuïc nhö theå khoâng coù gì baát thöøông ñaõ xaûy ra Kyõ thuaät che phuû töï ñoäng naøy ñöôïc goïi laø söï phaân trang (paping) vaø nhöõng ñoaïn (chunk) cuûa chöông trình ñöôïc ñoïc vaøo töø boä nhôù phuï ñöôïc goïi laø caùc trang (page) Cuõng coù moät phöông phaùp phöùc taïp hôn ñeå aùnh xaï caùc ñòa chæ töø khoâng gian ñòa chæ leân caùc ñòa chæ boä nhôù thöïc. Ñeå nhaán maïnh, ta seõ goïi caùc ñòa chæ maø chöông trình coù theå tham chieáu tôùi laø khoâng gian ñòa chæ aûo (virtual address space) vaø caùc ñòa chæ boä nhôù ñöôïc noái daây (boä nhôù thöïc ) laø khoâng gian ñòa chæ vaät lyù ( physical address space). Baûn ñoà boä nhôù (memory map) lieân keát caùc ñòa chæ aûo vôùi caùc ñòa chæ vaät lyù. Chuùng ta cuõng giaû thuyeát raèng boä nhôù phuï coù ñuû choã ñeå caát toaøn boä chöông trình vaø döõ lieäu cuûa chöông trình. Caùc chöông trình ñöôïc vieát nhö coù theå coù ñuû boä nhôù chính cho toaøn boä khoâng gian boä nhôù aûo, cho duø khoâng ñuùng nhö theá. Caùc chöông trình coù theå naïp töø hoaëc caát vaøo baát kyø töø nhôù naøo trong khoâng gian ñòa chæ aûo maø khoâng quan taâm ñeán thöïc teá laø thaät ra khoâng coù ñuû boä nhôù vaät lyù. Nhöõng ngöôøi laäp trình coù theå vieát caùc chöông trình maø thaäm chí hoï khoâng caàn bieát ñeán söï toàn taïi cuûa boä nhôù aûo. Maùy tính döôøng nhö coù moät boä nhôù dung löôïng lôùn.

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính

-116-

Ñieåm naøy laø vaán ñeà chuû yeáu vaø seõ ñöôïc ñoái chieáu sau naøy vôùi söï phaân ñoaïn (segmentation), trong ñoù ngöôøi laäp trình phaûi bieát ñeán söï toàn taïi ccuûa caùc segment. Nhaán maïnh laïi moät laàn nöõa, söï phaân trang cung caáp cho ngöôøi laäp trình aûo töôûng veà moät boä nhôù chính lôùn tuyeán tính vaø lieân tuïc coù kích thöôùc baèng vôùi kích thöôùc cuûa khoâng gian ñòa chæ trong khi boä nhôù chính söû duïng ñöôïc coù theå nhoû hôn (hoaëc lôùn hôn) khoâng gian ñòa chæ. Vieäc moâ phoûng boä nhôù chính lôùn naøy baèng caùch phaân trang khoâng bò chöông trình phaùt hieän (tröø phi bò phaùt hieän khi ñang chaïy caùc chöông trình kieåm tra ñònh thì); moãi khi moät ñòa chæ ñöôïc tham chieáu, leänh hoaëc töø döõ lieäu thích hôïp seõ xuaát hieän. Bôûi vì ngöôøi laäp trình coù theå laäp trình nhö theå söï phaân trang khoâng toàn taïi, neân cô cheá phaân trang ñöôïc goïi laø trong suoát (transparent). Söï phaân trang (paging) vaø söï phaân ñoaïn (segmentation) ñöôïc so saùnh nhö trong hình 6.2 Söï xem xeùt Ngöôøi laäp trình coù caàn bieát kyõ thuaät naøy ñang ñöôïc söû duïng khoâng ? Coù bao nhieâu khoâng gian ñòa chæ tuyeán tính? Khoâng gian ñòa chæ toång coäng coù theå vöôït quaù kích thöôùc boä nhôù vaät lyù khoâng? Caùc thuû tuïc vaø döõ lieäu coù theå ñöôïc phaân bieät vaø ñöôïc baûo veä rieâng reõ khoâng ? Caùc baûng maø kích thöôùc cuûa chuùng dao ñoäng coù theå ñöôïc ñieàu tieát deã daøng khoâng ? Vieäc duøng chung caùc thuû tuïc cuûa nhöõng ngöôøi söû duïng coù ñöôïc thuaän lôïi khoâng ? Söï xem xeùt Taïi sao kyõ thuaät naøy ñöôïc phaùt minh ? Phaân trang Khoâng 1 Coù Phaân ñoaïn Coù Nhieàu Coù

Khoâng Khoâng

Coù Coù

Khoâng

Coù

Phaân trang Ñeå coù moät khoâng gian ñòa chæ tuyeán tính lôùn maø khoâng caàn phaûi mua nhieàu boä nhôù vaät lyù

Phaân ñoaïn Ñeå cho pheùp caùc chöông trình vaø döõ lieäu ñöôïc chia ra thaønh nhieàu khoâng gian ñòa chæ logic ñoäc laäp vaø ñeå cung caáp khaû naêng duøng chung vaø

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

Caán Truùc Maùy Tính
baûo veä Hình 6.2 So saùnh phaân trang vaø phaân ñoaïn

-117-

YÙù töôûng maø ngöôøi laäp trình coù theå söû duïng moät ñaëc tính naøo ñoù khoâng toàn taïi vaø khoâng quan taâm ñeán caùch laøm vieäc cuûa ñaëc tính naøy khoâng phaûi laø môùi ñoái vôùi chuùng ta. Taäp leänh cuûa maùy lôùp 2 khoâng toàn taïi trong yù nghóa khoâng coù leänh naøo hoaøn toaøn laø leänh phaàn cöùng, nhöng taát caû chuùng thöïc teá ñeàu ñöôïc thöïc hieän bôûi phaàn meàn ôû lôùp 1. Töông töï, ngöôøi laäp trình ôû lôùp 3 coù theå duøng boä nhôù aûo maø khoâng phaûi lo laéng gì veà caùch boä nhôù naøy laøm vieäc. Chæ coù nhöõng ngöôøi vieát heä ñieàu haønh caàn phaûi bieát boä nhôù aûo laøm vieäc nhö theá naøo.

II. CAÙC LEÄNH VAØO/RA AÛO
Thoâng thöôøng taäp leänh cuûa lôùp 2 hoaøn toaøn khaùc vôùi taäp leänh cuûa lôùp 1. Caùc thao taùc maø caû hai coù theå ñöôïc thöïc hieän vaø caùc khuoân daïng cuûa caùc leänh cuûa caû hai raát khaùc nhau. Söï hieän dieän cuûa vaøi leänh gioáng nhau treân caû 2 lôùp chæ laø tình côø. Taäp caùc leänh cuûa lôùp 3 traùi laïi chöùa haàu heát caùc leänh cuûa lôùp 2 coäng theâm vaøi leänh môùi nhöng quan troïng vaø vaøi leänh gaây toån haïi ñöôïc loaïi boû. Vaøo/ra laø moät trong nhieàu phaïm vi trong ñoù caùc maùy lôùp 2 vaø lôùp 3 khaùc nhau. Lyù do cuûa söï khaùc nhau naøy ñôn giaûn laø: nhöõng ngöôøi söû duïng coù theå thöïc thi caùc leänh lôùp 2 thaät söï, coù theå ñoïc caùc döõ lieäu rieâng chöùa trong heä thoáng, ghi caùc thieát bò ñaàu cuoái cuûa nhöõng ngöôøi söû duïng khaùc vaø moät caùch toång quaùt coù theå taïo ra noãi phieàn toaùi lôùn cho chính hoï cuõng hö ñe doïa söï an toaøn cuûa heä thoáng. Lyù do thöù hai, nhöõng ngöôøi laäp trình bình thöôøng vaø ñuùng möïc khoâng muoán töï vieát caùc chöông trình vaøo/ra rieâng cho hoï. Tieâu bieåu laø caùc thanh ghi thieát bò ñoái vôùi ñóa ñieån hình coù caùc bit ñeå phaùt hieän caùc loãi. Khi moät trong caùc loãi xuaát hieän, bit töông öùng trong moät thanh ghi thieát bò ñöôïc thieát laäp. Vaøi ngöôøi söû duïng muoán ñöôïc lo laéng theo doõi taát caû caùc bit loãi naøy vaø caùc thoâng tin traïng thaùi khaùc.

1. Caùc taäp tin tuaàn töï
Moät phöông phaùp toå chöùc vaøo/ra aûo laø töôûng töôïng döõ lieäu ñöôïc ñoïc hoaëc ghi nhö laø moät chuoãi caùc baûn ghi logic (logical record), trong ñoù moät baûn ghi logic laø moät ñôn vò naøo ñoù cuûa thoâng tin coù nghóa ñoái vôùi ngöôøi laäp trình. Trong tröôøng hôïp ñôn giaûn nhaát, moät baûn ghi logic coù theå laø moät ma traän 10x10. Vôùi moät öùng duïng khaùc baûn ghi coù theå laø moät caáu truùc döõ lieäu bao goàm 5 thaønh phaàn: hai chuoãi kyù töï “teân” vaø “ngöôøi giaùm saùt”; hai soá nguyeân “phoøng” vaø “cô quan”; moät chuoãi 1-bit “phaùi”. Moät chuoãi caùc baûn ghi logic ñöôïc goïi laø moät taäp tin. Caùc baûn ghi trong moät taäp tin khoâng caàn coù cuøng chieàu daøi, trong tröôøng hôïp naøy chuùng ñöôïc goïi laø caùc baûn ghi chieàu daøi thay ñoåi. Leänh vaøo aûo cô baûn ñoïc baûn ghi keá töø 1 taäp tin ñaõ ñöôïc xaùc ñònh vaø ñaët baûn ghi naøy trong caùc oâ nhôùâ lieân tieáp trong boä nhôù chính ôû moät ñòa chæ ñaõ ñöôïc xaùc. Ñeå thöïc

Nguyeãn Höõu Loäc

Khoa Vaät Lyù

raát lôùn so vôùi boä nhôù chính. Baèng caùchnaøy taäp tin coù theå ñöôïc duøng ñeå chöùa nhieàu löôïng thoâng tin lôùn. Nguyeãn Höõu Loäc Khoa Vaät Lyù . trong ñoù leänh aûo cuõng ñöôïc xaùc ñònh baûn ghi logic naøo ñöôïc ñoïc. trong tröôøng hôïp naøy moät leänh OPEN ñöôïc cung caáp . Leänh ra aûo cô baûn moät baûn ghi logic töø boä nhôù leân moät taäp tin. Caùc chi tieát veà caùc ñieàu ñoù xaûy ra vaø caùch maùy in laøm vieäc khoâng lieân quan ñeán ngöôøi laäp trình ôû lôùp 3 maëc duø dó nhieân chuùng coù lieân quan raát nhieàu ñeán nhöõng ngöôøi laäp trình ôû lôùp 2. Sau ñoù taäp tin ñöôïc quay trôû laïi vaø ñöôïc ñoïc laïi töøng baûn ghi ôû moät thôøi ñieåm. Moät thí duï khaùc. Ñeå in moät doøng. leänh aûo phaûi tröïc tieáp hoaëc giaùn tieáp xaùc ñònh (toái thieåu) 2 thaønh phaàn thoâng tin sau: 1. Hôn nöõa neáu taäp tin ñöôïc löu tröõ treân treân baêng töø hoaëc ñóa meàm. Tình huoáng naøy töông phaûn vôùi caùc taäp tin truy xuaát ngaãu nhieân trong phaàn keá tieáp. 2. ôû ñieåm naøy moät theû ñöôïc sao cheùp ôû 1 thôøi ñieåm vaøo vuøng ñeäm cuûa ngöôøi söû duïng trong boä nhôù chính. taäp tin coù theå ñöôïc di chuyeån ñeán maùy tính khaùc vaø ñöôïc ñoïc ôû ñoù. sau ñoù taäp tin ñöôïc ñoïc hoaëc ghi. ta coù 1 taäp tin goïi laø INPUT chöùa caùc chuoãi 80-kyù töï. Thí duï coù moät taäp tin goïi laø OUTPUT bao goàm moät daõy caùc chuoãi 132-kyù töï vaø ñöôïc keát hôïp vôùi maùy in. Cuõng coù moät leänh aûo REWIND ñònh laïi vò trí cuûa taäp tin ôû luùc baét ñaàu sao cho baûn ghi logic keá tieáp ñöôïc ñoïc hoaëc ñöôïc ghi seõ laø baûn ñaàu tieân. neáu coù seõ tìm naïp thoâng tin veà taäp tin vaøo boä nhôù chính. chöông trình phaûi ñoùng taäp tin. Nhieàu taäp tin coù theå ñöôïc gaùn thöôøng tröïc tôùi caùc thieát bò vaøo/ra cuï theå. Taäp tin ñöôïc ñoïc Ñòa chæ boä nhôù chính ôû ñoù baûn ghi ñöôïc ghi vaøo Khoâng coù ñòa chæ naøo trong taäp tin ñöôïc xaùc ñònh. caùc noäi dung cuûa theû keá tieáp ñöôïc sao cheùp vaøo boä nhôù. chöông trình ôû lôùp 3 ghi moät chuoãi 132-kyù töï leân taäp tin OUTPUT vaø caùch naøy hay caùch khaùc chuoãi naøy sau ñoù xuaát hieän treân ngoõ ra ñöôïc in. nhöõng ngöôøi phaûi vieát phaàn meàm thöïc hieän caùc leänh aûo (nghóa laø nhöõng ngöôøi vieát heä ñieàu haønh). Caùc leänh READ tuaàn töï lieân tieáp laáy caùc baûn ghi logic lieân tieáp töø taäp tin.Caán Truùc Maùy Tính -118- hieän thao taùc naøy. Toaøn boä hoäp theû coù theå ñöôïc ñoïc cuøng moät luùc vaø ñöôïc löu trong ñóa meàm cho ñeán khi caàn ñeán. moãi moät leänh ñeå ñoïc töø ngoõ vaøo laøm cho theû keá tieáp trong hoäp theû ñöôïc ñoïc. Nhieàu heä ñieàu haønh yeâu caàu moät taäp tin phaûi ñöôïc môû tröôùc khi ñöôïc söû duïng. Trình töï thoâng thöôøng ñoái vôùi 1 chöông trình laø tröôùc tieân taïo ra moät taäp tin baèng caùch ghi moät chuoãi caùc baûn logic leân taäp tin. ÔÛ chöøng möïc maø ngöôøi laäp trình ôû lôùp 3 coù lieân quan. Khi moät chöông trình ñöôïc keát thuùc vôùi moät taäp tin. moät leänh nöõa ñöôïc cung caáp cho thao taùc naøy. Moãi khi thao taùc ñoïc töø INPUT ñöôïc thöïc hieän. Leänh OPEN kieåm tra xem coù phaûi ngöôøi söû duïng ñöôïc pheùp truy xuaát taäp tin hay khoâng. Caùc leänh WRITE tuaàn töï lieân tieáp taïo ra caùc baûn ghi lieân tieáp treân taäp tin.

Ñeå thöïc hieän ñieàu naøy. Trong thí duï tröôùc. coäng theâm teân cuûa ngöôøi goïi vaøo danh saùch haønh khaùch. ngöôøi laäp trình Nguyeãn Höõu Loäc Khoa Vaät Lyù . coù baûn chaát töï nhieân laø tuaàn töï. töø baûn ghi 1 cho ñeán khi coù baûn ghi 26. 3. Thí duï moät taäp tin chöùa döõ lieäu veà nhaân vieân cuûa moät coâng ty seõ coù moät tröôøng trong moãi baûn ghi chöùa teân nhaân vieân. Moät ngöôøi coù theå goïi nhaân vieân phoøng veù vaø hoûi thaêm veà vieäc mua moät veù treân chuyeán bay ñeán White Plains vaøo thöù tö tôùi. Nhieàu thieát bò vaøo/ra nhö caùc ñaàu ñoïc theû chaúng haïn. Chöông trình caàn coù khaû naêng truy xuaát moät baûn ghi cuï theå töø phaàn giöõa cuûa moät taäp tin baèng caùch cho bieát soá cuûa baûn ghi. Daïng khaùc cuûa toå chöùc taäp tin laø daïng trong ñoù caùc baûn ghi logic ñöôïc ñòa chæ hoùa khoâng phaûi baèng vò trí cuûa chuùng trong taäp tin maø baèng caùc noäi dung cuûa moät tröôøng naøo ñoù trong moãi baûn ghi logic. Chöông trình khoâng theå baûo “baây giôø haõy ñoïc theû thöù 427” tröø khi ñaõ coù 426 ñaõ ñöôïc ñoïc. chöông trình caàn truy xuaát caùc baûn ghi cuûa moät taäp tin theo moät thöù töï khaùc vôùi thöù töï maø caùc baûn ghi naøy ñöôïc ghi. chöông trình chæ caàn baûn ghi 26. Neáu danh saùch haønh khaùch cho chuyeán bay ñoù laø baûn ghi 26 cuûa moät taäp tin naøo ñoù. Taäp tin caàn ñoïc Ñòa chæ boä nhôù chính ôû ñoù baûn ghi ñöôïc ñaët vaøo Vò trí cuûa baûn ghi trong taäp tin Caùc leänh WRITE töông öùng cuõng phaûi cung caáp caùc thoâng tin naøy. Caùc leänh aûo naøy phaûi cung caáp (ít nhaát) ba thaønh phaàn thoâng tin: 1. moät ngöôøi muoán daønh choã chuyeán bay ñang hoûi thaêm. Nhaân vieân phoøng veù ñöa caâu hoûi vaøo thieát bò ñaàu cuoái. Traùch nhieäm cuûa heä ñieàu haønh laø tìm kieám taäp tin chöùa baûn ghi logic caàn ñeán. tröôøng naøy ñöôïc goïi laø khoùa. Moät taäp tin tuaàn töï do vaäy laø kieåu maãu thích hôïp vôùi moät loaïi thieát bò nhö vaäy. Ta khoâng caàn thieát hoaëc khoâng muoán phaûi thay ñoåi baát kyø baûn ghi naøo khaùc. Thí duï ta haõy khaûo saùt heä thoáng giöõ choã maùy bay trong ñoù danh saùch haønh khaùch cho moãi chuyeán bay hình thaønh moät baûn ghi logic vaø taát caû caùc chuyeán bay cho 1 ngaøy hình thaønh 1 taäp tin. Moät leänh aûo coù theå ñöôïc cung caáp cho pheùp chöông trình laáy teân cuûa moät nhaân vieân vaø coù baûn ghi cuûa anh ta ñöôïc ñoïc vaøo. Vôùi moät soá öùng duïng. Caùc coù theå lôùp 3 ñoïc töø taäp tin ñöôïc keát hôïp vôùi ñaàu ñoïc theû ñoïc theû keá tieáp. chöông trình phaûi ghi laïi baûn ghi logic chöùa danh saùch daønh choã.Caán Truùc Maùy Tính 2. Töông töï ñoâi khi ta caàn ghi laïi moät baûn ghi logic cuï theå treân moät taäp tin maø khoâng phaûi ghi laïi baát kyø caùc baûn ghi naøo tröôùc vaø sau baûn ghi caàn ghi. Haàu heát caùc heä ñieàu haønh cung caáp moät leänh aûo ñeå ñoïc baûn ghi logic thöù n cuûa moät taäp tin. Roõ raøng ta khoâng neân ñoïc tuaàn töï töø ñaàu. Caùc taäp tin truy xuaát ngaãu nhieân -119- Caùc taäp tin tuaàn töï ñaõ baøn treân ñaây khoâng ñöôïc ñòa chæ hoùa. 2. Chöông trình khoâng caàn cung caáp soá cuûa baûn ghi logic. Moät leänh aûo READ ñôn giaûn chæ ñoïc baûn ghi logic keá tieáp.

Moät ñóa cöùng coù 3 öùng vieân thích hôïp: sector. toaøn boä cylinder seõ ñöôïc daønh choã cho 1 taäp tin chæ coù 1 kyù töï. Neáu khoâng gian ñóa ñöôïc caáp phaùt baèng cylinder. Neáu track laø ñôn vò caáp phaùt. moãi moät sector chöùa moät soá töø naøo ñoù. Hình 6. Caùc track ñöôïc chia thaønh caùc sector. coù söï phaân bieät giöõa caùc taäp tin ñöôïc ñòa chæ hoùa baèng soá cuûa baûn ghi hoaëc baèng khoùa vôùi caùc taäp tin maø chæ coù baûn ghi keá tieáp ñöôïc ñoïc. Treân moät soá ñóa.3 (a) trình baøy moät sô ñoà caáp phaùt trong ñoù sector laø ñôn vò cô baûn cuûa vieäc caáp phaùt khoâng gian ñóa vaø taäp tin bao goàm caùc sector lieân tieáp. Hieän thöïc caùc leänh vaøo/ra aûo Ñeå hieåu ñöôïc caùch caùc leänh vaøo/ra aûo ñöôïc thöïc hieän treân maùy lôùp 2. chæ coù moät sector ñöôïc daønh choã trong taäp tin vaø caùc sector khaùc treân cuøng moät track seõ ñöôïc söû duïng cho caùc taäp tin khaùc. Neáu sector laø ñôn vò caáp phaùt.Caán Truùc Maùy Tính -120- khoâng caàn phaûi vieát thuû tuïc tìm kieám. 12 sector 500-byte hoaëc 15 sector 400-byte. ngöôøi laäp trình khoâng caàn phaûi vieát thuû tuïc nhaân (baèng caùc vi leänh). ta caàn phaûi xem xeùt caùch caùc taäp tin ñöôïc toå chöùc vaø löu tröõ. kích thöôùc cuûa sector coù theå coá ñònh. Söï khaùc bieät seõ ñöôïc thaáy roõ nhaát trong tröôøng hôïp moät taäp tin ban ñaàu chæ coù 1 kyù töï.93 track laø ñieàu ngôù ngaån. Ñaëc tính cô baûn khaùc cuûa vieäc hieän thöïc moät heä thoáng taäp tin laø hoaëc taäp tin ñöôïc löu tröõ trong caùc ñôn vò caáp phaùt lieân tieáp hoaëc khoâng. Hình 6. track vaø cylinder . Treân caùc ñóa khaùc. kích thöôùc cuûa sector coù theå ñieàu chænh. baèng vôùi soá beà maët (ñieån hình töø 2 ñeán 20). Khoâng gian caáp phaùt tính baèng ñôn vò 2. toaøn boä 1 track seõ ñöôïc daønh choã cho taäp tin coøn caùc track khaùc treân cuøng moät cylinder seõ ñöôïc söû duïng cho caùc taäp tin khaùc.3 phaùt hoïa 1 ñóa ñôn giaûn coù maët chöùa 5 track 12 –sector. Thí duï ngöôøi laäp trình coù theå choïn ñeå taïo khuoân daïng cho moät track coù 10 sector 600-byte. moãi moät cylinder coù moät hay nhieàu track. Trong thaûo luaän sau ñaây ta giaû söû raèng ñóa ñöôïc duøng ñeå löu giöõ caùc taäp tin. Nguyeãn Höõu Loäc Khoa Vaät Lyù . tuy nhieân caùc khaûo saùt töông töï cuõng aùp duïng cho caùc phöông tieän khaùc. Moät ñaëc tính cô baûn cuûa vieäc hieän thöïc moät heä thoáng taäp tin laø kích thöôùc cuûa ñôn vò khoâng gian ñöôïc caáp phaùt. khoâng coù söï phaân bieät nhö vaäy vaø caû 2 loaïi leänh aûo (coù vaø khoâng coù ñònh ñòa chæ) ñeàu ñöôïc pheùp treân moïi taäp tin. Treân caùc maùy tính khaùc. Caùc taäp tin tröôùc ñöôïc goïi laø caùc taäp tin truy xuaát ngaãu nhieân ñeå phaân bieät vôùi caùc taäp tin sau ñöôïc goïi laø caùc taäp tin tuaàn töï. Tình huoáng naøy töông töï leänh nhaân ôû lôùp 2.3(b) trình baøy moät sô ñoà caáp phaùt trong ñoù moät taäp tin khoâng caàn chieám caùc sector lieân tieáp. Moät ñóa bao goàm moät chuoãi caùc cylinder. Moät vaán ñeà cô baûn phaûi ñöôïc giaûi quyeát cho caùc heä thoáng taäp tin laø vieäc caáp phaùt vuøng löu tröõ. 3. Hình 6. Treân moät soá maùy tính.

caùc track coù theå choïn baát kyø nôi ñaâu treân ñóa. Caùc chöông trình lôùp 3 xem taäp tin nhö moät chuoãi tuyeán tính caùc baûn ghi logic. Moät taäp tin coù theå chöùa moät daõy caùc chuoãi 80-byte chöùa treân ñóa vôùi khoâng gian ñöôïc caáp phaùt tính baèng ñôn vò track 16384-byte.3: Caáp phaùt khoâng gian ñóa Neáu track laø ñôn vò caáp phaùt. Töø vieäc bieát vò trí cuûa track ñaàu tieân.phaàn meàm lôùp 2 coù theå tính toaùn chính xaùc ñòa chæ treân ñóa cuûa sector ñang caàn vaø phaùt moät leänh cho ñóa ñeå ñoïc. caùc hình aûnh cuûa theû. Neáu taäp tin ñöôïc caáp phaùt lieân tieáp. caùc byte töø 80 ñeán 159 seõ chöùa trong baûn ghi thöù hai vaø v.Caán Truùc Maùy Tính -121- Hình 6. khoâng quan taâm ñeán caùc track khaùc. heä ñieàu haønh chæ caàn bieát vò trí baét ñaàu cuûa taäp tin vaø kích thöôùc cuûa caùc baûn ghi vaät lyù vaø logic ñeå tính toaùn vò trí cuûa baûn ghi logic. Neáu taäp tin khoâng ñöôïc caáp phaùt lieân tieáp.v… Heä ñieàu haønh xem taäp tin nhö moät taäp hôïp caùc ñôn vò caáp phaùt lieân tieáp vaø coù traät töï (maëc duø khoâng caàn thieát). baûn ghi logic 5000 seõ ôû trong sector 25 cuûa track 6. Thí duï neáu moät baûn ghi logic coù 8 töø vaø 1 track coù 100 sector 64-töø. ta caàn moät Nguyeãn Höõu Loäc Khoa Vaät Lyù . Theo quy luaät caùc track treân moät cylinder seõ ñöôïc caáp phaùt tröôùc khi moät cylinder keá ñöôïc caáp phaùt. khoâng theå tính vò trí cuûa moät baûn ghi logic tuøy yù töø vò trí baét ñaàu cuûa taäp tin. Moät caùch toång quaùt. Ñaây laø coâng vieäc cuûa heä ñieàu haønh nhaèm laøm cho kích thöôùc ñôn vò caáp phaùt vaät lyù trong suoát ñoái vôùi chöông trình caáp 3.v… Caùc track ñöôïc xem nhö keà nhau veà maët logic cho duø chuùng khoâng keà nhau veà maët vaät lyù vaø moät baûn ghi logic coù theå chia thaønh 2 track. Caùc byte töø 0 ñeán 79 cuûa track 0 seõ chöùa baûn ghi ñaàu tieân. moät taäp tin ñöôïc caáp phaùt lieân tieáp seõ chieám caùc track lieân tieáp. kích thöôùc cuûa baûn ghi logic khaùc vôùi kích thöôùc cuûa ñôn vò caáp phaùt. Khi chöông trình caáp 3 yeâu caàu baûn ghi logic thöù n. Ñeå ñònh vò moät baûn ghi logic tuøy yù. heä ñieàu haønh laáy baûn ghi n vaø khoâng quan taâm ñeán track naøo hoaëc caùc track maø baûn ghi coù theå chieám. Neáu moät taäp tin ñöôïc caáp phaùt baèng ñôn vò track nhöng khoâng lieân tieáp. caùc doøng tin vaø v. heä ñieàu haønh phaûi coù moät phöông phaùp ñònh vò baûn ghi. coù theå nhoû hôn vaø cuõng coù theå lôùn hôn. Ñeå heä ñieàu haønh phaân phoái baûn ghi n cuûa moät taäp tin naøo ñoù theo yeâu caàu. Coù moät khaùc bieät quan troïng giöõa caùch maø maùy lôùp 3 quan saùt moät taäp tin vôùi caùch maø heä ñieàu haønh quan saùt.

Phöông phaùp naøy töông ñöông vôùi söï phaân taùn baûng chæ soá taäp tin treân toaøn boä taäp tin. khoâng coù taäp tin naøo coù kích thöôùc cuoái cuøng ñöôïc bieát. khoâng theå truy xuaát ngaãu nhieân ñöôïc. thöôøng ta khoâng theå söû duïng taäp tin ñöôïc caáp phaùt lieân tieáp. baøn chaûi ñaùnh raêng.v… Baûn ghi logic 21 chieám caùc byte töø 2772 ñeán 2903 ôû sector 5. Haõy khaûo saùt heä thoáng thanh toaùn ñöôïc maùy tính hoùa cuûa Ecology Manufacturing Company vöøa thoâng baùo saûn phaåm môùi nhaát cuûa coâng ty naøy.Caán Truùc Maùy Tính -122- baûng goïi laø baûng chæ soá taäp tin (file index) cho bieát caùc ñôn vò caáp phaùt vaø caùc ñòa chæ treân ñóa thöïc söï ñöôïc caàn ñeán cuûa chuùng. Vieäc di chuyeån moät taäp tin ñang hieän höõu ñoâi khi thöïc hieän ñöôïc nhöng chi phí luoân luoân ñaét. Treân moät ñóa maø ñôn vò caáp phaùt laø sector. Cho ñeán ñaây caû 2 loaïi taäp tin.3(b) vôùi 512 byte cho moät sector. Moät taäp tin treân ñóa nhö vaäy chæ coù theå ñöôïc ñoïc tuaàn töï. Neáu taäp tin baét ñaàu ôû track j vaø ñöôïc pheùp lôùn daàn trong caùc track lieân tieáp. Khi kích thöôùc cöïc ñaïi cuûa taäp tin khoâng ñöôïc bieát tröôùc. Baûng chæ soá taäp tin coù theå ñöôïc toå chöùc hoaëc theo caùc baûn ghi logic cho bieát ñòa chæ treân ñóa cuûa töøng baûn ghi hoaëc ñôn giaûn nhö laø moät danh saùch caùc ñôn vò caáp phaùt vaø caùc ñòa chæ treân ñóa cuûa chuùng. ta haõy khaûo saùt moät ñóa coù ñôn vò caáp phaùt laø sector nhö ôû hình 6. moät vuøng cuûa ñóa coù theå ñöôïc caáp phaùt khi taäp tin ñöôïc taïo ra duø raèng döõ lieäu chöa coù. taäp tin ñöôïc caáp phaùt lieân tieáp vaø taäp tin khoâng ñöôïc caáp phaùt lieân tieáp ñaõ ñöôïc baøn ñeán nhöng chuùng ta chöa xaùc ñònh roõ taïi sao caû hai loaïi naøy ñeàu ñöôïc söû duïng. heä ñieàu haønh coù theå tìm kieám ñòa chæ cuûa sector ñöôïc yeâu caàu. Ñeå minh hoïa caùch söû duïng baûng chæ soá taäp tin. taäp tin coù theå chaïm vaøo moät taäp tin khaùc ôû track k vaø khoâng coù cöûa soå ñeå phaùt trieån. Neáu moät ñóa chöùa nhieàu taäp tin “lôùn daàn”. caùc maùy tính khoâng bieát cuoái cuøng chuùng coù bao nhieâu khaùch haøng neân chuùng khoâng bieât taäp tin khaùch haøng cuoái cuøng seõ lôùn bao nhieâu. Caùc taäp tin ñöôïc caáp phaùt lieân tieáp ít linh ñoäng hôn caùc taäp tin khoâng ñöôïc caáp phaùt lieân tieáp do Nguyeãn Höõu Loäc Khoa Vaät Lyù . Ñieàu naøy coù theå thöïc hieän moät caùch coù hieäu quûa nhaát neáu phaàn cöùng cung caáp theâm moät töø cho moãi ñôn vò caáp phaùt ñeå löu tröõ ñòa chæ naøy. Thí duï thôøi tieát haøng ngaøy cuûa naêm 1991 seõ yeâu caàu 365 baûn ghi logic vaø coù theå ñöôïc caáp phaùt tröôùc 31 thaùng 12 naêm 1990 duø raèng khoâng coù döõ lieäu naøo ñöôïc bieát ôû thôøi ñieåm taïo ra taäp tin. caùc byte töø 132 ñeán 263 taïo thaønh baûn ghi logic 1 vaø v. moãi sector chöùa ñòa chæ cuûa sector keá sau. Moät phöông phaùp khaùc ñeå ñònh vò caùc ñôn vò caáp phaùt cuûa moät taäp tin laø toå chöùc taäp tin nhö moät danh saùch lieân keát (linked list). Neáu kích thöôùc cöïc ñaïi cuûa taäp tin ñöôïc bieát tröôùc. vieäc löu tröõ töøng taäp tin naøy nhö laø moät taäp tin ñöôïc caáp phaùt lieân tieáp khoâng theå thöïc hieän ñöôïc. Moãi ñôn vò caáp phaùt chöùa ñòa chæ cuûa ñôn vò keá sau. Caùc maùy tình cuûa coâng ty co 1taäp tin ghi danh saùch teân vaø ñòa chæ cuûa taát caû caùc khaùch haøng nhöng ôû thôøi ñieåm baøn chaûi ñsng ñöôïc baùn. tình huoáng naøy khoâng xaûy ra do caùc track keá sau coù theå ñöôïc ñaët ôû moät cylinder baát kyø. Neáu taäp tin ñöôïc caáp phaùt khoâng lieân tieáp. Taäp tin coù caùc baûn ghi logic 132-byte (caùc doøng in) vôùi caùc byte töø 0 ñeán 131 taïo thaønh baûn ghi logic 0. Ngöôøi söû duïng taïo ra moät taäp tin ñoâi khi bieát ñöôïc kích thöôùc toái ña maø taäp tin seõ ñaït tôùi sau naøy nhöng ñoâi khi laïi khoâng bieát. Baèng caùch söû duïng baûn chæ soá taäp tin.

taäp tin ñöôïc caáp phaùt lieân tieáp vaø taäp tin khoâng ñöôïc caáp phaùt lieân tieáp. Hình 6. Hình 6. moät loã coù moät soá ñôn vò caáp phaùt naøo ñoù. Danh saùch naøy ñöôïc goïi laø danh saùch troáng (free list).5(b).5 : Theo doõi track cuûa caùc sector Nguyeãn Höõu Loäc Khoa Vaät Lyù . Moät phöông phaùp khaùc laø duy trì baûn ñoà bit vôùi moät bit cho moãi ñôn vò caáp phaùt nhö trình baøy trong hình 6. Caû 2 phöông phaùp ñeàu yeâu caàu khi coù moät taäp tin baát kyø ñöôïc caáp phaùt hoaëc traû veà. heä ñieàu haønh phaûi theo doõi caùc ñôn vò caáp phaùt naøo ñöôïc duøng vaø caùc ñôn vò caáp phaùt naøo ñaõ ñöôïc duøng cho caùc taäp tin k. Hôn nöõa. moät ñaëc ñieåm khoâng mong muoán. Moät phöông phaùp laø duy trì moät danh saùch taát caû caùc loã troáng. Phöông phaùp ñaàu tieân coù lôïi ñieåm laø deã daøng tìm thaáy moät loã troáng vôùi chieàu daøi coù theå nhöng laïi coù ñieåm baát lôïi laø danh saùch coù kích thöôùc thay ñoåi.5 (b). Khi caùc taäp tin ñöôïc taïo ra vaø ñöôïc huûy ñi chieàu daøi cuûa danh saùch seõ bieán ñoäng. vieäc thay ñoåi tình traïng cuûa moät ñôn vò caáp phaùt töø coù giaù trò sang bò chieám chæ laø vaán ñeà thay ñoåi 1 bit. Ñeå caáp phaùt khoâng gian treân ñóa cho moät taäp tin.Caán Truùc Maùy Tính -123- bôûi kích thöôùc cöïc ñaïi cuûa chuùng phaûi ñöôïc bieát tröôùc hay noùi caùch khaùc vieäc hieän thöïc chuùng ñôn giaûn hôn do chuùng khoâng caàn baûng chæ soá taäp tin.4(a) minh hoïa danh saùch troáng cho ñóa cuûa hình 6. Baûn ñoà bit coù lôïi ñieåm laø coù kích thöôùc coá ñònh. ñeàu coù theå ñöôïc söû duïng nhö laø caùc taäp tin truy xuaát tuaàn töï vaø caùc taäp tin truy xuaát ngaãu nhieân. Chuù yù laø caû 2 loaïi taäp tin. Tuy nhieân vieäc tìm moät khoái coù kích thöôùc cho tröôùc seõ khoù khaên. danh saùch vaø baûn ñoà phaûi ñöôïc caäp nhaät. Bit 1 chæ ra raèng ñôn vò caáp phaùt ñaõ ñöôïc chieám vaø bit 1 cho bieát ñôn vò caáp phaùt coøn coù giaù trò (chöa bò chieám).

Moät phöông phaùp baûo veä khaùc laø cung caáp cho taäp tin moät danh saùch roõ raøng nhöõng ngöôøi maø caùc chöông trình cuûa hoï coù theå truy xuaát taäp tin naøy. Ñieàu naøy cuoái cuøng daãn ñeán yù töôûng söû duïng boä nhôù phuï cuûa maùy tính (nhö laø ñóa töø) nhö laø moät vuøng löu tröõ cho caùc chöông trình vaø döõ lieäu. ñôn vò caáp phaùt laø cylinder. ta seõ phaûi tìm kieám treân töøng ñôn vò caáp phaùt neân vieäc tìm kieám treân ñóa seõ chaäm. Tuy nhieân vaãn caàn coù theâm nhieàu leänh nöõa ñeå theo doõi thoâng tin tröïc tuyeán ñöôïc löu tröõ. caùc chöông trình truy xuaát thoâng tin qua caùc leänh xuaát / nhaäp taäp tin. Moät baát lôïi cuûa vieäc caáp phaùt khoâng gian baèng caùc chunk nhoû laø baûng chæ soá taäp tin vaø baûn ñoà bit seõ lôùn.Caán Truùc Maùy Tính -124- Tröôùc khi keát thuùc chuû ñeà hieän thöïc heä thoáng taäp tin. Neáu taäp tin lôùn hôn nhieàu so vôùi ñôn vò caáp phaùt. Khi coù moät thao taùc truy xuaát taäp tin. tuy nhieân moät khoâng gian naøo ñoù seõ bò boû troáng trong ñôn vò caáp phaùt cuoái cuøng ñoái vôùi haàu heát caùc taäp tin. moät chöông trình phaûi cung caáp maät khaåu vaø heä ñieàu haønh seõ kieåm tra xem coù ñuùng maät khaåu hay khoâng tröôùc khi cho pheùp truy xuaát. neáu taäp tin ñöôïc caáp phaùt khoâng lieân tieáp. vaø moät track cuûa ñóa chöùa 100 sector 640 kyù töï. Caùch thoâng thöôøng cho heä ñieàu haønh ñeå toå chöùc caùc taäp tin tröïc tuyeán laø nhoùm chuùng vaøo trong caùc thö muïc (directory) Coù nhieàu sô ñoà baûo veä khaùc nhau ñang ñöôïc söû duïng. Neáu kích thöôùc moät taäp tin ñöôïc kyø voïng laø ngaén. 4. Caùc leänh quaûn lyù thö muïc Tröôùc ñaây vaøo nhöõng ngaøy ñaàu cuûa maùy tính. Thoâng tin tröïc tuyeán ñöôïc löu tröõ döôùi daïng coù taäp tin. Khi caùc chöông trình vaø döõ lieäu taêng kích thöôùc vaø soá löôïng. Vieäc phaûi tìm kieám töøng 640 kyù töï seõ ít ñöôïc mong muoán hôn vieäc tìm kieám töøng 64000 kyù töï. Sô ñoà ñôn giaûn nhaát laø moãi taäp tin coù moät maät khaåu (secret password) rieâng. tình huoáng naøy ngaøy caøng ít ñöôïc mong muoán. Vaøi taäp tin seõ chieám chính xaùc moät soá nguyeân cuûa soá ñôn vò caáp phaùt. seõ raát daïi doät neáu caáp phaùt khoâng gian ñóa baèng caùc ñôn vò caáp phaùt laø track hoaëc teä hôn. Hôn nöõa. Ñôn vò caáp phaùt caøng lôùn. Nguyeãn Höõu Loäc Khoa Vaät Lyù . trong tröôøng hôïp toång quaùt. caøng coù nhieàu khoâng gian troáng boû phí hôn. ngöôøi ta giöõ caùc chöông trình vaø döõ lieäu treân caùc theû ñuïc loã trong caùc vaên phoøng. taäp hôïp chuùng thaønh caùc ñôn vò thích hôïp vaø baûo veä chuùng khoûi nhöõng söû duïng khoâng ñöôïc pheùp. Thí duï neáu haàu heát nhöõng ngöôøi söû duïng moät heä thoáng taäp tin laø caùc sinh vieân vôùi caùc chöông trình ngaén trung bình khoaûng 3000 kyù töï. khoâng gian trung bình bò boû phí seõ laø ½ ñôn vò caáp phaùt. seõ khoâng coù hieäu quûa khi caáp phaùt khoâng gian ñóa baèng caùc ñôn vò caáp phaùt lôùn. ta cuõng neân ghi chuù veà kích thöôùc cuûa ñôn vò caáp phaùt. Thoâng tin coù theå ñöôïc truy xuaát tröïc tieáp bôûi maùy tính maø khoâng caàn ñeán söï can thieäp cuûa con ngöôøi ñöôïc goïi laø thoâng tin tröïc tuyeán ( off-line) caàn coù söï can thieäp cuûa con ngöôøi ( ñoïc moät hoäp theû) tröôùc khi maùy tính coù theå truy xuaát.

Caùc tính toaùn khaùc coù theå ñöôïc chia thaønh nhieàu maûng. Neáu chæ söû duïng moät boä xöû lyù vaät lyù. Hình 6. Caùc ñònh luaät veà vaät lyù chöa cung caáp moät lyù do naøo khaùc ñoái vôùi lôïi ích hieän nay trong xöû lyù song song. III. hoï seõ khoâng bò roái trí bôûi caùc taäp tin khoâng lieân quan.Caán Truùc Maùy Tính -125- Haàu heát caùc heä ñieàu haønh cho pheùp nhöõng ngöôøi söû duïng duy trì nhieàu hôn moät thö muïc. Baûn thaân moãi thö muïc laø moät taäp tin vaø nhö vaäy coù theå ñöôïc lieät keâ trong moät thö muïc khaùc vaø phaùt trieån daàn thaønh caây thö muïc (directory tree).6 trình baøy söï khaùc nhau giöõa xöû lyù song song thöïc söï vôùi nhieàu hôn moät boä xöû lyù vaät lyù vaø xöû lyù song song ñöôïc moâ phoûng chæ coù moät boä xöû lyù vaäy lyù. Ñeå cho vaøi quaù trình cuøng laøm vieäc song song. Theo thuyeát töông ñoái cuûa Einstein. Haäu quaû laø caùc maùy tính coù thôøi gian döôùi nanogiaây seõ coù kích thöôùc cöïc kyø nhoû. moãi moät trong nhieàu quaù trình cuøng laøm vieäc coù theå ñöôïc gaùn cho moät boä xöû lyù rieâng. Caùc ña thö muïc thöôøng ñaëc bieät höõu ích ñoái vôùi nhöõng ngöôøi laäp trình laøm vieäc treân moät soá ñeà aùn. Caùc thö muïc cuõng laø moät phöông phaùp thích hôïp ñeå duøng chung caùc taäp tin vôùi caùc thaønh vieân khaùc cuûa moät nhoùm. Treân moät maùy tính coù nhieàu hôn moät boä xöû lyù vaät lyù. Moät phöông phaùp khaùc ñeå taêng toác ñoä caùc maùy tính laø xaây döïng maùy coù nhieàu CPU. vieäc xöû lyù song song coù theå ñöôïc moâ phoûng baèng caùch cho boä xöû lyù chaïy laàn löôït töøng quaù trình trong caùc khoaûng thôøi gian ngaén. Thí duï neáu moät CPU caàn döõ lieäu töø boä nhôù chính caùch xa 1 ft. Ngay caû khi moät xöû lyù song song ñöôïc moâ phoûng. ta khoâng theå truyeàn caùc tín hieäu ñieän vôùi vaän toác nhanh hôn vaän toác cuûa aùnh saùng. Trong khi ñang laøm vieäc trong thö muïc ñoù. Noùi caùch khaùc boä xöû lyù coù theå ñöôïc duøng chung giöõa nhieàu quaù trình vôùi nhau. CAÙC LEÄNH AÛO DUØNG TRONG XÖÛ LYÙ SONG SONG Moät soá tính toaùn coù theå ñöôïc laäp trình moät caùch thích hôïp nhaát cho hai hay nhieàu quaù trình (process) cuøng hoaït ñoäng song song (ñoàng thôøi treân caùc boä xöû lyù khaùc nhau). Caùc vaán ñeà truyeàn thoâng töông töï naûy sinh khi coù xöû lyù song song thöïc söï cuõng naûy sinh trong tröôøng hôïp ñöôïc moâ phoûng. Moät maùy tính vôùi 1000 CPU 1 ngiaây coù cuøng coâng suaát tính toaùn vôùi 1 CPU coù thôøi gian 1 chu kyø laø 1/1000 ngiaây. theâm nhieàu leänh aûo caàn duøng. sau ñoù caùc maûng naøy ñöôïc thöïc hieän song song ñeå giaûm thôøi gian troâi qua caàn coù cho toaøn boä tính toaùn. nhöng maùy ñaàu deã thieát keá vaø reû hôn nhieàu so vôùi maùy sau. Hoï coù theå nhoùm taát caû caùc taäp tin coù lieân quan vôùi nhau trong moät ñeà aùn vaøm moät thö muïc. khoâng phaûi cho moät quaù trình ñôn. ta phaûi maát ít nhaát 1 ngiaây cho yeâu caàu gôûi ñeán boä nhôù vaø 1 ngiaây khaùc cho traû lôøi ñeán CPU. gaàn 1 ft/ngiaây. ngöôøi ta thöôøng xem moãi quaù trình nhö theå coù moät boä xöû lyù aûo rieâng. Giôùi haïn naøy coù lieân quan maät thieát ñeán vieäc toå chöùc moät maùy tính. cho pheùp caùc quaù trình ñöôïc tieán haønh ñoàng thôøi. Nguyeãn Höõu Loäc Khoa Vaät Lyù . Caùc leänh naøy ñöôïc thaûo luaän trong caùc phaàn sau.

gioáng nhö moïi quaù trình khaùc. moãi quaù trình töông öùng vôùi moät maùy aûo.6: Xöû lyù song song Khi moät chöông trình ñöôïc thöïc thi. Ñeå coù ñöôïc ñaày ñuû thuaän lôïi cuûa quaù trình song song . quaù trænh cha ít ñieàu khieån caùc quaù trình con. moät khi moät quaù trình ñaõ ñöôïc taïo ra . khôûi ñoäng. taát caû quaù trình ñöôïc taïo ra khi maùy tính ñöôïc khôûi ñoäng vaø maát ñi khi maùt tính ngöøng hoaït ñoäng. Quaù trình naøy. Trong caùc tröôøng hôïp khaùc. döõ lieäu vaø ñòa chæ baét ñaàu.Caán Truùc Maùy Tính -126- Hình 6. Caùc heä ñieàu haønh ñôn giaûn thöôøng hoã trôï moät soá quaù trình coá ñònh. khoâng coù caùch naøo quaù trình cha eùp buoäc quaù trình con döøng. Hai quaù trình sau ñoù chaïy ñoäc laäp vôùi moät quaù trình khaùc. quaù trình taïo (cha) duy trì toaøn boä ñieàu khieån treân quaù trình ñöôïc taïo (con). Nhieàu heä ñieàu haønh phöùc taïp hôn cho pheùp caùc quaù trình ñöôïc taïo ra vaø keát thuùc maø khoâng phaûi ngöøng maùy tính. ñöôïc ñaëc tröng bôûi moät traïng thaùi vaø moät khoâng gian ñòa chæ qua ñoù chöông trình vaø döõ lieäu ñöôïc truy xuaát. Vôùi moät soá heä thoáng laäp trình cuûa IBM 370. khôûi ñoäng . Traïng thaùi bao goàm boä ñeám chöông trình vaø coù theå moät töø traïng thaùi chöông trình. cho pheùp quaù trình taïo (creating process) xaùc ñònh traïng thaùi ban ñaàu cuûa quaù trình môùi bao goàm chöông trình . chöông trình phaûi chaïy nhö laø moät phaàn cuûa quaù trình naøo ñoù. khaûo saùt vaø keát thuùc. Nguyeãn Höõu Loäc Khoa Vaät Lyù . moät chöông trình lôùp 3 caàn coù moät leänh aûo ñeå taïo caùc quaù trình môùi coù theå giao phoù coâng vieäc. Moät maùy tính coù loaïi heä ñieàu haønh naøy coù theå hoå trôï moät soá thay ñoåi maùy lôùp 3. Moät soá heä ñieàu haønh cung caáp moät leänh lôùp 3 ñeå taïo moät quaù trình môùi. khaûo saùt vaø keát thuùc quaù trình con. Treân nhieàu maùy tính moät chöông trình phaûi chôø trong haøng ñôïi ngoõ vaøo cho ñeán khi moät quaù trình trôû thaønh coù giaù trò tröôùc khi quaù trình ñöôïc naïp vaøo khoâng gian ñòa chæ cuûa quaù trình vaø ñöôïc thöïc thi. Trong moät soá tröôøng hôïp. moät thuû tuïc coù theå goïi moät thuû tuïc khaùc theo caùch rieâng sao cho coù thuû tuïc goïi vaø thuû tuïc bò goïi chaïy song song nhö laø caùc quaù trình rieâng leû. moät con troû vaø caùc thanh ghi toång quaùt. Caùc leänh aûo toàn taïi ñeå quaù trình cha döøng.

Sign up to vote on this title
UsefulNot useful