基于嵌入式微控制器和Internet的解决方案

来源:网络  作者:网络转载   2019-10-08 阅读:404
方案综述   本设计的目标是基于系统中已有的软硬件资源,尽可能提高FPGA配置的效率和灵活性。考虑到相当多的复杂数字系统:(1)包含微控制器(具有多个通用I/O)及其程序存储器; (2)具有接入Internet的能力(例如系统硬件中包含以太网接口,软件中移植了TCP/IP协议),提出一种新的FPGA配置方案,这种方案的实质是将Internet作为传输配置数据的媒体,并用嵌入式微控制器的程序存储器存储这些数据,从而完成*节中提到的*次数据传输;在嵌入式微控制器的通用I/O上实现FPGA配置时序,从而完成第二次数据传输。   为验证这种方案的可行性和有效性,在船载自动识别系统(AIS)的设计中实现了该方案。相关的主要器件包括:CPU采用SAMSUNG公司的S3C44B0X;程序存储器采用MACRONIX公司的MX29LV160ABTC;FPGA采用XILINX公司的XC2S200PQ208;以太网控制器采用REALTEK公司的RTL8019AS。上述器件均具有同类产品的一般特性,因而这一设计实例并不验证的一般性。   1.1配置文件的传输协议TFTP   在方案的验证实例中,使用基于UDP的TFTP协议在以太网内传输配置文件,协议栈如图3所示。由于UDP属于不可靠的面向无连接的传输协议,因此在网络结构复杂的广域网上传输FPGA配置数据并不适合采用TFTP协议,而必须采用可靠的、基于TCP的应用层协议(例如FTP协议)。此处采用TFTP,完全是由于适应AIS的运行环境、简化性能测试的考虑,而且在应用层实现了部分TCP的功能(例如伪连接、简单的应答和重发、数据包排序等功能),可以保证数据传输的质量。   标准的TFTP(Trivial File Transfer Protocol)是一种基于UDP的、简单的文件传输协议。TFTP的设计目标是简单小巧且易于实现,因此远不如采用多重并发TCP连接的FTP功能强大(例如TFTP不支持目录列表和用户权限验证,而且传输效率比较低)。   TFTP的基本通信过程为:客户端向服务器发出读或写请求;如果服务器接收读写请求,正式的数据传输开始,每段数据长度固定为512字节;长度小于512字节的数据段标志传输结束。此外,协议中还规定了超时、重发等异常处理机制。       在具体实现中,将TFTP服务器(待配置FPGA所在的目标系统)设计成具有三个状态的状态机,其逻辑状态转移图如图4所示。PC机一端直接使用DOS下的TFTP命令。   1.2 FPGA配置文件及配置流程   用微控制器的通用I/O实现FPGA配置必须准确掌握:(1)配置文件的格式;(2)配置信号的时序。   一般来说,FPGA开发软件可以生成多种不同类型的配置文件,用户可以根据不同的应用环境选用这些配置文件。本设计采用.bin文件。值得注意的是,对于某一特定的芯片,无论设计简单或是复杂,其配置的数据的长度是固定的,但配置文件大小却因类型的不同而有所差异。   常见的FPGA配置模式包括主动串行模式、被动串行模式、被动并行模式和边界扫描模式等。为与常见的下载电费兼容并节约微控制器的I/O口线,本实现采用被动串行模式。  基于微控制器和互联网的配置方案在传输速率、传输距离上较其他方案均有明显优势,同时又符合软件无线“一机多能”的设计思想,并能满足某些用户对于在线调试、更新和维护的需求。此外,必须看到,新方案在具备种种优势的同时,对用户设计的软件提出了一定的要求。事实上,完全具备这些软硬件条件(例如移植TCP/IP协议、使用嵌入式微控制器)符合现今数字系统设计的趋势,设计该配置方案的初衷正是基于这种设计理念,具有相当的实用性。
标签: 嵌入式
打赏

免责声明:
本站部份内容系网友自发上传与转载,不代表本网赞同其观点;
如涉及内容、版权等问题,请在30日内联系,我们将在第一时间删除内容!

购物指南

支付方式

商家合作

关于我们

微信扫一扫

(c)2008-2018 DESTOON B2B SYSTEM All Rights Reserved
免责声明:以上信息由相关企业或个人自行免费发布,其真实性、准确性及合法性未证实。请谨慎采用,风险自负。本网对此不承担任何法律责任。

在线咨询

在线咨询:

QQ交流群

微信公众号