In SystemVerilog verification, cross coverage bins can be fine-tuned using the 'bins of' keyword combined with the 'intersect' keyword to select specific bins from a cover point that intersect with a desired set of values, which can be specified as individual values, ranges, or open ranges (e.g., $ to 7 for values ≤7), and multiple bin selections can be combined using logical AND (&&) and OR (||) operations for complex coverage scenarios.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
Course : Systemverilog Verification 5 : L9.2 : Cross Coverage Bins
Added:bins in cross coverage now i already learned how to define x cross coverage and here you are going to learn how to fine tune the bins of the cross coverage for that you will be using two system value keywords that is bins of keyword and intersect keyword the bins of keyword takes an argument and it it its argument should be either a cover point or a specific bin of a cow point and the bins of keyword yields and returns the bins of its expression which is either a cow point or a cow point bin and the resulting bin can be further selected by including or excluding only the bins who are associated with the values intersecting the desired set of values so here we will use a keyword intersect and in order to specify the desired set of value we will use a set of braces here and all the desired set of values will be listed by separating commas now see an example so this is an expression bins off is a keyword bins of x and here x is a cow point intersect is an another keyword and after the intersect will list down all the values of interest so this will uh this is the bins of coverage point x whose values intersect with the values given which is v1 v2 v3 and uh in order to negate this we will use a note symbol so if you use this particular expression note pins of x intersect with v one v two v three then it means it's a bins of the color point x whose values do not intersect with the given values now we will see an example and we'll come back to the slide again so in the same example the cover group name is plus values i am writing explicit cover points for ledran data variables which is adida range and data range with four explicit bins now another cross coverage is defined between adida range and data range with the name mdrx data and look at the first bin explicitly created for this cross coverage so here the bins the bins of this cross coverage are listed here and the first bin of this cross coverage is bins its name is even it's equal to bins of addr intersect with the values at one to seven now the bins of adida ranger null range lower range mid range are in high range and ah these bins should intersect with the values values given here which is a value set of one to seven i ideally you should list down all the values separated by commas or you can even give a score square bracket to give us a range of value here in effect you can see only lower range and mid range will satisfy the values between one to seven uh thus these two bins will be effectively part of the bins named c1 here the next band c2 is almost similar to the bin definition of c1 the only difference is i have negated the bin definition using this symbol so it means the bins of adr intersect with the values at 8 to 9 since i have used a negation symbol so this bin c2 is containing all the bins of hdr range which is not intersecting the value from a to 9.
as you heard seen in the previous slide the bins of keyword can take as an argument i either a cover point or a spin of a specific outpoint so these two expressions we are taking a cow point as an argument and in the next treatment we are going to see how to take a bin of a specific cover point so bins named c3 is saying it's the bins of addr dot lower range that means this particular point adr and its bin name is low range so this particular bin which is hdr.lower range which is intersecting with the wireless at one to two thus the cow point c3 is defining or fine-tuning the the total cross coverage to only a set of values where the adida range dot lower range will intersect with values in one to two effectively it will take only these two values we have seen that a value set is given within a set of braces and the value set can be specified as a either a single value or a range of value or an open range so you can give a range of value using a square bracket or you can even give an open range as follows like dollar to a particular value so this open range means a set of values which is less than or equal to this particular value say for example if we give dollar to 7 it means all the values which is less than the value 7 less than or equal to the value seven and if you give an open range like a value to dollar it means a set of values greater than or equal to the specified given value now also bin selection can be combined with other selection of bins using the logical operations double and and doubler so double line is logic line doubler is a logical open system will look so you can use the bins selection bins of expression with logic land or logical or we will see an example so here in the fourth min of this a ddr cross data range you can see its name is c4 and i have used a logical and expression the bin c4 is bins of adr range toward mid-range and bins of data range dot mid-range so adida range uh the bin the bin of a tdr entered mid-range is this file set which is four to seven which is containing four different values and this is the bins of data range dot metering which is uh again having the values at four to seven so there are four values here and four values here and uh if you see uh this will create 16 explicit bins whether uh the address and data are getting any values from four to seven at a positive edge of clock here and in the next statement c5 i have used a logical hour here so bins of idea to high range or bins of data range load high range and also in the last statement you can see uh bins of headed air wrote high range intersect with intersecting with the value set uh given and bins of uh data range dot high range intersecting with a value set that is given so you can give any sort of combinations that is listed here so these are all the possible combinations of bin creation in cross coverage finally let me tell you in this specific example all this pin creation together if you take may not give you any sense but these are listed here just to illustrate different forms of bin creation and cross coverage so don't consider all of them together here in this example with a valid cross coverage definition this is a way of creating different forms of or different combinations of cross coverage bins in systematic
Related Videos
LBF101 Creating an XML Changelog
liquibase7511
3K views•2026-06-15
Alta Labs Cloud Dashboard Real time Network & Xnet Insights!
ShinyTechThings
158 views•2026-06-17
Wait... Group Policy Not Applying? Check This First!
keeplearning_iT
144 views•2026-06-15
Leetcode Weekly Contest 506 | Life's boring these days
Pudeesht
2K views•2026-06-14
microJAM: MAKING A MICRO GAME FOR A GAME JAM IN CLOJURESCRIPT AND TOTALLY NOT C
janetacarr
156 views•2026-06-18
Partitioning vs Bucketing vs Clustering: How to Make Queries 100x Faster
thedataandaiguy
194 views•2026-06-16
Design Claude Code Like a Senior Engineer
hayk.simonyan
344 views•2026-06-19
Linus Torvalds: AI Won’t Replace Understanding Code
SavvyNik
140 views•2026-06-19











