กลับไปหน้าบทความ

อ่าน 2 นาที

Machine state register

A machine state register ( MSR ) is one of three process control registers present in the PowerPC processor architecture.

Machine state register

A machine state register (MSR) is one of three process control registers present in the PowerPC processor architecture.

Processors

The implementation details of the machine state register will vary from model to model. Below are two representative implementations, the 32-bit Freescalee200z3 PowerPC core and the 64-bit IBM PowerPC.

e200z3 PowerPC core

Uses of the machine state register

This 32-bit register either controls and/or reports several important processor states.

MnemonicDescription
UCLEEnables/disables userspace execution of cache locking instructions
SPEEnables/disables vector instructions
WEEnables/disables power management
CEEnables/disables critical interrupts
EEEnables/disables external interrupts
PRIdentifies if the processor is in supervisor or user mode
FPIdentifies availability of hardware floating point unit
MEEnables/disables machine checkinterrupts
FE0Sets floating point exception mode
DEEnable/disable debug interrupts
FE1Sets floating point exception mode
ISSets instruction address space
DSSets data address space

Reading and writing the machine state register

The contents of the register may be read using the move from machine state register (mfmsr) instruction and may be modified by executing the return from interrupt (rfi, rfci, rfdi), system call (sc) and move to machine state register (mtmsr) instructions.

PowerPC

Uses of the machine state register

This 64-bit register either controls and/or reports several important processor states.

MnemonicDescription
SFSelects 32-bit/64-bit mode
HVSelects hypervisor state
EEEnable/disable external interrupts
PRSelects privileged or problem state
FPReports floating-point availability
MEEnables/disables machine check interrupts
FE0Select floating-point mode exception mode
SEEnables/disables single-step tracing
BEEnables/disables branch tracing
FE1Select floating-point exception mode
IREnable/disable instruction address translation
DREnable/disable data address translation
PMMPerformance monitor mark
RILists whether interrupt is (non-) recoverable
LESelects Little-Endian or Big-Endian mode (not G5)

Reading and writing the machine state register

The machine state register can be read using the mfmsr instruction and modified using the mtmsr[d], rfid and hrfid instructions.

Confusion with model-specific register

แม้ว่ารีจิสเตอร์สถานะเครื่อง (Machine State Register) ที่พบในสถาปัตยกรรม PowerPC และรีจิสเตอร์เฉพาะรุ่น (Model-Specific Register)ที่พบใน สถาปัตยกรรม IA-32และx86-64จะทำหน้าที่คล้ายคลึงกัน และคำย่อ "MSR" สามารถหมายถึงทั้งสองอย่างได้ แต่ก็มีความแตกต่างที่สำคัญที่ทำให้แยกแยะออกจากกันได้ รีจิสเตอร์สถานะเครื่อง ซึ่งเป็นรีจิสเตอร์ตัวเดียว ให้การควบคุมแบบหยาบๆ เหนือฟังก์ชันเครื่องจำนวนเล็กน้อย ในทางตรงกันข้าม รีจิสเตอร์เฉพาะรุ่นมีอยู่หลายสิบถึงหลายร้อยตัวในสถาปัตยกรรม IA-32 และ x86_64 รุ่นใหม่ๆ และให้ความละเอียดในการรายงานและการควบคุมสถานะเครื่องที่ละเอียดกว่ามาก คำว่า "machine state register" ไม่ปรากฏใน เอกสารของ IntelและAMDในทำนองเดียวกัน "model-specific register" ก็ไม่ปรากฏในเอกสารของ IBMและFreescale

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Machine_state_register&oldid=1098151251 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ Machine state register

A machine state register ( MSR ) is one of three process control registers present in the PowerPC processor architecture.

Processors

The implementation details of the machine state register will vary from model to model. Below are two representative implementations, the 32-bit Freescale e200z3 PowerPC core and the 64-bit IBM PowerPC .

e200z3 PowerPC core

This 32-bit register either controls and/or reports several important processor states.

PowerPC

This 64-bit register either controls and/or reports several important processor states.