用FPGA實(shí)現多路PWM輸出的接口設計與仿真
3 邏輯仿真和器件驗證
行為級仿真是在HDL源代碼設計完成之后,通過(guò)設計測試平臺文件(激勵和測試矢量)來(lái)驗證設計的正確性。邏輯仿真是在邏輯綜合之后,對生成的門(mén)級網(wǎng)表進(jìn)行驗證。測試平臺文件與采用行為級仿真的測試平臺文件,這樣能夠保證設計驗證的一致性。并且,邏輯驗證是一種理想的門(mén)級網(wǎng)表,不存在延時(shí)信息。器件驗證也稱(chēng)版圖后仿真,它是在FPGA實(shí)現之后,提取出門(mén)級網(wǎng)表和延時(shí)信息進(jìn)行驗證,測試平臺文件與行為級一樣。器件驗證結果是比較接近真實(shí)硬件的結果。完全通過(guò)這3層的驗證,基本上可以保證設計的結果與測試平臺文件一致。
行為仿真和器件仿真也可直接在QuartusⅡ中進(jìn)行,其中輸入激勵波形和輸出觀(guān)察節點(diǎn)在QuartusⅡ波形輸入窗口進(jìn)行設置,在設計通過(guò)功能仿真后,需要進(jìn)一步選擇器件仿真以驗證設計的正確性。器件仿真時(shí)包含了所選擇的對應FPGA估算延時(shí)或實(shí)際延時(shí)信息,故仿真速度較功能仿真慢很多。通過(guò)仿真可以及早發(fā)現設計中的錯誤,并根據具體情況進(jìn)行修改,包括修改硬件實(shí)現架構、設計代碼、約束條件等一個(gè)或多個(gè)方面。器件仿真通過(guò)后,則可以將設計下載到芯片,進(jìn)行硬件功能驗證。
圖3是對應PWM的功能仿真結果波形。從圖3中可以看出,在564 ps時(shí)刻CPU向PWM寫(xiě)入新的控制常數后,下一個(gè)周期的PWM輸出占空比立刻發(fā)生了相應改變。
圖4是相應設計在QuartusⅡ下編譯通過(guò)后進(jìn)行器件仿真的波形,由圖4可見(jiàn),其時(shí)序功能正確。通過(guò)器件下載編程方法下載到相應的FPGA,就可以結合整個(gè)嵌入式系統進(jìn)行硬件調試。
4 結束語(yǔ)
在FPGA開(kāi)發(fā)軟件中完成設計以后,軟件會(huì )產(chǎn)生一個(gè)最終的編程文件,QuartusⅡ中是.pof或.sof?,F在的FPGA基本都采用在系統編程方式,對于EEP-ROM/Flask/SRAM工藝的在系統可編程FPGA,廠(chǎng)家提供編程電纜,如Altera公司提供的下載電纜類(lèi)型有ByteBlasterⅡ并口下載電纜、USB BlasterTMUSB口下載電纜、MasterBlaster 通信纜線(xiàn)(USB或RS-232端口)等,其配置方式可以有主動(dòng)/被動(dòng)串行配置方式、JTAG方式等。電纜一端裝在計算機的相應接口上,另一端接至PCB(印制電路板)上的編程插頭,它向系統板上的器件提供配置或編程數據,這就是所謂的ISP(在線(xiàn)系統編程)。
在電機控制等許多應用場(chǎng)合,需要產(chǎn)生多路頻率和脈沖寬度可調的PWM波形,本文通過(guò)使用Altera公司FPGA產(chǎn)品開(kāi)發(fā)工具QuartusⅡ,設計了6路PWM輸出接口,并下載到FPGA,實(shí)現與CPU的協(xié)同工作。在嵌入式系統中通過(guò)FPGA擴展系統功能的設計是一種有效的方法。
pwm相關(guān)文章:pwm原理
評論