Answers Database


CPLD: XC9500/XL : How to control Power Consumption in a CPLD


Record #2717

Product Family: Software

Product Line: CPLD Implementation

Product Part: hitop

Product Version: 1.3

Problem Title:
CPLD: XC9500/XL : How to control Power Consumption in a CPLD


Problem Description:
Urgency: standard

General Description:

The power consumption of each macrocell in a XC9500/XL device is
programmable. The standard (default) setting consumes more
power and produces shorter propagation delay. The low-power
setting reduces power consumption for less speed-critical
paths. By default, all macrocells in the design will operate in
standard power mode.


Solution 1:

Changing Global Power Mode:

To set all macrocells to the Low Power Mode throughout the
design, set Default Power Setting to Low in the Basic menu of
the Implementation Options Template in the Design Manager. By
setting the Power Mode to Low in the template, macrocells will
operate in low power mode except where you specify the
PWR_MODE=STD attributes in the design.




Solution 2:

Changing Power Mode for a specific component:

You can apply PWR_MODE attribute to a specific component either
in your schematic or via the UCF file.

To specify that the macrocell(s) used to implement a logic
function are to operate in low-power mode, apply the following
attribute to the corresponding component in your
schematic:PWR_MODE=LOW.

To specify standard power mode for a function (in case the
global power was changed to low), apply the following attribute
to a component:PWR_MODE=STD

The correct way to do this in an UCF file is as follows:

To specify low power mode for a component, use:
NET <Net name> PWR_MODE=LOW; or
INST <Instance name> PWR_MODE=LOW;

To specify standard power mode for a component (in case global
power was changed to low), use:
NET <Net name> PWR_MODE=STD; or
INST <Instance name> PWR_MODE=STD;

The PWR_MODE attribute can be applied to any logic or flip-flop
component in the schematic, including a macro component that
has multiple output signals. The PWR_MODE attribute affects all
macrocells used to implement the selected component.

If a component such as a logic gate or inverter is collapsed
into another component, the PWR_MODE attribute is not carried
forward by the software. You may therefore need to apply the
PWR_MODE attribute to several components in a logic path to be
sure that all macrocells used to implement the path are set to
low-power mode.

The PWR_MODE attribute has no effect on components that are not
implemented using macrocell logic, such as I/O buffers.




End of Record #2717 - Last Modified: 12/28/99 15:40

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Technical Tips!