The ModLyng Event Driven Mixed-Signal (EDMS) Toolkit is a collection of libraries with building blocks that support the creation of models of analog devices using event-driven (digital) techniques. Models created using the EDMS toolkit simulate orders of magnitude faster than analog models of the same device. This lets engineers shorten the verification cycle or get much better verification coverage in the same amount of time. The result is reduced cost and/or improved quality of the design.
As SoC designs are getting faster and more complex, the chips used in the designs include more and more analog circuitry. As a result, the complexity and the cost of the verification task have increased substantially. In the traditional approach, designers must create analog or mixed-signal (AMS) models of the analog circuitry, a task with which they are not familiar, and the time for a single simulation run is considerably longer than that for a pure digital circuit because the simulation time is dominated by the analog solver of the mixed-signal simulator. This means that either more time must be budgeted for verification with the corresponding increase in cost, or fewer verification runs can be conducted, which translates to less confidence in the quality of the design and may yield undiscovered failure modes.
Enter Event Driven Analog. In this methodology the simulation models for the analog circuitry are implemented using event driven concepts which a behavior that approximates that of the AMS model. This may make it possible to simulate the design in its entirety in a digital simulator, which results in simulation speed improvements by orders of magnitude. The EDMS methodology has been around for more than 20 years, but it was used infrequently because creating the EDMS model was often more involved than creating an AMS model.
The purpose of the EDMS toolkit is to support the designer in the creation of EDMS models, i.e. event driven models for analog devices. It consists of a collection of libraries of building blocks, each implementing some basic functionality of an analog block with well-defined inputs and outputs. For example, the output of an adder is the sum of its inputs, and the output is recomputed each time when one of the inputs change. The resulting piecewise constant approximation of the true analog waveform can be controlled by parameters to be as close to the analog waveform as required.
When creating an EDMS model of an analog device, the user connects building blocks that each represent a specific function to form the topology of the model. Each of the building blocks has real ports that typically represent a voltage in the corresponding AMS model. It may have parameters to further control its behavior. The EDMS model can be exported to either VHDL or Verilog-AMS and simulated in a simulator that supports these languages.