當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀] 1 引言隨著計(jì)算機(jī)技術(shù)、微電子技術(shù)的高速發(fā)展,實(shí)時(shí)圖像處理在多媒體、圖像通信等領(lǐng)域有著非常廣泛的應(yīng)用。FPGA 芯片在集成度、容量和速度方面都達(dá)到了較高的水平,是實(shí)時(shí)圖像處理的理想選擇,基于FPGA 的圖像處理

 1 引言

隨著計(jì)算機(jī)技術(shù)、微電子技術(shù)的高速發(fā)展,實(shí)時(shí)圖像處理在多媒體、圖像通信等領(lǐng)域有著非常廣泛的應(yīng)用。FPGA 芯片在集成度、容量和速度方面都達(dá)到了較高的水平,是實(shí)時(shí)圖像處理的理想選擇,基于FPGA 的圖像處理芯片的研究已成為信息產(chǎn)業(yè)的新熱點(diǎn)。USB2.0 接口是一個(gè)傳輸速率可以達(dá)到480Mb/s的串行接口,并由不同類型的外圍設(shè)備共享這個(gè)接口總路線,基于USB2.0 的視頻圖像處理芯片是按照USB協(xié)議進(jìn)行設(shè)計(jì)的。USB2.0 接口的面世,推動(dòng)了高清數(shù)碼攝像頭的普及應(yīng)用,加上同期寬帶的飛速發(fā)展,電腦攝像頭的本地和遠(yuǎn)程視頻效果都有了大幅度提升。國(guó)內(nèi)USB2.0 的視頻圖像處理芯片現(xiàn)在發(fā)展迅速,比如深圳的艾科創(chuàng)新、珠海的炬力等公司都相繼推出了各自的產(chǎn)品。本文介紹了一種基于USB2.0 的視頻圖像處理芯片的實(shí)現(xiàn)方案,并在搭建的仿真和驗(yàn)證平臺(tái)上,對(duì)系統(tǒng)進(jìn)行了功能仿真和FPGA 驗(yàn)證,結(jié)果證實(shí)本設(shè)計(jì)達(dá)到了設(shè)計(jì)要求。

2 基于USB2.0的視頻圖像處理芯片的整體實(shí)現(xiàn)方案

基于USB2.0 視頻圖像處理芯片在硬件上由8 個(gè)模塊組成:微處理器模塊(MCU)、MCU 總線接口模塊(MCU Bus Interface)、USB2.0 收發(fā)器模塊(USB2.0PHY)、USB2.0 串行接口引擎模塊(USB2.0 SerialInterface Engine,簡(jiǎn)稱USB2.0 SIE)、數(shù)據(jù)緩沖模塊(Data Buffer)、DMA 傳輸控制器模塊(DMA)、圖像處理單元 (PU) 、圖像預(yù)處理單元(PPU)。其結(jié)構(gòu)框圖如下圖1 所示。

圖1 基于USB2.0 的視頻圖像處理芯片結(jié)構(gòu)框圖

其中,MCU模塊、USB2.0 PHY模塊和USB2.0 SIE模塊使用已有的IP 核,而其它模塊均采用硬件描述語(yǔ)言(Verilog HDL)自行設(shè)計(jì)。

MCU 模塊負(fù)責(zé)協(xié)調(diào)控制整個(gè)系統(tǒng)的運(yùn)作;MCUBus Interface 模塊負(fù)責(zé)各模塊的部分地址譯碼及相關(guān)數(shù)據(jù)的選通,以便于MCU 統(tǒng)一管理。USB2.0 PHY 模塊負(fù)責(zé)USB 物理層的鏈接,并將USB2.0 的總線信號(hào)變成標(biāo)準(zhǔn)的UTMI 接口信號(hào);USB2.0 SIE 模塊負(fù)責(zé)處理USB 協(xié)議層的操作,完成USB 協(xié)議包生成和解析,以及接收來(lái)自DMA 的圖像數(shù)據(jù),并將其保存在數(shù)據(jù)緩沖模塊,完成與MCU 進(jìn)行的互動(dòng);DataBuffer 負(fù)責(zé)將處理后的圖像數(shù)據(jù)緩存起來(lái),以備USB 同步幀傳輸時(shí)取出后發(fā)送至PC;DMA 模塊完成將PU 處理后的圖像數(shù)據(jù)傳送給USB2.0 SIE;PPU 模塊完成獲取來(lái)自Sensor傳感器輸出的圖像數(shù)據(jù),并且對(duì)數(shù)據(jù)進(jìn)行各種圖像方面的處理,然后將處理后的圖像數(shù)據(jù)發(fā)送至PU.

3 PPU模塊中核心部件的設(shè)計(jì)

PPU 模塊所完成的功能主要是:(1) YCbCr4:2:2格式到Y(jié)CbCr4:4:4 格式的轉(zhuǎn)換;(2) RGB565 格式到RGB888 格式的轉(zhuǎn)換;(3) Bayer 數(shù)據(jù)壞點(diǎn)修正及Bayer格式到RGB888 格式的轉(zhuǎn)換。其中第三個(gè)功能是本模塊的最重要的功能,本方案中采用了"兩條線偽雙端口+六級(jí)流水線"的方案來(lái)實(shí)現(xiàn),其原理圖如圖2所示。

圖2 Bayer 數(shù)據(jù)壞點(diǎn)修正及格式轉(zhuǎn)換的硬件原理圖。

從圖2 可以知道,在本方案中把壞點(diǎn)修正算法與格式轉(zhuǎn)換算法做在了一個(gè)模塊中。壞點(diǎn)地址存儲(chǔ)模塊,主要是用來(lái)接收從MCU 輸出的壞點(diǎn)信息。偽雙端口RAM1、RAM2 是用來(lái)臨時(shí)存儲(chǔ)Bayer 圖像中的前兩行數(shù)據(jù)。而右端的六級(jí)流水線模塊,它的作用是完成相應(yīng)的壞點(diǎn)修正和格式轉(zhuǎn)換。其中,六級(jí)流水線的前面五級(jí)的作用是完成3×5 窗口的壞點(diǎn)修正,而后面三級(jí)是為了完成3×3 窗口的格式轉(zhuǎn)換。

邏輯管理模塊的主要作用是統(tǒng)一管理六級(jí)流水線的相應(yīng)操作,其內(nèi)部包含一些計(jì)數(shù)器、比較器。從圖中還可以看到,P24、P34 分別把數(shù)據(jù)寫入了RAM1、RAM2,這主要是為了更新RAM 中的數(shù)據(jù),使得3×6 窗口能夠漫游Bayer 圖像的每一個(gè)像素點(diǎn)。同時(shí)本設(shè)計(jì)對(duì)圖像的邊緣也做了很好的處理,采用鏡像技術(shù)對(duì)邊緣做了很好的修正。

1 引言

隨著計(jì)算機(jī)技術(shù)、微電子技術(shù)的高速發(fā)展,實(shí)時(shí)圖像處理在多媒體、圖像通信等領(lǐng)域有著非常廣泛的應(yīng)用。FPGA 芯片在集成度、容量和速度方面都達(dá)到了較高的水平,是實(shí)時(shí)圖像處理的理想選擇,基于FPGA 的圖像處理芯片的研究已成為信息產(chǎn)業(yè)的新熱點(diǎn)。USB2.0 接口是一個(gè)傳輸速率可以達(dá)到480Mb/s的串行接口,并由不同類型的外圍設(shè)備共享這個(gè)接口總路線,基于USB2.0 的視頻圖像處理芯片是按照USB協(xié)議進(jìn)行設(shè)計(jì)的。USB2.0 接口的面世,推動(dòng)了高清數(shù)碼攝像頭的普及應(yīng)用,加上同期寬帶的飛速發(fā)展,電腦攝像頭的本地和遠(yuǎn)程視頻效果都有了大幅度提升。國(guó)內(nèi)USB2.0 的視頻圖像處理芯片現(xiàn)在發(fā)展迅速,比如深圳的艾科創(chuàng)新、珠海的炬力等公司都相繼推出了各自的產(chǎn)品。本文介紹了一種基于USB2.0 的視頻圖像處理芯片的實(shí)現(xiàn)方案,并在搭建的仿真和驗(yàn)證平臺(tái)上,對(duì)系統(tǒng)進(jìn)行了功能仿真和FPGA 驗(yàn)證,結(jié)果證實(shí)本設(shè)計(jì)達(dá)到了設(shè)計(jì)要求。

2 基于USB2.0的視頻圖像處理芯片的整體實(shí)現(xiàn)方案

基于USB2.0 視頻圖像處理芯片在硬件上由8 個(gè)模塊組成:微處理器模塊(MCU)、MCU 總線接口模塊(MCU Bus Interface)、USB2.0 收發(fā)器模塊(USB2.0PHY)、USB2.0 串行接口引擎模塊(USB2.0 SerialInterface Engine,簡(jiǎn)稱USB2.0 SIE)、數(shù)據(jù)緩沖模塊(Data Buffer)、DMA 傳輸控制器模塊(DMA)、圖像處理單元 (PU) 、圖像預(yù)處理單元(PPU)。其結(jié)構(gòu)框圖如下圖1 所示。

圖1 基于USB2.0 的視頻圖像處理芯片結(jié)構(gòu)框圖

其中,MCU模塊、USB2.0 PHY模塊和USB2.0 SIE模塊使用已有的IP 核,而其它模塊均采用硬件描述語(yǔ)言(Verilog HDL)自行設(shè)計(jì)。

MCU 模塊負(fù)責(zé)協(xié)調(diào)控制整個(gè)系統(tǒng)的運(yùn)作;MCUBus Interface 模塊負(fù)責(zé)各模塊的部分地址譯碼及相關(guān)數(shù)據(jù)的選通,以便于MCU 統(tǒng)一管理。USB2.0 PHY 模塊負(fù)責(zé)USB 物理層的鏈接,并將USB2.0 的總線信號(hào)變成標(biāo)準(zhǔn)的UTMI 接口信號(hào);USB2.0 SIE 模塊負(fù)責(zé)處理USB 協(xié)議層的操作,完成USB 協(xié)議包生成和解析,以及接收來(lái)自DMA 的圖像數(shù)據(jù),并將其保存在數(shù)據(jù)緩沖模塊,完成與MCU 進(jìn)行的互動(dòng);DataBuffer 負(fù)責(zé)將處理后的圖像數(shù)據(jù)緩存起來(lái),以備USB 同步幀傳輸時(shí)取出后發(fā)送至PC;DMA 模塊完成將PU 處理后的圖像數(shù)據(jù)傳送給USB2.0 SIE;PPU 模塊完成獲取來(lái)自Sensor傳感器輸出的圖像數(shù)據(jù),并且對(duì)數(shù)據(jù)進(jìn)行各種圖像方面的處理,然后將處理后的圖像數(shù)據(jù)發(fā)送至PU.

3 PPU模塊中核心部件的設(shè)計(jì)

PPU 模塊所完成的功能主要是:(1) YCbCr4:2:2格式到Y(jié)CbCr4:4:4 格式的轉(zhuǎn)換;(2) RGB565 格式到RGB888 格式的轉(zhuǎn)換;(3) Bayer 數(shù)據(jù)壞點(diǎn)修正及Bayer格式到RGB888 格式的轉(zhuǎn)換。其中第三個(gè)功能是本模塊的最重要的功能,本方案中采用了"兩條線偽雙端口+六級(jí)流水線"的方案來(lái)實(shí)現(xiàn),其原理圖如圖2所示。

圖2 Bayer 數(shù)據(jù)壞點(diǎn)修正及格式轉(zhuǎn)換的硬件原理圖。

從圖2 可以知道,在本方案中把壞點(diǎn)修正算法與格式轉(zhuǎn)換算法做在了一個(gè)模塊中。壞點(diǎn)地址存儲(chǔ)模塊,主要是用來(lái)接收從MCU 輸出的壞點(diǎn)信息。偽雙端口RAM1、RAM2 是用來(lái)臨時(shí)存儲(chǔ)Bayer 圖像中的前兩行數(shù)據(jù)。而右端的六級(jí)流水線模塊,它的作用是完成相應(yīng)的壞點(diǎn)修正和格式轉(zhuǎn)換。其中,六級(jí)流水線的前面五級(jí)的作用是完成3×5 窗口的壞點(diǎn)修正,而后面三級(jí)是為了完成3×3 窗口的格式轉(zhuǎn)換。

邏輯管理模塊的主要作用是統(tǒng)一管理六級(jí)流水線的相應(yīng)操作,其內(nèi)部包含一些計(jì)數(shù)器、比較器。從圖中還可以看到,P24、P34 分別把數(shù)據(jù)寫入了RAM1、RAM2,這主要是為了更新RAM 中的數(shù)據(jù),使得3×6 窗口能夠漫游Bayer 圖像的每一個(gè)像素點(diǎn)。同時(shí)本設(shè)計(jì)對(duì)圖像的邊緣也做了很好的處理,采用鏡像技術(shù)對(duì)邊緣做了很好的修正。

4 PU模塊中核心部件的設(shè)計(jì)

圖像處理單元所要完成的功能主要有:(1)圖像濾波(Image Filte);(2)對(duì)比度(Contrast);(3)亮度(Brightness);(4)飽和度(Saturation);(5)色相(Hue);(6)銳化(Sharpness);(7)伽馬校正(Gamma)等。圖3 給出了PU 模塊中核心部件的結(jié)構(gòu),其中圖像濾波功能是通過(guò)一個(gè)1×5 窗口在圖像上的遍歷來(lái)完成,伽馬校正主要是通過(guò)對(duì)ROM 的查表來(lái)實(shí)現(xiàn)。

圖3 PU 模塊中核心部件結(jié)構(gòu)圖。

5 設(shè)計(jì)的仿真和驗(yàn)證

5.1 模塊的功能仿真

主要給出了對(duì)圖像預(yù)處理模塊中核心部件Bayer模塊的仿真驗(yàn)證方法,其他模塊的仿真驗(yàn)證與此類似。

由于圖像處理模塊所涉及的數(shù)據(jù)量非常龐大,僅憑單一的一種或兩種軟件無(wú)法獨(dú)立完成,所以這里仿真驗(yàn)證的工作是通過(guò)三個(gè)軟件Xilinx ISE + ModelSim +Matlab 共同完成,圖4 給出了Bayer 模塊TestBench示意圖,其實(shí)現(xiàn)的步驟主要分為以下三步:

圖4 Bayer 模塊TestBench 模型示意圖。

(1)由MATLAB 從10 張有共同壞點(diǎn)位置的不同JPEG 圖像中讀取8bit 無(wú)符號(hào)RGB 數(shù)據(jù),然后由相應(yīng)的RGB 數(shù)據(jù)生成對(duì)應(yīng)的Bayer 數(shù)據(jù),并以10個(gè)。txt 文本文件來(lái)保留這10 張圖像的Bayer 數(shù)據(jù),這十張文本文件同壞點(diǎn)位置信息一起作為測(cè)試輸入激勵(lì)。

(2)把測(cè)試輸入激勵(lì),分別輸入Bayer 模塊和MATLAB 模擬Bayer 模塊功能的程序中,可以分別得到大量的信息,這些信息都是由。txt 文本文件來(lái)保存,其中MATLAB 模擬程序完成的功能與Bayer 模塊完成的功能相同,只是兩者運(yùn)行的平臺(tái)不同。

(3)比較由MATLAB 模擬程序與Bayer 模塊所生成的大量。txt 文本文件,由于模擬程序和硬件模塊具體實(shí)現(xiàn)的機(jī)制不同(模擬程序采用了矩陣運(yùn)算,而硬件模塊采用2 條線的行緩沖+六級(jí)流水線的方式實(shí)現(xiàn)),如果它們產(chǎn)生的數(shù)據(jù)一致,則可以很好的說(shuō)明硬件模塊完成了預(yù)期的功能, 然后再運(yùn)用MATLAB 顯示函數(shù),把原始圖像數(shù)據(jù)與修正后的數(shù)據(jù)以圖像的形式顯示出來(lái),這樣能以更加直觀的形式來(lái)觀察對(duì)應(yīng)的圖像效果。

5.2 FPGA 上的驗(yàn)證

5.2.1 FPGA 上驗(yàn)證平臺(tái)的搭建

圖6 所示為本設(shè)計(jì)的FPGA 驗(yàn)證平臺(tái)示意圖。

圖6 FPGA 驗(yàn)證平臺(tái)示意圖。

PC 與一塊USB2.0 PHY板通過(guò)USB2.0 總線連接,USB2.0 PHY 板與FPGA 開發(fā)板由標(biāo)準(zhǔn)UTMI 接口連接。Sensor 板主要是采用美光的MT9V112 sensor 板,I2C 接口主要是用于MCU 對(duì)Sensor 的控制,Data 總線包括數(shù)據(jù)總線和數(shù)據(jù)控制總線。而硬件MCU 模塊、MCU Bus Interface 模塊、USB2.0 SIE 模塊、DMA 模塊、PPU 模塊和PU 模塊均已綜合生成FPGA 下載程序下載到FPGA 中。

5.2.2 驗(yàn)證過(guò)程及結(jié)果

首先在PC 端需要安裝幾個(gè)工具軟件,用于觀察USB設(shè)備描述符信息的USBViewer,用于捕捉USB 枚舉信息的工具軟件BusHund.按圖6 所示連接所有硬件,然后,將USB2.0 PHY 板的USB 接口插入到PC的USB 插口,并打開USB 視頻管理工具軟件,能夠看到流暢的視頻圖像。專用測(cè)試工具軟件可以測(cè)試圖像幀速率。在驗(yàn)證的過(guò)程中,可以看到本方案所設(shè)計(jì)的芯片支持的最大分辨率為 640×480(VGA),最大分辨率時(shí)的幀速率約為15~20fps,基本達(dá)到了設(shè)計(jì)要求。

圖7 所示為PC 機(jī)上安裝的USB 數(shù)據(jù)捕捉軟件工具捕捉的視頻圖像數(shù)據(jù),經(jīng)分析這些數(shù)據(jù)證明圖像數(shù)據(jù)正常傳送至PC 用戶。

圖7 BusHound 捕捉的圖像數(shù)據(jù)。

由上圖可以看出本設(shè)計(jì)能夠穩(wěn)定地輸出圖像,能夠穩(wěn)定地實(shí)現(xiàn)設(shè)計(jì)要求。并且經(jīng)過(guò)反復(fù)的測(cè)試和評(píng)估,表明本設(shè)計(jì)達(dá)到了設(shè)計(jì)要求。表1 為經(jīng)測(cè)試能夠?qū)崿F(xiàn)的主要技術(shù)指標(biāo)。

表1 實(shí)現(xiàn)的主要技術(shù)指標(biāo)

6 結(jié)束語(yǔ)

本文設(shè)計(jì)了一種基于USB2.0 的視頻圖像處理芯片,通過(guò)功能仿真和FPGA 驗(yàn)證,表明達(dá)到了設(shè)計(jì)要求,完成了設(shè)計(jì)任務(wù)。隨著FPGA 技術(shù)不斷發(fā)展,使用FPGA 處理圖像信息已成為圖像處理領(lǐng)域中的一個(gè)發(fā)展趨勢(shì),特別是在對(duì)圖像處理速度有較高要求的實(shí)時(shí)圖像處理系統(tǒng)中,F(xiàn)PGA 將更能體現(xiàn)其在速度與靈活性方面的優(yōu)勢(shì)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉