KIEÁN TRUÙC MAÙY TÍNH & HỆ ĐIỀU HÀNH TS. Nguyeãn Hoàng Sôn 1 CuuDuongThanCong.com https://fb.com/tailieudientucntt Tài liệu tham khảo 1. William Stallings, Computer Organization and Architecture – Designing for Performance, 8th Edition, Prentice-Hall International, Inc 2. Principles of Computer Architecture, Miles Murdocca and Vincent Heuring 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt Baøi 1 GIÔÙI THIEÄU Kieán truùc & Toå chöùc maùy tính 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt Toå chöùc vaø Kieán truùc Hai thuaät ngöõ nhaèm moâ taû moät heä thoáng maùy tính.
Kieán truùc ñeà caäp ñeán caùc thuoäc tính maø ngöôøi laäp trình nhaän thaáy ñöôïc, aûnh höôûng tröïc tieáp ñeán thöïc thi chöông trình (Instruction set, soá bit bieåu dieãn data type, cô caáu I/O, addressing) Toå chöùc maùy tính ñeà caäp ñeán caùc ñôn vò hoaït ñoäng vaø sự lieân keát giöõa chuùng, thöïc hieän caùc ñaëc taû kieán truùc (chi tieát phaàn cöùng, control signals, interfaces, memory technology) Ví duï xaây döïng multiply instruction 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt Caáu truùc vaø Chöùc naêng Caáu truùc: cuï theå hoùa caùc thaønh phaàn vaø các mối lieân heä giữa các thành phần, laø hieän thöïc cụ thể cuûa toå chöùc maùy tính. Chöùc naêng: hoaït ñoäng, thể hiện vai trò cụ thể cuûa moãi thành phần trong caáu truùc.com https://fb.com/tailieudientucntt Chöùc naêng maùy tính Data processing Data storage Data movement (I/O, peripheral, communication) Control 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt Nguoàn vaø ñích cuûa data Cô caáu vaän chuyeån data Cô caáu ñieàu kieån Phöông tieän Phöông tieän löu tröõ data xöû lyù data 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt Caùc thaønh phaàn chính Coù boán thaønh phaàn chính: •CPU: Ñieàu khieån caùc hoaït ñoäng vaø thöïc hieän caùc chöùc naêng xöû lyù data •Main memory: Löu tröõ data •I/O: vaän chuyeån data giöõa maùy tính vôùi beân ngoaøi •System interconnection: cung caáp cô cheá truyeàn thoâng giöõa ba thaønh phaàn treân 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt MT Communication line CPU Ngoaïi vi Main memory System Interconnection Maùy tính •Löu tröõ •Xöû lyù I/O 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt Moät maùy tính coù theå coù moät hay nhieàu CPU Dung löôïng boä nhôù laø tuøy choïn Cô caáu I/O coù qui moâ khaùc nhau tuøy theo nhu caàu 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt Thaønh phaàn phöùc taïp nhaát laø CPU Control unit ALU (Arithmetic and Logic Unit) Register CPU Interconnection 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt CU CPU Sequencing Control unit ALU logic Control Unit Regisers CPU bus vaø Decoders Conrol Registers memory 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån 3000 BC 4000 BC 14 CuuDuongThanCong.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån (tt) Theá heä thöù nhaát: Ñeøn chaân khoâng (vacuum tubes) ENIAC Von Neumann/ Alan Turing 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt Máy tính ENIAC 16 CuuDuongThanCong.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån:Máy tính ENIAC ENIAC (Electronic Numerical Integrator and Computer) là máy tính điện tử số đầu tiên do Giáo sư Mauchly và người học trò Eckert tại Đại học Pennsylvania thiết kế vào năm 1943 và được hoàn thành vào năm 1946. Đây là một máy tính khổng lồ với thể tích dài 20 mét, cao 2,8 mét và rộng vài mét. ENIAC bao gồm: 18.000 đèn điện tử, 1.500 công tắc tự động, cân nặng 30 tấn, và tiêu thụ 140KW giờ.
Nó có 20 thanh ghi 10 bit (tính toán trên số thập phân). Có khả năng thực hiện 5.000 phép toán cộng trong một giây. Công việc lập trình bằng tay bằng cách đấu nối các đầu cắm điện và dùng các ngắt điện.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån(tt) Theá heä thöù hai: Transistor Multiplexer Laäp trình möùc cao Phaàn meàm heä thoáng 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt Mouse (1964) 19 CuuDuongThanCong.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån (tt) Theá heä thöù 3: Maïch tích hôïp (Integrated Circuits) SSI, MSI Microelectronics IBM/360, PDP-8( minicomputer ñaàu tieân, duøng bus) Luaät Moore Số lượng transistors trên một microchip tăng lên gấp đôi sau mỗi 18-24 tháng. Tốc độ microprocessor tăng lên gấp đôi sau mỗi 18-24 tháng.
Giá thành trên một microchip giảm một nửa sau mỗi 18-24 tháng Tham khảo: http://www.com/intel/museum/25anniv/hof/moore.com https://fb.com/tailieudientucntt Sô löôïc lòch söû phaùt trieån (tt) Theá heä thöù 4: LSI, VLSI, ULSI Semiconductor Memory Microprocessor Caùc theá heä sau 21 CuuDuongThanCong.com https://fb.com/tailieudientucntt 22 CuuDuongThanCong.com https://fb.com/tailieudientucntt 23 CuuDuongThanCong.com https://fb.com/tailieudientucntt Sơ đồ kiến trúc của PIII 24 CuuDuongThanCong.com https://fb.com/tailieudientucntt 25 CuuDuongThanCong.com https://fb.com/tailieudientucntt 26 CuuDuongThanCong.com https://fb.com/tailieudientucntt Intel Core 2 Dual 27 CuuDuongThanCong.com https://fb.com/tailieudientucntt Naâng cao chaát löôïng Toác ñoä boä vi xöû lyù Döï ñoaùn nhaùnh Phaân tích luoàng soá lieäu Thöïc thi coù döï baùo Caân ñoái hieäu suaát Caûi thieän toå chöùc vaø caáu truùc chip.com https://fb.com/tailieudientucntt 29 CuuDuongThanCong.com https://fb.com/tailieudientucntt 30 CuuDuongThanCong.com https://fb.com/tailieudientucntt Giaûi phaùp caân ñoái hieäu suaát Boä nhôù lôùn hôn Cache Lieân keát CPU-memory toác ñoä cao Thieát keá Toác ñoä giöõa caùc thieát bò Caùc öùng duïng vaø thieát bò ngoaïi vi 31 CuuDuongThanCong.com https://fb.com/tailieudientucntt Caûi thieän toå chöùc vaø caáu truùc chip Toác ñoä vaø clock rate Kích thöôùc vaø toác ñộ cache Kieán truùc song song Caùc heä quaû Coâng suaát Treã (RC delay) Treã truy xuaát boä nhôù (Memory latency) 32 CuuDuongThanCong.com https://fb.com/tailieudientucntt Baøi 2 STORED-PROGRAM VAØ GENERAL-PURPOSE COMPUTER 33 CuuDuongThanCong.com https://fb.com/tailieudientucntt Söï xuaát hieän stored-program vaø general-purpose hardware Moät taäp nhoû caùc linh kieän logic cô baûn coù theå keát hôïp vôùi nhau theo caùc caùch khaùc nhau ñeå löu tröõ döõ lieäu nhò phaân vaø thöïc hieän caùc pheùp toaùn soá hoïc vaø luaän lyù treân döõ lieäu ñoù. Khi caàn moät tính toaùn naøo ñoù, moät caáu hình keát noái caùc thaønh phaàn logic ñöôïc thieát keá vaø thöïc hieän. Coù theå hieåu ñoù chính laø daïng laäp trình.com https://fb.com/tailieudientucntt Phaàn cöùng ñöôïc xaây döïng töø caùc thaønh phaàn logic Tuaàn töï caùc chöùc naêng Caùc Data soá hoïc vaø luaän lyù keát quaû Laäp trình phaàn cöùng (hardware programming) 35 CuuDuongThanCong.com https://fb.com/tailieudientucntt Söï xuaát hieän stored-program vaø general-purpose hardware (tt) Neáu taát caû caùc öùng duïng ñeàu thöïc hieän baèng hardwired progam => baát tieän vaø khaû naêng cuûa maùy tính raát haïn cheá Xaây döïng caùc chöùc naêng soá hoïc vaø luaän lyù toång quaùt (general-purpose hardware) Hoaït ñoäng döïa vaøo tín hieäu ñieàu khieån 36 CuuDuongThanCong.com https://fb.com/tailieudientucntt Caùc maõ leänh (instruction codes) Bieân dòch Taäp tín hieäu ñieàu khieån DATA Caùc chöùc naêng Caùc keát quaû soá hoïc vaø luaän lyù toång quaùt 37 CuuDuongThanCong.com https://fb.com/tailieudientucntt Phaùt sinh tín hieäu ñieàu khieån Toaøn boä chöông trình laø moät tuaàn töï goàm nhieàu böôùc. Moãi böôùc caàn tieán haønh moät vaøi pheùp soá hoïc vaø luaän lyù treân data naøo ñoù.
Moãi böôùc caàn moät taäp tín hieäu töông öùng Moät code duy nhaát cho moät taäp tín hieäu coù theå Moät segment töông öùng trong phaàn cöùng toång quaùt chaáp nhaän moät taäp tín hieäu ñieàu khieån ñöôïc phaùt ra.com https://fb.com/tailieudientucntt Phaùt sinh tín hieäu ñieàu khieån(tt) Laäp trình baây giôø: thay vì noái daây phaàn cöùng cho moãi chöông trình môùi, chæ caàn cung caáp moät tuaàn töï môùi cuûa caùc code Moãi code thöïc ra laø moät instruction, ñöôïc phaàn bieân dòch tieáp nhaän vaø phaùt ra taäp tín hieäu ñieàu khieån töông öùng. Tuaàn töï caùc instruction ñoù laø software 39 CuuDuongThanCong.com https://fb.com/tailieudientucntt Ba khaùi nieäm cô baûn veà stored-program Data vaø instruction ñöôïc löu tröõ trong moät boä nhôù ñoïc-ghi. Noäi dung trong boä nhôù ñöôïc ñònh vò theo vò trí, khoâng caàn bieát kieåu data laø gì. Thöïc thi chöông trình theo kieåu tuaàn töï, töø instruction naøy ñeán instruction keá tieáp.com https://fb.com/tailieudientucntt I/O module Data vaø instruction phaûi ñöôïc ñöa vaøo trong heä thoáng qua module nhaäp Caàn laáy hay thoâng baùo keát quaû tính toaùn thoâng qua module xuaát Goïi chung laø I/O module 41 CuuDuongThanCong.com https://fb.com/tailieudientucntt Boä nhôù chính Thieát bò nhaäp ñöa data vaø inst vaøo theo tuaàn töï, nhöng chöông trình khoâng phaûi thöïc thi theo tuaàn töï moät caùch cöùng nhaéc.
Hoaït ñoäng tính toaùn coù theå phaûi truy xuaát nhieàu döõ kieän hôn taïi moät thôøi ñieåm theo moät tuaàn töï khoâng theå döï ñoaùn ñöôïc. =>caàn coù nôi löu tröõ taïm thôøi caû data vaø inst, ñoù laø boä nhôù chính 42 CuuDuongThanCong.com https://fb.com/tailieudientucntt Boä nhôù 0 : 1 Instruction CPU 2 MAR Instruction : Instruction MBR : Data I/O AR Data I/O BR I/O module Buffer 43 CuuDuongThanCong.com https://fb.com/tailieudientucntt Bài 3 KIẾN TRÚC VON NEUMANN VÀ KIẾN TRÚC HARVARD 44 CuuDuongThanCong.com https://fb.com/tailieudientucntt KIẾN TRÚC VON NEUMANN ENIAC (Electronic Numerical Integrator And Computer) laø maùy tính ñieän töû daïng general- purpose ñaàu tieân. ENIAC toû ra naëng neà vaø ñôn ñieäu Caûi tieán töø yù töôûng stored-program, nhaø toaùn hoïc John von Neumann thieát keá ra maùy tính môùi goïi laø IAS (Institute for Advanced Studies) laø khuoân maãu cho taát caû caùc maùy tính general-purpose sau naøy.com https://fb.com/tailieudientucntt 46 CuuDuongThanCong.com https://fb.com/tailieudientucntt ALU Boä nhôù Thieát bò chính I/O Program Control Unit Caáu truùc cuûa maùy tính IAS 47 CuuDuongThanCong.com https://fb.com/tailieudientucntt Maùy von Neumann Main memory: löu tröõ caû data vaø instruction ALU: thao taùc treân soá lieäu nhò phaân PCU: bieân dòch vaø taïo ñieàu kieän thöïc thi caùc inst Thieát bò I/O ñöôïc ñieàu khieån bôûi CU 48 CuuDuongThanCong.com https://fb.com/tailieudientucntt Maùy von Neumann Boä nhôù chöùa 1000 vò trí hay töø nhôù (word), moãi word coù 40 bit. Moãi soá (data)ñöôïc bieåu dieãn goàm 1bit daáu vaø 39 bit giaù trò Moãi word coù theå chöùa hai inst 20 bit Moät inst goàm 8 bit op code vaø 12 bit ñòa chæ 49 CuuDuongThanCong.com https://fb.com/tailieudientucntt 0 1 39 Giaù trò Sign Number word bit Instruction traùi Instruction phaûi 0 7 8 19 20 28 39 Op code addr Op code addr Instruction word 50 CuuDuongThanCong.com https://fb.