摘要:为了处理工业长途操控设备的软件更新带来的本钱和功率问题,在研讨了以TMS320C6670为中心的DSP体系的结构和程序发动的基础上,提出了依据以太网的DSP程序长途加载办法。该办法首要依据BOOTP协议的播送和以太网UDP协议完结。实践标明,该加载技能灵敏牢靠,为长途操控体系的调试和更新供给了便当。
导言
跟着科学技能的不断进步,网络通讯技能和DSP技能飞速发展,许多智能仪器仪表、工业长途操控设备等能够接入到互联网,完结网络化、智能化的办理和操控。在这些设备中,有许多是以DSP为中心的设备,这些设备的程序代码的引导发动是一个很重要的问题。传统的DSP设备的程序加载办法是经过硬件仿真器来完结的,但在实践工业运用中,这种办法存在仿真器带着不便携和设备软件保护更新不方便等缺陷。因而依据网络的DSP软件更新便是一种很好的处理方案。
文中介绍了DSP程序加载的基本原理,以TI公司的多核DSP TMS320C6670为例,完结了一种依据以太网BOOTP协议的DSP程序加载技能,运用网络通讯完结DSP程序的动态加载,进步软件更新功率。
1 原理
这儿运用传统的PC机作为下载服务器,以TMS320C6670为中心的DSP设备作为客户机,客户机发动后,不知道任何网络信息,需求经过TCP/IP协议的相关协议IP、UDP、BOOTP供给的功能来完结信息的传达。客户机经过BOOTP协议取得所需相关网络信息,然后经过UDP协议包获取待履行的引导程序,并运转之。
1.1 IP协议和UDP协议
IP(Internet Protocol,互联网协议)是TCP/IP中网络层协议。UDP(User Datagram Protocol,用户数据报协议)是TC尸/IP传输层的无衔接协议。因为完好的TCP/IP协议将占用很多体系资源,所以在高牢靠的局域网中,能够选用UDP协议发送数据包。
1.2 BOOTP协议
客户机发动时,需从网络上获取三种信息:本机的IP地址、下载服务器的IP地址、待下载的运转程序。
BOOTP(BOOTstrapping Protocol)能为无盘机取得发动所需的一切信息。在发送BOOTP恳求之前,BOOTP客户既不知道自己的IP地址,也不知道服务器的IP地址,BOOTP有必要经过播送办法发送恳求。BOOTP服务器收到恳求后,依据以太网地址,从下载数据库中查出相应应对表项,构成BOOTP呼应,再应对之。关于服务器而言,此刻客户机的IP地址现已知道,能够直接应对,不用用播送办法。
BOOTP报文买卖便是恳求,呼应一个来回,买卖成功与否只要客户知道,因而当服务器封闭或网络作业不正常时,将导致买卖犯错或报文丢掉,客户需进行重传处理(每3 s重传一次)。当有多个呼应(多服务器呼应或BOOTP应对延时),可设一个标志,客户只承受并处理第一个呼应,其他都扔掉。
1.3 BOOTP包格局
BOOTP包格局如图1所示。
包操作码/音讯类型:1=BOOTREQUEST(引导恳求),2=BOOTREPLY(引导应对)。硬件地址类型:1=10M以太网。硬件地址长度:6是10M以太网。跳动点数:用于跨网引导,由路由器运用。业务ID:一个随机数,用来匹配引证恳求和应对。客户端引导所用秒数:由客户端填写,客户端引导开端后的曩昔的秒数。客户端IP地址:BOOTP客户将此置为0,要求服务器应对本客户的IP地址。你的IP地址:BOOTP客户将此设置为0。服务器IP地址:由服务器在引导应对回来。网关IP地址:用于跨网引导时运用。客户端硬件地址:客户填充本机MAC地址。服务器主机名:用于跨网引导时运用。引导文件名:BOOTP恳求置为0,服务器应对时将由BOOTPTAB填充一个特定的运转程序路径名。规范选项域:此域用于BOOTP客户从服务器取得一系列规范选项,例如网管IP地址、网关IP地址、DNS域名服务器IP地址、客户机名等。
1.4 以太网数据包格局
以太网恳求包格局如图2所示。
DIX以太网中包括方针MAC地址(一般为FF:FF:FF:FF:FF:FF)和源MAC地址(即设备自身MAC地址)。IPV4中包括版本号、长度、协议、校验和及源地址IP和方针地址IP(这儿IP地址均为0.0.0.0)。UDP中包括源端口、方针端口、长度及校验和。
以太网引导包格局如图3所示。
2 硬件规划
体系选用多核TMS320C6670 DSP芯片作为主控芯片,其内置千兆网络协处理器,所以外围电路只需添加物理层芯片。结构框图如图4所示。
3 下载完结进程
客户机:当硬件复位时,在RESET信号上升前,装备好开发板上的拨码开关SW3、SW4、SW5、SW6,确认TMS320C6670芯片为以太网引导办法。RBL(ROM BootLoader)装备SerDes,SGMII和PASS预备接纳来自以太网接口的引导包。RBL装备发送通道发送以太网恳求包(每3 s发送一次)。
服务器即PC机端用Wireshark软件作为抓包软件,以太网恳求包播送到服务器端,见图5,从中能够看出距离约3 s多客户机播送一次BOO TP包。
图6为以太网恳求包首要内容,与原理中描绘的以太网恳求包格局是共同的,包括DIX以太网、IPV4、UDP协议和BOOTP协议包。
图7为接纳到的BOOTP包内容。
服务器此刻收到了BOOTP协议包,取得了客户机的MAC地址,此刻要进行ARP(Address Resolution Protocol,地址解析协议)地址绑定。在完结上面两步后,经过上位机通讯程序将帧文件发送给客户机。图8为截取的UDP发送图。
图9为以太网引导包内容。
当帧文件发送结束后,客户机依据接纳来的数据进行处理,找到数据部分,进行发动加载。
在CCS开发环境下生成的方针文件是*.out,即通用方针文件格局(COFF)。该文件能够在CCS开发环境下经过仿真器下载到DSP方针板中运转调试,但该代码文件并不是DSP中实践运转的程序代码,需用Hex东西(hex6x.exe)进行转换成引导表文件,然后再用bconvert64x.exe和bootpacket.exe下具将引导表文件转换成以太网引导格局数据文件,并封装成帧文件。
结语
文中介绍了一种依据以太网的DSP引导程序加载技能,该技能在多核高性能DSP体系的程序引导及体系的软件更新等工程运用领域具有共同的优势和较好的运用远景。现在已成功运用在网络视频监控体系的软件更新。实践标明,该引导加载技能灵敏牢靠,为长途操控体系的调试和更新供给了便当。