------------- Registers -- -------------
type DIV_CSR_Register is record
READY : Boolean;
DIRTY : Boolean;
Reserved_2_31 : HAL.UInt30;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
type FIFO_ST_Register is record
VLD : Boolean := False;
RDY : Boolean := True;
WOF : Boolean := False;
ROE : Boolean := False;
Reserved_4_31 : HAL.UInt28 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_IN_GPIO_HI_IN_Field is HAL.UInt6;
type GPIO_HI_IN_Register is record
GPIO_HI_IN : GPIO_HI_IN_GPIO_HI_IN_Field;
Reserved_6_31 : HAL.UInt26;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OE_CLR_GPIO_HI_OE_CLR_Field is HAL.UInt6;
type GPIO_HI_OE_CLR_Register is record
GPIO_HI_OE_CLR : GPIO_HI_OE_CLR_GPIO_HI_OE_CLR_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OE_GPIO_HI_OE_Field is HAL.UInt6;
type GPIO_HI_OE_Register is record
GPIO_HI_OE : GPIO_HI_OE_GPIO_HI_OE_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OE_SET_GPIO_HI_OE_SET_Field is HAL.UInt6;
type GPIO_HI_OE_SET_Register is record
GPIO_HI_OE_SET : GPIO_HI_OE_SET_GPIO_HI_OE_SET_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OE_XOR_GPIO_HI_OE_XOR_Field is HAL.UInt6;
type GPIO_HI_OE_XOR_Register is record
GPIO_HI_OE_XOR : GPIO_HI_OE_XOR_GPIO_HI_OE_XOR_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OUT_CLR_GPIO_HI_OUT_CLR_Field is HAL.UInt6;
type GPIO_HI_OUT_CLR_Register is record
GPIO_HI_OUT_CLR : GPIO_HI_OUT_CLR_GPIO_HI_OUT_CLR_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OUT_GPIO_HI_OUT_Field is HAL.UInt6;
type GPIO_HI_OUT_Register is record
GPIO_HI_OUT : GPIO_HI_OUT_GPIO_HI_OUT_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OUT_SET_GPIO_HI_OUT_SET_Field is HAL.UInt6;
type GPIO_HI_OUT_SET_Register is record
GPIO_HI_OUT_SET : GPIO_HI_OUT_SET_GPIO_HI_OUT_SET_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_HI_OUT_XOR_GPIO_HI_OUT_XOR_Field is HAL.UInt6;
type GPIO_HI_OUT_XOR_Register is record
GPIO_HI_OUT_XOR : GPIO_HI_OUT_XOR_GPIO_HI_OUT_XOR_Field := 16#0#;
Reserved_6_31 : HAL.UInt26 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_IN_GPIO_IN_Field is HAL.UInt30;
type GPIO_IN_Register is record
GPIO_IN : GPIO_IN_GPIO_IN_Field;
Reserved_30_31 : HAL.UInt2;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OE_CLR_GPIO_OE_CLR_Field is HAL.UInt30;
type GPIO_OE_CLR_Register is record
GPIO_OE_CLR : GPIO_OE_CLR_GPIO_OE_CLR_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OE_GPIO_OE_Field is HAL.UInt30;
type GPIO_OE_Register is record
GPIO_OE : GPIO_OE_GPIO_OE_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OE_SET_GPIO_OE_SET_Field is HAL.UInt30;
type GPIO_OE_SET_Register is record
GPIO_OE_SET : GPIO_OE_SET_GPIO_OE_SET_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OE_XOR_GPIO_OE_XOR_Field is HAL.UInt30;
type GPIO_OE_XOR_Register is record
GPIO_OE_XOR : GPIO_OE_XOR_GPIO_OE_XOR_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OUT_CLR_GPIO_OUT_CLR_Field is HAL.UInt30;
type GPIO_OUT_CLR_Register is record
GPIO_OUT_CLR : GPIO_OUT_CLR_GPIO_OUT_CLR_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OUT_GPIO_OUT_Field is HAL.UInt30;
type GPIO_OUT_Register is record
GPIO_OUT : GPIO_OUT_GPIO_OUT_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OUT_SET_GPIO_OUT_SET_Field is HAL.UInt30;
type GPIO_OUT_SET_Register is record
GPIO_OUT_SET : GPIO_OUT_SET_GPIO_OUT_SET_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype GPIO_OUT_XOR_GPIO_OUT_XOR_Field is HAL.UInt30;
type GPIO_OUT_XOR_Register is record
GPIO_OUT_XOR : GPIO_OUT_XOR_GPIO_OUT_XOR_Field := 16#0#;
Reserved_30_31 : HAL.UInt2 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP0_ACCUM0_ADD_INTERP0_ACCUM0_ADD_Field is HAL.UInt24;
type INTERP0_ACCUM0_ADD_Register is record
INTERP0_ACCUM0_ADD : INTERP0_ACCUM0_ADD_INTERP0_ACCUM0_ADD_Field :=
16#0#;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP0_ACCUM1_ADD_INTERP0_ACCUM1_ADD_Field is HAL.UInt24;
type INTERP0_ACCUM1_ADD_Register is record
INTERP0_ACCUM1_ADD : INTERP0_ACCUM1_ADD_INTERP0_ACCUM1_ADD_Field :=
16#0#;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP0_CTRL_LANE0_FORCE_MSB_Field is HAL.UInt2;
subtype INTERP0_CTRL_LANE0_MASK_LSB_Field is HAL.UInt5;
subtype INTERP0_CTRL_LANE0_MASK_MSB_Field is HAL.UInt5;
type INTERP0_CTRL_LANE0_OVERF_Field
(As_Array : Boolean := False)
is record
case As_Array is
when False =>
Val : HAL.UInt3;
when True =>
Arr : INTERP0_CTRL_LANE0_OVERF_Field_Array;
end case;
end record
with Unchecked_Union, Size => 3;
type INTERP0_CTRL_LANE0_OVERF_Field_Array is array (0 .. 2) of Boolean
with Component_Size => 1, Size => 3;
type INTERP0_CTRL_LANE0_Register is record
SHIFT : INTERP0_CTRL_LANE0_SHIFT_Field := 16#0#;
MASK_LSB : INTERP0_CTRL_LANE0_MASK_LSB_Field := 16#0#;
MASK_MSB : INTERP0_CTRL_LANE0_MASK_MSB_Field := 16#0#;
SIGNED : Boolean := False;
CROSS_INPUT : Boolean := False;
CROSS_RESULT : Boolean := False;
ADD_RAW : Boolean := False;
FORCE_MSB : INTERP0_CTRL_LANE0_FORCE_MSB_Field := 16#0#;
BLEND : Boolean := False;
Reserved_22_22 : HAL.Bit := 16#0#;
OVERF : INTERP0_CTRL_LANE0_OVERF_Field :=
(As_Array => False, Val => 16#0#);
Reserved_26_31 : HAL.UInt6 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP0_CTRL_LANE0_SHIFT_Field is HAL.UInt5;
subtype INTERP0_CTRL_LANE1_FORCE_MSB_Field is HAL.UInt2;
subtype INTERP0_CTRL_LANE1_MASK_LSB_Field is HAL.UInt5;
subtype INTERP0_CTRL_LANE1_MASK_MSB_Field is HAL.UInt5;
type INTERP0_CTRL_LANE1_Register is record
SHIFT : INTERP0_CTRL_LANE1_SHIFT_Field := 16#0#;
MASK_LSB : INTERP0_CTRL_LANE1_MASK_LSB_Field := 16#0#;
MASK_MSB : INTERP0_CTRL_LANE1_MASK_MSB_Field := 16#0#;
SIGNED : Boolean := False;
CROSS_INPUT : Boolean := False;
CROSS_RESULT : Boolean := False;
ADD_RAW : Boolean := False;
FORCE_MSB : INTERP0_CTRL_LANE1_FORCE_MSB_Field := 16#0#;
Reserved_21_31 : HAL.UInt11 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP0_CTRL_LANE1_SHIFT_Field is HAL.UInt5;
subtype INTERP1_ACCUM0_ADD_INTERP1_ACCUM0_ADD_Field is HAL.UInt24;
type INTERP1_ACCUM0_ADD_Register is record
INTERP1_ACCUM0_ADD : INTERP1_ACCUM0_ADD_INTERP1_ACCUM0_ADD_Field :=
16#0#;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP1_ACCUM1_ADD_INTERP1_ACCUM1_ADD_Field is HAL.UInt24;
type INTERP1_ACCUM1_ADD_Register is record
INTERP1_ACCUM1_ADD : INTERP1_ACCUM1_ADD_INTERP1_ACCUM1_ADD_Field :=
16#0#;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP1_CTRL_LANE0_FORCE_MSB_Field is HAL.UInt2;
subtype INTERP1_CTRL_LANE0_MASK_LSB_Field is HAL.UInt5;
subtype INTERP1_CTRL_LANE0_MASK_MSB_Field is HAL.UInt5;
type INTERP1_CTRL_LANE0_OVERF_Field
(As_Array : Boolean := False)
is record
case As_Array is
when False =>
Val : HAL.UInt3;
when True =>
Arr : INTERP1_CTRL_LANE0_OVERF_Field_Array;
end case;
end record
with Unchecked_Union, Size => 3;
type INTERP1_CTRL_LANE0_OVERF_Field_Array is array (0 .. 2) of Boolean
with Component_Size => 1, Size => 3;
type INTERP1_CTRL_LANE0_Register is record
SHIFT : INTERP1_CTRL_LANE0_SHIFT_Field := 16#0#;
MASK_LSB : INTERP1_CTRL_LANE0_MASK_LSB_Field := 16#0#;
MASK_MSB : INTERP1_CTRL_LANE0_MASK_MSB_Field := 16#0#;
SIGNED : Boolean := False;
CROSS_INPUT : Boolean := False;
CROSS_RESULT : Boolean := False;
ADD_RAW : Boolean := False;
FORCE_MSB : INTERP1_CTRL_LANE0_FORCE_MSB_Field := 16#0#;
Reserved_21_21 : HAL.Bit := 16#0#;
CLAMP : Boolean := False;
OVERF : INTERP1_CTRL_LANE0_OVERF_Field :=
(As_Array => False, Val => 16#0#);
Reserved_26_31 : HAL.UInt6 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP1_CTRL_LANE0_SHIFT_Field is HAL.UInt5;
subtype INTERP1_CTRL_LANE1_FORCE_MSB_Field is HAL.UInt2;
subtype INTERP1_CTRL_LANE1_MASK_LSB_Field is HAL.UInt5;
subtype INTERP1_CTRL_LANE1_MASK_MSB_Field is HAL.UInt5;
type INTERP1_CTRL_LANE1_Register is record
SHIFT : INTERP1_CTRL_LANE1_SHIFT_Field := 16#0#;
MASK_LSB : INTERP1_CTRL_LANE1_MASK_LSB_Field := 16#0#;
MASK_MSB : INTERP1_CTRL_LANE1_MASK_MSB_Field := 16#0#;
SIGNED : Boolean := False;
CROSS_INPUT : Boolean := False;
CROSS_RESULT : Boolean := False;
ADD_RAW : Boolean := False;
FORCE_MSB : INTERP1_CTRL_LANE1_FORCE_MSB_Field := 16#0#;
Reserved_21_31 : HAL.UInt11 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype INTERP1_CTRL_LANE1_SHIFT_Field is HAL.UInt5;
SIO_Periph : aliased SIO_Peripheral
with Import, Address => SIO_Base;
type SIO_Peripheral is record
CPUID : aliased HAL.UInt32;
GPIO_IN : aliased GPIO_IN_Register;
GPIO_HI_IN : aliased GPIO_HI_IN_Register;
GPIO_OUT : aliased GPIO_OUT_Register;
GPIO_OUT_SET : aliased GPIO_OUT_SET_Register;
GPIO_OUT_CLR : aliased GPIO_OUT_CLR_Register;
GPIO_OUT_XOR : aliased GPIO_OUT_XOR_Register;
GPIO_OE : aliased GPIO_OE_Register;
GPIO_OE_SET : aliased GPIO_OE_SET_Register;
GPIO_OE_CLR : aliased GPIO_OE_CLR_Register;
GPIO_OE_XOR : aliased GPIO_OE_XOR_Register;
GPIO_HI_OUT : aliased GPIO_HI_OUT_Register;
GPIO_HI_OUT_SET : aliased GPIO_HI_OUT_SET_Register;
GPIO_HI_OUT_CLR : aliased GPIO_HI_OUT_CLR_Register;
GPIO_HI_OUT_XOR : aliased GPIO_HI_OUT_XOR_Register;
GPIO_HI_OE : aliased GPIO_HI_OE_Register;
GPIO_HI_OE_SET : aliased GPIO_HI_OE_SET_Register;
GPIO_HI_OE_CLR : aliased GPIO_HI_OE_CLR_Register;
GPIO_HI_OE_XOR : aliased GPIO_HI_OE_XOR_Register;
FIFO_ST : aliased FIFO_ST_Register;
FIFO_WR : aliased HAL.UInt32;
FIFO_RD : aliased HAL.UInt32;
SPINLOCK_ST : aliased HAL.UInt32;
DIV_UDIVIDEND : aliased HAL.UInt32;
DIV_UDIVISOR : aliased HAL.UInt32;
DIV_SDIVIDEND : aliased HAL.UInt32;
DIV_SDIVISOR : aliased HAL.UInt32;
DIV_QUOTIENT : aliased HAL.UInt32;
DIV_REMAINDER : aliased HAL.UInt32;
DIV_CSR : aliased DIV_CSR_Register;
INTERP0_ACCUM0 : aliased HAL.UInt32;
INTERP0_ACCUM1 : aliased HAL.UInt32;
INTERP0_BASE0 : aliased HAL.UInt32;
INTERP0_BASE1 : aliased HAL.UInt32;
INTERP0_BASE2 : aliased HAL.UInt32;
INTERP0_POP_LANE0 : aliased HAL.UInt32;
INTERP0_POP_LANE1 : aliased HAL.UInt32;
INTERP0_POP_FULL : aliased HAL.UInt32;
INTERP0_PEEK_LANE0 : aliased HAL.UInt32;
INTERP0_PEEK_LANE1 : aliased HAL.UInt32;
INTERP0_PEEK_FULL : aliased HAL.UInt32;
INTERP0_CTRL_LANE0 : aliased INTERP0_CTRL_LANE0_Register;
INTERP0_CTRL_LANE1 : aliased INTERP0_CTRL_LANE1_Register;
INTERP0_ACCUM0_ADD : aliased INTERP0_ACCUM0_ADD_Register;
INTERP0_ACCUM1_ADD : aliased INTERP0_ACCUM1_ADD_Register;
INTERP0_BASE_1AND0 : aliased HAL.UInt32;
INTERP1_ACCUM0 : aliased HAL.UInt32;
INTERP1_ACCUM1 : aliased HAL.UInt32;
INTERP1_BASE0 : aliased HAL.UInt32;
INTERP1_BASE1 : aliased HAL.UInt32;
INTERP1_BASE2 : aliased HAL.UInt32;
INTERP1_POP_LANE0 : aliased HAL.UInt32;
INTERP1_POP_LANE1 : aliased HAL.UInt32;
INTERP1_POP_FULL : aliased HAL.UInt32;
INTERP1_PEEK_LANE0 : aliased HAL.UInt32;
INTERP1_PEEK_LANE1 : aliased HAL.UInt32;
INTERP1_PEEK_FULL : aliased HAL.UInt32;
INTERP1_CTRL_LANE0 : aliased INTERP1_CTRL_LANE0_Register;
INTERP1_CTRL_LANE1 : aliased INTERP1_CTRL_LANE1_Register;
INTERP1_ACCUM0_ADD : aliased INTERP1_ACCUM0_ADD_Register;
INTERP1_ACCUM1_ADD : aliased INTERP1_ACCUM1_ADD_Register;
INTERP1_BASE_1AND0 : aliased HAL.UInt32;
SPINLOCK0 : aliased HAL.UInt32;
SPINLOCK1 : aliased HAL.UInt32;
SPINLOCK2 : aliased HAL.UInt32;
SPINLOCK3 : aliased HAL.UInt32;
SPINLOCK4 : aliased HAL.UInt32;
SPINLOCK5 : aliased HAL.UInt32;
SPINLOCK6 : aliased HAL.UInt32;
SPINLOCK7 : aliased HAL.UInt32;
SPINLOCK8 : aliased HAL.UInt32;
SPINLOCK9 : aliased HAL.UInt32;
SPINLOCK10 : aliased HAL.UInt32;
SPINLOCK11 : aliased HAL.UInt32;
SPINLOCK12 : aliased HAL.UInt32;
SPINLOCK13 : aliased HAL.UInt32;
SPINLOCK14 : aliased HAL.UInt32;
SPINLOCK15 : aliased HAL.UInt32;
SPINLOCK16 : aliased HAL.UInt32;
SPINLOCK17 : aliased HAL.UInt32;
SPINLOCK18 : aliased HAL.UInt32;
SPINLOCK19 : aliased HAL.UInt32;
SPINLOCK20 : aliased HAL.UInt32;
SPINLOCK21 : aliased HAL.UInt32;
SPINLOCK22 : aliased HAL.UInt32;
SPINLOCK23 : aliased HAL.UInt32;
SPINLOCK24 : aliased HAL.UInt32;
SPINLOCK25 : aliased HAL.UInt32;
SPINLOCK26 : aliased HAL.UInt32;
SPINLOCK27 : aliased HAL.UInt32;
SPINLOCK28 : aliased HAL.UInt32;
SPINLOCK29 : aliased HAL.UInt32;
SPINLOCK30 : aliased HAL.UInt32;
SPINLOCK31 : aliased HAL.UInt32;
end record
with Volatile;