Machine_state_register

Machine state register

Machine state register

Add article description


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

Uses of the machine state register

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

More information Mnemonic, Description ...

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.

More information Mnemonic, Description ...

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

While the machine state register found in the PowerPC architecture and the model-specific registers found in IA-32 and x86-64 architectures fulfill similar functions and the initialism "MSR" can refer to either, there are important differences that distinguish them. The machine state register, a single register, provides coarse-grained control over a small number of machine functions. In contrast, dozens to hundreds of model-specific registers exist on recent IA-32 and x86_64 architectures and provide a much finer granularity of both reporting and control of machine state. The term "machine state register" does not appear in Intel and AMD documentation; likewise "model-specific register" does not appear in IBM and Freescale documentation.

References


Share this article:

This article uses material from the Wikipedia article Machine_state_register, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.