0% found this document useful (0 votes)
2K views

Calculating The Toggle Rate in The Averaged-Power Analysis Mode Using The PrimeTime PX and Power Compiler Tools

1) In a vector-free flow, the default toggle rate is calculated as the default toggle rate divided by the related clock period. 2) When switching activity is annotated using set_switching_activity, the toggle rate is the specified toggle rate divided by the period of the specified reference, whether it be a clock period, base clock period, or clock domain period. 3) In a SAIF-based flow, the toggle rate is the toggle count in the SAIF file divided by the simulation duration specified in the SAIF file header.

Uploaded by

manojkumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views

Calculating The Toggle Rate in The Averaged-Power Analysis Mode Using The PrimeTime PX and Power Compiler Tools

1) In a vector-free flow, the default toggle rate is calculated as the default toggle rate divided by the related clock period. 2) When switching activity is annotated using set_switching_activity, the toggle rate is the specified toggle rate divided by the period of the specified reference, whether it be a clock period, base clock period, or clock domain period. 3) In a SAIF-based flow, the toggle rate is the toggle count in the SAIF file divided by the simulation duration specified in the SAIF file header.

Uploaded by

manojkumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

8/3/2020 Calculating the Toggle Rate in the Averaged-Power Analysis Mode Using the PrimeTime PX and Power Compiler

me PX and Power Compiler Tools

Search Synopsys Sol... Search


(/s/) Cases (/s/case-list) STARs (/s/star-list) Knowledge Base (/s/knowledge) Legacy Docs Search (/s/legacy-docs-search) Feedback (/s/help)

Home > Power Compiler (80014981)

Dec 12, 2019 • Knowledge

Title
Calculating the Toggle Rate in the Averaged-Power Analysis Mode Using the PrimeTime PX and Power Compiler Tools

Description
Question:

In the averaged power analysis mode, how is the toggle rate computed in the following flows using the PrimeTime PX and Power Compiler tools?

Vector free flow


Annotation using the  set_switching_activity command
SAIF-based flow

Answer:

The toggle rate is defined as the number of toggles per unit time. The following sections describe how the toggle rate is calculated in various flows.

1. Calculating the Toggle Rate in a Vector-Free Flow

In the vector-free flow, default switching activity is applied on the primary inputs and black-box outputs. The default activity is computed using the following equation:

Toggle rate (Tr) = (default doggle rate / related clock period)

Where, the default toggle rate is determined using the values of the following variables:

The  power_default_toggle_rate variable. The default is 0.1.


The Power Compiler  power_default_toggle_rate_type fastest | absolute variable. The default is fastest.
The Primetime PX  power_default_toggle_rate_reference_clock related | fastest variable. The default is related.

If a related clock is not identified for an input port, both tools by default use the fastest design clock.

For more information, see the SolvNet article, "Using the Default Switching Activity in PrimeTime PX and Power Compiler Tools (https://solvnet.synopsys.com/retrieve/020479.html)".

2. Annotation Using the set_switching_activity Command

Use the  set_switching_activity command to specify the static probability and toggle rate. The default static probability is 0.5 in both tools. Use the following options of
the set_switching_activity command to specify the reference time for the toggle rate:

-period
-base_clock
-clock_domain

Regardless of the reference time specified using the command, the tool converts and reports all toggle rates in toggles per library unit time.

Period

When you specify the -period option, the toggle rate is the value specified using the  -toggle_rate option divided by the value specified using the  -period option.

The following command example indicates that the netA toggles 0.2 times every 20ns:

pt_shell> set_switching_activity -toggle_rate 0.2 -period 20 netA

This results in a toggle rate = 0.2/20 = .01. This value is returned when you specify the  get_switching_activity command in the PrimeTime PX tool, or query the 
switching_activity attribute in the Power Compiler tool, as shown in the following example:

pt_shell> get_switching_activity -toggle_rate [get_nets netA]{"netA" 0.01 set_switching_activity}

Base_clock

When you specify the  -base_clock option, the toggle rate is the value specified using the  -toggle_rate option divided by the period of the specified base clock.

The following example annotates netA so that it toggles 0.2 times within the period of a clock, which is specified as 20ns.

pt_shell> create_clock -period 20 -name clk

pt_shell> set_switching_activity -toggle_rate 0.2 -base_clock clk netA

The resulting toggle rate = 0.2/20 = 0.01. This is the value returned when you run the  get_switching_activity command, as shown in the following example.

pt_shell> get_switching_activity -toggle_rate [get_nets netA]{"netA" 0.01 set_switching_activity}

Clock_domain

When you specify the  -clock_domain option, toggle rate is the value specified using the -toggle_rate option divided by the period of the related clock.

The following example indicates that the netA toggles 0.2 times in the period of the related clock:

pt_shell> create_clock -period 20 -name clk

pt_shell> set_switching_activity -toggle_rate 0.2 -clock_domain clk netA

The toggle rate = 0.2/20 = 0.01. This is the value returned when you run the  get_switching_activity command. If the related clock is not  clk for netA, the tool does not annotate
the switching activity. The  -clock_domain option filters only those nets where the related clock is specified using the  -clock_domain option.

https://solvnetplus.synopsys.com/s/article/Calculating-the-Toggle-Rate-in-the-Averaged-Power-Analysis-Mode-Using-the-PrimeTime-PX-and-Pow… 1/3
8/3/2020 Calculating the Toggle Rate in the Averaged-Power Analysis Mode Using the PrimeTime PX and Power Compiler Tools
pt_shell> get_switching_activity -toggle_rate [ get_nets netA]{"netA" 0.01 set_switching_activity}

Use the Power Compiler  set_switching_activity_profile command to specify activity profiles on bussed ports. For example, in signal processing applications, which often have
non-uniform profiles and not all the bits inside a bus have the same activity. 

No Reference

If you do not use the –period, -base_clock, or the  -clock_domain options, the tool uses the default library time unit, usually 1ns.

3) SAIF-Based Flow

In the SAIF-based flow, the toggle rate is also used as the toggle count for pins or ports in the SAIF file, divided by the simulation duration specified in the SAIF file. Use the TIMESCALE
and DURATION values in the header of the SAIF file to divide the toggle rate.

The following example is a code snippet of the header of a SAIF file, where the duration is 200 ns.

(SAIFILE
(SAIFVERSION "2.0")
(DIRECTION "backward")
(DESIGN)
(DATE "Tue May 29 13:13:38 2014")
(VENDOR "Synopsys, Inc")
(PROGRAM_NAME "VCS-Scirocco-MX Power Compiler")
(VERSION "1.0")
(DIVIDER / )
(TIMESCALE 1 ns)
(DURATION 200.00)

(INSTANCE design
   (NET
     (netA
       (T0 100) (T1 100) (TX 0)
       (TC 20) (IG 0)
   

The net netA toggles 20 times in 200ns, which results in a toggle rate of 20/200 = 0.1.

pt_shell> get_switching_activity -toggle_rate [ get_nets netA]{"netA" 0.1 set_switching_activity}

Workaround

Product L1
PrimePower (/s/detail/01t1U000003IXxdQAG)

Additional Product(s)
Power Compiler (80014981)

Article Number
000011021

Last Published Date


12/12/2019, 1:56 AM

Article Record Type


How To

URL Name
Calculating-the-Toggle-Rate-in-the-Averaged-Power-Analysis-Mode-Using-the-PrimeTime-PX-and-Power-Compiler-Tools-1576091198977

Was this article helpful? 0 0

Related Articles

Why is the Toggle Rate of a Pin Not the Default Toggle Rate? (/s/article/Why-is-the-Toggle-Rate-of-a-Pin-Not-the-Default-Toggle-Rate-1576092645960) 811

Annotating Toggle Rates on Objects Using Different Options of the set_switching_activity Command (/s/article/Annotating-Toggle-Rates-on-Objects-Using-Different-Options-o
1.29K
f-the-set-switching-activity-Command-1576091485275)

Using the -state_condition Option With the set_switching_activity Command (/s/article/Using-the-state-condition-Option-With-the-set-switching-activity-Command-157609266


447
3767)

The toggle rates reported by get_switching_activity and report_power_calculation seem different (/s/article/The-toggle-rates-reported-by-get-switching-activity-and-report-po
2.05K
wer-calculation-seem-different-1576091198484)

Using the Default Switching Activity in PrimeTime PX and Power Compiler Tools (/s/article/Using-the-Default-Switching-Activity-in-PrimeTime-PX-and-Power-Compiler-Tools-1
991
576091178418)
https://solvnetplus.synopsys.com/s/article/Calculating-the-Toggle-Rate-in-the-Averaged-Power-Analysis-Mode-Using-the-PrimeTime-PX-and-Pow… 2/3
8/3/2020 Calculating the Toggle Rate in the Averaged-Power Analysis Mode Using the PrimeTime PX and Power Compiler Tools
)

Related Files (0)

Article Comments (0) (/s/relatedlist/ka01U000001dlfmQAA/Article_Comments__r) New

Saved Articles (0) (/s/relatedlist/ka01U000001dlfmQAA/Saved_Articles__r) New

https://solvnetplus.synopsys.com/s/article/Calculating-the-Toggle-Rate-in-the-Averaged-Power-Analysis-Mode-Using-the-PrimeTime-PX-and-Pow… 3/3

You might also like