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