摘 要: 多通道融合成像是獲取復雜目標圖像信息的方法之一。但多通道成像存在圖像融合、大容量數據緩存、數據高速傳輸等關鍵問題。就多通道成像的幾個關鍵問題,在此提出一種基于FPGA+DSP的多通道圖像獲取系統硬件設計方法。該系統通過可編程邏輯器件FPGA控制圖像采集時序,DSP TMS320DM648采用視頻接口同時接收3路圖像數據并進行必要的圖像處理操作,經過DSP以太網控制接口與外部PHY芯片88E1111向計算機傳輸圖像數據。結果表明,該設計集成度高,實用性強。
關鍵字: 多通道圖像獲取; 圖像處理; 網絡傳輸; 千兆以太網
中圖分類號: TN29?34 文獻標識碼: A 文章編號: 1004?373X(2013)18?0101?04
0 引 言
一些比較復雜的目標在可見光下用肉眼是無法觀察到的,采用多通道多頻段圖像融合的方法能夠很好地解決這一問題。多通道同時成像存在著圖像融合、大容量數據的緩存、數據高速傳輸等關鍵問題。目前成像系統尺寸向著靈巧便攜式發展,因此在解決多通道成像關鍵問題的同時必須考慮到系統的集成性與實用性。DSP是一種非常適合進行實時數字信號處理的微處理器,它具有可編程性好、可靠性高、靈活性大、易于大規模集成等優點[1]。TI公司生產的DSP芯片TM320DM648(簡稱DM648)是視頻處理的專用芯片,它的高效性能使其適用于目前高速視頻處理系統。而且TMS320DM648內部集成DDR2控制器,可以與高速大容量DDR2芯片無縫相接,可解決大容量數據緩存問題。DM648具有一個3口以太網子系統,結合TI公司提供的網絡軟件開發包NDK,可以靈活方便的實現千兆以太網通信技術。雖然DSP處理芯片外設豐富,但不適用于邏輯時序信號的產生,對于時序邏輯控制問題一般需通過控制芯片完成。本論文中提出了一種FPGA+DSP的電子學硬件設計方案,利用可編程邏輯器件FPGA靈活產生各種圖像傳感器驅動時序,結合DSP芯片TMS320DM648構建一個多通道圖像獲取系統。
1 系統基本組成
多通道圖像獲取系統主要由三路圖像傳感器、時序控制模塊FPGA、電源模塊、數字處理模塊TMS320DM642、千兆以太網傳輸模塊(PHY)、時鐘管理等組成。見圖 1。
圖像傳感器:主要用于接收圖像信息,將光信號轉化為電信號,電信號經過A/D轉換從模擬信號轉化為系統可以處理的數字信號;
時序控制模塊FPGA:主要用于各種邏輯時序控制,圖像傳感器數字信號的格式編排等;
數字處理模塊DSP:用于多通道數據處理;
時鐘管理:提供各個系統所需的外部時鐘信號。
電源模塊的功能是為多通道圖像獲取系統提供各個直流電平,由于系統模塊較多,采用電源穩壓芯片作為電平轉換。主要電源種類與電流大小見表 1。根據電源種類和功耗分析,采用TI公司同步降壓TP54610進行系統電源設計。TPS54610是專門用于DSP,FPGA等多芯片、大電流輸出的同步降壓DC/DC穩壓器,峰值電流可達12 A,輸出電流為6 A,輸出電壓0.9~3.3 V可調,可利用SS/ENA和PWRGD引腳設計啟動時間和順序啟動電路[7]。這些特點非常滿足系統設計的需要。
2 圖像傳感器
多通道圖像獲取系統主要包括3個圖像傳感器,其像元總量與量化等級及有效數據量結果如表2所示。
單幀總的數據量為17 868 800 b,為17 Mb,如果要求10 J/s顯示數據,則需要數據帶寬170 Mb,一般USB2.0協議或PCI協議可以實現,但若要求實時圖像,達到視頻級25 J/s顯示,則需要425 Mb/s,則需要采用千兆以太網接口實現數據傳輸。
3 邏輯控制模塊FPGA
多通道圖像獲取系統邏輯控制核心由FPGA完成成的,負責控制產生各個通道圖像傳感器的驅動時序、數模轉換以及其他電子學模塊所需的工作時序,并對采集到的數據進行格式編排,最終通過數據傳個DSP進行數據處理。除此之外,FPGA還要實現上位機指令解析。選擇FPGA時主要考慮以下幾點:
(1)FPGA工作時鐘與速度;
(2)FPGA內部資源,包括邏輯門、存儲單元容量、PLL等;
(3)I/O口數目以及封裝選擇。本文中選取了Altera公司CycloneⅢ系列EP3C40F484作為時序控制芯片,基本性能參數如表3所示。
4 數字信號處理模塊TMS320DM648
TMS320DM648是TI公司推出的一款高性能32位定點運算DSP,主要面向多媒體數字視頻處理器[2]。DM648具有C64x+的CPU內核,性能比同系列DM642的C64x核提高了很多,主頻高達1.1GHz,具有兩級內部存儲器,,L1P程序存儲區為32 KB,L1D數據RAM/Cache為32 KB,L2存儲區512 KB,64 KB Boot ROM。DM648具有豐富的外設,包括5個高速視頻接口、PCI接口、HPI接口、I2C接口、千兆以太網接口、高速大容量存儲器接口等,可靈活用于視音頻處理、網絡通信、監控系統等[4]。
4.1 視頻獲取接口
DM648具有5個獨立的視頻接口(Video Port,VP):VP0,VP1,VP2,VP3,VP4,每個VP口可以工作在視頻輸入、視頻輸出或傳輸流(Transport Stream Interface,TSI)模式。每個VP口由通道A與通道B組成,這兩個通道共享5 120 B數據緩存FIFO,可通過配置寄存器分配空間大小。VP口的兩個通道通過寄存器設置同時配置為視頻輸入或輸出端口,可接收數據格式有8 b BT.656或8 b原始數據、16 b Y/C、16 b原始數據、8 b TSI本設計中將數據通道配置成輸入端口,16 b原始數據。DSP視頻接口與FPGA硬件連接如圖 2所示。其中VP2..VP9與VP12..VP19為16 b數據,VPCLK0與VPCLK1為同步時鐘,VPCTL0,VPCTL1與VPCTL2為控制信號。
4.2 高速動態存儲器模塊
多通道圖像融合存在大量數據處理,而這些數據的緩存成為了人們需解決的關鍵問題。為匹配DSP的高速數據處理的功能,DSP的外部存儲器接口從普通的SDRAM發展到了讀寫速度為533 Mb/s的DDR2。TMS320DM648內部具有DDR2存儲控制器,可與JESD79D?2A標準DDR2 SDRAM無縫相接,接口連接方式見圖 3。
4.3 千兆以太網控制模塊
在DM648片內,3口以太網子系統3PSW(3?Port Ethernet Switch Subsystem)負責管理控制DSP與外部以太網PHY(物理層)的數據包傳輸。3PSW主要包括3口以太網開關通信處理器、串行吉比特介質獨立接口SGMII(Serial Gigabit Media Independent Interface)、串行/解串模塊、數據輸入輸出管理MDIO,如圖4所示。3口以太網有三個數據通道,其中一個與C64+ DSP內部相連,另兩個為外部以太網PHY提供接口開關,主要負責數據包的分流[5]。GMAC(Gigabit Ethernet MAC)負責處理以太網包數據、幀和幀頭,包括流控制,提供數據收集和報告的作用。地址查找引擎ALE(Address Lookup Engine)根據接收的數據包的端口號、目標地址、源地址、大小/種類和VLAN信息決定數據包的去向。MDIO模塊配置和監測物理層PHY的工作狀態。MDIO可以監測多達32個連接到EMAC上的PHY設備,MDIO只占用很少的DSP,對于CPU是透明的。為了枚舉系統中所有的物理層(PHY)設備,MDIO輪詢32個MDIO地址。一旦DSP選中PHY設備,MDIO模塊讀PHY設備的狀態寄存器用于監測PHY設備連接狀態。連接改變事件可以保存在MDIO模塊中,觸發DSP中斷。
以太網協議較為復雜,是實現網絡通信的關鍵。NDK軟件開發包是TI公司針對TMS320C6000系列的DSP提供的一套完整的TCP/IP網絡通信協議開發包。NDK軟件開發包可利用TMS320C6000系列支持的DSP/BIOS內核進行任務調度和資源分配。它占用空間小,設計緊湊,僅用200~250 KB程序空間和95 KB數據空間就可以支持出常規的TCP/IP服務,適合資源空間有限的嵌入式網絡開發。NDK軟件開發包有STACK.LIB(TCP/IP協議棧)、NETTOOL.LIB(網絡工具)、HAL.LIB(硬件抽象層)、MinIPrintf.LIB、OS.LIB(NDK操作系統接口層)和NETCTRL.LIB(網絡控制及調度層)這幾個主要庫文件組成。NDK通過庫文件的接口函數和各個功能模塊進行連接。用戶只需要進行相關配置和應用程序編寫就可以實現網絡通信,能縮短了開發周期,使得千兆以太網技術實現既方便又靈活[6]。
5 千兆以太網通信模塊設計
結合DM648片內3口以太網子系同與片外MARVELL 88E1111 物理層(PHY)芯片及外圍接口電路設計,可以有效實現TCP/IP模型種的數據鏈路層和物理層的功能。MARVELL 88E1111芯片是千兆以太網傳輸物理層自適應接收器,適用于1000BASE?T,100BASE?TX和10BASE?TIEEE 802.3應用,提供GMII,TBI,RGMII、RTBI和SGMII多種接口,可與DM648以太網子系統無縫相接。接口電路如圖5所示。
6 結 語
本系統采用FPGA+DSP的電子學結構,利用FPGA靈活的可編程功能實現圖像傳感器的時序驅動、圖像的格式編排及命令解析,采用DSP高速數字處理及豐富的外設功能實現多通道的圖像獲取,能解決多通道圖像獲取系統圖像融合、大容量數據的緩存、數據高速傳輸等關鍵問題。從電路圖設計的最終結果看,這種硬件結構集成度高,實用性好,適用于多通道圖像獲取系統。
參考文獻
[1] 張旭東.TI DSP在視頻傳輸和處理中的應用[M].北京:電子工業出版社,2009.
[2] Texas Instruments. TMS320DM648 digital media processor [R]. US: Texas Instruments, 2007.
[3] 王躍宗.TMS320DM642 DSP應用系統設計與開發[M].北京:人民郵電出版社,2009.
[4] 張星剛,陳遠知.一種新型數字信號處理:數字媒體處理器DM648[J].中國傳媒大學學報:自然科學版,2008(7):48?52.
[5] Texas Instruments. TMS320DM647/DM648 DSP 3 port switch(3PSW) Ethernet subsystem user’s guide [R]. US: Texas Instruments, 2009.
[6] 趙金保,許楓.基于TMS320C6455的千兆以太網設計[J].微計算機信息,2009,25(2):137?138.
[7] 馬曉東,劉鑫.基于TPS54610的DSP+FPGA系統電源設計[J]. 電子設計應用,2007(10):107?109.
[8] 耿麥香.千兆以太網技術分析及應用[J].科學情報開發與經濟,2004,14(8):252?253.
[9] 謝春華,饒勇.PT2262/PT2272的多通道硬件控制方法[J].現代電子技術,2011,34(19):100?102.
[10] 王至秋.基于FPGA控制VGA顯示的多通道數字示波器的設計[J].現代電子技術,2011,34(14):55?57.