基于SOPC技術(shù)的異步串行通信IP核的設計與實(shí)現
UART IP核仿真通過(guò)后,用EDK工具提供的Peripheral Import Wizard生成一個(gè)采用PLB Slave Single模塊的自定義IP核框架。在該IP核目錄下的user_logic.v文件中例化波特率模塊、發(fā)送模塊、接收模塊和寄存器組,并增加相應總線(xiàn)訪(fǎng)同邏輯后即生成了本文設計的UART IP核。
用EDK工具中的Base System Builder wizard新建一個(gè)如圖3所示的SoPC系統,如圖9所示。在Port界面下將UART IP核的收發(fā)管腳定義為External,并在UCF文件中加入收發(fā)管腳的管腳映射描述。在A(yíng)ddress界面下生成UART IP核的地址空間,UART通信測試程序將通過(guò)該地址空間訪(fǎng)問(wèn)UART IP核。用EDK工具中Hardware菜單下Generate Bit Stream命令生成該SoPC系統的FPGA配置文件。用該配置文件配置ML505板載FPGA后,即生成了SoPC UART通信系統硬件。
用EDK工具中的Xilinx SDK軟件開(kāi)發(fā)工具編寫(xiě)相應的UART通信測試程序,編譯后將程序下載至MicroBlaze處理器程序空間。將ML505板串口與PC機串口連接后運行UART通信測試程序,在PC機上可以觀(guān)察到此UART通信系統可以正確的發(fā)送和接收UART數據,證明了該UART IP核工作正常。
5 結論
文中詳細介紹了一種基于SoPC概念的UART IP核的設計。通過(guò)將Xilinx公司提供的PLB Slave Single模塊和本文設計的UART邏輯模塊結合,快速搭建了一個(gè)滿(mǎn)足PLB總線(xiàn)接口要求的UART IP核,仿真與綜合結果表明該UART IP核各項功能均達到預期要求。該設計方法既采用了成熟的商業(yè)IP核,也利用總線(xiàn)接口模塊將用戶(hù)自定義IP核與商業(yè)IP核連接成為一個(gè)完整的SoPC系統。該方法增加了系統的靈活性、擴展性,同時(shí)縮短了系統開(kāi)發(fā)時(shí)間,降低了系統開(kāi)發(fā)難度,可為其他嵌入式系統的開(kāi)發(fā)提供有益的參考。
評論