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是可以被关断的,

            在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值