Hardware register
In digital electronics, especially computing, hardware registers are circuits typically composed of flip-flops, often with many characteristics similar to memory, such as:[citation needed]
- The ability to read or write multiple bitsat a time, and
- Using an address to select a particular register in a manner similar to a memory address.
Their distinguishing characteristic, however, is that they also have special hardware-related functions beyond those of ordinary memory. So, depending on the point of view, hardware registers are like memory with additional hardware-related functions; or, memory circuits are like hardware registers that just store data.[citation needed]
Hardware registers are used in the
Depending on their complexity, modern hardware devices can have many registers. Standard
Functionality
Typical uses of hardware registers include:
- configuration and start-up of certain features, especially during initialization
- buffer storage e.g. video memory for graphics cards
- input/output (I/O) of different kinds
- status reporting such as whether a certain event has occurred in the hardware unit, for example a modem status register or a line status register.[1]
Reading a hardware register in "peripheral units" —
Commercial design tools simplify and automate memory-mapped register specification and code generation for
Registers can be read/write, read-only or write-only.
Register varieties
The hardware registers inside a central processing unit (CPU) are called processor registers.
Strobe registers have the same interface as normal hardware registers, but instead of storing data, they trigger an action each time they are written to (or, in rare cases, read from). They are a means of
Registers are normally measured by the number of bits they can hold, for example, an "
Designers can implement registers in a wide variety of ways, including:
- register files
- standard SRAM
- individual flip-flops
- high-speed core memory
In addition to the "programmer-visible" registers that can be read and written with software, many chips have
Standards
SPIRIT IP-XACT and DITA SIDSC XML define standard XML formats for memory-mapped registers.[4][5][6]
See also
References
- ^
Bose, Sanjay K. (2007). Hardware And Software Of Personal Computers. New Age International. p. 54. ISBN 9788122403039. Retrieved 2012-09-10.
Once the INS 8250 has been properly initialized, we should make proper use of the Modem Status register (MSR), Line Status register (LSR) and the Interrupt Identification register (IIR) for controlling the device during actual operation.
- ^ http://www.microsoft.com/whdc/resources/MVP/xtremeMVP_hw.mspx#ETB Microsoft MVP: If every hardware engineer just understood that... …write-only registers make debugging almost impossible]
- ^ Microsoft "Guidelines for Bus and Device Specifications"
- ^ "blog entry on IP-XACT format". Archived from the original on 2009-03-09. Retrieved 2009-03-17.
- ^ IP-XACT Schema... see component XSD
- ^ DITA Semiconductor register spec