左兆文



摘要:目前電力電子系統中,利用DSP完成電力電力開關管的占空比的計算,而FPGA完成PWM移相任務逐漸成為趨勢。本文介紹了DSP和FPGA的并行通信方式。并行方法利用DSP的外部數據總線(XINTF)與FPGA連接。文中給出了并行通信軟件實現的流程圖,并對FPGA通信程序進行了仿真。通過仿真以及實驗,驗證了并行通信方法的優勢。
關鍵詞:外部數據總線;FPGA;并行通信
在電力電子領域中,采用DSP芯片作為主處理器,可以實現數模轉換,時基任務等,充分發揮了DSP在數字信號處理方面的優勢[1]。而利用FPGA作為從控制芯片,接收來自DSP的發送的調制波信號,主要實現了產生多路PWM的功能,從而解決了DSP功能引腳數量不足的劣勢[2][3]。目前大多數文獻都沒有對DSP和FPGA的通信給出在電力電子領域應用的具體方法。
針對上述問題,本文使用TMS320F2812芯片,實現其與FPGA之間的并行通信。由于控制精度的要求,DSP每次發送的數據都為16位二進制數。在并行通信中,利用外部數據總線,將16位數據同時發送,并等待1usFPGA讀數據。最后,通過仿真以及實驗驗證了并行通信方法的正確性以及準確性,并總結并行方法的優勢[4-5]。
一、并行通信的硬件和軟件設計
(一)硬件設計
TMS320F2812DSP芯片有16位XINTF數據總線XD[0~15],通常用于擴展SRAM、Flash、ADC模塊等。XINTF是F2812與外部設備通信的重要接口。外部設備不能控制F2812的外部接口信號線,只能讀取、判斷信號線的狀態,來進行相應的操作。在系統的控制芯片中,將外擴數據總線與FPGA的用戶自定義I/O管腳連接,用于實現數據的并行發送。同時選擇DSP的與FPGA相連接的GPIO引腳,作為FPGA接收數據的控制信號發送口。DSP的外擴XD[0~15]作為并行數據發送的引腳;由于FPGA需要握手信號作為接收數據的使能位,所以選定GPIOA6作為控制信號引腳。
(二)軟件實現
由DSP2812的外擴接口結構可知,XINTF接口被映射到5個固定的存儲空間。在軟件設計中,選定Zone6區域,故直接定義外部起始地址為0x100000。與串行通信類似,并行通信亦需要定時器提供時基。使用CPU定時器,并開定時器中斷,在中斷子程序中完成數據的傳輸。CPU 定時器在初始化階段設計為每隔1us產生一個中斷發給CPU,使其訪問中斷子程序。在進入中斷程序后,首先GPIOA6輸出高電平送至FPGA,表示準備發送數據,FPGA做好接收讀取數據的準備;然后,DSP并行16位發送數據。在一個數據發送結束之后,進入下一個1us中斷,GPIOA6輸出低電平,等待FPGA讀取數據,同時DSP更新下一個即將發送的數據。
FPGA在接收來自DSP的控制信號與數據信號之后,FPGA開始工作。FPGA中調制波信息與三角載波信息直接比較產生PWM波形。由于DSP計算出的占空比為16位定點型數據,且其大小范圍為[0,1],故而將其乘以104轉換為整型后,以二進制數據類型發送。然后將轉換后的整型占空比數據的每一位和1做與邏輯運算,求出每一位的值,并將其賦值給DSP的GPIO口。同時DSP輸出一位高電平的握手信號,表示已經開始傳出數據,FPGA接收到該I/O口的高電平后,開始接收數據。
當FPGA收到握手信號開始接收DSP傳輸的占空比更新的值以后,需要計算出調制波的值。將DSP傳輸的二進制數轉換為10進制數以后,復原其原有的占空比,乘以三角載波最大值,即為調制波的值。將調制波與三角載波比較,即可輸出控制功率開關管的PWM波,FPGA運行產生PWM的工作流程圖如圖1所示。
二、仿真以及實驗結果
圖2中顯示的是FPGA的仿真波形,CLKIN位FPGA的晶振頻率,CLK0為FPGA的時鐘信號,TZB為調制波,輸出Y為PWM波形。為了進一步驗證本文中軟件設計的正確性,又進行了PWM和SPWM的實驗。圖3中為FPGA輸出的PWM和SPWM。
圖3與FPGA仿真波形對比可發現,實驗波形是正確的,說明軟件通信的是有效的。圖3(b)中通道1位雙極性SPWM波形,通道2位一階濾波后的正弦波形。由此說明本文中設計的并行通信方法的合理性和有效性。
三、結論
本文主要研究了DSP+FPGA的并行通信方法。并行通信采用DSP外擴數據總線實現,通過實驗產生PWM和SPWM波形驗證了本文提出并行通信方法的正確性和有效性。
參考文獻:
[1]嚴剛峰,方紅,楊維等.采用FPGA實現同步串行數據的并行采集[J].自動化儀表,2014,35(9):84-86.
[2]聶華,劉開華,孫春光等.DSP和FPGA之間串口通信研究[J].電子測量技術,2006,29(6):112-114.
[3]姜楠,馬迎建,馮翔等.DSP和FPGA并行通信方法研究[J].電子測量技術,2008,31(10):146-148.
[4]王會錦.基于DSP-FPGA的電力機車輔助逆變器控制系統研究及實現[D].北京交通大學,2012.
[5]郭偉峰.基于DSP-FPGA全數字控制的并聯有源電力濾波器[J].電工技術學報,2007,22(5):123-127.