Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[rom_ctrl, dv] Exclusion of non-occuring cases for tlul_adapter_sram
It is impossible to see !tl_i_int.a_valid & !error_internal. When a_valid is false, it is seen in u_err inside tlul_adapter_sram.sv. This will make a_config_allowed inside u_err false as it depends on addr_sz_chk, mask_chk and fulldata_chk. All of them are false if a_valid is false. This means that in u_err, the first term of err_o becomes true. Next, err_o become visible to error_det as tlul_error inside tlul_adapter_sram and it will be true if tlul_error is true. error_det will then be seen as error_i to u_sram_byte inside tlul_adapter_sram. Since EnableIntg parameter is 0 for rom_ctrl, error_i comes out as error_o from u_sram_byte. Then error_o would be seen as error_internal to tlul_adapter_sram and the conditional statement is not able to cover 00 case for this reason. It is impossible to get sram_ack & we_o. we_o become true when there is an a_valid and a_opcode as Put. But when a_opcode is a Put, wr_vld_error in the adapter becomes true as ErrOnWrite is true for the adapter in case of rom_ctrl. wr_vld_error lets error_det become true. Since rom_ctrl doesn't enable integrity errors, error_det comes out as error_internal directly from u_sram_byte. But this makes req_o false and hence sram_ack false. Signed-off-by: Kinza Qamar <[email protected]>
- Loading branch information