免费色播,亚洲国产欧美国产第一区二区三区,毛片看,日本精品在线观看视频,国产成人精品一区二区免费视频,日本黄色免费网站,一级毛片免费

C2H技術(shù)在視頻監(jiān)控系統(tǒng)中的應(yīng)用

來源:網(wǎng)絡(luò)

點(diǎn)擊:1774

A+ A-

所屬頻道:新聞中心

關(guān)鍵詞: C2H,視頻監(jiān)控

      0 引 言

      隨著視頻監(jiān)控系統(tǒng)的廣泛應(yīng)用,人們對(duì)監(jiān)控系統(tǒng)的實(shí)時(shí)性提出了更高的要求,特別是在數(shù)據(jù)的高速采集應(yīng)用中,傳統(tǒng)技術(shù)在處理速度上面臨著嚴(yán)峻的考驗(yàn),當(dāng)前通用的解決方案很難滿足用戶日益提高的需求。為此,Altera 公司于2006 年4 月7 日提出了C2H 技術(shù)。這個(gè)技術(shù)的實(shí)質(zhì)是通過硬件映射的方式直接用硬件對(duì)C 語言進(jìn)行加速,獲得系統(tǒng)性能的提高。

      本文將C2H 技術(shù)應(yīng)用于視頻監(jiān)控系統(tǒng)的數(shù)據(jù)存儲(chǔ)功能部分,有效的加快了數(shù)據(jù)的讀寫速度,使系統(tǒng)的性能得到大幅度的提升。

      1 C2H 技術(shù)介紹

      1.1 C2H 的特點(diǎn)

      C2H 是一種可以直接對(duì)ANSI C 函數(shù)定制硬件加速的技術(shù),在推出短短的一年時(shí)間內(nèi)就得到了嵌入式及FPGA 設(shè)計(jì)者的廣泛使用。C2H 編譯器能分析程序要加速實(shí)現(xiàn)的存儲(chǔ)器接口類型,生成硬件加速器邏輯以及合適的Avalon(總線互聯(lián)架構(gòu))的主機(jī)和從機(jī)接口,達(dá)到與存儲(chǔ)器延時(shí)的匹配。這樣,分擔(dān)了處理器的數(shù)據(jù)計(jì)算和存儲(chǔ)器訪問任務(wù),使處理器能夠更好的處理其他任務(wù)。數(shù)據(jù)表明,與未采用C2H 加速的系統(tǒng)相比,采用NiosII C2H 編譯器加速的系統(tǒng)性能提高了10 到45 倍,而耗費(fèi)的邏輯資源僅比處理器本身多出0.7 至2.0 倍。NiosII C2H 編譯器是基于Eclipse 的NiosII 集成開發(fā)環(huán)境(IDE)中的一個(gè)插件。同時(shí),C2H編譯器具有識(shí)別并行運(yùn)行事件的功能,能在硬件中同時(shí)運(yùn)行相互獨(dú)立的事件。與前面結(jié)果無關(guān)的事件將被盡早的執(zhí)行。軟件調(diào)用以線程的方式進(jìn)行加速——每個(gè)加速器完全并行運(yùn)行,真正的多任務(wù)系統(tǒng)(CPU, 硬件加速器)。

      1.2 C2H 的使用流程

      C2H的使用需要進(jìn)行反復(fù)的調(diào)試,直到性能符合設(shè)計(jì)要求。具體流程如下:

      (1)在NiosII中開發(fā)和調(diào)試C程序;

     ?。?)分析C程序,找到最適合加速的部分;

     ?。?)將需要加速的代碼段寫成一個(gè)獨(dú)立的子函數(shù);

     ?。?)指定這個(gè)函數(shù)為硬件加速的函數(shù);

     ?。?)在NiosII IDE中重新編譯整個(gè)工程;

     ?。?)分析硬件加速的結(jié)果,觀察C2H*估報(bào)告;

      2 視頻監(jiān)控系統(tǒng)的設(shè)計(jì)

      設(shè)計(jì)中選用的是 Altera 公司生產(chǎn)的CycloneII 系列中的EP2c35 FPGA。CycloneII 系列是低成本嵌入式處理解決方案,具有可以擴(kuò)展外設(shè)集、存儲(chǔ)器、I/O 的特點(diǎn)。同時(shí)Altera 公司免費(fèi)提供NiosII 嵌入式處理器。NiosII 軟核是一個(gè)32 位RISC 嵌入式處理器,性能超過200MIPS,滿足當(dāng)前系統(tǒng)的設(shè)計(jì)要求。Altera 公司提供了一整套針對(duì)NiosII 軟核的SOPC 開發(fā)工具,輕松實(shí)現(xiàn)從底層的硬件設(shè)計(jì)到上層的軟件開發(fā)。

      2.1 視頻監(jiān)控系統(tǒng)的總體設(shè)計(jì)

      本文中設(shè)計(jì)的視頻監(jiān)控系統(tǒng)的基本構(gòu)成是現(xiàn)場(chǎng)實(shí)時(shí)采集圖像的攝像機(jī)、視頻解碼芯片AD7181B、視頻D/A 芯片ADC7123、VGA 控制器、Flash、SDRAM 控制器及控制核心NiosIICPU。整個(gè)系統(tǒng)除A/D 和D/A 采用專用芯片外,其余部分均在FPGA 上實(shí)現(xiàn)。視頻監(jiān)控系統(tǒng)的硬件設(shè)計(jì)框圖如下圖1 所示:

      

      圖1 系統(tǒng)硬件設(shè)計(jì)框圖

      各模塊功能描述如下:NiosII 軟核CPU 是32 位的RISC 嵌入式處理器,為整個(gè)系統(tǒng)的中樞;SDRAM,是系統(tǒng)大容量的數(shù)據(jù)緩沖存儲(chǔ)區(qū)域;Flash,存儲(chǔ)系統(tǒng)的硬件和軟件的系統(tǒng)上電配置數(shù)據(jù);視頻處理模塊,實(shí)現(xiàn)對(duì)視頻流的ITU656 解碼、去隔行、格式轉(zhuǎn)換等功能。

      2.2 C2H 在視頻監(jiān)控系統(tǒng)的應(yīng)用

      下圖 1.2 詳細(xì)表示出了系統(tǒng)中視頻數(shù)據(jù)流的處理過程。

      

      圖2 視頻數(shù)據(jù)流處理過程圖

      從上圖 2 可以看出,數(shù)據(jù)流處理過程是先經(jīng)過視頻解碼芯片AD7181B 的模數(shù)轉(zhuǎn)換,變成8 位的數(shù)字視頻信號(hào);再由ITU-R656 解碼器解碼,使視頻格式變成YUV4:2:2;然后對(duì)視頻流進(jìn)行去隔行處理。去隔行處理中,需要將奇場(chǎng)數(shù)據(jù)和偶場(chǎng)數(shù)據(jù)分別存于兩個(gè)FIFO(FIFO A 和FIFO B)中,然后再以兩倍的頻率按ABABA……的順序讀出,便可完成視頻的去隔行處理。最后經(jīng)過YUV 到RGB 時(shí)域變換,便可在VGA 控制器的控制下在顯示器上進(jìn)行顯示。由于視頻解碼A/D 和視頻D/A 是由專用的芯片完成,速度很快,未對(duì)系統(tǒng)的速度有太大影響。經(jīng)過分析比較,系統(tǒng)性能提升的瓶頸是數(shù)據(jù)中間處理中的數(shù)據(jù)讀寫等環(huán)節(jié)。由于涉及到從存儲(chǔ)器讀數(shù)和寫數(shù),使這部分成為系統(tǒng)中最耗時(shí)的部分。所以提高系統(tǒng)性能的關(guān)鍵是從減少數(shù)據(jù)讀寫的時(shí)間耗費(fèi)入手。本設(shè)計(jì)中針對(duì)這一點(diǎn),采用C2H 技術(shù),對(duì)數(shù)據(jù)的讀寫進(jìn)行硬件加速。進(jìn)行加速部分程序如下:

      

      其中,dest_ptr 是數(shù)據(jù)目的地址,source_ptr 是數(shù)據(jù)原地址,length 是字節(jié)數(shù),測(cè)試中l(wèi)ength取1048576 個(gè)字節(jié)長(zhǎng)。

      實(shí)現(xiàn)過程按照論文 1.2 節(jié)所述。首先,經(jīng)過對(duì)時(shí)耗的分析比較,確定耗時(shí)最多的部分是數(shù)據(jù)讀寫部分。因此,確定這個(gè)環(huán)節(jié)為加速對(duì)象,并將其編寫為獨(dú)立的子函數(shù),即上述的c2h_acceleraTIon 函數(shù),然后在IDE 中直接選擇以上函數(shù),點(diǎn)擊右鍵,選擇HardwareAcceleration,最后再重新生成系統(tǒng)并編譯整個(gè)工程。

      3 結(jié)果分析比較

      為了進(jìn)行加速性能比較,在系統(tǒng)中又定義了一個(gè)與c2h_acceleration功能相同的函數(shù):software_acceleration,然后對(duì)函數(shù)c2h_acceleration進(jìn)行C2H加速。并將結(jié)果與未采用C2H加速的software_acceleration比較。定義了測(cè)試函數(shù),部分代碼如下:

      

      編譯運(yùn)行后,分析硬件加速的結(jié)果,觀察C2H*估報(bào)告,可以清楚的從運(yùn)行結(jié)果看出通過C2H加速后性能的提高。未進(jìn)行C2H加速的函數(shù)讀寫1048576字節(jié)的運(yùn)行結(jié)果如下圖3所示,經(jīng)過C2H加速的函數(shù)運(yùn)行結(jié)果如下圖4所示。

      

      圖 3 未進(jìn)行C2H加速測(cè)試結(jié)果

      

      圖 4C2H加速后的測(cè)試結(jié)果

      從圖3和圖4的結(jié)果可以看出來,軟件實(shí)現(xiàn)讀寫1048576字節(jié)數(shù)據(jù)需要86520ms;經(jīng)過C2H硬件加速后耗時(shí)減小至7470ms,速度提升多達(dá)11倍。

      4 結(jié) 論

      本文介紹了一個(gè)在Altera 公司提供的EP2c35 FPGA 上設(shè)計(jì)的視頻監(jiān)控系統(tǒng)。

      本文作者創(chuàng)新點(diǎn):在視頻監(jiān)控系統(tǒng)中應(yīng)用C2H 技術(shù)對(duì)數(shù)據(jù)讀寫環(huán)節(jié)進(jìn)行加速,使數(shù)據(jù)的讀寫速度提高了11 倍,提升了整個(gè)系統(tǒng)的性能。本文的設(shè)計(jì)方法和實(shí)現(xiàn)技術(shù)適合在對(duì)數(shù)據(jù)處理實(shí)時(shí)性要求較高的視頻產(chǎn)品中應(yīng)用,有很大的實(shí)用價(jià)值。

    (審核編輯: 智匯小新)

    聲明:除特別說明之外,新聞內(nèi)容及圖片均來自網(wǎng)絡(luò)及各大主流媒體。版權(quán)歸原作者所有。如認(rèn)為內(nèi)容侵權(quán),請(qǐng)聯(lián)系我們刪除。