Home > Community > Forums > Functional Verification > vr_ad reset check

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 vr_ad reset check 

Last post Mon, Jan 7 2013 1:25 AM by tauf. 3 replies.
Started by Ravisinha 04 Jan 2011 01:51 AM. Topic has 3 replies and 2338 views
Page 1 of 1 (4 items)
Sort Posts:
  • Tue, Jan 4 2011 1:51 AM

    • Ravisinha
    • Top 500 Contributor
    • Joined on Tue, Nov 24 2009
    • Posts 21
    • Points 315
    vr_ad reset check Reply
    Hi all, When we define as vr_ad reg_fld for each reg_file we used to provide the reset value of each field. As i know the application for this is when we call reset() function for that reg_file it will overwritten with a reset value whatever we have assigned. My doubt here is can it be use for doing a reset check.. For example whenever i do a read of some register i need not to provide the extra check method in my code for checking the reset value and it should be done automatically with vr_ad compare_and_update() method w.r.t the reset value of corresponding reg_def. Thanks Ravi
    • Post Points: 20
  • Tue, Jan 4 2011 2:22 AM

    • StephenH
    • Top 25 Contributor
    • Joined on Tue, Sep 2 2008
    • Bristol, Avon
    • Posts 268
    • Points 4,325
    Re: vr_ad reset check Reply

    Hi Ravi.

    vr_ad doesn't explicitly cover or check for reset values, however if you reset a register and subsequently read it before writing it, then the value you read and check will be the reset value. In this case vr_ad will be checking the reset value implicitly.

    If you look at the vrad/examples/vr_ad_reg_sequence_lib.e you'll find some helpful pre-defined register sequences. For example the CHECK_RESET_VALUES sequence will go through all the registers checking their reset values. You can evenoverride the list of registers so that the sequence checks only a specific subset of the registers, or you can use it to force the order of checking.

    If you need some coverage to tell whether a register's reset value was read, you could easily extend the base vr_ad_reg with a new boolean field that gets set TRUE by the reset() method, and cleared after covering its value in post_access(). Thus when the flag is covered TRUE you know you've checked the reset value for that register.

    Hope this helps.

    Steve Hobbs / Applications Engineer / Cadence Functional Verification
    Filed under:
    • Post Points: 20
  • Tue, Jan 4 2011 4:59 AM

    • Ravisinha
    • Top 500 Contributor
    • Joined on Tue, Nov 24 2009
    • Posts 21
    • Points 315
    Re: vr_ad reset check Reply
    Hi Stephen, Thanks for the quick reply. Now i understood.. And one more point i want to add here is ; basically in environment we have to add like on each transaction end (monitor event) , based on READ/WRITE we should called update(addr,data,mask) and compare_and_update(addr,data) method of vr_ad. If we do this way whenever we read any register vr_ad will check it automatically with the current updated value. thanks
    • Post Points: 20
  • Mon, Jan 7 2013 1:25 AM

    • tauf
    • Not Ranked
    • Joined on Mon, Jul 30 2012
    • Posts 8
    • Points 85
    Re: vr_ad reset check Reply

    Hi Stephan, I am writing sequences for vr_ad, I found predefined sequences such as reset check and random read and write. However unable to find writing FFFFFFFF & 00000000 to all registers in def file like walking pattern or bit bash etc.

    Can you please guide me how to write this, as I try to declare one more filed in random read write sequences as FFFFFFFFF data, but it,s not working.

    Please post me this sequence so that can move forward

    I am doing something like this

    for each (r) in reglist{

    do op keeping {

    .static_item=r;

    .direction == write;

    };

    in the above code , have no idea how to add data field as 0xFFFFFFFFFF and 0X0000000000; 

    Thanks 

    Filed under:
    • Post Points: 5
Page 1 of 1 (4 items)
Sort Posts:
Started by Ravisinha at 04 Jan 2011 01:51 AM. Topic has 3 replies.