- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一种基于YModem协议的极简远程加载实
现方法
作者:刘晓旭陈振杰张建伟马国驹
来源:《计算机与网络》2020年第18期
摘要:针对外场环境中无法使用JTAG调试口对数字信号处理器(DSP)代码进行在线升
级的问题,对YModem数据传输协议及远程加载基本原理进行简要介绍。提出了一种基于
YModem协议的极简远程加载实现方法,可以用最小的代码量,利用串口对DSP代码进行远
程升级,解决外场升级DSP的障碍。通过实验证明了极简远程加载实现方法的完整性及可用
性。
关键词:YModem协议;远程加载;数字信号处理器;Bootloader
中图分类号:TP316文献标志码:A文章编号:1008-1739(2020)18-57-4
引言0
DSP是一种在数字信号处理技术基础上发展起来的微处理器,因具有强大的数字信号处理
能力而在各种测控终端中获得广泛应用,主要应用是实时快速地实现各种数字信号处理算法
[1]。在DSP的开发设计过程中,一般采用JTAG口完成软件调试及应用程序的加载固化。
随着电子技术的发展和用户需求的提升,对已投入使用的DSP设备的升级越来越频繁,
传统的升级方法是取下设备通过JTAG仿真器在线更新程序[2]。该方式简单方便,但当DSP
安装于密封、远程及高空等难以拆卸的设备中时,就十分不便,因此开发高效便捷的远程升级
技术迫在眉睫。
较早的远程加载方法一般不采用任何协议,通过Bootloader直接进行串口数据的接收及存
储,此类方法虽然简单直接,但是一旦传输过程中出现误码,需要将全部数据重新传输一次,
效率较低。基于高效且准确的远程加载需求,提出一种基于YModem协议的极简远程加载实
现方法,用最小的内存空间实现DSP应用程序的远程加载更新,并成功进行了工程验证。
1YModem协议
XModem及YModem是应用十分广泛的异步文件传输协议。其中,XModem协议结构简
单,但每包数据帧最长仅能传输128Byte数据,效率较低;YModem是由Xmodem改进的一
种稳定快速的传输协议,单包传输数据长度提升至1024Byte,传输效率更高且可以实现批量
传输,因而应用更为广泛。
YModem是一种半双工协议,不能同时双向收发控制信号,有助于控制流量、减少缓冲区
超限问题。YModem是一种握手协议,发送之后需等待回应:发送方每发送一帧数据,都要等
待接收方的确认应答,收到应答后再发送新的一帧数据。如果接收方由于某种原因未能正确接
收到此帧数据,会向发送方发送重新传输数据帧的申请,则发送方会重新发送此帧数据,直到
接收方正确接收。这种机制与CRC校验共同保证了数据传输的准确性。同时,分包传输、分
包校验的传输机制,可以及时发现误码,及时重新传输出错数据包,提高数据传输效率。
依据YModem协议,每一帧的发送数据由帧头、数据段以及帧尾组成,具体格式如表1
所示,其中数据段长度可以是128Byte(帧头为SOH),也可以是1024Byte(帧头为
STX),采用1024Byte数据一帧的传输方式,可以大大提高传输速度[3-4]。
YModem协议传输的完整握手流程如图1所示。
YModem通信协议握手流程如下:
①接收方发送字符C通知发送方,启动握手流程,进入等待SOH状态,如果没有回应,
则重新开启或超时退出;
②发送方开始时处于等待过程中,等待接收方的启动信号C,收到接收方发送的字符C
后,发送方发送帧头为SOH的文件信息包,包含序号以及文件名、文件大小等信息,然后进
入等待字符ACK状态;
③接收方收到文件信息包,进行CRC校验,如校验成功,则发送ACK确认,发送方收到
ACK后,进入等待文件传输开启信号,即等待字符C状态;如果CRC校验失败,则发送
NAK字符,请求发送方重新发送此数据包;
④接收方发送字符C,通知發送方启动文件发送,进入等待SOH或STX状态;
⑤发送方接收到字符C后,进入正式文件发送流程,发送数据包,等待接
您可能关注的文档
- 三年级数学上册 五、《“时、分、秒的认识”单元分析》教案-学习文 .pdf
- 三年级下美术教案-军旗升起的地方_赣美版-精选教学文档 .pdf
- 三年级上数学教案-两、三位数乘一位数(连续进位)的笔算乘法-人教版.pdf
- 三年级上册数学讲义-多位数乘一位数-人教版(含答案) (1) .pdf
- 三年级上册数学教案《第9单元 第1课时 数学广角——集合》人教新.pdf
- 三年级上册数学教案-克、千克、吨 西师大版 .pdf
- 三年级上册数学教案 第一单元《克、千克、吨》第1课时 西师大版.pdf
- 三好学生的先进事迹材料素材锦集四篇 .pdf
- 三好学生主要事迹(精选12篇) .pdf
- 三位数乘一位数(不进位)的乘法 .pdf
文档评论(0)