论文部分内容阅读
SATA(Serial Advanced Technology Attachment)作为一种串行接口,以其传输速度快、支持热插拔、内置数据/命令校验单元等特性广泛应用于机械硬盘和固态硬盘上。 本文在详细分析 SATA2.5协议标准的基础上,对整个协议进行层次化建模和仿真,包括物理层、链路层、传输层和应用层。其中物理层利用Virtex5系列FPGA中集成的高速Serdes接口GTX来完成链路的建立,实现了根据挂载的硬盘进行速度自动协商等功能。给出了整个链路层和传输层的详细设计框图,包括CRC校验、数据加扰/解扰、FIFO控制等模块。在此基础上编写状态机实现了对各种数据帧以及控制帧的组合、拆解和交互,对预定义的原语进行编码完成了流控、握手协商等功能。本文利用Chipscope工具进行在线调试验证了代码的可行性。在应用层以DMA方式将数据写入到硬盘中,以此验证整个IP核的有效性。最后对SATA串行链路的PCB板进行了信号完整性分析。