基于MPC8640处理器的通用处理模块硬件设计

2022-03-19 09:50:33 | 浏览次数:

摘要:高性能处理器是现代航空电子系统的一大显著特征,其运用也越来越广泛。该文描述了一种基于MPC8640处理器的通用处理模块硬件设计,该模块具有四个高性能处理器,每个处理器同时拥有大容量内存、Flash存储器、NVRAM存储器和高速串行总线接口,处理器之间采用RapidIO交换技术进行互联。除此之外,模块还支持板级以太网交换功能。

关键词:MPC8640; LRM;RapidIO交换;以太网交换

中图分类号:TP273 文献标识码:A 文章编号:1009-3044(2014)20-4922-04

Hardware Design of General-purpose Processing Module Based on MPC8640 Processor

ZHOU Hong, SHEN-hua

(Aeronautical Computing Technique Reaearch Institute,Xi’an 710119,China)

Abstract: High-performance processor is an aspect of modern avionics and applied in more and more application. This document describes the hardware design of general-purpose processing module based on MPC8640 processor. The module is constructed by four high-performance processors .Each of them has large capacitance main memory, Flash memory , NVRAM memory and high-speed serial bus interface. Four processors connect to each other with the RapidIO technology. Besides, module also supports board ethernet-switch function.

Key words: MPC8640; LRM; RapidIO Switch; Ethernet-switch

随着微电子水平的迅速发展,处理器的性能成指数级上升。当前,主流嵌入式处理器已经达到GIPS的处理能力,运用也越来越广泛。该文介绍一种基于MPC8640处理器的通用处理模块的硬件设计。该模块运用于航空电子系统,采用标准化、通用化的设计思路。由于采用现场可更换模块(Line Replace Module,LRM)结构,使得模块的维护非常便捷。

1 模块系统结构

通用处理模块(简称模块)应用于机载电子设备中,其使用领域必须具备可靠性高、维修性好、体积小、重量轻等特点。因此在设计时采用功能模块划分的思想,各个功能模块相互独立[1]。为了实现更高的数据处理能力,模块采用多处理器并行工作的模式。处理器之间通过高速总线进行互联。同时,模块还提供高速串行接口,用于与外部的接口板进行数据通信。

基于前面的设计思想,模块设计时选用4片MPC8640处理器作为数据处理的核心。MPC8640处理器是Motorola推出的一款高性能RISC处理器,采用e600内核,属于G4代产品,峰值处理性能2.3GIPS。处理器支持32KB的L1级数据和指Cache ,L2级Cache的容量达到了1MB。为了支持向量运算,MPC8640处理器引入了Altivec技术。除了支持高性能的内核之外,MPC8640处理器还具有高性能的DDR2控制器、高速Serdes接口等外部设备[2] [3]。

设计时每片处理器的主频设置为1GHz,包括主存储器、局部存储器以及温度监控电路。四片处理器采用RapidIO交换实现数据共享。除此以外,模块还包括复位电路、看门狗电路、电压转换电路、板级逻辑控制电路、时钟电路、高速串行接口电路、以太网交换电路。模块的系统结构如图1 所示。

2 模块硬件设计

从上述的图1可以看到,模块四个处理器以SMP的模式工作,处理器之间相互独立,执行程序的功能也一样。按照功能划分,模块硬件设计主要包括:处理器电路设计、RapidIO交换电路设计、以太网交换设计、逻辑控制电路、复位电路、时钟电路以及电压转化电路。每部分电路遵循通用化、标准化的设计思路,具体描述如下。

2.1 处理器电路设计

模块的每个处理器节点包括三个部分:DDR2电路、局部存储资源电路以及温度监控电路。模块工作之前,处理器首先进行上电初始化配置,所有硬件接口初始化为确定的工作状态。设计时处理器的配置信息如表1所示。

每片处理器主存采用4片DDR2芯片实现,总容量1GB,设计参考时钟200MHz。DMA工作模式下的传输带宽为700MB/s以上,拷贝传输测试的性能达到130MB/s以上。

每片处理器的局部存储资源电路包括Flash芯片和NVRAM芯片,访问宽度分别为16位和8位,存储容量分别为128MB和128KB。Flash芯片存储处理器的启动程序、操作系统程序以及用户程序等代码;NVRAM芯片存储模块的重要数据。两种存储资源的片选信号分别挂接到LBC的不同片选输入上,Flash的读带宽可以达到5MB/s以上,写带宽可以达到120KB/s以上;NVRAM的读写带宽可以达到3MB/s以上。

为了监控处理器内部及其附近的温度,MPC8640处理器提供了温度监控引脚,采用ADT7461AR芯片用于温度采集。ADT7461AR是一个双通道数字温度计,工作电源3.3V,具有低/超温报警功能,采用I2C接口实现主机对远程/本地温度数据的采集,远程结温测量精度[±]1℃,本地温度测量精度[±]3℃。芯片默认的测温范围为0℃至+127℃,宽温模式下可调整为-55℃至+150℃[4]。ADT7461AR通过I2C总线与处理器连接。

2.2 RapidIO交换电路设计

模块内部采用高速串行RapidIO总线实现互连通信,RapidIO交换芯片采用TUNDRA公司的第三代RapidIO Switch芯片Tsi578。其主要特点是:支持高达80Gb/s的聚合带宽,符合RapidIO互连规范V1.3,支持硬件广播,具有8个4x端口或16个1x端口的交换能力;端口的频率可以配置为1.25 Gbps、2.5 Gbps、3.125Gbps;支持混合的速率和带宽配置[5]。

模块四个处理器节点分别连接到Tsi578芯片的四个偶数端口上,每个端口配置为2.5G,4x工作模式,芯片参考时钟为156.25MHz。通过RapidIO交换芯片,四个处理器实现全交叉互联。单处理器节点的读带宽达到200MB/s以上,写带宽超过600MB/s。

2.3 以太网交换电路设计

以太网交换电路包括两大部分:处理器PHY电路和交换电路。PHY电路芯片选用VSC8641XKO-03,与处理器的以太网控制器端口相连接,如图1所示。处理器的以太网端口和PHY芯片都配置为GMII模式。

四路处理器的PHY芯片之间采用交换芯片实现互连。芯片选用VSC7428XJG,支持8个千兆以太网端口交换,同时内部采用兼容MIPS架构的处理器用以管理芯片的工作,处理器工作频率为416MHz[6]。设计时交换芯片工作模式配置为非管理模式,芯片通过SI接口读取外部EEPROM的数据完成上电初始化。

2.4 电源电路设计

模块功能复杂,元器件种类较多,各种芯片的供电电源也较多。为了给芯片供电,模块设计了多路电源电路,以完成电源的转换。

模块的电源种类如表2所示。

2.5 时钟电路设计

模块需要多种频率的时钟信号源,主要包括:处理器时钟、以太网时钟、RapidIO参考时钟以及PCI-E参考时钟。模块时钟结构如图2所示。

如图所示,66MHz晶振通过高速时钟驱动器驱动,产生四路时钟,分别输入到四片处理器的外部时钟引脚上,通过处理器的内部PLL作用分别产生内核时钟、MPX时钟以及DDR2时钟。125MHz晶振也通过高速时钟驱动器驱动,产生四路时钟,分别接入到四路PHY芯片的参考时钟引脚上。每个处理器的RapidIO端口参考时钟分别由100MHz的差分晶振产生。

模块选用25MHz晶振作为外部时钟源,采用PLL芯片通过倍频产生4路100MHz的差分输出信号送至4片MPC8640处理器,作为PCI-E的参考时钟。

2.6 复位电路设计

模块支持三种复位方式:上电复位、手动复位和JTAG复位。上电复位采用MAX706TESA芯片监控FPGA_DONE信号,当被监控信号电平达到3.3V时,芯片产生200ms的复位信号;手动复位信号用于模块的调试阶段,通过测试台输入到模块上;JTAG复位信号由仿真器输出,用于仿真器调试模式下的复位实现。三种复位信号在FPGA中进行逻辑处理,输出作为处理器和其他芯片的硬件复位信号输入。模块复位电路结构如图3所示。

2.7 FPGA设计

模块采用Xilinx公司的XC3S400AN-FGG400来实现内部控制逻辑以及局部总线接口转换,XC3S400AN-FGG400具有400K的系统门电路资源,11776个CLB单元,372个IO接口[9]。芯片的接口电压3.3V,辅助电压2.5V,内核电压1.2V。FPGA实现的功能如下:

1) 产生处理器以及其他硬件资源的复位;

2) 实现看门狗电路;

3) 完成处理器局部总线控制器(LBC)的地址译码;

4) 实现Flash、NVRAM芯片的读写控制信号;

5) 内部实现寄存器,用于测试和存储外部离散量信号,处理器可以通过LBC实现对寄存器的读写操作;整个逻辑采用可综合的VHDL语言实现,逻辑通过了功能和时序仿真。

3 设计验证

模块的设计验证主要通过软件测试程序进行,包括DDR2验证、Flash验证、NVRAM验证以及RapidIO验证。

1) DDR2验证:DDR2验证分为系统内存区验证和保留区内存验证,分别对内存区域按照8位、16位和32位的方式进行内存写,再依次读出内存中的数据与写入的数据进行对比。

2) Flash验证:由于Flash中存放处理器运行的代码数据,不能进行Flash擦除操作,故采取读校验和的方式进行测试。体现为采用读三次校验和进行数据比较。

3) NVRAM验证:分别对NVRAM写入8位、16位、32位的数据,然后再依次读出每个地址位的数据与写入的数据进行比较。

4) RapidIO验证:模块每个处理器节点都向其余三个节点写入8位、16位、32位数据,每个处理器的访问地址分开。然后每个处理器依次读出每个地址的数据与写入的数据进行比较。

4 结束语

本文介绍了一种高性能通用处理模块的硬件设计方法,从系统结构、各功能模块的硬件设计方面进行了详细的描述。模块运用于新一代机载电子设备上,与系统中其他设备共同作用,使机载电子系统的性能达到最佳。模块经过测试验证与环境试验条件,满足机载电子系统的使用要求。

参考文献:

[1] 汤艳飞,文敏华.基于MPC8640D处理系统的技术研究[J]. 航空计算技术,2012(1):120-122.

[2] MPC8641D Integrated Host Processor Family Reference Manual [EB/OL]. Freescale Semiconductor Inc, 2008.

[3] MPC8641 and MPC8641D Integrated Host Processor Hardware Specifications[EB/OL].Freescale Semiconductor Inc, 2009.

[4] ADT7461 Datasheet [EB/OL]. Analog Devices Inc,2004.

[5] Tsi578 Serial RapidIO Switch User Manual [EB/OL]. Tundra Semiconductor Corporation,2007.

[6] VSC7428 and VSC7429 Caracal Family of Carrier Ethernet Switches Datasheet[EB/OL]. Vitesse Semiconductor Corporation,2010.

[7] TPS51116 Datasheet [EB/OL]. Texas Instruments Corporation, 2004.

[8] LTM4616 Datasheet [EB/OL]. Linear Technology Corporation.

[9] Spartan-3AN FPGA Family Date Sheet [EB/OL]. /spartan3an, 2007.

推荐访问: 处理器 模块 通用 硬件 设计