论文部分内容阅读
随着物联网时代脚步的临近,嵌入式系统的在网络端的应用与日俱增。然而目前主流的IPv4协议由于其有限的地址位,是无法满足物联网时代海量的地址分配需求。因此采用128位的地址,地址空间从应用角度看几乎可以视为无限的IPv6协议就成了物联网网络通信的首选。此外,IPv6协议还对IPv4协议的一些疑难杂症,如端到端IP连接、服务质量、安全性、移动性等方面进行了改进。基于上述背景,加上考虑到FPGA相对于传统的ASIC芯片设计周期短、开发快捷、验证测试更为方便等优点,本课题采用的是基于FPGA的方法来实现IPv6精简协议栈的IP核—uIPv6,具体工作如下:首先针对物联网终端设备的需求对IPv6协议栈进行轻量化设计。通过分析与研究IPv6协议的基本原理并结合具体的应用需求,完成了对IPv6协议、控制报文协议、邻居发现协议等主要协议的裁减。其次结合国内外IPv4协议栈的软硬件实现的一些实例和开源代码,了解协议栈的软硬件实现的异同,并以此为参考对裁剪后的精简IPv6协议栈进行硬件实现的总体设计。然后按照协议栈的层次和功能对uIPv6协议栈进行模块划分,完成模块间的接口设计,并解决模块间跨时钟域数据可靠传输等技术问题。再次研究基于FPGA的IP核设计技术,对uIPv6协议栈IP核的核心模块进行接口设计,构建状态机模型,并编写verilog HDL代码。然后用QuartusⅡ自带的综合工具进行综合并对综合结果进行仿真和分析。最后对各个模块进行互联,构成完整的协议栈系统,并进行总体的联通性测试和性能测试,最终将其应用到科委重大支撑项目—基于物联网接入技术的通用电气量采集设备研制的后续实验和开发的工作中。