微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于DSP的1553B总线接口电路设计

基于DSP的1553B总线接口电路设计

时间:09-12 来源:互联网 点击:

1553B协议部分由BU-61864协议芯片完成,外接逻辑电路由FPGA器件完成。其中DSP控制BU-61864的初始化以及消息的读取和处理。FPGA实现信号的控制和译码。而在DSP对BU-61864相关寄存器的控制和配置后,它可以工作在BC、RT或BM等模式下。在本次操作中,因为只需要记录来自机载火控系统的所有数据,因此只工作在总线监视器模式下即可。

当BU-61864接收到一个消息后,产生一个中断信号,该中断信号就会向C6713发送一次中断申请,C6713响应中断,并向相关寄存器做出配置。在BU-61864和C6713之间的控制逻辑电路由可编程逻辑芯片FPGA实现。控制逻辑电路包括地址译码电路和逻辑控制电路。其中地址译码电路功能是对接口芯片所使用的C6713存储器和BU-61864存储器进行地址选择和译码;而逻辑控制电路功能是产生BU-61864所需要的控制信号以及提供给C6713中断信号、握手信号、插入等待信号。所有的数据总线和地址总线,以及控制信号、中断信号都是由C6713和BU-61864提供给控制逻辑电路。它们的具体电路连接如图4所示。

4 软件驱动设计

接口的软件驱动设计主要应用C语言与汇编语言混合编程方式,这样有着较好的升级性和高效性。软件程序目的就是通过上位机的命令来控制接口卡完成系统启动、自检、自检返回、系统停止等工作。在系统启动后,完成对机载火控数据的读取和采集。软件驱动的主要功能是要完成C6713和BU-61864的初始化和中断服务程序,控制RAM空间的自检、与上位机的通信、中断响应、总线数据的读取发送。驱动程序的结构框图如图5所示。

4.1 芯片的初始化

本文最终将用于机载火控数据的采集工作,1553B总线接口卡主要是工作在MT模式下,记录来自机载火控系统的飞行数据,为后期的数据记录、数据分析做好准备。

1)对BU-61864的初始化

在MT模式下,要完成对BU-61864的初始化设置包括初始化相应寄存器,设置中断屏蔽,使其能正确实现MT功能。对BU-61864的初始化有非常严格的顺序,顺序不对可能引起芯片初始化失败,有关寄存器的配置顺序如下:

①首先进行软件复位,即将开始/复位寄存器设置为0X0001,使BU-61864进入复位。

②配置寄存器3,使其为0X8000,进入增强模式。

③中断屏蔽寄存器设置成0X0001,使能消息完成中断。

④初始化地址查找表、非法指令表、子地址寄存器等。

⑤配置寄存器1设置为0X5000,BU-61864进入消息监测模式。

⑥配置寄存器2设置成0X0008,使中断方式为低电平中断。

⑦将开始/复位寄存器配置成0X0002,来启动BU-61864的MT模式。

BU-61864初始化流程图如图6所示。

2)对C6713的初始化

对C6713的初始化也是设置相关寄存器,但是它的主要是有关寄存器的中断和串口设置。包括:中断屏蔽寄存器(IMR)、中断使能寄存器(IER)、中断标志寄存器(IFR)、中断控制寄存器(ICR),波特率设置寄存器(SCIBAUD)等。同时,C6713还要根据选择来决定通过C语言程序还是EMDA搬移数据,据此初始化相应寄存器。若用C语言编写,需要使能EINT4中断。若用EMDA,可以不需要CPU参与,减轻工作压力,那么初始化内容有:使能全局中断、使能EMDA完成中断、对读通道事件寄存器清零、对读写通道的CIPR清零、使能读写通道的通道中断使能寄存器。

4.2 自检任务描述

自检模块的主要任务就是完成对BU-61864的4kbRAM空间的检查,检测RAM空间是否出现错误。具体的操作方法可以向RAM内存空间写入连续的数据,然后读出来,与原数据进行比较看是否相等,如果是不相等的,那么表示有错。最后将记录下的所有的错误数通过串行口发送给上位机。

4.3 查询任务描述

在数据查询模块中,通过查询“读总线数据标志位”来进行1553B总线数据的接收、转发和上位机命令的读取。若“读总线数据标志位”的查询结果有效,C6713就从BU-61864命令堆栈相应的地址处对4个地址单元的内容进行依次读取。4个地址单元的内容分别为数据块状态字、时间标志字、数据块指针和接收到的命令字。然后根据命令字和数据块指针到数据堆栈读取总线数据,最后将接收到的总线上的数据转发出去。通过查询“读串口数据命令标志位”是否有效来进行接收上位机的命令,根据命令实现相应功能。

为了确保与上位机握手的可靠性,在查询程序中设置一个数据缓冲区。并且在查询程序中判断缓冲区中的数据,看收到的命令是否是一帧完整的命令。若是,则根据不同的命令设置系统的启动、停止、自检等相应标志,并将缓冲区中的数据依次向前移动一帧,数据指针也向前移动一帧。

5 结束语

机载火控数据采集记录逐渐向高速、高效、大容量存储的方向发展。DSP芯片的出现和

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top