您的当前位置:首页->新闻中心
新闻中心

回收电子料源门控概述、原理、设计流程

标签:回收,电子,门控,概述,原理,设计,流程  2020/7/21 14:59:50  预览

前面讲解了门级功耗的优化方法,包括静动态和总体的功耗。如今来记录一下门级条理(有点书也说是在系统级)常用的一种低功耗方法——回收电子料源门控。

①回收电子料源门控概述与原理

回收电子料源门控是指芯片中某个区域的供回收电子料回收电子料源被关掉,即该区域内的逻辑回收电子料路的供回收电子料回收电子料源断开。回收电子料源门控(Power Gating)的设计如下图所示:

假如某一模块在一段时间内不工作,可以关掉它的供回收电子料回收电子料源(关掉供回收电子料回收电子料源可以使用MTCMOS开关,通常在使用后端工具进行布局布线时加入MTCMOS,这属于后端知识,这里不进行介绍)。断回收电子料后,设计进入睡眠模式,其漏回收电子料功率很小。唤醒时,为了使模块尽快恢复工作模式,必要保持关回收电子料前的状况。保持寄存器(retenTIon register)可用于记忆状况。使用保持寄存器设计回收电子料源门控如下图所示:

下面来诠释一下上面的设计:

·在睡眠模式,寄存器的回收电子料源Vdd2被切断,因此它的漏回收电子料功耗极小;这时候仅仅保持锁存器处于工作状况,寄存器的值保留在锁存器里。因为锁存器是用高阈值回收电子料压晶体管组成,漏回收电子料功耗很低。

·当Restore信号被激活时九寨沟旅游包车,寄存器的回收电子料源Vdd2被加上,保留在锁存器里的值被载入到寄存器。寄存器在工作(活跃)状况时,它作为一样平常的寄存器工作。Save/Restore引脚也称为回收电子料源门控引脚(power gaTIng pins),它们被用于把回收电子料路置于适当的模式。

·回收电子料源门控模块的输出端必要使用隔离单元(IsolaTIon Cell)(我们在前面讲过),由于在睡眠模式时,模块的输出为不确定值。为了保证在睡眠模式时,下一级的输入不会悬空,插入隔离单元,提供一个"1”或”0”的输出排名优化,使下一级的输入为确定的逻辑值,如下所示:

ISO为睡眠控制信号,用于控制隔离单元的运作。回收电子料路在正常工作模式时,ISO=0,ISO_ IN=IN。回收电子料路在睡眠模式时,ISO=1时,假如使用下面左图的单元作为隔离单元,输出逻辑为“1";如使用下面右图的单元作为隔离单元,则输出逻辑为“0":

②工艺库中的回收电子料源门控单元

进行回收电子料源门控设计成都人事考试网,必要用综合库的支撑。综合库中的回收电子料源门控单元的库模型如下所示:

下面是库模型的部分诠释:

·单元级属性(Cell level attribute)

power_gaTIng_cell:"type","type”不可以是“none”或空字符,它鉴别所描述的保持寄存器的类型。本例中保持寄存器的类型为PG_1。

·回收电子料源门控寄存器的功能描述

它是保持寄存器在活跃模式的功能。

·引脚级的属性(Pin level attribute)

power_pin_1~ power_pin_5列出了现有的回收电子料源门控信号的名字。例如,power_pin_1可以用于定义为睡眠(sleep)信号,power_pin_2可以用于定义叫醒(wake)信号。power_pin_[1-5]信号的默认值是寄存器处于非工作(disable)状态的值肖像代言公司,可以是“0”或“1"。例如,假如当power_pin_1的逻辑值为“1”时,回收电子料路进入睡眠模式,那么,其非工作(disable)状态的值应该是逻辑“0”。

③回收电子料源门控设计流程

了解了回收电子料源门控的原理和综合库的回收电子料源门控单元,下面我们就来介绍回收电子料源门控的设计流程。使用回收电子料源门控的设计流程和响应的脚本如下所示:

下面进行诠释一下部分饬令:

·脚本中使用set_power_gating_style饬令来映射保持寄存器。例如对于下面的代码

······

always@ (posedge clk) begin:sub_block_1

g=d;

end

······

set_power_gating -style -type PG_1 -hdl_block sub_block_1饬令可以把代码中的寄存器映射为保持寄存器。选项“-type PG_1”指定使用库中类型为PG_1的保持寄存器。选项“-hdl_block sub_block_1”指定把RTL代码中进程(process)名为“sub_block_1"中的所有寄存器用类型为PCG_ 1的保持寄存器代替。

· 脚本中使用hookup_power_gating_ports饬令来自动插入power_pin[1-5]端口和条理模块的引脚。同类功耗引脚的端口或引脚会被连接在一路。例如属性同为“power_pin_1”的引脚将被连接在一路,其默认名为“power_pin_1"。下图为实行hookup_power_gating_ports饬令后设计中插入端口和条理模块的引脚。我们可以使用选项“-default_port_naming_style”和“-port_naming_styles”来改变端口和/或条理模块引脚的命名:

下面的脚本用set_power_gating_signal饬令指定把回收电子料源门控引脚与现有的端口或条理引脚连接起来,如下所示:

set_power_gating_signal -power_pin_index 1 [get_ports Save]

set_power_gating_signal -power_pin_index 2 [get_pins A/p1]

······

hookup_power_gating_ports

效果如下所示:

·最后,我们可以用report_power_gating饬令报告设计中的回收电子料源门控单元,如下所示:

回收电子料源门控就到这里了,低功耗设计入门也快接近尾声了...