- + Issue 939: (9,30) Annex E.3 - Disciplines of analog primitives: How to set and defaults.

[Jon Sanders, 1/22/2001]



  (9,30) Annex E.3 - Disciplines of analog primitives: How to set and defaults.
  
   
   Analog primitives cannot via the language get a discipline defined so we need to specify a default value and a method for
   setting the disciplines. 
     Recommendation: Lots of possibilities, part of discipline resolution method, use OOMR declarations,
     default_analog_discipline? (of course compiler directives suck in most of today's solutions) See more below.
   
  
  Section 3.8 and Annex E.3 - Compatible disciplines to analog primitives: Certain primitives are not
     limited to electrical domain.
  
   
   Primitives like sources, resistors, capacitors, ... can often be used in mechanical and other domains but if they are
   electrical then they will not be compatible.
   
     Recommendation: Analog primitives should default to domain continuous (neutral) and the discipline should resolve as
     follows: (THIS NEEDS MORE WORK!)
      
     i. The discipline of defined primitives and behavioral blocks connected to each port
     - If incompatible disciplines exists then error
     ii. The global analog discipline
     iii. The default discipline
     The above assumes that the default discipline will be electrical for continuous domains and that there is a mechanism(s)
     for setting the global discipline and the discipline of specific ports.
     Disciplines of ports could be set via OOMR discipline declarations (mechanical top.I1.I2.R1.a) where a is the port name.