VXI总线频谱分析仪模块中的多处理器通信接口设计

   2023-09-13 互联网2300
核心提示:  1、引言  中电科技第41研究所推出的VXI总线频谱仪是一款基于VXI总线系统架构的C尺寸、消息基虚拟仪器。它智能化程度高,具

  1、引言

  中电科技第41研究所推出的VXI总线频谱仪是一款基于VXI总线系统架构的C尺寸、消息基虚拟仪器。它智能化程度高,具有自检测和自校准功能,且采用了当前先进的全数字中频技术。

  此款频谱仪由频谱仪模块、驱动和应用软件、PC主控机三部分组成,其中频谱仪模块是其核心。该模块包含有两个处理器:嵌入式工业控制器PC104模块和数字信号处理器DSP。其中,PC104模块的一项重要任务是完成自检测和自校准功能,DSP的主要任务则是实现中频信号的全数字处理。在整机自检测和自校准过程中,PC104模块先向DSP发出状态修改指令,然后从DSP读取它处理后的校准数据,并对此校准数据进行计算和判断。PC104模块通过对这一过程的循环操作最终实现整机的自检测和自校准。在整机测量过程中,PC主控机向频谱仪模块发出控制指令,并从频谱仪模块中循环读取待测信号的频谱测量轨迹和模块的状态数据,其中频谱测量轨迹数据由DSP处理得到,状态数据由PC104模块判断得到。从而,由整机的两种工作过程可以看出,PC主控机、PC104模块和DSP构成了一个多处理器系统,且它们需要两两之间彼此双向通信。于是,为了保证三个处理器高效通信,整机要求设计一个多处理器通信接口。

  2、多处理器通信接口的顶层设计

  2.1 处理器的通信优先级定义

  在多处理器系统中,每个处理器都具有主动发起通信的能力,因此,为保证各处理器之间有效通信,在通信接口的设计中,首先必须根据各处理器的任务定义它们的通信优先级。

  在本项目中,从虚拟仪器的系统架构的指令控制角度考虑,PC主控机显然应该具有最高通信优先级。然而,从PC主控机需要从底层模块读取数据这方面考虑,PC主控机又不宜具有最高通信优先级。因为,在频谱仪工作的大部分时间里,PC主控机一方面要尽可能持续的读取大量轨迹数据,以保证显示轨迹的实时刷新;另一方面,它又难以自主确定轨迹数据何时准备好,它只有得到PC104模块或DSP的通信许可方能发起读取操作。因此,为解决这对矛盾,PC主控机被划分为两个通信实体,分别命名为命令控制块和数据获取块。命令控制块负责整机的测量状态参数设置;数据获取块则负责从底层读取数据。从而,命令控制块获得最高通信优先级;数据获取块则只能具有较低的通信优先级,且不能高于PC104模块和DSP的通信优先级。

  在频谱仪工作中,命令控制块将向PC104模块和DSP发出控制命令。在发送命令时,命令控制块可以采用并行方式,同时向两个处理器发送命令;也可以采用串行方式,向一个处理器发送命令,再由这个处理器向另一个处理器转发命令。由于,在自检测和自校准过程中,PC104模块会向DSP自主发出控制命令,所以从简化接口设计的角度考虑,命令控制块采用串行方式向两个处理器发送控制命令较为适宜。因此,定义PC104模块具有次高通信优先级,而DSP具有第3等级通信优先级。

  数据获取块在整机工作中既要从PC104模块读取数据,又要从DSP读取数据,所以它需要分别从两个处理器获得读取操作许可。而获取操作许可同样可以采用并行方式或串行方式实现,显然采用串行方式由PC104模块向数据获取块发出读取操作许可有利于简化接口设计。因此,在优先级定义上,数据获取块获得低于PC104模块而等同DSP的通信优先级,即第3等级通信优先级。

  从而,整机的三个处理器就构成了一个有四个通信实体、三层通信优先级的通信结构体系(如图1)。

  2.2 处理器的通信方式选择

  在定义各处理器的通信优先级后,还必须根据各处理器的总线类型及各自将要完成的任务,确定各处理器的通信方式。它们将决定通信接口电路的具体形式。

  在本项目中,PC主控机通过VXI总线与频谱仪模块接口。而VXI总线协议定义了消息基器件的通信协议。该协议包括字串行协议和共享存储协议。其中,字串行协议是基于UTRA的一种通信方式,它是消息基器件必须实现的协议。共享存储协议是对字串行协议的补充,它能够使用少量的辅助操作而实现大量的信息传输。PC主控机的命令控制块主要向PC104模块发送控制命令。这些命令简洁、发送频率低且发送时间是随机的,从而比较适合采用字串行协议来实现。数据获取块需要从底层频繁获取大量数据,因此采用共享存储协议更加有利,为此底层硬件必须为该协议准备一个缓冲存储器。

  PC104模块是频谱仪模块的主处理器。它通过16位的标准ISA总线与PC主控机和DSP通信。ISA总线作为一种标准的计算机总线,可以采用三种数据传送方式来实现信息传输。它们分别是:程序方式、中断方式和DMA方式。程序方式又分无条件传送方式和条件传送方式(亦称查询方式)[1]。PC104模块与命令控制块通信时,主要是接收顶层控制命令,此时它需要能随时对控制命令做出响应,因此采用中断方式工作比较合适。它与数据获取块通信时,实质上是与缓冲存储器通信。虽然通信时传输的数据量较大但整机对数据传输速率要求不高,由于无条件传送方式已经可以满足通信要求,且此种传送方式的接口电路设计简单,所以决定采用此种通信方式。

  PC104模块与DSP的通信主要有两方面,一方面PC104模块向DSP发送控制命令,这些控制命令主要是数字中频信号处理的各种参数,且参数较多;另一方面PC104模块从DSP读取自检测和自校准时的测试数据,此时的数据量也很大。由于通过一个缓冲存储器来实现大数据量传输是一种简单有效的方法;因此,在PC104模块和DSP之间也插入一个缓冲存储器,且PC104模块依然采用无条件传送方式来访问这个缓冲存储器。于是,PC104模块对大数据量的信息将采用相同的传输方式进行处理。

  在本模块中,选用了TI公司的TMS320C6000系列DSP作为数字中频信号处理的主控CPU。它提供了HPI、EMIF等总线接口与PC主控机和PC104模块通信。HPI由DSP的上位机(本模块中即为PC104模块)掌控主控权,所以它有利于PC104模块向下传输控制命令,但它并不适合大数据量传输。EMIF具有很强的接口能力,适合大数据量传输。它不仅具有很高的数据吞吐率,而且可以和目前几乎所有的存储器直接接口。因此,DSP与PC主控机和PC104模块通信时,由HPI以程序方式或中断方式来完成通信的挂钩及简单命令的传输,由EMIF以无条件传送方式或DMA方式来完成大数据量传输则较为合理。

  至此,多处理器通信接口的顶层设计得以完成。通信接口的具体设计将以此为依据而展开。

  3、多处理器通信接口的具体设计

3.1 通信接口设计

  多处理器通信接口的具体设计包括两大部分:接口硬件电路设计和接口软件协议设计。其中,接口硬件电路设计是整个设计的基础;接口软件协议设计是其核心。根据通信接口的顶层规划,需要为整机设计如图2所示的通信接口。

  3.2 接口硬件电路设计

  要实现上述通信接口,在硬件电路设计上有多种实现方法。其中一种方法是选用专用的接口芯片来搭建接口电路。这种方法的优势在于专用接口芯片的接口功能完备,时序控制简单,易于实现,但占用的物理空间较大。然而,VXI频谱仪模块结构紧凑,分配给接口电路的物理空间资源十分有限,因此,不适合采用上述方法。近年,随着FPGA技术的飞速发展,接口电路的设计也有了新的选择,即在FPGA上实现接口硬件电路的集成化设计。这种方法设计灵活,物理空间利用率高。因此,本项目根据顶层规划选用一片FPGA加一片双端口RAM(DPRAM)来实现接口硬件电路设计。接口硬件电路框图如图3。


  在整个接口电路中,FPGA是其设计核心。由于VXI频谱仪模块高度集成,所以在硬件电路设计中,复用了大量的总线资源。为实现总线的复用管理,在FPGA中又设计了一个内嵌的DPRAM(状态RAM)。在状态RAM中划分了一块整机状态区(如图4)。在整机状态区中定义了一个busy标识位。该标识即是数据获取块的读取操作许可标识,它将被用于管理PC104模块和数据获取块与DSP通信时对公用总线的分时复用。同时,根据整机的工作状态,需要存储的信息进行了分类,被分别存储到两个DPRAM中。这样就减轻了公用总线的通信负担,使数据获取块最大限度的占用公用总线,充分保证频谱显示的实时性要求。此外,两个DPRAM被统一编址,简化了PC104模块和数据获取块对它们的访问。

  3.3 接口软件协议设计

  接口软件协议设计是接口具体设计的核心。在本项目中,整机工作时会经历三种过程,测量过程,校准过程和参数修改过程。根据每种过程的特点,该协议分别定义了它们的通信规则。

  在整机测量过程中,协议规定PC主控机的命令控制块处于空闲状态。数据获取块以50ms一次的速率读取状态RAM的整机状态区和轨迹RAM的轨迹数据区;然后根据当前整机状态区busy位是否有效来决定下一个50ms时刻的操作;若busy位有效,则只读取整机状态区,若busy位无效,则依然读取整机状态区和轨迹数据区。PC104模块在整机扫描的回扫期间对整机的基本状态进行检测,并根据检测结果来对整机状态区进行操作,若一切正常,则不对其操作,若出现异常,则向整机状态区写入错误标识,并对异常硬件进行调整。DSP在这一过程中以当前扫描时间为周期向轨迹RAM中循环写入测量轨迹数据。

  校准过程包括自校准过程和手动校准过程。在这两种过程的大部分时间里,各处理器的通信规则是相同的,只是校准过程的发起阶段有所不同。自校准过程由PC104模块主动发起。当PC104模块检测到整机需要校准时,它向整机状态区写入校准标识,并将busy位置为有效,然后启动校准过程。手动校准过程由用户通过仪器的虚拟面板发起。当用户点击虚拟面板的校准按键后,命令控制块向PC104模块发出校准指令,PC104模块接收到命令后,向整机状态区写入校准标识,并将busy位置为有效,然后启动校准过程。进入校准过程后,命令控制块将处于空闲状态。数据获取块以50ms为周期循环读取整机状态区。PC104模块执行校准程序,通过公用总线向DSP发送校准指令,DSP根据指令处理校准数据并将结果写入轨迹RAM,然后PC104模块再从轨迹RAM中读取校准数据。待校准过程执行完毕,PC104向整机状态区写入测量标识,并将busy位置为无效,整机进入测量过程。

  参数修改过程即用户通过仪器的虚拟面板设置频谱仪参数的过程。手动校准过程的发起阶段就是一个特殊的参数修改过程。在参数修改过程中,当用户修改了某个参数,命令控制块将向PC104模块发送相应的指令。PC104接收到指令后,先将整机状态区的busy位置为有效,同时终止DSP工作,随后通过公用总线将计算好的全部修改参数传送给DSP。DSP接收完参数,调整数字中频状态,待硬件准备就绪后启动新一轮扫描。此时PC104模块再将busy位置为无效,整机进入测量过程。在整个过程中,数据获取块根据busy位的状态来决定具体操作。

  4、成果与结论

  按照以上设计思路完成的多处理器通信接口经过测试软件上万次循环通信实验和接口兼容性实验,证明该设计高效可靠,满足整机设计要求。采用该接口设计的VXI总线微波频谱分析仪模块项目已经通过相关专家组的设计定型鉴定,并成功应用到多套VXI总线ATE测试系统中。

  参考文献

  [1] 戴梅萼,史嘉权编著。微型计算机技术及应用(第二版)。清华大学出版社。

  [2] 陈光礻禹 编著。VXI总线测试平台技术。电子科技大学出版社。

  [3] 刘显庆,刘仁普编著。微机总线规范。机械工业出版社。

  [4] 李方慧等编著。TMS320C6000系列DSPs原理与应用(第二版)。电子工业出版社。


 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  隐私政策  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅