CompactPCI总线热插拔单板的电气设计
摘要:CompactPCI热插拔单板的电气设计必须满足热插拔规范的要求。要保证在拔插单板时,不对CompactPCI总线产生较大的冲击,不影响CompactPCI总线上数据传输的正确。因此在进行热插拔单板的电气设计时,必须考虑到静电放电、预充电、信号串联匹配、信号线长度限定以及滤波电容大小的限制等几个方面。详细介绍了CompactPCI热插拔单板的典型结构、物理连接过程及电气设计技术要点。
关键词:CompactPCI 热插拔 总线
在一般的应用电子系统中,若出现电路板硬件失效或软件故障,通常都是先关闭系统电源再检修或更换故障设备,这样往往需要较长的停机时间。在一些可靠性要求非常高的高可靠系统中,不允许停机检修和停机更换故障板或只允许很短的停机时间。例如在高可靠通讯、军事应用电子系统中,一旦出现单板故障,要求在整个系统不停机的情况下允许带电拔出故障板及插入备份板,这种系统通常叫做支持热插拔系统或高可靠系统。热插拔系统首先需要有一个支持热插拔的系统平台,还需要有支持热插拔的单板。热插拔系统都是采用无源背板总线平台,在众多的无源背板总线系统中,CompactPCI总线具有完整的支持热插拔的规范,CompactPCI总线热插拔系统应用最广泛。本文重点介绍CompactPCI热插拔单板的电气设计技术要点。
1 热插拔技术概要
热插拔即允许带电拔插工作单板,其最基本的目的是要求带电拔插单板而不影响系统运行,以便维修故障板或重新配置系统;热插拔技术可以提供有计划地访问热插拔设备,允许在不停机或很少需要操作人员参与的情况下,实现故障恢复和系统重新配置;热插拔技术可以提供高可靠应用,当单板出现故障时,系统在不间断运行的情况下自动隔离故障板。热插拔系统的级别由低到高分为三种:基本热插拔系统,它具有基本热插拔要求的性能;完全热插拔系统,它可以对热插拔单板进行动态配置;高可靠系统,它利用高可靠平台实现对硬件的更高级别的控制。
javascript:window.open(this.src);" style="cursor:pointer;"/>
插拔有三个过程:物理连接过程,包括热插入(在系统运行中插入单板)和热拔出(在系统运行中拔出单板);硬件连接过程中,即系统在硬件层上的连接与断开;软件连接过程,即系统在软件层上的连接与断开。这些过程可以用一组状态进一步描述,这些状态虽属于系统的不同连接层但彼此关联,如图1所示。例如,当物理连接层不存在时,硬件连接层就不能产生电气连接;当单板从运行中的系统拔出时,软件连接和硬件连接自动断开。在图1中:
P0:单板未安装到系统,处于系统隔离状态。
P1/H0:单板已经插入槽位,所有的针都连接上,但没有上电,CompactPCI总线没有激活。在这一点,物理层处于P1状态,硬件层处于H0状态。
H1:单板上电初始化后连接到CompactPCI总线。
H1F:单板被命令上电、初始化,但是失败,或者单板检测到故障从CompactPCI总线断开。这块单板不适合插入从CompactPCI总线。
H2/S0:单板上电,但CompactPCI总线只能访问配置空间。此时,配置寄存器还没有配置好。在这一点,硬件层处于H2状态,软件层处于S0状态。javascript:window.open(this.src);" style="cursor:pointer;"/>
S1:系统已经配置好单板。
S2:必需的软件(驱动器,等)加载完成,单板可被操作系统和应用软件使用。但所有的操作都没有开始。
S2Q:此状态同S2,但不允许进行新的操作,单板处于静止状态。
S3:单板加入系统,已经正常工作。
S3Q:软件完成当前操作,但不允许启动新的操作,此时单板处于静止状态。
2 CompactPCI热插拔单板的典型结构
CompactPCI单板必须包括一个CompactPCI总线接口器件,CompactPCI总线与PCI总线的接口逻辑和时序完全相。PCI总线接口器件常用的有AMCC公司的S5920、S5933,PLX公司的PCI9052等,或者使用FPGA内部的PCI逻辑核(core)。当然,也可以是接口器件和应用逻辑器件合二为一。CompactPCI热插拔单板的典型结构如图2所示。J1、J2是标准的2mm HM型接插件,这是CompactPCI热插拔规范规定的,CompactPCI单板就是通过这两个接插件连接到CompactPCI系统平台的。其中,连接CompactPCI总线的J1接插件的针是长短分级的(staged pin),即分为长针、短针、中长针。长针是一些电源针,最短的针是BD_SEL#和IDSEL,其它总线信号是中长针,而J2都是中长针。
3 CompactPCI热插拔单板的物理连接过程
CompactPCI热插拔单板的物理连接过程都是相同的,如图3所示。物理连接过程是从单板插入导轨开始,到最短的针BD_SEL#连接上为止;拔出过程则相反。
物理连接过程是一个机械连接过程。在机械连接的过程中,插入单板,首先进行静电放电,然后进行预充电,等预充电完成后总线信号针才能连接,最后是BD_SEL#连接上;拔出过程则相反。
静电放电条是为了保护热插拔单板在带电拔插过程中免遭静电损坏。预充电过程是为了减小热插拔单板在拔插单板过程中对总线信号的冲击(电容效应)。
javascript:window.open(this.src);" style="cursor:pointer;"/>
4 热插拔单板的电气设计技术要点
CompactPCI热插拔单板的电气设计必须满足热插拔规范《CompactPCI Host Swap Specificaiton》的要求。要保证在拔插单板时,不能对CompactPCI总线产生较大的冲击,不能影响CompactPCI总线上数据传输的正确,必须从如下几方面进行考虑。
4.1 静电放电
热插拔单板,在带电拔插过程中,为了保护单板免遭静电损坏,必须进行静电放电。因此必须在单板上设计放电条,在CompactPCI机箱的插槽上有放电导轨。这样,在插入前,先进行静电放电;在拔出前,也先进行静电放电。
在热插拔单板的PCB的最外层的下端设计三个放电条:strip1、strip2、strip3。例如,对于标准的CompactPCI后面板插件(高度233.5mm,长度80mm),应设计的三个放电条的长度分别为20mm、27.5mm、20mm,高度为1.5mm。其中,strip3与机壳直接相连,strip1与strip3之间跨接10MΩ电阻,strip2与数字地通过10MΩ电阻连接,如图4所示。插入时,Strip1首先与放电导轨接触,其次是strip2,最后是strip3;拔出时则相反。
javascript:window.open(this.src);" style="cursor:pointer;"/>