XPower for CoolRunner™-II CPLDs Overview • • • • • • • • • • Design power considerations Power consumption basics of CMOS devices Calculating power in CoolRunner-II CPLDs Assumptions for CoolRunner-II CPLDs in XPower CoolRunner-II power.

Download Report

Transcript XPower for CoolRunner™-II CPLDs Overview • • • • • • • • • • Design power considerations Power consumption basics of CMOS devices Calculating power in CoolRunner-II CPLDs Assumptions for CoolRunner-II CPLDs in XPower CoolRunner-II power.

XPower for
CoolRunner™-II
CPLDs
Overview
•
•
•
•
•
•
•
•
•
•
Design power considerations
Power consumption basics of CMOS devices
Calculating power in CoolRunner-II CPLDs
Assumptions for CoolRunner-II CPLDs in XPower
CoolRunner-II power model in XPower
Rank of power consuming nets in CoolRunner-II CPLDs
Activity rates
Data entry methods
Improving accuracy of CoolRunner-II power estimation
Design example
Quick Start Training
Objectives
•
•
•
•
•
•
•
•
•
Power consumption in CoolRunner-II CPLDs
Assumptions for CoolRunner-II CPLDs in XPower
Applying the CoolRunner-II power model to a design
The highest power consuming nets in CoolRunner-II
CPLDs
Types of activity rates
Types of Data Entry Methods
Improving accuracy of CoolRunner-II power estimation
Understanding a simple design example using XPower
XAPP360
Quick Start Training
Power Considerations
• Power Supply requirements
–
–
–
–
Batteries
DC/DC converters
AC power source
Power supply voltage
• Thermal requirements
– Package types
– Enclosed environments
– Industrial applications
• CoolRunner-II CPLDs
–
–
–
–
Low Power
Low Junction Temperature
Very predictable power consumption
Fast
• XAPP360
– http://www.xilinx.com/xapp/xapp360.pdf
Quick Start Training
Power in a CMOS Device
• Total Current is composed of two types of
current
– Static
– Dynamic
• Static Current
– Leakage current in the turned off transistor channel
– Ideally zero
– Fixed component of Total Current
• Dynamic Current
– Switching of the CMOS gate when in the linear region
causing transition (crowbar) current
• Transition time is very fast
• Relatively small component
– Charge/Discharge of capacitive poly gate in
subsequent logic element
– XPower combines transition current with capacitive
current in the power model
Quick Start Training
Calculating Power for
CoolRunner CPLDs
• Calculating Dynamic Current is an overwhelmingly tedious task
• XPower is necessary for this calculation
• Dynamic Current equation
I Dynamic = C  V  f
• Total Current equation
ITotal = I Dynamic  I Static
ITotal = C V  f  I Static
• Total Power equation
PTotal = ITotal V
Quick Start Training
XPower Assumptions for
CoolRunner-II CPLDs
• Voltage
– Within published operating limits
– Constant (no spikes or dips)
– User must enter appropriate value
• Timing and frequency
– Within published operating limits
– Operation above limits yields inaccurate power calculations
• Input transition times
– 1.5 ns
– Correlated in lab at 1.5 ns
– Actual transitions slower than 1.5 ns will:
• Increase actual power consumption
• Cause XPower data to appear lower than actual
• Lumped capacitance
– Logic elements (Product Terms, etc.)
– Used to create a power model
Quick Start Training
CoolRunner-II Power Model
• Simplified model of the CoolRunner-II architecture
• Somewhat encrypted net names
– FB1_PT12
• Product Term #12 in Function Block #1
– FB1_3_Q
• Q Flip Flop output of Macrocell #3 in Function Block #1
– FB4_12_I
• Input net of Macrocell #12 in Function Block #4
Quick Start Training
CoolRunner-II Power Model
• Nets adjustable by the user
–
–
–
–
–
–
I - Input from I/O
Q - Flip flop output
FB - Feedback to the AIM
PT - Product Term output
MC_CLK - Macrocell control inputs
OR - Output of OR term
Quick Start Training
• Nets NOT adjustable by the user
–
–
–
–
AIM - Interconnect Array
AND - Input to the register
MC_OE - Output Enable signal
RST/PST - Reset/Preset inputs to
register
CoolRunner-II Power
Consumption
• Nets in order of power consumption
–
–
–
–
–
–
–
–
–
–
–
–
–
External Capacitance - Very High
O - High
GCK - High - Larger with high density devices
FB - Medium - Larger with high density devices
AIM - Medium
I - Low - Medium for Differential Inputs
PT - Low
OR - Low
AND - Very Low
MC_CLK - Very Low
RST/PST - Very Low
MC_OE - Very Low
Q - Very Low
Quick Start Training
Activity Rate
• Absolute Frequency
– Frequency of a net in units of MHz
– All nets (except Q) in CoolRunner-II CPLDs
are specified with absolute frequency
• Toggle Rate
– A percentage of the clock frequency
• Entered as a percentage value
• Displayed as MHz based on clock
frequency
• 100% toggle rate yields 1/2 frequency of the
clock
– Q nets in CoolRunner-II CPLDs
• Based on global clocks only
• When using product term clocks give data
in absolute frequency
– Great for “What if?” scenarios
Quick Start Training
Data Entry Methods
• Data entry by hand
– Most accurate, but most tedious method
– Requires very detailed knowledge of CoolRunner-II
architecture
– Must specify activity rates for all nets
– Depending on the design, it may be nearly impossible to
determine activity rates for all nets
• Estimate Activity Rates tool
– Algorithm estimates absolute frequencies of nets not yet set by
the user
– Does not estimate toggle rates
– Alleviates the tedium, but is less accurate than data entry by
hand
– Must enter all absolute frequencies for primary I/Os by hand
– Must enter all toggle rates by hand including buried registers
Quick Start Training
Data Entry Methods (cont.)
• Simulation with ModelSim XE
– Easiest method
– Value Change Dump (VCD) file contains frequency
data
– Simulate for sufficient length of time
– Currently, only top level nets are contained in VCD file
– Hand edit remaining primary I/Os and registers
including buried registers
– Use Estimate Activity Rates tool
Quick Start Training
Estimate Activity Rates Tool
• Sets absolute frequencies only
• Automatically set nets
–
–
–
–
–
–
–
–
–
–
–
O
GCK
I
FB
AIM
PT
AND
OR
MC_CLK
RST/PST
MC_OE
• Nets not automatically set
– External Capacitance
– Q
Quick Start Training
Improving Accuracy
• External capacitance loads
– Loads connected to the I/O pin
• Printed circuit board trace capacitance
• Capacitive load of external devices
– Current is derived from Vcc and GND pins to charge
and discharge this load
– Large source of power consumption
• Dramatic effect on power consumption
• Reduce external loads to reduce power consumption
– For accurate power estimates
• Provide accurate capacitance value to XPower
• Provide accurate absolute frequency of external load
Quick Start Training
Improving Accuracy (cont.)
• Macrocell configurations
– Users are not exposed to product term numbers
– AIM is modeled as a non-inverting buffer
– Macrocells have many configurations, but are
understandable by the user
– This information is most useful for
• Data entry by hand method
• Double checking the Estimate Activity Rates tool
– Proper activity rate information is necessary in the
macrocell
• Improves accuracy
• Source of all net activity rates
Quick Start Training
Registered Output Macrocell
• Set activity rates of these nets
– I - Input signal
• Absolute Frequency
– GCK - Global Clock
• Absolute Frequency
– Q - Register output
• Toggle Rate
Quick Start Training
• Remaining nets automatically
set by XPower using Estimate
Activity Rates
Summary
• XPower is a necessity for
– Low power designs
– Designs with a thermal budget
– Battery operated designs
• Simulation with ModelSim XE
–
–
–
–
Easiest method
Reduces the chance of data entry error
Provides accurate activity rate information
Requires user to modify fewer nets in XPower
• CoolRunner-II CPLDs
– Lowest power 1.8V CPLD in the industry
– Excellent for handheld, battery powered designs
– XPower makes it easier to see power savings using the your own designs
• XPower support for CoolRunner-II will be available in ISE 6.1i
Quick Start Training