论文部分内容阅读
随着信息技术的发展,数据存储技术变得越来越重要,而快速便捷的网络数据存储技术更是成为人们现在研究的热点问题。本文研究设计的正是基于FPGA的网络硬盘存储系统,实现了用户数据的网络存储。系统以ATA接口类型硬盘作为存储介质,用FPGA及其内部的Microblaze软核处理器实现存储控制、网络传输、NFS服务及文件系统。对ATA协议进行深入研究,分析提取主机端工作原理与工作过程,用VHDL硬件描述语言实现可脱离CPU的ATA主机端控制器IP核。本控制器可以通过PIO模式、MDMA模式和UltraDMA模式分别对硬盘进行读/写访问,并实现硬盘软/硬复位及器件检测等功能。分析研究IEEE802.3规范和TCP/IP协议族,根据各自功能在FPGA上分别实现以太网控制器和精简TCP/IP协议。其中,以太网控制器模块能独立完成符合IEEE802.3规范的数据帧传输,为数据网络传输提供链路层支持。TCP/IP协议模块实现了经裁剪的TCP/IP协议族,包括的协议有链路层的ARP协议,网络层的IP协议,和传输层的UDP、 TCP协议;能实现基于UDP和TCP协议的数据网络传输,并具有地址解析的功能。最终通过数据缓存模块将以太网控制器模块和TCP/IP协议模块合理结合,组成一个无主机控制的网络控制器IP核,该IP核可以直接完成应用层数据网络传输。在Microblaze上移植Petalinux操作系统和NFS服务器,组成系统的软件基础;再将ATA主机端控制器IP核和网络控制器IP核挂载到Mcroblaze的PLB总线上,构成系统的硬件平台;最终通过软硬件协调工作实现数据的网络存储。此网络硬盘存储系统基于FPGA完成,既具有SOC的特点又拥有现场可编程的优势,故其可移植性强,应用方便。