Jump to content

Architectural state

From Wikipedia, the free encyclopedia
This is the current revision of this page, as edited by RastaKins (talk | contribs) at 21:41, 21 March 2023 ("Adder register" deleted specifically because adders have no architectural state). The present address (URL) is a permanent link to this version.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

Architectural state[1] is the collection of information in a computer system that defines the state of a program during execution. Architectural state includes main memory, architectural registers, and the program counter. Architectural state is defined by the instruction set architecture and can be manipulated by the programmer using instructions. A core dump is a file recording the architectural state of a computer program at some point in time, such as when it has crashed.

Examples of architectural state include:

Architectural state is not microarchitectural state. Microarchitectural state is hidden machine state used for implementing the microarchitecture. Examples of microarchitectural state include pipeline registers, cache tags, and branch predictor state. While microarchitectural state can change to suit the needs of each processor implementation in a processor family, binary compatibility among processors in a processor family requires a common architectural state.

Architectural state naturally does not include state-less elements of a computer such as busses and computation units (e.g., the ALU).


References

[edit]
  1. ^ Dubois, Michael; Annavaram, Murali; Stenström, Per (2012). Parallel Computer Organization and Design (2nd ed.). Cambridge: Cambridge University Press. p. 430. ISBN 978-0-521-88675-8.