Advertisement

Blog

Is It Real or Is It Analog?

Digital modeling has three huge advantages that enable designs to be simulated orders of magnitude faster than with analog modeling. These advantages also help with modeling, synthesis, and everything else that makes automation possible in the digital world.

  • Discrete voltage
  • Discrete time
  • lack of feedback

The last one is very important, because it enables discrete time. If you assume that everything takes time to affect something else, then you do not have to solve simultaneous equations, which are the major inhibitor to simulation performance for analog.

What happens if you can remove this from analog, as well? Of course, every analog designer is hugely offended by that statement and will quickly point out that no analog component can be modeled without considering feedback. But if we move up in abstraction and consider the end-to-end operation of many analog components, feedback can be essentially eliminated. Most systems employ local feedback but not global feedback.

This is the premise behind real number modeling (RNM), sometimes called real value modeling. Voltages or currents are represented as a time-varying sequence of real numbers. The equations and the slow solvers needed for them are gone. Instead, functions are defined such that the outputs are directly computed from the inputs (usually voltages) and state information retained in the block, ignoring currents, feedback, and impedance effects in general.

If this can be held true, then almost all the advantages of digital simulation can be attained. Note an important exception — floating point arithmetic is a little more expensive than using integers, which in digital can often hold 32 or 64 bits of logical information.

EDA vendors have been putting a lot of time and effort into this modeling style. RNM extensions are now available in VHDL and Verilog-AMS, and support is going into SystemVerilog. However, issues remain, because many functions that you may wish to use are not built in yet. Some examples include integration, differentiation, slewing, and filtering. This means that companies wanting to use RNM should probably build up their own library of functions for designers to use.

Consider the integration function. The output can be computed based on the previous values and the current input using a trapezoidal integration formula:

Out = Out(t-1) + (T-T(t-1) ) (In + In(t-1) )/2

This will work fine so long as the time interval is kept small. It has a square relationship between the time interval and the accuracy. If you cut the the time period in half, the accuracy will increase by a factor of four.

Bringing analog functionality into the discrete world brings many advantages, as well. For example, analog functions can be used in assertions and full system verification using constrained random test pattern generation. They can be made self-checking. It all seems to be so good, except…

I would be interested to hear from people who have attempted to use RNM and their experiences with it. The EDA vendors seem to have a lot to say about it, but I do not hear much buzz from the industry. Is RNM useful as a behavioral modeling methodology, or is it just giving up too much of what makes analog so special?

Related posts:

6 comments on “Is It Real or Is It Analog?

  1. eafpres
    August 12, 2013

    Hi Brian–I'm aware of the approximation to which you refer in the trapezoidal integration scheme.  I just want to be sure I'm understanding what you are describing.  Am I correct that T is a transfer function that converts input to output?  And you are saying that they implement some kind of semi-continouus lookup from a table?

     

  2. BrianBailey
    August 12, 2013

    @eafpres – T is time, so it is basically half the area of the change in input multiuplied by the change in time. Most times when the equation is written it assumes a constant time interval, but that may not be the case with mixed signal simulation so the time increment has to be an explicit term.

  3. TonySal
    August 14, 2013

    I used RNM to model the analog blocks in a PHY, including PLL, VGA, equalizer, input slicing and sampling. These models allowed our team to simulate and optimize the RTL code for the VGA and equalizer control loops. We also created a RNM for the signal channel (cat-5 UTP) which included frequency dependent attenuation and AC coupling effects (baseline wander). There was a huge benefit in being able to simulate 100's of kbits through the entire system so we could verify the high level control functions of the link. The key is to verify the functionality of the RNMs against the transistor level design, so the RNMs may be confidently used for the higher system level simulations.

  4. BrianBailey
    August 14, 2013

    @TonySal – Thanks for sharing. Did the transistor level model come first and the RNM developed after, or were they developed at the same time?

  5. TonySal
    August 14, 2013

    We first created a very basic RNM. Then we modified it as the transistor circuit was developed. We eventually created verilogAMS models as well (with a limited number of “analog” nets). But from a simulation speed point of view the verilogAMS models were at least an order of magnitude slower than the digital verilog RNM.

  6. SunitaT
    August 20, 2013

    Real number modeling tries to take the greatest from both worlds. It usages the floating point numbers aware in the analogue domain, and blends this with discrete time values. This approach proposes a level of performance approaching that of a digital simulation, but much speeder than the speed of a purely analogue simulation.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.