PXI标准– PXI规范更新总结

摘要:PXI标准于1998年创立,随着模块化技术的进步和终端用户的需求不断增加,相关的规范也在不断发展。在2018年9月,PXISA的技术委员会又一次更新了与该标准相关的各种技术规范。这些更新根据供应商和用户需要求制定,对软件和硬件规格均有涉及,以便于支持不断发展的测试需求。具有特别意义的是规范方面的更新,该更新涉及1、Linux®操作系统的支持,2、作为PXI系统一部分的多插槽模块的使用,3、对更高功率模块的支持。 本文回顾了与PXI系统联盟(PXISA)维护的七个规范的修订相关的具体细节和原理。

关键字:PXI,PXIe,PXI Express,Linux

1、背景

PXI(CompactPCI eXtensions for Instrumentation)标准发布于1998年,规范PXI-1和PXI-2定义了模块化仪器标准的硬件和软件要求。 初始标准的主要功能包括:

  • 利用PCI和CompactPCI电气和机械标准定义PXI总线结构和物理参数
  • 建立PXI机箱配置的标准,包括每个插槽的最低功耗以及定时/控制器/外围设备插槽的功能
  • 在CompactPCI背板架构上增加了触发和时钟基础架构
  • 定义PXI模块和系统的软件/驱动程序要求,确保多个供应商提供的模块间互操作性。另外,PXI软件规范为PXI系统及其组成部件定义了一组硬件描述文件。

2005年,PXI标准进行了更新,增加了将PCI Express总线用作PXI Express规范的基础体系结构的问题。在PXI-5 PXI Express硬件规格和PXI-6 PXI Express软件规格中增加了PXI Express架构的详细信息。与这些规范相关的关键功能包括:

  • PXI Express标准使用PCI Express标准
  • 除PXI标准的触发/时钟功能外,还包含更高性能的触发基础架构,并增加了100 MHz时钟源
  • 定义其他类型的PXI外围设备插槽,支持PXI Express模块并使用混合插槽,从而与PXI和PXI Express模块兼容。另外,PXI Express规范要求PXIe硬件和软件都必须与PXI模块和软件兼容。
  • 随着PXI Express硬件标准的采用,需要对PXI软件标准进行增强。这些新增功能包括机箱自我识别,位置寻址以及对SMBus的支持。PCI Express总线要求外围软件组件PXI-6中指定的定义方式对其自身的设备位置进行管理。

随后几年对PXI标准进行了其他更新,并于2018年完成了对该标准的重大更新,这些更新对硬件和软件规范均产生了影响。PXI-1,PXI-2,PXI-5和PXI-6规范中详细介绍了这些重大更新,增加了PXI模块和机箱的电源能力/功耗,从而定义了在PXI系统中使用多插槽PXI模块的一致方法,并为Linux操作系统使用PXI设备建立了框架和要求。
作为对PXI标准的更新的一部分,还对以下PXI规范的次要更新进行了修订:

  • PXI-4 PXI模块描述文件规范修订版1.2
  • PXI-8 PXI多计算软件规范修订版1.1
  • PXI-9 PXI和PXI Express触发管理规范修订版1.1

以下各节详细介绍了与修订/更新的PXI-1,PXI-2,PXI-5和PXI-6规范相关的硬件和软件更新以及增强功能。

2、PXI和PXIE模块的功耗增加

PXI标准的一个重要的更新是增加了PXI-1模块,兼容混合插槽的PXI-1模块和PXI Express模块的功率说明。PXI硬件规范(PXI-1)和PXI Express硬件规范(PXI-5)均更新了模块功率的增加说明。最初的PXI规范详细说明了PXI机箱为每个外围插槽提供至少25.6 W的功率,对于许多仪器供应商而言,这已成为单槽PXI模块功耗的实际标准。随着PXI Express标准的推出,每个外围插槽的最小功率增加到30 W,这成为了单槽PXI Express模块功耗的实际标准。
仪器技术的不断进步以及模块化仪器供应商对高性能组件的使用促使PXISA审查并更新了规范,以适应PXI和PXI Express模块的更高功耗。PXISA技术委员会的最初工作重点是调查eHM连接器的载流能力,该连接器用于PXI Express模块/背板并提供12 V和3.3 V电源(图1)。

PXI标准– PXI规范更新总结_第1张图片
图1:具有eHM背板连接器的PXI Express混合插槽

大量的研究证明,在不超过连接器125℃的温度极限条件下,PXI Express机箱中的eHM连接器的+3.3 V和+12 V轨可以维持3 A /引脚的电流供应。采用与PXI-1插槽相关的+12 V和-12 V引脚的应用,也发现了类似的结果。下面将详细介绍了PXI-1和PXI-5规范的主要更改/更新:

  • PXI Express模块可从+12 V和+3.3 V导轨上的每个引脚汲取高达3 A的电流
  • PXI-1模块和兼容混合插槽的PXI-1模块可从+12 V和-12 V导轨的每个引脚汲取高达3A的电流
  • PXI和PXI Express机箱可以为每个插槽提供额外的电源,该电源超出规定的最小每个插槽要求
  • 建议PXI-5模块包含热感测机制,以防止模块过热

注意:这些更新并没有改变PXI或PXI Express机箱的最低功耗要求,主要目的是使模块和机箱的供应商和用户可以灵活地制造性能更高的模块和系统,比如需要功率高于每个插槽26.5或30W基准标准的模块或系统。另外,PXI标准为机箱供应商提供了更高的灵活性,使其可以制造每插槽提供更高功率的机箱,当然,每个引脚的电流不能超过新的限制标准。对于PXI Express插槽,每个引脚的电流为12V—3A,3.3V—3 A,5 Vaux—1A。对于PXI-1插槽,每个引脚的电流为12V—3A,-12V—3A,3.3V—1 A,5V—1A。 下表总结了这些规范更新。

PXI标准– PXI规范更新总结_第2张图片
表1:PXI外围设备和机箱电源(基准规格 vs 2018年更新)

如表1所述,最近更新的规格将PXI标准允许PXI-1和PXI Express模块具有更高的功率损耗——增加了PXI架构的功能性。PXI系统具有可以提供1900W功率的5U机架机箱以及可容纳消耗100W功率的模块的能力,这使得PXI能够更好地满足更为苛刻需求的测试和高功率测量仪器的能力。

3、多槽模块管理和配置

PXI-6 PXI Express软件规范更新了对外围模块驱动程序的扩展——如何报告有关占用多个插槽的PXI模块的详细信息。 PCI Express架构要求PXI设备驱动程序向资源管理器报告以下模块属性:

  • 最大PCI链接宽度(Maximum PCI Link Width)
  • PCI总线号(PCI Bus Number)
  • 协商的链接宽度(Negotiated Link Width)
  • 插槽号(Slot Number)

这些属性足以进行单个端点/单个插槽的配置。但是,为了使用具有PXIe总线单连接的多插槽模块(如图2所示),需要对外围模块驱动程序进行扩充;故增加对两个新属性的支持:占用插槽数(occupied slot count)和插槽号偏移量(slot number offset)。这些信息在表2中进行了详细说明,斜体表示新增属性。为了保持与现有模块和软件的向后兼容性,访问外围模块驱动程序的资源管理器会假定一个没有新属性的单个插槽模块。

PXI标准– PXI规范更新总结_第3张图片
图2:连接器在最左侧槽位的两槽模块
PXI标准– PXI规范更新总结_第4张图片
表2:外围设备驱动程序提供的信息字段值

利用外围设备驱动程序提供的这些附加信息,系统资源管理器可以清楚地标识每个模块的位置和占用的插槽。“已占用的插槽数”字段的值与外围模块物理占用的机箱插槽的数量相对应,并且“插槽编号偏移”字段表示外围模块物理占用的机箱插槽的数量,报告的槽位号为模块最左端的槽位号。通过增加“占用的插槽数”和“插槽号偏移量”字段,应用程序可以轻松地在供应商特定的用户界面中准确报告模块的位置和表示形式。
PXI-6软件规范的更新还增加了将一个或多个具有多个PCI Express链接的模块表示为一个外围模块的功能。通过允许外围模块驱动程序返回插槽号,已占用的插槽数和插槽号偏移来实现此功能,以便表示两个或更多外围模块占用相同的插槽组。这种情况使资源管理器可以识别出外围模块是一个与背板有多个连接的模块。

4、对于LINUX实时操作系统的支持

最初的PXI标准基于Windows®OS,所有仪器供应商都需要提供基于Windows的仪器驱动程序。 但是,一些PXI供应商也为他们的仪器提供Linux驱动程序,并且目前有最终用户将Linux环境用于他们的测试系统。由于客户对使用Linux的需求日益浓厚,促使PXISA更新了PXI-2 PXI软件规范和PXI-6 PXI Express软件规范,以遍包括对Linux OS的支持。
注意,将对Linux的支持添加到标准中,并不会改变所有PXI产品都必须提供基于Windows的软件的要求,对Linux的支持是可选择添加的。其主要目的是将PXI和PXIe系统支持Linux OS进行标准化定义且规定可互操作方式。
将Linux纳入PXI标准的相关指导原则包括:

  • 保持与Windows环境相关方法和要求的奇偶性和一致性,以支持PXI
  • 避免创建Linux独有的要求或Windows环境不存在的要求
  • 支持32位和64位版本的Linux

对Linux OS的支持涉及对“服务树”的重新定义/规范以及Linux OS的软件服务/接口。
对于Windows环境来说,定位或命名PXI文件位置和服务是通过Windows标准位置或Windows注册表来实现的。 但是,对于Linux环境,由于Linux不存在注册表的概念,因此必须采用不同的方法。Linux环境中对这些PXI软件组件的支持基于文件系统结构。顶级和供应商级别的密钥已替换为目录,并且在模型级别使用了INI文件。 图3提供了一个用于PXI外围模块的INI文件的示例。

PXI外围模块的INI文件列表
图3:PXI外围模块的INI文件列表

系统描述和配置文件位于/etc/pxisa/目录下,机箱描述文件位于/usr/share/pxisa/chassis/ directory。
PXI模块在Linux环境中执行所需的软件服务也进行了重新定义。在Windows环境中,PXI驱动通过32位Windows DLL的文件实现,每个操作在DLL中都有对应的导出符号。在Linux环境中,驱动程序被实现为与OS的位数匹配的共享对象(SO),每个操作都对应于SO的导出符号。产生的驱动程序称为PXI驱动程序SO,它采用ANSI C调用约定,并使用与Windows驱动程序DLL相同的C数据类型。
通过为Linux OS定义和标准化服务树和软件服务,使用Linux环境的PXI系统所需的工作量和耗时大大减少。

5、总结

自从1998年首次发布以来,得益于卡模块架构可不断发展的优势,PXI标准一直在不断升级。 该规范最初基于PCI标准,但随着硬件和软件技术/标准都随着时间的发展而不断更新。 如本文所述,PXI规范的最新更新体现了该标准如何通过其高性能和紧凑型模块化体系结构,完成最新技术和功能的升级。

如果需要更多的PXI硬件,请关注广州虹科电子。

你可能感兴趣的:(PXI规范)