------------- Registers -- -------------
subtype COUNT_COUNT_Field is HAL.UInt8;
type COUNT_Register is record
COUNT : COUNT_COUNT_Field := 16#0#;
Reserved_8_31 : HAL.UInt24 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
type CTRL_ENABLE_Field is
CTRL_ENABLE_Field_Reset,
DISABLE,
ENABLE)
with Size => 12;
type CTRL_FREQ_RANGE_Field is
CTRL_FREQ_RANGE_Field_Reset,
LOW,
MEDIUM,
TOOHIGH,
HIGH)
with Size => 12;
type CTRL_Register is record
FREQ_RANGE : CTRL_FREQ_RANGE_Field := CTRL_FREQ_RANGE_Field_Reset;
ENABLE : CTRL_ENABLE_Field := CTRL_ENABLE_Field_Reset;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
type DIV_DIV_Field is
DIV_DIV_Field_Reset,
PASS)
with Size => 12;
type DIV_Register is record
DIV : DIV_DIV_Field := DIV_DIV_Field_Reset;
Reserved_12_31 : HAL.UInt20 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype FREQA_DS0_Field is HAL.UInt3;
subtype FREQA_DS1_Field is HAL.UInt3;
subtype FREQA_DS2_Field is HAL.UInt3;
subtype FREQA_DS3_Field is HAL.UInt3;
type FREQA_PASSWD_Field is
FREQA_PASSWD_Field_Reset,
PASS)
with Size => 16;
type FREQA_Register is record
DS0 : FREQA_DS0_Field := 16#0#;
Reserved_3_3 : HAL.Bit := 16#0#;
DS1 : FREQA_DS1_Field := 16#0#;
Reserved_7_7 : HAL.Bit := 16#0#;
DS2 : FREQA_DS2_Field := 16#0#;
Reserved_11_11 : HAL.Bit := 16#0#;
DS3 : FREQA_DS3_Field := 16#0#;
Reserved_15_15 : HAL.Bit := 16#0#;
PASSWD : FREQA_PASSWD_Field := FREQA_PASSWD_Field_Reset;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype FREQB_DS4_Field is HAL.UInt3;
subtype FREQB_DS5_Field is HAL.UInt3;
subtype FREQB_DS6_Field is HAL.UInt3;
subtype FREQB_DS7_Field is HAL.UInt3;
type FREQB_PASSWD_Field is
FREQB_PASSWD_Field_Reset,
PASS)
with Size => 16;
type FREQB_Register is record
DS4 : FREQB_DS4_Field := 16#0#;
Reserved_3_3 : HAL.Bit := 16#0#;
DS5 : FREQB_DS5_Field := 16#0#;
Reserved_7_7 : HAL.Bit := 16#0#;
DS6 : FREQB_DS6_Field := 16#0#;
Reserved_11_11 : HAL.Bit := 16#0#;
DS7 : FREQB_DS7_Field := 16#0#;
Reserved_15_15 : HAL.Bit := 16#0#;
PASSWD : FREQB_PASSWD_Field := FREQB_PASSWD_Field_Reset;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype PHASE_PASSWD_Field is HAL.UInt8;
type PHASE_Register is record
SHIFT : PHASE_SHIFT_Field := 16#0#;
FLIP : Boolean := False;
ENABLE : Boolean := True;
PASSWD : PHASE_PASSWD_Field := 16#0#;
Reserved_12_31 : HAL.UInt20 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype PHASE_SHIFT_Field is HAL.UInt2;
type RANDOMBIT_Register is record
RANDOMBIT : Boolean;
Reserved_1_31 : HAL.UInt31;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
ROSC_Periph : aliased ROSC_Peripheral
with Import, Address => ROSC_Base;
type ROSC_Peripheral is record
CTRL : aliased CTRL_Register;
FREQA : aliased FREQA_Register;
FREQB : aliased FREQB_Register;
DORMANT : aliased HAL.UInt32;
DIV : aliased DIV_Register;
PHASE : aliased PHASE_Register;
STATUS : aliased STATUS_Register;
RANDOMBIT : aliased RANDOMBIT_Register;
COUNT : aliased COUNT_Register;
end record
with Volatile;
type STATUS_Register is record
Reserved_0_11 : HAL.UInt12 := 16#0#;
ENABLED : Boolean := False;
Reserved_13_15 : HAL.UInt3 := 16#0#;
DIV_RUNNING : Boolean := False;
Reserved_17_23 : HAL.UInt7 := 16#0#;
BADWRITE : Boolean := False;
Reserved_25_30 : HAL.UInt6 := 16#0#;
STABLE : Boolean := False;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;