Writing Isolation Strategy in UPF _ VLSI COMMUNITY

download Writing Isolation Strategy in UPF _ VLSI COMMUNITY

of 10

Transcript of Writing Isolation Strategy in UPF _ VLSI COMMUNITY

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    1/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/

    hhharishhh

    Jul 27, 2014

    Low

    Power

    Design

    0

    set_isolationset_isolation_control

    map_isolation_cell

    Isolation

    strategy is required to instruct

    implementation tool to insert

    isolation cells where a less-ON signal

    drives a more-ON logic. Though tools

    can infer this power domain relations

    from the PST state table, the

    implementation tools doesnt

    implement them without an isolation

    strategy specified. Also the PST

    states do not provide the tools

    sufficient information available for

    inserting isolation cells like the clamp

    value, supplies, and so many other

    aspects. However the designer can

    easily report the violationswhen the

    isolation strategy you have defined is

    not in line with the PST. An isolation

    strategy can be written by using

    following commands,

    set_isolation

    command in UPF defines the name of

    the Isolation strategy along with the

    signals to be isolated and their clamp

    http://-/?-http://www.vlsicommunity.com/category/low-power-design-forum/http://www.vlsicommunity.com/2014/07/http://-/?-http://www.vlsicommunity.com/category/low-power-design-forum/http://www.vlsicommunity.com/2014/07/http://www.vlsicommunity.com/author/hhharishhh/
  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    2/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 2

    value. Clamp value is either 0 or 1

    which determines the type of

    isolation cell to be used.

    Example,

    [blockquote align=center]

    set_isolation ISO_VDDA_TO_VDDB

    -domain VDDA

    -source VDDA_SUPPLY

    -diff_supply_only TRUE

    -isolation_power_net VDDB

    -isolation_ground_net VSS

    -name_suffix

    ISO_LOW_VDDA_TO_VDDB

    -clamp_value 0

    [/blockquote][space_20]

    In the example we defined a strategy

    named ISO_VDDA_TO_VDDB. As the

    name suggests this strategy is

    defined for the signals that cross

    from the domain VDDA to VDDB. Theoption -domain specifies the name

    of the domain which is to be isolated

    hence VDDA. VDDA_SUPPLY is the

    supply set of the power domain

    VDDA. By specifying the source

    option you indicate that the isolation

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    3/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 3

    strategy applies to pnly signal nets

    whose driver is powered by the

    supply specified in the -source

    option. If you need to apply isolation

    only when the supplies of the source

    and the sink are different then weneed to provide TRUE for the option

    diff_supply_only. The supply to be

    used for the isolation cell can be

    either the destination domain supply

    or the always on supply. If the

    destination domain is also an

    ON/OFF domain then the destinationsupply is better than the always on

    supply because we could save some

    power when the destination domain

    is in OFF state. The option -

    name_suffix helps the designer to

    specify the suffix to the instance

    name of isolation cell implementedby the tool which helps for easy

    identification and debug. Finally the

    clamp_value which determines the

    type of isolation cell whether its

    clamp high or clamp low type.

    There are many ways the designer

    can customize the strategy lets see

    few of them,

    1. Designer can specify if the isolation

    strategy to be applied for Inputs,

    outputs or both. This can be achieved

    by using -applies_to option. In the

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    4/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 4

    following example the strategy is

    applied on only output ports of the

    domain,

    [blockquote align=center]

    set_isolation ISO_VDDA_TO_VDDB

    -domain VDDA

    -source VDDA_SUPPLY

    -diff_supply_only TRUE

    -isolation_power_net VDDB

    -isolation_ground_net VSS

    -name_suffix

    ISO_LOW_VDDA_TO_VDDB

    -clamp_value 0

    -applies_to outputs

    [/blockquote][space_20]

    2. In some scenarios, the designer

    may specify only few ports of a

    domain to be isolated. In that case

    the option -elements can be

    helpful. The elements option takes alist of port with absolute hierarchy

    path and applies isolation only to

    those ports. In the example bellow,

    the strategy is applied only to ports

    fmg/write_req_out and

    fmg/read_ack_out

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    5/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 5

    [blockquote align=center]

    set_isolation ISO_VDDA_TO_VDDB

    -domain VDDA

    -source VDDA_SUPPLY

    -diff_supply_only TRUE

    -isolation_power_net VDDB

    -isolation_ground_net VSS

    -name_suffix

    ISO_LOW_VDDA_TO_VDDB

    -clamp_value 0

    -elements { fmg/write_req_out

    fmg/read_ack_out}

    [/blockquote][space_20]

    3. Control signals like clocks should

    not be routed through relatively less

    ON domain than the sinks because

    the isolation cell when enabled can

    block its propagation. Designer can

    explicitly specify tool not to isolate

    specific signals using -no_isolation

    option

    [blockquote align=center]

    set_isolation

    NOISO_VDDA_TO_VDDB

    -domain VDDA

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    6/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 6

    -no_isolation

    -elements {fmg/core_clk}

    [/blockquote][space_20]

    4. Isolation cell can be forced on a

    signal by using -force_isolation

    option. When the option force

    isolation is used the tool implements

    the isolation even when its not

    required or redundant. Also the tool

    do not optimize away this isolation

    even when there is no change to the

    design functionality.

    [blockquote align=center]

    set_isolation

    FORCE_ISO_VDDA_TO_VDDB

    -domain VDDA

    -force_isolation

    -elements {gmf/php_ack_out}

    [/blockquote][space_20]

    set_isolation_control command is

    used to specify the isolation enable

    signal to the already defined isolation

    strategy. The isolation enable signal

    controls the enabling and disabling of

    the isolation cell.

    Example,

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    7/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 7

    [blockquote align=center]

    set_isolation_control ISO_VDDA_TO_VDDB

    -domain VDDA

    -isolation_signal

    pwr_ctrlr/iso_enable_vdda_to_vddb

    -location parent

    -isolation_sense low

    [/blockquote][space_20]

    In the example we defined theisolation control

    signal pwr_ctrlr/iso_enable_vdda_to_vddb

    to the already defined isolation

    strategy ISO_VDDA_TO_VDDB. The

    option -isolation_signal can take a

    port or pin or a net as the isolation

    control. The option -domain specifies the domain to which the

    isolation strategy applies. If you are

    wondering if this is redundant since

    we already specified the domain in

    the strategy definition, yes it is. That

    is how the IEEE standard 1801-2009

    defined isolation strategy. However inIEEE 1801-2013 standard the

    command set_isolation_control is

    deprecated by enhancing the

    command set_isolation. As of today

    synopsys low power tools still

    support set_isolation_control

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    8/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 8

    command.

    Isolation sense together with the

    clamp value determines the type of

    isolation cell to be used for the

    strategy implementation. Isolation

    sense is the value (either high or low)

    of the isolation control signal which

    enables the isolation cell to isolate

    the signal.

    AND style: When the isolation sense

    is low and the clamp value is 0 then

    the AND gate can be used as anisolation cell. Hence an AND style

    isolation cell is used for the

    implementation.

    OR style:When the isolation sense is

    high and the clamp value is 1 then an

    OR gate can be used as an isolation

    cell. Hence an OR style isolation cell

    is used for the implementation.

    The location of the isolation cell

    placement (with respect to the power

    domains) can be controlled by the

    designer using -location. Allowed

    values for the option -location in

    synopsys tools are self, parent and

    fanout.

    Self: Tool implements the isolation

    cell in power domain that is specified

    in the -domain option of the isolation

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    9/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    http://www.vlsicommunity.com/2014/07/writing-isolation-strategy-in-upf/ 9

    strategy.

    Parent: The tool places the isolation

    cell in the parent hierarchy.

    fanout: In this case the isolation cell

    in the fanout logic domain. This

    option is more useful when the signal

    fansout to more than one power

    domain so that a separate isolation

    cell is placed in each of the

    destination power domain.

  • 7/26/2019 Writing Isolation Strategy in UPF _ VLSI COMMUNITY

    10/10

    6/10/2016 Writing Isolation Strategy in UPF | VLSI COMMUNITY

    htt // l i it /2014/07/ iti i l ti t t i f/ 10

    Share:

    Share 0

    Tweet

    map_isolation_cell:This command is

    used to specify the library cell to be

    used for an isolation strategy. The

    cells specified in the

    map_isolation_cell command must

    match with the clamp value and theisolation sense.

    [blockquote align=center]

    map_isolation_cell

    ISO_VDDA_TO_VDDB

    -lib_cells {isolowsrc2hr isolowsrc3ur}

    [/blockquote][space_20]

    0Share

    Creating Power State Table

    Early Branch in Clock Tree Cause Timing Violations

    http://www.vlsicommunity.com/2015/06/early-branch-in-clock-tree-cause-timing-violations/http://www.vlsicommunity.com/2014/07/creating-power-state-table/https://www.facebook.com/sharer/sharer.php?app_id=247363645312964&sdk=joey&u=http%3A%2F%2Fwww.vlsicommunity.com%2F2014%2F07%2Fwriting-isolation-strategy-in-upf%2F&display=popup&ref=plugin&src=share_buttonhttps://twitter.com/intent/tweet?original_referer=http%3A%2F%2Fwww.vlsicommunity.com%2F2014%2F07%2Fwriting-isolation-strategy-in-upf%2F&text=Writing%20Isolation%20Strategy%20in%20UPF&tw_p=tweetbutton&url=http%3A%2F%2Fwww.vlsicommunity.com%2F2014%2F07%2Fwriting-isolation-strategy-in-upf%2F&via=drupads