基于CPLD的圖像傳感器非均勻性校正研究
2 非均勻性校正系統(tǒng)實現(xiàn)
2. 1 硬件設(shè)計
目前,在非均勻性校正的硬件實現(xiàn)上,采用的都是1點或2點校正法. 電路由計數(shù)器、存儲器、A /D轉(zhuǎn)換器和D /A轉(zhuǎn)換器等器件組成 . 通常,只能針對某個特定型號的圖像傳感器進行電路板制作,擴展性較差,而且,電路工作頻率較低. 采用這些器件很難實現(xiàn)多點實時校正.
為了實現(xiàn)非均勻性多點實時校正,筆者設(shè)計了基于復雜可編程邏輯器件(CPLD)的校正系統(tǒng). 該系統(tǒng)以CPLD EPM7512AE為核心,包括輸入和輸出信號調(diào)理電路、高速A/D采樣單元、D/A轉(zhuǎn)換單元和FLASH存儲器等功能模塊. 系統(tǒng)結(jié)構(gòu)如圖2所示。
圖2 校正系統(tǒng)結(jié)構(gòu)圖
校正系統(tǒng)通過輸入信號調(diào)理單元將接收到的圖像傳感器視頻輸出信號進行預處理,將信號調(diào)整到A/D轉(zhuǎn)換器(ADC) TLV5580的采樣電壓范圍內(nèi).系統(tǒng)控制核心CPLD接收圖像傳感器工作信號,根據(jù)視頻信號串行輸出的規(guī)律,產(chǎn)生控制TLV5580工作的時鐘信號和轉(zhuǎn)換數(shù)據(jù)輸出使能信號,從而控制TLV5580對經(jīng)過調(diào)理的視頻信號進行采樣量化,并將量化后的數(shù)字信號實時讀入CPLD. 同時, CPLD 從FLASH存儲器W29C040的相應(yīng)單元中讀出斜率和偏置校正系數(shù),實現(xiàn)式(4)描述的校正算法,完成對各個視頻信號的實時非均勻性校正。
CPLD還產(chǎn)生D/A轉(zhuǎn)換器(DAC) TL5632C工作時鐘信號,控制TL5632C將校正后的數(shù)字信號實時地轉(zhuǎn)換成模擬信號,并由輸出信號調(diào)理單元將該模擬信號調(diào)理為一個范圍合適的電壓信號作為校正系統(tǒng)的輸出(即經(jīng)過校正的視頻信號)。
2. 2 CPLD設(shè)計思想
作為控制核心的CPLD是一種半定制器件,它最大的優(yōu)點就是采用編程的方式定制其具體實現(xiàn)的硬件電路,指定CPLD的硬件實現(xiàn)功能. 筆者主要采用硬件描述語言VHDL,并結(jié)合原理圖方式在MAX + PLUSⅡ集成開發(fā)環(huán)境下進行CPLD 功能的設(shè)計. 采用VHDL語言的設(shè)計方法,可實現(xiàn)器件的無關(guān)性,并且功能實現(xiàn)靈活、修改方便. CPLD的應(yīng)用以及VHDL設(shè)計方法的使用為校正系統(tǒng)能靈活地適用于不同圖像傳感器的校正以及實現(xiàn)不同的校正算法提供了可能和保證。
根據(jù)系統(tǒng)校正功能要求及工作流程, CPLD 實現(xiàn)的功能主要包括:
1) 分頻器. 分頻器對晶振信號進行分頻,產(chǎn)生校正系統(tǒng)協(xié)調(diào)工作的時鐘基準信號. 分頻器采用VHDL進行設(shè)計,可以根據(jù)不同的晶振、不同的圖像傳感器工作頻率,靈活、方便地選擇不同的分頻數(shù),產(chǎn)生合適的時鐘基準信號。
2) ADC控制信號發(fā)生模塊. 該模塊采用VHDL進行設(shè)計,根據(jù)分頻器產(chǎn)生的時鐘基準信號和圖像傳感器的工作信號,產(chǎn)生能夠準確控制TLV5580工作的時鐘信號和轉(zhuǎn)換數(shù)據(jù)輸出使能信號,保證TLV5580實時、準確地采集經(jīng)過調(diào)理后的視頻輸出信號。
3) 地址發(fā)生器. 地址發(fā)生器產(chǎn)生讀取FLASH存儲器中斜率和偏置校正系數(shù)的地址信號. 由于每個光敏元在每個輻照度子區(qū)域有一組數(shù)據(jù)(一個斜率校正系數(shù)和一個偏置校正系數(shù)) ,為了方便讀取,將同一輻照度子區(qū)域的所有光敏元的校正系數(shù)按照在圖像傳感器中的相對位置順序存儲. 所以,同一光敏元在不同子區(qū)域下的數(shù)據(jù)地址,高位地址不同,低位地址則完全相同;同一子區(qū)域內(nèi)不同光敏元的數(shù)據(jù)地址,則高位相同,低位不同. 因此,地址發(fā)生器由2部分構(gòu)成:高位地址發(fā)生器和低位地址發(fā)生器。
高位地址發(fā)生器實質(zhì)上是一個比較器,確定當前圖像傳感器所測量的輻照度所處的子區(qū)域. 其設(shè)計思想是:將采集到的第1個光敏元的視頻信號和預先設(shè)定的對應(yīng)于每段輻照度子區(qū)域的邊界值進行比較,根據(jù)比較的結(jié)果產(chǎn)生相應(yīng)的高位地址. 由于采用并行執(zhí)行的指令來實現(xiàn),能夠很好地滿足實時處理的要求.低位地址發(fā)生器根據(jù)視頻信號逐一串行輸出的特點以及TLV5580工作特點(每個工作時鐘采集1個光敏元的輸出信號)進行設(shè)計,實質(zhì)上是一個計數(shù)器,只需對TLV5580工作時鐘信號進行計數(shù),就能產(chǎn)生相應(yīng)的低位地址。
4) 校正模塊. 由乘法和加法2個子模塊構(gòu)成,分別采用MAX + PLUS Ⅱ提供的功能單元LPM_MULT和LPM_ADD_SUB來實現(xiàn). 校正模塊將采集到的視頻信號以及從FLASH存儲器讀取的相應(yīng)校正系數(shù)按照式(4)進行處理,實現(xiàn)圖像傳感器的實時非均勻性校正。
5) DAC控制信號發(fā)生模塊. 產(chǎn)生控制TL5632C工作的時鐘信號,指揮TL5632C實時地將校正后的數(shù)字視頻信號轉(zhuǎn)換為模擬信號。
由于非均勻性校正功能的實現(xiàn)對時序要求嚴格,在程序的設(shè)計中,一定要注意時序的合理性. 將程序編寫出來后,首先進行了仿真實驗,在得到期望的工作波形數(shù)據(jù)后,進行邏輯綜合生成網(wǎng)絡(luò)表和下載文件,最后將程序文件下載到EPM7512AE中,以便進行下一步對圖像傳感器非均勻性校正指標的測試。
評論