หน่วยประมวลผลกลาง (CPU : Central Processing Unit) มีหน้าที่ในการประมวลผลคำสั่งหรือข้อมูลต่างๆ
เป็นวงจรอิเลคทรอนิคที่ทำงาน หรือประมวลผล ตามชุดของคำสั่งเครื่องจากซอฟต์แวร์ คำนี้เริ่มใช้ในอุตสาหกรรมคอมพิวเตอร์ตั้งแต่ต้นศตวรรษ 1960s
หน่วยประมวลผลเปรียบเสมือนเป็นสมองของคอมพิวเตอร์ ในการทำหน้าที่ตัดสินใจหรือคำนวณ จากคำสั่งที่ได้รับมา เช่น การเปรียบเทียบ การกระทำการทางคณิตศาสตร์ ฯลฯโดยมีกระบวนการพื้นฐานคือ
1. อ่านชุดคำสั่ง (fetch)
Fetch - การอ่านชุดคำสั่งขึ้นมา 1 คำสั่งจากโปรแกรม ในรูปของระหัสเลขฐานสอง (Binary Code from on-off of BIT)
2. ตีความชุดคำสั่ง (decode)
Decode - การตีความ 1 คำสั่งนั้นด้วยวงจรถอดรหัส (Decoder circuit) ตามจำนวนหลัก (BIT) ว่ารหัสนี้จะให้วงจรอื่นใดทำงานด้วยข้อมูลที่ใด
3. ประมวลผลชุดคำสั่ง (execute)
Execute - การทำงานตาม 1 คำสั่งนั้น คือ วงจรใดในไมโครโปรเซสเซอร์ทำงาน เช่น วงจรบวก วงจรลบ วงจรเปรียบเทียบ วงจรย้ายข้อมูล ฯลฯ
4. อ่านข้อมูลจากหน่วยความจำ (memory)
Memory - การติดต่อกับหน่วยความจำ การใช้ข้อมูที่อยู่ในหน่วยจำชั่วคราว (RAM, Register) มาใช้ในคำสั่งนั้นโดยอ้างที่อยู่ (Address)
5. เขียนข้อมูล/ส่งผลการประมวลกลับ (write back)
Write Back - การเขียนข้อมูลกลับ โดยมีหน่วยจำ Register ช่วยเก็บที่อยู่ของคำสั่งต่อไป ภายหลังมีคำสั่งกระโดดบวกลบที่อยู่
โปรเซสเซอร์ (Processor) หรือ ชิป (chip)
นับเป็นอุปกรณ์ ที่มีความสำคัญมากที่สุด ของฮาร์ดแวร์เพราะมีหน้าที่ในการประมวลผลข้อมูลที่ผู้ใช้ป้อน เข้ามาทางอุปกรณ์อินพุต ตามชุดคำสั่งหรือโปรแกรมที่ผู้ใช้ต้องการใช้งาน หน่วยประมวลผลกลาง ประกอบด้วยส่วนประสำคัญ 3 ส่วน คือ
1.หน่วยคำนวณและตรรกะ(Arithmetic&LogicalUnit:ALU)
หน่วยคำนวณตรรกะ ทำหน้าที่เหมือนกับเครื่องคำนวณอยู่ในเครื่องคอมพิวเตอร์โดยทำงานเกี่ยวข้องกับ การคำนวณทางคณิตศาสตร์ เช่น บวก ลบ คูณ หาร นอกจากนี้หน่วยคำนวณและตรรกะของคอมพิวเตอร์ ยังมีความสามารถอีกอย่างหนึ่งที่เครื่องคำนวณธรรมดาไม่มี คือ ความสามารถในเชิงตรรกะศาสตร์ หมายถึง ความสามารถในการเปรียบเทียบตามเงื่อนไข และกฎเกณฑ์ทางคณิตศาสตร์ เพื่อให้ได้คำตอบออกมาว่าเงื่อนไข นั้นเป็น จริง หรือ เท็จ เช่น เปรียบเทียบมากว่า น้อยกว่า เท่ากัน ไม่เท่ากัน ของจำนวน 2 จำนวน เป็นต้น ซึ่งการเปรียบเทียบนี้มักจะใช้ในการเลือกทำงานของเครื่องคอมพิวเตอร์ จะทำตามคำสั่งใดของโปรแกรมเป็น คําสั่งต่อไป
2.หน่วยควบคุม(ControlUnit)
หน่วยควบคุมทำหน้าที่ควบคุมลำดับขั้นตอนการการประมวลผลและการทำงานของอุปกรณ์ต่างๆ ภายใน หน่วยประมวลผลกลาง และรวมไปถึงการประสานงานในการทำงานร่วมกันระหว่างหน่วยประมวลผลกลาง กับอุปกรณ์นำเข้าข้อมูล อุปกรณ์แสดงผล และหน่วยความจำสำรองด้วย เมื่อผู้ใช้ต้องการประมวลผล ตามชุดคำสั่งใด ผู้ใช้จะต้องส่งข้อมูลและชุดคำสั่งนั้น ๆ เข้าสู่ระบบ คอมพิวเตอร์เสียก่อน โดยข้อมูล และชุดคำสั่งดังกล่าวจะถูกนำไปเก็บไว้ในหน่วยความจำหลักก่อน จากนั้นหน่วยควบคุมจะดึงคำสั่งจาก ชุดคำสั่งที่มีอยู่ในหน่วยความจำหลักออกมาทีละคำสั่งเพื่อทำการแปล ความหมายว่าคำสั่งดังกล่าวสั่งให้ ฮาร์ดแวร์ส่วนใด ทำงานอะไรกับข้อมูลตัวใด เมื่อทราบความหมายของ คำสั่งนั้นแล้ว หน่วยควบคุมก็จะส่ง สัญญาณคำสั่งไปยังฮาร์ดแวร์ ส่วนที่ทำหน้าที่ ในการประมวลผลดังกล่าว ให้ทำตามคำสั่งนั้น ๆ เช่น ถ้าคำสั่ง ที่เข้ามานั้นเป็นคำสั่งเกี่ยวกับการคำนวณ หน่วยควบคุมจะส่งสัญญาณ คำสั่งไปยังหน่วยคำนวณและตรรกะ ให้ทำงาน หน่วยคำนวณและตรรกะก็จะไปทำการดึงข้อมูลจาก หน่วยความจำหลักเข้ามาประมวลผล ตามคำสั่งแล้วนำผลลัพธ์ที่ได้ไปแสดงยังอุปกรณ์แสดงผล หน่วยควบคุมจึงจะส่งสัญญาณคำสั่งไปยัง อุปกรณ์แสดงผลลัพธ์ ที่กำหนดให้ดึงข้อมูลจากหน่วยความจำหลัก ออกไปแสดงให้เห็นผลลัพธ์ดังกล่าว อีกต่อหนึ่ง
3.หน่วยความจำหลัก (MainMemory)
คอมพิวเตอร์จะสามารถทำงานได้เมื่อมีข้อมูล และชุดคำสั่งที่ใช้ในการประมวลผลอยู่ในหน่วยความ จำหลักเรียบร้อยแล้วเท่านั้น และหลักจากทำการประมวลผลข้อมูลตามชุดคำสั่งเรียบร้อยแล้ว ผลลัพธ์ที่ได้ จะถูกนำไปเก็บไว้ที่หน่วยความจำหลัก และก่อนจะถูกนำออกไปแสดงที่อุปกรณ์แสดงผล
CPU ทำหน้าที่อะไร
CPU หรือ Central Processing Unit เป็นหัวใจหลักในการประมวลของคอมพิวเตอร์ โดยพื้นฐานแล้วซีพียูทำหน้าที่ประมวลผลข้อมูลเชิงคณิตศาสตร์และข้อมูลเชิงตรรกะเท่านั้น แต่ทำไมการคำนวณขนาดนี้ ต้องมีการพัฒนาซีพียูกันไม่หยุดหย่อน ย้อนกลับไปปี 1946 คอมพิวเตอร์ยุคแรกที่มีชื่อที่พอจะจำได้ก็คือ ENIVAC นั้นทำงานโดยใช้หลอดไดโอด ซึ่งสถานะการทำงานของหลอดพวกนี้ มีสองอย่าง คือ 1 กับ 0 จะมีค่าเป็น 1 เมื่อมีกระแสไหลผ่านและเป็น 0 เมื่อไม่มีกระแสไหลผ่าน นั่นจึงเป็นเหตุผลให้คอมพิวเตอร์ใช้เลขฐาน 2 ในการคำนวณ ครั้นต่อมาวิทยาการก้าวหน้าขึ้นเรื่อยๆ จากหลอดไดโอดก็พัฒนาเป็นทรานซิสเตอร์ และจากทรานซิสเตอร์ก็พัฒนาเป็นวงจรขนาดเล็ก ซึ่งรู้จักกันในชื่อของ IC และในที่สุดก็พัฒนาเป็น Chip อย่างที่เรารู้จักกันมาจนปัจจุบันนี้
สิ่งที่ผู้ผลิตซีพียูพยายามเพิ่มก็คือ ประสิทธิภาพในการประมวลผลของซีพียู เมื่อกล่าวถึงซีพียูและการประมวลผล สิ่งหนึ่งที่เราต้องเข้าใจคือภายในซีพียูไม่มีหน่วยเก็บข้อมูลสำหรับเก็บข้อมูลปริมาณมากๆ และซีพียูในยุคแรกๆ ก็ไม่มี Cache ด้วยซ้ำไป ปัจจัยที่มีผลต่อความเร็วของซีพียูก็คือ ความเร็วในการประมวลผลและความเร็วในการโอนย้ายข้อมูล ซีพียูในยุคแรกๆ นั้นประมวลผลด้วยความเร็ว 4.77 MHz และมีบัสซีพียู (CPU BUS) ความกว้าง 8 บิต เรียกกันว่าซีพียู 8 บิต (Intel 8080 8088) นั้นก็คือซีพียูเคลื่อนย้ายข้อมูลครั้งละ 1 ไบต์ ยุคต่อมาเป็นซีพียู 16 บิต 32 บิต และ 64 บิต ปัจจุบันโดยเฉพาะซีพียูรุ่นใหม่ๆ เคลื่อนย้ายข้อมูลครั้งละ 128 บิต ในการเคลื่อนย้ายข้อมูลนั้น เกิดขึ้นจากการควบคุมสัญญาณนาฬิกา ซึ่งนับสัญญาณเป็น Clock 1 เช่น ซีพียู 100 MHz หมายความว่าเกิดสัญญาณนาฬิกา 100 ครั้งต่อวินาที
กลไกการทำงานของซีพียู
การทำงานของคอมพิวเตอร์ ใช้หลักการเก็บคำสั่งไว้ที่หน่วยความจำ ซีพียูอ่านคำสั่งจากหน่วยความจำมาแปลความหมายและกระทำตามเรียงกันไปทีละคำสั่ง หน้าที่หลักของซีพียู คือควบคุมการทำงานของคอมพิวเตอร์ทั้งระบบ ตลอดจนทำการประมวลผล
กลไกการทำงานของซีพียู มีความสลับซับซ้อน ผู้พัฒนาซีพียูได้สร้างกลไกให้ทำงานได้ดีขึ้น โดยแบ่งการทำงานเป็นส่วน ๆ มีการทำงานแบบขนาน และทำงานเหลื่อมกันเพื่อให้ทำงานได้เร็วขึ้น
ปัจจัยที่มีผลต่อความเร็วของซีพียู
ความสามารถในการประมวลผล (Processing Power) คือประสิทธิภาพและความเร็วในการทำงานของซีพียู ซึ่งขึ้นอยู่กับชนิดหรือรุ่นของซีพียู เครื่องคอมพิวเตอร์ส่วนบุคคล (Personal Computer) โดยทั่วไปจะใช้ซีพียูในตระกูลของอินเทล เช่น Intel Core I3, Intel Core I5, Intel Core I7 , Intel Core I9 ส่วนเครื่องคอมพิวเตอร์อื่นจะใช้ซีพียูที่ต่างกันออกไป
การดูแลรักษาหน่วยประมวลผลกลาง
1. ไม่ควรให้ซีพียูอยู่บริเวณที่มีอุณหภูมิสูง |