第34卷 第12期2006年 12月 华 中 科 技 大 学 学 报(自然科学版)
J.H uazhong U niv.o f Sci.&T ech.(N ature Science Editio n)V ol.34N o.12 Dec. 2006
收稿日期:2005-12-06.
作者简介:汪小燕(1963-),女,副教授;武汉,华中科技大学电子与信息工程系(430074).E -mail:wangx y @
基金项目:国家自然科学基金资助项目(50275061).
基于T FT P 协议的嵌入式系统
开发方法设计与实现
汪小燕 连晓平 董 燕 杨大鹏
(华中科技大学电子与信息工程系,湖北武汉430074)
摘要:基于简单文件传输协议,提出一种通过嵌入式系统现有网络接口实现系统开发过程中大型文件快速烧写的开发方案.分析并介绍了该方案的设计要点,包括系统硬件结构要求、物理层硬件连接方法、T CP/IP 协议栈简化、T F T P 协议下文件传输的实现方法.实际应用测试比较结果表明:该方案硬件要求简单,在大文件(\1M by te)应用系统下载开发的情况下比传统JT A G 口(Jo int T est A ction G roup standard)下载与串口下载效率分别提高102到101数量级.
关 键 词:嵌入式系统;开发方法;T CP /IP 协议;T FT P 协议
中图分类号:T P36 文献标识码:A 文章编号:1671-4512(2006)12-0056-03
Design and implementation of embedded system file
programming method based on TFTP
Wang X iaoy an L ian X iaop ing Dong Yan Yang Dap eng
(Depar tment o f Electro nics and Info rmation Eng ineering,H uazhong U niv ersity of Science and T echnolog y,Wuhan 430074,China)
Abstract:A schem e based o n trivial file transfer pro to col (T FT P)fo r pro gramm ing large -sized files into the flash memor y of the embedded system utilizing the ex isting netw ork interface w ith hig h -speed is pro posed.Main points o f the scheme such as the system hardw ar e requirements,the connection in -terface of the phy sical layer,the clipping o f the TCP/IP(transmission control protocol/internet pro to -col)stack,the implementatio n of file transmission based on T FT P protocol are analy zed.W ith pract-i cal usag e and measur em ent,the scheme propo sed is verified to have less prog ramming time and better pro gramm ing efficiency o f 102to 101than the conventional pr ogram ming m ethod w ith JTAG (jo int test action gr oup standar d)or nor mal ser ial interface of RS232-C.
Key words:embedded sy stem;development m ethodolog y;TCP/IP stack;T FT P pr otoco l 在传统的嵌入式系统开发方法中[1,2],为了将具有复杂多层协议的应用程序烧写到目标平台中,通常使用串口或JTAG 口来将高达M byte 到数10M byte 的内核映象文件及应用程序和数据写入目标平台.这些方法电路简单、容易实现,但下载速度极慢,难以满足嵌入式系统日益扩展与复杂的应用开发需求.针对这个问题,参考大型计算机,路由器远程文件传输和下载方案,本文提出了一种基于简单文件传输协议(T rivial File
Transfer Protoco-l T FT P),利用系统现有以太网接口快速烧写映象文件到目标平台的开发方案.
1 硬件结构与实现方法
本文提出基于简单文件传输协议T FT P [3]
,
利用系统现有以太网接口快速烧写映象文件到目标平台的方案.以PC 机作为TFTP 客户端,嵌入式目标平台作为TFT P 服务器端,由TFTP 协议
客户端进程将PC 上的操作系统映象文件通过直连网线写入到目标平台上的RAM 中,并配合flash 烧写程序将其固化在flash 中.由于操作系统映象文件可直接在RAM 中运行,因此在调试阶段可以省略程序固化过程.
在本文对应嵌入式系统的开发环境中采用32bit 高性能嵌入式微控制器S3C44B0X(Sam -sung ARM 7T DM I).由于它不具有内嵌以太网接口,因此采用由台湾Realtek 公司生产的高度集成以太网控制器RT L8019AS.该芯片针对ISA 总线设计,价格低廉、技术成熟,用于实现网络的底层协议,包括网卡与网络电缆的物理连接,介质访问控制(如CSM A/CD),数据帧的拆装,帧的发送与接收,错误校验,数据信号的编/解码(如曼彻斯特码和NRZ 码的转换等),数据的串、并行转换等功能.嵌入式微控制器S3C44B0X 与以太网控制器RTL8019AS 的连接原理图如图1所示,通过与S3C44B0X 相连的以太网控制器RT L8019AS 和以太网接口,即可以以太网速率将所需文件下载到S3C44B0X 相连的SRA M 中,达到文件快速下载的目的
.
图1 嵌入式系统开发平台硬件结构图
2 基于T FT P 协议文件下载的设计
与实现
为简化目标板与PC 机的通信过程,确保在目标平台上无操作系统的前提下,能够从PC 机上快速下载比较大的文件到目标平台上,在遵循OSI -RM 的基础上对T CP/IP 协议栈进行一定的裁减
[4,5]
,实现了数据链路层的ARP 协议、网络
层的IP 和ICMP 协议、传输层的U DP 协议和应用层的TFT P 协议.由T FT P 协议控制实现从PC 机上快速下载文件到目标平台.简化的TCP/IP 协议栈体系结构如图2所示.2.1 TCP/IP 协议栈的简化实现
由于在本方案中所使用的以太网控制芯片
RT L8019AS 实现了MA C 层的全部功能,
因此链
图2 简化的T CP/IP 协议栈体系结构
路层软件主要目标是实现ARP 协议.当主机需要发送数据帧给目标平台时,若主机端的ARP 映射表中没有目标板IP 地址与硬件地址的映射,则由主机端应用程序主动发送ARP 请求分组.因为目标板只是被动地接受主机端发来的数据帧,不会主动发送ARP 请求包,所以在具体实现中可对ARP 协议进行剪裁,仅实现处理ARP 请求并返回ARP 应答包部分.
网络层软件主要实现了IP 协议和ICM P 协议.在本应用环境下,为提高从PC 机到目标平台下载文件映象的速度,避免网络中其他主机的不必要的干扰,采用直连网线连接PC 机与目标平台而无需跨越路由器,由此确定在IP 协议的实现中省略路由选择功能.另外由于T FT P 协议为简单文件传送协议,在每次传送时均已将数据切割为512by te 的数据块,因此在IP 协议实现中可省略数据分片和组装处理部分.按照以上原则简化的IP 协议主要对报文进行IP 封装,交由数据链路层装帧发送,并对收到的IP 数据包进行分析,提交U DP 或ICMP 协议处理.为了提高IP 数据交付成功的几率,在网际层同时实现了因特网控制报文协议ICM P,负责接收、解释、发送ICMP 报文.
在互联网上传输数据普遍采用U DP.UDP 虽然不可靠,但在网络负荷不大的情况下可以提供更高的传输效率.TFTP 协议要求由传输层UDP 协议承载.由于在系统目标板不需要主动发送UDP 数据包,因此在目标板的传输层部分仅需要实现U DP 数据包的接收即可.2.2 TFT P 协议下系统文件接收实现
首先,PC 机端的T FT P 客户进程发出写请求指明要写入的文件名和模式.如果该文件能被该客户写,目标平台上的T FT P 服务器就返回块编号为0的ACK 包.该客户进程就将文件的头512byte 以块编号为1发出,服务器则返回块编号为1的ACK.T FT P 客户随后发送块编号为2
#
57#第12期 汪小燕等:基于T F T P 协议的嵌入式系统开发方法设计与实现