基于MPC8280的智能串口模块设计
扫描二维码
随时随地手机看文章
摘要:基于MPC8280的智能串口模块用于扩展CompactPCI计算机系统的串行通信接口。在模块设计中,通过使用HB6芯片,实现非透明PCI桥;通过外接收发电路,实现PowerPC微处理器自带的四路RS 422接口。该智能模块具有单独处理能力,在基于CompactPCI总线的系统中既可作主模块又可作从模块。该模块已经投入使用,在使用过程中性能稳定。
关键词:PowerPC;HB6;RS 422;CompactPCI
随着嵌入式技术的不断发展,微处理器的处理能力大幅提升。嵌入式处理器在通信设备、消费电子、军用电子等领域的应用越来越广泛。在军用电子领域,微处理器的处理速度、功耗及工作温度更是有严格的要求。
计算机系统中串口模块智能化已经成为趋势,为了能够更好地对各种设备和接口进行控制,逐渐开始在模块中使用微处理器,并移植嵌入式操作系统进行控制管理。该模块使用了PowerPC家族中的MPC8280作微处理器,搭配HB6进行了非透明桥设计,并在本板上移植了实时操作系统VXWORKS。
1 硬件设计
智能串口模块是基于G2处理器MPC8280的6U尺寸CPCI总线模块,符合PICMIG2.0R3.O。处理器采用Freescale公司MPC8280,主频450 MHz,最高处理性能885 MIPS,内嵌高速缓冲器(指令16 KB,数据16 KB),支持32位整型运算及硬件单/双精度浮点运算,最大功耗为2.3W;提供板载64位128 MB SDRAM,64位32 MB FLASH,E2PROM等存储设备。
I/O接口方面提供了四个串行接口,支持异步/同步方式,支持RS 232/RS 422电气接口标准。其中,异步方式的单口最大速率115.2 Kb/s,同步方式的单口最大速率1 Mb/s(实际性能根据系统负荷决定);提供一个USB 1.1标准接口,与串行接口4复用信号;提供一个系统控制台接口,接口符合串行异步RS 232标准,速率为9 600 b/s;提供两个以太网接口,支持10/100 Mb/s及半/全双工白适应,接口定义符合PICMG 2.16标准定义。
CPCI总线接口采用非透明桥设计,使用PCI6254芯片,配置其工作在通用模式下,总线为32 b数据宽度,33 MHz总线时钟。
该智能串口模块最大可提供四个RS 422接口(可跳线选择为RS 232),两个10/100 Mb/s及半/全双工自适应以太网接口,可满足大多数军用计算机系统的通信需求。采用非通明PCI桥设计,使之与主板的通信智能化,可应用于要求苛刻、环境恶劣的机载、车载、舰载计算机系统中。模块原理框图如图1所示。
1.1 通信接口设计
MPC8280专为串行通信优化而内嵌通信处理器(CPM)。CPM是一个32位RISC通信处理器(CP),有自己的ROM和RAM,存放着自己的微代码,它可以为需要通信能力的设备提供一个灵活、完整的解决方案,同时降低系统频率和能耗。CP提供了多个综合的通信通道,可以处理低层次的协议。
CPM模块提供的对外接口如表1所示。[!--empirenews.page--]
该模块将4个SCC设计为RS 422通信接口,其中一个可复用作为USB接口。将一个SMC设计为一个RS 232接口,作为调试控制台通信使用,如图2所示。
该模块将两个FCC设计为10/100Mb/s及半/全双工自适应以太网接口,如图3所示。
1.2 非透明PCI桥设计
该模块在CPCI接口部分采用非透明PCI桥设计,大大增强了使用灵活性,很大程度上简化了针对本串口板驱动程序的编写。针对该模块的板级固件已经完成了对本板上各功能部件的驱动,本板上通信接口由板载的处理器控制,板微处理器通过非透明桥HB6与主板交互信息,并根据主板信息对I/O接口发起访问。逻辑图如图4所示。
HB6有三种工作模式:标准透明模式、标准非透明模式、通用模式。通用模式又分为通用非透明和通用透明模式两种,本板的设计使用通用模式下的通用非透明模式。HB6芯片选择由硬件配置完成,U_MODE拉高表示工作在通用模式;拉高表示工作在工作在通用非透明模式;XB_MEM拉高表示如果工作在非透明模式时,自动开16 MB空间供主板访问。为S端的复位输入,如果该模式下用不到,将其拉高,置在无效状态。
该模块中,HB6的通信机制用到直接消息中断、门铃中断和内存映射。HB6的P端和S端各开一个内存窗口,经过HB6内部的内存窗口映射机制映射到对方可访问的地址区域,并可通过映射译码寄存器的设置而变化,从而可使内存映射窗口随意移动。
桥两端的阴影部分基址可以通过改变Upstrearn或者Dowmstrearn相应寄存器的值来进行选择,从而使桥两端阴影部分的内存区域可以分别在各自的内存寻址空间中任意移动,使得P端可通过移动内存窗口访问S端任意一段内存区域,反之亦然。
当桥的一段需要把数据发送到桥的另一端时,先将需要发送的数据写入可供桥另一端读取的本地内存中,然后引发桥另一端的消息中断,以通知其接收数据,桥的另一端保持在空闲状态,接收到消息中断后,立即从相应内存区域中读取数据,操作完成后发门铃中断,以通知桥的另一端可以进行下一次操作,然后回到空闲状态。需要注意的是传送数据的格式必须有统一的标准,本模块的数据块组织方式是前4个字节为操作方式,接着4个字节为传送数据的长度,该值不包括本身的4个字节,后面紧接着存放相应长度的数据。
2 结语
设计了基于PowerPC处理器的智能串口模块,开发了VxWorks的BSP。使本板可运行硬实时的Vx-Works操作系统,且在实际测试中运行稳定。该模块可以作为从板在CPCI体系的计算机系统中方便的使用,很大程度上它的智能性简化了主板驱动的开发,既可以通过HB6桥同系统中的其他模块通信,又可以通过网络与其他模块构成多点通信,在工业控制、军用电子设备、通信设备等领域应用前景极为广泛。