หน่วยประมวลผลกลางคืออะไร

การเข้าถึงหน่วยความจำที่เก็บรักษาได้อย่างรวดเร็วที่สุดในหน่วยประมวลผลคอมพิวเตอร์ (CPU) คือการลงทะเบียนโปรเซสเซอร์ สถาปัตยกรรมคอมพิวเตอร์ออกแบบตัวประมวลผลลงทะเบียนความสามารถของหน่วยความจำในแคช CPU เพื่อให้ค่าที่เข้าถึงได้โดยกระบวนการคอมพิวเตอร์เป็นประจำสามารถเก็บไว้ที่นั่นได้ กระบวนการสามารถเข้าถึงและดำเนินการได้อย่างรวดเร็วขึ้นอยู่กับค่าที่เก็บไว้ เนื่องจากการลงทะเบียนตัวประมวลผลจะถูกเก็บไว้บน CPU จึงถือว่าเป็นอันดับต้น ๆ ของลำดับชั้นหน่วยความจำหน่วยความจำและโดยทั่วไปการจัดสรรจะถูกกำหนดโดยตัวแปร เมื่อประมวลผลข้อมูลแล้วจะคืนค่าเป็นแคชหน่วยความจำเข้าถึงโดยสุ่ม (RAM) หรือที่เก็บข้อมูลฮาร์ดดิสก์

โปรเซสเซอร์คอมพิวเตอร์มีการลงทะเบียนประเภทที่แตกต่างกันตามคำแนะนำหรือการทดสอบที่ทำงานกับพวกเขาหรือเนื้อหาที่เฉพาะเจาะจง การลงทะเบียนข้อมูลที่อยู่และวัตถุประสงค์ทั่วไปประกอบด้วยค่าทางคณิตศาสตร์และที่อยู่สำหรับการจัดเก็บหน่วยความจำ มีการลงทะเบียนแบบมีเงื่อนไขด้วยค่าความจริงสำหรับคำสั่งการดำเนินการเชิงตรรกะการลงทะเบียนคงที่ด้วยค่าแบบอ่านอย่างเดียวเช่น pi และศูนย์และการลงทะเบียนวัตถุประสงค์พิเศษที่เก็บโปรแกรมตัวนับการลงทะเบียนสถานะและตัวชี้สแต็กสำหรับการใช้หน่วยความจำ รีจิสเตอร์ควบคุมประกอบด้วยคำแนะนำจากชุดคำสั่งที่สร้างไว้ในสถาปัตยกรรม CPU และมีหลายอย่างที่ดึงมาจาก RAM และวงจรของ CPU ที่เข้าถึงบัฟเฟอร์หน่วยความจำข้อมูลหน่วยความจำช่วงประเภทหน่วยความจำและที่อยู่ ตัวแปรที่ไม่ได้กำหนดให้กับการลงทะเบียนตัวประมวลผลจะถูกเก็บไว้ใน RAM และโหลดเข้าและออกเพื่อดำเนินการอ่านและเขียนอย่างไรก็ตามสิ่งเหล่านี้มีการประมวลผลที่ช้ากว่า

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

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