When we speak about registers, we generally mean addressable memory locations for interfacing between sequential software, and parallel hardware. Low level level firmware, reads and writes registers. Hardware decodes bus transactions and maintains register state.

There are many different names for what we refer to as registers on this blog:

  • microprocessor interface
  • addressable registers
  • memory-mapped registers
  • address map
  • register map
  • control and status registers (CSRs)
  • register bits
  • register module
  • register block
  • register interface
  • hardware/firmware interface
  • hardware/software interface
  • slave interface