一種基于SoPC的FPGA在線(xiàn)測試方法
摘要:針對Altera公司現有FPGA在線(xiàn)測試方法無(wú)法適應大批量測試/激勵數據自動(dòng)傳輸的情況,論文提出了一種基于SoPC的FPGA在線(xiàn)測試方法,該方法采用Nios II控制數據傳輸過(guò)程、DMA協(xié)助數據傳輸、FIFO作為數據暫存,采用自定義外設完成了DMA模塊與FIFO的接口設計,從而DMA可以直接操作FIFO,測試結果表明該方法是一種可行且高效的FPGA在線(xiàn)測試方法。創(chuàng )新性在于充分利用JTAG接口完成FPGA的在線(xiàn)測試,同時(shí)測試數據能夠寫(xiě)入PC中的文件/激勵數據從文件讀出。
關(guān)鍵詞:在線(xiàn)測試:SoPC;DMA;Host-Base File System
可編程邏輯器件供應商Altera公司針對FPGA的開(kāi)發(fā)推出了6種系統在線(xiàn)測試方法:SignalTapⅡ、SignalProbe、Logic Analyzer Inter-face、In-System Sources and Probes、In-System Memory Content Editor以及Virtual JTAG。上述各種在線(xiàn)測試方法中,只有最后兩種方法允許PC和FPGA進(jìn)行基于文件的數據交互。而In-System Memory Content Editor只允許用戶(hù)手動(dòng)更新FPGA片上RAM的內容,不利于測試數據的大規模自動(dòng)采集和傳輸。Virtual JTAG雖然可以實(shí)現測試數據采集和傳輸的自動(dòng)控制,但是需要利用TCL接口函數編寫(xiě)代碼,而且要求用戶(hù)對JTAG有深入的了解,增大了開(kāi)發(fā)難度。本文提出了一種基于SoPC的FPGA在線(xiàn)測試方法,是對現有FPGA在線(xiàn)測試方法的一種有效的補充。
1 在線(xiàn)測試數據操作流程
基于SoPC的FPGA在線(xiàn)測試方法的數據操作流程如圖1所示。如果用戶(hù)需要采集FPGA的測試數據并且上傳至PC機,則用戶(hù)首先要將被測試數據寫(xiě)入DMA讀從外設,然后系統自動(dòng)啟動(dòng)DMA控制器,將數據送入Nios II的數據存儲器。再由JTAG UART控制器經(jīng)JTAG接口上傳至Nios II IDE(NiosⅡIntegrated Development Environment,Nios II開(kāi)發(fā)環(huán)境),Nios II IDE將接收到的數據寫(xiě)入測量數據存儲文件,從而完成了FPGA測試數據的上傳。如果用戶(hù)需要將PC機中的激勵數據文件下載至FPGA,則系統首先在Nios II IDE中通過(guò)Host-Based File System讀出激勵文件數據,然后由JTAG接口經(jīng)JTAG UART控制器下載至Nios II處理器的數據存儲器,Nios II發(fā)起DMA寫(xiě)傳輸把數據從數據存儲器搬運至DMA寫(xiě)從外設并寫(xiě)入FPGA片上FIFO,從而完成了激勵數據的下載。
評論