时间:2022-03-09 23:05:44
导言:作为写作爱好者,不可错过为您精心挑选的10篇低功耗设计论文,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
集成电路发展的见证者
时至今日,由IEEE(国际电气电子工程师协会)举办的ISSCC已经走过了57个年头。集成电路历史上一些里程碑式的创新大都会在ISSCC上首次公布:从1962年仙童公司的TTL(晶体管-晶体管逻辑)电路开辟了数字电路的集成时代,到1968年泰克公司的集成放大器将模拟电路带入集成时代,再到1974年英特尔公司的8位处理器开启了计算普及之门;更不用说多核、高性能CPU、低功耗技术、视频处理器、可编程DSP(数字信号处理器)、WiFi、蓝牙、CCD图像传感器等人们耳熟能详的信息技术。
本次会议设有10个议题:低功耗数字技术、高性能数字技术、存储器、模拟、射频、数据转换器、无线、有线、图像/显示/微电子机械系统/医疗和技术方向。
根据ISSCC公布的论文统计,来自世界多个国家和地区的半导体企业和高校等研究机构共向大会提交了638篇论文,其中有210篇被大会录用。这两个数字分别略高于2009年的582篇和203篇,稍低于2008年的656篇和237篇。从地域上看,北美和欧洲的论文数在国际金融危机最为严重的2008年也处于谷底,分别为78篇和52篇,而今年则达到86篇和59篇。从机构分布上看,在会议上达到或超过4篇的共有15家,其中英特尔以13篇位居其首,而产业界和学术界分别以51%和49%的比例在论文数量上平分秋色。
从注册观众上,今年的观众数量较2009年提高了一成。集成电路产业历来是整个IT产业的风向标,此次会议在论文和观众数量上都有所回升,这对于整个IT产业是个好消息。
我国内地是在2005年、2006年和2008年分别由新涛科技(上海)有限公司、中科院半导体所和清华大学实现了企业、研究机构和高校在ISSCC上论文的零突破。
高性能处理器龙争虎斗
高性能处理器依旧是ISSCC的热门之一,英特尔与AMD、IBM与Sun这两对“冤家对手”,各自在会议上亮出自家的“镇山之宝”。
32nm处理器成为英特尔与AMD比武的擂台。英特尔在其《Westmere:32nm IA处理器家族》的论文中,披露了32nm 处理器Westmere系列的技术细节。Westmere在性能上从45nm处理器Nehalem的4内核/8线程提升到6内核/12线程,L3 缓存从8MB提升到12MB,晶体管数量则从7.31亿个增加到11.7亿个。得益于32nm制程技术,6个内核的Westmere的芯片面积(240mm2)甚至略小于4个内核的Nehalem(262mm2)。Westmere还在电源输入端引入了反谐振电路和LC滤波器,以降低电源噪声对QPI总线和DDR时钟的干扰。
AMD没有出现在ISSCC统计的论文达到或超过4篇的统计名单中,它在《32nm SOI CMOS下实现的x86-64内核》的论文中介绍了未来AMD 32nm处理器内核的一些特征:采用SOI技术,主频超过3GHz,单个内核的功耗控制在2.5W~25W之间。
在RISC处理器上,IBM了性能较之上代产品POWER 6有近5倍提升的处理器POWER 7,这种计算性能的大幅提升,在当今处理器的更新换代中还是罕见的。POWER 7拥有8个内核,每个内核含4个线程。POWER 7采用45nm SOI工艺,它将原有外置的L3缓存集成到芯片上,每个内核拥有4MB的L3缓存,整个芯片的L3缓存高达32MB,芯片面积为467mm2。
被Oracle纳入旗下的Sun在会上介绍了UltraSPARC家族的下一代产品的技术特征:采用40nm制程、16内核、128线程。这一信息的披露给UltraSPARC的用户带来些许的安慰,但Sun能否将其付诸实施,那还要Oracle说了算。
英特尔还在会上介绍了采用SoC(片上系统)技术的48内核处理器Message passing。这款被称之为“SCC”(单芯片云计算)的处理器,除了在数据吞吐方面独具匠心外,其工作频率和电压分别设有28档和8档,可以分别独立调节,从而有效地降低了功耗。
综观高端处理器设计,各家都有自己的独门绝技,而各家共同关注的依旧是在降低功耗的同时通过增加内核数量来提升整体性能。
低功耗处理器跨越1GHz门槛
与高端处理器将对性能的追求放在首位不同,降低功耗成为低功耗处理器的第一诉求。如今,伴随着智能手机、消费电子产品以及其他嵌入式应用的发展,性能的提升已经成为低功耗处理器亟待解决的问题。
以未来智能手机的需求为例,它要求具有主频到达GHz量级,高达100Mbps的数据传输率,而且智能手机的总功耗应该限制在1W水平上。通常,功耗和计算性能如同鱼与熊掌一样不可兼得。于是,一些创新的技术被引入低功耗处理器的设计之中。
英特尔在本次ISSCC上介绍了一种采用45nm工艺的自适应处理器原型。这种处理器内核应用错误诊断和错误恢复电路,实现了降低电压和提高主频两个目的,该处理器在0.8伏这个超低的、接近门限电压的工作电压下,性能提高了22%。与此同时,该芯片1.3GHz的主频也使得低功耗处理器的主频突破了1GHz的门槛。
1.设计的意义
本次设计的温度采集报警系统是一种能够长期自动工作的设备,它使用的电源为电池也可为充电电池,因此其功耗的大小直接决定了其使用的时间的长短。而且一般情况下这类系统的工作环境都比较恶劣,因此,对该系统进行低功耗设计不仅便于延长使用寿命,便与安装、管理与维护,而且由于该系统具有其他无人值守自动设备相似的特点,对该系统进行低功耗设计的方式方法可以应用到其他设计中,这具有非常重要的社会效益和经济效益。本设计的应用性比较强,如稍加改装可做实验室温湿度监控系统、仓储温湿度监控系统、工业环境监控系统等。
2.系统的设计
2.1总体设计方案
本系统对温度数据进行采集,温度传感器通过某种关系的换算,就可以得到温度与输出电压的关系,单片机通过模拟口采集得到传感器输出电压,通过设置的参考电压就可以得到传感器的输入带电压,再通过一定关系的转换就获得温度参数,将得到的温度参数进行分析后进行相应的处理,比如显示或者报警。另外系统通过键盘输入来完成对报警温度的上、下限设置;通过显示电路将得到的数据显示出来;当温度超过上限和下限的时候,系统进行报警,报警通过驱动一个蜂鸣器来实现。
本设计的系统硬件部分主要包括CPU处理模块、传感器采集模块、键盘输入模块、电源及复位模块[1]、报警模块[2]、显示模块[3]以及串口通信模块等。整个系统的原理框图如图2-1所示:
2.2设计的基本思路
2.2.1系统的低功耗设计
一个单片机系统的功耗受多因素的影响,主要有系统的技术指标,芯片和元器件的选择,及系统的工作方式等。本次设计的温度采集报警系统是作为工业用表,故采用干电池或锂电池供电,而电池的容量有限,因此本系统的功耗问题成为设计的重点问题。具体设计方案如下:
(1)选择低功耗的CPU
在一个系统中CPU是核心控制部分,主要工作均由其完成。其能耗也是整个系统中最大的一部分。目前51系列单片机[4]技术成熟,且其功能强大,性价比高。但相对MSP430单片机来说51系列的接口功能有限,外设电路较复杂,尤其是其功耗较大(功耗是MSP430系列的3倍左右),所以51系列不适合用在低功耗系统中。因此,本系统选用TI公司的MSP430F149型16位单片机[5],该单片机的功能十分强大、开发方便而且其功耗极低是市场上倍受好评、应用最多的一类低功耗单片机。
(2)选择低的供电电压[6]
在单片机控制系统中,系统的功耗往往和电源电压的大小成一定比例关系,电源电压高,系统的功耗相应的也会增大,因此在功耗要求比较严格的低功耗温度采集报警系统中,在保证功能的前提下,尽量选择低的电源电压。本系统中选用三节干电池4.5V供电。
(3)选择低功耗器件
除选用低功耗的CPU外,其余器件也应为低功耗型,如选用 COMS器件,它最大的优点是微功耗(静态功耗几乎为零),其次是输出逻辑电平范围大,因而抗干扰能力强,所以 COMS 器件是低功耗电路和便携式仪器的最佳搭档。同时器件参数也应低功耗。本系统中用的元器件都具有低压供电、低功耗的性能。如MAX6613型温度传感器[7] [8]。
(4)系统低功耗的运行管理
在软件编程时选用合适的工作模式,合理利用单片机提供的闲置、掉电工作方式,尽量避免循环、查询、动态扫描等工作方式;对电路中的其它用电模块进行电源管理,即根据工作需要才接通相应模块的电源。
2.2.2 系统的抗干扰设计
目前, 许多智能仪表均使用微机(包括单片机)作为控制系统。在使用时,不可避免地会受到电磁干扰。电磁干扰不但会降低仪表的使用精度, 而且常常使系统失灵或死机。因此, 抗干扰设计[7]是智能仪表设计的重要部分。本系统中抗干扰设计从两方面来考虑,一是在硬件设计上采取适当的措施来抑制和消除干扰, 例如合理的屏蔽、隔离、滤波、接地、布线等。另一方面是从系统软件设计上采取一定措施来提高系统的抗干扰能力, 即使系统受到干扰, 也能自动地快速恢复正常工作。
3.总结及展望
温度的测量控制广泛应用于人们的生产和生活中,特别是在冶金、化工、建材、食品、机械、石油等工业中具有举足重轻的作用。结合超低功耗技术,本文运用多种技术手段,包括电子电路技术,温度传感器技术,数据采集技术,单片机控制技术及数据传输等,综合采用电子、控制等多方面的知识设计了低功耗温度采集报警系统。该系统以MAX6613温度传感器为温度采集器,MSP430F149单片机为主控芯片,实现温度的自动采集报警。本设计仅是对低功耗温度采集报警系统的一个探索性方案,经开发还可以在本系统的基础上发展通过互联网络来实现远程操控的温度采集报警系统或其他系统等,具有很大的开发潜力。
参考文献:
[1]秦龙.MSP430单片机应用系统开发典型实例[M].北京:中国电力出版社,2005:119~141.
[2]王巍,蒋大明.基于MSP430F449单片机的超温报警系统[J].中国科技信息,2006(3):10、12.
[3]杨凌志,张爱玲.单片机的键盘显示系统[J].电脑开发与应用,2004,17(7):14~15.
[4]毛谦敏.单片机原理及应用系统设计[M].国防工业出版社,2005,
125~149.
[5]秦建民,曾小平.MSP430F149单片机在便携式智能仪器中的应用[J].微计算机信息,2002,18(12):43~44.
引言
从20世纪80年代初到90年代初的10年里,微电子领域的很多研究工作都集中到了数字系统速度的提高上,现如今的技术拥有的计算能力能够使强大的个人工作站、复杂实时语音和图像识别的多媒体计算机的实现成为可能。高速的计算能力对于百姓大众来说是触指可及的,不像早些年代那样只为少数人服务。另外,用户希望在任何地方都能访问到这种计算能力,而不是被一个有线的物理网络所束缚。便携能力对产品的尺寸、重量和功耗加上严格的要求。由于传统的镍铬电池每磅仅能提供20W.h的能量,因而功耗就变得尤为重要。电池技术正在改进,每5年最大能将电池的性能提高30%,然而其不可能在短期内显著地解决现在正遇到的功耗问题。
虽然传统可便携数字应用的支柱技术已经成功地用于低功耗、低性能的产品上,诸如电子手表、袖珍计算器等等,但是有很多低功耗、高性能可便携的应用一直在增长。例如,笔记本计算机就代表了计算机工业里增长最快的部分。它们要求与桌上计算机一样具有同样的计算能力。同样的要求在个人通信领域也正在迅速地发展,如采用了复杂语音编解码算法和无线电调制解调器的带袖珍通信终端的新一代数字蜂窝网。已提出的未来个人通信服务PCS(Personal Communication Services)应用对这些要求尤其明显,通用可便携多媒体服务是要支持完整的数字语音和图像辨别处理的。在这些应用中,不仅语音,而且数据也要能在无线链路上传输。这就为实现任何人在任何地方的任何时间开展任何想要的业务提供了可能。但是,花在对语音、图像的压缩和解压上的功耗就必须附加在这些可便携的终端上。确实,可便携能力已经不再明显地和低性能联系在一起了;相反,高性能且可便携的应用正在逐步得到实现。
当功率可以在非便携环境中获得时,低功耗设计的总理也变得十分关键。直到现在,由于大的封装、散热片和风扇能够轻而易举地散掉芯片和系统所产生的热,其功耗还未引起多大的重视。然而,随着芯片和系统尺寸持续地增加,要提供充分的散热能力就必须付出重要代价,或使所提供的总体功能达到极限时,设计高性能、低功耗数字系统方法的需求就会变得更为显著。幸好,现在已经发展了许多技术来克服这些矛盾。
由于可以高度集成,并具有低功耗、输入电流小、连接方便和具有比例性等性质,CMOS逻辑电路被认为是现今最通用的大规模集成电路技术。下面研究CMOS集成电路的功耗组成,概述实现集成电路——SoC(System on Chip)系统的低功耗设计的诸多方法。目的在于揭示当今电子系统结构复杂度、速度和其功耗的内在联系,在及在数字电子系统设计方向上潜在的启示。
1 CMOS集成电路功耗的物理源
要研究SoC的低功耗设计,首先要物理层次上弄清该集成电路的功耗组成,其次,才能从物理实现到系统实现上采用各种方法来节省功耗,达到低功耗设计的目的。图1为典型CMOS数字电路的功耗物理组成。
(1)动态功耗
动态功耗是由电路中的电容引起的。设C为CMOS电路的电容,电容值为PMOS管从0状态到H状态所需的电压与电量的比值。以一个反相器为例,当该电压为Vdd时,从0到H状态变化(输入端)所需要的能量是CVdd2。其中一半的能量存储在电容之中,另一半的能量扩展在PMOS之中。对于输出端来说,它从H到0过程中,不需要Vdd的充电,但是在NMOS下拉的过程中,会把电容存储的另一半能量消耗掉。如果CMOS在每次时钟变化时都变化一次,则所耗的功率就是CBdd2f,但并不是在每个时钟跳变过程之中,所有的CMOS电容都会进行一次转换(除了时钟缓冲器),所以最后要再加上一个概率因子a。电路活动因子a代表的是,在平均时间内,一个节点之中,每个时钟周期之内,这个节点所变化的几率。最终得到的功耗表达式为:Psw=aCVdd2f。
(2)内部短路功耗
CMOS电路中,如果条件Vtn
一般来说,内部短路电流功耗不会超过动态功耗的10%。而且,如果在一个节点上,Vdd
(3)静态漏电功耗
静态漏电掉的是二极管在反向加电时,晶体管内出现的漏电现象。在MOS管中,主要指的是从衬底的注入效应和亚门限效应。这些与工艺有关,而且漏电所造成的功耗很小,不是考虑的重点。
表1为CMOS集成电路中主要的耗电类型。
类
型
公 式
比 率
动态功耗(switching power)
Psw=aCVdd2f
70%~90%
内部短路功耗(internal short-circuit power)
Pint=IintVdd
10%~30%
静态漏电功耗(static leakage power)
Pleak=IleakVdd
总功耗(total power)
Ptotal=Psw+Pint+Pleak
100%
(4)小结
通过设计工艺技术的改善,Pint和Pleak能被减小到可以忽略的程度,因而Psw也就成为功耗的主要因素。后面所做的功耗优化大部分是围绕这一个公式来进行的。对于SoC来说,所有的方法都是围绕着动态功耗来做文章的,因为在电路信号变化时,功耗消耗主要在电路中电容的充放电过程。如果从各个层次、各个方面尽量减少电路的充放电,将是我们关心的主题。
2 降低集成电路SoC功耗的方法
功耗对于一个便携式SoC数字系统来说尤为重要。事实上,很多便携式SoC系统的设计,是先进行功耗分析,由功耗分析的结果再来划分设计结构。可以说,功耗将可能决定一切。现在要做的是,根据功耗分析的结果,评判SoC结构,改进设计,优化方案。
SoC系统的功耗所涉及的内容十分广泛,从物理实现到系统实现都可以采用各种方法来节省和优化功耗。通过对国外大量文献的查阅,我们得到了常用的实现低功耗设计的各种较为有效的方法,如表2所列。
表2 常用实现低功耗的各种方法
类 型
采用方法
效
果
行为级(系统级)
Concurrency memor
几倍
软件代码
软件优化
32.3%
功率管理
Clock控制
10%~90%
RTL级
结构变换
10%~15%
综合技术
合成与分解逻辑
15%
综合技术
映射
门级优化
20%
20%
布局
布局优化
20%
(1)系统级功耗管理
这一部分实际上是动态功耗管理。主要做法是在没有操作的时候(也就是在SoC处于空闲状态的时候),使SoC运作于睡眠状态(只有部分设备处于工作之中);在预设时间来临的时候,会产生一个中断。由这个中断唤醒其它设备。实际上,这一部分需要硬件的支持,如判断,周期性的开、关门控时钟(gate clock)等。
(2)软件代码优化
软件代码优化是针对ARM嵌入式处理器而言的。对于编译器来说,所起的使用不到1%,而对于代码的优化则可以产生高达90%的功耗节省。Simunic等人曾分别做过用各种针对ARM处理器的编译器进行的试验。比此的实验结果发展,风格比较好的代码产生的效果远比用ARM编译器优化的效果好。
(3)Clock控制
这是在ASIC设计中行之有效的方法之一。如果SoC芯片在正常工作,有很大一部分模块(它们可能是用于一些特殊用途中,如调试Debug、程序下载等)是乖于空闲状态的,这些器件的空运作会产生相当大的功耗。这一部分应使用时钟控制,即clock enable & disable。
(4)RTL级代码优化
与软件相似,不同的RTL(Register Transfer Level,寄存器传输级)代码,也会产生不同的功耗,而且RTL代码的影响比软件代码产生的影响可能还要大。因为,RTL代码最终会实现为电路。电路的风格和结构会对功耗产生相当重要的影响。
RTL级代码优化主要包括:
①对于CPU来说,有效的标准功耗管理有睡眠模式和部分未工作模块掉电。
②硬件结构的优化包括能降低工作电压Vdd的并行处理、流水线处理以及二者的混合处理。
③降低寄存电容C的片内存储器memory模块划分。
④降低活动因子a的信号门控、减少glitch(毛刺)的传播长度、Glitch活动最小化、FSM(有限状态机)状态译码的优化等。
⑤由硬件实现的算法级的功耗优化有:流水线和并行处理、Retiming(时序重定)、Unfolding(程序或算法的展开)、Folding(程序或算法的折叠)等等基本方法以及其组合。
(5)后端综合与布线优化
既然SoC的功耗与寄生电容的充放电有很大的关系,作为后端综合与布线,同样也可采取一些措施来减少寄存器电容。可以优化电路,减少操作(电路的操作),选择节能的单元库,修改信号的相关关系,再次综合减少毛刺的产生概率。
实际上,这一部分与使用的工具有关。与软件部分有相同之处,后端综合与布线同软件的编译差不多。软件编译的结果是产生可执行的机器代码;而RTL的综合与布线是把RTL代码编译成真实的电路。但是,后端综合与布线优化比较编译优化有更好的效果。这是因为一段RTL代码所对应的电路是可以有多种形式的;同时现有些编译器会根据设计者提供的波形,智能地修改电路(前提是最终电路的效果还是一样的),编译器就会进行相关的优化。但是后端综合的优化与RTL级代码优化和时钟控制相比,同样的RTL级与时钟优化所产生的影响要远大于用编译工具所产生的影响。
(6)功耗的精确计算
后端综合与布线工具不但可以根据基本单元提供的功耗参数进行优化,还可以根据这些参数估算出整个SoC的功耗。正因为有这样一些工具,使我们可以精确地知道我们所设计的是否达到设计要求。万一设计功耗不符合总体要求,则可能要求从系统级到物理综合布线都要做出检查与分析,做出可能的改进,尽可能地减少功耗以达到设计要求。
(7)小结
从上面的各种降低以及估算功耗的方法可以看出,SoC系统的拉耗优化涉及到从物理实现到系统实现的方方面面,是芯片设计中一个十足的系统工程。可以说,功耗可以决定一切。
结语
本文首先分析了CMOS集成电路的功耗物理组成,得到了其主要功耗成分。其次,以该主要功耗成分数学表达式为指导,突出了SoC低功耗设计的各种级别层次的不同方法。不管是现在还是将来,该领域的重要性将会日益显著。在下面的一些发展方向还将会有较大的发展:
①实现SoC系统设计的变换以及映射技术的进一步探索。
②将各种低功耗设计手段按照各性质最佳综合起来,以便使用基于人工智能的技术(如遗传算法和启发式算法等等)来研究。
③发展以实现低功耗为目的CPU指令程序的改写技术,以将其扩展到复杂SoC系统的设计中。
引言
从20世纪80年代初到90年代初的10年里,微电子领域的很多研究工作都集中到了数字系统速度的提高上,现如今的技术拥有的计算能力能够使强大的个人工作站、复杂实时语音和图像识别的多媒体计算机的实现成为可能。高速的计算能力对于百姓大众来说是触指可及的,不像早些年代那样只为少数人服务。另外,用户希望在任何地方都能访问到这种计算能力,而不是被一个有线的物理网络所束缚。便携能力对产品的尺寸、重量和功耗加上严格的要求。由于传统的镍铬电池每磅仅能提供20W.h的能量,因而功耗就变得尤为重要。电池技术正在改进,每5年最大能将电池的性能提高30%,然而其不可能在短期内显著地解决现在正遇到的功耗问题。
虽然传统可便携数字应用的支柱技术已经成功地用于低功耗、低性能的产品上,诸如电子手表、袖珍计算器等等,但是有很多低功耗、高性能可便携的应用一直在增长。例如,笔记本计算机就代表了计算机工业里增长最快的部分。它们要求与桌上计算机一样具有同样的计算能力。同样的要求在个人通信领域也正在迅速地发展,如采用了复杂语音编解码算法和无线电调制解调器的带袖珍通信终端的新一代数字蜂窝网。已提出的未来个人通信服务PCS(PersonalCommunicationServices)应用对这些要求尤其明显,通用可便携多媒体服务是要支持完整的数字语音和图像辨别处理的。在这些应用中,不仅语音,而且数据也要能在无线链路上传输。这就为实现任何人在任何地方的任何时间开展任何想要的业务提供了可能。但是,花在对语音、图像的压缩和解压上的功耗就必须附加在这些可便携的终端上。确实,可便携能力已经不再明显地和低性能联系在一起了;相反,高性能且可便携的应用正在逐步得到实现。
当功率可以在非便携环境中获得时,低功耗设计的总理也变得十分关键。直到现在,由于大的封装、散热片和风扇能够轻而易举地散掉芯片和系统所产生的热,其功耗还未引起多大的重视。然而,随着芯片和系统尺寸持续地增加,要提供充分的散热能力就必须付出重要代价,或使所提供的总体功能达到极限时,设计高性能、低功耗数字系统方法的需求就会变得更为显著。幸好,现在已经发展了许多技术来克服这些矛盾。
由于可以高度集成,并具有低功耗、输入电流小、连接方便和具有比例性等性质,CMOS逻辑电路被认为是现今最通用的大规模集成电路技术。下面研究CMOS集成电路的功耗组成,概述实现集成电路——SoC(SystemonChip)系统的低功耗设计的诸多方法。目的在于揭示当今电子系统结构复杂度、速度和其功耗的内在联系,在及在数字电子系统设计方向上潜在的启示。
1CMOS集成电路功耗的物理源
要研究SoC的低功耗设计,首先要物理层次上弄清该集成电路的功耗组成,其次,才能从物理实现到系统实现上采用各种方法来节省功耗,达到低功耗设计的目的。图1为典型CMOS数字电路的功耗物理组成。
(1)动态功耗
动态功耗是由电路中的电容引起的。设C为CMOS电路的电容,电容值为PMOS管从0状态到H状态所需的电压与电量的比值。以一个反相器为例,当该电压为Vdd时,从0到H状态变化(输入端)所需要的能量是CVdd2。其中一半的能量存储在电容之中,另一半的能量扩展在PMOS之中。对于输出端来说,它从H到0过程中,不需要Vdd的充电,但是在NMOS下拉的过程中,会把电容存储的另一半能量消耗掉。如果CMOS在每次时钟变化时都变化一次,则所耗的功率就是CBdd2f,但并不是在每个时钟跳变过程之中,所有的CMOS电容都会进行一次转换(除了时钟缓冲器),所以最后要再加上一个概率因子a。电路活动因子a代表的是,在平均时间内,一个节点之中,每个时钟周期之内,这个节点所变化的几率。最终得到的功耗表达式为:Psw=aCVdd2f。
(2)内部短路功耗
CMOS电路中,如果条件Vtn<Vin<Vdd-|Vtp|(其中Vtn是NMOS的门限电压,Vtp是PMOS的门限电压)成立,这时在Vdd到地之间的NMOS和PMOS就会同时打开,产生短路电流。在门的输入端上升或者下降的时间比其输出端的上升或者下降时间快的时候,短路电流现象会更为明显。为了减少平均的短路电路,应尽量保持输入和输出在同一个沿上。
一般来说,内部短路电流功耗不会超过动态功耗的10%。而且,如果在一个节点上,Vdd<Vtn+|Vtp|的时候,短路电流会被消除掉。
(3)静态漏电功耗
静态漏电掉的是二极管在反向加电时,晶体管内出现的漏电现象。在MOS管中,主要指的是从衬底的注入效应和亚门限效应。这些与工艺有关,而且漏电所造成的功耗很小,不是考虑的重点。
(4)小结
通过设计工艺技术的改善,Pint和Pleak能被减小到可以忽略的程度,因而Psw也就成为功耗的主要因素。后面所做的功耗优化大部分是围绕这一个公式来进行的。对于SoC来说,所有的方法都是围绕着动态功耗来做文章的,因为在电路信号变化时,功耗消耗主要在电路中电容的充放电过程。如果从各个层次、各个方面尽量减少电路的充放电,将是我们关心的主题。
2降低集成电路SoC功耗的方法
功耗对于一个便携式SoC数字系统来说尤为重要。事实上,很多便携式SoC系统的设计,是先进行功耗分析,由功耗分析的结果再来划分设计结构。可以说,功耗将可能决定一切。现在要做的是,根据功耗分析的结果,评判SoC结构,改进设计,优化方案。
SoC系统的功耗所涉及的内容十分广泛,从物理实现到系统实现都可以采用各种方法来节省和优化功耗。通过对国外大量文献的查阅,我们得到了常用的实现低功耗设计的各种较为有效的方法,
(1)系统级功耗管理
这一部分实际上是动态功耗管理。主要做法是在没有操作的时候(也就是在SoC处于空闲状态的时候),使SoC运作于睡眠状态(只有部分设备处于工作之中);在预设时间来临的时候,会产生一个中断。由这个中断唤醒其它设备。实际上,这一部分需要硬件的支持,如判断,周期性的开、关门控时钟(gateclock)等。
(2)软件代码优化
软件代码优化是针对ARM嵌入式处理器而言的。对于编译器来说,所起的使用不到1%,而对于代码的优化则可以产生高达90%的功耗节省。Simunic等人曾分别做过用各种针对ARM处理器的编译器进行的试验。比此的实验结果发展,风格比较好的代码产生的效果远比用ARM编译器优化的效果好。
(3)Clock控制
这是在ASIC设计中行之有效的方法之一。如果SoC芯片在正常工作,有很大一部分模块(它们可能是用于一些特殊用途中,如调试Debug、程序下载等)是乖于空闲状态的,这些器件的空运作会产生相当大的功耗。这一部分应使用时钟控制,即clockenable&disable。
(4)RTL级代码优化
与软件相似,不同的RTL(RegisterTransferLevel,寄存器传输级)代码,也会产生不同的功耗,而且RTL代码的影响比软件代码产生的影响可能还要大。因为,RTL代码最终会实现为电路。电路的风格和结构会对功耗产生相当重要的影响。
RTL级代码优化主要包括:
①对于CPU来说,有效的标准功耗管理有睡眠模式和部分未工作模块掉电。
②硬件结构的优化包括能降低工作电压Vdd的并行处理、流水线处理以及二者的混合处理。
③降低寄存电容C的片内存储器memory模块划分。
④降低活动因子a的信号门控、减少glitch(毛刺)的传播长度、Glitch活动最小化、FSM(有限状态机)状态译码的优化等。
⑤由硬件实现的算法级的功耗优化有:流水线和并行处理、Retiming(时序重定)、Unfolding(程序或算法的展开)、Folding(程序或算法的折叠)等等基本方法以及其组合。
(5)后端综合与布线优化
既然SoC的功耗与寄生电容的充放电有很大的关系,作为后端综合与布线,同样也可采取一些措施来减少寄存器电容。可以优化电路,减少操作(电路的操作),选择节能的单元库,修改信号的相关关系,再次综合减少毛刺的产生概率。
实际上,这一部分与使用的工具有关。与软件部分有相同之处,后端综合与布线同软件的编译差不多。软件编译的结果是产生可执行的机器代码;而RTL的综合与布线是把RTL代码编译成真实的电路。但是,后端综合与布线优化比较编译优化有更好的效果。这是因为一段RTL代码所对应的电路是可以有多种形式的;同时现有些编译器会根据设计者提供的波形,智能地修改电路(前提是最终电路的效果还是一样的),编译器就会进行相关的优化。但是后端综合的优化与RTL级代码优化和时钟控制相比,同样的RTL级与时钟优化所产生的影响要远大于用编译工具所产生的影响。
(6)功耗的精确计算
后端综合与布线工具不但可以根据基本单元提供的功耗参数进行优化,还可以根据这些参数估算出整个SoC的功耗。正因为有这样一些工具,使我们可以精确地知道我们所设计的是否达到设计要求。万一设计功耗不符合总体要求,则可能要求从系统级到物理综合布线都要做出检查与分析,做出可能的改进,尽可能地减少功耗以达到设计要求。
(7)小结
从上面的各种降低以及估算功耗的方法可以看出,SoC系统的拉耗优化涉及到从物理实现到系统实现的方方面面,是芯片设计中一个十足的系统工程。可以说,功耗可以决定一切。
结语
本文首先分析了CMOS集成电路的功耗物理组成,得到了其主要功耗成分。其次,以该主要功耗成分数学表达式为指导,突出了SoC低功耗设计的各种级别层次的不同方法。不管是现在还是将来,该领域的重要性将会日益显著。在下面的一些发展方向还将会有较大的发展:
①实现SoC系统设计的变换以及映射技术的进一步探索。
②将各种低功耗设计手段按照各性质最佳综合起来,以便使用基于人工智能的技术(如遗传算法和启发式算法等等)来研究。
③发展以实现低功耗为目的CPU指令程序的改写技术,以将其扩展到复杂SoC系统的设计中。
中图分类号:TN783文献标识码:B
文章编号:1004373X(2008)2001005
Analysis and Comparison of Performance and Energy of Flip-flop
ZHANG Xuan,ZHANG Minxuan,LI Shaoqing
(School of Computer Science,National University of Defense Technology,Changsha,410073,China)
Abstract:The development of flip-flop′s performance and energy plays animportant part in the design of total circuit,In order to design the circuit of high performance and low energy,it seems very important to make an optimization of flip-flop's performance and energy.This paper describes all kinds of parameters of flip-flop,analyses and compares some typical flip-flops,makes a comparison of several low-energy flip-flops referred in correlative paper and makes a prospect for flip-flops.It makes a matting for reasonable utilizing flip-flop existed in the standard cell and developing flip-flop of higher performance.
Keywords:flip-flop;circuit design;low energy;performance optimization
1 引 言
时序逻辑电路由存储电路和组合逻辑电路构成,存储部件保持系统的状态,组合逻辑电路负责计算时序逻辑电路的下一状态及电路输出。触发器作为一种存储电路,在数字电路系统中起着重要作用。
依据不同的标准,触发器可以划分为多种不同类型。从采样的频率进行划分,触发器可分为主从触发器和脉冲触发器;从时钟控制位置的角度进行划分触发器可分为动态触发器和静态触发器;从时钟信号的多少角度进行划分触发器可分为单时钟电平和多时钟电平触发器;从时钟的采样边沿的多少的角度进行划分触发器可分为单边沿触发器和双边沿触发器。
随着VLSI技术的不断进步,数字系统的运行速度和功耗要求不断提高,对触发器性能参数的要求也更为苛刻,要求触发器应该具有低功耗、短延时、较少的晶体管数目,较大的噪声容限和比较强的抗干扰性等特征,这些要求中,对延时和功耗的要求尤为重要。
本文从主从触发器和脉冲触发器的角度,阐述各种触发器的性能,并对一些典型的触发器进行分析和比较,对有关论文中提出的几种低功耗的触发器进行介绍。为以后选择使用寄存器和寄存器的优化工作做一定的理论铺垫。
2 触发器性能参数及几种典型触发器的介绍
2.1 时间参数
描述触发器的主要时间参数有建立时间,保持时间以及时钟到输出的延迟。时钟到输出的延时是指时钟跳变沿到输入数据传输到输出的延时;建立时间是指时钟跳变之前数据必须有效的时间;保持时间是在时钟跳变之后数据必须仍然有效的时间。如果数据建立时间太接近时间有效边沿,触发器将会失真,T为时钟周期,必须大于等于最差的时钟到输出的延时的总和。
T>=TCLK-Q+TSETUP+TLOGIC+TSKEW(1)
其中,TCLK-Q为触发器的传播延时;TSETUP为触发器的建立时间;TLOGIC为最大的组合CLK逻辑的延时;TSKEW为时钟的相对的时间偏移,如图1所示。
2.2 功耗参数
触发器的功耗由4部分组成:短路电流功耗,亚域漏流功耗,开关过程功耗,静态功耗。电压越低时,短路功耗的消耗就越少;电压越高,亚域漏流功耗越少。但是随着电压的增高,短路功耗的增加的程度比亚域漏流功耗减少的程度要大;对于开关功耗,当转换频率一定时,电压越高,消耗的功耗越高;在触发器中静态功耗相对比较小,可以忽略。所以,总的来说降低电压能减少功耗。
上面的描述可以用下式表示:把energy-per-transition定义为单个时钟周期触发器的能量消耗。ai-j是从状态转换概率;ei-j是状态转换消耗的能量;功耗可以通过公式表示为:
E=a0-0*e0-0+a0-1*e0-1+
a1-0*e1-0+a1-1*e1-1(2)
从上式分析可以看出,可以分别通过改变a和e来降低功耗。改变a的措施有减少触发器的节点的冗余跳变,改变e的措施有降低电压、减少电路节点电容以及缩减晶体管的大小。
2.3 主从触发器
主从触发器由2个锁存器组成,前一级锁存器在低(高)电平时将输入传至输出,后一级锁存器在高(低)电平时将输入传至输出。典型的主从触发器有传输门触发器(TGFF),带门控的传输门触发器(GTGFF),真单向触发器(TSPC)和对时钟偏差不敏感的触发器(C2mos,MC2mos)等。TGFF的输入信号通过反向器隔离加强,它是功耗、噪声容限、速度的最好折衷,用传输门实现主从触发器是很好的选择。GTGFF是在TGFF的基础上在主站加1个内部时钟控制门得来的,因为有了时钟控制门,GTGFF的功耗相对于TGFF要小些。内部时钟控制门减少功耗的关键在于内部时钟门逻辑和时钟功耗开销的折衷与平衡。TSPC避免了因时钟偏差引起的各种问题,只用单相位时钟来实现主从拓扑结构,使电路不产生竞争,单相位时钟触发器对局部时钟偏差不敏感,其动态实现导致高开关频率和低时钟负载, TSPC边沿触发器依赖于足够陡直的时钟斜率以限制触发器的透明时间(例如保持时间,在透明时间输入可以直接传到输出),其上升时间必须仔细优化。两相设计会引起竞争问题,但也可以采用C2MOS这样的电路技术来消除,C2MOS触发器是把传输门锁存器中连接到顶端PMOS和底端NMOS晶体管的连线去掉而得到的;伪静态C2MOS 触发器是在动态C2MOS 触发器中主从锁存器的输出端分别添加一个弱C2MOS 反馈而得到的;MC2MOS是通过C2MOS改进而来,它的低功耗的反馈保证了它的全静态操作。 PowerPC603触发器,如图2所示,使用传输门结构,有比较快的上拉能力,反馈传输门用一个钟控反相器替换,powerpc603电路结构,是传输门触发器(TGMS flip-flop)和MC2mos的组合。
2.4 脉冲触发器
脉冲触发器也是双站的触发器,第一站是脉冲产生器,第2站是一个锁存器。
图3所示是半动态触发器SDFF的原理图,前端是动态的,产生一个时钟脉冲,触发后端一个静态的锁存器,当CP为0时,X为1,脉冲触发器需要在电平无效的时候,把X点预充为高电平。当CP为1,CP的信号还没有传到与非门时,S点还是打开的,如果此时D为1,X的值就可传出去。当3个反向器的时间过去后,CP的新值传到与非门上,S关断,D的值就传不出去,这就是一个取值脉冲。混合锁存的触发器(HLFF),在结构上与SDFF相似,有一个静态的脉冲产生器,此电路的建立时间可以为负,所以寄存器本身的延时很短,但是其在上升沿附近输出可以有多次翻转,因此不应使用这一寄存器的输出来驱动动态逻辑或作为其他寄存器的时钟。灵敏放大器(MSAFF)是一个完全不同的脉冲触发器,它在需要高性能或者传送低摆幅的时候使用,它可能成为未来发展的方向之一。
主从触发器相对脉冲触发器来说有较好的内部抗竞争能力,消耗较低的功耗,但是其他参数都高于脉冲触发器。
3 比 较
在电路和系统级对触发器的延时和功耗进行优化,对触发器性能的提高有极其重要的作用。本文研究了几种典型触发器的性能,图4[1]是对各种典型触发器功耗的比较,该图显示了主从触发器比脉冲触发器消耗更少的能量,TGFF是消耗功耗最少的触发器,在低能量的设计中,它是最好的选择,它的功耗延时积比较小,TGFF是和带内部时钟门触发器比较的标准。图5[2]是对各种触发器毛刺功耗的比较,由于采样时间短,脉冲触发器消耗的毛刺功耗最小;而当主站是透明时,主从触发器对毛刺非常敏感;时钟门电路要消耗很大的毛刺功耗,这是因为时钟门逻辑不断地比较输入与输出,它忽略了时钟沿的跳变,传播毛刺(时钟的毛刺不影响触发器的时序竞争的抗干扰性,时钟的滞后问题是产生竞争的原因,解决时序竞争的办法就是采用比较高的电压)。图6[3]是对几种典型触发器跳变概率的功耗延时积的比较,它显示了在高跳变概率的电路中,SDFF和MSAFF拥有最好的功耗延时积,虽然它们的功耗延时积很好,但是在设计中更倾向于使用TGFF,因为TGFF的内部竞争力很好,很适合在有时钟滞后的大规模的电路设计中使用。(在很多的低功耗设计中,触发器很少处在关键路径上,当建立时间没有包含在触发器的延时中时,触发器的EDP的排序就会改变)。相对于主从触发器,脉冲触发器有更小的延时,这是因为它的建立时间很小,有的甚至为负,这使得脉冲触发器的竞争力比较好。带有内部时钟控制门的脉冲触发器和没有内部时钟控制门的脉冲触发器相比,竞争能力(race immunity)不太好。带有内部时钟门的主从触发器和没有内部时钟门的主从触发器相比,竞争能力比较好。例如:GTGFF和TGFF相比有更好的竞争能力,而这是以增加延时为代价的。
通过对各种触发器进行比较,考虑到结构、可靠性、管子数目,以功耗延时积作为重要指标,可以知道传输门触发器(TGMS)和PowerPC603触发器是功耗延时性能最好的全静态触发器,并且它们在功耗延时空间覆盖了相对较宽的范围,PowerPC603和传输门触发器具有最优的功耗延时积;在追求高速时可考虑脉冲触发器,例如HLFF和SDFF,SDFF因为建立时间短而成为最快的触发器,但是它们消耗了可观的功耗,约为传输门触发器(TGMS)的2倍。而真单向TSPC和动态传输门触发器在性能上和SDFF差不多,在功耗上与传输门触发器差不多,但是它们的内部结点X对于漏电流和其他噪声来源很敏感,可靠性不高,在调试模式下容易出错。
同时也有研究表明PowerPC603和HLFF的PDP值差不多,但是HLFF比PowerPC603更快。此电路的建立时间可以为负,所以寄存器本身的延时很短,但是其在上升沿附近输出可以有多次翻转,因此不应使用这一寄存器的输出来驱动动态逻辑或作为其他寄存器的时钟。
PowerPC603和C2MOS具有最好的低功耗设计的风格,SAFF可能是未来设计的主流,虽然SAFF在输出端速度有瓶颈,但是它是功耗速度的好的折衷。
4 几种改进的触发器的介绍
1.引言
在原油输送过程中,管道经由多年冻土区,输油管道中原油温度会影响管道周围多年冻土区土壤的温度场,引起复杂的地质灾害问题,如冻胀、融沉、水土流失、边坡失稳等,对管道安全造成威胁,严重影响原油的运输。其中,不稳定斜坡是冻土区管道面临的最大威胁,极有可能造成斜坡底部管道发生屈曲褶皱变形。论文通过对冻土区斜坡失稳机理、形成过程及斜坡监测技术的分析,讨论了冻土区斜坡稳定性安全监测系统的结构设计。
管道的较大形变容易引起管道的断裂和泄露,同时由于冻土层微小的温度都会影响到石油管道的安全传输,所以要求监测系统具有±0.2℃的温度测试精度,并具有长期稳定性。在选择元器件时不仅要求各个器件达到所需精度,还要分析元器件组合的总精度。另外,由于监测仪器是在野外安装使用,环境比较复杂,而温度对于系统的工作又有很大的影响,元器件的工作温度范围需在-50℃~+50℃之间。但大多数元器件工作温度在低于零下25度以上,所以需要对系统板进行保温处理。保温处理虽能在一定时间内保证器件正常工作,但为了满足系统低功耗及工作长期稳定性,在选择元器件时,需选择温度范围较宽且温度较低也能正常工作的器件。
2.系统各功能模块结构设计
2.1 主控板结构设计
在满足低功耗、高精度及高低温适应的原则下,主控芯片选用Atmel公司ATmega128L芯片,时钟芯片选用美国DALLAS公司推出的性能比较高的DS1302,数字温度传感器选较常用的DS18B20,存储芯片选用Atmel公司推出的大容量串行数据Flash存储器AT45db161,继电器选择常用的电流为5A小型MY2NJ。其各芯片布置如图1所示,在主控板预留LCD1602的接口,在调试结束后可拔掉显示屏以降低功耗。整个主控板模块中DS1302确定数据的定时发送,AT45db161芯片将各个温度传感器收集的信息进行存储。ATmega128L具有两个可编程的串行UART,ATmega128L通过其中一个串行UART,以寻址的方式与数据采集模块中的AT89C51进行通信,控制多个数据采集模块中的一个进行温度采集。另一个串行UART与GSM模块进行通信,将采集的数据以短信形式发送至目标SIM卡。由于野外无供电条件,电源由12V的蓄电池及太阳能电池板构成,为系统提供稳定的直流电压。
2.2 数据采集模块结构设计
数据采集模块在选用各芯片时,同样满足以上所述的芯片选用原则。主控芯片选择性能及价位比较合适的由美国STC公司推出的52内核单片机,A/D转换芯片选择具有4通道单独输入的ADS8341。采集模块各芯片布置如图2所示。由于系统需要测量30个点的温度,既需要40个温度传感器。一个ADS8341有4个通道,能够连接4个温度传感器,图2中包含3个ADS8341,能够连接12个温度传感器。所以,在整个数据采集部分,要完成数据的正确采集需要有4个同类型的采集模块。
图1 主控板框图
图2 数据采集模块框图
2.3 数据远程通信系统设计
数据远程通信系统主要由GSM通信模块、上位机系统、下位机系统等组成,如图3所示。下位机系统将数据信息通过GSM模块1以短信方式发出,经过全球无线移动通信网络(GSM网络)将数据发送给GSM模块2。上位机软件将短信从GSM模块2中读取,并进行计算、分析及显示。当需要对下位机系统进行设定时,上位机软件通过GSM模块2以短信形式将命令发出,经过全球无线移动通信网络将命令发送给GSM模块1,下位机系统通过GSM通信模块1接收来自上位机的命令。
图3 数据远程通信系统框图
3.主控板电路设计
根据上面所确定的主控板系统结构,对主控板硬件电路进行设计。主控芯片ATmega128L是一款基于AVR RISC结构的低功耗CMOS8位微控制器。具有片内128KB的程序存储器(Flash)、4KB的数据存储器(SRAM)和4KB的EEPROM,有8个10位ADC通道、2个8位和2个16位硬件定时/计数器、8个PWM通道。与ATmega128A相比,ATmega128L具有较宽的供电电压(2.7~5.0V),实际应用中,可选择3.3V的供电电压以降低系统功耗。
ATmega128L的时钟源可以选取外部晶体振荡器、外部RC振荡器、内部RC振荡器等方式。其时钟源的选择可通过JTAG编程、ISP编程等方式对ATmega128L的内部熔丝位来设定。为了降低系统主控板与采集板数据通信中的误码率,ATmega128L的晶体振荡器频率选用7.3728MHz,以产生精准的9600bps波特率。
4.主控板及采集模块的PCB板设计
PCB板设计的成败直接决定了系统工作的稳定性和可靠性,在设计PCB板时,需要考虑其电磁兼容性和散热性。由于本系统所处的环境温度较低,PCB板上元器件的发热为有利因素,因此在设计PCB板时仅考虑其电磁兼容性。本系统的主控板和采集板采用了分离设计,因此各PCB基板上的元器件较少,为减低系统制作成本,选用常用的双层板设计。系统PCB板实物图如图4所示,采集板通过4个插接槽与主控板相连。
图4 系统实物图
5.结论
通过对系统硬件需求分析,对系统的主控板模块及采集模块进行设计,同时对各个模块中所需的元器件按系统所需性能及低功耗要求进行选择,并对各个元器件功能、参数进行介绍。在硬件设计中不仅对各个元器件的电路连接进行详细设计,同时考虑到供电问题,并对各模块电源供电进行详细设计,最后根据使用性将设计电路出PCB板。
参考文献
[1]何建平.青藏铁路冻土环境下浅埋给水管道保温分析研究[D].西南交通大学,2005.
[2]樊云龙,毛雪松,侯仲杰.多年冻土地区热棒路基的设计原则和方案[J].路基工程,2012(4):148-151.
Abstract:Rescue capsule as underground emergency shelter for the cabin temperature and humidity monitoring and control,you can extend the survival time of the trapped miners.Systems based on the importance of rescue capsule and SHT75 temperature and humidity monitoring with high accuracy,small size,etc.,designed a SHT75 temperature and humidity detection system is based,and temperature and humidity testing SHT75 compensate calculated values to ensure that the rescue capsule temperature and humidity testing.
Keywords:Rescue capsule;Temperature and humidity;SHT75
1.引言
救生舱作为井下紧急避难场所,其舱内温度和湿度的实时监测与控制,是延长被困矿工生存的工作之一。为延长救生舱备用电池的工作时间,因此要求各用电设备均低功耗。
SHT75温湿度传感器克服了传统传感器在检测时温度变化对湿度产生的影响且测量结束时可自动进行休眠模式,大大减小系统功耗,因此本文采用SHT75[4]作为井下救生舱温湿度检测传感器并对其工作原理、电路以及数据的补偿进行了详细分析与设计。
2.SHT75温湿度传感器
2.1 SHT75温湿度传感器概述
SHT75是一款集温度、湿度于一体的传感器,采用CMOSens技术,具有体积小、抗干扰能力强、功耗低等优点。采用两线数字化接口,可与单片机直接相连,大大减小了电路。其内部结构图如图1所示。
图1 SHT75内部结构
SHT75具有较宽的温湿度测量范围。分别为-40℃~123.8℃和0~100%RH。若芯片工作在非正常条件下,则会导致采集的信号暂时性漂移,需要对传感器进行校正。在温度为100~105℃,相对湿度小于5%RH的条件下保持10小时即可自动校正;或者在温度为20~30℃,相对湿度大于75%RH的条件下保持12小时。
SHT75在默认条件下,温湿度测量分辨率分别为14bit和12bit,但在高速测量或者超低功耗情况下,温度和湿度采样分辨率可分别下降为12bit和8bit。
2.2 SHT75温湿度传感器工作原理
SHT75温湿度传感器芯片上设计有传感器稳压电路、信号运算处理电器、标定数据存储器、温湿度传感元件、14位AD转换电路和两线数字串行接口电路,输出信号是经过全量程标定和补偿的数字信号。以I2C总线的通信方式与单片机相连,芯片内部OPT存储器保存有校准系数。
3.SHT75与MSP430单片机电路设计
为降低系统功耗,本设计采用美国TI公司的超低功耗型号为MSP430F149的16位单片机与SHT75温湿度传感器相连接[1],通过两个普通IO口模拟I2C总线与传感器通信。根据需要,在救生舱内可安装多个传感器挂在IIC总线上。SHT75与MSP430F149单片机电路连接如图2所示。
图2 SHT75与MSP430F149单片机电路连接图
4.温湿度数据检测
4.1 SHT75寄存器操作
单片机通过模拟I2C总线与SHT75进行数据传输,通过写入不同的指令实现对SHT75的寄存器操作。SHT75寄存器指令代码如表2所示。
4.2 温湿度数据处理与补偿计算
SHT75传感器数字信号输出时通过8bit CRC[5]校验保证数据传输的正确性。由于通过SHT75检测的温湿度信号曲线为非线性,因此需要对检测的数据进行补偿,补偿公式如下:
RHliner=c1+c2・SORH+c3・SORH2 (式1)
式中,RHliner表示检测的线性湿度值,SORH表示从SHT75中读取的温度值,在测量精度为12bit时,c1为-4,c2为0.0405,c3为-2.8・10-6;在测量精度为8bit时,c1为-4,c2为0.648,c3为-7.2・10-4;
由于温度对湿度测量会产生较大影响,因此在所测温度点进行补偿运算,补偿运算公式如式2所示。
RHtrue=(ToC-25)(t1+t2・SORH)+RHliner (式2)
式中,RHtrue为实际测量的相对湿度值,ToC为实际测量的温度值,在测量精度为12bit时,t1为0.01,t2为0.00008;在测量精度为12bit时,t1为0.01,t2为0.00128;
在进行温度测量时,由于温度传感器具有很好的线性,可直接使用式3进行处理计算。
式中,ToC为校正后温度读数,SOT为直接读取的温度数据,参数d1功能供电电压有关,具体如表3所示。
参数d2在测量精度为14bit时,d2为0.01℃或为0.018;在测量精度为12bit时,d2为0.04℃或为0.072。
5.结语
本文基于SHT75温湿度传感器及超低功耗的MSP430F149单片机构建井下救生舱的温湿度检测系统,整个系统可以较大范围的监测救生舱内温湿度,体积小、测量精度高和功耗低等,满足井下救生舱的特殊要求。
参考文献
[1]蒋正义,朱善安,韩东芳.基于MSP430和nRF401的无线自动抄表系统[J].集成电路应用,2004,11:74-77.
[2]孙继平.煤矿安全生产监控与通信技术[J].煤炭学报, 2010,35(11:1925-1929.
[3]王建军,陈光柱,夏晓东.煤矿井下救生舱体结构设计与分析[J].煤矿机械,2011,32(12):13-15.
Zigbee是IEEE 802.15.4协议的代名词。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅膀的“舞蹈”来与同伴传递花粉所在方位信息,也就是说蜜蜂依靠这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。主要适合用于自动控制和远程控制领域,可以嵌入各种设备[1]。
ZigBee 是一种近距离、低功耗、低速率、低成本的无线传感器网络, 已经在许多领域得到了越来越多的应用, 如温度、湿度、气体浓度、亮度、压力等各种各样小数据量信息的采集, 及传输可以采用这种低功耗、低传输速率的无线传感器网络.在这些应用场合中, ZigBee 网络与现有的各种无线网络相比, 有着独特的优势, 即低功耗、低速率、低成本[2]。 由于ZigBee 设备工作时间较短, 收发信息功耗较低且采用休眠模式, 使得它非常省电, 电池可使用长达6 个月至2 年左右. ZigBee 工作在250 kbps 的通信速率, 足已满足低速率通信传输的需要, 且2.4 GHz 的工作频段是免费频段[3].
设计原理
目首先,从整体来看,我们可以将目标设计分为几个模块:电源模块、主芯片模块、天线模块调试接口和外围扩展模块[4]。其中,电源模块、天线模块、调试接口和主芯片模块是必须的,可以用通常所说的”最小系统”来描述。外围扩展模块是根据用户的实际需求自行添加。
无线传感器节点一般由传感器模块、数据处理模块、数据传输模块和电源管理模块四部分组成。其中,传感器模块负责采集监视区域的信息并完成数据转换,采集的信息可以包含温度、湿度、光强度、加速度和大气压力等;数据处理 模块负责控制整个节点的处理操作、路由协议、同步定位、功耗管理以及任务管理等;数据传输模块负责与其他节点或Sink节点进行无线通信,交换控制消息和收发采集数据;电源管理模块选通所用到的传感器,节点电源采用微型纽扣电池,以减小节点的体积[5]。
我们设计的节点实现机理是以ZigBee传输模块代替传统的串行通信模块,将采集到的信息数据以无线方式发送出去。该节点包含ZigBee无线传输模块、微控制器模块、传感器模块及接口电路、直流电源模块以及外部存储器等。为了降低传感器节点的成本,减小传感器节点的体积,我们采用Chipcon公司推出的高度整合的SoC芯片CC2430实现传感器节点的数据传输和处理功能。图3是设计的无线传感器节点的结构框图。下面将分别介绍无线传感器节点中的几个主要功能模块。
功能研究
CC2430芯片延用了以往CC2420芯片的架构,在单个芯片上整合了ZigBee 射频前端、内存和微控制器。它使用1个8位8051 MCU,具有128 KB可编程闪存和8 KB的RAM,还包含模拟数字转换器(ADC)、几个定时器(Timer)、AES128协同处理器、看门狗定时器、32 kHz晶振的休眠模式定时器、上电复位电路、掉电检测电路,以及21个可编程I/O引脚。CC2430芯片采用0.18 μm CMOS工艺生产,工作时的电流损耗为27 mA;在接收和发射模式下,电流损耗分别低于27 mA或25 mA。CC2430的休眠模式和转换到主动模式的超短时间的特性,特别适合那些要求电池寿命非常长的应用[6]。
当 FFD 设备(Full Function Device)在第1 次被激活后, 首先搜索其通信范围内已存在的网络, 如果找到相应网络, 则通过一系列对话后, 该设备就可成为此网络中的普通设备。
协调器应用层生成的 NIME-NETWORK-FORMATION。
request 原语发送给网络层请求建立网络,网络层再通过MLME-SCAN.request 原语向MAC层请求检测信道能量及扫描信道, 收到确认后, 为新网络设置1 个PANId (网络号), 通过MLME-SET原语将PANId 设置为MAC 层macPANId, 网络层再通过MLME START.request 原语向MAC 层请求运行网络, 收到确认后运行网络, 网络建立成功[7]。
节点被激活后, 如果找到已存在的网络, 本节点将根据所获得的网络信息选定1 个父节点, 并提出入网申请, 同时等待父节点的请求响应. 当得到允许后, 子节点将得到父节点分配给它的1 个网络地址(也称为短地址)作为网络内的身份标识, 成功建立链接. 加入网络后, 该节点可以接受新节点的入网请求. 通过一级一级的地址分配, 可以构成较大的网络[8]。
由于 CC2430 内置了温度传感器, 在实验中搭建温度采集的ZigBee 采用星型网络. 星型网络的末端节点负责进行数据的采集和发送, 中心节点将实现数据的接收与显示. 为使各个节点采集的。数据同时使中心节点接收, 需要将末端节点的目标地址都设置为中心节点的本机地址. 实验中, 该温度采集系统通信良好, 在有障碍物环境下的通信距离明显低于在空旷的环境下, 此时可通过增模块的射频功率和增加中继点的方法来解决.当检测到的温度准确度也不太高, 则需要采用更高准确度的传感器.
结语
基于ZigBee的无线传感器网络具有低功耗、低成本、体积小的显著优点,可在特殊环境下实现监测区域内信号的采集传输与处理。伴随无线自组织网络技术的成熟和新的能量解决方案的提出,无线传感器网络的应用必将从军事、环境监测、医疗保健、空间探索和灾害预测普及到生活中的各个领域。
参考文献:
[1] Garcia L R, Barreiro P. Performance of ZigBee-based wireless sensor nodes for real-time monitoring of fruit
logistics[J]. Journal of Food Engineering, 2008, 87:405-415.
[2] 李文仲, 段朝玉. ZigBee 无线网络技术入门与实战[M].
北京: 北京航空航天大学出版社, 2007.
[3] 齐楠, 韩波, 李平. 基于ZigBee 的智能家庭无线传感器网络[J]. 机电工程, 2007, 24(3):20-22.
[4] 成锐, 李静, 雷鸣, 等. 基于ZigBee 的无线传感器网络设计方案[J]. 电子元器件应用, 2007, 9(12):54-58.
本系统的目标是:通过相关软件、硬件的设计,实现由主机(上位机)通过单片机(下位机)通讯实现对石蜡车间现场石蜡成型机工作状态的监控。即利用主机的监控软件与单片机进行通信,以实现对石蜡成型机的监控功能。本系统应具备如下功能:
(1) 界面设计清晰,功能齐全,实时准确的显示石蜡成型机所有参数及状态
(2) 上位机与下位机能进行可靠、实时的通信。
(3) 查询历史记录功能
1软硬件的选取及上下位机间通信协议的定义
基于上述目标与功能,要实现本系统,首先要解决以下几个问题:
1.1 上位机与单片机之间通信方式的选取
串行通信使用一条数据线,将数据一位一位地依次传输,处理的数据电压只有一个准位,因此不容易漏失数据。串行通信端口(RS-232)是每部计算机上的必要配备,它不仅实用简单,而且价格便宜。。因此本系统采用RS-232串行通信方式用于上、下位机间的通信。
1.2 监控软件开发平台的选取
VisualBasic(VB)是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。它简单易学、效率高,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。所以,本系统采用VB作为监控软件平台。
1.3 单片机型号以及芯片的选取
MSP430系列单片机是美国德州仪器(TI)1996年开始推向市场的一种16位具有精简指令集的、超低功耗的混合信号处理器(Mixed SignalProcessor)。由于它具有极低的功耗、丰富的片内外设和方便灵活的开发手段,已成为众多单片机系列中一颗耀眼的新星。本系统采用MSP430单片机。
1.4 上位机与单片机之间的通信协议
Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。本系统采用Modbus通讯协议进行通讯,采用16位CRC校验以保证数据传输的准确性。
一、绪论
1.1 云终端概述
云终端是桌面云应用的终端硬件承载侧,它运用自身的VDP技术,通过网络访问后端服务器主机,将服务器的音频视频流通过云终端的显示端输出并且利用鼠标键盘等设备进行交互,使得用户看起来独立拥有一套完整的操作系统硬件和软件。服务器侧具有强大的运算能力,一台服务器一般可以虚拟出十几个甚至上百个操作系统。
1.2 IMX6Q芯片简介
IMX6Q系列芯片是Freescale 半导体公司最新推出的高性能低功耗CPU,该系列芯片包含S/D/Q等几个不同型号,分别表示单/双/四核芯片。芯片基于ARM CortexTM-A9架构,兼容DDR 3-1066M、LVDDR 3-1066M、LPDDR2-1066M(单通道或双通道)等内存设备接口,被广泛应用于:笔记本、手持设备、多媒体播放等视频终端设备。
IMX6Q具备1.2GHz主频,32KB L1,1MB L2(共享于所有CPU核心,双核/四核),96K超大启动ROM,内部特有的16K加密RAM,多达128个GPIO口,2D/3D图形视频加速处理器引擎,独立的多媒体处理器引擎IPU,独立的视频处理器单元VPU,性能非常强大。
二、云终端的总体设计
2.1 云终端的总体结构
云终端作为桌面云应用的终端承载体,主要的功能就是接收服务器端通过网络传过来的音视频流,本地不需要太强的运算能力。所以,CPU具有视频流硬件解码能力是非常重要的。而ARM类型的CPU,其本身的计算能力不强,功耗非常低,且一般都配有GPU单元,能够轻易的对视频流进行硬件解码。
2.2 云终端的硬件技术
对于ARM架构的CPU,只要CPU的频率在1GHz左右,并且具有GPU能力,就完全可以用来做云终端的主控CPU。论文中使用的硬件是基于IMX6Q进行开发的。IMX6Q开发板里包含了非常丰富的外设,根据云终端的需求,去掉开发板中多余的模块。
2.3 云终端的软件技术
由于各种云桌面协议客户端的特性,Linux云终端至少需要有如下的要求:1、需要支持各种解码库,最好能在库里实现硬件解码功能。2、需要支持X11。3、需要有很好的视频播放组件。
三、基于IMX6Q处理器构建云终端
3.1 硬件改进
针对DEMO板和云终端的一般结构,提出如下硬件改进方案:
1、IMX6Q具有两个USB2.0接口。但是一般的云终端至少需要4个或以上的USB口,所以采用一个USB口外接4口USB HUB芯片来满足。
2、IMX6Q支持两路10M/100M/1000M以太网接口,支持MII/RMII/GMII/RGMII接口,于是采用RMII接口及PHY芯片RTL8201F完成。
3、云终端一般配合显示器使用,所以要有一个VGA接口。所以,采用THS8200芯片将IMX6Q的一路HD视频信号转化为VGA信号来实现。其中,VGA信号接入时,采用IMX6Q的I2C来读取外部显示器的EDID信息。
4、电源按键设计,给单板供电的12V全部通过mos管来控制,mos管的栅极通过按键和CPU的IO口相与来控制,这样,在上电后,按下按键后,mos管导通,单板供电,CPU工作后,第一时间通过IO口控制mos的栅极,已达到持续供电的目的。
3.2 软件改进
IMX6Q的DEMO板已经带了UBOOT、Linux内核和简单的文件系统,基于这些已有的代码,再结合2.4节的需求,需要移植一套X11图形管理系统。
Ubuntu上软件非常丰富,而且完全开源,出现问题后能够充分的利用开源资源解决,非常适合做为云终端的承载OS。目前市面上的Linux云终端,也有很多都是利用的Ubuntu操作系统。
结论:本文首先分析了云K端的硬件架构与软件架构,然后基于Freescale的IMX6Q处理器和DEMO板,从硬件、软件两方面进行改进,最终实现一个具备连接RDP与Citrix服务器功能的云终端。