TWiki
>
P1076 Web
>
Vhdl2019CollectedRequirements
>
FunctionalCoverage
(2020-02-17,
JimLewis
)
(raw view)
E
dit
A
ttach
---+ Functional Coverage %TOC% ---++ Proposal Information * Who Updates: Main.JimLewis, ... * Date Proposed: 2011-07-16 * Date Last Updated: 2012-11-29 * Priority: * Complexity: * Focus: Testbench ---++ Requirement Summary & Rationale Requirements from past IEEE and Accellera VHDL lists | *Item* | *Description* | *Tracking / Proposal* | *Supporters Priority* || | TBV 10 | Access to coverage for reactive TB | [[http://www.eda.org/vhdl-200x/vhdl-200x-tbv/vhdl-200x-tbv.pdf][TBV Proposals]] | || | SAB 5 | Functional Coverage paired with random and PSL | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel]] | || | SAB 6 | FC triggered on events or sequence completion | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel]] | || | SAB 7 | Disable FC under a condition such as after reset | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel]] | || | SAB 8 | Access FC data structure to support reactive testbenches | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel]] | || | SAB 9 | Support cross coverage (relate 2 or more points) | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel]] | || | SAB 10 | User specification of how functional coverage data is grouped (bins) | [[%ATTACHURL%/Accellera_RequirementsStatus_19May2006.xls][Accellera 2008 List - excel ]] | || | | | | || Conditional coverage collection Separate coverage goals for each bin ---++ Approach Overview Coverage is a data structure. As such it can be implemented in a protected type. The Open Source VHDL Verification Methodology (OSVVM) project has implemented such a package and would be a suitable alternative to adding syntax to the language. ---++ Advantages of a package based approach Available now. No cost for vendors to implement. Updateable frequently. While SystemVerilog and 'e' implement FC as a declarative object, constructing the model and collecting coverage sequentially has some distinct advantages. The coverage model does not need to be captured in a single declaration, but rather can be captured incrementally when the precision and/or fidelity of the model demands it. Any sequential construct may be used to construct model or capture coverage. One unique capability the OSVVM package offers is the integration of functional coverage and randomization. With only constrained random capability, generating N stimulus items takes O(n * log n). By randomly selecting a coverage hole, and passing that to the stimulus generation process, under good conditions, run times can be reduced to O(n). [[http://www.osvvm.org][The OSVVM packages are available here.]] ---++ VASG Actions With the current language definition, there are some things that the package based approach cannot do or would be clumbsey to do. There are a number of enhnacements that we can make to protected types, subprogram interfaces, and subprograms that would expand the capabilities of the package based approach. Most/all of these are inspired by features that are already in ADA. How do we better leverage PSL - particularly for transition based constraints. ---++ Use Models See the documentation that accompanies the open-source packages. ---++ Competing Issues: None at this time ---++ General Comments ---++ Supporters _Add your signature here to indicate your support for the proposal_ ---++ Document History -- Main.JimLewis - 2012-11-30: Split FC from FC+random [[http://www.eda.org/twiki/bin/view.cgi/P1076/CoverageRandomization][Old combined FC and Randomization]]
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r2
<
r1
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r2 - 2020-02-17 - 15:34:31 -
JimLewis
P1076
Log In
or
Register
P1076 Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
Webs
Main
P1076
Ballots
LCS2016_080
P10761
P1647
P16661
P1685
P1734
P1735
P1778
P1800
P1801
Sandbox
TWiki
VIP
VerilogAMS
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback