Magic Blue Smoke


Low Power Intent for Synthesis

Now lets look at the main components of UPF, which will be used by synthesis tools in making important decisions during optimization process.

For synthesis, main constructs in UPF which plays an important role are

(a) Level Shifter Insertion

(b) Isolation Cell Insertion

(c) Retention Cell Insertion and hook up

(a) Level Shifter Insertion: There are 2 commands, which influences level shifter insertion

-domain domain name
[-elements a list of pin and ports]
[-applies_to inputs | outputs | both]
[-threshold float]
[-rule low_to_high | high_to_low | both]
[-location self | parent | fanout | automatic]

Level shifters are placed on signals that have sources and sinks operating at different voltages, as their associated design elements are connected to different supply nets. In general, power state table (PST) and operating conditions are considered to determine if level shifters are needed for design elements on the boundaries of power domains.

The main option in the command, which I would give higher priority is the location of the level shifter

-location defines where the level shifter cells are placed in the logic hierarchy. All necessary supplies need to be available in the specified location.

a) Self: the level shifter cell is placed inside the model/cell being shifted.
b) Parent: The level shifter cell is placed in the parent of the cell /model
being shifted.
d) Fanout: level shifter occur at all fanout locations (sinks) of the port being
e) Automatic: The implementation tool is free to choose the appropriate locations.

If we are using physical information based logic synthesis tools such as Design-Compiler Topographical, location plays an important role, as timing would be more accurate if physical location of the LS is considered in addition to other aspects of floorplan.

As a designer, I would prefer to specify the location of the LS in the command rather than letting the tool to make decisions automatically on the location.

Lets look at isolation strategy and other special cell related commands more in detail in my next post.