CPU
ส่วนประกอบหลักของคอมพิวเตอร์ คอมพิวเตอร์ในปัจจุบัน ถูกออกแบบตามหลักการของ John Von Neumann ซึ่งจะมี 4 องค์ประกอบหลักได้แก่ CPU Memory I/O Storage Control Unit Registers ALU CPU Memory I/O Interface Control bus Data bus Address bus
CPU :Central Processing Unit CPU หรือ โปรเซสเซอร์ (Processor) คือวงจรประมวลผลหลักที่เป็นตัวประมวลผลตามชุดคำสั่ง หรือโปรแกรม เป็นหัวใจสำคัญของระบบ Computer
Where are you ?
เกี่ยวกับ CPU CPU central processing unit เป็นองค์ประกอบหลักของเครื่องคอมพิวเตอร์ ทำหน้าที่ในการคำนวณหรือประมวลผลชุดคำสั่ง มีส่วนประกอบหลักภายใน Input คือหน่วยที่ทำหน้าที่รับข้อมูล Output คือหน่วยที่ส่งข้อมูลออก Storage Memory คือหน่วยความจำ ประกอบไปด้วยวงจรขนาดเล็กจำนวนมากที่สลับซับซ้อน
CPU Architecture และ Clock กับการทำงาน Architecture ของ CPU ได้แก่โครงสร้างการทำงานภายใน, ระบบบัส, วงจรการทำงานของชุดคำสั่งต่าง ๆ (Instruction Set) Clock Speed ถ้าเป็น CPU ที่ตัววงจรภายในเหมือนกัน ตัวที่มี Clock Speed สูงกว่า จะทำงานได้เร็วกว่า หน่วยวัดความเร็วของ CPU อย่างหยาบ ๆ เรียกว่า Megahertz(MHz) ซึ่งเป็นความเร็วของสัญญาณนาฬิกาที่ป้อนให้จังหวะการทำงานของ CPU โดยค่า 1 MHz = ความเร็ว 1 ล้านรอบ/วินาที
แนวทางสถาปัตยกรรมของ CPU RISC (Reduce Instruction Set Computer) ปรับปรุงชุดคำสั่ง(instruction set)โดยลดจำนวนและความซับซ้อนของแต่ละคำสั่งลง มีผลให้ คำสั่งเรียบง่าย วงจรทำงานตามสั่งได้เร็วกว่าเดิม ความเร็ว CPU เพิ่มขึ้น CISC (Complex Instruction Set Computer) ตรงข้ามกับ RISC = มีชุดคำสั่งในรูปแบบต่าง ๆ ให้เลือกใช้หลายคำสั่งเพื่อครอบคลุมลักษณะงานที่ต่างกัน มีเครื่องมือที่เหมาะสมสำหรับแต่ละกรณี ข้อจำกัด วงจรซับซ้อนและเวลาการทำงานแต่ละคำสั่งนาน
วงรอบการทำงานของ CPU(Machine cycle)
วงรอบการทำงานของ CPU Register หน่วยคำนวณ หน่วยควบคุม หน่วยความจำหลัก ขั้นตอนที่ 4 Store เก็บผลลัพธ์ที่ได้ลงในหน่วยความจำ หน่วยความจำหลัก (Memory) ขั้นตอนที่ 1 Fetch ดึงข้อมูลจากหน่วยความจำ หน่วยคำนวณ ALU Register ขั้นตอนที่ 3 Execute คำนวณและส่งต่อผลลัพธ์ ขั้นตอนที่ 2 Decode แปลรหัสคำสั่งที่ได้รับมา หน่วยควบคุม (Control Unit)
การทำงานภายใน CPU CPU ประกอบด้วย หน่วยการทำงานหลัก 2 หน่วย คือ หน่วยควบคุม (Control Unit)ทำหน้าที่ดึงคำสั่งจากหน่วยความจำหลัก มาไว้ใน register และทำการแปลงรหัส (Decoding) เรียกว่าจังหวะคำสั่ง (Instructional Cycle) แล้วจึงส่งเข้าสู่จังหวะปฏิบัติการคือ ( Execution Cycle) ในหน่วยคำนวณตรรกะ หน่วยตรรกะ (ALU :Arithmetic and Logical Unit) ทำการคำนวณผล หรือเปรียบเทียบ แล้วจึงส่งผลลัพธ์เก็บไว้ใน Register ซึ่งทำหน้าที่เก็บและถ่ายทอดข้อมูลคำสั่งที่ถูกนำเข้ามา
รูปร่างของ CPU CPU แต่ละรุ่นและแต่ละผู้ผลิตจะมีรูปร่างลักษณะและโครงสร้างเช่นขนาด หรือจำนวนขา ไม่เหมือนกัน ซึ่ง CPU สำหรับ PC ในปัจจุบันแบ่งได้เป็น 2 รูปแบบใหญ่ ๆ ได้แก่ 1. แบบ Cartridge จะมีรูปร่างเป็นตลับแบน ๆ หุ้มด้วยกล่องพลาสติก สำหรับเสียบในช่องเสียบแบบ slot Slot 1 พัฒนาโดย Intel สำหรับ Pentium III รุ่นเก่า , Pentium II, Celeron รุ่นเก่า มีขาสัญญาณ 242 ขา Slot 2 ของ Intel สำหรับ Pentium II Xeon, Pentium III Xeon ขาสัญญาณ 330 ขา Slot A ใช้กับ CPU AMD Athlon รุ่นเก่า มีขาสัญญาณ 242 ขา
รูปร่างของ CPU 2. แบบ PGA (Pin Grid Array) จะมีลักษณะเป็นชิปแบน ๆ มีขาจำนวนมากอยู่ใต้ตัว CPU สำหรับเสียบลงใน Socket สามารถแบ่งย่อยได้หลายแบบเช่น Socket 7 ใช้กับ Pentium MMX, AMD K5, K6, K6-2, K6-III มีขาสัญญาณ 321 ขา Socket 370 ใช้กับ Pentium III, Celeron รุ่นใหม่ มีขาสัญญาณ 370 ขา Socket 423 ใช้สำหรับ Pentium 4 Socket A ใช้กับ AMD Athlon และ Duron มีขาสัญญาณ 462 ขา
การพัฒนา CPU CPU รุ่นใหม่ ๆ มีความเร็วในการทำงานที่สูงขึ้นได้ ต้องมีการพัฒนาปรับปรุงในหลาย ๆ ส่วน ได้แก่ การเพิ่ม Clock Speed เพิ่มจำนวนวงจร และลดขนาดของวงจรในการผลิต เช่นจาก 0.32 ไมครอน เหลือ 0.13 ไมครอน ลดแรงดันไฟฟ้า เพื่อให้ความร้อนไม่สูงเกินไป เพิ่ม Cache Memory เพื่อลด Wait State ของ CPU พัฒนา สถาปัตยกรรม และเทคโนโลยีใหม่ ๆ ในตัว CPU
CPU จากค่ายต่าง ๆ ปัจจุบัน ผู้นำตลาด CPU สำหรับไมโครคอมพิวเตอร์ได้แก่ Intel Corp. นอกจาก Intel แล้ว ยังมีผู้ผลิตอีกหลายราย ที่ผลิต CPU ที่ compatible กับ CPU Intel ได้แก่ AMD (Advance Micro Device) VIA/Cyrix IBM Transmeta
ทำไม CPU รุ่นใหม่ Compatible กับรุ่นเดิม การ Compatible กันคือ CPU รุ่นใหม่ สามารถทำงานกับโปรแกรมที่ทำงานบน CPU รุ่นเก่าได้ มีชุด Registers ที่เหมือนกัน รหัสคำสั่งเหมือนกัน แม้ว่าโครงสร้างการทำงานภายในของแต่ละคำสั่งอาจแตกต่างกัน ถ้าไม่ปรับปรุง Compiler ให้สามารถรองรับชุดคำสั่งใหม่ ๆ อาจทำให้ไม่สามารถใช้งานได้เต็มประสิทธิภาพ
CPU รุ่นต่าง ๆ ของ Intel
ตลาด CPU ของ AMD CPU ของ AMD รุ่นต่าง ๆ
CPU ตระกูลอื่น ๆ
Multi-Core Processors
ความเป็นมาของ CPU แบบ Multi-Core แต่ก่อน CPU เป็นลักษณะของ chip ที่ภายในมีหน่วยประมวลผลอยู่หน่วยเดียว ความต้องการความสามารถในการประมวลผลมีมากขึ้นจึงเริ่มมีการพัฒนาความเร็วของ CPU ให้มากขึ้นไปเพื่อให้พอต่อความต้องการ เมื่อความเร็วนั้นพัฒนาขึ้นมาก จนยากที่จะทำต่อไปได้จึงมีการนำ CPU หลายตัวมาช่วยกันประมวลผลเราเรียกว่า Hyper-Threading การทำงานแบบ Hyper-Threading ยังมีข้อเสียหลายประการจึงทำให้เทคโนโลยี CPU ก็พัฒนามาสู่ยุคของ CPU แบบหลาย core
Hyper-Threading เป็นการทำงานกับ process ได้ทีละมากกว่า 1 process เป็นการใช้เทคนิคเพื่อทำให้ CPU จัดการโดยที่ไม่เพิ่มหน่วยประมวลผล (core) ทำให้ได้ความเร็วในการประมวลผลเพิ่มขึ้นมาจาก CPU ยุคเดิม
CPU แบบ Multi-Core ภายใน Chip CPU นั้นมีหน่วยประมวลผลย่อย ที่เราเรียกว่า core มากกว่า 1 core หรือแกน แต่ละแกนมีหน่วยความจำหลักเป็นของตัวเอง เรียกว่า Cache L1 แต่ละแกนอาจจะมีการใช้หน่วยความจำร่วมกัน เรียกว่า Cache L2 Dual Core QuadCore Core1 and Cache Core2 and Cache Core1 and Cache Core2 and Cache Core3 and Cache Core4 and Cache Cache L2 & Interface Cache L2 & Interface
Cache L2 เป็น memory ที่สามารถเข้าถึงได้รวดเร็วกว่า ram เป็น memory ภายใน CPU ที่มีขนาดจำกัด
Dual-Core CPU เป็นการประมวลผลได้ทีละ 2 process พร้อมกันของจริง ใช้เทคนิคการประมวลผลแบบขนานโดยเพิ่มหน่วยประมวลผลเพิ่มขึ้นมา
Core 2 Duo Core 2 Duo เป็น CPU ที่ใช้ สถาปัตยกรรม Core micro architecture เป็น Dual-Core Processor ซึ่งเป็นรุ่นที่ 2 ของ CPU ที่มีรูปแบบเป็น Multi Core
ข้อดีของ Core 2 Duo ลดการใช้พลังงาน เพิ่มประสิทธิภาพในการจัดการกับ L2 Cache การเข้าถึงข้อมูลในหน่วยความจำ การประมวลชุดคำสั่ง ล้วนแต่เพิ่มประสิทธิภาพมากขึ้น
Quad-Core CPU ใช้หลักการทำงานในลักษณะคล้ายคลึงกันกับ Dual-Core
ข้อดี ของ CPU แบบ Multi - core การดีไซน์ CPU แบบMulti-core ทำให้ cache ของแต่ละ core ออกแบบมาให้ cache อยู่ใกล้กันกับ CPU ทำให้สัญญาณที่ส่งระว่าง cache ไปที่ CPU นั้นเป็นไปอย่างรวดเร็ว ในแต่ละ Core ที่ประกอบไปด้วย CPU และ Cache นั้นอยู่ใกล้กันมากดังนั้นจึงมีการเพิ่มเทคโนโลยีที่ชื่อว่า Cache coherency ซึ่งเป็นการทำให้ข้อมูลในแต่ละ Cache นั้นเข้าถึงกันได้ สามารถแบ่งงานกันโหลดได้ระหว่าง CPU
ข้อดี ของ CPU แบบ Multi - core Multi-coreใช้พื้นที่ของแผงวงจรน้อยกว่า ทำให้มีสมรรถนะสูงกว่า ขณะที่อัตราการใช้พลังงานยังคงอยู่ในระดับเดียวกันเมื่อเทียบกับCPUแบบเดิม ระบบจัดการความร้อนที่เล็กลงทำให้ใช้ไฟน้อยลง จึงช่วยประหยัดพลังงาน แต่ความร้อนกลับน้อยลง เพราะMulti-core ไม่ได้ใช้งานทุก core ตลอดเวลา
ข้อเสียของ CPU แบบ Multi-core ในการรันโปรแกรมขนาดใหญ่เพียงโปรแกรมเดียว Single-coreจะทำงานได้ดีกว่า หลาย software และเกมส์ในปัจจุบัน ถูกสร้างมาให้ support Single-core มีราคาแพงกว่า Single-core เมื่อเทียบความเร็วกับราคาแล้ว นับว่า Multi-core มีราคาแพงกว่ามาก
ผลกระทบที่ multi-core มีต่อ Software/Hardware
ผลกระทบที่มีต่อ Software Operation System จะมีการหันมาใช้ระบบปฏิบัติการแบบ 64 bit กันมากขึ้น เพราะทำงานกับ CPU ได้รวดเร็วกว่าระบบปฏิบัติการแบบ 32 bit Debug การเขียนโปรแกรมเพื่อให้ทำงานกับ CPU แบบ Multi-Core นั้นยากขึ้น การคำนวณเป็นไปอย่างแม่นยำมากขึ้น(ภายในเวลาเท่าเดิม) เนื่องจากมีขนาดของหน่วยความจำที่มากขึ้น และยังสามารถทำงานร่วมกันได้อีกด้วย Application โปรแกรมทั่วไปที่จะเกิดขึ้นให้เราได้ใช้งาน จะขนาดใหญ่ขึ้น ซับซ้อนมากขึ้น
ผลกระทบที่มีต่อ Hardware Memory จะมีต้องมีการเพิ่มขนาดของหน่วยความจำต่างๆ เพื่อรองรับความฉลาดของชิป Storage เป็นผลกระทบมาจาก software ที่มีขนาดใหญ่ขึ้นและ CPU ต้องการ Buffer มากขึ้น Energy ประหยัดพลังงานทำงาน ทำงานที่อุณหภูมิไม่สูงมาก
Hardware Trend (แนวโน้มในอนาคต) การพัฒนา processor เป็นไปในแนวโน้มของ Multi-core สู่ Many-core เช่น dual-, quad-, eight-core อาจจะไปถึง hundreds of cores นอกจากนั้น Multi-core chipsได้พัฒนาเทคโนโลยี ทำให้การทำงานเป็นไปอย่างมีประสิทธิภาพ โดยเฉพาะในการจัดการMultimedia และ Network application ต่างๆ มีแนวโน้มที่จะพัฒนาเกี่ยวกับเรื่องประหยัดพลังงานให้ดีขึ้นกว่าเดิม
วิวัฒนาการของ CPU
THANK YOU