All, In the LRM 2.2 Annex E.3.3.1 the discipline of analog primitives can be resolved by means of the port_discipline arttibute. An example of this port discipline attribute is given. It is: resistor #(.r(1k)) (* integer port_discipline="electrical" ; *) r1 (node1, node2); // not needed as default resistor #(.r(1k)) (* integer port_discipline="rotational" ; *) r2 (node1, node2); The integer type in these attribute instances is wrong anyway, so this has to be changed. Additionally, according to the syntax in Annex A of IEEE 1364-2005 as well as the syntax proposal for LRM 2.3, this is not the correct place for an attribute instance. Instead, the attribute instance should be in front of each of the port connections. This would change the example to: resistor #(.r(1k)) r1 ((* port_discipline="electrical" ; *) node1, (* port_discipline="electrical" ; *) node2); // not needed as default resistor #(.r(1k)) r2 ((* port_discipline="rotational" ; *) node1, (* port_discipline="rotational" ; *) node2); This makes sense as the port_discipline should be related to the port, not to the module instance. This allows also for multi discipline ports. As an example, the self-heating version of the Mextram BJT model has 4 electrical ports and one thermal port. With the LRM 2.2 it would not be possible to correctly set the port disciplines for this built-in model, while the 1364-2005 compliant syntax would allow this. Should we update the syntax to allow attribute instances in the location suggested by LRM 2.2, or should we change the example in E.3.3.1 to reflect the syntax of 1364-2005? I'm in favor of the latter, but I don't know if there are backwards compatibility issues by explicitly making the example E.3.3.1 erroneous. Cheers, Marq -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Tue Sep 4 04:24:06 2007
This archive was generated by hypermail 2.1.8 : Tue Sep 04 2007 - 04:24:20 PDT