高速浮点dsp处理器的以太网接口与tcp/ip协议实现技术的制作方法

文档序号:7705452阅读:104来源:国知局
专利名称:高速浮点dsp处理器的以太网接口与tcp/ip协议实现技术的制作方法
技术领域
本发明涉及电子与通讯技术领域,尤其是高速浮点DSP处理器的以太网接 口与TCP/IP协议实现技术。
背景技术
自十多年前浮点数字信号处理器(Digital Signal Processors)诞生以来,便为 实时信号处理提供了运算上更为先进的备选方案。
浮点DSP处理器较之于定点DSP处理器,有如下优势(1)浮点DSP比定 点DSP的动态范围大。32位浮点运算DSP的动态范围可以达到1536dB,不仅 得到了极高的运算精度,还大大节省了运算时间和存储空间。减少了移位、溢出 等问题的检查。(2)由于浮点DSP处理器可以在单周期内完成一条浮点运算。 因而其处理速度远高于定点DSP。这一优点在实现高精度复杂算法时尤为突出, 为复杂算法的实时处理提供了保证。(3)浮点DSP处理器也可以支持定点数据 的存储于运算,其操作更为灵活。
鉴于以上优势,浮点DSP处理器备越来越多的应用于语音识别、实时视频 信号处理、雷达和声纳信号处理等领域。然而,工程师们更多的关注于浮点DSP 的高速运算能力,而忽略了发掘其对数据的高速传输功能。国内大部分浮点DSP 应用系统,都是釆用串口、 USB 口等接口进行数据传输的,在一定程度上限制 了高速浮点DSP处理器的应用。
以太网接口是一种先进的仪器接口,其传输速度从20世纪90年代的 10Mbps,迅速发展到了现在的10Gbps,但其硬件引线定义一直不变,为接口的 更新换代提供了极大的便利。其高速、便利、远距离、即插即用等优势,更使国 际上很多著名仪器公司将其作为最佳接口方案。
高速浮点DSP处理器虽然可以实现高精度和高速度运算,但其驱动能力较 弱,不易实现以太网接口。而且,由于一般的TCP/IP代码未考虑到在浮点处理 器上运行的特殊性,故不适宜移植到高速浮点DSP处理器中。国内只有极少数 在浮点DSP处理器外围架设以太网接口的实例,但其控制逻辑处理不够,不能移植到其他处理器中,且未考虑TCP/IP协议的高效实现。

发明内容
本发明的目的是提供一种高速浮点DSP处理器的以太网接口与TCP/IP协议 实现技术,针对现有技术的问题,从硬件设计上解决通用高速浮点DSP处理器 外围假设以太网接口问题,并实现TCP/IP协议在浮点DSP处理器上的高效运行, 从而使高速浮点DSP系统可以达到高速运算、高精度运算、高速传输的特性。
为了达到上述目的,本发明所采用的技术方案为
高速浮点DSP处理器的以太网接口与TCP/IP协议实现技术,其特征在于-所述技术步骤为
(1) 采用以太网适配器和高速浮点DSP处理器,将高速浮点DSP处理器 的低16位数据线与以太网适配器的数据线引脚一一对接,高速浮点DSP处理器 的五根地址线引脚与以太网适配器的五根地址线引脚一一对接,所述高速浮点 DSP处理器与以太网适配器的其他地址线引脚接地,所述以太网适配器的O号中 断引脚与所述高速浮点DSP处理器的5号中断引脚对接,所述以太网适配器通 过数据线与上位机连接;
(2) 将以太网适配器设置成采用中断模式和査询模式相结合的通信方式, 首先将以太网适配器设置成停止模式,经过一定的延时后,清除以太网适配器中 寄存器的标志位,然后依次配置接收缓冲区起始页、配置接收缓冲区结束页、配 置读指针寄存器、配置写指针寄存器、配置中断屏蔽寄存器、配置DMA寄存器 和设置多点播送参数,最后将以太网适配器设置成正常工作模式;
(3) 在高速浮点DSP处理器中采用C语言与汇编语言混合编写实现TCP/IP 协议的程序,所述实现TCP/IP协议的程序流程如下首先令高速浮点DSP处理 器接收中断信号,如接收到中断信号,则高速浮点DSP处理器判断当前指针寄 存器的值是否等于边界指针寄存器的值,如果等于,则跳回开始重新接收中断信 号,如果不等,则高速浮点DSP处理器判断有新数据;高速浮点DSP处理器判 断有新数据后,则判断新数据是否为ARP协议,如果是ARP协议,则高速浮点 DSP处理器提取协议中信息,如果不是ARP协议,高速浮点DSP判断新数据是 否为UDP协议,如果是UDP协议,则处理UDP报文并提取光谱信息,处理UDP 报文并提取光谱信息后,等待下一个中断信号,如果不是UDP协议,则高速浮点DSP处理器重新接收中断信号;
(4)在上位机中用Visual 。++语言首先调用Windows下的网络编程规范 Windows Sockets,再在上位机中调用Windows Sockets中针对Windows的扩展库 函数,并利用Windows的消息驱动机制,通过操作套接字Sockets来编写实现 TCP/IP协议的程序,首先在上位机中调用Socket ()函数,在函数中建立流式 套接字,完成后返回套接字号,其次调用bind()函数,将套接字与远程主机相 连,然后调用send () /recv ()函数,在套接字上读写数据,直到数据交换完成, 最后调用closesocket ()函数,关闭套接字,结束通信。
所述的高速浮点DSP处理器的以太网接口与TCP/IP协议实现技术,其特征 在于所述以太网适配器的型号为RTL8019AS,所述高速浮点DSP处理器的型 号为TMS320C6713,所述以太网适配器与所述高速浮点DSP处理器之间还连接 有型号为SN74LVTH16245的双向总线驱动器。
本发明设计了 DSP控制以太网适配器的逻辑电路;实现了以太网适配器的 底层驱动;将TCP/IP协议在浮点DSP处理器上高效实现;设计了作为网络客户 端的上位机的通信程序。本发明经过试验验证,当作为客户端的上位机向浮点 DSP系统发送数据时,DSP处理器通过以太网适配器响应中断并读取数据,中 断响应时间小于lms。当DSP处理器通过以太网适配器向外部发送数据时,上 位机可以正确读取数据,以太网接口的通信能力可达80M bit/s。


图1为本发明系统构造示意图。
图2为JTAG信号增强模块原理示意图。
图3为TCP/IP协议中的数据报格式示意图。
图4为本发明一个具体实施例示意图。
图5为以太网适配器的底层驱动流程图。
图6为TCP/IP协议在浮点DSP处理器上高效实现的程序流程图。 图7为上位机的通信程序流程图。
具体实施方式
高速浮点DSP处理器的以太网接口与TCP/IP协议实现技术,所述技术步骤

(1) 参见附图1和附图2。采用以太网适配器和高速浮点DSP处理器,所 述以太网适配器的型号为RTL8019AS,所述高速浮点DSP处理器的型号为 TMS320C6713,所述以太网适配器与所述高速浮点DSP处理器之间还连接有型 号为SN74LVTH16245的双向总线驱动器。将高速浮点DSP处理器的低16位数 据线与以太网适配器的数据线引脚一一对接,高速浮点DSP处理器的五根地址 线引脚与以太网适配器的五根地址线引脚一一对接,所述高速浮点DSP处理器 与以太网适配器的其他地址线引脚接地,所述以太网适配器的0号中断引脚与所 述高速浮点DSP处理器的5号中断引脚对接,所述以太网适配器通过数据线4 与上位机连接;
本发明中,高速浮点DSP处理器控制以太网适配器的逻辑电路,以太网适 配器选用REALTEK公司的RTL8019AS,该芯片是一款高集成的IOM全双工以 太网接口控制器。RTL8019AS可以按16位总线模式读取。高速浮点DSP处理 器一般使32位处理器,因此,需将其低16位与RTL8019AS的数据线一一对接。 RTL8019AS地址线有20根,高速浮点DSP处理器为达到运行高速,可采用DMA 方式发送数据,因此,地址线只连接了5根,其他地址线固定拉至低电平。采用 RTL8019AS的0号中断与DSP的中断5对接,即当RTL8019AS有数据流时, 高速浮点DSP处理器将会通过5号中断响应。RTL8019AS为5V器件,而 TMS320C6713工作电压是3.3V,所以二者之甜所有连接均通过SN74LVTH16245 进行隔离转换。
(2) 参见附图5。将以太网适配器设置成采用中断模式和査询模式相结合 的通信方式,首先将以太网适配器设置成停止模式,经过一定的延时后,清除以 太网适配器中寄存器的标志位,然后依次配置接收缓冲区起始页、配置接收缓冲 区结束页、配置读指针寄存器、配置写指针寄存器、配置中断屏蔽寄存器、配置 DMA寄存器和设置多点播送参数,最后将以太网适配器设置成正常工作模式;
本发明中,DSP处理器启动后,首先控制RTL8019AS,将其置于停止模式。 经过一定的延时后,清除寄存器的标志位。然后对RTL8019AS的寄存器位进行 配置,其中包括中断寄存器、DMA寄存器等。最后,将芯片配置为正常工作模式,与外部网络连接,从而实现以太网适配器的底层驱动。RTL8019AS提供两 种通信模式,即中断模式与査询模式中断模式是指,在新数据到达时,控制 RTL8019AS的处理器响应RTL8019AS相应管脚发出的中断,从而得知有数据到 达并处理数据;査询模式是通过CURR和BNRY两个寄存器的值来判断是否有 新数据,即当这两个值不等时,表明接收到了新数据。为了提高光谱数据传输的 准确率,本设计采用了两种模式相结合的方式。当有新数据到达时,DSP处理器 首先响应RTL8019AS的中断,进入中断服务子程序。在中断服务子程序中,DSP 对CURR和BNRY两个寄存器的值进行判断,当两个值不等时,认为有新数据 到达。
(3)参见附图3和附图6。在高速浮点DSP中采用C语言与汇编语言混合 编写实现TCP/IP协议的程序,所述实现TCP/IP协议的程序流程如下首先令高 速浮点DSP接收中断信号,如接收到中断信号,则高速浮点DSP判断当前指针 寄存器的值是否等于边界指针寄存器的值,如果等于,则跳回开始重新接收中断 信号,如果不等,则高速浮点DSP判断有新数据;高速浮点DSP判断有新数据 后,则判断新数据是否为ARP协议,如果是ARP协议,则高速浮点DSP提取 协议中信息,如果不是ARP协议,高速浮点DSP判断新数据是否为UDP协议, 如果是UDP协议,则处理UDP报文并提取光谱信息,处理UDP报文并提取光 谱信息后,等待下一个中断信号,如果不是UDP协议,则高速浮点DSP重新接 收中断信号;
本发明中TCP/IP协议在浮点DSP处理器上高效实现。嵌入式TCP/IP协议 族是一组不同层次上的协议组合。其层次由底而上分别为链路层、网络层、传输 层和应用层。在TCP/IP协议中,以太网数据报的封装是在RFC894中规定的。 同时,考虑到浮点DSP处理器数据运算格式的特殊性,将数据报中的数据内容 按照浮点格式打包。嵌入式TCP/IP主要包括实现IP地址到物理地址动态映射的 ARP协议,其中包括ARP请求和ARP应答;实现网际传输的IP协议;检测主 机是否可达的ping应答和端口不可达的ICMP协议;实现数据快速简单传输的 UDP协议;实现数据可靠传输的TCP协议。其中UDP和TCP两种不同传输层 协议应用于不同的场合,在不同的应用中可以只加载一种协议模块,也可以同时 支持这两种协议。实现协议的代码采用C语言和汇编语言混合编程的方式,汇编语言参考TI公司的TMS320C6000的汇编指令结构。所有代码在TI公司提供 的DSP开发环境CCS中调试,并最终烧录到DSP外围的FLASH存储器中。系 统上电时,将自动从FLASH存储器中引导程序。
(4)参见附图7。在上位机中用Visual C+十语言首先调用Windows下的网 络编程规范Windows Sockets,再在上位机中调用Windows Sockets中针对 Windows的扩展库函数,并利用Windows的消息驱动机制,通过操作套接字 Sockets来编写实现TCP/IP协议的程序,首先在上位机中调用Socket ()函数, 在函数中建立流式套接字,完成后返回套接字号,其次调用bind ()函数,将套 接字与远程主机相连,然后调用send () /recv ()函数,在套接字上读写数据, 直到数据交换完成,最后调用closesocket ()函数,关闭套接字,结束通信。
本发明中上位机中编写通信程序。Windows操作系统已经将TCP/IP协议做了 适当封装,所以,在PC机上实现TCP/IP协议较为方便。在Visual 。++可以直接 调用Windows下的网络编程规范——Windows Sockets。 Windows Sockets是一种 支持多种协议的网络编程接口,本设计调用其中包含的针对Windows的扩展库 函数,并利用Windows的消息驱动机制进行编程。协议的实现过程是通过操作 套接字(Sockets)来完成的。
参见附图4。在实际的系统中,根据需要用计算机产生模拟高精度光谱数据, 并将光谱数据进行运算处理,将其高速发送给某处理器控制的双口RAM中,可 将本发明应用在系统中。在实施例中,本发明采用TMS320C6713 DSP为CPU, 即高速浮点DSP处理器。采用RTL8019为以太网适配器。计算机直接与DSP实 现的以太网接口通过网线相接。计算机实时产生模拟高精度光谱数据,并以UDP 协议将光谱数据发送给DSP处理器。数据格式按照浮点格式打包。TMS320C6713 以TCP/IP协议接收数据,并进行运算处理,将处理后的数据通过共享双口RAM 的方式发送给外部处理器。以太网接口的通信能力可达80Mbit/s。
9
权利要求
1、高速浮点DSP处理器的以太网接口与TCP/IP协议实现技术,其特征在于所述技术步骤为(1)采用以太网适配器和高速浮点DSP处理器,将高速浮点DSP处理器的低16位数据线与以太网适配器的数据线引脚一一对接,高速浮点DSP处理器的五根地址线引脚与以太网适配器的五根地址线引脚一一对接,所述高速浮点DSP处理器与以太网适配器的其他地址线引脚接地,所述以太网适配器的0号中断引脚与所述高速浮点DSP处理器的5号中断引脚对接,所述以太网适配器通过数据线与上位机连接;(2)将以太网适配器设置成采用中断模式和查询模式相结合的通信方式,首先将以太网适配器设置成停止模式,经过一定的延时后,清除以太网适配器中寄存器的标志位,然后依次配置接收缓冲区起始页、配置接收缓冲区结束页、配置读指针寄存器、配置写指针寄存器、配置中断屏蔽寄存器、配置DMA寄存器和设置多点播送参数,最后将以太网适配器设置成正常工作模式;(3)在高速浮点DSP处理器中采用C语言与汇编语言混合编写实现TCP/IP协议的程序,所述实现TCP/IP协议的程序流程如下首先令高速浮点DSP处理器接收中断信号,如接收到中断信号,则高速浮点DSP处理器判断当前指针寄存器的值是否等于边界指针寄存器的值,如果等于,则跳回开始重新接收中断信号,如果不等,则高速浮点DSP处理器判断有新数据;高速浮点DSP处理器判断有新数据后,则判断新数据是否为ARP协议,如果是ARP协议,则高速浮点DSP处理器提取协议中信息,如果不是ARP协议,高速浮点DSP判断新数据是否为UDP协议,如果是UDP协议,则处理UDP报文并提取光谱信息,处理UDP报文并提取光谱信息后,等待下一个中断信号,如果不是UDP协议,则高速浮点DSP处理器重新接收中断信号;(4)在上位机中用Visual C++语言首先调用Windows下的网络编程规范Windows Sockets,再在上位机中调用Windows Sockets中针对Windows的扩展库函数,并利用Windows的消息驱动机制,通过操作套接字Sockets来编写实现TCP/IP协议的程序,首先在上位机中调用Socket()函数,在函数中建立流式套接字,完成后返回套接字号,其次调用bind()函数,将套接字与远程主机相连,然后调用send()/recv()函数,在套接字上读写数据,直到数据交换完成,最后调用closesocket()函数,关闭套接字,结束通信。
2、根据权利要求1所述的高速浮点DSP处理器的以太网接口与TCP/IP协 议实现技术,其特征在于所述以太网适配器的型号为RTL8019AS,所述高速 浮点DSP处理器的型号为TMS320C6713,所述以太网适配器与所述高速浮点 DSP处理器之间还连接有型号为SN74LVTH16245的双向总线驱动器。
全文摘要
本发明针对高速浮点DSP处理器的特点,为其设计了一种以太网接口方案,并将TCP/IP协议在DSP高速浮点处理器上高效实现。发明内容包括接口的硬件逻辑设计、以太网适配器的底层驱动实现、TCP/IP协议在浮点DSP处理器上的实现,以及上位机通讯程序设计。本发明解决了高速浮点DSP处理器往往不能高速传输数据的问题。本发明具有很强的通用性,适用于任何浮点处理器。
文档编号H04L29/10GK101594364SQ20091011712
公开日2009年12月2日 申请日期2009年6月23日 优先权日2009年6月23日
发明者兰天鸽, 方勇华, 伟 熊, 董大明 申请人:中国科学院安徽光学精密机械研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1