ขั้นตอนการทำงานของ CPU
ก่อนที่ CPU จะทำการประมวลผลข้อมูล คำสั่งและข้อมูลจะต้องถูกโหลดมาเก็บไว้ในหน่วยความจำหลักเสียก่อน
การประมวลผลคำสั่งของ CPU
หลังจากคำสั่งและข้อมูลอยู่ในหน่วยความจำแล้ว CPU ก็จะทำการประมวลผลที่ละคำสั่ง ใน 4 ขั้นตอนดังนี้
ขั้นตอนการทำงานของ CPU
• จากโปรแกรมที่ประกอบด้วยกลุ่มของคำสั่งที่ต้องการให้คอมพิวเตอร์ทำการประมวลผล แต่ละคำสั่งประกอบด้วย รหัสให้ทำงาน ( OperationCode)
หรือ ออปโค้ด (Opcode) เช่น ADD (การบวก) SUB (การลบ)MUL (การคูณ) DIV (การหาร) และสิ่งที่เรียกว่า โอเปอแรนต์ (Operand)
ซึ่งจะบอกตำแหน่งของที่เก็บข้อมูลในหน่วยความจำ เช่น สัญลักษณ์ Aหรือ B
• ตัวอย่างของคำสั่งหนึ่งๆ ที่มีอยู่ในโปรแกรมภาษาแอสแซมบลี เช่น ADD A,B หมายถึงให้มีการนำข้อมูลที่เก็บอยู่ในหน่วยความจำที่ตำแหน่ง A และข้อมูลที่เก็บอยู่ในหน่วยความจำที่ตำแหน่ง B มาทำการบวกกัน ซึ่งคำสั่งนี้จะต้องถูกแปลให้เป็นภาษาเครื่อง (MachineLanguage) ก่อนการปฏิบัติงานของซีพียูเสมอ
ภาพแสดงขั้นตอนการทำงานของ CPU
ขั้นตอนการทำงานของ CPU และความสัมพันธ์ในการใช้ Resistor
ขั้นตอนการประมวลผลของ CPU
• การเฟตช์ (Fetch) เป็นกระบวนการที่หน่วยควบคุม (CU) ไปนำคำสั่งที่ต้องการใช้จากหน่วยความจำมาเพื่อการประมวลผลมาเก็บไว้ที่ Register
• การแปลความหมาย ( Decode ) เป็นกระบวนการถอดรหัสหรือแปลความหมายคำสั่งต่างๆ เพื่อส่งไปยังหน่วยคำนวณและตรรกะเพื่อดำเนินการต่อไป
• การเอ็กซ์คิวต์ ( Execute ) เป็นกระบวนประมวลผลคำสั่งโดยหน่วยคำนวณและตรรกะ ซึ่งการประมวลผลจะประมวลผลทีละคำสั่ง
• การจัดเก็บ ( Store ) เป็นกระบวนการจัดเก็บผลลัพธ์ที่ได้จากการประมวลผลและจัดเก็บไว้ในหน่วยความจำหรือรีจิสเตอร์
วัฏจักรการทำงานของซีพียู หรือวัฏจักรเครื่อง (Machine Cycle)
Machine Cycle & การประมวลผลคำสั่งโปรแกรม
การประมวลผลคำสั่งโปรแกรมระดับเครื่อง (ภาษาเครื่อง) หนึ่งคำสั่ง เกิดขึ้นในระหว่างหนึ่ง Machine Cycle :-
• วัฏจักรคำสั่ง Instruction Cycle (I-cycle) l fetch instruction - control unit รับคำสั่งจากแรม l decode instruction - control unit แปลความหมายคำสั่งโปรแกรม และเก็บส่วนที่เป็น คำสั่ง ของคำสั่งโปรแกรมไว้ใน Instruction Register & เก็บส่วนที่เป็นแอดเดรส ของคำสั่งโปรแกรมไว้ใน Address Register
เวลาที่ใช้ในการแปลคำสั่ง (Instruction Time)
เวลาทั้งหมดในการประมวลผลแต่ละคำสั่ง ประกอบด้วย 2 ส่วนคือ
•การแปลคำสั่ง (fetch and decode) และการประมวลผลคำสั่ง(execute and store)
•เวลาที่ใช้แปลคำสั่งเรียกว่า instruction time.
เวลาที่ใช้ในการประมวลผล เรียกว่า E xecution time.
เวลาที่ใช้ประมวลผลแต่ละคำสั่ง (Machine Cycle)
The combination of I-time and E-time is called the machine cycle หน่วยวัดความเร็วของซีพียู
• เมกะเฮิรตซ์ ( Megahertz: MHz ) เป็นหน่วยวัดความเร็วของซีพียูในไมโครคอมพิวเตอร์
หรือ Clock Speed ที่มีความเร็วหนึ่งล้านวัฏจักรเครื่องต่อวินาที
( Millions machine cycle per second ) • มิปส์ ( Million of
Instructions Per Second: MIPS ) เป็นหน่วยวัดความเร็วของซีพียูของคอมพิวเตอร์ขนาดกลางขึ้นไปโดย
1 MIPS จะสามารถประมวลผลได้หนึ่งล้านคำสั่งต่อวินาที ( Million
of Instructions Per Second: MIPS ) • ฟลอปส์ ( Floating Point Operations Per Second: FLOPS ) เป็นหน่วยวัดความเร็วของซีพียูในซูเปอร์คอมพิวเตอร์ ซึ่งมักวัดความสามารถในการปฏิบัติการคำนวณทางคณิตศาสตร์แบบทศนิยมหรือ
Floating Point รูปแบบการประมวลผลของซีพียู
1. การประมวลผลแบบเดี่ยว ( Single
processing) หรือ Sequential Processing เป็นการประมวลผลข้อมูลตามลำดับ
เนื่องจากมีซีพียูทำงานเพียงตัวเดียว ปัญหาที่เกิดขึ้นคือ การประมวลผลข้อมูลล่าช้า2. การประมวลผลแบบขนาน (
Parallel processing) เป็นการใช้ซีพียูมากกว่า 1 ตัว ( Multiple Processors ) ในการประมวลผลงานๆ
หนึ่งพร้อมกัน โดยซีพียูจะแตก (break down) ปัญหาออกเป็นส่วนย่อยๆ
เพื่อแบ่งให้ซีพียูแต่ละตัวประมวลผล ซึ่งสามารถเปรียบเทียบได้กับการประมวลผลแบบซีพียูเดียวและ หลายซีพียูได้ดังภาพ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น