基于SOPC的異步串行通信IP核設(shè)計
4實驗驗證
系統(tǒng)硬件介紹
本文采用Xilinx公司提供的ML505 V5 FPGA Demo板作為SoPC系統(tǒng)硬件平臺。ML505 FPGA演示驗證板主要由一塊Virtex-5 XC5VLX50T FPGA構(gòu)成,此外還包括RAM、Flash、以太網(wǎng)接口芯片、USB接口芯片以及ADM3202 RS-232電平轉(zhuǎn)換芯片等外圍擴展芯片,其中ADM3202電路原理圖如圖7所示。
實驗采用Xilinx公司ISE工具完成UART IP核的邏輯綜合和仿真,仿真波形如圖8所示,發(fā)送數(shù)據(jù)為0x01.UART IP核仿真通過后,用EDK工具提供的Peripheral Import Wizard生成一個采用PLB Slave Single模塊的自定義IP核框架。在該IP核目錄下的user_logic.v文件中例化波特率模塊、發(fā)送模塊、接收模塊和寄存器組,并增加相應總線訪同邏輯后即生成了本文設(shè)計的UART IP核。
用EDK工具中的Base System Builder wizard新建一個如圖3所示的SoPC系統(tǒng),如圖9所示。在Port界面下將UART IP核的收發(fā)管腳定義為External,并在UCF文件中加入收發(fā)管腳的管腳映射描述。在Address界面下生成UART IP核的地址空間,UART通信測試程序?qū)⑼ㄟ^該地址空間訪問UART IP核。用EDK工具中Hardware菜單下Generate Bit Stream命令生成該SoPC系統(tǒng)的FPGA配置文件。用該配置文件配置ML505板載FPGA后,即生成了SoPC UART通信系統(tǒng)硬件。
用EDK工具中的Xilinx SDK軟件開發(fā)工具編寫相應的UART通信測試程序,編譯后將程序下載至MicroBlaze處理器程序空間。將ML505板串口與PC機串口連接后運行UART通信測試程序,在PC機上可以觀察到此UART通信系統(tǒng)可以正確的發(fā)送和接收UART數(shù)據(jù),證明了該UART IP核工作正常。
5結(jié)論
文中詳細介紹了一種基于SoPC概念的UART IP核的設(shè)計。通過將Xilinx公司提供的PLB Slave Single模塊和本文設(shè)計的UART邏輯模塊結(jié)合,快速搭建了一個滿足PLB總線接口要求的UART IP核,仿真與綜合結(jié)果表明該UART IP核各項功能均達到預期要求。該設(shè)計方法既采用了成熟的商業(yè)IP核,也利用總線接口模塊將用戶自定義IP核與商業(yè)IP核連接成為一個完整的SoPC系統(tǒng)。該方法增加了系統(tǒng)的靈活性、擴展性,同時縮短了系統(tǒng)開發(fā)時間,降低了系統(tǒng)開發(fā)難度,可為其他嵌入式系統(tǒng)的開發(fā)提供有益的參考。
評論