Enum FPGALinkRegisters

java.lang.Object
java.lang.Enum<FPGALinkRegisters>
uk.ac.manchester.spinnaker.messages.model.FPGALinkRegisters
All Implemented Interfaces:
Serializable, Comparable<FPGALinkRegisters>

@SARKStruct("spio")
public enum FPGALinkRegisters
extends Enum<FPGALinkRegisters>
FPGA registers within a register bank.
Author:
Donal Fellows
See Also:
Spio documentation
  • Enum Constant Summary

    Enum Constants 
    Enum Constant Description
    BUSY
    Packet dispatcher busy counter.
    CFCL
    Local channel flow control status.
    CFCR
    Remote channel flow control status.
    CRCE
    CRC error counter.
    CRDT
    Credit.
    DFRM
    Frame disassembler valid frame counter.
    EMPT
    Empty frame assembler queues.
    FRME
    Frame error counter.
    FULL
    Full frame assembler queues.
    HAND
    Handshake.
    IDSI
    IDle Sentinel Input value.
    IDSO
    IDle Sentinel Output value.
    LACK
    Local ack'd frame counter.
    LNAK
    Local nack'd frame counter.
    LOOC
    Local out-of-credit counter.
    RACK
    Remote ack counter.
    RECO
    Link reconnection (re-handshake) counter.
    RFRM
    Packet dispatcher valid received frame counter.
    RNAK
    Remote nack counter.
    ROOC
    Remote out-of-credit counter.
    SFRM
    Frame assembler valid sent frame counter.
    STOP
    1 = Stop sending data frames.
    TFRM
    Frame transmitter frame counter.
    VERS
    Version.
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static int BANK_OFFSET_MULTIPLIER
    The base addresses of register banks are all multiples of this.
    int offset
    The offset of the register within the bank of registers.
    int size
    Size of register, in bits.
    boolean writable
    Whether this is a writable register.
  • Method Summary

    Modifier and Type Method Description
    MemoryLocation address​(int registerBank)
    Compute the address of the register in a particular register bank.
    static FPGALinkRegisters valueOf​(String name)
    Returns the enum constant of this type with the specified name.
    static FPGALinkRegisters[] values()
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Enum

    clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

  • Field Details

    • BANK_OFFSET_MULTIPLIER

      public static final int BANK_OFFSET_MULTIPLIER
      The base addresses of register banks are all multiples of this.
      See Also:
      Constant Field Values
    • offset

      public final int offset
      The offset of the register within the bank of registers.
    • writable

      public final boolean writable
      Whether this is a writable register.
    • size

      public final int size
      Size of register, in bits.
  • Method Details

    • values

      public static FPGALinkRegisters[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static FPGALinkRegisters valueOf​(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • address

      public MemoryLocation address​(int registerBank)
      Compute the address of the register in a particular register bank.
      Parameters:
      registerBank - Which register bank. Must be 0, 1, or 2.
      Returns:
      The address in the FPGA's address space.
      Throws:
      IllegalArgumentException - If a bad register bank is given.