基于C6000 DSP NDK的组播网络设计与实现
摘要:随着系统应用的复杂化,很多情况下需要将相同数据分发至不同的使用终端,这也促进了网络传输组播模式的应用。基于实际应用需求,以TMS320C6455芯片为核心处理平台,利用TI公司DSPC6000平台上的NDK(Net Developer’s Kit)开发包,对Marvell公司的88E6060(SWI TCH)芯片进行配置,实现了适用于多个终端进行组播方式网络通信的嵌入式系统设计。经过测试验证,该系统工作正常稳定,实现了百兆组播传输功能。关键词:C6000;88E6060;嵌入式系统;NDK;组播网络0 引言 嵌入式系统采用以太网接口传输数据相对于传统的串口、并口、1553B总线接口来说具有通用性强、传输速度快的特点,并且保证了较高的可靠性。TI公司在TMS320C6455(以下简称C6000系列高端的芯片中,大多提供了网络接口模块,DSP6455)就是其中典型的一款芯片。它的工作时钟可达1 GHz,片上集成以太网接口模块EMAC。结合TI公司推出的NDK(Net DevelopKit)网络资源开发包,可以大大缩短嵌入式系统中网络应用的开发周期,并且性能不逊于W5300等专业网口芯片。由于一片DSP6455只有一个EMAC接口以及MDIO管理模块,并且NDK的软件初始化只查询一个PHY口就停止,所以传统应用中,典型设计是在该DSP芯片外部接一个PHY芯片,连接一个终端设备,或者通过总线直接连接以太网专用芯片来实现点对点的网络连接。而现在越来越多的嵌入式系统应用需要连接多个终端设备进行组网,在网络中进行数据交换。本文选择利用DSP6455外接Marvell公司的SWITCH芯片(88E6060),该芯片具备6个端口,每个端口都具备100M/10M全双工的通信能力,最终实现该嵌入式系统与其他两个设备的100 MHz组播方式的网络通信。1 电路原理设计 基于TI DSP6455的片内EMAC/MDIO模块、片外SWITCH(88E6060)芯片及其外围电路的接口设计,可以快速实现OSI七层模型中数据链路层和物理层(MAC+PHY)的组建。DSP6455支持三种接口连接方式,MII/RMII/GMII。MII接口(Media Independent Intetface)以及RMII(Reduced Media Independent Interface)接口分别为媒体独立接口和缩减媒体独立接口,它们支持10M/100M工作模式。GMII接口的全称是吉比特媒体独立接口(Gigabil Media Independent Interface),它支持10M/100M/1 000M三种工作模式。因为选取的88E6060只支持百兆MII/RMII的接口方式,本设计采用MII的接口方式进行连接,信号连接框图如图1所示。
设计过程中,使用88E6060的port5作为MII接口与DSP6455的EMAC接口进行连接,port0~port4可以任意使用,作为PHY对外进行连接。本设计以应用port0和port1为例进行说明,其他情况相似。配置时将88E6060的ENABLE_MII5和DISABLE_MII4管脚悬空,通过其内部上拉/下拉使能port5的MII口,DSP6455通过MDIO接口对88E6060的内部PHY寄存器进行访问,通过EMAC接口发送和接收网络数据。2 NDK的配置与使用 TI公司的NDK(Net Develop Kit)开发包是基于DSP/BIOS进行工作的,开发包已经集成网络开发所需函数,行使OSI七层模型中传输层、网络层和数据链路层的功能,并按网络开发所需将中断和任务进行配置。当NDK开发环境配置好之后,就可以利用传输语句进行数据的发送和接收。传统情况下,NDK只适用于对单一的PHY进行配置连接,一旦连接建立便中止查询其他的PHY是否可用。本例由于DSP6455外接一片SWIT CH芯片,理论上可以将所有能使用的PHY进行初始化并建立连接,所以需要对原有的工作流程进行改造,工作流程对比如图2所示。
改造后的NDK运行流程最重要的是实现对其他外部有效PHY的配置。配置过程需要添加MDIO控制函数来对PHY进行初始化操作。本文使用的PHY为SWITCH芯片的PHY0与PHY1口,所以需要添加对两个使用口进行初始化的语句,来完成对SWITCH芯片的配置工作,初始化代码如下: MDIO_phyRegWrite(0,0x0,0x1100); MDIO_phyRegWrite(1,0x0,0x1100); 在MDIO_phyRegWrite(uint phyIdx,uint phyReg,Uint16 data)函数中,参数phyIdx为所配置PHY的识别ID,参数phyReg为需要配置的寄存器序号,参数data为具体的配置值。两语句完成了SWITCH芯片PHY0与PHY1口的控制寄存器的初始化操作,使这两个PHY接口处于激活状态,如果外部出现网络连接请求,便会进行连接。同时通过MDIO_phyRegRead(uint phyIdx,uint phyReg,Uint16*pdata)函数来查询PHY的工作状态,如果一段时间仍未连接上,就转入配置流程,进行重新配置。具体PHY寄存器的地址以及位置信息参照88E6060的数据手册。
您可能也感兴趣:
为您推荐
8家险企股权被挂牌转让,为何险企股权不再被追捧?
深圳最低工资标准调整为2360元/月 失业保险金为2124元/月
辽宁实施失业保险省级统筹 对缺口核定等作出详细规定
排行
最近更新
- 芜湖释放创新“N次方”效应 数字赋能驱动产业升级
- 去年快递服务全程时限水平有较大提升 干线运输时限缩短
- 住建部:推动长江经济带高质量发展,打造区域协调发展新样板
- 江苏发布重大项目清单 增资扩产项目明显增多
- 山东抓投资抓项目 新兴领域投资规模持续扩大
- Gucci在2月将投放 10 个“SuperGucci”NFT
- 美国银行:美国CBDC将保持美元作为世界储备货币的地位
- 美股三大指数尾盘集体转涨
- 光伏发电概念股有哪些?光伏发电概念龙头股一览
- The new iPad屏幕对比评测
- 电源接通延时器
- 汽车电子稳定系统(ESP)详解
- 联想B520一体机拆解
- 焦炭相关股票有哪些?焦炭概念股票龙头一览
- 增强信号 3G无线上网卡改装拆解全攻略
- 盘点全球五大智能手机生产商 华为联想入围
- 三星新平板 Galaxy Note 10.1全拆解
- 智能监控防盗报警系统
- 格力电器未来三年股东回报规划:每年累计分红不低于当年净利润50%
- 消息称京东科技计划2022年在港IPO,募资10亿至20亿美元
- 恒大集团:呼吁境外债权人不采取任何激进的法律行动
- 海航董事长刘璐因个人原因辞职,在海航已近28年
- 青青稞酒预计2021年营收增长30%-40%,四季度净亏损超1500万
- 2022年在港上市募资10亿美元?京东科技:不予置评
- 财政部修订出台《财政行政处罚听证实施办法》
- 卖房子需要交什么税?卖房子必须携带哪些证件?
- 医保卡的使用范围有哪些?补牙可以使用医保报销吗?
- 小产权房能过户吗?购买小产权房有什么风险?
- 奕东电子的实际控制人是谁?奕东电子股票上市了吗?
- 百合股份是一家什么公司?百合股份的股票何时上市?