UPF之常用低功耗单元(Isolation、Level Shifter、Power Switch、State Retention、Always on cell)

一、低功耗单元介绍

  UPF设计中常用的低功耗单元主要包括以下几种:Isolation Cell、Level Shifter cell、Power Switch cell、State Retention cell、Always on cell等。不同的单元使用在不同情况下,具体应用如下:

  • Isolation cell:Used at interface of off power domain to always on power domain
    隔离单元,常用于关断电源域到常开电源域的接口)
    一般接在可以关断的电源域的输出端,防止关掉电源后无效信号X态传播;同时可以防止瞬态开路电流产生的静态功耗)

  • Level Shifter cell:Used at interface of domain have different voltage
    电压/电平转换器,常用于有不同电压的电源域接口)
    通常是将信号从一个电压域切换到另一个电压域;不同电压域的VDD是不一样的,如果不进行电压转换,器件就无法正常工作)

  • Power Switch cell:Used in of power domain to shut off and turn on domain supply
    电源开关单元,常用于电源域内部以关闭和打开电源域供电)
    提供了关闭逻辑电源域电源的能力

  • State Retention cell:Used in shut off domain to save critical bits when domain get shut off
    保留单元,常用于关断电源域内以便电源域关断后保存关键信号)
    能够在电源关闭的情况下,保持内部状态的特殊单元

  • Always on cell:Used to buffering always on nets in shut off domain or nets cross different domain
    一种特殊的cell它的供电来自于不会被关断的电源域(always-on domain), 但是被摆放在可以被关断的电源域
    (能够放置在可关断的power domain,因为它的供电是true power或者是main power,或者叫always-on power)

二、Isolation

  Isolation cell,即隔离单元,属于Interface cell(同Level Shifter)。一般用于shut off power domain和always on power domain之间的interface上,其目的就是为了在shut off power domain关断后输出一个确定的值(可以是0, 也可以是1),以防止X态从shut off power domain传递向always on power domain,影响always on power domain的信号逻辑值;同时isolation cell可以降低always on power domain在interface处的晶体管上短路电流,防止由此造成的较大的静态功耗
          在这里插入图片描述

2.1、Isolation分类

  Isolation cell一般存在三个信号接口,包括1个data pin、1个enable pin、1个output pin。根据其功能可以分为以下几个主要种类。除此之外,Isolation cell根据放置位置还可分为From type(位于shut off PD输出端)、To type(位于always on PD输入端)、Any location(位于任意PD中)三类。

  1. AND型Isolation cell:功能类似 “与” 门,即当其起作用时(enable使能),会输出逻辑0;当其所属于的power domain没有关断(非使能状态)时,则直接输出data pin上的值
  2. OR型Isolation cell:功能类似 “或” 门,即当其起作用时(enable使能),会输出逻辑1;当其处于非使能状态时,则会输出data pin上的值
  3. LATCH型Isolation cell:在power domain下电前会锁存信号状态,一般较为少用,且面积开销较大。

2.2、Isolation编码规则

  编码中主要描述的内容包含有以下主要内容:

  • Domain clarification:参照domain,所有的编码规则中必须指定参照domain;
  • Filtering principle:过滤规则,包括参照domain是哪一个?isolation的source/sink的port需要满足的supply是什么?
  • logic location:逻辑位置,Isolation放在domain里边还是放在其它domain中?
  • Cell power/ground supply
  • Control signal connection:控制信号的连接,仅针对isolation和enable Shifter而言
  • Cell type:cell类型,其命令与上述不同

  Isolation常用的option如下:(2、9-11行选项必须指定,4-5行至少指定一个,其它选项可选

set_isolation rule_name
			-domain                     
			-no_isolation                                     //PD中一旦指定该选项,则会覆盖后续所有的iso rule
			-applies_to             input|output|both         //iso添加在PD的哪一端
			-elements/-exclude_elements                       //iso添加在PD的哪些port上
			-source/-sink                                     //指定iso的supply是什么
			-diff_supply_only                                 //检查PD所有的output port的source、sink的supply是否一致
			-location               parent|self|other         //指定iso的逻辑位置
			-clamp_value            1|0|latch                 //指定iso在使能状态时的输出值(指定iso类型)
			-isolation_signal/-isolation_sense                //指定iso连接的net,net会连接到iso的enable pin端 / 指定enable为0(或者1)时,iso进入关断状态
			-isolation_supply_set                             //指定iso由哪一个supply_set供电
			-name_prefix                                      //给iso例化的inst添加前缀
			-update                                           //incremental option, 实时更新option状态
map_isolation_cell | use_interface_cell -strategy rule_name
			-domain
			-lib_cells

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

三、Level Shifter

  Level Shifter cell,即电压/电平转换单元,属于Interface cell(同Isolation)。一般用于有不同电压的电源域接口,放置于不同PD的交界处。这样做可以防止低电压域PD信号直接驱动高电压域PD的逻辑信号;同时可以防止高电压域信号直接驱动低电压域信号(尽管这样并不是必要的)
       在这里插入图片描述

3.1、Level Shifter分类

  Level Shifter一般只存在两个信号接口,包括1个input pin、1个output pin,功能类似Buffer。根据其功能可以分为以下几个主要种类。

  1. Buffer型Level Shifter cell:功能类似buffer。
  2. AND/OR组合型Level Shifter cell:该类型的Level Shifter会带有1个enable pin,功能兼具Level Shifter 和 Isolation 两者的功能;当一个PD既属于shut off power domain,又属与低电压PD,此时便可用该类型Level Shifter以节省面积。

  除此之外,Isolation cell根据输入输出的电压信号还可分为LH(low to high)、HL(high to low)、LH_HLBidirectional)三类。实际应用中,Bidirectional Level Shifter cell更为常用,它既可以将高电压信号转换为低电压信号,也可以将低电压信号转换为高电压信号。Isolation cell也可以同Isolation一样根据放置位置分为From type(位于driver PD中)、To type(位于receiver PD中)、Any location(位于任意PD中)三类。

3.2、Level Shifter编码规则

  Level Shifter同Isolation一样,同属Interface cell,其编码规则与isolation类似,常用option如下:(2、9-10行必须指定,4/6选项至少指定一个,其它选项可选

set_level_shifter rule_name
			-domain                     
			-no_shift                                         //PD中一旦指定该选项,则会覆盖PD中后续所有的level shifer rule
			-applies_to             input|output|both         //Shifter添加在PD的哪一端
			-rule high_to_low|low_to_high|both                //指定Shifter类型
			-elements/-exclude_elements                       //指定Shifter添加在PD的哪些port上
			-source/-sink                                     //指定Shifter的source supply是什么
			-location               parent|self|other         //指定Shifter的逻辑位置
            -input_supply_cell                                //指定input Supply_Set名字
            -output_supply_cell                               //指定output Supply_Set名字
			-name_prefix                                      //给Shifter例化的inst添加前缀
			-update                                           //incremental option, 实时更新option状态
map_level_shifter_cell | use_interface_cell -strategy rule_name
			-domain
			-lib_cells

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

四、Power Switch

  Power Switch cell,即电源开关单元,。一般用于power domain内部,实现片上PD的supply打开与关断

4.1、Power Switch分类

  Power Switch一般可以分为两种类型,一种为Header类型,一种为Footer类型,示意图如下。Header类型的power Switch主要负责关断电源,类似一个 “PMOS” 晶体管,连接在一个always on电源和一个shut off电源之间;当enable pin 为 0 时,always on电源便会经过PMOS管传输到shut off电源线上,当enable pin 为 1 时,PMOS管关断,shut off电源线上便会掉电。Footer类型的power Switch类似一个 “NMOS” 晶体管,当enable pin 为 1 时,shut off地线会连通always on地线,实现电源通路,当enable pin 为 0 时,shut off地线悬空,此时整个domain里电源关断。

  在实际设计中,Header类型的Power Switch cell较为常见。(Footer类型cell通过电子导电,开关的关断速度比PMOS管的空穴导电更快;但是header形式,断电后电量可以由地线放掉,footer形式,断电后需要设计特殊电路放电,比较麻烦
      在这里插入图片描述
  除此之外,Power Switch cell还可以分为Coarse grain和Fine grain两大类。其中Coarse grain型PSW会控制一大片逻辑单元的power电源关断,而Fine grain型PSW一般用于standard cell内部,面积开销较大,所以只在macro cell中有少量应用。实际设计中,Coarse grain的PSW更为常见。

  Header类型的Power Switch cell根据其结构和enable pin的数量可以再次细分为几种类型:无enable pin、1个enable in & 1个enable out、2个enable in & 2个enable out。如下图所示。其中 1个enable in & 1个enable out 和 2个enable in & 2个enable out类型的Header PSW较为常见。
        在这里插入图片描述

4.2、Power Switch编码规则

  Power Switch常用的option如下:

create_power_switch rule_name
           -domain                                               //指定PD,PSW位于可关断的 power domain
           -input_supply_port {port_name [supply_net_name]}      //PSW所用的always on PD置于port_name处,其所用的power net置于supply_net_name处;该option与设计中所用的PSW cell强相关
           -output_supply_port {port_name [supply_net_name]}    //PSW所用的可关断的 PD 置于port_name处,其所用的power net置于supply_net_name处
           -control_port {port_name [net_name]}               //指定enable pin连接的port_name与net_name
           -ack_port {port_name net_name[logic_value]}        //指定的信号用于表示输出电压是否稳定
           -on_state {state_name input_supply_port {boolean_expression}}  //指定PSW的enable pin处于什么状况时,PSW是ON状态,state_name自定义
map_power_switch rule_name
           -domain
           -lib_cells

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

五、State Retention

  State Retention cell,即保留单元。一般用于shut off power domain中,当电源未关断时,其相当于一个DFF;当电源关断时,State Retention cell会储存PD内部的逻辑信号。这样做可以使system快速power on,避免不必要的reset操作造成的大量时间消耗

5.1、State Retention分类

  State Retention有2个power pin和1个备用的power pin(连接always on电源)来保证domain shut off之后信号不丢失。根据其structure,可分为两类:一种为Balloon Latch type的Retention, 一种为Single-Pin Live Slave type的Retention。其中Single-Pin Live Slave type的Retention由于只有Master和Slave两种Latch,更为节省面积,所以较为常用,它的Slave Latch连接在always on电源上。

      在这里插入图片描述

5.2、State Retention编码规则

  State Retention常用的option如下:

set_retention rule_name
			-domain                                              //一般指定shut off domain中
			-no_retention                                        //该选项不常用,因为不需要Retention时直接不声明即可
			-elements/-exclude_elements                          //指定Retention添加在PD的哪些port上
			-retention_supply_set                                //指定Retention连接的always on Supply_Set
            -save_signal {logic_net <high|low|posedge|negedge>}  //指定save pin连接的net,及其使能时的high|low等状态
            -restore_signal {logic_net <high|low|posedge|negedge>} //指定restore pin连接的net,及其使能时的high|low等状态
            -save_condition {boolean_expression}                  //指定save的状况
            -restore_condition {boolean_expression}               //指定restore的状况
            -retention_condition {boolean_expression}             //
			-update                                               //incremental option, 实时更新option状态
map_level_shifter_cell | use_interface_cell -strategy rule_name
			-domain
			-lib_cells

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

  下图中,将R2的register替换为Retention。其中红色区域domain为domain_pso, 蓝色区域中的Supply_Setnet为domain_aon.primary。在set_retention中, rule_name自定义,其中save pin连接在retn net上,且当其为high状态时,save pin使能;retention pin也连接在retn net上,且当其为low状态时,retention pin使能。
              在这里插入图片描述

六、Always on

  Always on cell,也称Global cell,一般包括always on bufferalways on inverter。一般用于shut off power domain中。

6.1、Always on应用场景

  Always on cell一般应用于以下两种场景:

  1. 当存在某一条或几条信号线从一个always on domain穿过shut off domain进入到另一个always on domain时,在被穿过的shut off domain中一般会插入always on buffer, 进行timing DRV修正。
  2. 当存在某一条或几条信号线从一个shut off domain穿过always on domain进入到另一个shut off domain时,在被穿过的always on domain中一般也会插入always on buffer, 进行timing DRV修正。在这种情况下的always on buffer是可以被关断的,

            在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值