Parameter redef's 
Author Message
 Parameter redef's

> Here's a manual way of doing timing hazards: ( untested )

> parameter delay = 10;

> always
>   fork : hazard
>     begin
>       setup_hazard = 1;
>       #delay;
>       setup_hazard = 0;
>     end
>     begin

>       disable hazard;
>     end
>   join

> always
>   begin

>     if (setup_hazard == 1) $display("setup violation in %m");
>   end

I believe a more efficient (and readable) method of an equivalent
check would be:

parameter setup_constraint = 10;

    /* optional hold time check */

    if ($time - DATA_LAST_EVENT_TIME < setup_constraint)

(Note: the setup_constraint could also be defined as a "time" or "real"
 variable type if the user wishes to change its value mid-simulation)

It seems to me that this method does more of what the user intends.
i.e. when a rising edge clk event occurs, check if the last event
on DATA occurred less than setup time units ago, and if so report
the violation.

Unfortunately, both methods contain one minor flaw if a hold-time
constraint is also declared.  That is, if events on data and clk
both occur in the same time unit, it is ambiguous as to whether
a setup, hold, both, or neither violation will be reported.  This
ambiguity can be reduced by more complex methods which attempt to
order the timing checks within the time unit such that setup
constraints are checked at the beginning, and hold constraints
checked at the end.  (this causes a hold constraint violation only.)



Graduate Student Research Assistant
Advanced Computer Architecture Lab
157 ATL Building
1101 Beal Ave.
The University of Michigan
Ann Arbor, MI  48109-2110

ph. (313) 764-2138

Fri, 10 Jan 1997 13:13:29 GMT  
 [ 1 post ] 

 Relevant Pages 

1. Parameter 'handshake source' in DIO Start

2. Access to T'Class vs T'Class as parameter to subprogram

3. Ada to 'C' parameter passing problem

4. arrays as 'out' parameters


6. 'dim' parameter in my own subroutines

7. Command line parameters (Or is it called 'System Parameters'??)??

8. Stored procedures with date parameters don't work

9. Problem of passing string parameter in DLL's function from a C application

10. look for tool to the recognition of the parameters of dll's

11. Parameters for DLL's

12. Data Hiding - A Procedure's First Parameter


Powered by phpBB® Forum Software