Home > Community > Blogs > Functional Verification > using wreals to simulate frequency scaling for dynamic power reduction
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the Functional Verification blog (individual posts).


* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

Using wreals to Simulate Frequency Scaling for Dynamic Power Reduction

Comments(0)Filed under: Functional Verification, Low Power, signal integrity, verification, Real Value Modeling, wreals, advanced node, Mixed-Signal

Some background info:
Taking a quick look at Power dissipation in CMOS:




Leakage power is well managed by powering down parts of the design when not in use. This is a well understood problem and can be simulated well in IUS (Incisive Unified Simulator) using CPF (Common Power Format) commands to capture power intent. For details refer to “A practical Guide to Low Power Design” – download a copy at http://www.powerforward.org/

The Problem:
So, how to deal with parts of the design that can not be powered down during the operation of the chip? Some examples are – processor cores, and other dedicated applications that have variable computing needs, but do remain to be always on.

A practical solution:
One of the primary techniques used in the industry is DVFS – Dynamic Voltage and Frequency Scaling which consists primarily of:

  • Reducing the frequency & voltage of a design
  • Done in real-time
  • Based on processing needs to run at lowest possible frequency and voltage that will support the application needs

DVFS is used for both:

  • Power-saving during off peak processing times, and
  • As a protective measure to avoid over heating

In this blog, I will primarily focus on Frequency scaling and how to effectively simulate that in the context of SoC level simulation. Later blogs will focus on Voltage Scaling.

Some more background info:
In order to simulate Analog elements in the SoC we need a way to simulate Analog behaviour at digital speeds so that system-level simulations containing both analog and digital components can be performed. Cadence has introduced a digital centric mixed signal verification environment – Digital Mixed Signal (DMS). This new verification environment targets customers using digital centric use models. It refers to – but is not limited to – mixed signal verification using digital simulators only. In other words, it delivers capabilities to verify the mixed signal design using digital centric methodologies. This is effectively done by using Real Valued Modeling (RVM) where speed is traded off for very high level of accuracy typically involved with simulation of analog elements.

RVM is a mixed approach, borrowing concepts from analog and digital simulation domain. The values are continuous, floating-point (real) numbers, as in the analog world. However, time is discrete, implying that the real signals change values based on discrete events. In this approach, we apply the signal flow concept so that the digital engine can solve the RVM system without support of the analog solver. This guarantees a high simulation performance in the range of a normal digital simulation and orders of magnitudes higher than the analog simulation speed.

There are four different language standards that support RVM, namely:

  • wreal ports in Verilog-AMS
  • real in VHDL
  • real variables in SystemVerilog
  • real types in e

It is important to note that the real-wire (wreal) is defined only in the Verilog-AMS LRM. Thus, a wreal can be used only in a Verilog-AMS block. However, it is only the digital kernel that solves the wreal system. There are no performance drawbacks when using these types of Verilog-AMS modules in a digital simulation context.

Wreal example:
Here’s an example of using wreals for creating a VCO model that is used to control clock speed and can be effectively used for dynamically scaling of frequency to verify dynamic power management.




In this example, two VCOs are instantiated to independently generate clocks for the DSP and MCU blocks in the design. Depending on processing needs, the clock speed is independently controlled from an on-chip controller – see waveforms..

vco vco_mcu (.vin(vco_vin_mcu_clk), .clk(mcu_clk));
vco vco_dsp (.vin(vco_vin_dsp_clk), .clk(dsp_clk));

The control logic on the chip runs the design units DSP & MCU in this case, at the slowest possible speed in order to conserve dynamic power. Details of the control mechanism are left out and can form the basis of another blog.

The effects of dynamic frequency scaling on system performance and throughput can be effectively measured and verified using this simple approach.




Stay tuned for more...
Neyaz Khan


Leave a Comment

E-mail (will not be published)
 I have read and agree to the Terms of use and Community Guidelines.
Community Guidelines
The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.