Commit 560fea6c authored by Ille, Ondrej, Ing.'s avatar Ille, Ondrej, Ing.

src: Add "is_implemented" to generated register list!

parent bc239421
...@@ -60,11 +60,12 @@ package can_fd_frame_format is ...@@ -60,11 +60,12 @@ package can_fd_frame_format is
reg_read_write_once reg_read_write_once
); );
type t_reg is record type t_memory_reg is record
address : std_logic_vector(11 downto 0); address : std_logic_vector(11 downto 0);
size : integer; size : integer;
reg_type : t_reg_type; reg_type : t_reg_type;
reset_val : std_logic_vector(31 downto 0); reset_val : std_logic_vector(31 downto 0);
is_implem : std_logic_vector(31 downto 0);
end record; end record;
...@@ -87,38 +88,45 @@ package can_fd_frame_format is ...@@ -87,38 +88,45 @@ package can_fd_frame_format is
-- Register list -- Register list
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
type t_CAN_FD_Frame_format_list is array (0 to 6) of t_reg; type t_CAN_FD_Frame_format_list is array (0 to 6) of t_memory_reg;
constant CAN_FD_Frame_format_list : t_CAN_FD_Frame_format_list :=( constant CAN_FD_Frame_format_list : t_CAN_FD_Frame_format_list :=(
(address => FRAME_FORM_W_ADR, (address => FRAME_FORM_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000001111111011101111"),
(address => IDENTIFIER_W_ADR, (address => IDENTIFIER_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => TIMESTAMP_L_W_ADR, (address => TIMESTAMP_L_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TIMESTAMP_U_W_ADR, (address => TIMESTAMP_U_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => DATA_1_4_W_ADR, (address => DATA_1_4_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => DATA_5_8_W_ADR, (address => DATA_5_8_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => DATA_61_64_W_ADR, (address => DATA_61_64_W_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000") reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111")
); );
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
......
...@@ -60,11 +60,12 @@ package can_fd_register_map is ...@@ -60,11 +60,12 @@ package can_fd_register_map is
reg_read_write_once reg_read_write_once
); );
type t_reg is record type t_memory_reg is record
address : std_logic_vector(11 downto 0); address : std_logic_vector(11 downto 0);
size : integer; size : integer;
reg_type : t_reg_type; reg_type : t_reg_type;
reset_val : std_logic_vector(31 downto 0); reset_val : std_logic_vector(31 downto 0);
is_implem : std_logic_vector(31 downto 0);
end record; end record;
...@@ -129,206 +130,255 @@ package can_fd_register_map is ...@@ -129,206 +130,255 @@ package can_fd_register_map is
-- Register list -- Register list
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
type t_Control_registers_list is array (0 to 48) of t_reg; type t_Control_registers_list is array (0 to 48) of t_memory_reg;
constant Control_registers_list : t_Control_registers_list :=( constant Control_registers_list : t_Control_registers_list :=(
(address => DEVICE_ID_ADR, (address => DEVICE_ID_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000001100101011111101"), reset_val => "00000000000000001100101011111101",
is_implem => "00000000000000001111111111111111"),
(address => VERSION_ADR, (address => VERSION_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => MODE_ADR, (address => MODE_ADR,
size => 16, size => 16,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000010000"), reset_val => "00000000000000000000000000010000",
is_implem => "00000000000000000000000110011111"),
(address => SETTINGS_ADR, (address => SETTINGS_ADR,
size => 16, size => 16,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => STATUS_ADR, (address => STATUS_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000010000000"), reset_val => "00000000000000000000000010000100",
is_implem => "00000000000000000000000011111111"),
(address => COMMAND_ADR, (address => COMMAND_ADR,
size => 32, size => 32,
reg_type => reg_write_only, reg_type => reg_write_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000001111100"),
(address => INT_STAT_ADR, (address => INT_STAT_ADR,
size => 16, size => 16,
reg_type => reg_read_write_once, reg_type => reg_read_write_once,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111111111111"),
(address => INT_ENA_SET_ADR, (address => INT_ENA_SET_ADR,
size => 16, size => 16,
reg_type => reg_read_write_once, reg_type => reg_read_write_once,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111111111111"),
(address => INT_ENA_CLR_ADR, (address => INT_ENA_CLR_ADR,
size => 16, size => 16,
reg_type => reg_write_only, reg_type => reg_write_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111111111111"),
(address => INT_MASK_SET_ADR, (address => INT_MASK_SET_ADR,
size => 16, size => 16,
reg_type => reg_read_write_once, reg_type => reg_read_write_once,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111111111111"),
(address => INT_MASK_CLR_ADR, (address => INT_MASK_CLR_ADR,
size => 16, size => 16,
reg_type => reg_write_only, reg_type => reg_write_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111111111111"),
(address => BTR_ADR, (address => BTR_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00010000010100001010000110000101"), reset_val => "00010000010100001010000110000101",
is_implem => "11111111111111111111111111111111"),
(address => BTR_FD_ADR, (address => BTR_FD_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00010000001000000110000110000011"), reset_val => "00010000001000000110000110000011",
is_implem => "11111111111110111110111110111111"),
(address => EWL_ADR, (address => EWL_ADR,
size => 8, size => 8,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000001100000"), reset_val => "00000000000000000000000001100000",
is_implem => "00000000000000000000000011111111"),
(address => ERP_ADR, (address => ERP_ADR,
size => 8, size => 8,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000001000000000000000"), reset_val => "00000000000000001000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => FAULT_STATE_ADR, (address => FAULT_STATE_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000010000000000000000"), reset_val => "00000000000000010000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => REC_ADR, (address => REC_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000111111111"),
(address => TEC_ADR, (address => TEC_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => ERR_NORM_ADR, (address => ERR_NORM_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000001111111111111111"),
(address => ERR_FD_ADR, (address => ERR_FD_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => CTR_PRES_ADR, (address => CTR_PRES_ADR,
size => 32, size => 32,
reg_type => reg_write_only, reg_type => reg_write_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000001111111111111"),
(address => FILTER_A_MASK_ADR, (address => FILTER_A_MASK_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_A_VAL_ADR, (address => FILTER_A_VAL_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_B_MASK_ADR, (address => FILTER_B_MASK_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_B_VAL_ADR, (address => FILTER_B_VAL_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_C_MASK_ADR, (address => FILTER_C_MASK_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_C_VAL_ADR, (address => FILTER_C_VAL_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_RAN_LOW_ADR, (address => FILTER_RAN_LOW_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_RAN_HIGH_ADR, (address => FILTER_RAN_HIGH_ADR,
size => 32, size => 32,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111111111111111111111"),
(address => FILTER_CONTROL_ADR, (address => FILTER_CONTROL_ADR,
size => 16, size => 16,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000001111"), reset_val => "00000000000000000000000000001111",
is_implem => "00000000000000001111111111111111"),
(address => FILTER_STATUS_ADR, (address => FILTER_STATUS_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => RX_MEM_INFO_ADR, (address => RX_MEM_INFO_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00011111111111110001111111111111"),
(address => RX_POINTERS_ADR, (address => RX_POINTERS_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00001111111111110000111111111111"),
(address => RX_STATUS_ADR, (address => RX_STATUS_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000011"), reset_val => "00000000000000000000000000000001",
is_implem => "00000000000000000111111111110011"),
(address => RX_SETTINGS_ADR, (address => RX_SETTINGS_ADR,
size => 8, size => 8,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => RX_DATA_ADR, (address => RX_DATA_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TX_STATUS_ADR, (address => TX_STATUS_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000001000100010001000"), reset_val => "00000000000000001000100010001000",
is_implem => "00000000000000001111111111111111"),
(address => TX_COMMAND_ADR, (address => TX_COMMAND_ADR,
size => 16, size => 16,
reg_type => reg_write_only, reg_type => reg_write_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000111100000111"),
(address => TX_PRIORITY_ADR, (address => TX_PRIORITY_ADR,
size => 16, size => 16,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000000000000000000000001"), reset_val => "00000000000000000000000000000001",
is_implem => "00000000000000000111011101110111"),
(address => ERR_CAPT_ADR, (address => ERR_CAPT_ADR,
size => 8, size => 8,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000011111"), reset_val => "00000000000000000000000000011111",
is_implem => "00000000000000000000000011111111"),
(address => ALC_ADR, (address => ALC_ADR,
size => 8, size => 8,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => TRV_DELAY_ADR, (address => TRV_DELAY_ADR,
size => 16, size => 16,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000001111111111111111"),
(address => SSP_CFG_ADR, (address => SSP_CFG_ADR,
size => 16, size => 16,
reg_type => reg_read_write, reg_type => reg_read_write,
reset_val => "00000000000001000000000000000000"), reset_val => "00000000000001000000000000000000",
is_implem => "00000000000000000000000000000000"),
(address => RX_FR_CTR_ADR, (address => RX_FR_CTR_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TX_FR_CTR_ADR, (address => TX_FR_CTR_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => DEBUG_REGISTER_ADR, (address => DEBUG_REGISTER_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "00000000000000111111111111111111"),
(address => YOLO_REG_ADR, (address => YOLO_REG_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "11011110101011011011111011101111"), reset_val => "11011110101011011011111011101111",
is_implem => "11111111111111111111111111111111"),
(address => TIMESTAMP_LOW_ADR, (address => TIMESTAMP_LOW_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TIMESTAMP_HIGH_ADR, (address => TIMESTAMP_HIGH_ADR,
size => 32, size => 32,
reg_type => reg_read_only, reg_type => reg_read_only,
reset_val => "00000000000000000000000000000000") reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111")
); );
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
...@@ -346,22 +396,25 @@ package can_fd_register_map is ...@@ -346,22 +396,25 @@ package can_fd_register_map is
-- Register list -- Register list
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
type t_TX_Buffer_1_list is array (0 to 2) of t_reg; type t_TX_Buffer_1_list is array (0 to 2) of t_memory_reg;
constant TX_Buffer_1_list : t_TX_Buffer_1_list :=( constant TX_Buffer_1_list : t_TX_Buffer_1_list :=(
(address => TXTB1_DATA_1_ADR, (address => TXTB1_DATA_1_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TXTB1_DATA_2_ADR, (address => TXTB1_DATA_2_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TXTB1_DATA_20_ADR, (address => TXTB1_DATA_20_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000") reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111")
); );
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
...@@ -379,22 +432,25 @@ package can_fd_register_map is ...@@ -379,22 +432,25 @@ package can_fd_register_map is
-- Register list -- Register list
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
type t_TX_Buffer_2_list is array (0 to 2) of t_reg; type t_TX_Buffer_2_list is array (0 to 2) of t_memory_reg;
constant TX_Buffer_2_list : t_TX_Buffer_2_list :=( constant TX_Buffer_2_list : t_TX_Buffer_2_list :=(
(address => TXTB2_DATA_1_ADR, (address => TXTB2_DATA_1_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TXTB2_DATA_2_ADR, (address => TXTB2_DATA_2_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000"), reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111"),
(address => TXTB2_DATA_20_ADR, (address => TXTB2_DATA_20_ADR,
size => 32, size => 32,
reg_type => reg_none, reg_type => reg_none,
reset_val => "00000000000000000000000000000000") reset_val => "00000000000000000000000000000000",
is_implem => "11111111111111111111111111111111")
); );
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
...@@ -412,22 +468,25 @@ package can_fd_register_map is ...@@ -412,22 +468,25 @@ package can_fd_register_map is
-- Register list -- Register list
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
type t_TX_Buffer_3_list is array (0 to 2) of t_reg;