Re: [sv-ec] Program Block / Reactive Region Use Cases & Requirements

From: Clifford E. Cummings <cliffc_at_.....>
Date: Wed Dec 06 2006 - 12:03:37 PST
Hi, Rob -

I will take the first stab at discussing use cases and requirements 
and allow others to add their perspective.

First let me offer an editorial comment on programs and clocking 
blocks and programs. Due to the ambiguous descriptions in sections 15 
(clocking blocks) and 16 (programs) in the LRM, I believe you will 
find significant differences in current implementations of programs 
and clocking blocks. This is why we are having this rather urgent 
discussion to fix the ambiguities and to determine the perceived use 
models for programs and clocking blocks. I am not surprised that you 
having "challenges." You are not alone and I would be happy to 
compare usage notes with you off-line.

Use Models:
Largely based on Vera and the Vera interface (clocking block 
equivalent). Event scheduling is based on user experiences with Vera.

Program - execute testbench code in different event regions than RTL 
designs with the intent to eliminate DUT-testbench race conditions 
(this was the goal and I think we are close). Major implementers 
noted some of the troubles they had experienced integrating 
third-party HVLs (such as Vera and 'e') with Verilog simulations 
through the PLI.

PLI - make the need to use PLI in a testbench obsolete or near-obsolete.

Interaction with other languages was not well considered. Steve Sharp 
is off exploring those issues as related to event scheduling.

Did you see my PDF slides showing Verilog-2001 testbench strategies 
versus SystemVerilog strategies? The slides were used in our 
face-to-face meeting on November 6th.

Editorial Comment: I believe many of the examples in the clocking and 
program sections are much too terse to be instructive and I have 
requested permission to add more detailed examples to show correct 
usage and how interaction really takes place.

What we are seeking from you are your use examples and why they are 
causing you grief. If you mention that the implementations do not 
track, that is already known and will not be very useful. If you tell 
us how you tried to use the constructs and what you expected when you 
executed your examples, that will be immensely valuable, as it will 
show the ideas and misconceptions surrounding these new features and 
will give us a clue on how to improve the features or their descriptions.

Regards - Cliff

At 05:14 AM 12/6/2006, Slater Rob-R53680 wrote:
>Hi,
>
>Sorry for the step backwards, but in light of the challenges program
>blocks are presenting us, I went looking for the Use Cases &
>Requirements that drove this particular design decision.
>
>Could someone point me to where they are documented?
>
>Thanks,
>
>Rob Slater
>Freescale Semiconductor

----------------------------------------------------
Cliff Cummings - Sunburst Design, Inc.
14314 SW Allen Blvd., PMB 501, Beaverton, OR 97005
Phone: 503-641-8446 / FAX: 503-641-8486
cliffc@sunburst-design.com / www.sunburst-design.com
Expert Verilog, SystemVerilog, Synthesis and Verification Training
Received on Wed Dec 6 12:03:40 2006

This archive was generated by hypermail 2.1.8 : Wed Dec 06 2006 - 12:04:07 PST