-
Notifications
You must be signed in to change notification settings - Fork 762
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[entropy_src/dv] Separate external health test (XHT) verification from V2 tests #17638
Changes from all commits
0c30e16
a62d494
2e7e815
ec3e4b2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -183,6 +183,7 @@ class entropy_src_scoreboard extends cip_base_scoreboard#( | |
process_interrupts(); | ||
process_fifo_exceptions(); | ||
health_test_scoring_thread(); | ||
process_xht(); | ||
join_none | ||
end | ||
endtask | ||
|
@@ -1107,6 +1108,21 @@ class entropy_src_scoreboard extends cip_base_scoreboard#( | |
end | ||
endtask | ||
|
||
task process_xht(); | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Great idea to add such a check! Nit: should this task rather be named There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah, at some point the scoreboard will have to take XHT transactions into account for its modeling and checking, as it already does for TL accesses, for example. By convention, these tasks seem to start with Note that in a proper UVM design, the scoreboard would not sample I/Os directly but use TLM analysis FIFOs (again using the TL example, the scoreboard calls
When implementing XHT tests, the checks in this PR can be complemented by or moved to TLM-based checks. |
||
// Process XHT transactions. | ||
forever begin | ||
@(cfg.m_xht_agent_cfg.vif.mon_cb); | ||
if (cfg.under_reset) continue; | ||
|
||
if (cfg.xht_only_default_rsp) begin | ||
// If the environment is configured to maintain the default XHT response at all time, ensure | ||
// that this is really the case. | ||
`DV_CHECK_EQ(cfg.m_xht_agent_cfg.vif.mon_cb.rsp, | ||
entropy_src_pkg::ENTROPY_SRC_XHT_RSP_DEFAULT) | ||
end | ||
end | ||
endtask | ||
|
||
// All the HT threshold registers are one-way: they can only become more strict unless | ||
// the DUT is reset. This function encapsulates this behavior. | ||
// | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NB: This test has the default number of reseeds (50), whereas
entropy_src_rng
still has 300. The number of reseeds can be increased later depending on XHT coverage (#16276)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good.