1、本文以RT模式为重点,论述在该应用方式下BU-61580芯片的硬件连接方式与软件设计实现。2、硬件系统设计TMS320F2812是美国TI公司推出的定点32位DSP芯片,处理器性能可达150MIPS。控制总线配置灵活,独立可编程IO口丰富。EP2C20Q240C8是美国ALTERA公司推出的高性价比FPGA芯片,内部资源丰富,可配置IO口众多。本次设计利用BU-61580支持16位传输模式的特性,将TMS320F2812的地址、数据以及控制总线通过EP2C20与BU-61580芯片连接。得注意的是TMS320F2812与EP2C20的IO口工作电压均为+3.3V,而BU-61580的工作电压为
2、+5V,所以,EP2C20与BU-61580之间的连接必须经过电平转换,本次设计选择16位双向电平转换芯片74ALVC164245DL。如图1所示,TMS320F2812的数据、地址、读写控制逻辑和外部存储器片选信号送入EP2C20,由EP2C20译码后产生BU-61580的读写控制逻辑信号,最后经过电平转换后送入BU-61580。具体信号的作用如下:(1)XZCS0AND1和XZCS6AND7:TMS320F2812的内部REG和RAM片选信号。配合地址总线,产生BU-61580的REG和RAM地址信号;(2)XRW,XRD,XWE:TMS320F2812的读写控制信号;(3)XINT2:T
3、MS320F2812的中断信号。由BU-61580的接收中断信号INT驱动;(4)STRBD:BU-61580的数据选通。由TMS320F2812的XRD和XWE配合产生逻辑动作;(5)SELECT:BU-61580的片选信号。当BU-61580的REG或RAM地址被选中时,SELECT置低,选中BU-61580芯片;(6)MEM_REG:BU-61580的REG或者RAM选择信号。当为高电平时,表示访问BU61580的RAM,当为低电平时,表示访问BU-61580的REG;(7)MSTCLR:BU-61580上电复位信号。低电平有效,正常工作以后,置高;(8)RTAD4RTAD0:BU-61
4、580的RT地址设置。在通讯时。总线上的作为BC模式工作的主机通过这个地址寻找RT从机;(9)RTADP:RT地址设置的奇校验位,即为RTAD4RTAD0地址信号的奇校验信号。一般与RTAD4RTAD0一起通过外部拨码开关设置。本设计将RTAD4RTAD0与RTADP一起连接至EP2C20,这样可以通过软件灵活更改RT地址;(10)RW_DIR:74ALVC164245DL双向控制信号。由TMS320F2812的读写控制信号译码之后驱动,负责在对BU-61580读写数据时,切换电平的转换方向;(11)16/8-BIT:数据传输模式选择。置高表示进行16位传输模式;(12)ZERO-WAIT:在
5、RT缓冲工作方式下,用于选择是否需要0等待。本次设计将其置高,即非0等待;(13)POLARITY-SEL:微处理器的读写信号使能选择。本设计将其置高,表示读信号时RD/WR为高电平,写信号时RD/WR为低电平;(14)ADDR-LAT:在缓冲工作方式下,不使用该脚,将其置高;(15)TRANSPARENT/BUFFERED:置低该脚,表示BU-61580工作在缓冲方式下。3、时序逻辑设计EP2C20对所有TMS320F2812引出的地址、数据、控制总线进行译码,最终达到匹配BU61580接口逻辑时序,正确稳定对其进行读写的目的。下面以在16位、缓冲、非0等待工作模式下,处理器对BU-6158
6、0的RAM进行读操作的时序为例说明FPGA译码时序逻辑的设计。通过对BU-61580的配置寄存器#2第3位置0,使得其在中断时由BU-61580的INT脚输出一个低电平。例如,当总线上数据传输完毕后,由BU-61580向TMS320F2812发出中断请求,TMS320F2812在其中断处理程序中将BU-61580的RAM内数据读出。这时,由TMS320F2812的XRD,XWE组合译码,产生BU-61580的STRBD、SELECT、MEM_REG信号,同时控制RW_DIR使74ALVC164245DL电平转换反相,开始读取RAM内的数据。整个时序应该如图2所示,最终仿真结果如图3所示。(16
7、位,缓冲,非0等待工作模式)4、软件设计在RT工作模式下BU-61580,主要是作为总线信息的被控制者。软件设计主要是完成对查找表和子地址控制字的编程,下面以本次设计为例,讲解RT模式软件设计的关键点。如图4所示,是本次设计的初始化部分软件流程图。(1)设置BU-61580RT地址:每一个工作于RT模式下的子终端必须设置RT地址,这是1553B总线工作时,BC模式下的控制终端寻找RT模式下的子终端所依据的地址。具体值是通过RTAD4RTAD0的高低电平配置,同时注意设置RTADP值,否则地址设置不正确;(2)初始化BU-61580各配置寄存器:1553B总线的整个协议比较复杂,BU-61580
8、为了对整个协议做到全支持,包含了17个16位的配置寄存器。BU-61580通过对这些寄存器的初始化配置,可以工作于不同的模式(BC/RT/MT),同时也为总线通讯提供了灵活的配置方式。这些寄存器只需要按工作需要进行配置,没用到的寄存器一般保持默认值。以本次设计的RT模式工作为例,具体配置如下:voidBU61580_RT_Init(void)BU61580Regs.StartResetReg.all=0x0001;/起始/复位寄存器(03H):/复位BU61580Regs.ConfgReg3.all=0x8051;/配置寄存器#(07H):/使能增强模式/越权模式T/R错误/禁止非法的RX传送
9、/增强型模式码处理BU61580Regs.IntMaskReg.all=0x0033;/中断屏蔽寄存器(00H):/RT循环缓存滚动结束/RT子地址控制字EOM/RT模式码/消息结束产生中断BU61580Regs.ConfgReg2.all=0xb85b;/配置寄存器#(02H):/增强型中断/使能忙查询表/使能RXSA双缓存器/写覆盖无效数据/接收同步指令而清除定时标签/中断状态自动清除/电平中断请求/增强型RT存储器管理/分离广播数据BU61580Regs.IntrptStatusReg.all=0x0002;/RT模式码BU61580Regs.ConfgReg4.all=0x2200;/
10、配置寄存器#4(读/写08H):/如果状态设置则重试BU61580Regs.ConfgReg5.all=0x0000;/配置寄存器#5(读/写09H):/设置16M解码时钟及RT地址BU61580Regs.ConfgReg1.all=0x8f80;(01H):/配置成RT模式/动态总线控制接受/忙/服务请求/子系统标志/RTFLAG(仅增强模式)(3)初始化BU-61580查找表和初始化BU-61580模式码选择中断表:因为BU-61580的总线通讯是基于内部查找表的,而这些查找表处于BU-61580的4K共享RAM的固定区域,所以在对RAM区初始化清零之后,需要对其中的固定区域,主要是堆栈指
11、针A/B、查找表A/B、模式码选择中断表。如图5所示,是RT在增强模式下的RAM分配。5、结语在软件调试阶段,我们可以使用DDC公司提供的1553B总线在线仿真调试工具TestSim对我们的系统进行功能验证,直至整个系统能够稳定可靠工作为止。图6为本次设计的部分仿真截图。本系统目前已应用于某航空数据管理系统中,工作稳定可靠。参考文献1DataDeviceCorporation.ACE/Mini-ACESeriesBC/RT/MTAdvancedCommunicationEngineIntegrated1553TerminalUsersGuide.1999R.2白宏阳,管雪元,薛晓中,李玉寰基.于DSP+FPGA的航空1553B总线RT设置方法J.导弹与制导学报,2010,(4):169172.3伏鹍,陈绍炜.61580芯片与DSP芯片的连接关系分析J.信息安全与通信保密,2009,(1):8284.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1