Skip to content

Testplan and toggle coverage improvements#149

Open
jan-malek wants to merge 17 commits into
chipsalliance:main-oldfrom
antmicro:combined-tgl-cov-pr
Open

Testplan and toggle coverage improvements#149
jan-malek wants to merge 17 commits into
chipsalliance:main-oldfrom
antmicro:combined-tgl-cov-pr

Conversation

@jan-malek

@jan-malek jan-malek commented Feb 27, 2026

Copy link
Copy Markdown
Contributor
  • Includes tests added by Coverage improvements #132 into the testplan

  • Extends waivers for:

    • I3CCSR.sv: Waives remaining field_combo signals and parts of readback_array that weren't investigated yet
    • recovery_executor.sv: Adds more waivers
    • recovery_handler.sv: Adds more waivers
    • csri.sv, controller.sv, configuration.sv: Copy existing CSR interface waivers from other modules
  • Adds waivers for new modules: tti.sv, ccc.sv, ccc_entdaa.sv, descriptor_tx.sv, descriptor_rx.sv, i3c_target_fsm.sv, ibi.sv, descriptor_ibi.sv, recovery_transmitter.sv, recovery_receiver.sv, queues.sv, read_queue.sv, write_queue.sv, bus_tx.sv, bus_tx_flow.sv, bus_rx_flow.sv, bus_timers.sv, stable_high_detector.sv, edge_detector.sv, axi_adapter.sv, i3c_axi_sub_wr.sv, i3c_axi_sub_rd.sv, i3c_axi_sub_arb.sv, i3c_axi_sub.sv

  • Adds tests to improve coverage:

    • test_ccc_entdaa_parity: To cover the NACK flow of the ccc_entdaa FSM.
    • test_i3c_target_read_long: To cover upper bits of the TX descriptor (just like what test_i3c_target_write_255 does to the RX descriptor)
    • test_i3c_target_ibi_retry_finite: Tests handling of different values of the IBI retry counter (so far only 7 = infinite was tested)
    • test_i3c_target_ibi_hold_time: Tests if the IBI module respects the T_HD_DAT timing (which also covers the hold timer)
    • test_i3c_target_ibi_data_long: To cover upper bits of the IBI descriptor (just like what test_i3c_target_write_255 does to the RX descriptor)
  • Changes existing tests to improve coverage:

    • test_payload_available: Adds tactical CSR reads to cover more ranges in I3CCSR readback_array. Also fixes a test logic issue.
    • test_ccc_rstact: Fixed indentation to have an assertion apply to all loop iterations.
  • RTL changes:

    • ccc.sv: Removed unused signal
    • i3c_target_fsm.sv: Removed unused signals. Renamed a misnamed signal.
    • ibi.sv: Fixed logic of the retry counter FF to actually limit the number of retries.
    • width_converter_8toN.sv: Changed a constant signal into a localparam.
    • bus_tx_flow.sv: Make a bit counter one bit narrower (it only counts to 7)
    • axi_adapter.sv: Remove unused signal.
  • Adds waiver reasons for remaining CSR interface signals that didn't have a specific reason described yet. They were either:

    • Constant (read-only for both HW & SW)
    • Constant (not read-only but is assigned a constant value derived from configuration)
    • Write not yet being issued from HW despite being rw
    • w1clrs
    • Unused placeholder CSRs for controller-mode support
    • Ranges of readback_array that map to an already waived CSR field
  • Adds waivers from waivers.yaml into exclusion.yaml and removes the former

  • Translates the legacy exclusion.yaml into the new format

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants