本課題是在課題組已實現的高速串行通信平臺的基礎上,進一步引伸,設計開源的PCI軟核通信模塊替代Xilinx公司提供的LogiCORE PCI核,力求在從模式下,做到占用資源更少,傳輸速度更快,也為以后實現更完整的功能提供平臺。 本文以此為背景,基于FPGA平臺,搭建以開源的PCI軟核為核心的串行通信接口平臺,使其成為PCI總線與用戶邏輯之間的橋梁,使用戶邏輯避開與復雜的PCI總線協議。本課題采用Spartan-II FPGA芯片XC2S200-6FG456C系統開發板作為串行通信接口的硬件實驗平臺,實現了支持配置讀/寫交易、單數據段讀/寫、突發模式讀/寫、命令/地址譯碼功能和數據傳送錯誤檢測與處理功能的PCI軟核。 本文主要闡述了以PCI軟核為核心的串行通信平臺的實現,首先介紹了PCI軟核的編程語言、軟件工具和硬件實驗平臺Spartan-II FPGA芯片XC2S200-6FG456C系統開發板。然后,介紹了PCI總線命令、PCI軟核所支持的功能、PCI軟核兩側信號的定義、PCI軟核配置模塊以及探討了PCI軟核的狀態機接收、發送數據等過程,分析了PCI軟核的數據收發功能仿真,主要包括配置讀/寫交易、單數據段模式讀/寫和突發模式讀/寫的仿真圖形,并闡述了管腳約束的操作流程。最后介紹PCI軟核模塊的WDM驅動,內容包括驅動程序簡介、驅動程序的開發、中斷處理、驅動程序與應用程序之間的通信以及應用程序操作。最后,對PCI軟核的各種性能進行了比較分析。整個模塊設計緊湊,完成在實驗平臺上的數據發送。 設計選用硬件描述語言VerilogHDL,在開發工具Xilinx ISE7.1中完成整個系統的設計、綜合、布局布線,利用Modelsim進行功能及時序仿真,使用DriverWorks為PCI軟核編寫WinXP下的驅動程序,用VC++6.0編寫相應的測試應用程序。之后,將FPGA設計下載到Spanan-II FPGA芯片XC2S200-6FG456C系統開發板中運行。 文章最后指出工作中的不足之處和需要進一步完善的地方。
標簽:
FPGA
PCI
軟核
上傳時間:
2013-04-24
上傳用戶:sc965382896