An aspect of AMS which extends to mixed-signal in general is that a signal (representing the state of a wire in the actual hardware) can be viewed in multiple ways, i.e. it is at the same time digital (1/0) and has voltage (1.5/0.0V) different instances see the same object in different ways. The abstraction used is that all interaction with a signal from (a process in) an instance is through /drivers /and /receivers /- the latter object does not appear in other HDL definitions. A signal /driver /in an analog process is usually called a /contribution /(e.g. some amount of current). To make the mixed signal simulation work a resolution function is applied to all the drivers/contributions such that it can be resolved in the domain of highest accuracy (analog) and then is down converted (if necessary) to the domains of each receiver - i.e. for AMS you wrap the digital drivers in D->A converters and the digital receivers are implemented as A->D converters. Key features of the approach are: Interconnect is actually type neutral, the type is associated with the drivers and receivers Resolution is flat (port boundaries/hierarchy should be ignored) Drivers and receivers also have a /discipline /which indicates which their physical nature (electrical, magnetic, fluid etc.), drivers and receivers of different disciplines cannot be mixed. Disciplines themselves are constructed from a pair of /natures/ representing potential and flow e.g. voltage/current. For general cross-language simulation to work properly it is desirable that a similar approach is taken when communicating signal values, i.e. signal values need to be exchanged as separate driver/receiver values rather than as a locally resolved value. Kev. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Mar 7 16:05:38 2007
This archive was generated by hypermail 2.1.8 : Wed Mar 07 2007 - 16:05:39 PST