概述
对于物联网终端模块,需要关注其功能、性能、安全成本、能耗等。最近折腾NB芯片模块的功耗,整理下过程中的一些想法。
功耗的组成及优化
从芯片电路角度,功耗分为动态功耗和静态功耗,电容充放电过程中的功耗.动态功耗包括翻转功耗(有效功耗)和短路功耗(无效功耗)。参考《参考SoC设计方法与实现》,芯片模块功率可以表示如下:
p
=
1
/
2
∗
C
∗
V
d
d
2
∗
f
∗
N
s
w
+
Q
s
c
∗
V
d
d
∗
f
∗
N
s
w
+
I
l
e
a
k
∗
V
d
d
p=1/2*C*V_{dd}^2*f*N_{sw}+ Q_{sc}*V_{dd}*f*N_{sw}+I_{leak}*V_{dd}
p=1/2∗C∗Vdd2∗f∗Nsw+Qsc∗Vdd∗f∗Nsw+Ileak∗Vdd
其中:
- C为结电容
- f为工作频率
- V d d V_{dd} Vdd为电压
- Qsc为工作过程中的短路能量
- I l e a k I_{leak} Ileak为漏电电流
- N_{sw}数目
总能耗和时间有关系:
W
=
p
∗
t
W=p*t
W=p∗t
对于通信芯片模块的优化需要考虑选择:性能基础上尽量降低功耗、低功耗基础上保证性能或是两者的权衡。功耗优化在整个系统设计过程中都应当纳入考虑范畴,从系统设计到电路级、门级都可考虑优化。目前所做优化基于已有芯片硬件,所以只能在现有基础上,考虑软件处理优化。
从上面电流公式可见,优化的主要目标,降低电压、电流、频率、工作器件数目以及减少工作时间。这样就容易理解功耗处理中的一些常用方法:如DVFS(Dynamic Volatage and Dynamic Frequency Scaling)、Power Domain(电源域)的划分与控制、clock gating等处理。
总的来讲"图难于其易,为大于其细",基于MECE(唯一排他、集合网罗)的原则进行功耗分解[两维度:长度-时间,高度-模块分解],而后再使用删除、组织、隐藏、转移的方式具体实现。关于具体的实现细节不太能直观说明白,可以从NB-IoT协议看看该系统做的一些优化。
NB-IoT协议中的功耗优化
- DRX 非连续接收
- 移动通信系统中都存在的待机模式下,周期性检测下行寻呼,终端基于和网络协商一致的周期内,只需要尝试接收一小段时间,确认是否存在寻呼消息。
- eDRX extended DRX
- 对DRX的扩展,降低了功耗,增加了时延迟。再eDRX周期内,设置了PTW(Paging time windows),而只需要再PTW窗口内需要按照DRX的周期进行寻呼检测。
- C-DRX connected状态下的DRX
- 连接态下的非连续接收,主要再低速率服务下,由于数据量较少,没有一直接收的必要,只需周期性检测是否存在下行数据即可。
- PSM Power Saving Mode
- PSM模式类似于power-off状态,不同在于保持和网络的attach及PDN(Packet Data Netwrok)的连接信息。处于PSM模式下的终端,只需要再需要业务或需要和网络信令(周期性TAU tracking Area Update)的情况下才需进入工作状态。
- PSM状态下的终端,是无法直接联系到的,如果存在业务,可采用High Latency Communication的功能,简单来讲网络存储数据,等待终端连接网络时再发送给数据,GSMA推荐NB-IoT部署时,至少保留最后一条发送给终端的消息。
- 协议定义了T3412 extended Value和T3324 Timer来实现PSM,T3324是连接态进入空闲态多久后终端进入PSM的定时器,T3412为周期性TAU的时间。当T3324超时,终端可以进入PSM状态;T3412/T3412 Extended 超时,终端需要退出PSM状态发起TAU。
- TX-Power class6 14dBm
- 印象中class6的提出基于和LoRa的比较,相对于其它能力下20+dBm的最大上行功率,功耗相对降低。
- Additional update type
- attach中和TAU信息中可以携带此信元,其中SAF(Signalling Active Flag)比特域,1 keeping the NAS signalling connection is required after the completion of the tracking area updating procedure;0 keeping the NAS signalling connection is not required after the completion of the tracking area updating procedure,理解上告知网络TAU结束后,是否保持连接状态。
- Release assistance indication
- 该信元可以携带再ESM DATA TRANSPORT中,其中的DDX(Downlink data expected)域,占用两个比特,0 0 No information regarding DDX is conveyed by the information element. If received it shall be interpreted as ‘neither value “01” nor “10” applies’; 0 1 No further uplink or downlink data transmission subsequent to the uplink data transmission is expected;1 0 Only a single downlink data transmission and no further uplink data transmission subsequent to the uplink data transmission is expected;1 1 reserved。
- 实际中,TAU周期/PSM的T3324定时器终端都是可以通过信令报告给网络的,但最终的决定情况取决于网络,有时和SIM卡相应的APN有关联,参考电信APN与PSM/eDRX等对应关系。如果参数的定义由终端决定,则终端可以根据自身应用的需求来改变不同的参数,如协议上标注:当应用测是周期性数据时,可以安排数据和TAU同时进行,降低TAU流程带来的额外开销。
- Release assistance indication与Additional update type可以加快连接态链路的释放过程从而降低功率开销。
处理器低功耗-ARM低功耗模式
一般的CPU都有低功耗模式设计,在空闲时可以进入sleep状态:
- wait for interrupt
使用WFI指令,ARM进入sleep模式,等待中断唤醒; - wait for event
使用WFE指令,ARM进入sleep模式,等待中断或event唤醒;多核状态可以减少自旋锁的功耗,使用SEV触发Event Signal; - Sleep-on-exit
将(System Control Block - System Cotrol Register中)SLEEPONEXIT比特置为1,只处理中断处理时退出wakeup状态,退出中断处理后立即进入sleep模式; - 是否选择deepsleep亦可通过设置SCR中的SLEEPDEEP标志位控制,各个模式的差异比较:
参考文档
- 3GPP 23.682 Digital cellular telecommunications system (Phase 2+) (GSM);Universal Mobile Telecommunications System (UMTS);
最后
以上就是美丽人生为你收集整理的关于NB模块的功耗优化功耗的组成及优化NB-IoT协议中的功耗优化处理器低功耗-ARM低功耗模式参考文档的全部内容,希望文章能够帮你解决关于NB模块的功耗优化功耗的组成及优化NB-IoT协议中的功耗优化处理器低功耗-ARM低功耗模式参考文档所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复