基于DSP的嵌入式TCP/IP协议的设计
以采用。
基于芯片嵌入式的实现
基于DSP的嵌入式TCP/IP网络通信系统主要包括DSP芯片和以太网控制器等芯片组成的以太网接口、驱动软件和嵌入式TCP/IP协议栈。
硬件设计
TMS320LF240x是TI公司发布的一款具有很高的性价比,适合用于工业控制领域的芯片。TMS320LF2407控制器是240x系列中功能最强的一种控制器,在电力自动化系统中得到了广泛应用。TMS320LF2407工作频率高(40MHz),有很大的存储空间(高达32K字的FLASH程序存储器,可扩展外部64K字程序存储器,64K字数据存储器,64K字I/O寻址空间),也非常适合用来处理复杂的TCP/IP协议。
RTL8019AS是台湾REALTEK半导体公司生产的以太网控制器,其性能包括:支持EthernetⅡ和EEE802.3标准;支持8/16位数据总线;内置16K字的SRAM;全双工,收发同时达到10Mbps;支持BNC,AUI,UTP介质。Rtl8019as可提供100脚的TQFP封装,减少了PCB面积,更适合于嵌入式系统。
RTL8019AS通过CR寄存器中PS0和PS1位将寄存器组分为4页。每页包含16个寄存器,00H到1FH为各种寄存器的地址,10H-17H为远端DMA端口,18H-1FH为复位端口(这些地址是相对于网卡I/O起始地址而言的,起始地址由配置寄存器的3-0bit决定)。TMS320LF2407对RTL8019AS的控制就是对寄存器编程,所以我们只用5根地址线与RTL8019AS相连。由于DSP与单片机不同,DSP的I/O空间与程序数据空间使用相同的地址区域,必须使用TMS320LF2407的控制信号IS控制对RTL8019AS寄存器的读写。TMS320LF2407的读/写速度很快,因此将RTL8019AS的IOCHRDY信号与TMS320LF2407的READY相连。需要注意的是TMS320LF2407和RTL8019AS工作电压不同,之间的连线需要通过电平转换。以太网接口电路如图1所示。
软件设计
以太网链路层遵循的IEEE802.3协议的CSMA/CD和CRC校验等功能由网卡控制芯片Rtl8019as完成,TMS320LF2407芯片则完成其他TCP/IP协议的解释和执行。TMS320LF2407控制RTL8019AS完成通信任务时,首先要对RTL8019AS复位,并对RTL8019AS的寄存器进行初始化,确定发送和接收的条件,然后才能发送数据或接收数据。当一帧数据发送结束、接收到一帧数据或出错等事件发生时,RTL8019AS向TMS320LF2407申请中断,TMS320LF2407响应中断后根据中断状态寄存器的内容进行相应的处理。
在TMS320LF2407内部,DSP程序完成对数据的打包解包。系统复位后,系统首先发送ARP请求,建立地址映射,并内部中断进行定时更新。DSP芯片根据情况将采集或收集到数据按照TCP协议或UDP协议格式打包,送入网卡芯片,由网卡芯片将数据输出到局域网中。反之,当有数据从RJ45过来,网卡芯片产生外部中断,请求DSP进行处理。DSP芯片对数据报进行分析,如果是ARP(物理地址解析)数据包,则程序转入ARP处理程序。如果是IP数据包则进一步判断是哪个协议向IP传送数据。如果是ICMP协议,判断是否为Ping请求,是则应答,不是丢弃该数据包;如果是TCP或UDP协议,且端口正确则按相应的协议处理数据,端口不正确丢弃数据包。程序框图如图2所示。
结论
本文结合电力系统自动化系统实际提出了一种基于DSP的嵌入式TCP/IP的实现,论述了协议的选择和软硬件的设计方法。实验结果表明数据通过该系统处理以后可以直接送到以太网进行传输。这为在电力自动化系统当中应用以太网通信技术提供了一种解决方法.
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)