張曉晶
摘要:隨著眼下數(shù)字電視的普及和多媒體技術(shù)的迅猛發(fā)展,數(shù)字視頻數(shù)據(jù)日益增多。數(shù)字化引起了電視技術(shù)領(lǐng)域的極大變革。如何將已經(jīng)存在的模擬視頻信號(hào)轉(zhuǎn)換為SDI信號(hào)已經(jīng)成為一個(gè)重要的課題。目前,我國(guó)處于模擬、數(shù)字信號(hào)并存階段,而模擬視頻信號(hào)到SDI信號(hào)的轉(zhuǎn)換就是這個(gè)過(guò)渡階段必不可少的關(guān)鍵性技術(shù)。本文介紹了一種基于FPGA芯片的實(shí)時(shí)視頻圖像處理系統(tǒng)。詳細(xì)討論了從模擬復(fù)合視頻信號(hào)CVBS到SDI信號(hào)之間的轉(zhuǎn)換過(guò)程。經(jīng)實(shí)驗(yàn)結(jié)果證明,本設(shè)計(jì)基本實(shí)現(xiàn)了模擬視頻信號(hào)到SDI信號(hào)的轉(zhuǎn)換,達(dá)到了一定的預(yù)期效果。
關(guān)鍵詞:模擬信號(hào);SDI信號(hào);FPGA;I2C總線
中圖分類號(hào):TN791 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)11-0059-03
隨著多媒體技術(shù)及Internet的迅速發(fā)展,人們對(duì)數(shù)字化的需求日益增加,圖像、音頻、視頻等多媒體數(shù)據(jù)大量涌現(xiàn)。視頻作為一種主要的媒體類型,在豐富人們的生活、教育、娛樂等方面起到了越來(lái)越突出的作用。同時(shí),隨著視頻類型的增加和數(shù)據(jù)量的日益龐大,如何有效地傳輸這些數(shù)據(jù)已成為一種迫切的需求。并且毫無(wú)疑問數(shù)字電視是個(gè)大方向,與其它任何事物的發(fā)展一樣,中國(guó)數(shù)字電視產(chǎn)業(yè)的發(fā)展,也有其自身發(fā)展的規(guī)律。目前,我國(guó)處于模擬、數(shù)字信號(hào)并存階段,而模擬視頻信號(hào)到SDI信號(hào)的轉(zhuǎn)換就是這個(gè)過(guò)渡階段必不可少的關(guān)鍵性技術(shù)。
1 研究對(duì)象與方法
本次研究將開發(fā)一個(gè)FPGA硬件平臺(tái),該平臺(tái)利用TVP5150解碼芯片對(duì)由攝像頭采集到的視頻數(shù)據(jù)進(jìn)行A/D轉(zhuǎn)換,得到的數(shù)據(jù)流經(jīng)FPGA處理最終輸出SDI信號(hào)。我們使用到的TVP5150是超低功耗、支持NTSC/PAL/SECAM等格式的高性能視頻解碼器,在正常工作時(shí),它的功耗僅115 mW,并且具有超小封裝(32腳的TQFP),因此非常適用于便攜、批量大、高質(zhì)量和高性能的視頻產(chǎn)品?;贔PGA的模擬視頻信號(hào)到SDI信號(hào)轉(zhuǎn)換的實(shí)現(xiàn)也在推動(dòng)著數(shù)字化的進(jìn)一步發(fā)展和成熟。因此,本研究有著非常重要的現(xiàn)實(shí)意義。
2 系統(tǒng)方案設(shè)計(jì)
2.1 硬件系統(tǒng)描述
對(duì)于一路模擬視頻信號(hào),將其作為輸入接到我們?cè)O(shè)計(jì)的實(shí)驗(yàn)箱上,經(jīng)過(guò)處理后輸出為SDI格式的串行數(shù)字信號(hào)。整個(gè)硬件平臺(tái)如圖1所示,其中FPGA采用高性能的CycloneIII EP3C55F484芯片[1]。
開發(fā)板外形如圖2所示。開發(fā)板涉及的硬件有:(1)FPGA芯片:EP3C55F484C8;(2)解碼芯片:TVP5150;(3)攝像頭;(4)并串轉(zhuǎn)換芯片:CY7B9234;(5)SDI輸出驅(qū)動(dòng)芯片:CLC007;(6)27M晶振一個(gè);(7)程序下載電纜USB Blaster一條;(8)顯示器。
本硬件平臺(tái)已具有實(shí)現(xiàn)模擬視頻信號(hào)到SDI信號(hào)的轉(zhuǎn)換的功能。模擬視頻的解碼需要解碼芯片TVP5150來(lái)完成,I2C總線的配置和加擾等功能都需要FPGA來(lái)完成。本平臺(tái)綜合布局FPGA,在QuartusII環(huán)境下加擾碼、NRZI編碼器,集成為完整的可編程片上系統(tǒng)。至此,硬件部分的設(shè)計(jì)完成[2]。
2.2 硬件系統(tǒng)與FPGA關(guān)聯(lián)過(guò)程
本次課設(shè)使用FPGA芯片為Cyclone III的EP3C55F484C8,功能較為強(qiáng)大,整個(gè)程序僅使用了其很少一部分資源,其中使用了9%的管腳和兩個(gè)鎖相環(huán)[3]。具體情況如圖3所示。
整體設(shè)計(jì)流程分為“前期”工程和“后期”工程兩步。所謂“前期”步驟開始于提出基本方法和建立在框圖層次上的模塊,大型的邏輯設(shè)計(jì)通常是分層次的。第二步是真正為模塊編寫VHDL程序,包括接口,內(nèi)部細(xì)節(jié)。第三步是仿真/驗(yàn)證。仿真/驗(yàn)證之后,進(jìn)行“后期”階段的工作,“后期”階段分為三個(gè)步驟:邏輯綜合、裝配與布局/布線、延時(shí)分析。
編寫程序完成后,要選擇與開發(fā)板上使用FPGA芯片對(duì)應(yīng)的芯片,本設(shè)計(jì)中選擇的是EP3C55F484C8,選擇的方法是Assigments/Device,在Device Family中選擇Cyclone III,Availiable device中選擇EP3C55F484C8即可。在編譯無(wú)誤后進(jìn)行引腳的分配。在開發(fā)板上,F(xiàn)PGA芯片與其它外圍設(shè)備的連接時(shí)固定的,各引腳都與不同外圍芯片的不同引腳相連,經(jīng)過(guò)以上編譯,片上系統(tǒng)已經(jīng)為映射到相應(yīng)EP3C55F484C8芯片產(chǎn)生了FPGA資源的分配文件[4]。引腳分配界面如圖4所示。
分配好引腳后的某些選項(xiàng)需要設(shè)置。選Assigments/Device/Device and pins Options進(jìn)行設(shè)置。對(duì)于沒有用到的引腳,在Unused Pins標(biāo)簽頁(yè)選擇As inputtri-stated。經(jīng)過(guò)這步設(shè)置后,再編譯工程就會(huì)正常而不報(bào)錯(cuò)。編譯無(wú)錯(cuò)后,可以使用Quartus II中的Tool/Programmer將生成的FPGA分配文件通過(guò)USB Blaster從PC機(jī)下載到FPGA芯片中,以上步驟完成后硬件系統(tǒng)就與FPGA芯片內(nèi)部相關(guān)聯(lián)了[5]。
3 信號(hào)解碼流程
3.1 關(guān)于TVP5150解碼模塊
只有將模擬視頻信號(hào)轉(zhuǎn)換成為符合ITU-R BT.656標(biāo)準(zhǔn)的數(shù)字信號(hào),才可方便地利用FPGA或者DSP甚至PC機(jī)來(lái)進(jìn)行信號(hào)處理。本模塊就是利用超低功耗TVP5150芯片對(duì)視頻信號(hào)A/D解碼,由FPGA通過(guò)I2C總線控制,預(yù)留地址數(shù)據(jù)等接口,作為后續(xù)數(shù)字信號(hào)處理之用。視頻采集系統(tǒng)由攝像頭與解碼芯片TVP5150兩部分組成。CCD攝像頭輸出的模擬視頻信號(hào),通過(guò)解碼芯片TVP5150的放大,抗混疊濾波和A/D轉(zhuǎn)換等處理后將模擬信號(hào)轉(zhuǎn)換為數(shù)字視頻信號(hào)。解碼芯片TVP5150由I2C總線控制。 FPGA通過(guò)I2C控制模塊配置TVP5150后,就可以在輸入時(shí)鐘(CLK,27MHz)的同步下讀入YCRCB 4:2:2格式的并行8bit視頻數(shù)據(jù)[6]。endprint
3.2 對(duì)解碼后的數(shù)據(jù)進(jìn)行處理使之成為標(biāo)準(zhǔn)SDI格式
SDI接口是數(shù)字串行接口(serial digital interface),是把數(shù)據(jù)字的各個(gè)比特以及相應(yīng)的數(shù)據(jù)通過(guò)單一通道順序傳送的接口。由于串行數(shù)字信號(hào)的數(shù)據(jù)率很高,在傳送前必須經(jīng)過(guò)處理。用擾碼的不歸零倒置(NRZI)對(duì)原始數(shù)據(jù)流進(jìn)行擾頻,并變換為NRZI碼確保在接收端可靠地恢復(fù)原始數(shù)據(jù)。這樣在概念上可以將數(shù)字串行接口理解為一種基帶信號(hào)調(diào)制。SDI接口能通過(guò)270Mb/s的串行數(shù)字分量信號(hào)[7]。
本系統(tǒng)解碼后的輸出數(shù)據(jù)對(duì)極性很敏感,容易造成鎖相環(huán)失鎖,從而產(chǎn)生嚴(yán)重的接收誤碼。通過(guò)加擾可以消除這些缺陷。使用VHDL語(yǔ)言實(shí)現(xiàn)信號(hào)的加擾碼和NRZI編碼的編程實(shí)現(xiàn)思路:
G1(X)=X9+X4+1
G2(X)=X+1
編程思路:對(duì)一組數(shù)據(jù)實(shí)時(shí)進(jìn)行處理,一組含10bit數(shù)據(jù)。將10bit數(shù)據(jù)分為三組:0~4bit、5~8bit、9bit分別進(jìn)行循環(huán)編碼打到編碼目的。
3.3 對(duì)系統(tǒng)I2C總線進(jìn)行配置
我們基于FPGA,使用VHDL語(yǔ)言對(duì)整個(gè)系統(tǒng)的I2C總線進(jìn)行配置。程序思路:本次設(shè)計(jì)中,我們僅設(shè)置了I2C的一部分功能。把TVP5150設(shè)計(jì)為主機(jī),F(xiàn)PGA為從機(jī),僅僅由TVP5150向FPGA寫數(shù)據(jù)。
因?yàn)镮2C的在傳送數(shù)據(jù)時(shí),分為等待開始信號(hào)、開始、傳送數(shù)據(jù)、等待應(yīng)答、結(jié)束等幾個(gè)工作模式,我們可以type state_n is (waitn,start,wr,ask,delay,stop),考慮到在數(shù)據(jù)的傳輸中會(huì)發(fā)生很多不可預(yù)料的情況,我們引入一個(gè)時(shí)延,在這個(gè)時(shí)延范圍內(nèi)我們就按照I2C總線的工作流程而執(zhí)行,一旦超出這個(gè)時(shí)延而未等到我們所需信號(hào)時(shí),程序就轉(zhuǎn)到結(jié)束模式,等待下一次的開始信號(hào)。這樣就避免了程序走入死胡同,保證了程序的正常運(yùn)行。在本次課設(shè)中通過(guò)Quartus II中的功能添加一個(gè)鎖相環(huán)模塊,并選擇輸出為27M/122=211 KHz的時(shí)鐘信號(hào)來(lái)作為I2C程序的驅(qū)動(dòng)程序[8]。
4 結(jié)語(yǔ)
本論文介紹了一種基于FPGA芯片的實(shí)時(shí)視頻圖像處理系統(tǒng)。詳細(xì)討論了從模擬復(fù)合視頻信號(hào)CVBS到SDI信號(hào)之間的轉(zhuǎn)換過(guò)程:模擬視頻信號(hào)經(jīng)過(guò)解碼芯片TVP5150的A/D轉(zhuǎn)換,轉(zhuǎn)換為ITU-R BT.656格式的8bit并行數(shù)字視頻信號(hào),該數(shù)字信號(hào)在FPGA內(nèi)擴(kuò)充為10bit并進(jìn)行加擾碼和NRZI編碼運(yùn)算,經(jīng)過(guò)處理后輸出為10bit,27M的并行數(shù)字信號(hào),之后經(jīng)過(guò)并串轉(zhuǎn)換得到270M串行SDI信號(hào),并將該信號(hào)接于顯示屏上。本系統(tǒng)在QuartusII軟件平臺(tái)下開發(fā)并在硬件上得到實(shí)現(xiàn)。經(jīng)實(shí)驗(yàn)結(jié)果證明,本設(shè)計(jì)基本實(shí)現(xiàn)了模擬視頻信號(hào)到SDI信號(hào)的轉(zhuǎn)換,達(dá)到了一定的預(yù)期效果。
參考文獻(xiàn)
[1]姜秀華,柴劍平,林正豹,等.現(xiàn)代電視原理[M].高等教育出版社,2008.
[2]李國(guó)洪,胡輝,沈明山.EDA技術(shù)與實(shí)驗(yàn)[M].機(jī)械工業(yè)出版社,2009.
[3]李宰辛.Altera發(fā)布Quartus II軟件8.1,延續(xù)效能領(lǐng)先優(yōu)勢(shì)[N].Altera資訊,11-2008.
[4]劉韜.FPGA數(shù)字電視系統(tǒng)設(shè)計(jì)與開發(fā)實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2005.
[5]于楓,張麗英,等.ALTERA可編程邏輯器件應(yīng)用技術(shù)[M].北京:科學(xué)出版社,2004.
[6]張凱,林偉.VHDL實(shí)例剖析[M].國(guó)防工業(yè)出版社,2004.
[7]ITU601/656編碼標(biāo)準(zhǔn).國(guó)際電信聯(lián)盟無(wú)線電通信部門656-3號(hào)建議書[S].1982.
[8]Wayne.Wolf FPGA-Based System Design[M].機(jī)械工業(yè)出版社,2005.
Abstract:With the popularity of digital television now and the rapid development of multimedia technology, digital video data is increasing. Digital TV technology caused a great change. How to transform analog video signals existed to SDI signal has become an important issue. At present, We are in a phase that analog signals and digital signals are co-existenced, while the analog video signals to SDI signal conversion is the key technology essential to the transition phase.This topic describes the FPGA-based real-time video image processing system. Finally, the experimental results prove that the design of the basic realization of analog video signals to SDI signal conversion.
Key Words:Analog signal; SDI signal; FPGA; I2C BUSendprint