Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 2
lượt xem 6
download
Những linh kiện điện tử trong mỗi máy tính chỉ có thể nhận biết và thực hiện trực tiếp một số lệnh hữu hạn và một chương trình máy tính chỉ có thể thực hiện trên máy tính đó nếu sử dụng chính số lệnh hữu hạn đó.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 2
- -14- Caán Truùc Maùy Tính Moät naêm sau Motorola laïi cho ra ñôøi 68020 laø moät chip 32 bit thaät söï. 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, Apollo vaø Hewlett-Packard. Chip tieáp theo laø 68030 maø söï caûi tieán naèm ôû quaûn lyù boä nhôù. 68040 gioáng nhö 80486 chöùa CPU, moät ñoàng xöû lyù toaùn hoïc, ñôn vò quaûn lyù boä nhôù vaø cache treân chip. Sau naøy laïi xuaát hieän chip Power PC. Roõ raøng ta coù theå so saùnh 68030 vôùi 80386, 68040 vôùi 80486, Pentium vôùi Power PC cuûa 2 coâng ty Intel vaø Motorola. 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. 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. 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. 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -15- Caán Truùc Maùy Tính 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ù, boä nhôù vaø caùc thieát bò vaøo/ra. 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. 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á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 Bus Hình 2.1 I. CAÙC BOÄ XÖÛ LYÙ Boä xöû lyù trung taâm (CPU) laø ñaàu naõo cuûa maùy tính. 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -16- Caán Truùc Maùy Tính Boä xöû lyù trung taâm goàm ñôn vò ñieàu khieån (giöõ nhieäm vuï laáy leänh, 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, tröø, nhaân, chia, VAØ, HOAËC v.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. Moãi thanh ghi coù moät chöùc naêng rieâng. 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. Ngoaøi ra coù thanh ghi leänh (Instruction register). 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 chæ soá (index register), thanh ghi traïng thaùi (status register), con troû ngaên xeáp (stack pointer) v.v… 1. Thöïc hieän leänh CPU thöïc hieän leänh tuaàn töï nhö sau: a. Tìm naïp leänh keá tieáp töø boä nhôù vaøo thanh ghi leänh b. Thay ñoåi noäi dung thanh ñeám chöông trình ñeå xaùc ñònh ñòa chæ leänh keá c. Giaûi maõ leänh vöøa naïp d. Xaùc ñònh nôi chöùa döõ lieäu trong boä nhôù e. Tìm naïp döõ lieäu vaøo caùc thanh ghi trong CPU neáu caàn thieát f. Thöïc hieän leänh g. Löu keát quaû vaøo nôi thích hôïp h. 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õ- 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, soá leänh cuûa moät taäp leänh thöôøng trong khoaûng töø 20 ñeán 300. 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û. Xu höôùng trong thöïc teá seõ ngöôïc laïi, moät taäp leänh nhoû seõ toát hôn. 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -17- Caán Truùc Maùy Tính Caùc trình bieân dòch (compiler) cuûa caùc ngoân ngöõ caáp cao nhö Ada, Modula 2, Pascal, 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, coàng keành vaø khoù söû duïng. 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). Maùy tính naøy thao taùc raát nhanh. 2. 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.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, B. 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. ALU thöïc hieän pheùp toaùn coäng, 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, ñöa ra keát quaû treân thanh ghi xuaát ra. 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. Trong hình treân pheùp coäng ñöôïc söû duïng ñeå minh hoaï. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -18- Caán Truùc Maùy Tính 3. Thöïc hieän leänh song song: Töø nhöõng ngaøy ñaàu khai sinh ra maùy tính, nhöõng nhaø thieát keá ñaõ coá gaéng taïo ra nhöõng maùy tính xöû lyù nhanh. Ñeå laøm ñöôïc ñieàu aáy, ngöôøi ta ñaõ tìm nhieàu bieän phaùp ñeå hoaøn thieän phaàn cöùng. Tuy nhieân, 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. 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, khoaûng 30cm/ngiaây vaø trong caùp ñoàng laø 20cm/ngiaây. Ñ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, 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. 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û. Vôùi caùc maùy tính coù toác ñoä cao, 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. Ñoâi khi caùc sieâu maùy tính ñöôïc ñaët chìm trong chaát loûng freon, moät chaát duøng laøm nguoäi nhanh. Ñeå giaûi quyeát vaán ñeà naøy, thay vì taïo ra moät CPU toác ñoä cao, 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. 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. Maùy tính song song ñöôïc chia thaønh 3 loaïi (theo Flynn, 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, ñôn döõ lieäu - (Single Instruction stream, Single Data stream) - SIMD: maùy loaïi ñôn leänh, ña döõ lieäu (Single Instruction stream, Multiple Data stream) MIMD: maùy loaïi ña leänh, ña döõ lieäu - (Multiple Instruction stream, Multiple Data stream) Maùy von Neumann truyeàn thoáng thuoäc loaïi SISD, 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. 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.v… Ngay caû trong moâ hình tuaàn töï naø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. 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ù
- -19- Caán Truùc Maùy Tính Hình 2.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. Trong luùc ñoù, ñô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. Quaù trình naøy tieáp tuïc cho ñeán khi khoâng theå tieáp tuïc ñöôïc nöõa, 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. 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.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). 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. 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -20- Caán Truùc Maùy Tính Chuù yù raèng maëc duø maùy söû duïng cô cheá song song beân trong, 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. Ngöôïc laïi, caùc maùy SIMD thao taùc treân nhieàu taäp döõ lieäu song song. ÖÙng duïng ñieån hình cuûa loaïi maùy SIMD laø döï baùo thôøi tieát. Thí duï nhö tính nhieät ñoä trung bình haøng ngaøy cho nhieàu vuøng, phöông phaùp tính ñeàu gioáng nhau nhöng vôùi caùc döõ lieäu khaùc. 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.5 Ñöôøng döõ lieäu ôû ñaây töông töï nhö trong hình 2.2 , chæ khaùc ôû choã thay vì coù moät bieán ñôn cho töøng ngoõ nhaäp cuûa ALU, ta coù moät vector vôùi n ngoõ nhaäp. Töông töï ALU thöïc söï laø moät ALU vector, coù khaû naêng thöïc hieän moät thao taùc nhö pheùp coâng vector (hình 2.5 b) treân 2 vector nhaäp vaø keát quûa ñöôïc laáy ra ôû vector xuaát. 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. Hình 2.5 Moät maùy khaùc gaàn gioáng vôùi SIMD laø boä xöû lyù daõy (array processor, moät thieát keá khôûi ñaàu töø Ñaïi hoïc Illinois. Ñoù laø maùy tính ILLIAC IV nhö minh hoïa trong hình 2.6 sau: Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -21- Caán Truùc Maùy Tính Hình 2.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ôù. 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), moãi boä xöû lyù söû duïng döõ lieäu rieâng laáy töø moät boä nhôù rieâng. Boä xöû lyù daõy ñaëc bieät thích hôïp cho vieäc tính toaùn ma traän. Loaïi maùy thöù ba laø MIMD, trong ñoù caùc CPU khaùc nhau laøm vieäc vôùi nhöõng chöông trình khaùc nhau, thænh thoaûng chuùng söû duïng chung moät boä nhôù. Heä thoáng ñaët choã tröôùc trong maùy bay laø moät thí duï, nhieàu ngöôøi cuøng ñaët choã ñoàng thôøi nhöng khoâng tieán haønh song song, 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. Hình 2.7 a trình baøy moät boä ña xöû lyù (multiprocessor), moät maùy MIMD söû duïng boä nhôù chia seû (shared memory). Caùc boä xöû lyù truy xuaát tôùi boä nhôù chia seû (duøng chung) thoâng qua bus. Hình 2.6 Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -22- Caán Truùc Maùy Tính 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). 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. Moät thieát keá ñoù ñöôïc trình baøy trong hình 2.6b cho thaáy moãi boä xöû lyù coù moät boä nhôù cuïc boä (rieâng), caùc boä xöû lyù khaùc khoâng theå thaâm nhaäp ñeán. 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û. 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. 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. Moät soá khaùc söû duïng caching, 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ù. II- 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. Khoâng coù maùy tính soá naøo löu tröõ chöông trình maø khoâng coù boä nhôù, ñeå töø ñoù boä xöû lyù coù theå ghi vaø ñoïc thoâng tin 1. Bit Ñôn vò cô baûn cuûa boä nhôù laø moät chöõ soá nhò phaân goïi laø bit (binary digit). Moät bit coù theå laø 0 hoaëc 1. 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. 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. Caøng nhieàu giaù trò caàn ñöôïc phaân bieät, 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ôù. Heä thoáng soá nhò phaân chæ yeâu caàu 2 giaù trò ñeå phaân bieät, 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á maùy tính nhö caùc mainframe cuûa IBM, ñöôïc quaûng caùo coù theå söû duïng caû soá thaäp phaân laãn soá nhò phaân. 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. 4 bit cho ta 16 toå hôïp, duøng cho 10 soá töø 0 ñeán 9 coøn 6 toå hôïp khoâng söû duïng. Thí duï: 16 bit ôû daïng thaäp phaân coù theå chöùa caùc soá töø 0 tôùi 9999, chæ cho 10000 toå hôïp trong khi 16 bit nhò phaân coù theå chöùa 65536 toå hôïp khaùc nhau. 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. Tuy nhieân ñieàu gì seõ xaûy ra, 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. 4 linh kieän nhö vaäy seõ cung caáp 10000 toå hôïp. Cuõng coù theå Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -23- Caán Truùc Maùy Tính duøng chuùng ñeå bieåu dieãn caùc soá nhò phaân, chæ duøng 0 vaø 1. Trong tröôøng hôïp naøy ta chæ coù 16 toå hôïp. Vôùi nhöõng linh kieän nhö vaäy, roõ raøng soá thaäp phaân coù hieäu quaû hôn. 2. Ñò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ù moät soá goïi laø ñòa chæ hoaëc vò chæ (address) cuûa oâ nhôù. Caùc chöông trình coù theå tham chieáu ñeán caùc ñòa chæ naøy. Neáu boä nhôù coù n oâ nhôù, chuùng seõ ñaùnh ñòa chæ töø 0 tôùi n-1. Caùc oâ nhôù chöùa cuøng moät soá bit. Moät oâ nhôù coù k bit seõ coù theå chöùa 1 trong 2k toå hôïp bit khaùc nhau. Hình 2.7 trình baøy 3 caùch toå chöùc khaùc nhau cho moät boä nhôù 96 bit. Neáu 1 ñòa chæ coù m bit, 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.7 Thí duï: Trong hình 2.7 a caàn ít nhaát 4 bit ñeå dieãn taû caùc soá töø 0 ñeán 11. Tuy nhieân chæ caàn 3 bit ñeå dieãn taû ñòa chæ trong caùc hình 2.7b vaø 2.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ôù. Moät boä nhôù coù 212 oâ nhôù, moãi oâ nhôù coù 8 bit vaø moät boä nhôù coù 212 oâ nhôù, moãi oâ nhôù coù 60 bit thì caû hai ñeàu caàn 12 bit cho ñòa chæ, tuy nhieân dung löôïng boä nhôù tröôùc nhoû hôn boä nhôù sau. 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ù
- -24- Caán Truùc Maùy Tính Honeywell 6180 36 bits /oâ nhôù CDC Cyber 60 bits / oâ nhôù Trong nhöõng naêm gaàn ñaây, 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. Nhieàu byte goäp laïi thaønh töø (word). Moät maùy tính söû duïng 1 töø 16 bit nghóa laø maùy coù 2 byte/töø, trong khi ñoù moät maùy duøng 1 töø 32 bit seõ coù 4 byte/töø. Haàu heát caùc leänh cuûa maùy tính ñeàu thao taùc treân töø, thí duï coäng 2 töø vôùi nhau. Do vaäy, 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, 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, coäng, tröø vaø caùc thao taùc khaùc treân caùc töø 32 bit. 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. 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. Hình 2.8a mieâu taû moät phaàn boä nhôù cuûa moät maùy tính 32 bit, 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. Hình 2.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. 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 0 4 4 8 8 0 1 1 0 12 1 2 3 4 5 5 4 3 2 2 Byte Byte Töø 32 bits Töø 32 bit (a) (b) 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. 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. 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, soá nguyeân hoaëc döõ lieäu khaùc) vaø Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -25- Caán Truùc Maùy Tính chieàu daøi laø bao nhieâu. Ñ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. 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. 4. 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å traùnh nhöõng loãi nhö vaäy, 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. Khi söû duïng caùc maõ naøy, caùc bit phuï ñöôïc theâm vaøo ôû moãi töø nhôù theo moät phöông phaùp ñaëc bieät. Khi ñoïc moät töø ra khoûi boä nhôù, caùc bit phuï ñöôïc kieåm tra ñeå xem coù loãi hay khoâng. Ñ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. Ñaët toaøn boä chieàu daøi bit laø n (n=m+r). 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. Cho 2 töø maõ 10001001 vaø 10110001, ta coù theå xaùc ñònh chuùng coù bao nhieâu bit töông öùng khaùc nhau, ôû thí duï naøy 2 töø maõ coù 3 bit khaùc nhau. Ñeå xaùc ñònh soá bit khaùc nhau, 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û. Soá caùc bit treân 2 töø maõ khaùc nhau goïi laø khoaûng caùch Hamming. 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, caàn coù d loãi ñôn bit (single bit error) seõ ñoåi maõ naøy thaønh maõ kia. 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. Vôùi moät töø nhôù m bit, 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, chæ coù 2m trong 2n töø maõ coù giaù trò hôïp leä. Khi ñoïc boä nhôù thaáy xuaát hieän moät töø maõ khoâng hôïp leä, maùy tính hieåu raèng ñaõ xaûy ra moät loãi boä nhôù. Cho moät giaûi thuaät ñeå tính caùc bit kieåm tra, ta coù theå xaây döïng moät danh saùch caùc töø ma hoaøn toaøn hôïp leä, töø dfanh saùch naøy tìm ra 2 töø maõ coù khoaûng caùch Hamming nhoû nhaát. Khoaûng caùch naøy laø khoaûng caùch Hamming ñaày ñuû. 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.9 coù 3 voøng troøn A, B vaø C taïo thaønh 7 vuøng khaùc nhau. Thí duï ta maõ hoaù töø nhôù 4 bit 1100 trong caùc vuøng AB,ABC, AC vaø BC. Cöù 1 bit cho 1 vuøng. 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
- -26- Caán Truùc Maùy Tính Hình 2.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.10: Soá bit kieåm tra caàn thieát cho maõ söûa loãi ñôn 5. 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), 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). Söï saép xeáp naøy toàn taïi ñeán baây giôø. Boä nhôù 1MB ñöôïc chia laøm 16 vuøng nhôù, 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ù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; 4G ñoái vôùi 80386, 80486, Pentium, Pentium MMX, Pentium Pro; 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). Neáu boâ vi xöû lyù chaïy ôû cheá ñoä thöïc (real mode), chæ coù 1 MB ñaàu tieân ñöôïc truy xuaát. Ngöôïc laïi, 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. Nguyeãn Höõu Loäc Khoa Vaät Lyù
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Câu hỏi trắc nghiệm Cấu trúc máy tính
7 p | 578 | 115
-
Bài giảng Kiến trúc máy tính - Nguyễn Kim Khánh
15 p | 255 | 55
-
Bài Giảng Tóm Tắt Đồ Họa Máy Tính
113 p | 141 | 43
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 4
13 p | 73 | 9
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 5
13 p | 69 | 8
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 10
9 p | 66 | 7
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 8
13 p | 70 | 7
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 9
13 p | 67 | 6
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 7
13 p | 60 | 6
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 6
13 p | 86 | 6
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 3
13 p | 74 | 6
-
Giáo Trình Kiến Trúc Máy Tính - Nguyễn Hữu Lộ phần 1
13 p | 58 | 6
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn