引言
随着电子技术的发展,数字电路的集成度和性能有了非常大的提高,因此可以在单板上实现复杂的电路功能,本设计就是在TI公司高集成度的TMS320F2812处理器上设计外围接口电路,实现多路高速ARINC429接口、高速RS422接口、高速RS232接口,由于该款DSP的卓越性能,该接口板具有强大的多路接口通讯实时处理能力,同时由于该接口板的通讯接口都是标准接口,物理结构为PMC底板结构,具有一定的通用性。
系统设计
接口板采用TMS320F2812处理器,对串行数据的接收和发送采用智能控制方式,它通过一个512K(32K×16)双端口存储器(DPRAM)实现与主处理机之间的数据交互,双端口存储器与主处理机之间为PCI总线接口,物理连接方式为PMC标准插座。模块功能框图见图1。限于篇幅,本文主要介绍局部总线端电路设计,与主机接口端PCI设计另有文章介绍。
PCI总线是一种不依附于某个具体处理器的局部总线。从结构上看,PCI是在CPU和原来的系统总线之间插入的一级总线,具体由一个桥接电路实现对这一层的管理,并实现上下之间的接口以协调数据的传送。管理器提供了信号缓冲,使之能支持10种外设,并能在高时钟频率下保持高性能。PCI总线也支持总线主控技术,允许智能设备在需要时取得总线控制权,以加速数据传送。
图1 接口板功能框图
接口板主要由如下功能部分组成:
处理器电路、数据处理器TMS320F2812,主频150MHz,集成128K字容量程序FLASH、18K字容量SARAM;
双口RAM IDT70V27,容量为32K×16bit;
时钟和复位电路MAX791;
10路全双工RS422串行接口电路TL16C554;
2路全双工RS232串行接口电路;
4收2发ARINC429接口DEI1016A、BD429A;
PCI总线接口电路PCI9054;
逻辑控制电路XC95288XL;
提供+5V转+15V、-15V电路DCP020515DP,负载80mA。
处理器及存储电路
处理器
处理器选用TI公司的16位TMS320F2812芯片,主频可达到150MHz。主要特点如下:
150MIPS运行速度;
集成128K字容量程序FLASH,18K字容量SARAM;
56路独立的可编程多路复用I/O引脚;
锁相环(PLL)模块;
3个32位定时器
2个串行通信接口SCI;
1个串行外设接口SPI;
16路ADC(12bit);
2路eCAN接口;
3个可屏蔽中断;
JTAG接口;
哈佛结构。
本接口板在设计中用到TMS320F2812处理器的数据处理功能、存储器功能、通用IO功能、串行通信功能和JTAG接口。16位地址线A15~A0,16位数据线D15~D0。
TMS320F2812处理器地址空间映像如图2所示。该接口板地址分配如表1。
图2 地址映象
存储电路
存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,计算机才有记忆功能,才能保证正常工作。按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。传统的并行接口和串行接口设计无论在通信速率,还是在可靠性方面都不易满足要求。
构成存储器的存储介质,目前主要采用半导体器件和磁性材料。存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元,它可存储一个二进制代码。由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。 一个存储器包含许多存储单元,每个存储单元可存放一个字节(按字节编址)。每个存储单元的位置都有一个编号,即地址,一般用十六进制表示。一个存储器中所有存储单元可存放数据的总和称为它的存储容量。
表1 地址分配表
双端口RAM芯片有两套完全独立的数据线、地址线和读写控制线,因而可使两个处理器分时独立访问其内部RAM资源。由于两个CPU同时访问时的仲裁逻辑电路全部集成在双端口RAM内部,因而需要实际设计的电路比较简单。同时通过“busy”引脚告知该CPU以使之根据需要对该单元重新访问或撤销访问。双端口RAM的优点是通讯速度快、实时性强、接口比较简单、两边CPU都可主动进行数据传输;缺点是成本高,需要克服竞争现象。
共享存储器选用双口内存IDT7027,存储容量为32K×16bit。共享存储器具有两组独立的地址、控制、I/O引脚,允许从任一组引脚发出的信号对内存中的任何位置进行读或写的异步访问。双口内存IDT7027具有防止双口竞争的功能,该功能可以免去为避免双口竞争增加的硬件逻辑,通过使用芯片上的信号量可以获得芯片的控制权,只有获权的一组引脚上的信号才能访问内存,另外通过信号量的使用还可以将双口内存划分为大小不同的区。
在此模块设计中,双口存储器一边由DSP处理器控制,另一边由PCI总线进行控制,而芯片本身自带的BUSY通过逻辑设计接READY来实现双口存储器产生竞争时的应答。
双口存储器读操作访问
双口存储器的读操作时序如图3所示,/CE为读写数据操作的片选信号,低电平有效;/OE为输出控制信号,由系统读信号控制,低电平有效;/UB、/LB是高/低字节有效控制信号,低电平有效,设计中将这两信号下拉;R/*W信号在读操作中保持高电平。
双口存储器写操作访问
双口存储器的写操作时序如图4
所示,/CE为写数据操作的片选信号,低电平有效;/UB、/LB是高/低字节有效控制信号,低电平有效,设计中将这两信号下拉;R/*W为输入控制信号,由系统写信号控制,低电平有效。
双口存储器BUSY信号使用及时序
A/B通道对双口存储器的某一个单元同时进行访问时会出现竞争冒险,要避免这种情况的出现必须对访问信号判断优先级,IDT7025双口存储器通过自身硬件的BUSY信号引脚告知该CPU以使之根据需要对该单元重新访问或撤消访问,BUSY信号低电平有效,R/W为读写信号。
图3 读操作及时序
图4 写操作及时序
图5 读写操作时序
时钟和复位电路
时钟电路
F2812处理器上有基于PLL的时钟模块,为器件及各种外设提供时钟信号。锁相环有4位倍频设置位,可以为处理器提供各种频率的时钟。时钟模块提供两种操作模式,如图6所示。
内部振荡器:如果使用内部振荡器,则必须在X1/XCLKIN和X2引脚之间连接一个石英晶体,这种石英晶体薄片受到外加交变电场的作用时会产生机械振动,当交变电场的频率与田英晶体的固有频率相同时,振动便变得很强烈,这就是晶体谐振特性的反应。利用这种特性,就可以用石英谐振器取代LC(线圈和电容)谐振回路、滤波器等。由于石英谐振器具有体积小、重量轻、可靠性高、频率稳定度高等优点,被应用于家用电器和通信设备中。石英谐振器因具有极高的频率稳定性,故主要用在要求频率十分稳定的振荡电路中作谐振元件
外部时钟:如果使用外部时钟,可以把时钟信号直接接到X1/XCLKIN引脚上,X2悬空。
外部XPLLDIS引脚用来选择系统时钟源。当XPLLDIS为低电平时,系统直接采用外部时钟作为系统时钟;当XPLLDIS为高电平时,外部时钟经过PLL倍频后,为系统提供时钟。系统通过锁相环控制寄存器来选择锁相环的工作模式和倍频系数,如表2所示。
表2 锁相环控制寄存器位定义
该接口板采用30M石英晶体提供时钟,XPLLDIS引脚上拉使能PLL模块,倍频选择最大的XCLKIN×5=150MHz。
复位电路
复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。F2812的复位可由外部复位管脚引起。
F2812外部复位源采用MAX706芯片进行复位,MAX706复位的产生条件有以下3种情况:
上电复位,当Vcc>4.40V(典型值)时产生复位,并保持200ms复位有效;
掉电复位,当Vcc<4.40V(典型值)时产生复位,此时可防止对存储器进行错误写入;
手动复位,当手动复位信号有效,产生复位,用于调试。
MAX706的复位信号形成F2812的上电复位输入,使系统所有资源复位。复位电路如图7所示。
串行总线处理电路
通用串行总线(Universal Serial Bus, USB)是连接外部设备的一个串口总线标准,补充标准(On-The-Go)使其能够用于在便携设备之间直接交换数据。本模块串行数据的接收和发送都采用TL16C554协议芯片来完成,RS422和RS232总线传输通过不同的接口芯片完成电平转换,其功能框图如图8所示。
图6 DSP时钟输入电路
图7 复位电路
图8 串行数据功能实现电路
16C554通过对各个寄存器的编程完成串行数据的初始化及传输,在完成上电BIT后,主机可通过改变双口存储器的初始化参数来满足自身对串行数据格式的约定,16C554各寄存器地址分配如表3,各个寄存器对应的访问地址为该串行通道分配的基地址加上偏移地址,即:各寄存器访问地址=BASE+[A2A1A0]16。
表3 协议芯片寄存器地址分配
串行协议芯片通过有效的初始化才能实现串行数据的正确接收和发送,在进行初始化的时候确保串行通道没有接收和发送数据。其初始化流程如表4所示。
表4 串行协议芯片初始化
控制逻辑电路
控制逻辑电路负责整个DSP数据处理模块上控制和状态信号的产生,负责PCI总线时序控制和逻辑译码。该逻辑功能由CPLD可编程逻辑器件实现,逻辑描述由VHDL语言完成。控制逻辑电路主要完成以下功能:
a. TMS320F2812总线时序支持电路;
b.系统总线接口时序支持电路;
c.地址译码;
d.地址转换及地址三态控制;
e.实现对数据总线管理逻辑的控制;
f.系统总线复位。
结束语
根据以上原理,我们研制了该智能接口板,通用性强,接口简单,可以满足大多数应用条件,经使用证明设计合理,稳定可靠,为以后对各种创新打下坚实的基础。