New enable argument to analog events and NULL

From: David Miller <David.L.Miller_at_.....>
Date: Wed Apr 02 2008 - 12:54:27 PDT
The syntax needs to be updated to allow for the new 'enable' argument to 
cross/above/timer.


analog_event_functions ::= // from A.6.5
cross ( analog_expression [ , analog_expression
[ , constant_expression [ , constant_expression [ , analog_expression ] ] ] ] )


We are going to allow the user to use NULL arguments for the options they want 
to leave as default.
So:
cross(V(a) - 5, , , ,enable) ....

Here detect crossings in both +ve and -ve direction using simulator default 
expressio and time tolerances.

But the NULL arg is not handled in the analog_expression or constant_expression 
type.
Instead of adding extra [] to the syntax would be better to create a new token:

analog_expression_or_null ::=
     analog_expression
   | null

constant_expression_or_null ::=
     analog_expression
   | null

Cross then becomes:

cross ( analog_expression [ , analog_expression_or_null
[ , constant_expression_or_null [ , constant_expression_or_null [ , 
analog_expression ] ] ] ] )

Not quite sure what the convention is in BNF to specify NULL (nill or prehaps "").

Dave


-- 
=====================================
-- David Miller
-- Design Technology (Austin)
-- Freescale Semiconductor
-- Ph : 512 996-7377 Fax: x7755
=====================================

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Apr 2 12:55:08 2008

This archive was generated by hypermail 2.1.8 : Wed Apr 02 2008 - 12:55:23 PDT