欢迎访问 九游会官方 官方网站!
首页 > 产品中心 > 连接系列
 

依据多核DSP的以太网通讯接口规划

发布时间:2022-01-09 12:15:41 来源:九游会官方

产品简介


  通讯接口的硬件电路。在嵌入式操作体系SYS/BIOS和网络开发环境NDK上,完结了以太网底层驱动和TCP/IP协议的程序规划。经过DSP与上位机进行以太网通讯测验,证明了以太网接口电路硬件及软件的正确性和实用性。

  跟着DSP处理器在现代工业的运用越来越广泛,DSP的功用不只只要快速运算处理,还需求与其他处理器或许设备之间进行实时数据交流,以完结资源的同享。因而,针对不同设备的需求,挑选安稳、快速和高效率的接口方法在当今数字信号处理体系规划中要害的组成部分。

  TI公司的8核处理器TMS320C6678(以下简称C6678)供给丰厚的片上接口资源用于处理器与外设之间的通讯,这些接口都可以用于DSP与外设之间的通讯,可是灵活性有差异,运用SGMII接口来完结千兆以太网通讯,可使得通讯接口一般化,可以适用于很多的设备衔接。本文针对C6678的芯片特色以及含有的接口资源,规划完结了千兆以太网通讯,首要规划了以太网接口电路、网络底层硬件驱动、TCP/IP协议的用户程序,并完结了与上位机以太网通讯测验,完结了数字信号高速有效地网络传输。

  EMAC的作用是将交流子体系的内部信号转化为GMII信号传递给SGMII模块;MDIO操控物理层芯片履行对多数据流的操控输入输出。

  本文挑选C6678作为主芯片,由于C6678的千兆网络交流子体系只支撑SGMII接口,所以本文挑选对SGMII接口的网络数据传输具有较好兼容性的物理芯片88E1111。88E1111芯片的内部结构如图2所示。

  88E1111的介质接口有铜介质接口和光纤接口。铜介质接口为MDI[3:0],经过设置HWCFG_MODE[3:0]来挑选运转形式。 88E1111集成的MDIO模块与EMAC的MDIO接口相衔接,可将便利网络操控端读取物理芯片状况寄存器,到达实时监测的作用。

  本文规划的使命是依据C6678片内以太网交流子体系和片外PHY芯片88E1111及其外围电路的接口规划。首要包含:C6678与88E1111芯片衔接、88E1111芯片装备以及88E1111芯片与网络介质衔接。

  C6678和PHY芯片88E1111的接口电路如图3所示。88E1111作业在SGMII接口形式下,不需求TXCLK时钟输入,更有助于削减电路板上走线的数量,一起也可削减噪声的发生。

  MDIO_CLK:办理数据时钟。该时钟信号由C6678片上的MDIO模块供给,该时钟频率经过装备MDIO的操控寄存器CONTROL中的CLKDIV位来操控完结。

  SGMII_TXP和SGMII_TXN:串行发送差分数据线。衔接DSP内部SerDes和物理芯片的S_IN管脚,DSP的SerDes经过该管脚向物理层发送串行数据,数据中包含发送数据时钟信号。

  SGMII_RXP和SGMII_RXN:串行接纳差分数据线。衔接DSP内部SerDes和物理芯片的S_OUT管脚,物理层芯片经过该接口将数据传送到DSP的SerDes,数据中包含数据接纳时钟信号。

  MDIO:办理数据I/O。可最多衔接32个PHY设备到DSP的EMAC,而且可以枚举一切PHY设备,读取PHY设备状况寄存器来监测PHY的衔接状况。数据帧结构契合802.3规范,包含读写指令、PHY地址、寄存器地址和数据等。

  由于88E1111上集成的MDIO与C6678集成MDIO模块进行衔接时,电压有所不同,前者电压为2.5 V,后者电压为1.8 V,所以在二者之间应该增加电压转化器。本文选用一片PCA9306,完结2.5 V和1.8 V之间的电平转化,其衔接电路如图4所示。

  88E1111与C6678的MDIO模块相衔接,MDIO最多可辨认32个物理芯片,在运用物理芯片之前需求对其进行装备,装备内容首要包含芯片的地址、形式等。装备CONFTG[6:0]管脚界说可查询文献,本文装备的硬件电路如图5所示,图5中可以不运用电阻,本文为了测验便利,加一个0 的电阻。

  88E1111硬件装备完结后,体系将固定为一种接口方法,依照文献的界说,物理芯片的地址为:PHY_ADDRESS=0b00001,芯片形式为:不带时钟,主动洽谈的SGMII形式。

  88E1111和网络介质之间无法直接衔接,因传输速度在千兆级,所以愈加需求规划适宜的网络阻隔变压器来下降传输损耗、回音和串扰。本文挑选千兆网口插座HR911130C,该插座内部自带变压器电路,只需在外部衔接滤波网络便可完结网络信号安稳地传输,如图6所示。88E1111和 HR9111130C选用差分衔接,在PCB布线时需求严厉等长,且一般还需运用阻抗匹配网络,如图6中的R1和C1。

  TI针对网络开发发布了网络开发套件(Network Development Kit,NDK),能将多个模块的装备操作交给NDK网络结构完结,一起数据分包和解析也无需程序员过多考虑,加快了网络开发进程。NDK构建在实时操作体系SYS/BIOS之上,NDK经过OS笼统层与BIOS进行交互,一起BIOS的cfg装备文件能对NDK各模块进行可视化检查。

  本文依据多核DSP实时操作体系SYS/BIOS上,规划了以太网通讯程序。该操作体系可以供给较多的集成模块,便运用户编写程序,且还有软硬件中止办理、多使命同步机制、多核通讯机制和存储器办理机制等,可为用户进行多线程多使命开发供给模块化的结构。以太网通讯接口的软件全体结构如图7所示。

  SYS/BIOS为整个软件供给集成开发环境,不只具有合适实时体系的多线程优先抢占机制,还可增加需求的封装库,使得编写程序时可以愈加便利地调用库函数。NDK是DSP的网络程序开发集成东西,其间,stack.lib给出了从顶层socket到底层PPP关于TCP/IP协议栈的封装库;nettool.lib供给用于socket网络套接字和用于网络运用开发东西的封装库;os.lib供给运用于SYS/BIOS和网络编程套件之间的体系和谐的封装库;hal.lib供给外围设备和网协议栈之间接口的封装库;netctrl.lib供给DSP网络编程的全体操控,可用来装备底层驱动和协议。

  本文DSP片上体系软件分为3部分:SYS/BIOS渠道和NDK的TCP/IP协议栈树立和装备;用户程序;编制底层驱动程序。

  NDK的根本结构如图7所示,可看出NDK开发套件与用户程序、SYS/BIOS操作体系和底层硬件都有亲近的联络。NDK中网络操控层和操作体系接口层与SYS/BIOS体系相衔接,NDK的硬件驱动层用于操控底层硬件驱动的装备,这些操作和装备均可在网络东西库中找到相应的驱动函数,并可直接由用户运用程序来调用完结。

  (1)底层硬件驱动包含:MDIO模块和EMAC模块的初始化;PHY芯片查找装备和状况监测;EMAC/MDIO中止使能。(2)TCP/IP协议栈的树立,装备接纳和发送缓存区的巨细,完结以太网数据的收发使命。(3)运用MDIO模块,依据MDIO读取的PHY状况寄存器来监测其衔接状况,辨认可以是CPU发生中止的状况改变事情,并将信息反馈。(4)封闭驱动,复位前面临寄存器进行的操作,回收占用资源。

  如图7所示,硬件驱动包含在硬件驱动层hal.lib中,用户需求对依照体系对驱动函数进行修正。C6000系列NDK的API封装了许多固定的驱动函数,具有特定的功用,比方_llPacketSerivceCheck()的作用是检测以太网数据包的结构,且将检测到的结构信息反馈给协议栈进行剖析处理。详细的驱动程序需求依照硬件体系的装备来进行规划,在C6678中,可在集成度较高的片上体系直接对网络通讯模块的寄存器进行装备查询,就可以完结硬件底层驱动,使得底层硬件可以有效地运转。

  DSP软件规划是依据SYS/BIOS实时多使命操作体系和C言语,选用Socket套接字,创立TCP/IP客户端(Client)和服务器端 (Server),Client担任与外部设备服务器端树立衔接并接纳数据包,Server用来向PC机发送处理后的数据包。接纳使命和发送使命流程如图 8所示。在C6678的内核Core0中树立两个同步线程使命,即数据接纳和发送使命,别离用来接纳TCP服务器发送过来的数据和发送处理后的数据到PC 上位机中进行处理、存储和显现。

  上位机测验程依据VC++的MFC界面规划,运用套接字Socket进行网络编程。程序中需规划两个同步线程,用来完结数据的实时接纳和动态显现功用。运用TCP服务器端发送船体结构应力数据,经过DSP的接接纳、处理和发送进程,终究发送到PC上位机进行数据动态显现,成果如图9所示。

  本文以8核处理器C6678为中心,对片上集成的以太网交流子体系接口硬件进行了研讨,依照接口的特色规划了包含以太网交流子体系和物理芯片的接口衔接、物理芯片与网络介质接口衔接的硬件体系,并完结了千兆以太网驱动,终究完结多核DSP C6678与上位机进行千兆以太网通讯。经过与上位机进行网络通讯测验,成果显现以太网数据通讯接口能实时高效地进行网络数据传输。

联系电话:+86-0510-87491482
国内销售:+86-0510-87491477
传真:+86-0510-87491427
服务热线:400-119-7777
国际销售:+86-0510-87499573
电子信箱:hrzp@hengxin.com
海外电子邮箱:oversea@hengxin.com

地址 :  江苏省宜兴市丁蜀镇陶都路138号    邮编 : 214222      网址 :  www.hengxin.com