您好,  [请登录] [QQ登录]  [支付宝登录[免费注册]

商品分类

分享到: 百度搜藏 搜狐微博 新浪微博 腾讯微博 QQ收藏 人人网 Facebook Twitter

基于DSP的嵌入式以太网接口转换器

发布日期:2011-05-17

  小序

  很多丈量和控制配置都是通过串口与其他配置通讯,使配置间的数据交互和长途控制受到限定。要是能把串口的数据转换成网络数据格局,组建一个局域网(LAN)来举行数据的交互与传输,则上述的限定将得到有效的改造。思量到以太网组网技能的易于明白、实现、办理和维护,且本钱低廉、网络拓扑布局机动的好处,应用以太网组网技能来搭建数据交互的平台。此中的关键便是接口转换器的实现。

  DSP芯片作为一种特别的嵌入衰落处理惩罚器体系,具有嵌入的协处理惩罚器和用于快速数据处理惩罚的并行数据通道,并且DSP在语音图像信号处理惩罚方面也具有强大成果。在嵌入式网络配置中引入DSP技能,可以使嵌入式以太网变得更快,本钱更低,也更容易举行成果扩充,因此选用DSP芯片作为接口转换器的微控制器。

  为进步网络通讯服从,可以采取自定义的从数据链路层到应用层的网络通讯协议,以适应特定场合应用的必要;要是必要,还可以编写一个自定义协讲和TCP/IP互译的网关软件,实现嵌入式网络和Internet的连接。

  本文先容的接口转换器办理了车内的数字式语音通讯体系的接口转换题目。

  1 接口转换器的硬件计划

  在计划一个嵌入式体系时,不但要思量体系所要具备的成果,同时还要思量代价、体积等因素。TMS320C3X[1]系列芯片是TI公司推出的浮点运算DSP芯片。由于其较高的性价比,TMS320C3X的应用极其遍及;由于将浮点运算与定点运算连合起来,具有更高的精度,并且不必思量运算的溢出题目,因此浮点DSP具有更高的性能,更容易在体系的处理惩罚器上实现高级语言[2]。TMS320C32是TMS320系列浮点数字信号处理惩罚器的新产品,在TMS320C30和TMS320C31的底子上举行了简化和改造。在布局上的改造重要包括:可变宽度的存储器接口、更短的指令周期时间、可设置优先级的双通道DMA处理惩罚器、机动的引导步伐装入方法、可重新定位的停止向量表以及可选的边沿/电平触发停止方法等。对TMS320C32的开辟可以用汇编语言,也可以用C语言。利用汇编语言的好处在于,运行速率快,可以充分利用芯片的硬件特性;但开辟速率较慢,步伐的可读性差。利用C语言的上风在于,编程容易、调试速率快、可读性好,可以大大收缩开辟周期;但C语言对付其片内没有映射地点的特别成果寄存器不克不及操纵,如IF和IE、AR0~AR7等。

  以太网接口芯片采取CS8900A[3]。该芯片是Cirrus Logic公司生产的一种局域网信号处理惩罚芯片,内部集成了片上RAM,其模仿前端包括曼彻斯特编解码器、时钟规复电路、10BASE2T收发器和滤波器及一个AUI(Attachment Unit Interface)接口。CS8900A的MAC(Medium Access Control,媒体访问控制)引擎认真以太网数据帧的发送和吸取、检测和处理惩罚辩论,天生和检测帧引导头(Preamble),主动天生和校验CRC(Cyclical Redundancy Check,循环冗余校验)码。芯片在网络物理层切合IEEE 802.3以太网标准,支持全双工操纵,是嵌入式平台实现10 Mbps以太网连接的很好的选择方案。

  接口转换器的硬件框图如图1所示。DSP作为整个硬件模块的CPU,SRAM用作外部数据存储器,Flash用于存储步伐,CPLD或FPGA用于扩展DSP的对外接口控制。虚线框是可扩展的模块。



  2 TMS320VC32与CS8900A的连接要领

  CS8900A的20位地点线与TMS320VC32地点线低20位相连;CS8900A的16位数据线与TMS320VC32数据线低16位相连;数据总线高位使能端由A0控制。通过一片CPLD扩展TMS320VC32的外部控制成果,控制CS8900A的停止恳求、复位和读写操纵。TMS320VC32与CS8900A连接干系如图2所示。



  设置以太网接口芯片CS8900A事变于I/O模式。通过对芯片各寄存器的操纵可设置网络终端接口电路的成果和读取状态信息。

  CS8900A的重要寄存器有:

  LineCTL 决定CS8900A的根本配置和物理接口,设置初始值为00D3H,选择物理接口为10BASE2T。

  RxCTL 控制CS8900A吸取特定的数据报,设置RxTCL的初始值为0D05H,吸取网络上的广播或目标地点与本地物理地点雷同的精确数据报。

  RxCFG 控制CS8900A吸取到特定命据报后会引发吸取停止,RxCFG可设置为0103H,收到精确数据报时孕育产生吸取停止。

  BusCTL 控制芯片的I/O接口操纵,设置初始值为8017H,打开CS8900A的停止总控制位。

  ISQ 停止状态寄存器。内部映射吸取状态寄存器和发送停止寄存器内容。

  Port0 发送和吸取数据时,CPU通过Port0传输数据。

  TxCMD 发送控制寄存器。要是写入数据00C0H,那么网卡芯片在全部数据写入后开始发送数据。

  TxLength 发送数据长度寄存器。发送数据时,起首写入发送数据的长度,然后将数据通过Port0写入芯片。

  体系上电时,起首对CS8900A举行初始化,写寄存器LineCTL、RxCTL、RxCFG、BusCTL。发送数据时,写控制寄存器TxCMD,并将发送数据长度写入TxLength,然后将数据依次写入Port0口,数据就可以发送出去了;吸取到数据时,CS8900 A将触发停止,在此停止处理惩罚步伐中可以吸取数据并处理惩罚。

  3 接口转换器的软件计划

  3.1 自定义网络协议

  在嵌入式网络体系中,可以利用TCP/IP协议,但不敷经济。缘故起因是TCP/IP协议过于巨大,过于巨大,以至于服从低下。一方面是嵌入式体系各单位内部CPU的处理惩罚速率受限;另一方面,在某些特定场合特定任务的应用环境中TCP/IP成果冗余,拦阻了硬件效能的最大发挥。为此,针对特定的应用,订定相应的自定义网络协议,机动方便,针对性强,经济实用。

  下面单从数据应用的角度,定义一个大略、实用的以太网传输协议。

  3.2协议层次

  体系参照ISO的OSI模型,采取缩减的网络体系布局。如图3所示,网络体系布局分为3层:物理层、数据链路层和应用层。物理层规定网络的拓扑情势及通讯信号的电气特性;数据链路层实现点到点的通讯规程,完全实行IEEE802.3的CSMA/CD协议。



  3.3 帧布局

  以太网帧布局如下:




  物理层的前同步码(即物理帧前导符+物理帧界定符)8字节由硬件主动天生。撤除这8个字节,将别的字段的长度加起来,可以得到以太网帧的最大长度为1 518字节,最小长度则为64字节;加上8字节的前同步码,即可得到最小帧长度为576位。如许长度的帧可以或许包管全部辩论都可以检测到。这是由于IEEE 802.3标准中,两个站点的最远间隔小于2 500 m,由4此中继器连接而成,其辩论窗口为2倍电缆传播耽误加上4此中继器的双向耽误之和,合计为51.2μs。就10 Mbps以太网而言,这个时间段内便是发送64字节(即512位)的数据。

  利用CSMA/CD作为一种访问控制方法,意味着最短数据帧长度与网络上最长传输耽误时间隔断有着密切的干系。要包管在发送进程中出现辩论时,辩论域内的全部结点都应该知道产生了辩论,以便采获取当的步伐。这就必要最短数据帧长度必须大于网络上的最长传输耽误时间隔断,再加上壅闭附加时间和同步耽误时间等。这便是IEEE 802.3标准中最短帧长度为64字节的由来。[4]

  此中应用层帧范例分为数据帧和数据确认帧两种,详细布局如下:



  由于数据帧长度可变,又由于数据确认帧的MAC层长度仅为18字节,故在网络控制器初始化时须设置MAC层PAD添补成果(即MAC帧长度少于64字节时,网络控制器主动将其添补至64字节后再交给物理层)。

  自定义数据帧的预留办理单位还可以订定一些大略的控制或办理信息帧,以便更好地扩充成果和构造软件。限于篇幅,兹不赘述。如想连入Internet,必要在体系中参加一个可以或许转换本协讲和TCP/IP协议的前端网关(实质上是一个交互翻译的软件体系)。

  3.4步伐计划流程

  本接口转换器所要实现的成果是把从RS232串口吸取到的串口数据转换成以太网帧格局发送到以太网,并把从以太网上吸取到的帧数据解包转换到串口发送。步伐计划中包括初始化步伐、主循环、串行接口步伐和网络通讯接口步伐。

  步伐运行起首举行初始化事变,包括初始化CS8900A、初始化串口和初始化一些参数,然掉队入主循环。主循环内循环运行CS8900A停止办事查问步伐和串口缓冲区查问步伐,如有CS8900A停止申请,则停止调用网络通讯接口步伐;若串口缓冲区有数据,则停止调用串行接口步伐。流程如图4所示。



  (1)串行接口步伐

  串行接口步伐是DSP通过16C2550向外部数据口举行数据吸取、发送的步伐,目标是举行数据传输。此步伐包括串口发送吸取步伐及数据构造步伐。发送和吸取通过停止并发处理惩罚。整个串口发送步伐在主循环中调用。其模块的流程为:

  发送 收到网络串口数据→打开数据口→停止发送;

  吸取 停止吸取→整理串口数据→发送到网络上去。发送和吸取逻辑流程如图5所示。


 
  (2)网络通讯接口步伐

  网络接口步伐是DSP通过CS8900A对体系的其他单位发送下令和吸取信息的步伐,目标是与体系的其他单位通讯,吸取与发送数据包和信令数据包。此步伐包括网络数据吸取步伐、网络数据发送步伐、数据构造步伐。发送与吸取办事步伐流程如图6所示。



  结语

  该接口转换器已告成地应用于车内的数字式语音通讯体系之中。结果表明,本方案告成地实现了数据的及时传输,可以给种种应用RS232串口举行数据传输的嵌入式体系的联网操纵提供接口办理方案。本方案预留了升级扩展的成果。接入PCM编码器并对步伐作出相应窜改,可实现语音的数字化网络通讯;接入A/D转换器和种种传感器可实现数据征求体系的联网。