FPGA更適用于視覺處理
美國國家儀器公司將工程的視覺處理移植到FPGA上實現,可獲得更高的處理性能
本文引用地址:http://butianyuan.cn/article/201610/308464.htmJeff Bier 是嵌入式視覺聯盟的創(chuàng)始人,本月在德克薩斯州奧斯汀舉辦的NI WEEK大會上,Jeff關注了國家儀器公司的一個演示系統(tǒng),這個系統(tǒng)是國家儀器公司2014年度關于視覺輔助方面的新產品。這個視覺輔助組件的國家儀器公司視覺開發(fā)模塊的一個部分,能夠實現快速設計和一些機器視覺應用的開發(fā)。2014年期間,國家儀器公司已經將很多已經實現的視覺處理算法移植到了他自己的硬件平臺上,以前這些視覺處理算法是利用FPGA硬件平臺實現的。國家儀器公司主要的平臺是CompactRIO-9068軟件設計控制系統(tǒng),這個系統(tǒng)是基于賽靈思Zynq Z-7000 ALL Programmable SoC而設計的。將視覺處理算法用Zynq SoC的可編程邏輯(FPGA)部分來實現不僅提升了視覺處理的性能,而且可以讓Zynq SoC上的兩個ARM Cortex-A9處理器有更多的資源去處理其他任務。
國家儀器公司在NI Week大會上演示的系統(tǒng)模塊在Zynq SoC的FPGA部分實現了一個PID控制器 ,用于實時控制整個演示模塊的步進電機。這樣允許視覺處理過程符合控制算法,最大化的提升系統(tǒng)性能。
國家儀器公司的視覺輔助組件能夠生成標準的LabView代碼,并且借助了LabView FPGA 模塊,是對Labview設計環(huán)境的擴展。LabVIEW軟件的FPGA 模塊利用Vivado設計軟件作為基礎,生成對FPGA芯片配置的文件。LabVIEW FPGA實現對圖形化的LabVIEW代碼,并將綜合結合下載到CompactRIO-9068控制系統(tǒng)的FPGA硬件部分,對FPGA進行配置。
開發(fā)人員借助NI公司的視覺輔助組件可以快速完成基于FPGA的視覺應用的原型設計,這個輔助組件包含了視覺開發(fā)模塊。視覺開發(fā)輔助組件是一個基于可配置的原型開發(fā)工具,允許開發(fā)這迭代優(yōu)化他們的圖像處理算法,可以讓他們看到設置參數的改變會對圖像有什么樣的影響。當算法工程完成后,視覺輔助組件會自動生成一個完整的LabVIEW工程,包括虛擬的處理器內核,虛擬的FPGA部分和其他一些功能,例如在處理器和FPGA之間通過編解碼實現圖像的傳輸。通過視覺輔助組件生成的FPGA代碼同樣進行了優(yōu)化,支持并行執(zhí)行。開發(fā)人員可以使用LabVIEW FPGA 的IP Builder修改圖像處理算法,這個功能是國家儀器公司(NI)的LabVIEW軟件的FPGA 模塊所支持功能的一部分。
除了可以加速開發(fā)流程和代碼生成效率,視覺輔助組件也可以估計FPGA資源的使用情況,使用信息包括FPGA芯片資源(例如slice(分片),LUTs(查找表),DSPs和Block RAM)的使用百分比,它可以反映出整個圖像處理應用的資源使用信息,也可以反映出每個獨立的圖像處理算法的芯片資源使用情況,可以讓開發(fā)人員在整個應用的開發(fā)過程中了解每個任務模塊的資源使用情況,實現資源的合理安排。
評論