双口RAM在DSP与ICCD通信系统中的应用
已经进行写操作,那么IDT7007的内部机制可以阻止写操作的继续进行。
系统中,为了提高系统的稳定性,保证通信数据的正确,我们对IDT7007原有的忙逻辑进行了修改。硬件方面将双口RAM原有的两个BUSY信号求逻辑或,这个结果再与中断信号INT求逻辑或。这样,只要通信双方同时读写同一个存储单元,系统就认为读写非法,同时中断双方的读写操作。这样可以提高双方交换数据的正确性。
图3即为通信双方接口的BUSY逻辑时序。
(3)软件协调:对于任何一个双机系统来讲,双方的软件设计都是避免争端冲突的重要环节。软件方案将在下一节详细介绍。
4 软件设计方案
系统中,ICCD(右方)主要负责发送数据,信息处理系统(左方)主要负责接受数据。信息处理系统的软件基于TI的TMS320C6713,用C语言与线性汇编语言进行编程。通信部分的软件主要包括了两方面的内容:(1)系统自检,即右方向信令字单元0xFFFH写入"5AH",左方接到中断后,到0xFFFH中读取数据,如果是"5AH",说明通信正常,反之亦然。(2)传输数据,右方向信令字单元FFFH写入‘A5H’,在左方产生中断后,左方读信令字单元FFFH,如果是‘A5H’,说明在传输数据,读完数据后,向信令字单元FFEH写入‘AAH’,表示读完。右方接到中断后,读信令字单元FFEH,如果是‘AAH’,表示传数据成功。
图4为基于DSP的通信程序流程。
5 结论
基于双口RAM芯片IDT7007实现DSP系统与ICCD并行接口的设计方案,实现了ICCD和信息处理系统的高速通信,保证了整体系统的实时性。文中所涉及的中断,忙逻辑,软件协调三种模式,可有效解决两个系统之间的通信争端。整体系统已经通过调试,信息处理系统与ICCD可良好协调工作,系统运行稳定,构成合理,对相关系统设计有一定的参考价值。
- 在DSP与ICCD通信系统中双口RAM的应用(03-06)
- 基于面积的实现和基于速度的实现-两种YUV分离的FPGA的实现方式(06-05)
- 基于FPGA的PXA270外设时序转换接口设计方案(06-05)
- 嵌入式LonWorks网络智能网关设计(09-12)
- 一种基于FPGA的在线监控系统设计(07-24)
- 单片机与PC机之间并行通讯的一种实现方法(02-04)