《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 业界动态 > 基于以太网的信号发生与采集控制系统的研究

基于以太网的信号发生与采集控制系统的研究

2008-03-27
作者:邱维宝, 傅 星, 邬 泳

  摘 要: 介绍了带以太网接口功能的信号发生与采集控制系统" title="控制系统">控制系统的设计方法。其中,使用ARM移植LwIP协议栈" title="协议栈">协议栈实现TCP/IP" title="TCP/IP">TCP/IP协议完成以太网通讯。信号发生部分使用FPGA依据DDS原理产生可调的信号波形,同时,系统采用ARM内置的A/D转换器采集外部信号用于反馈控制。
  关键词: 以太网 TCP/IP协议 ARM FPGA DDS


  现阶段,随着电子技术的飞速发展,直接数字频率合成(DDS)技术以其频率转换速度快、分辨率高、相位可控等优点被广泛用于任意波形发生系统当中,例如通讯系统、雷达及电子对抗系统等。而作为当今最受欢迎的局域网之一的以太网,现已成为社会重要的基础信息设施,是远程网络化控制的理想媒介。将两者结合起来正是本系统设计的主要内容。下面详细介绍基于以太网的信号发生与采集控制系统的方案。
1 系统平台
  系统在实现信号发生器的功能的同时要与上位机" title="上位机">上位机通过以太网交换数据,因而系统的难点一是以太网的通讯,二是可任意调整的信号发生,即要能实现波形频率的任意改变。
  目前以太网通讯的方案比较多,可以选用专用的以太网接口模块,也可以移植协议栈或者自己编写协议栈,还可以嵌入带有以太网接口的操作系统来完成通讯,例如μClinux、DSP/BIOS操作系统等。由于项目本身对成本的要求,故采用在软件上实现TCP/IP的方案。由于TCP/IP协议比较复杂,在缺乏功能强大的操作系统支持的嵌入式设备上实现并非易事,对于特定的应用,嵌入式设备往往只需要TCP/IP协议中某一小部分即可,故考虑移植现有的开放源代码的轻量级TCP/IP协议栈。目前这类协议栈有很多种,例如TinyTCP、uip、 LwIP等,其中,前两个协议栈的设计目标是降低TCP/IP代码的尺寸和内存的消耗,同时也简化了TCP/IP协议栈,比较适合对通讯协议要求不高且控制系统核心为单片机的场合。LwIP协议栈资源需求比较多,但功能相对齐全,并提供一套非常完善的内存管理方法,很适合32位控制系统。目前随着具有32位CPU的ARM的广泛使用,其价格也低廉很多,且集成了丰富的外围模块,故本系统选择ARM移植LwIP实现以太网通讯。
  可调信号的产生也有多种方案,比较常见的是使用DDS的方法实现。DDS技术已被广泛地用于任意信号发生系统当中。目前市面上有很多DDS专用芯片,但价格都比较昂贵且可扩展性不高,故系统选用性价比很高的FPGA来实现,这样可以灵活地产生系统所需的控制信号,并提供了很大的扩展空间。系统在FPGA内部专门开启了一个RAM用于存储系统所需信号的周期性数据,用户可根据要求存入数据并可实时地更改包括信号频率、幅值和相位等的参数。
  因此,系统平台选用基于ARM和FPGA两个处理器来设计。其中,ARM作为整个系统的主控单元完成与以太网的通讯、控制系统的信号发生、输入信号的采集、液晶显示和键盘扫描以及数据存储等功能。FPGA主要完成对ARM输入的控制信号进行DDS转换,完成DDS的核心部分并输出可控的信号波形。
2 硬件电路设计
  ARM采用三星公司的S3C44B0X,该芯片内部集成了ARM7TDMI核,具有71个通用可编程I/O口,8个外部中断源,可直接外接SDRAM扩大系统内存,内部具有日历功能的RTC(实时时钟)等模块。以太网接口芯片选用集成MAC层和PHY层的RTL8019AS。FPGA采用Altera公司Cyclone系列的EP1C3TT144C8,此芯片有近3000个逻辑单元,13个M4K RAM块,共59 904bits RAM可供使用。本系统中采用144管脚的TQFP封装的芯片,共有104个用户可用I/O口,在FPGA器件中是一款性价比很高的芯片。由于FPGA内部有较大的RAM空间,故可根据系统DDS要求的分辨率开设相应空间的RAM空间作为DDS的周期数据存储器。FPGA配置芯片选用Altera公司的EPC2,系统可采用JTAG模式烧写FPGA和EPC2,上电后FPGA采用PS模式从EPC2导入程序。D/A" title="D/A">D/A转换器选择Maxim公司的MAX5856A,它是具有双通道、8bits分辨率、200MSps采样率的高速D/A转换器,实际测试可以满足系统的要求。滤波部分采用的是一个两阶巴特沃兹低通滤波电路。为提高系统的人性化控制,系统加入了液晶显示和键盘控制,方便用户使用。SDRAM用于扩充ARM内存以供网络协议栈。Flash用于存储ARM的程序,NFlash存储一些系统固化的信息,同时可存储系统运行过程中所采集的数据和通过以太网收到的数据。系统固化的常用波形数据可脱离上位机独立工作,增加了系统的应用场合。系统的硬件原理图如图1所示。


3 软件设计
  系统的软件主要包括在ARM上实现TCP/IP协议和与上位机通讯,液晶显示与数据存储,控制FPGA按照要求工作。在FPGA实现DDS的软件部分,用Verilog语言编写。其中,ARM的主要工作是移植轻量级的TCP/IP协议栈LwIP完成以太网通讯。
  LwIP是瑞士计算机科学院(Swedish Institute of Computer Science)的Adam Dunkels等开发的一套用于嵌入式系统的开放源代码TCP/IP协议栈。LwIP既可以移植到操作系统上,又可以在无操作系统的情况下独立运行。LwIP TCP/IP实现的重点是在保持TCP协议主要功能的基础上减少对RAM的占用,一般它需要10KB的RAM和40KB左右的ROM就可以运行,这使LwIP协议栈可以在低端嵌入式系统中使用。
  LwIP的特性如下:支持多网络接口下的IP转发,支持ICMP协议,包括实验性扩展的UDP(用户数据报协议)、阻塞控制、RTT估算、快速恢复和快速转发的TCP,提供专门的内部回调接口(Raw API)用于提高应用程序性能,可选择Berkeley接口API(多线程情况下),在最新的版本中支持ppp,新版本中增加了IP fragment的支持,支持DHCP协议、动态分配IP地址等。
  由于系统所要传输的数据量并不大,对速度要求也不高,但对系统传输的稳定性有很高的要求,所以采用TCP/IP协议栈的TCP协议建立可靠链接来保证数据的稳定性。
  软件设计的主要工作集中于以太网驱动程序的编写和LwIP的移植以及TCP协议处理后的数据处理。系统底层的驱动由自己编写,主要是控制RTL8019AS的收发数据控制。系统接收以太网数据采用查询的方式,若RTL8019AS的缓存中收到数据则对数据进行处理。先将此次收到的数据全部读入系统的内存中,将其转换为LwIP标准数据包格式之后移交给LwIP协议栈处理。在系统建立Pbuf Pool结构链,用来存储接收数据包,为每个以太网链接建立一个netif以完成以太网的通讯。系统调试时借助于Spynet软件对网络通讯过程中的数据进行抓包,使调试更加便捷。图2描述了系统对收到的以太网数据包处理的简略的流程图。其中,TCP部分比较复杂,通讯之前需与上位机进行三次握手之后才能正确地建立链接。详细部分可查阅标准的TCP/IP协议栈说明书。

 


  信号发生部分采用DDS原理,由FPGA完成DDS的主要部分。其设计原理图如图3所示。其中,指令/数据控制模块主要完成与ARM之间的数据交换,并按照系统要求给出相位控制字和频率控制字来控制系统的波形产生。累加器和加法器完成对信号周期相位信号的产生,用以选通波形存储器中的数据。波形存储器由FPGA内部的RAM块组成,这里使用了双口RAM,系统对信号输出精度要求不高,故选用8位D/A转换器,则DDS的数据存储RAM大小设定为256个字节,系统可以根据要求随时写入所要产生波形的周期数据。外部接8位高速D/A转换器完成数/模转换,并接滤波处理电路。由于系统所选D/A转换器在开始工作之前需要配置一些参数,且由FPGA数据线输出,故在波形存储器与D/A转换器之间需要加一个转换模块,用于区分上电初始化和正常工作两个过程。该方法在理论上可实现任意周期性信号波形的产生,在系统实际调试中,系统可输出相位幅值可调的正余弦波、三角波等常见波形以及可用于演示雷达工作的线性调频信号等,频率可以达到1MHz。
  该信号发生与采集控制系统不仅实现了信号发生器的功能,还完成了与网络链接,可用于需要网络化控制的场合中。并且系统的成本低、功能全、人性化高,可实现反馈控制,具有广阔的应用前景。
参考文献
1 Dunkels A. Design and implementation of the lwIP TCP/IP stack. Swedish Institute of Computer Science, February,2001
2 Dunkels A. Minimal TCP/IP implementation with proxy support. SICS Technical Report, February 2001
3 Shanmugam R等著, 尹浩琼等译. TCP/IP详解 = Special edition using TCP/IP.北京:电子工业出版社,2003
4 田 泽. 嵌入式系统开发与应用.北京:航空航天大学出版社,2005
5 Morelli D. Modulating direct digital synthesizer in a quick- Logic FPGA.http://www.quicklogic.com/2001

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。