基于PowerPC+DSP总线通信软件设计

2016-08-09 07:23祖嘉璐
中国新通信 2016年11期

祖嘉璐

【摘要】 PowerPC是IBM和Motorola公司共同开发的高性能、低功耗、开放架构的处理器,采用简单的指令集,同时集成了PCI-Express、千兆网络及CAN等多种网络通信控制器,支持DMA、I2C、UART等数据交换组件,具有处理能力强、网络通信接口多等优点,被广泛应用于汽车电子、航空航天、工业控制等要求高性能和高可靠性的领域。文章通过这一点对基于PowerPC750配备VME总线的CPU模块进行相关设计。

【关键词】 PowerPC DSP 双口存储器 故障管理

PowerPC处理能力强,性能优异、体积小、重量轻、散热量小,在航空航天、石油、水利、交通运输、工业控制、数控采集等领域获得了广泛的应用。DSP它不仅具有可编程性,而且实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器。将PowerPC和FPGA结合的相控阵雷达波束控制系统能够充分利用PowerPC的高性能处理能力和FPGA的定制电路设计能力,同时兼顾功耗、成本、设计周期等因素,是对体积要求小、负载要求轻、计算能力要求高的相控阵雷达波束控制系统的有效解决方法。

一、总线通信系统架构

总线通信系统由一个CPU(PowerPC)模块、一个DSP模块以及电源模块组成。CPU模块采用PowerPC750处理器,同时集成了网卡和大容量FLASH,具有高速的数据采集及处理、仿真任务调度以及数据存储等功能。DSP模块采用TMS320F240系列芯片,通过局部总线,与外界设备通过RS422、ARINC429等数据交换总线相连。用户通过PowerPC发送和接收任务数据,PowerPC再通过双口存储器与DSP相连接,进行数据交换,DSP则负责RS422串行通信总线和ARINC429总线通信的控制管理、数据接收和发送等,以上整个系统完成了总线的通信功能。主处理器为P2020通用嵌入式双核处理器,从处理器为XC7K325T FPGA,主处理器基本功能是根据天线波束指向要求,计算各天线单元移相器所要求的波控码,传输至每一个移相器,控制每一个移相器相位状态的转换。从处理器主要完成波控码值的分发,可以通过并行或者串行的方式,以减少码值分发的时间。

二、总线通信系统软件设计

软件设计层次结构包括Bootrom、VxWorks操作系统、应用程序三个部分。BootRom:主要用于操作系统映像、应用程序的加载,运行在目标机上,可以通过网络RJ45接口、串行RS232接口与宿主计算机板卡建立连接这种方式,把操作系统的映像、应用程序更新到系统的FLASH存储设备中,同时提供相关的功能,设置BOOTROM的启动方式、启动参数、自身更新BootRom程序。Vxworks操作系统:主要提供嵌入式系统所需要的任务调度、同步机制、中断处理、文件管理等基本功能、与目标机相关的设备驱动。嵌入式VxWorks操作系统内核和相关组件是由WindRiver公司提供的,在波控软件设计中,需提供与操作系统相关的硬件驱动程序。应用程序:应用程序为运行在VxWorks操作系统之上的波控程序。

三、总线通信系统软件设计

1、总线通信系统软件概述。总线通信系统软件由驱动软件和控制软件组成,是实现RS422串行通信和ARINC429总线通信的专用软件。其中,驱动软件实现DSP与主机应用软件间的接口控制与数据传递,它可提供各类消息数据的读、写支持,对DSP内程序的调度。控制软件负责RS422串行通信和ARINC429总线通信的控制、数据接收和发送等。

2、驱动软件。驱动软件运行在PowerPC模块上,是应用软件与控制软件的接口软件,为实现应用软件的管理功能,驱动软件控制DSP模块的初始化、启动、停止、自测试,监控DSP模块状态,控制DSP模块和主机的数据交换。当DSP在处在停止状态,调用DSP_Bit进行DSP自检测,调用DSP_Initialize进行DSP初始化。驱动软件按其功能分为:模块控制程序、RS422控制程序、ARINC429总线控制程序、操作信息控制程序。模块控制程序的主要功能是启动DSP模块上的初始化程序,使DSP初始化,然后启动DSP上的启动程序使DSP开始工作,还可以停止DSP运行以及启动DSP上的BIT程序进行自检测。RS422控制程序的主要功能包括对RS422各通道进行初始化(各通道的接收/发送数据缓冲区划分,每个数据块的新数据、错误、中断等标志字的设置,波特率、奇偶校验位、数据位和停止位的设置),接着从双口存储器读DSP端RS422接收到的消息,并将要通过RS422发送的消息数据写入双口存储器,最终由DSP上的RS422进行数据发送。

3、控制软件。控制软件运行在DSP模块上,它负责RS422串行通信总线和ARINC429总线通信的控制、数据发送和接收等。控制软件的主程序中包括对DSP的初始化、启动、自检测、停止及复位等功能。控制软件响应来自运行在PowerPC上驱动软件的下发的命令,进行相应功能操作。在DSP模块初始化中,定时器中断被使能。定时器中断服务程序会以固定的周期执行,其中包括RS422通信握手,RS422在线状态判断,RS422发送和接收数据,ARINC429总线发送和接收数据等程序。

总结:在总线通信软件中采用PowerPC + DSP的结构,既能发挥PowerPC高速信号采集和处理能力,又能发挥DSP高速数字信号处理能力。PowerPC上运行的驱动软件是应用软件与控制软件的接口软件,实现了应用软件的管理功能。该软件充分利用系统资源,实现了通信总线的控制与管理,满足了航电总线通信与管理的要求。