วันศุกร์ที่ 4 กรกฎาคม พ.ศ. 2557

2. หน่วยคำนวณและตรรกะ (Arithmetic & Logical Unit : ALU)

        ทำหน้าที่เหมือนกับเครื่องคำนวณอยู่ในเครื่องคอมพิวเตอร์โดยทำงานเกี่ยวข้องกับ การคำนวณทางคณิตศาสตร์ (Arithmetic operations) เช่น บวก ลบ คูณ หาร นอกจากนี้ ยังมีความสามารถอีกอย่างหนึ่งที่เครื่องคำนวณธรรมดาไม่มี คือ ความสามารถในเชิงตรรกะศาสตร์ (Logical operations) 

 โดยอาศัยตัวปฏิบัติการพื้นฐาน 3 ค่า คือ


·       เงื่อนไขเท่ากับ (= , Equal to condition)  

·       เงื่อนไขน้อยกว่า (< , Less than condition)  

·       เงื่อนไขมากกว่า (> , Greater than condition)


สำหรับตัวปฏิบัติการทางตรรกะ สามารถนำมาผสมกันได้ทั้งหมด 6 รูปแบบ คือ


·       เงื่อนไขเท่ากับ (= , Equal to condition)

·       เงื่อนไขน้อยกว่า (< , Less than condition)

·       เงื่อนไขมากกว่า (> , Greater than condition)

·       เงื่อนไขน้อยกว่าหรือเท่ากับ (<= , Less than or equal condition)

·       เงื่อนไขมากกว่าหรือเท่ากับ (>= , Greater than or equal condition)

·     ไม่เท่ากับ แบ่งเป็นวงจรได้ 5 ชนิด คือ

1. วงจรตรรกะจัดหมู่ (combination logic) เป็นวงจรที่ให้สัญญาณผลลัพธ์ขึ้นอยู่กับสภาวะของสัญญาณที่ป้อนเข้าเท่านั้น วงจรนี้จึงไม่สามารถเก็บสัญญาณไว้ได้

2. วงจรตรรกะจัดลำดับ (sequential logic) เป็นวงจรที่มีสัญญาณผลลัพธ์ขึ้นอยู่กับสัญญาณป้อนเข้า และขึ้นอยู่กับสภาวะเดิมของสัญญาณผลลัพธ์ วงจรนี้มีคุณสมบัติที่สามารถเก็บสัญญาณ หรือความจำไว้ได้ แต่เมื่อเลิกทำงานไฟฟ้าที่ไปเลี้ยงวงจรเหล่านี้ สัญญาณหรือความจำจะสูญหายไป เช่น วงจรฟลิปฟล็อป (flip-flop) วงจรนับ (counter) วงจรชิฟต์รีจิสเตอร์ (shiftregister)

3. วงจรบวก คือ วงจรที่ทำหน้าที่บวกเลขฐานสอง โดยอาศัยวงงจรตรรกะเข้ามาประกอบเป็นวงจรบวกครึ่ง (half adder ; H.A.) ซึ่งจะให้ผลบวก S และการทดออก Co เมื่อนำเอาวงจรบวกครึ่งสองวงจรกับเกตหนึ่งวงจรมารวมกันเป็นวงจรบวกเต็ม โดยมีการทดเข้า ทดออก และผลบวก

4. วงจรลบ คือ วงจรที่ทำหน้าที่คล้ายวงจรบวก โดยใช้วงจรอินเวอร์เทอร์เข้าเปลี่ยนเลขตัวลบให้เป็นตัว1 (1's complement) คือเปลี่ยนเลข “0” เป็น “1” หรือ “0” เป็น“0” แล้วนำเข้าบวกประสม กับตัวตั้งจึงจะได้ผลลบตามต้องการ

5. วงจรคูณและหาร dารคูณ คือ การจัดให้วงจรบวกทำการบวกซ้ำๆ กัน ส่วนการหารก็คือ การจัดให้วงจรลบทำการลบซ้ำ นอกจากหลักการดังกล่าวแล้ว อาจจะใช้อีกหลักการหนึ่ง คือ การคูณหารบางประเภทสามารถทำได้โดยการเลื่อนจุดไปทางซ้ายหรือขวา เช่น 256.741 X 100 = 25674.1 หรือ 256.741 / 100 = 2.56741 เป็นต้น ส่วนเลขฐานสองที่คอมพิวเตอร์ใช้ก็ทำได้ในทำนองเดียวกัน

3. หน่วยความจำหลัก (Main Memory)

3. หน่วยความจำหลัก (Main Memory)

            คอมพิวเตอร์จะสามารถทำงานได้เมื่อมีข้อมูล และชุดคำสั่งที่ใช้ในการประมวลผลอยู่ในหน่วยความจำหลักเรียบร้อยแล้วเท่านั้น และหลังจากทำการประมวลผลข้อมูลตามชุดคำสั่งเรียบร้อยแล้ว ผลลัพธ์ที่ได้จะถูกนำไปเก็บไว้ที่หน่วยความจำหลัก และก่อนจะถูกนำออกไปแสดงที่อุปกรณ์แสดงผล สามารถแบ่งได้เป็น 2 ประเภท คือ


·                                   -   หน่วยความจำสำหรับเก็บคำสั่ง (Program Memory)
·                                   -  หน่วยความจำสำหรับเก็บข้อมูลและคำสั่ง (Data & Programming Memory)



การทำงานขององค์ประกอบของ CPU

กระบวนการและกลไกการทำงานของหน่วยประมวลผลกลาง

กระบวนการและกลไกการทำงานของหน่วยประมวลผลกลาง

1. กระบวนการทำงานพื้นฐานของหน่วยประมวลผลกลาง แบ่งเป็น 5 ขั้นตอน ดังนี้
            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 ช่วยเก็บที่อยู่ของคำสั่งต่อไป ภายหลังมีคำสั่งกระโดดบวกลบที่อยู่

2. กลไกการทำงานของหน่วยประมวลผล
 มีกลไกที่สำคัญ ดังนี้
              1. การทำงานของคอมพิวเตอร์ ใช้หลักการเก็บคำสั่งไว้ที่หน่วยความจำซีพียูอ่านคำสั่งจากหน่วยความจำมาแปลความหมายและกระทำตามเรียงกันไปทีละคำสั่งหน้าที่หลักของซีพียูคือควบคุมการทำงานของคอมพิวเตอร์ทั้งระบบ ตลอดจนทำการประมวลผล
            2. การทำงานของซีพียู มีความสลับซับซ้อนผู้พัฒนาซีพียูได้สร้างกลไกให้ทำงานได้ดีขึ้นโดยแบ่งการทำงานเป็นส่วนๆ มีการทำงานแบบขนาน และทำงานเหลื่อมกันเพื่อให้ทำงานได้เร็วขึ้น