国产91免费_国产精品电影一区_日本s色大片在线观看_中文在线免费看视频

您現(xiàn)在的位置: 通信界 >> 交換技術 >> 技術正文  
 
基于網絡的嵌入式IP可視電話設計方案[圖]
[ 通信界 / 佚名 / www.6611o.com / 2012/7/5 21:25:11 ]
 

引 言

由于成本和視頻通信質量的因素,可視電話從推出到現(xiàn)在,一直受到用戶的冷落。現(xiàn)在因為技術的進步和寬帶因特網的普及,可視電話呈現(xiàn)出新的生機。業(yè)內專家預測,未來幾年內,可視電話不僅可與電信固話、小靈通、移動/聯(lián)通手機互聯(lián),還可與3G 手機互通。可視電話將成為獨立的產業(yè),發(fā)展前景良好。

筆者基于TI公司的單顆600 MHz TMS320DM643(簡稱為DM643)數(shù)字媒體處理器,開發(fā)了一套性能優(yōu)異、價格低廉的嵌入式IP可視電話,實現(xiàn)點對點網絡音視頻實時通信。

1 基于TMS320DM643的硬件設計

DM643數(shù)字媒體處理器[1]集成了一系列外設,以適應視頻和影像技術的發(fā)展。其中包括3個可配置視頻端口,1個10/100 Mbps的以太網MAC(EMAC),1個面向音頻應用的串行口(McASP),1個串行口(McBSP)以及一些其他外設。C64x核內有8個并行的處理單元,采用VLIW(甚長指令集)結構,處理能力高達4800MIPS,并在C6OOO公共指令集的基礎上擴展了88條指令。這些指令使C64x能夠更方便地執(zhí)行圖象處理中的算法。

基于單顆DM643的嵌入式IP可視電話的組成如圖1所示。從攝像機輸入的視頻信號和從麥克風輸入的音頻信號經A/D轉換后送入DSP,DSP對音/視頻信號進行壓縮、編碼、合流;然后通過局域網或因特網將數(shù)據(jù)傳輸出去,同時將從網絡上接收的數(shù)據(jù)分流,并分別進行視頻信號的解碼顯示和音頻信號的解碼播放。系統(tǒng)中,還通過DM643的McBSP/UART 口外接了一個鍵盤,以實現(xiàn)電話的撥號功能。

圖1 嵌入式IP可視電話的組成

1.1 視頻采集電路

本系統(tǒng)采用的視頻解碼芯片是Philips公司的SAA7l15.從攝像機輸入的全電視信號在SAA7l15內部經過鉗位、抗混疊濾波、A/D轉換、YuV分離電路之后,在YuV到YCrCb的轉換電路中轉換成BT.656視頻數(shù)據(jù)流,通過DM643的視頻口VPo輸入到壓縮核心單元DM643中。視頻數(shù)據(jù)的行/場同步信號包含在BT.656數(shù)字視頻數(shù)據(jù)流的EAV(End of Active Video)和SAV(Startof Active Video)時基信號中,視頻口只需視頻采樣時鐘和采樣使能信號。SAA7l15內部寄存器參數(shù)的配置和狀態(tài)的讀出通過1 C總線進行。視頻采集接口的原理如圖2所示。

圖2 視頻采集接口原理

DM643將解碼后的視頻數(shù)據(jù)通過視頻口VP1通道送給SAA7121顯示輸出。SAA7121是Philips公司的一款視頻編碼芯片,可實現(xiàn)數(shù)字視頻的D/A 變換。SAA7121的工作模式由其內部的控制寄存器決定,控制寄存器的初始化通過1 C總線完成。DM643利用自身具有的1 C總線模塊,作為主控制器,對SAA7121進行參數(shù)編程控制。

1.3 音頻輸入/輸出電路

本系統(tǒng)采用TI的高性能立體聲編/解碼器TI V320AIC23(簡稱AIC23),實現(xiàn)音頻信號的采集和播放。AIC23與DM643的I/0電壓兼容,可實現(xiàn)與DM643的McASP接口無縫連接。

在本系統(tǒng)中,AIC23工作于主模式,左右聲道的采樣字寬均為16位。數(shù)據(jù)接口為DSP mode模式。通過12 C總線設置內部寄存器的工作參數(shù)和反饋狀態(tài)信息

由于網絡傳輸?shù)墓逃刑攸c,音頻數(shù)據(jù)和視頻數(shù)據(jù)傳輸?shù)浇邮辗綍r不可能是均勻的。如果發(fā)送方不作任何糾正處理,則很難保證音/視頻的同步輸出。為了實現(xiàn)音頻和視頻的采樣同步,利用鎖相環(huán)PI I 1708.從SAA7115的U C引腳輸出27 MHz時鐘,經PLI 1708的SCKO 3引腳輸出默認時鐘頻率18.433 MHz,作為AIC23的輸入主時鐘MCI K.AIC23內部采用的時鐘可通過設置寄存器由主時鐘MCLK分頻得到。由于音視頻采樣信號采用同一個時鐘源,因此不會出現(xiàn)音/視頻不同步的問題。

1.4 以太網接口電路

本系統(tǒng)用LXT971作為快速以太網物理層自適應收發(fā)器。LXT971支持IEEE 802.3標準,提供MII(MediaIndependent Interface)接口,可以支持MAC;而DM643內部正好集成有MAC控制器,所以LXT971可與DM643實現(xiàn)無縫連接。連接電路如圖3所示,其中BH1102為1:1的隔離變壓器。

圖3 網絡接口原理

1.5 存儲器擴展電路

DM643通過EMIF接口擴展了2片32 MB的SDRAM來存放原始圖像數(shù)據(jù),1片4 MB的Flash來存放應用程序。二者都映射到DM643的外部數(shù)據(jù)空間。

2 軟件實現(xiàn)和優(yōu)化

在本系統(tǒng)中,視頻編/解碼算法采用H.264標準[2],音頻編解碼算法采用G.723.1a,回音消除采用G.167,媒體協(xié)議采用RTP/RTCP,網絡協(xié)議采用TCP/UDP/IP,通信協(xié)議采用H.323v.4;另外還軟件實現(xiàn)了靜音、電話功能,并運用抖動緩沖媒體同步技術實現(xiàn)了各種網絡狀況下的音唇一致。操作系統(tǒng)采用基于DSP/B10S的TI參考架構5(RF5)。基于RF5操作系統(tǒng)的應用程序模塊主要包括:音/視頻采集模塊、音/視頻編解碼模塊、UART控制模塊和網絡傳輸模塊。

本系統(tǒng)采用的H.264編/解碼可大大提高圖像質量或降低像通信帶寬。同等圖像質量,H.264算法比H.263算法碼流降低了5O ;但同時H.264算法比H.263算法復雜得多,需要更強的處理能力,以及做更多的軟件優(yōu)化工作。H.264算法在DM643上的實現(xiàn)和優(yōu)化是整個系統(tǒng)軟件設計的難點和重點。下面以它為例說明軟件的開發(fā)、優(yōu)化工作。

DM643上的軟件開發(fā)過程可分為3個階段:

第1階段是開發(fā)C代碼,然后使用profiling工具確定代碼可能存在的低效率段。為進一步改進代碼性能,需進入第2階段。

第2階段是優(yōu)化C代碼。利用內聯(lián)函數(shù)、編譯器的外殼選項等方法進一步優(yōu)化C代碼。再次使用profiling工具檢查其性能,如果代碼仍達不到所期望的效果,須進入第3階段。

第3階段是編寫線性匯編代碼 從C代碼中抽出對性能影響很大的代碼段,用線性匯編重新編寫這段代碼,然后使用匯編優(yōu)化器優(yōu)化該代碼。

2.1 C代碼的開發(fā)和優(yōu)化

開發(fā)過程中要充分利用Tl公司為用戶提供的功能強大的函數(shù)庫,比如IMAGE.LIB庫中就包含許多常用函數(shù),可以實現(xiàn)DCT/IDCT變換、DCT量化、自適應濾波等功能。這些函數(shù)都是優(yōu)化過的,完全能夠實現(xiàn)軟件流水,效率很高。另外,開發(fā)C語言代碼還需要考慮的要點包括:① 使用適當?shù)臄?shù)據(jù)結構- - 對定點乘法,應盡可能使用short型數(shù)據(jù);對循環(huán)計數(shù)器應使用int或者無符號int 類型。②使用查找表或常數(shù)值代替通過直接計算得到結果的語句或函數(shù)。

代碼分析結果顯示DCT、IDCT 、運動估計占程序總運算量的比重很大,因此這部分是程序優(yōu)化的重點。優(yōu)化C 代碼包括使用編譯器選項、使用內聯(lián)函數(shù)、使用軟件流水等。

(1)向編譯器指明不相關的指令。

為使指令并行操作,編譯器必須確定指令間的相關性,只有不相關的指令才可并行執(zhí)行。若編譯器不能確定兩條指令是不相關的,則只能安排它們串行執(zhí)行。用戶可通過如下方法指明相關的指令:

①關鍵字cons t 表示一個變量或一個變量的存儲單元保持不變,使用const 可提高代碼的性能和適應性。

②使用-mt 選項向編譯器說明在代碼中不存在存儲器相關性,即允許編譯器在無存儲器相關性的假設下進行優(yōu)化。

(2)使用內聯(lián)函數(shù)(intrinsics)。

可用內聯(lián)函數(shù)快速優(yōu)化C 代碼。如在算術操作中,常對計算的結果做飽和(saturation)處理,使用intrinsics只須調用SADD, 一個指令周期便可得到最終結果。比花費兩個嵌套的條件判斷語句來判斷結果是否溢出,最后得到結果效率要高得多。

(3)使用軟件流水。

在編譯時,使用-o2 選項和-o3 選項,編譯器可對循環(huán)代碼實現(xiàn)軟件流水。為填滿軟件流水線,軟件流水結構需要執(zhí)行的最小循環(huán)迭代次數(shù)稱為最小循環(huán)次數(shù)。循環(huán)總數(shù)小于最小循環(huán)次數(shù)時,執(zhí)行不流水形式循環(huán); 循環(huán)總數(shù)大于最小循環(huán)次數(shù)時,執(zhí)行軟件流水形式循環(huán)。可以使用-ms 選項,使編譯器根據(jù)循環(huán)次數(shù)僅產生一種循環(huán)形式; 可使用-o3 和-pm 選項,使優(yōu)化器訪問整個程序,了解循環(huán)次數(shù)信息; 使用-nassert 內聯(lián)函數(shù),防止冗余循環(huán)產生;使用-mh 選項,消除軟件流水循環(huán)的排空,從而減小代碼尺寸。

由于在嵌套循環(huán)中編譯器僅對最里面的循環(huán)執(zhí)行軟件流水,因此對于執(zhí)行周期很少的內循環(huán)進行循環(huán)展開,對外循環(huán)進行軟件流水。

使用軟件流水應當注意的問題: 盡管軟件流水循環(huán)可以包含內聯(lián)函數(shù),但不能包含函數(shù)調用; 在循環(huán)中不使用break 語句; 循環(huán)控制變量不能與循環(huán)體內的語句有關; 如果循環(huán)體內復雜的條件代碼需要超過5 個條件寄存器或者32 個以上寄存器,則這個循環(huán)不可進行軟件流水。

(4)片內存儲器的分配及DMA技術的運用。

DM643 內部有16 KB 的一級程序緩存、16 KB 的一級數(shù)據(jù)緩存和256 KB 的程序數(shù)據(jù)共享二級緩存,遠小于執(zhí)行程序和待處理圖像數(shù)據(jù),不可能將程序和圖像數(shù)據(jù)都在片內RAM 中緩存,因此合理地配置和使用存儲空間,對系統(tǒng)整體效率影響很大。

提高算法程序執(zhí)行速度的關鍵是使核心循環(huán)代碼和要訪問的數(shù)據(jù)在第1 次訪問之后全部發(fā)生L1P 和L1D 命中。核心循環(huán)代碼占的空間很小,執(zhí)行過一次之后,完全可以全部在L1P 中緩存,因此,不用考慮代碼如何在存儲器中存放,主要問題是圖像數(shù)據(jù)的存放。

由于L1D 采取LRU (Least Recently Used)分配機制,因此對于小于等于16 KB 的連續(xù)存放的數(shù)據(jù)塊可完全在L1D 中命中。以解碼過程為例,IDCT 和運動補償模塊都是以宏塊為單位進行運算的,IDCT 數(shù)據(jù)類型為short型,運動補償中的預測幀和當前幀的數(shù)據(jù)類型為unsignedchar 型。計算一個宏塊(420 格式)的IDCT 和運動補償要訪問的數(shù)據(jù)大小共需1 536 字節(jié),運動補償?shù)臄?shù)據(jù)包括預測宏塊和當前宏塊的數(shù)據(jù),實際解碼中以6 個宏塊(10 KB)作為1 次處理對象。待處理的數(shù)據(jù)要從外部存儲器搬到L2 中連續(xù)的存儲空間,可利用EDMA 與CPU 并行工作的特點,采取Ping??Pong 技術,使CPU 在處理Ping空間數(shù)據(jù)的同時,由EDMA 將下次要處理的數(shù)據(jù)搬到Pong 空間中; 當CPU 處理Pong 空間數(shù)據(jù)時,再由EDMA將Ping 空間已處理好的數(shù)據(jù)搬回外部存儲器,并將下次要處理的數(shù)據(jù)搬到Ping 空間,這樣就可達到CPU 的最大計算能力。Ping、Pong 空間各占用的大小為20 KB, 兩個總共約40 KB.L2 中的剩余空間分出64 KB 留給數(shù)據(jù)空間,用于解碼中常用的解碼表、量化步長、輸入壓縮碼流緩沖區(qū)和輸出碼流緩沖區(qū)等。64 KB 的程序空間用于存儲H. 264 算法中的運動預測、運動補償和中斷服務程序等關鍵代碼。L2 其余部分配置為Cache, 操作與L1D 類似。

2. 2 編寫線性匯編代碼

為了提高代碼性能,對影響處理速度的關鍵C 代碼段可以用線性匯編重新編寫。線性匯編代碼類似于匯編代碼,不同的是線性匯編代碼中不需要給出匯編代碼必須指出的所有信息(如所使用的寄存器、指令的并行與否、指令的延遲周期和指令使用的功能單元等),匯編優(yōu)化器會根據(jù)代碼的情況確定這些信息。當然,如果能夠事先確定一些信息(如循環(huán)的執(zhí)行次數(shù)、存儲區(qū)的地址等),則編寫的線性匯編代碼的效率更高。具體的優(yōu)化措施如下:

①使用偽指令向匯編優(yōu)化器提供較為詳細的信息

②畫出指令的相關圖,根據(jù)相關圖合理分配邏輯單元,最大限度地保證指令的并行執(zhí)行。

③充分使用C64x DSP 提供的強大包處理指令處理數(shù)據(jù)(包處理指令可同時處理2 個l6 位數(shù)據(jù)和4 個8 位數(shù)據(jù))。本系統(tǒng)中使用了AVGU4、MIN2、M AX2、SPACKU4、PACK2、D0T P2、D0T PN2 和UNPKLU4 等指令。C64x DSP 還提供了STDW(STNDW)、LDDW(LDNDW)指令,可一次存取連續(xù)的64 位數(shù)據(jù)。可利用LDDW 指令,將作1 次行變換所需數(shù)據(jù)1 次取來,并將處理后的結果利用STDW 指令一次存好。這樣大大縮短了代碼長度,提高了代碼效率。

④利用Schedule Table 確定循環(huán)的重復間隔,合理安排功能單元,進行軟件的流水。

⑤對于兩重循環(huán)嵌套,可將內層循環(huán)展開為外層循環(huán)內部的條件指令。這樣可減小由內層循環(huán)所帶來的循環(huán)前后的prolog 和epilog 的開銷。

3 性能分析

設計、調試好硬件系統(tǒng),并在DM643 上對整個系統(tǒng)軟件進行設計和優(yōu)化后,視/ 音頻編/ 解碼的處理速度及系統(tǒng)功能得到了很大提高。IP 可視電話基本做到話音清晰并實時傳輸,在網絡速度為30 kbps 以上時能實現(xiàn)CIF 圖像25~ 30 幀/ s, 并可以音唇同步。

結語

該系統(tǒng)能在一顆DM643 芯片上實現(xiàn)網絡可視電話的幾乎全部功能,能對音/ 視頻進行實時的編解碼和網絡傳輸,圖像質量高且易于升級,是一種比較理想的網絡可視電話解決方案。下一步的工作是把短信、電子郵件等其他功能整合進來。這樣,網絡IP 可視電話必將成為家庭或辦公室的真正桌面通信中心。

 

作者:佚名 合作媒體:不詳 編輯:顧北

 

 

 
 熱點技術
普通技術 “5G”,真的來了!牛在哪里?
普通技術 5G,是偽命題嗎?
普通技術 云視頻會議關鍵技術淺析
普通技術 運營商語音能力開放集中管理方案分析
普通技術 5G網絡商用需要“無憂”心
普通技術 面向5G應運而生的邊緣計算
普通技術 簡析5G時代四大關鍵趨勢
普通技術 國家網信辦就《數(shù)據(jù)安全管理辦法》公開征求意見
普通技術 《車聯(lián)網(智能網聯(lián)汽車)直連通信使用5905-5925MHz頻段管理規(guī)定(
普通技術 中興通訊混合云解決方案,滿足5G多元業(yè)務需求
普通技術 大規(guī)模MIMO將帶來更多無線信道,但也使無線信道易受攻擊
普通技術 蜂窩車聯(lián)網的標準及關鍵技術及網絡架構的研究
普通技術 4G與5G融合組網及互操作技術研究
普通技術 5G中CU-DU架構、設備實現(xiàn)及應用探討
普通技術 無源光網絡承載5G前傳信號可行性的研究概述
普通技術 面向5G中傳和回傳網絡承載解決方案
普通技術 數(shù)據(jù)中心布線系統(tǒng)可靠性探討
普通技術 家庭互聯(lián)網終端價值研究
普通技術 鎏信科技CEO劉舟:從連接層構建IoT云生態(tài),聚焦CMP是關鍵
普通技術 SCEF引入需求分析及部署應用
  版權與免責聲明: ① 凡本網注明“合作媒體:通信界”的所有作品,版權均屬于通信界,未經本網授權不得轉載、摘編或利用其它方式使用。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:通信界”。違反上述聲明者,本網將追究其相關法律責任。 ② 凡本網注明“合作媒體:XXX(非通信界)”的作品,均轉載自其它媒體,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責。 ③ 如因作品內容、版權和其它問題需要同本網聯(lián)系的,請在一月內進行。174
通信視界
華為余承東:Mate30總體銷量將會超過兩千萬部
趙隨意:媒體融合需積極求變
普通對話 苗圩:建設新一代信息基礎設施 加快制造業(yè)數(shù)字
普通對話 華為余承東:Mate30總體銷量將會超過兩千萬部
普通對話 趙隨意:媒體融合需積極求變
普通對話 韋樂平:5G給光纖、光模塊、WDM光器件帶來新機
普通對話 安筱鵬:工業(yè)互聯(lián)網——通向知識分工2.0之路
普通對話 庫克:蘋果不是壟斷者
普通對話 華為何剛:挑戰(zhàn)越大,成就越大
普通對話 華為董事長梁華:盡管遇到外部壓力,5G在商業(yè)
普通對話 網易董事局主席丁磊:中國正在引領全球消費趨
普通對話 李彥宏:無人乘用車時代即將到來 智能交通前景
普通對話 中國聯(lián)通研究院院長張云勇:雙輪驅動下,工業(yè)
普通對話 “段子手”楊元慶:人工智能金句頻出,他能否
普通對話 高通任命克里斯蒂安諾·阿蒙為公司總裁
普通對話 保利威視謝曉昉:深耕視頻技術 助力在線教育
普通對話 九州云副總裁李開:幫助客戶構建自己的云平臺
通信前瞻
楊元慶:中國制造高質量發(fā)展的未來是智能制造
對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 楊元慶:中國制造高質量發(fā)展的未來是智能制造
普通對話 對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 對話倪光南:“中國芯”突圍要發(fā)揮綜合優(yōu)勢
普通對話 黃宇紅:5G給運營商帶來新價值
普通對話 雷軍:小米所有OLED屏幕手機均已支持息屏顯示
普通對話 馬云:我挑戰(zhàn)失敗心服口服,他們才是雙11背后
普通對話 2018年大數(shù)據(jù)產業(yè)發(fā)展試點示范項目名單出爐 2
普通對話 陳志剛:提速又降費,中國移動的兩面精彩
普通對話 專訪華為終端何剛:第三代nova已成為爭奪全球
普通對話 中國普天陶雄強:物聯(lián)網等新經濟是最大機遇
普通對話 人人車李健:今年發(fā)力金融 拓展汽車后市場
普通對話 華為萬飚:三代出貴族,PC產品已走在正確道路
普通對話 共享退潮單車入冬 智享單車卻走向盈利
普通對話 Achronix發(fā)布新品單元塊 推動eFPGA升級
普通對話 金柚網COO邱燕:天吳系統(tǒng)2.0真正形成了社保管