0

关于投票
嵌入式DSP应用的低功耗优化策略

无线系统及有线系统设计师均必须重视电源效率问题,尽管双方的出发点不尽相同:对于移动设备而言,更长的电池使用寿命、更长的通话时间或更长的工作时间都是明显的优势,降低电源要求意味着使用体积更小的电池或选择不同的电池技术,这在一定程度上也缓解了电池发热问题;对于有线系统而言,设计师可通过减小电源体积、减少冷却需求以及降低风扇噪声来提高电池效率。人们很少会提到这样一个事实:提高电源效率还可节省空间,而节省的空间可以用来增加能够提高系统性能的组件,尤其是设计小组希望添加一个以上处理器时,这一点非常重要。

设计嵌入式DSP处理器或系统功耗要求严格的系统时,采用DSP专用技术、操作系统及其支持软件可以降低功耗。超越传统技术的DSP或双处理器设计在节约能量方面表现出色。

功耗基础知识

互补金属氧化物半导体(CMOS)电路的总功耗是动态功耗与静态功耗之和:


当门发生逻辑状态转换并产生内部结点充电所需的开关电流以及P通道及N通道同时暂态开启引起直通电流时,就会出现动态功耗。通过以下公式可以估算其近似值:


其中,Cpd为动态电容,F为开关频率,Vcc为电源电压,而Nsw为转换的比特数。另外,电压(Vcc)决定着稳定工作状态下的最大开关频率(F)。上述关系中包含两个重要概念:动态功耗与开关频率呈线性关系,与电源电压呈二次关系;最大安全开关频率取决于电源电压。为便于本文讨论,将特定的频率及电压对称为“设定点”。

很显然,降低CPU时钟速率将相应成比例地降低动态功耗,由于动态功耗与电源电压成二次关系,在不影响系统性能的前提下,通过降低电压就可能大大降低功耗。不过,对于特定任务集,降低CPU时钟速率也会成比例地延长执行该任务集的时间,因此必须仔细分析应用以确保满足其实时需求。

静态功耗主要是由于晶体管漏电流造成的。一般说来,CMOS电路的静态功耗很低,与其动态功耗相比可以忽略不计。嵌入式应用在不工作期间通常会“闲置”CPU时钟以减少动态功耗,从而显著降低总体功耗。而在未来的设计中必须特别关注静态功耗问题,因为更高性能的新型晶体管的漏电流将显著提高。

嵌入式系统常用技术

常用电源管理技术可以分为两类:通过早期硬件设计决策时实现,或在系统运行时实现。设计早期的决策对满足性能及功耗至关重要,下面列出了设计中需要考虑的十大要素,其中包括硬件选择、设计策略及架构选择。大多数要素都是嵌入式系统的基本要求,其他要素则需要单独考虑。尽管下列决策是在设计早期制定的,但有些仍需在整个设计周期中进行再验证。如下所列:

1. 选择低功耗组件;

2. 分割电压与时钟域;

3. 支持电压及频率调节功能;

4. 启用保持电压门控功能;

5. 通过软件利用中断减少轮询;

6. 采用分级存储器模型;

7. 降低输出负载;

8. 系统启动时关闭非关键资源供电;

9. 尽量减少活动PLL数量;

10. 使用时钟分频器快速变换频率。

确定系统架构以后,设计团队需要将注意力转向系统运行时环境。以下列出的14项,在设计过程中要始终关注其中大部分内容:

1. 不需要时则关闭门控时钟;

2. 引导过程中主动关闭不必要的功耗;

3. 仅在需要时用向子系统供电;

4. 激活外设低功耗模式;

5. 充分利用外设活动状态检测器;

6. 使用自动刷新模式;

7. 对应用进行基准测试来确定必需的最小频率及电压;

8. 根据总体活动情况调整CPU频率及电压;

9. 动态调节CPU频率及电压以匹配预计的工作负载;

10. 优化代码的执行速度;

11. 使用低功耗代码序列及数据模式;

12. 使用代码覆盖技术减少对高速内存的需求;

13. 更换电源时进入简化功能模式;

14. 平衡精确度与功耗的关系。

有经验的设计团队必须至少在概念上熟悉上述嵌入式系统应用设计要点(其中部分与DSP电路有关)。任何降低功耗的设计都有可能对性能产生负面影响或导致系统不稳定。

DSP RTOS如何满足低功耗设计要求

一部分最重要的并得到普遍认可的技术方法可以融合到RTOS中,相关的技术包括:闲置、关闭活动电源、器件驱动程序通知、内存管理、电压/频率调节。然而,由于设计目标不尽相同,将这些技术构建到RTOS中并不容易。设计师需要在这些方法中做出选择,设计的关键目标就是高效性、灵活性以及与操作系统本身的松散关系。

TI的DSP/BIOS操作系统的电源管理器(PWRM)非常适于用作现有RTOS的电源管理模块。尽管以下描述的设计实现是针对DSP/BIOS,但其概念可很容易地运用到其他操作系统,甚至用于无操作系统的应用环境。

电源管理器的要求

电源管理器设计的关键要求如下:

1. 管理决策必须由应用触发,而不是操作系统触发;

2. 电源管理活动应当针对大部分应用代码透明;

3. 电源管理器必须支持电压与频率(V/F)调节,并充分利用芯片的空闲与睡眠模式;

4. 电源管理器必须在应用代码、驱动程序以及操作系统本身范围内协调电源事件处理,并在发生特定事件时向客户端发出通知;

5. 电源管理特性必须在任何线程环境中可用,并且还必须对特定客户端的多个实例可用(如一个器件驱动程序的多个实例);

6. 在向客户端发出电源事件通知时,电源管理器必须支持事件处理的延迟完成,并在等待延迟客户端的完成信号的同时通知其他客户端;

7. 对具有不同功能的不同平台,电源管理器必须是可扩展的和可移植的。

为满足上述的关键要求,可将电源管理器作为DSP/BIOS的附属模块添加,如图1所示。电源管理器位于内核之外,它不是系统中的一项任务,而是一组可在应用控制线程以及器件驱动程序环境中执行的API。

图1. 电源管理器分区
图1. 电源管理器分区

这意味着无需修改内核,但在CPU时钟与操作系统定时器时钟相结合的平台上,DSP/BIOS时钟模块(CLK)需要补充例程(routine),这对频率缩放非常重要,因为这些例程能够使OS时钟适应PWRM的客户端。

电源管理器通过写入并读取时钟空闲配置寄存器,并通过控制CPU时钟速率及稳压电路的特定平台功率扩展库(PSL),直接与DSP硬件相连接。PSL将电源管理器及应用的其他部分与频率和电压控制硬件的低层实现细节相隔离。

电源管理器拥有若干个与应用相关的任务。由设计工程师对其进行静态配置,并在运行时进行动态调用:

1.空闲时钟域—电源管理器提供的接口可使特定时钟域处于空闲状态,从而降低功耗。此外,它还可以在OS空闲循环的适当点提供能自动使DSP CPU和高速缓存处于空闲状态的机制。

2.降低引导时间的功耗—电源管理器包含一个钩子机制(hook mechanism),这使开发人员能够设定省函数,以便在引导时间实现自动调用。

3.电压及频率(V/F)调节—电源管理器提供的接口可使应用程序动态更改DSP内核的工作电压及频率。因此,应用程序可利用该特性根据相关的处理要求相应调整功耗。电源管理器API可设定应用中的电压是否应随同频率进行调节,以及在降压转换过程中是否可继续执行任务,转换时延由负载而定,有可能会较长;如果处理器在降压转换期间工作正常,则允许继续执行应用;此外,电源管理器还包含用于查询V/F设定点属性及时延的API。

4.睡眠模式—电源管理器包含的配置及运行时接口使开发人员可产生自定义睡眠模式,以便在非工作状态期间节省电能。

5.电源事件的注册及通知—为了调整整个应用中的V/F调节比例、睡眠模式以及其他事件,电源管理拥有一套记录及通知机制,以使诸如应用代码、外设驱动程序、打包的内容以及OS时钟模块能针对会影响到他们的特定事件进行记录,以便通知。这些电源事件如“即将更改 V/F 设定点”、“完成更改V/F 设定点”、“进入睡眠模式”、“从睡眠模式中唤醒”以及出现“电源故障”等。通知进程(notification process)是电源管理器的重要特性。当无需通知时可使用“未登记”功能。

策略实施

上面已经建立了提高电源效率的基础,下一步工作就应该确定开发高效率应用的策略,并充分利用OS中的部分方法及支持。

所建议的策略包括以下11个步骤。该策略具有可重复性:当无法满足电源管理目标,或者需要采用额外的运行时方法才能满足应用的电源预算时,就可重复这些步骤。

1. 从最初就考虑到电源效率;

2. 选择低功耗组件;

3. 对电源进行建模和估测,并进行相应的硬件测试;

4. 针对电源管理和测量设计具备钩子机制的硬件;

5. 构建可大幅提高工作效率的软件;

6. 启用简单的电源管理开/关机切换;

7. 在无电源管理的情况下也可先进入工作;

8. 重复开启“开机”特性,并测量功耗开销(payoff);

9. 开启代码生成优化功能、重置代码及数据,并调整“热点”监测;

10. 进行校准,以实现频率及电压的最低;

11. 激活并应用所有的电源管理特性。

范例:音频应用

选用现成的DSP评估板5509A EVM PLUS板作为测试平台,该评估板不仅支持V/F调节,还包含针对DSP内核与总体系统电源测量的钩子机制。

需要注意的是,EVM作为易于使用的评估平台,并未在出厂时提供最佳功耗配置。另外,在评估效果时应谨记由于其易于配置,所以EVM上测量的总体系统电源数量就应多于通常情况下部署的平台。EVM还能以DSP内核级与系统级两种方法测量各种技术的有效性。

步骤1无需解释。步骤2及4基本上都由这种特殊EVM完成,这充分表明了该平台的广泛适用性。步骤3(试验)在EVM上进行,目的是测量各种技术的效果(如片上与片外存取的内核及系统电源、DMA与CPU传输的比较、空闲外设及时钟域的作用等等)。

架构

应用范例如图2所示。音频信号经过采样通过多声道缓冲串行端口(McBSP)回放到DSP。DSP DMA引擎向McBSP输入或读出采样信号。立体声音频数据通过RxSplit任务分离为两个数据流,并在Processing Task中进行处理。DIP开关用于选择G726编码/解码处理或简单音量控制。两个声道随后在TxJoin任务中组合,然后输出至扬声器。

图2
图2:音频应用范例。

Control(控制)任务被周期性触发,以检查DIP开关以确定是否需要进行模式切换,如改变处理模式或进入睡眠状态。根据应用模式的不同,Control任务可能会检查CPU负载,如果合适还会更改V/F设定点。

与电源相关的关键设计决定包括:

1. 使用OS线程及阻塞原语(blocking primitive)使时钟空闲;

2. 使用DMA提高后台数据(background data)传输效率。只有在DMA块中完成传输后即中断CPU,而不是在每次从串行端口导入或读出数据采样时;

3. 使用共享的外部时钟控制串行端口(无需对串行端口进行重新编程,即可进行DSP CPU的频率调节);

4. 记录一次回叫,以便为编解码器驱动程序设定钩子机制,这样当应用进入深度睡眠模式时关断编解码器;

5. 在音频质量下降前使用校准功能恢复设定点频率(及电压);

6. 使用电源管理器的时钟适应功能,使周期函数以特定速率工作跟随频率的调节;

7. 在DSP再引导之间使用电源管理器“深度睡眠”接口。

本文结论

点击看大图
表1:节能结果。

上面的低功耗设计策略的总体效果总结如表1所示,其中:

模式#1为基准测量,全部使用片外代码;

模式#2消除所有片上代码,DSP级节电效果较小,但板级节电达到19%;

模式#3包括一些引导时间节电配置(如关闭DSP的CLKOUT信号、未用计时器的自动空闲配置以及关闭板上LED),以及在BIOS空闲环路中的闲置,从而可实现25%的DSP内核节电;

模式#4为设定点在1.4V的条件下降至144MHz时的功耗,在该模式下可进行音频处理,同时仍能满足实时最低要求,从而实现52%的DSP内核节电;

模式#5为应用处于待机模式下的功耗,该模式配置包括外部编解码器关断、设定点支持以最小电压最大频率快速启动驱动、DSP处于门控时钟深度睡眠模式,该模式下的待机功耗仅为361?W。

设计人员可根据特定应用的要求选择适用的技术。利用OS的这些支持功能,设计人员能够以低开销方便而可靠地提高应用的电源效率。本文讨论的电源优化策略是一种从嵌入式项目之初即可用于降低与调节应用功耗的通用模型。当测量功耗无法满足要求或需要采用额外的运行时技术时,上述策略可重复使用,先期步骤也可重复进行。

系统分类: 自由话题
用户分类: 摘要文学
标签: 无标签
来源: 整理
发表评论 阅读全文(310) | 回复(0)

0

关于投票
采用先进的设计流程加快系统级封装设计

在成本、密度和上市时间的激烈竞争中,大量以无线和消费为中心的IC和系统公司正转向系统级封装(SiP)设计以在竞争中获得优势。这些公司一方面在开发紧凑型、高性能、多功能产品方面面临诸多技术挑战,另一方面又处于快速变化的激烈竞争市场中,因此他们必须千方百计地降低产品成本、缩短产品的设计时间。

应时而生的SiP设计在这方面具有明显的优势——可以利用更少的空间提供更多的功能,并能减少设计周期。但要想发挥SiP设计的优势,EDA软件供应商必须开发出具有新功能的工具,并提供可扩展的设计方法和流程

理想的解决方案可以帮助SiP设计团队成员在IC环境中创建裸片的抽象,在IC和基底设计环境中进行RF设计,在封装/PCB集成设计环境中提供封装/板级协同设计。

为什么用SiP?

虽然SiP设计和系统级芯片(SoC)设计哪个更有优势尚无定论,但这是两种互相不可替代的技术。事实上许多时候,IC公司会发现SiP可以实现SoC不能做到的事情。重要的是,SiP可以通过包含绑定线、倒装芯片、堆叠器件、嵌入式器件、MEMS和多层封装等技术的组合,实现很高的功能密度(图1)。因此设计师可以用SiP实现技术上用SoC不可行或以前用PCB实现的子系统和系统。

另外,SiP技术能够在互连层实现更低的功耗和噪声,在混合和匹配IC技术上有更大的灵活性,可以通过内置无源器件减少电路板大小和成本,并能增加封装强度,减少使用的层数。相对基于SoC的现有解决方案而言,SiP模块开发速度会更快。举例来说,使用多种不同技术的IC、分立元件和射频结构的2.5G蜂窝电话用SiP技术可以在数个月内开发出来。而要将这些功能集成进SoC的话,成本可能非常昂贵,技术上无法实现,或者错过最佳的市场时机。

向主流技术发展

如今SiP技术还是由专家使用一些专用工具和技术实现的。虽然这些"专家级工程"方法可以满足刚开始的先进产品要求,比如将存储器集成进手机芯片,但它们的集成度、自动化程度或先进性不足以提供最新的无线便携式消费设备所要求的高性能SiP模块。

问题在于,缺乏参考流程,概念可行性耗时而且经常不够精确,设计链间的协作性很差。为了通过设计周期的缩短改善产品上市时间,SiP设计必须从专家技术发展为主流设计技术,即这种技术必须具有自动化程度、集成度、可靠性和可重复性。需要新工具功能的三个明显的领域是系统级协同设计、先进封装和RF模块设计。

点击看大图
图1:利用封装作为集成架构整合一个或多个IC和分立、嵌入式与其它封装的器件,可以成功创建模块并用作标准器件

系统级协同设计

虽然目前有各种不同级别的协同设计解决方案可用于单芯片器件设计,但SiP技术需要比市场上的任何方案更多的功能和更高的集成度。一个原因是,根据定义就可以知道SiP的电气复杂度高得多。更多的裸片吸收更多的电流,而更快的裸片更容易受时序和电磁噪声效应的影响。

SiP的电源供给也比单裸片封装设计复杂得多,因为多裸片共享封装基底内的电源网格,一些裸片甚至直接与另外一个裸片共享电源。为了通过基底向裸片提供干净的电源,需要尽量减少直流电压降及随频率变化的阻抗。随着裸片I/O数量的增加,并发开关噪声(SSN)成为影响性能的主要因素,同时也会带来信号与电源完整性挑战。

为了满足这些方面的挑战要求,SiP设计师必须管理所有相关设计架构上的设计元件之间的物理、电气和制造接口,即整个系统互连。总之,设计师需要能够获取整个系统连接,然后将连接接口传递给数字IC、定制IC、SiP和PCB等不同的设计领域。

这对目前的设计工具和方法来说要求很苛刻。必须在设计开始就大胆创新。一种解决方案是创建抽象或虚拟的系统互连(VSIC)模型,帮助设计师可视化和创建系统级或SiP级互连(从I/O缓冲到I/O缓冲)原型。设计师使用VSIC模型可以成功执行多架构层次的设计优化和折衷。

设计师可以平衡时序、信号和电源完整性要求。他们可以试验信号方案和拓扑,然后通过仿真验证时序、噪声预算,最终检查误码率(BER)是否满足要求。还可以通过创建电源供给系统原型验证到内核和焊盘环的供电,确保没有SSN问题。

在领域相互交叉的SiP协同设计流程的帮助下,设计师可以创建更小的芯片,因为可以优化I/O焊盘环以形成更小的封装外形。他们还可以降低功耗、减少电磁噪声,以实现更快的器件性能,同时减少PCB层数,使PCB成本更低和更容易实现。

这种协同设计过程还解决了令人困扰的“谁来设计SiP”的问题,因为它可以确保所用方法具有足够的灵活性以允许不同设计领域的成员领导。有了真正的协同设计流程,无论是用哪种实现架构驱动SiP设计-IC团队架构师、技术行销人员、封装架构师或系统PCB架构师-都有执行设计的能力。

先进封装技术向三维发展

为了提高功能密度,SiP设计可以在封装内集成复杂的三维结构。封装种类包括堆叠的绑定线裸片、堆叠在倒装芯片裸片上的绑定线裸片、裸片到裸片直接相连、使用中间基底支持倒装芯片的背靠背堆叠以及包括多级封装在内的其它复杂组合。

点击看大图
图2:对跨越三个差分对的电场的三维描述;SiP设计要求三维的电气与物理描述

由于堆叠方法仅受设计师或制造商想象力的限制,因此如果要成功连接和建模绑定线、凸块和球,那么必须完全了解它们的三维形态。然而,在目前的二维工具、二维规则和简化的电气模型假设条件下是不可能实现的。SiP实现要求从三维的角度观察封装,并需要建立三维规则和开发新的三维工具。

三维结构的电子模型本身也会带来许多问题。设计师不能再采取PCB设计中常用的正交/对角走线方法了。采用这种方法一般有个前提条件,即存在理想的电源平面,从而允许用户简化走线模型。由于SiP设计中常用“瑞士干酪”平面,因此需要将平面的精确模型与走线结合起来才能更好地理解SSN和返回路径。

在电源供电和全波抽取领域中还必须改进性能和容量。供电系统中的直流电压下降和交流阻抗必须被建模才能优化去耦电容。对于工作在更高频率(比如3GHz)的器件,还需要采用全波技术。如今这样的技术执行起来很慢,执行一次抽取常常需要数天的时间,因此更加突出了工具改进的必要性。

SiP设计中的另外一个关键挑战是如何有效散发大量的热能,因为这些热量会导致芯片上产生热点以及焊接点和裸片连接处的热应力效应。SiP实现要求在制造前对这些电气和热效应进行验证。能够将电气和热模型引进IC设计领域,以便IC设计工具能够执行更接近实际边界条件的精确分析的设计流程对成功的SiP设计来说是非常重要的。

RF模块设计

RF模块必须在RFIC设计过程中得到设计和验证。为了实现这一目标,RFIC和封装设计这两个不同的领域必须得到统一。为了实现这一点,设计师需要能够在IC和RF模块之间做出折衷。例如,是否应该将电感放置在芯片中有重要价值的地方或放在基底上?如果没有完整设计的描述,像这类问题是无法被描述、仿真和解决的。

用来为芯片和模块创建单个原理图的设计方案是很好的起点。设计师随后就能从芯片和基底抽取寄生参数,然后将这些寄生参数返注回原理图进行仿真。

另外,在RFIC设计中常见的一些功能在RF模块设计工具中也需要用到。例如,用于基底级RF无源器件的参数化单元(P-cell)在定制IC工具中是标准配置,但在目前领先的封装设计工具中却没有。因此将它们集成进来是任何SiP解决方案必须要做的一部分工作。

本文小结

总之,SiP设计能让制造商将许多IC和封装的组装与测试技术结合起来,创建出具有最优成本、尺寸和性能的高集成度产品。EDA软件供应商正在开发先进的技术来帮助SiP设计团队应对各种挑战,特别是在协同设计、先进封装和RF模块设计领域的挑战。最近SiP设计团队和EDA软件提供商在这方面都取得了很多进展,因为SiP技术的前景-降低成本、缩短上市时间、减小外形尺寸和降低功耗-是如此的引人注目而无法被忽视。

系统分类: 自由话题
用户分类: 摘要文学
标签: 无标签
来源: 整理