Number | 165
|
Category | errata
|
Synopsis | 3.11.1, A.2.1.1: reuse task_port_type
|
State | lrmdraft
|
Class | errata-simple
|
Arrival-Date | Oct 15 2002
|
Originator | "Brad Pierce" <Brad.Pierce@synopsys.com>
|
Release | 2001b: 3.11.1, A.2.1.1, 10.2.1, A.2.7
|
Environment |
|
Description |
Because the types (integer, real, realtime, time) of parameters and localparams are the same as those of function/task ports, the BNF of 13.11.1 (A.2.1.1) could be simplified, replacing | localparam integer list_of_param_assignments ; | localparam real list_of_param_assignments ; | localparam realtime list_of_param_assignments ; | localparam time list_of_param_assignments ; with | localparam task_port_type list_of_param_assignments ; and replacing | parameter integer list_of_param_assignments | parameter real list_of_param_assignments | parameter realtime list_of_param_assignments | parameter time list_of_param_assignments with | parameter task_port_type list_of_param_assignments Additionally, should task_port_type be moved to A.2.2.1? I don't see much difference in kind between it and output_variable_type. -- Brad |
Fix |
1. In 3.11.1 (Syntax 3-4) and in A.2.1.1 REPLACE local_parameter_declaration ::= localparam [ signed ] [ range ] list_of_param_assignments | localparam integer list_of_param_assignments | localparam real list_of_param_assignments | localparam realtime list_of_param_assignments | localparam time list_of_param_assignments parameter_declaration ::= parameter [ signed ] [ range ] list_of_param_assignments | parameter integer list_of_param_assignments | parameter real list_of_param_assignments | parameter realtime list_of_param_assignments | parameter time list_of_param_assignments (Note: #114 deleted ";" at end of these lines.) WITH local_parameter_declaration ::= localparam [ signed ] [ range ] list_of_param_assignments | localparam parameter_type list_of_param_assignments parameter_declaration ::= parameter [ signed ] [ range ] list_of_param_assignments | parameter parameter_type list_of_param_assignments parameter_type ::= integer | real | realtime | time 2. In 10.2.1 (Syntax 10-1) and A.2.7, CHANGE task_port_type ::= time | real | realtime | integer TO task_port_type ::= integer | real | realtime | time (This simply changes order to alphabetical.) (I had considered changing the names of real_type and variable_type, but I did not find a good replacement, so I did not change them.) |
Audit-Trail |
From: Shalom Bresticker <Shalom.Bresticker@motorola.com> To: Brad Pierce <Brad.Pierce@synopsys.com> Cc: etf-bugs@boyd.com Subject: Re: errata/165: 13.11.1, A.2.1.1 -- reuse task_port_type Date: Wed, 16 Oct 2002 12:51:36 +0200 >Category: errata >Confidential: no >Originator: Shalom Bresticker <Shalom.Bresticker@motorola.com> >Release: 2001b >Class: TBD >Description: --------------90080D02C5E17A3A88D6142E Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Brad, > Because the types (integer, real, realtime, time) of parameters > and localparams are the same as those of function/task ports, > the BNF of 13.11.1 (A.2.1.1) could be simplified, replacing > > | localparam integer list_of_param_assignments ; > | localparam real list_of_param_assignments ; > | localparam realtime list_of_param_assignments ; > | localparam time list_of_param_assignments ; > > with > > | localparam task_port_type list_of_param_assignments ; Technically, you are correct, but using the name "task_port_type" would be confusing here, so I would suggest defining parameter_type ::= time | real | realtime | integer and | localparam parameter_type list_of_param_assignments ; > Additionally, should task_port_type be moved to A.2.2.1? > I don't see much difference in kind between it and > output_variable_type. Again, technically, you are correct, but task_port_type is local to A.2.7, so I would not take it out of there. But I would bring up a different, but related issue. A.2.2.1 defines net_type, output_variable_type, real_type, and variable_type. net_type and output_variable_type really are choices of one of a set of legal type terminals, but the other two are non-terminals of a different kind, identifiers with an optional addition. This is using the xxx_type for two different kinds of non_terminals. It would be nice to achieve better consistency. This could also solve Brad's problem. Any suggestions? -- Shalom Bresticker Shalom.Bresticker@motorola.com Design & Reuse Methodology Tel: +972 9 9522268 Motorola Semiconductor Israel, Ltd. Fax: +972 9 9522890 POB 2208, Herzlia 46120, ISRAEL Cell: +972 50 441478 "The devil is in the details." --------------90080D02C5E17A3A88D6142E Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> Brad, <blockquote TYPE=CITE>Because the types (integer, real, realtime, time) of parameters and localparams are the same as those of function/task ports, the BNF of 13.11.1 (A.2.1.1) could be simplified, replacing | localparam integer list_of_param_assignments ;
with
| localparam task_port_type list_of_param_assignments ;
parameter_type ::= time | real | realtime
and
| localparam parameter_type list_of_param_assignments ;
But I would bring up a different, but related issue.
A.2.2.1 defines net_type, output_variable_type, real_type, and variable_type.
net_type and output_variable_type really are choices of one of a set
This is using the xxx_type for two different kinds of non_terminals.
-- Shalom Bresticker Shalom.Bresticker@motorola.com Design & Reuse Methodology Tel: +972 9 9522268 Motorola Semiconductor Israel, Ltd. Fax: +972 9 9522890 POB 2208, Herzlia 46120, ISRAEL Cell: +972 50 441478 "The devil is in the details." --------------90080D02C5E17A3A88D6142E-- Fix replaced by Shalom.Bresticker@motorola.com on Thu Nov 13 08:18:18 2003 1. In 3.11.1 (Syntax 3-4) and in A.2.1.1 REPLACE local_parameter_declaration ::= localparam [ signed ] [ range ] list_of_param_assignments | localparam integer list_of_param_assignments | localparam real list_of_param_assignments | localparam realtime list_of_param_assignments | localparam time list_of_param_assignments parameter_declaration ::= parameter [ signed ] [ range ] list_of_param_assignments | parameter integer list_of_param_assignments | parameter real list_of_param_assignments | parameter realtime list_of_param_assignments | parameter time list_of_param_assignments (Note: #114 deleted ";" at end of these lines.) WITH local_parameter_declaration ::= localparam [ signed ] [ range ] list_of_param_assignments | localparam parameter_type list_of_param_assignments parameter_declaration ::= parameter [ signed ] [ range ] list_of_param_assignments | parameter parameter_type list_of_param_assignments parameter_type ::= integer | real | realtime | time 2. In 10.2.1 (Syntax 10-1) and A.2.7, CHANGE task_port_type ::= time | real | realtime | integer TO task_port_type ::= integer | real | realtime | time (This simply changes order to alphabetical.) (I had considered changing the names of real_type and variable_type, but I did not find a good replacement, so I did not change them.) |
Unformatted |
|
Hosted by Boyd Technology