FPGA实现SATAⅡ协议的研究与设计

需积分: 5 0 下载量 8 浏览量 更新于2024-06-26 收藏 3.26MB PDF 举报
"基于FPGA的SATAⅡ协议研究与实现.pdf" 本文是一篇湖南大学信息与通信工程专业的硕士研究生学位论文,作者是高志,指导教师为黄生叶,发表于2009年。该论文主要探讨了如何在FPGA(Field-Programmable Gate Array)上实现SATAⅡ(Serial Advanced Technology Attachment第二代)协议,针对FPGA开发中的SATA技术进行了深入研究。 SATAⅡ协议因其高速传输速率、热插拔支持和数据传输的可靠性,在众多行业中得到了广泛应用。然而,市场上大多数SATA IP CORE(知识产权核)主要是针对集成电路(IC)设计,不便于直接集成到FPGA中。鉴于此,论文在Xilinx公司的Virtex5系列FPGA上实现了SATAⅡ协议,旨在推动SATA技术的普及和国内逻辑IP核的创新。 论文将SATAⅡ协议的实现分为四个主要模块:物理层、链路层、传输层和应用层。在物理层,设计了串行收发器和物理链路初始化方案,以确保数据的高效传输。在链路层,作者分析了模块结构,并设计了关键的状态机。为了达到SATAⅡ协议3.0Gbps的速率要求,采用了16b/20b编码技术,并且为增强数据传输的可靠性和信号稳定性,实现了CRC校验和并行扰码模块。 传输层的实现中,作者描述了其模块结构,并设计了传输层的核心状态机。通过DMA DATA OUT命令的操作实例,阐述了FIS(帧信息结构)在传输层中的处理流程。此外,论文还涉及到了SATAⅡ新增的NCQ(Native Command Queuing,原生命令队列)技术,它能提升数据传输效率。最后,为增加设计的适用性,设计了一个基于AHB(Advanced High-performance Bus,高级高性能总线)的用户接口。 整个设计过程中,作者使用Verilog HDL语言描述电路,并通过Modelsim软件进行了仿真验证,结果显示设计的逻辑电路稳定可靠,符合SATAⅡ协议的定义要求。关键词包括SATAⅡ协议、NCQ、FPGA、8b/10b编码和CRC,表明了研究的主要焦点。