World Library  
Flag as Inappropriate
Email this Article

Hardware register

Article Id: WHEBN0000727420
Reproduction Date:

Title: Hardware register  
Author: World Heritage Encyclopedia
Language: English
Subject: Palette (computing), Interrupt control register, C-slowing, Bus contention, PDP-11
Collection: Central Processing Unit, Control Flow, Digital Registers
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Hardware register

In digital electronics, especially computing, a hardware register stores bits of information in such a way that systems can write to or read out all the bits simultaneously.

Contents

  • Functionality 1
  • Varieties of register 2
  • Standards 3
  • See also 4
  • References 5

Functionality

Signals from a state machine to the register control when registers transmit to or accept information from other registers.

Sometimes the state machine routes information from one register through a functional transform, such as an adder unit, and then to another register that stores the results.

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.(Note for example a modem status register (MSR) or a line status register (LSR).[1])

Reading a hardware register in "peripheral units" — computer hardware outside the CPU — involves accessing its memory-mapped I/O address or port-mapped I/O address with a "load" or "store" instruction, issued by the processor. Hardware registers are addressed in words, but sometimes only use a few bits of the word read in to, or written out to the register.

Commercial design tools simplify and automate memory-mapped register specification and code generation for hardware, firmware, hardware verification, testing and documentation.

Because write-only registers make debugging almost impossible,[2] lead to the read-modify-write problem, and also make it unnecessarily difficult for the Advanced Configuration and Power Interface (ACPI) to determine the device's state when entering sleep mode in order to restore that state when exiting sleep mode,[3] many programmers tell hardware designers to make sure that all writable registers are also readable. However, there are some cases when reading certain types of hardware registers is useless. For example, a strobe register bit that generates a one cycle pulse into specialized hardware will always read logic 0.

Varieties of register

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 signaling.

Registers are normally measured by the number of bits they can hold, for example, an "8-bit register" or a "32-bit register".

Designers can implement registers in a wide variety of ways, including:

In addition to the "programmer-visible" registers that can be read and written with software, many chips have internal microarchitectural registers that are used for state machines and pipelining; for example, registered memory.

Standards

SPIRIT IP-XACT and DITA SIDSC XML define standard XML formats for memory-mapped registers.[4][5][6]

See also

References

  1. ^ Bose, Sanjay K. (2007). Hardware And Software Of Personal Computers. New Age International. p. 54.  
  2. ^ Microsoft MVP: If every hardware engineer just understood that... …write-only registers make debugging almost impossible
  3. ^ Microsoft "Guidelines for Bus and Device Specifications"
  4. ^ blog entry on IP-XACT format
  5. ^ IP-XACT Schema... see component XSD
  6. ^ DITA Semiconductor register spec
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.