论文部分内容阅读
随着网络技术和光纤通信技术的飞速发展,网络协议处理占用的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层所涉及的处理的基本功能。