低功耗设计单元汇总

为实现低功耗设计,会采用多电源域、多电压域、动态电压调节等策略,需要使用到电压控制单元,包括:isolation、level shifter、power switch、always-on、retention等,下面介绍学习的一些低功耗单元概念、lib格式和pg_type的三种类型。
低功耗单元汇总
isolation cells
隔离单元,用于在电源关断之后,保持输出为定值。用在shut-off电压域的输出。可以防止不定态信号值传播引起下级逻辑错误,和当电压在0.5 vdd附近时造成的短路功耗。
按照放置的位置可以分为sink-side和source-side。其中sink-side指的是放在always-on电压域的单元,里面只有一个供电电源,即always-on的电源。source-side指的是放在可关断电压域的单元,里面有两个供电电源,shutoff电源和always-on电源。
按照结构可以分为and-type、or-type和latch-type类型的单元。
因此组合可以分文sink-side and-type isolation cell、sink-side or-type isolation cell、sink-side latch-type isolation cell、source-side and-type isolation cell with global power、source-side or-type isolation cell with global power、source-side latch-type isolation cell with global power等。
level shifter cells
电压转换单元,用于将信号从一个电压域转移到另一个电压域。一般用于低电压域到高电压域的转换:因为假如低电压域输出0,那么能够正常控制高电压域的nmos关闭和pmos开启,如果低电压域输出1,因为电压较低,一般来说能够控制高电压域nmos开启,但是不能控制pmos关闭,造成短路。
power switch cells
电源开关,能够打开/关闭电压域的供电电源,分为header(通过pmos控制vdd开关)和footer(利用nmos控制vss开关,该库没有这一类型)。
学习了4种类型的header结构的power switch cells。包括:
header: switch connects the local power with global power,最基础版,只有一个输入使能。
headerbuf:switch with always-on buffer that connects the local power with global power,高级点的,有输入使能和输出。
headerbuftie::switch with always-on buffer that connects the local power with global power, the n-well and p-well are tied to vddg and vss respectively,在headerbuf基础上给nwell和pwell加了偏置。
headertie:,switch that connects the local power with global power, the n-well and p-well are tied to vddg and vss respectively,在header基础上加了nwell和pwell偏置。
always-on cells
该电源供电来源于不会被关断的电源域,但是可以被摆放到shut-off电源域,用于驱动always-on net。其结构是shutoff的vdd和vss在基本单元版图中为feedthrough形式,仅用于连接power rail保证不断路,真正的供电电源为vddg(backup power)。
类型:
tiehi、tielo、二输入与或门、反相器、延时单元、buf等。
retention cells
能够在电源关断的情况下保持状态。是时序逻辑,有两种类型:flip-flop和latch。
没找到retention cell的详细结构。
特殊单元
filldcap:为了防止大量标准单元翻转造成的voltage drop问题。其原理是电容公式为c=εs/4πkd,通过下面的版图,增大了s,降低了d,因此提升了vdd和vss之间的电容,能够维持电源稳定。
此外还有为nwell和pwell提供偏置电压的特殊单元。
lib举例:
            sink-side isolation:
cell(a2biso) { 
cell_footprint : a2biso ; 
dont_touch : true ; 
dont_use : true ; 
is_isolation_cell : true ; 
sec_class : combinational ; 
sec_cell_type : clamp ; 
valid_location : to ; 
leakage_power
...
pg_pin(vdd) { 
voltage_name : vdd ; 
pg_type : primary_power ; 
related_bias_pin : tw ; 
}
...
pin(y) { 
direction : output ; 
function : (a&!enb) ; 
related_ground_pin : vss ; 
related_power_pin : vdd ; 
power_down_function : !vdd+vss ; 
sec_pin_type : data ; 
internal_power
timing
...
}
...
sec_pdt_pin(vdd) { 
sec_pdt_pin_type : power ; 
}
...
}
source-side isolation:
cell(gpa2biso) { 
cell_footprint : gpa2biso ; 
dont_touch : true ; 
dont_use : true ; 
is_isolation_cell : true ; 
sec_class : combinational ; 
sec_cell_type : clamp ; 
valid_location : from ; 
leakage_power()
...
pg_pin(vdd) { 
voltage_name : vdd ; 
pg_type : primary_power ; 
related_bias_pin : tw ; 
}
pg_pin(vddg) { 
voltage_name : vddg ; 
pg_type : backup_power ; 
}
...
pin(a) { 
direction : input ; 
related_ground_pin : vss ; 
related_power_pin : vdd ; 
isolation_cell_data_pin : true ; 
internal_power
...
}
}
pin(enb) { 
direction : input ; 
input_voltage : alwaysonpower ; 
related_ground_pin : vss ; 
related_power_pin : vddg ; 
isolation_cell_enable_pin : true ; 
sec_pin_type : enable_low ; 
always_on : true ; 
internal_power
...
}
}
pin(y) { 
direction : output ; 
function : (a&!enb) ; 
output_voltage : alwaysonpower ; 
related_ground_pin : vss ; 
related_power_pin : vddg ; 
power_down_function : !vdd+!vddg+!tw+vss+vpw+sx ; 
always_on : true ; 
internal_power
...
timing
...
}
sec_pdt_pin(vdd) { 
sec_pdt_pin_type : power ; 
}
...
}
power switch:
cell(head) { 
cell_footprint : headl ; 
dont_touch : true ; 
dont_use : true ; 
switch_cell_type : coarse_grain ; 
sec_cell_type : complex ; 
user_function_class : head ; 
leakage_power
...
dc_current(ivt125x25) { 
related_switch_pin : sleep ; 
related_pg_pin : vddg ; 
related_internal_pg_pin : vdd ; 
}
pg_pin(vdd) { 
voltage_name : vdd ; 
pg_type : internal_power ; (power switch的内部输出电源)
direction : output ; 
switch_function : sleep ; 
pg_function : vddg ; 
}
pg_pin(vddg) { 
voltage_name : vddg ; 
pg_type : primary_power ; (power switch使用的电源)
}
...
pin(sleep) { 
direction : input ; 
input_voltage : header ; 
related_ground_pin : vss ; 
related_power_pin : vddg ; 
switch_pin : true ; 
always_on : true ; 
...
}
sec_pdt_pin(vdd)
...
}
pg_type的3种类型
    primary_power/ground:
主电源/地,一般功能信号使用的电源/地,可关断
    backup_power/ground:
备用电源/地,always-on的电源/地
    internal_power/ground:
内部电源/地,主要用于power switch的电源/地


运算放大器虚短虚断发生的条件是什么
西门子S7-200 CP243-1作为客户端与S7-200 SMART CPU以太网通讯
电磁离合器说明书-STEKI堂奕
什么是二极管的反向恢复时间
西门子2019工业网络专家计划生态系统的大型会议方案发展路径
低功耗设计单元汇总
中国正在成为全球太阳能产业中心
MIMXRT1060 FLEXIO UART波特率
5G与AI联手将创造3.9万亿美元价值
电路板上一般什么胶水_电路板封胶用什么胶
小米CC9深蓝星球新配色公布
今年除了iPhone8, 苹果预计还会发布这些新品!
基于MAX232实现PC机与CPU通信
Digi-Key 庆祝产品配送中心扩建工程开业剪彩
品牌厂有意将UVC LED纳入规格 未来有望成为家电标准配备
苹果发布全新 iWork 办公三件套:精致新设计,针对 macOS Big Sur
台积电7nm已完成 只等流片让高通考量派单
人工智能和深度学习分析已经成为实体安防行业的必然选择
将振动精确与特定声音匹配的加速度传感器
电容822j多少容量