【導讀】自現場可編程邏輯器件(FPGA)面世以來,通常瞄準最大的市場區間——通信行業。雖然大多數FPGA開發人員仍然以通信應用為重點,但他們越來越多地關注存儲和服務器市場,尤其是日益增長的音頻處理,通過結合音頻處理器的功能和FPGA器件的靈活性,能夠支持許多創新應用。
廣泛的工業市場呢?
通常,廣泛的工業市場的需求并非像存儲、服務器或通信應用所要求的那么性能導向或復雜。對于所有圍繞工業物聯網(IoT)市場的炒作,我們并不清楚工程師如何利用現有的技術來實現其潛能。在工業市場上可以看見的日益增長的一個例子就是音頻的處理。通過結合音頻處理器的功能和FPGA器件的靈活性,能夠支持許多創新應用。
音頻處理器名副其實是經優化處理聲音的處理器。它通常利用基于ARM或RTOS友善的處理器架構,具有數字至模擬轉換器(DAC)等硬件、多個數字麥克風輸入、優化用于聲譜的硬件加速器,以及I2S或 SPI接口。音頻處理器通常與軟件或固件綁定,經設計執行某些回聲消除或降噪功能。
FPGA器件使用基于柵級的架構,適用于并行模式下的信號處理。它還具有內部存儲器、硬件乘法器和累加器,以及充足的I/O靈活性。某些FPGA器件被視為SoC,因為它們具有四核、A級ARM處理器,但是,當FPGA器件與音頻處理器配對使用時,這種級別的性能并非必需。音頻處理器的理想配對是通用而靈活的FPGA器件,或者集成了ARM Cortex-M3等微控制器的FPGA器件。結合音頻處理器和這類FPGA器件,無論是否帶有Cortex-M3,也能夠實現理想的分工,用于獨特的工業通信和控制應用中的許多任務。
智能攝像頭的音頻監聽
在使用兩個麥克風時,音頻處理器能夠執行一項有趣的功能,就是音頻檢測,例如,在音頻處理器中使用合適的固件,該器件便能夠確定與聲音位置相關的角度信息。如果在器件的前部聽到語音或聲音(例如在向北的方向),這將被處理成“90度”。如果聲音來自東北方向,音頻處理器則輸出“45度”。此外,固件可以在兩個麥克風的前部虛擬一道光束,并忽略光束以外的噪聲源。通過利用FPGA器件,光束可以導引在感興趣的聲音源的方向上。
這類監控攝像頭包括以下主要組件,如圖1所示:
- 捕獲圖像的圖像傳感器
- 處理視頻數據的圖像信號處理器(ISP)
- 清理聲音路徑和確定音頻源位置的音頻處理器
- 和音頻處理器相連的FPGA執行馬達控制算法將攝像頭轉向聲音的方向
這類智能攝像頭能夠更專注聲音起源處的圖像,FPGA器件還可以用于橋接基于PCIe的高速Wi-Fi 模塊以串行方式傳送這些圖像,或者,它可以觸發某些報警或警示功能。這種方法還可以用于引導攝像頭和監聽麥克風來優化視頻會議單元的性能。在這種應用中,通過使用波束來監聽誰在發言,音頻處理器用于檢測聲音的來源。波束在FPGA器件的控制之下,將會轉向發言的人,而不是將攝像頭朝向聲音。
工業IoT 聲音檢測應用
FPGA器件與音頻處理器共同實現的另一種獨特工業 IoT應用是維修、診斷和故障預防(圖2)。想像你擁有足夠敏銳的聽力,知道馬達或其它移動組件正在變弱并即將發生故障。工業IoT的相關示例包括電梯馬達或鉆頭。通過使用處理器和FPGA器件了解變弱馬達或鉆頭的聲音曲線,并且監控這種音頻標記,可以防止產品故障和停機時間。
為了實施這類解決方案,要把聲音曲線固件插入在音頻處理器中,以監控與故障相關的音頻標記。對于馬達應用,這項標記可能是軸承開始崩潰的聲音,或者隨著鉆頭變鈍和越來越吃力地工作,鉆頭的音頻曲線改變至較高水平的聲音。由于聲音曲線駐留在音頻處理器中,然后這款解決方案便可以監聽并連續匹配聲音和存儲的故障曲線。同時,FPGA器件與音頻處理器通話,并與網絡或某些其它外設通信,以傳遞這種狀態。如果FPGA器件包括ARM Cortex-M3,便可運行輕量TCP/IP堆棧,并且在以太網上或通過無線標準發送信息。當然,它也可以利用其它獨特的通信功能,比如CAN總線、USB或專有協議。
當音頻處理器檢測到弱化狀況的聲音曲線特性時,便向FPGA器件發送信號,而后將這個信息在網絡上發放。通過在早期捕捉失效狀況,FPGA器件還可以通過編程,以系統覆蓋(system override)的形式觸發響應。以電梯為示例,FPGA器件可以一直等待,直到確定電梯安全到達地面層,而且每個人都走出去了,然后才與中央控制系統通信,使得電梯停止服務。其它示例包括汽車電動馬達、流量管線,以及其它工業IoT應用。如果聲音曲線被很好地了解,這種方法甚至可用于觸發維修呼叫,從而顯著縮短停機時間。
本地音頻存儲和播放
配對音頻處理器和FPGA器件的解決方案,還可以用于最適合在本地實施音頻存儲和回溯的應用場合。這包括了保護加密音頻或家居自動化應用。
在這些示例中,音頻處理器接收語音或聲音,并且經由I2S總線將其傳送至FPGA器件,FPGA器件將數據格式化,存儲在SPI快閃或其它非易失性存儲器中。這項設計還允許通過FPGA器件至音頻處理器,從SPI快閃進行播放。這類設計的其它選項包括用于安全應用的加密和解密音頻。FPGA器件能夠推動通信以作為替代,使得系統可從遠程提供音頻。
最近,艾睿電子設計了一個硬件套件來演示音頻處理器和ARM Cortex-M3 FPGA能夠提供的靈活性(圖3)。美高森美SmartFusion2+ (SF2+)評估套件帶有Timberwolf音頻處理器和SmartFusion2 SoC FPGA器件。這款套件具有板載快閃和DDR存儲器,以及USB和以太網接口。此外,通過利用Arduino盾連接器組和PMOD接口,還可以增添多種外設選項。
艾睿設計了用于這款套件的完整HDL和C代碼參考設計,允許儲存多達四個不同的音頻記錄,并且支持回放控制。用于Timberwolf音頻處理器和HDL的固件和用于FPGA器件的C代碼為探索結合音頻處理器和FPGA的解決方案提供了起點。
使用音頻處理器和FPGA器件組合可以理想地實施多種獨特和引人注目的應用,音頻處理器執行檢測或監聽事件的任務,而FPGA器件用于提供定制響應。當然,附加的FPGA邏輯還允許實現定制功能或其它邏輯需求,比如橋接、硬件加速或協議通信,所有這些可以通過可用的硬件解決方案、參考設計和音頻軟件來探索實施。
推薦閱讀: