現(xiàn)代的計算機追求的是更快的速度、更高的數(shù)據(jù)完整性和靈活性。無論從物理性能,還是從電氣性能來看,現(xiàn)今的并行總線都已出現(xiàn)了某些局限,無法提供更高的數(shù)據(jù)傳輸率。而SATA以其傳輸速率快、支持熱插拔、可靠的數(shù)據(jù)傳輸?shù)忍攸c,得到各行業(yè)越來越多的支持。 目前市場上的SATA IP CORE都是面向IC設計的,不利于在FPGA上集成,因此,本文在Xilinx公司的Virtex5系列FPGA上實現(xiàn)SATAⅡ協(xié)議,對SATA技術的推廣、國內邏輯IP核的發(fā)展都有一定的意義。 本文將SATAⅡ協(xié)議的FPGA實現(xiàn)劃分成物理層、鏈路層、傳輸層和應用層四個模塊。提出了物理層串行收/發(fā)器設計以及物理鏈路初始化方案。分析了鏈路層模塊結構,給出了作為SATAⅡ鏈路層核心的狀態(tài)機的設計。為滿足SATAⅡ協(xié)議3.0Gbps的速率,采用擴大數(shù)據(jù)處理位寬的方法,設計完成了鏈路層的16b/20b編碼模塊,同時為提高數(shù)據(jù)傳輸可靠性和信號的穩(wěn)定性,分別實現(xiàn)了鏈路層CRC校驗模塊和并行擾碼模塊。在描述協(xié)議傳輸層的模塊結構的基礎上,給出了作為傳輸層核心的狀態(tài)機的設計,并以DMA DATA OUT命令的操作為例介紹了FIS在傳輸層中的處理過程。完成了命令層協(xié)議狀態(tài)機的設計,并實現(xiàn)了SATAⅡ新增功能NCQ技術,從而使得數(shù)據(jù)傳輸更加有效。最后為使本設計應用更加廣泛,設計了基于AHB總線的用戶接口。 本設計采用Verilog HDL語言對需要實現(xiàn)的電路進行描述,并使用Modelsim軟件仿真。仿真結果表明,本文設計的邏輯電路可靠穩(wěn)定,與SATAⅡ協(xié)議定義功能一致。