本文介紹了采用IXP425作為核心主控單元和3片DM642作為核心數據處理單元的會議電視多點控制單元的硬件設計原理和實現方法。主控制器IXP425模塊完成網絡發送/接收、數據調度、PCI控制等功能。數據處理DM642模塊完成音/視頻混合與切換等功能。IXP425和DM642之間采用PCI總線連接,各模塊之間數據傳輸速度快,提高了數據處理效率。
“會議電視系統”是指多個不同地方的人或者群體,通過通信線路以及多媒體通信設備,將聲音、影像以及文字資料互相傳送,實現即時和互動的溝通,從而達到完成傳統的地點集中式會議目的的系統。采用會議電視的方式,可以使身處多個會場的與會者,既能聽到其他會場人員的聲音,又能看到其他會場的圖像,與會人員可以通過音/視頻傳輸通信來發表意見、觀察對方形象,另外可出示實物、圖紙等增強現場感,還可以通過傳真或共享電子白板等方式及時傳送相關文件、圖表或討論問題等,縮短與會者之間的空間距離,改善會議氣氛,使與會者都能身臨其境,如同在一個地方開會一樣。
會議電視系統主要由終端設備、傳輸通道(通信網)以及多點控制單元MCU(Multipoint Control Unit)組成。其中多點控制單元是會議電視系統的核心部分,它的作用相當于計算機網絡里的交換機。交換機將來自各會議場點的信息流,經過同步分離后,抽取出音頻、視頻、數據等信息和信令,再將會議場所的信息和信令,送入各處理模塊,完成相應的音/視頻混合或切換、數據廣播和路由選擇、定時和會議控制等過程,最后將會議地點所需的各種信息重新組合起來,送往各會議電視終端。本論文立足于設計一個成本較低、運行較穩定、功能較全、容量較大、運算速度較快、兼容性好、安全性較好、操作簡單、能在2M網絡帶寬下運行的針對中小型用戶的嵌入式會議電視多點控制單元。
會議電視多點控制單元(MCU)的主要功能是:
①媒體控制、媒體處理:包括音視頻的提取,音頻和視頻的重新編碼、混合、切換等,數據的廣播和路由選擇,語音激勵的計算以及其他需要的媒體功能;
②可接收其他多點控制單元轉發的音視頻數據,重新進行音/視頻切換或混合后發送到會議電視終端進行解壓解碼,還原成聲音、影像和計算機數據后進行本地輸出;
③MCU和終端遵循協議(如H.323、SIP等)進行連接;
④MCU和終端可接收對方發送的控制信號并進行響應;
⑤網絡接入功能;
1 方案設計
方案1:參考文獻中提出了一種基于TCP/IP協議的桌面視頻會議系統中多點控制單元的實現方案,該方案采取純軟件式結構,方案成本低,開發周期短,但該方案處理音視頻路數有限,畫質較差。
方案2:參考文獻中提出了一種基于DSP-642的會議電視硬件平臺方案,設計和實現了基于H.264協議的像素域多畫面合成的PCI通信模塊、視頻編解碼模塊,但容量只有4路,畫質一般。
綜合比較以上2種方案,結合本會議電視多點控制單元MCU的具體情況,本文設計的會議電視多點控制單元MCU采用Intel嵌入式處理器IXP425作為主控制器,采用4片DM642芯片作為數據處理芯片,主控制器與數據處理模塊之間采用PCI總線進行通信。這種方案開發周期相對較短,TI、InteI等芯片廠商提供了完善的軟硬件開發包,另外由于采用PCI總線連接主控制器模塊和數據處理器模塊,數據傳輸速度快,吞吐率高。
2 系統設計
系統框圖和采用的功能芯片如圖1所示。系統主要由控制模塊和音/視頻處理模塊組成。
控制模塊由單板上的IXP425+CPLD組成。負責單板的資源和信息管理,把從業務單板發送過來的音/視頻信號轉發給相應的DM642處理。單板CPLD主要實現單板的復位、時鐘檢測、片選信號控制、寄存器讀寫、單板信息等功能。音/視頻處理模塊由單板上4片DM642完成,是單板的核心模塊。決定音/視頻處理模塊性能的有兩個關鍵因素:音/視頻算法性能以及PCI總線的傳輸性能。
為了增強PCI總線的傳輸性能,可從如下兩個方面改善:提高PCI總線傳輸效率;PCI總線上任何一個器件都可以作為主器件發起傳輸,這樣DSP芯片之間的數據傳輸不用通過IXP425轉發,節約總線帶寬。
2.1 IXP425模塊
IXP425模塊主要包含CPU最小系統、CPLD控制模塊、調試模塊、網絡管理模塊等。框圖如圖2所示。
IXP425自身具有Expansion總線,能使flash、HPI總線設備、SDRAM等設備與內部ASHB掛接,可兼容Intel/Motorola等制式接口,有cs[7:0]8個bank選擇,每個塊大小為16 MB,若采用WinCE操作系統,Flash空間則至少在20 MB以上,故最小系統設計時利用了cs0及cs1兩個bank作為系統存儲空間。為了給程序下載模式留下足夠的存儲空間,又增加了兩片16 MB的Flash。Flash連接如圖3所示。
由于IXP425內置了專用的SDRAM控制器,根據其接口原則,同時考慮到平臺對運算性能留有一定余量,最小系統中對SDRAM部分的設計選用了2片32 MB的SDRAM,硬件兼容128 MB的SDRAM設計。
2.2 網口設計
IXP425內部有3個與XScale核并行工作的網絡處理機NPE,能對外部提供2個MII接口,并行工作的原理使得網絡處理性能較好,支持802.3協議內容,標準的MII接口只需外接PHY物理接口芯片,平臺中采用了Intel的LXT972A,即能完成與外界數據的交互。當然,變壓器的使用也是必須的,利用了HALO生產的TG110-S050N2與RJ45接口掛接,連接示意圖如圖4所示。由于IXP425內置了MAC控制器,完善的MII接口使得平臺的網絡應用比較簡單而具有針對性。
2.3 音/視頻處理模塊設計
2.3.1 PCI接口設計
IXP425 PCI控制器外部掛了4片DM642,總線為33MHz,連接示意圖如圖5所示。IXP425 PCI總線主要完成對DM642的啟動加載、芯片配置管理、PCI總線仲裁和媒體流調度。DM642芯片組主要完成音/視頻媒體流的編碼、音/視頻合成的功能。目前的容量為4路音/視頻合成,視頻算法為H.264,語音算法為AAC、G.723.1等。
其中,DM642A占用IXP425的PCI時隙1,DM642B占用IXP425的PCI時隙2,DM642C占用IXP425的PCI時隙3,DM642D占用IXP425的PCI時隙4,其有差異的對應引腳互連如下:DM642A與IXP425的PCI引腳對應。PCI中斷控制信號由CPLD進行會聚后上報給CPU,CPU通過讀取CPLD內部的中斷寄存器來判斷外圍PCI設備的中斷事件。
2.3.2 音/視頻處理模塊最小系統設計
EMIFA允許無縫連接多種SDRAM,由于選用的SDRAM大小為64 MB,根據DM642 EMIFA的接口準則,DM642最小系統如圖6所示。
芯片選擇由CE0完成,選用2片16MB大小的SDRAM進行位擴展后,最大尋址空間為32MB,行地址選通為A[3:10],列地址選通為A[3:14],塊選擇(bankselect)為A[15:16],故使用DM642地址線A[3:16]。DM642內核工作在50M×12 Hz的模式下,EMIF接口工作在25M x 5.33 Hz,PCI接口工作在33 MHz時鐘頻率下。
2.3.3 Flash設計
IXP425外掛一片Flash,存儲BOOT程序。芯片啟動后,從大容量Flash中導入IXP425所需映像到內存中。DSP的程序不單獨配置Flash存儲器,IXP425通過PCI總線把DSP的程序導入到各自的RAM中運行。IXP425是PCI總線的主器件,其他DSP芯片為從器件。
IXP425通過PCI總線啟動DSP的過程如下:
①DSP的配置引腳設置為PCI BOOT模式(AEA[22:21]=01,[PCI_EN:TOUT0/MAC_EN]=10)
②IXP425通過CPLD釋放DM642的復位引腳,DM642進入安裝狀態;
③IXP425通過PCI總線配置DM642的PCI寄存器;
④IXP425設置DM642的存儲器和I/O空間;
⑤IXP425把DM642的BOOT程序導入DM642內部RAM中,起始地址為0;
⑥IXP425訪問DM642的存儲器空間,把程序寫入DM642的內存中,DM642的頁寄存器(DSPP)可以使IXP425能夠訪問DM642的所有空間;
⑦IXP425置DM642的HDCR寄存器的DSPINT位為1,把DM642從安裝狀態釋放;
⑧DM642從地址0處開始運行BOOT程序。
2.3.4 OPLD設計
單板CPLD完成的具體功能如下:單板IC復位控制、中斷處理、時鐘檢測、時鐘分頻、時鐘計時(時鐘同步)、片選譯碼、I/O擴展,單板采用一片CPLD,CPLD資源要求僅能使用到70%,預留日后升級使用和防止布線緊張。
2.4 時鐘設計
(1)PCI時鐘
33 MHz晶振的輸出經過一個BUF之后分出 8路:一路給CPLD作為檢測時鐘;一路給IXP425的OSC-IN作為芯片工作時鐘;一路給IXP425的EX_CLK引腳,作為Expansion總線時鐘;一路給IXP425的PCI,作為PCI的時鐘;剩下4路送給PCI時鐘驅動器。
(2)以太網及SDRAM時鐘
50 MHz晶振作為CPLD的主時鐘,該時鐘經過2分頻后送給各路以太網芯片作為各自芯片的主時鐘,各個時鐘沒有同步要求。DM642 SDRAM時鐘由ICS512倍頻獲取,而IXP425的SDCLK_OUT驅動能力較強,直接驅動4片SDRAM工作。
2.5 單板電源設計
電源框圖如圖7所示。
2.6 JTAG鏈接
單板CPU、CPLD的JTAG單獨成鏈,方便加載和調試,4片DM642連成一條菊花鏈,硬件兼容各個芯片單獨調試,菊花鏈框圖如圖8所示。
3 硬件調試
本多點控制單元的硬件部分主要進行以下調試:
①電源、復位模塊調試:焊接電源模塊芯片及外圍電路,測試+5 V、3.3 V、1.4 V、1.3 V電壓輸出是否正常。電壓輸出正常后,焊接復位電路元件,上電后觀察復位電壓及延續時間是否滿足設計要求,用示波器測量復位信號的電平和持續時間等是否與設計相符。上電后注意各電壓轉換芯片是否燙手,不正常則立即斷開電源進行檢查。
②最小系統調試:在板上焊接IXP425芯片、DM642芯片、CPLD、SDRAM、Flash、JTAG接口及各模塊電路外圍元件。用放大器仔細檢查有無短路、斷路、虛焊、漏焊、假焊等情況。無問題后上電,測量各芯片工作電壓是否正常,用示波器和頻率計測量各模塊的工作時鐘是否正常。利用JTAG口將硬件與計算機相連,配置好控制寄存器后,測試SDRAM讀寫功能是否正常,Flash擦寫功能是否正常。如果工作不正常,檢查時序信號、硬件連接等情況。
③PCI總線調試:測試各功能模塊之間數據傳送是否正常,如IXP425讀寫4塊DM642,D642之間讀寫數據等,需結合計算機、示波器、頻譜分析儀、邏輯分析儀等進行測試。
④網絡收發模塊調試:焊接LTX972A及外圍器件。檢測IXP425的MII接口與LTX972A芯片之間連接是否正常,通過Intel提供的LTX972A測試程序測試網絡收發模塊是否能與本地PC機通過網口進行數據通信。
4 結論
本多點控制單元在設計上具有以下特點:
①非PC機的嵌入式會議電視多點控制單元設計;
②內部采用PCI總線連接,解決會議電視多點控制單元內部突發大數據量傳輸和各數據處理模塊的同步問題;
③多并行數據處理模塊設計。
評論
查看更多