基于FPGA的TCP协议的设计与验证
发布时间:2017-09-30 11:08
本文关键词:基于FPGA的TCP协议的设计与验证
更多相关文章: TCP协议 硬线化 FPGA TCP卸载引擎 时延
【摘要】:进入新世纪以来,人类社会已经逐步跨入数字化、信息化时代。信息技术的发展已经成为推动人类生活方式发生转变的一个重要因素。The Internet of Things(物联网)、Cloud Computation(云计算)、Big Data(大数据)的提出更是信息技术发展到新阶段的一个重要标志。现阶段信息技术的一个重要依托就是高速互联网技术。而要实现高速互联网,必须克服高时延和低吞吐量这两个缺点。TCP/IP协议的硬线化是解决上述问题的一个重要途径。为此,世界各国也都在该项技术上投入了巨大的人力和物力。本文对TCP/IP协议硬线化过程中的关键流程TCP协议的硬线化进行了深入的研究。本文以IEEE的RFC793协议为标准,在查阅了大量参考文献和互联网资源的基础上,设计了基于FPGA的TCP卸载引擎。本设计的主要由三大部分构成:TCP发送处理模块、定时/计数模块以及TCP接收处理模块。其中TCP发送处理模块是本设计的核心部分,它主要负责校验和的产生,数据的封装,发送报文的缓存,状态的跳转,相关控制信号的产生,数据流量的控制以及重传超时时间阈值的调整;定时/计数模块主要负责记录TCP报文的发送以及传输时间,以供TCP发送处理模块使用。TCP接收处理模块主要负责接收报文的解析、校验以及缓存。本设计以Xilinx的EDA设计套件ISE 14.7为软件编程平台,采用Verilog HDL为编程语言来设计相应的硬线逻辑电路。以ISE自带的波形仿真软件Isimulator为工具进行了功能上的仿真,仿真过程主要分为2个部分:模块的仿真和系统级仿真。当子模块仿真和系统整体仿真通过以后,本文将设计好的TCP模块与UART模块通过接口例化的形式整合在一起形成一个完整的通信实体。接下来进行综合、布局布线、生成比特流文件,最后比特文件分别下载到具有两个不同端口号的NEXYS2开发板。验证过程中,根据开发板上LED灯及8段数码管的状态来判断本设计在功能上是否符合协议标准。与此同时还使用了逻辑分析仪Logic Analyzer对start_signal_generator的内部信号进行了观测,观测的结果进一步证明了该模块逻辑时序的正确性。最后论文给出了本设计在数据处理时延方面的分析,分析结果指出本设计发送和接收处理TCP数据包的最大时间为26.36us和26.31us;发送和接收处理TCP数据包的最小时间为192.5ns和136.3ns。通过查找资料可知传统形式的TCP协议处理时间基本在毫秒级别,由此可知本设计具有较低的数据包处理时延。
【关键词】:TCP协议 硬线化 FPGA TCP卸载引擎 时延
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TN791;TN915.04
,
本文编号:947841
本文链接:https://www.wllwen.com/kejilunwen/wltx/947841.html