日期:2023-01-24 阅读量:0次 所属栏目:计算机应用
摘 要:CPS(Cyber-Physical Systems)是近年的一个研究热点,本文围绕CPS的时间特性,介绍CPS的相关背景,分析CPS对时间特性的需求,指出当前CPS所面临的巨大挑战,同时结合当前的研究现状,讨论了CPS在时间特性方面需要进行的研究方向。
关键词:CPS;时间特性;嵌入式系统
引言
CPS(Cyber-Physical Systems)作为一个新课题,国内有学者译为赛博物理系统[1]或者信息物理融合系统[2],但都没有一个权威的译名。CPS关注的是计算过程和物理过程的融合,是人类通过信息技术和机械设备与物理世界进行交互,这种交互的主体既包括人类自身也包括在人的意图知道下的系统,而作用的客体包括真实世界的各方面:自然环境、建筑、机器、同时也包括人类自身等。近年来,CPS不仅已成为国内外学术界和科技界研究开发的重要方向,也很可能将成为企业界优先发展的产业领域。
CPS是一个综合计算、网络和物理环境的多维复杂系统,通过3C(Computation、Communication、Control)技术的有机融合与深度协作,实现大型工程系统的实时感知、动态控制和信息服务。CPS,从广义上理解,就是一个在环境感知的基础上,深度融合了计算、通信和控制能力的可控可信可扩展的网络化物理设备系统,它通过计算进程和物理进程相互影响的反馈循环实现深度融合和实时交互来增加或扩展新的功能,以安全、可靠、高效和实时的方式监测或者控制一个物理实体。CPS的最终目标是实现信息世界和物理世界的完全融合,构建一个可控、可信、可扩展并且安全高效的CPS网络,并最终从根本上改变人类构建工程物理系统的方式。[3]CPS实现计算、通信与物理系统的一体化设计,可使系统更加可靠、高效、实时协同,具有重要而广泛的应用前景。
CPS对时间特性的需求
CPS应用被认为具有与20世纪信息技术革命相当的潜力。这里包括高信度医疗设备和系统,辅助生存,交通控制与安全,高级车载系统,进程控制,能量保存,环境控制,航空电子设备,使用仪器,关键基础设施控制,分布式机器人,防卫系统,制造业及智能建筑。这些依靠现在的方法来开展会极其困难,CPS需要新突破。
CPS跟传统的嵌入式系统不同。传统嵌入式系统面临的问题是,嵌入式软件运行在各方面能力有限的小机器上,关键技术是如何在资源与性能之间取得一个最优。因此,其关注的是:硬件接口,中断,存储系统,C语言编程,汇编语言,FPGA设计以及RTOS设计等方面。而CPS面临的问题是,所有计算和网络需要跟物理过程融合在一起,关键技术在于如何在物理过程织成网络的系统里把握其动态性、时间以及并发性。因而,CPS的关注点在于建模,时间,动态性,紧急逻辑,并发,验证等。
当今大多数微处理器嵌入的系统都不是使用最新的计算机。如汽车,医疗设备,仪器,通信系统,工业机器人,玩具,游戏等等。这些微处理器最为关键的是通过传感器和传动装置实现与物理过程的交互。它们也跟普通计算机一样,变得更加网络化和智能化。运行越快当然是更好,前提是你愿意为此付出代价。事实却恰恰相反,系统需要的并不是更快的运行速度,而是物理动作在正确的时间发生。这就需要一个时间语义,而不是质量因素。
与普通计算机相比,嵌入式系统往往对可靠性和可预见性有比较高的标准要求。作为更进化的CPS,在这方面的要求自然是会更高。但在物理世界,事物并不具有普遍可预见性。CPS面临的环境大多都是在不受控范围,因而要求对于不可预想条件的同样能保持健壮,具有容错能力。
目前显然需要面对的问题就是,在技术上是否能够使软件系统具有如此的可靠性和可预见性。事实上,在CPS环境下即使是最简单的C语言程序不能保证这两点。因为程序里不存在任何表达时间属性的方面。它可能完美的执行下去了,但却没有达到系统所需要的效果。比如,它错过了截止时间。因为在C语言里并没有时限的语义,所以是否超过时间限期并不影响程序本身的完好运行。但这与系统是否能按要求正确运转紧密相关。
图1展现的是我们设计嵌入式系统时所依赖的各个抽象层。在每层的框里都例举些常见的构成元素。比如,在底部提到的微处理器集合,它可以是块Intel P4 1.6GHz的微处理器。在这上面的是所有可以运行在微处理器上的x86程序。这一集合通过构建指令集体系结构(ISA)的方式做出了精确的定义。任何用此指令集构成的程序代码都是它的一个成员,例如Java虚拟机的实现。以此类推,每个抽象层都是为了使设计人员从下一层的实现细节中脱离出来。
图1 计算机的各个抽象层
然而,对于当前的嵌入式软件来说,几乎所有的抽象都是不成功的。ISA隐藏了硬件实现的细节但对于时间特性却没有相关的保证。在ISA基础上的编程语言同时只是对ISA的再度抽象而没有表述时间特性。
传统上,设计人员为了弥补这个缺陷一般使用两种方法:确定最坏情况执行时间(WCET)边界和使用具有可预见调度策略的实时操作系统。但是它们要求对可靠性保有很大的余地,因为最终的可靠性只能通过长椅试验得出。而且WCET随着处理器体系结构的发展以及更多复杂技术的使用越发变得困难。现代处理器体系结构事实上使得WCET难以捉摸。即使是个简单的问题都需要付出极大的努力。在实时操作系统里,对时序行为的处理是很粗糙的,并且随着系统复杂度的提升而变得不受控制。
当前的计算机技术和网络技术不足于推动CPS这一领域的发展,其中之一就是缺少时间语义,同时“最大努力”式的操作系统和网络技术不能给予CPS应用所要求的精确度及可靠性等级。
解决思路与发展方向
1.计算机体系结构
处理器的指令集体系结构ISA提供对计算机硬件的一种抽象,这对软件设计者很有益,可以说这种抽象带来的价值是巨大的。其中尤为重要的一点就是对于实现了同一ISA的处理器,不同代产品之前不会存在兼容性问题。当前的指令集体系结构隐藏了底层基础硬件的大部分时间属性。但对于时间敏感的系统,ISA的抽象层或许应该把时间属性也包含其中。这就像上世纪80年代提出精简指令(RISC)计算机,不过这里是要重新考虑加入时间部分。而且如果我们可以不以性能为先的话,或许时间的精确性还是容易做到的,两者兼顾则面临极大的工程挑战。比如目前的存储器层次结构,管道,总线结构,I/O机制,这些都给时间方
面带来挑战。文献 s and . The case for the precision timed(PRET) machine. In Design Automation Conference(DAC), San Diego, CA,June 4-8 2007. 本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/242442.html
上一篇:一站式IT运维在企业中的应用