15
บบบบบ 4 บบบบบบบบบบบ บบบบบบบบบบบ บบบบบบบบบ บบบบบบบบบบบบบบบบบบบบ บบบบบบบบบบบบบบบ บบบบบบบบบบบบบบบบบ บบบบบบบบบบบบ บบบบบบบบบบบบบบบบบบบ บบบบบบบบบบบบบบ 80x86 บบบบบบบบบบ บบบบบบบบบบบบบบบบบบบบ บบบบบบบบบบบ 8086 • บบบบบบบ บบบบบบบบบบบบบบบบบบบบบ • บบบบบ บบบบบบบบบบบบบบบบบ บบบบบบบบบบบ ALU • Registers บบบบบบบบบบบบบบบบบบ บบบบบบบบบบบบบบบบ บบบบบบบบบบบบบบบบบบบ บบบบบบบบบบบบบบบบ

บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

Embed Size (px)

DESCRIPTION

บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น. สถาปัตยกรรมทั่วไปของระบบคอมพิวเตอร์ หน่วยประมวลผลกลาง หน่วยความจำ สถาปัตยกรรมของหน่วยประมวลผลตระกูล 80x86 ความเป็นมา ลักษณะทั่วไปของไมโครโปรเซสเซอร์ 8086 ระบบบัส การจัดการหน่วยความจำ แสต็ก รายละเอียดของส่วนประกอบภายใน ALU Registers - PowerPoint PPT Presentation

Citation preview

Page 1: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

บทท�� 4 สถาปัตยกรรมคอมพิ�วเตอร�เบ��องต�น

• สถาปัตยกรรมท��วไปัของระบบคอมพิ�วเตอร�– หน วยปัระมวลผลกลาง– หน วยความจำ$า

• สถาปัตยกรรมของหน วยปัระมวลผลตระก%ล 80x86– ความเปั'นมา– ล�กษณะท��วไปัของไมโคร

โปัรเซสเซอร� 8086• ระบบบ�ส• การจำ�ดการหน วยความจำ$า• แสต.ก

– รายละเอ�ยดของส วนปัระกอบภายใน• ALU• Registers

– โหมดการอ�างแอดเดรส– การอ�นเตอร�ร�พิท�

• สถาปัตยกรรมของหน วยปัระมวลผลสม�ยใหม

Page 2: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

หน วยปัระมวลผลกลาง

• ข��นตอนการท$างาน– อ านค$าส��ง (Fetch)– ต�ความ (Decode)– ปัระมวลผล (Excute)

• CPU จำะท$างานตามชุ2ดค$าส��งท��อ่�านขึ้��นมาจากหน�วยความจ�าหลั�กเท่�าน��น

Stored Program Architecture (หร�อ von Neumann Architecture)

• ชุ2ดค$าส��ง Opcode + Operand

– Opcode : ระบ2ปัระเภทของการปัระมวลผล

– Operand : ระบ2ข�อม%ลท��น$ามาปัระมวลผล

Fetch

DecodeExcute

OperandOpcode

Page 3: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

หน วยความจำ$า

• บ�ต : หน วยท��เล.กท��ส2ดในการเก.บข�อม%ล• ไบต� : หน วยท��ใชุ�ในการอ�างถ3งข�อม%ลใน

หน วยความจำ$า– หน วยย อยจำะม�หมายเลขเฉพิาะต�ว

แอ่ดเดรส [Address]

• การอ�างถ3งข�อม%ลในหน วยความจำ$า– หน วยปัระมวลผลจำะต�องสามารถระบ2

แอดเดรสของข�อม%ลน��นด�วย

Page 4: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

บ�ส : ชุ องทางส งส�ญญาณ• อ2ปักรณ�ต าง ๆ จำะเชุ��อมต อก�นโดย

ผ านทางกล2 มของสายส�ญญาณ ท�� เราเร�ยกว า บั�ส

• เราสามารถแบ งกล2 มของบ�สออก เปั'น 3 กล2 ม

– บ�สข�อม%ล– บ�สต$าแหน ง หร�อ แอดเดรสบ�ส– บ�สควบค2ม

CPUCPU Memory I/O I/OI/O

Data busAddress busControl bus

Page 5: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

สถาปัตยกรรมของระบบ ไมโครโปัรเซสเซอร�ตระก%ล

80x86• ความเปั'นมา

– 4040 4 บ�ต– 8080 8 บ�ต– 8086 16 บ�ต อ�างหน วยความจำ$าได� 1 MB– 8088 ภายใน 16 บ�ต ภายนอก 8 บ�ต– 80186 ไมโครโปัรเซสเซอร�ส$าหร�บระบบ

ความค2ม– 80286 16 บ�ต อ�างหน วยความจำ$าได� 16

MB เร��มม�ความสามารถในการจำ�ดการหน วยความจำ$า

– 80386 32 บ�ต อ�างหน วยความจำ$าได� 4 GB ม�ความสามารถในการจำ�ดการหน วยความ

จำ$า ชุ�ดค�าส��งแลัะโครงสร�างท่างซอ่ฟต์#แวร#ย�งคงเป็%นมาต์รฐานอ่ย'�ในป็)จจ�บั�น

– 80486 เพิ��มหน วยปัระมวลผลทางคณ�ตศาสตร�

– Pentium พิ�ฒนาการปัระมวลผลให�เร.วย�งข3�น

• หน วยปัระมวลผลตระก%ลอ��น ๆ เชุ น– 68000, PowerPC, Alpha, SPARC,

MIPS

Page 6: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

การจำ�ดการหน วยความจำ$า

• 8086 ม�แอดเดรสบ�สขนาด 20 บ�ตอ�างแอดเดรสได� 2 แบบแตกต างก�นอ�างแอดเดรสได� 1 MB

แอ่ดเดรสขึ้นาด 20 บั+ต์น,� ค-อ่แอ่ดเดรสท่,�แท่�จร+ง (physical address) ท่,�หน�วยป็ระมวลัผลัอ่�างจากหน�วยความจ�า

• 8086 ม�ร�จำ�สขนาด 16 บ�ตไม พิอเพิ�ยงในการอ�างแอดเดรสต�องใชุ�ร�จำ�สเตอร� 2 ต�วในการอ�าง

แอดเดรส• อ�างแอดเดรสแบบ เซกเมนต์# :

อ่อ่ฟเซ/ต์• แบ งหน วยความจำ$าท��งหมดออกเปั'น

ส วนย อย ๆ ท��เร��มต�นแตกต างก�น [segment] แล�วระบ2ระยะจำากจำ2ดเร��มต�นน��น [offset]

Page 7: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

การอ�างแอดเดรสแบบเซกเมนต� : ออฟเซ.ต

• การแปัลงจำากการอ�างแบบ เซกเมนต� : ออฟเซ.ต เปั'น physical address

• เล��อนบ�ตของเซกเมนต� ไปัทางซ�าย 4 บ�ต (-> ม�ขนาด 20 บ�ต)

• น$าค าของออฟเซ.ตมาบวก

memory

segment offset

ต์�วอ่ย�าง แปัลงจำาก 12ADh : 3A3Eh

12AD0h เซกเมนต�ท��เล��อนบ�ตไปัทางซ�าย 4 บ�ต

3A3Eh ออฟเซ.ต1650Eh physical

address

– ในทางกล�บก�น physical address 1650Eh สามารถอ�างแอดเดรสแบบ segment : offset ได�เปั'น 12ADh : 3A3Eh เชุ นก�น แลัะย�งสามารถอ่�างแบับัอ่-�นได�ด�วย เชุ�น 1650h :000Eh 1200h : 450Eh 1000h : 650Eh แลัะ ค'� segment : offset อ่-�น ๆ อ่,กหลัายค'�

Page 8: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

การเหล��อมก�นของเซกเมนต�

• เซกเมนต�หน3�ง ๆ ม�ขอบเขตต��งแต offset ท�� 0000h จำนถ3ง FFFFh [16 บ�ต]

เซกเมนต�ม�ขนาด = 64 KB [65536 bytes]

• จำ2ดเร��มต�นของเซกเมนต�ต าง ๆ – เซกเมนต�ท�� 0000h เร��มต�นท�� physical

address 00000h– เซกเมนต�ท�� 0001h เร��มต�นท�� physical

address 00010h– เซกเมนต�ท�� 0002h เร��มต�นท�� physical

address 00020h

• ล�กษณะของการเร�ยงต�วของเซกเมนต�จำะเหล��อมก�น

segment0000hsegment0001hsegment0002hsegment0003h

Page 9: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

เซกเมนต�ร�จำ�สเตอร�

• CS : Code segment ชุ��ไปัย�งหน วยความจำ$าท��เก.บโปัรแกรม

• DS : Data segment ชุ��ไปัย�งหน วยความจำ$าท��เก.บข�อม%ล

• ES : Extra segment ชุ��ไปัย�งหน วยความจำ$าท��เก.บข�อม%ล

อ��น ๆ• SS : Stack segment ชุ��

ไปัย�งหน วยความจำ$าท��เปั'น stack

Code segment

Data segment

Stack segment

Extra segment

• 8086 สามารถอ�างหน วยความจำ$า ท��งหมดได� 1 MB แต สามารถอ�าง

ได�พิร�อมก�นแค 4 เซกเมนต�เท าน��น

Page 10: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

แสต.ก• เปั'นหน วยความจำ$าส$าหร�บเก.บข�อม%ล ท��

ม�ล�กษณะเปั'นแบบ เข�าก อนออก ท�หล�ง (First In Last Out :FILO)

Page 11: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

รายละเอ�ยดของส วนปัระกอบภายในไมโคร

โปัรเซสเซอร� 8086• ALU : ม�ขนาด 16 บ�ต

• ท$าให�เร�ยก 8086 ว าเปั'น CPU 16 บ�ต• ร�จำ�สเตอร�

• ร�จำ�สเตอร�ท��วไปั (General-Purpose Registers)

– 16 บ�ต : AX BX CX และ DX– 8 บ�ต : AH AL BH BL CH CL DH และ

DL

• ร�จำ�สเตอร�ส$าหร�บอ�างอ�ง (Index Registers)– ม�ขนาด 16 บ�ต : SI และ DI

• ร�จำ�สเตอร�ส$าร�บการชุ�� (Pointer Registers)– ม�ขนาด 16 บ�ต : BP และ SP

• เซกเมนต�ร�จำ�สเตอร� (Segment Registers)– CS DS ES และ SS

• แฟล.ก (Flags)– สถานะของผลล�พิธ์�จำากการค$านวณ

• ร�จำ�สเตอร�อ��น ๆ ท��ผ%�ใชุ�ไม สามารถใชุ�ได�โดยตรง

– IP (Instruction Pointer) : เก.บต$าแหน งของค$าส��งถ�ดไปั

– IR (Instrcution Register) : เก.บค$าส��งปัจำจำ2บ�น– etc.

Page 12: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

ค% ร �จำ�สเตอร� 16 บ�ต และ 8 บ�ต

• AX (Accumulator Register)

• BX (Base Register)

• CX (Counter Register)

• DX (Data Register)

AXAH AL

BXBH BL

CXCH CL

DXDH DL

Page 13: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

โหมดการอ�างแอดเดรส• โหมดการอ�างแอดเดรส

(Addressing Mode) ค�อร%ปัแบบท��CPU อ�างถ3งข�อม%ล แบ งเปั'น 3 กล2 ม– อ�างถ3งข�อม%ลใน ร�จำ�สเตอร�– อ�างถ3งข�อม%ลจำากท��ระบ2ในค$าส��ง– อ�างถ3งข�อม%ลในหน วยความจำ$า

Page 14: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

การข�ดจำ�งหวะ• การส��งให�หน วยปัระมวลผลหย2ด

ท$างานปัจำจำ2บ�นชุ��วคราว แล�วกระโดด ไปัตอบสนองการข�ดจำ�งหวะน��น

เม��อตอบสนองเสร.จำแล�ว CPU จำะกล�บมาปัระมวลผลงานเด�มท��ค�างไว�

• ต�วอย าง เชุ น อ2ปักรณ�บางชุ��นได�ร�บ ข�อม%ล ข�อม%ลเข�ยนลงในฮาร�ดด�สก�

เร�ยบร�อย หร�อ ม�การกดปั2<มบนแปั=น พิ�มพิ� เปั'นต�น

• การข�ดจำ�งหวะสามารถสร�างได�จำาก– ฮาร�ดแวร� : ฮาร�ดแวร�อ�นเตอร�ร�พิท�

• ใชุ�ในการแจำ�งการเปัล��ยนสถานะของ อ2ปักรณ�รอบข�างต างๆ และต�องการการ

จำ�ดการจำาก CPU

– ซอฟต�แวร� : ซอฟต�แวร�อ�นเตอร�ร�พิท�• ใชุ�ในการเร�ยกใชุ�บร�การของระบบ

(system library)

Page 15: บทที่ 4 สถาปัตยกรรมคอมพิวเตอร์เบื้องต้น

สถาปัตยกรรมของระบบคอมพิ�วเตอร�สม�ย

ใหม • เทคโนโลย�ของหน วยปัระมวลผลก

ลาง– หน วยปัระมวลผลแบบ RISC– การปัระมวลผลแบบ ไปัปั>ไลน�– การปัระมวลผลแบบซ%เปัอร�สเกลาร�

• ระบบบ�สสม�ยใหม – หน วยความจำ$าแคชุ