基于FPGA的IPv4/IPv6双协议处理器的设计

基于FPGA的IPv4/IPv6双协议处理器的设计

论文摘要

随着网络技术和光纤通信技术的飞速发展,网络协议处理占用的CPU处理器资源比重越来越高,在G比特网络的逐步普及并向更高带宽不断发展的情况下,CPU处理器负担日益加重,应运而生的TCP/IP协议卸载引擎(TOE)技术是减轻CPU负担的一种有效方式。在协议发展方面,IPv6协议取代IPv4协议是一种必然,而现阶段并且相当长的一段时间内两种协议将长期共存也是无可争议的事实,在目前网络种实现IPv4节点与IPv6节点兼容的模式基本上都是基于软件的,也就是在CPU处理器中实现兼容处理的,这样使得CPU的负担更加沉重。本文将TOE技术和双协议兼容技术结合起来,基于FPGA设计了一种能同时满足IPv6和IPv4的双协议处理器。首先对TOE技术的基本原理和实现架构进行了深入的分析,本设计的TOE器件采用FPGA来实现部分TCP/IP协议处理卸载工作,针对在TCP/IP协议处理工作中占的比重比较大、但处理过程比较机械重复的IP层的数据包的处理工作进行卸载,有利于在高速硬件中实现,并且能大大提高系统的工作效率。然后分析了IPv6和IPv4两种协议的构成和IP层的主要协议处理工作,得出了IP协议处理器设计原理和设计要求。最后了采用FPGA自顶向下的设计方法完成了IPv4/IPv6双协议处理器的功能模块划分设计,将协议处理器的划分为接口模块、数据发送处理模块、数据接收处理模块和定时模块四个分模块。在对各个功能模块进行原理和工作过程分析的基础上,采用Verilog HDL硬件描述语言实现了各子模块的逻辑设计。并通过Model Tech公司的仿真软件ModelSim对IPv4/IPv6双协议处理器的各个模块进行了仿真验证,通过仿真,验证了其功能的正确性。之后通过Synplicity公司的综合工具Synplify Pro对其进行综合实现,最后将代码下载到长沙依元素公司的火龙刀FPGA开发板中进行在线验证,验证结果表明,本设计的IPv4/IPv6双协议处理器能实现IPv4和IPv6两种协议的IP数据包接收和发送时在IP层所涉及的处理的基本功能。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 研究背景
  • 1.2 TCP/IP 协议简介及发展
  • 1.2.1 IPv4 到IPv6 的过渡
  • 1.2.2 双栈协议机制
  • 1.3 TOE 技术的意义和研究现状
  • 1.4 本论文的研究意义和所做工作
  • 第2章 TOE 的基本原理和基本思想
  • 2.1 TOE 的基本原理
  • 2.1.1 软件方式协议处理的开销
  • 2.1.2 TOE 技术的基本原理
  • 2.2 TOE 的基本架构
  • 2.3 TOE 的实现方案
  • 2.3.1 TOE 的整体设计方案
  • 2.3.2 IP 协议处理器的具体设计方案
  • 第3章 双协议处理机制及实现方案
  • 3.1 协议的发展状况和协议的构成
  • 3.1.1 IPv4 的缺点
  • 3.1.2 IPv6 的主要特点
  • 3.2 IP 协议的数据包报头结构分析
  • 3.2.1 IPv4 协议的数据包报头
  • 3.2.2 IPv6 协议的数据包报头
  • 3.2.3 两种协议报头的异同比较
  • 3.3 IP 协议处理器的设计原理分析
  • 3.3.1 IP 数据报头校验和原理
  • 3.3.2 IP 数据包数据重组过程
  • 3.4 IP 协议处理器的实现方案
  • 第4章 基于FPGA 的双协议处理器设计
  • 4.1 FPGA 设计流程
  • 4.1.1 FPGA 简介
  • 4.1.2 FPGA 的设计原则
  • 4.1.3 FPGA 的设计流程和设计工具
  • 4.1.4 自顶向下的系统模块设计
  • 4.2 IPv4/IPv6 双协议处理器的系统设计
  • 4.3 接口模块的设计
  • 4.3.1 PCI 总线及 PCI 总线接口的实现方法
  • 4.3.2 DMA 方式在PCI 总线上的实现
  • 4.4 数据发送处理模块设计
  • 4.5 数据接收处理模块设计
  • 4.5.1 数据包类型判别模块设计
  • 4.5.2 IPv4 数据接收处理模块设计
  • 4.5.3 IPv6 数据接收处理模块设计
  • 4.6 定时模块
  • 第5章 双协议处理器的各分模块设计和仿真验证
  • 5.1 接口模块的设计描述和仿真验证
  • 5.2 数据发送处理模块的设计描述和仿真验证
  • 5.3 数据接收处理模块的设计描述和仿真验证
  • 5.3.1 数据包类型判别模块的设计描述
  • 5.3.2 IPv4 数据接收处理模块的逻辑设计和功能仿真
  • 5.3.3 IPv6 数据接收处理模块的逻辑设计和仿真
  • 5.4 定时模块的逻辑设计和仿真
  • 5.5 系统总体仿真
  • 结论
  • 参考文献
  • 致谢
  • 附录 A 攻读学位期间所发表的学术论文
  • 附录 B PCI 接口模块顶层代码
  • 相关论文文献

    • [1].TCP/IP协议处理器的多连接管理设计与实现[J]. 信息技术 2008(06)
    • [2].适用于1553总线协议的内建自测试实现[J]. 微处理机 2016(05)
    • [3].一种主备自主切换1553B总线接口模块设计与实现[J]. 信息通信 2016(05)
    • [4].高速1553BIP核的设计与实现[J]. 计算机技术与发展 2009(12)
    • [5].ZigBee弄潮物联网[J]. 电子与电脑 2011(08)
    • [6].高性能DSP在1553B总线中的设计与实现[J]. 航空计算技术 2017(02)
    • [7].基于1553B总线的接口卡设计[J]. 航空兵器 2009(01)
    • [8].一种基于SOC的主备切换1553模块设计与实现[J]. 信息通信 2019(08)
    • [9].基于高速同步485总线通信的多通道舵机控制器设计[J]. 制造业自动化 2017(02)
    • [10].高速1553总线分立器件收发器设计[J]. 微型机与应用 2016(20)
    • [11].机载TDI CCD相机高速图像实时存储系统[J]. 激光与红外 2009(03)

    标签:;  ;  ;  

    基于FPGA的IPv4/IPv6双协议处理器的设计
    下载Doc文档

    猜你喜欢