Re: Verilog-AMS/2005 syntax and keywords

From: Sri Chandra <srikanth.chandrasekaran_at_.....>
Date: Thu Sep 29 2005 - 23:57:38 PDT
Hi Graham,

Just with reference to your queries below.


>I don't like the way the syntax for compiler directives and system tasks/functions is done now. It is either generically or not defined in the syntax section, while in the body of the document specific syntax is used in its definition. Often this specific syntax is inconsistent between features, even in the 2005 document. I much prefer a complete syntax in the syntax section, and in the body of the document references unmodified segments of that syntax. 
>
>Yes, there is a lot of system tasks/functions to be defined in the syntax. Previously, I have worked on a draft version of AMS/2001 syntax section with system task/function syntax, but it was never released. I estimate defining the system task/function syntax will add 9 to 10 pages to the syntax section.
>
>I have added the compiler directive syntax to the syntax section and I have uploaded it to the Mantis database. Below is some notes and questions about the compiler directive changes:
>
>1) Should the syntax for the 2005 compiler directives defined in annex D be also included in the syntax section?
>  
>

I would suggest to define the compiler directives in Annex D and not 
include it in the syntax section, otherwise we need to make sure they 
both are correct etc.

>2) In 2005, to be consistent with other keyword pairs should "`begin_keywords" and "`end_keywords" be replaced with "`keywords" and "`endkeywords"?
>  
>
Wonder what it is in P1800. I would guess it would be similar to 1364. 
In that case probably we should be consistent with the digital standard. 
With this version of the language we want to eliminate any of the 
inconsistencies between the standards.
Talking on this subject, we also need to resolve the "logic" discipline 
issue which is in conflict with SV and also the parameter array syntax 
difference with SV.

>3) '\n' has been added to end of the syntax for each directive.
>4) The `timescale directive syntax (and other directives) in the body of the 2005 document is using syntax items without defining them.  
>  
>
I guess if we are going to expand all the system tasks and functions and 
make the BNF complete in that respect i would suggest that the 
`timescale directive should be completely defined in Annex D.

>5) Syntax for multi-line text macro definitions is not define in 2005. I have added syntax to allow multiple line macros.
>
>  
>
>>Also, while talking about system things, should the $ be part 
>>of the system_parameter_identifier, as it is part of the 
>>system_{task,function}_identifier?
>>    
>>
>
>Yes, moving the $ within the system_parameter_identifier make it consistent with the system_XXXX_identifier syntax. I have update the system_parameter_identifier syntax item to be:
>
>	system_parameter_identifier ::= $ [ a-zA-Z0-9_$ ] { [ a-zA-Z0-9_$ ] }
>  
>
Yeah, i think moving the $sign as part of the identifier seems to be the 
correct way to go.

cheers,
Sri

>Regards
>Graham
>
>  
>

-- 
Srikanth Chandrasekaran
Design Technology (Adelaide)
Freescale Semiconductor
Ph: +61-(0)8-8168 3592 Fax: x3201
Received on Thu Sep 29 23:57:43 2005

This archive was generated by hypermail 2.1.8 : Thu Sep 29 2005 - 23:57:52 PDT