基于FPGA與SDRAM的數(shù)字電視信號采集系統(tǒng)的設(shè)計與實現(xiàn)
要FPGA與的數(shù)字信號采集系統(tǒng)。可以提供大容量的存儲空間。提供優(yōu)秀的系統(tǒng)適應(yīng)能力。該方案通過計算機(jī)并口實現(xiàn)與計算機(jī)的通信 ,但是高性能的邏輯分析儀價格昂貴,而且存取深度不足限制了對于海量數(shù)字電視信號的分析能力。盡管采用圖像采集卡也可以方便地采集到大量的模擬電視圖像,但是圖像采集卡通常只能保存有效圖像內(nèi)容,行場同步信號將被丟失。而且采集卡使用自身的對模擬電視信號進(jìn)行采集,其性能與數(shù)字電視系統(tǒng)的真實環(huán)境存在差異。本文采用作為外部存儲器實現(xiàn)的大容量數(shù)字信號采集系統(tǒng)采集到真實的數(shù)字電視信號。 1SDRAM接口狀態(tài)轉(zhuǎn)移圖
2 上電序列
FPGA與一塊外掛的比特構(gòu)成。設(shè)計靈活,修改方便?;诘脑O(shè)計經(jīng)過修改可以移植到不同的工作環(huán)境。內(nèi)的采集系統(tǒng)分為數(shù)據(jù)采集、數(shù)據(jù)緩沖、接口和接口四大部分。數(shù)字化的電視信號通過數(shù)據(jù)采集模塊被采集到內(nèi),并進(jìn)行位寬調(diào)整等數(shù)據(jù)預(yù)處理,然后使用數(shù)據(jù)緩沖模塊匯集批量的數(shù)據(jù)后通過接口存入外掛的芯片,最后使用接口將數(shù)據(jù)讀入到計算機(jī)內(nèi)進(jìn)行后處理。
ITU601標(biāo)準(zhǔn)量化的數(shù)字電視信號包含一組比特的亮度信號,一組比特的色差信號和一組比特的同步信號,還有一條時鐘信號。同步信號包含場同步與行同步,分別指示場消隱期和行消隱期。信號采用簡單的線性編碼方式。亮度信號的取樣頻率定為。在::格式中,每個色差信號取樣數(shù)為亮度信號的一半,取樣頻率定為。為了采集完整的電視信號需要每一個時鐘采集亮度、色差與同步共比特數(shù)據(jù)。
SDRAM總線相同的比特數(shù)據(jù)。如果的容量足夠大,系統(tǒng)可以只是簡單地將每次比特數(shù)據(jù)填充至比特以簡化設(shè)計。如果容量有限,可以將次采集的比特數(shù)據(jù)調(diào)整成個比特的數(shù)據(jù)以充分利用存儲空間。還可以去除電視行場同步期間的無效數(shù)據(jù)以節(jié)省空間。采集模塊在開始采集后等待一場電視信號開始后才開始采集,保證存入的數(shù)據(jù)可以構(gòu)成完整的電視圖像,有效地利用存儲空間。當(dāng)空間被數(shù)據(jù)填滿時,系統(tǒng)自動停止數(shù)據(jù)采集。這樣采集的數(shù)據(jù)量大小完全由可配置的容量大小決定。通過增加可以方便地擴(kuò)充系統(tǒng)容量。
13.5 MHz或者的電視信號采樣頻率上,而接口模塊工作在高速時鐘上。為了避免跨越時鐘域可能導(dǎo)致的亞穩(wěn)態(tài)問題,數(shù)據(jù)采集模塊與接口模塊必須使用進(jìn)行緩沖與數(shù)據(jù)傳遞。數(shù)據(jù)緩沖模塊采用一個個字,每個字長比特的雙時鐘、雙端口的作為存儲單元。當(dāng)開始采集數(shù)據(jù)時將復(fù)位,然后數(shù)據(jù)采集模塊每采集一個比特的數(shù)據(jù)就將其寫入。當(dāng)內(nèi)的數(shù)據(jù)達(dá)到個后通知接口模塊進(jìn)行讀寫。由于采用了進(jìn)行時鐘域間的數(shù)據(jù)傳遞,輸入模塊的時鐘與后端的工作時鐘沒有任何聯(lián)系,便于靈活地配置采樣時鐘。當(dāng)用于采集頻率更高,數(shù)據(jù)量更大的場合時,應(yīng)適當(dāng)加大字深,以防溢出。
SDRAM容量大,但是命令多,操作復(fù)雜。的命令由、和構(gòu)成,分別表示行選擇、列選擇與讀寫控制。當(dāng)每一次只寫入一個字時,必須使用至少個命令,帶寬利用率低于%。為了充分利用的特點,本文采用連續(xù)寫入模式來減少的命令開銷,提高帶寬的利用率。連續(xù)寫入個字只需要個時鐘,帶寬利用率提高到% 。因為與通信的帶寬很低,因此每一次只需讀出一個字就可以了。根據(jù)系統(tǒng)工作需要,接口模塊只提供必需的連續(xù)個寫、單獨個讀的種操作接口,簡化了設(shè)計?!?/p>
SDRAM的命令與時序。為了實現(xiàn)高效的存取,提高總線的利用率,接口模塊采用的高速時鐘。當(dāng)?shù)玫綌?shù)據(jù)存取模塊的讀要求后,向連續(xù)寫入個字,當(dāng)?shù)玫浇涌谀K的讀請求后讀出個字,其他時間保證進(jìn)行刷新工作,以免數(shù)據(jù)丟失。
SDRAM是易失性存儲器,需要保證在內(nèi)對內(nèi)的數(shù)據(jù)進(jìn)行刷新操作,否則內(nèi)的數(shù)據(jù)將會丟失。由于系統(tǒng)采用了高速訪問時鐘,而且采用連續(xù)寫入個數(shù)據(jù)的模式,總線的帶寬利用率最高只有,當(dāng)從讀出數(shù)據(jù)時的總線帶寬利用率就更低了,大量時間處于空閑狀態(tài)。因此可以讓在空閑狀態(tài)進(jìn)行數(shù)據(jù)刷新工作,當(dāng)有數(shù)據(jù)讀寫要求時退出刷新操作,進(jìn)入讀寫操作,其狀態(tài)轉(zhuǎn)移圖如圖所示。一個完整的寫入操作執(zhí)行以下命令序列:,,,連續(xù)個,,。一個完整的讀出操作執(zhí)行以下命令序列:,,,,。
SDRAM特有的操作。在上電后進(jìn)入不定態(tài),為了讓進(jìn)入確定的狀態(tài)必須進(jìn)行以下的上電序列操作:保持至少INHI比特和命令外不能有其他命令;在一個命令后施加命令;接著施加個命令;最后施加命令設(shè)置工作模式。本文采用如圖所示的上電序列。
SDRAM中的數(shù)據(jù)需要傳輸?shù)接嬎銠C(jī)中進(jìn)行下一步的數(shù)據(jù)提取等再處理工作。由于此項工作沒有實時性的要求,所以采用簡單的低速并口接口實現(xiàn)與的通信。當(dāng)發(fā)出一個讀的邏輯地址時,接口模塊將其低位的地址保留,其余高位地址發(fā)送給接口模塊轉(zhuǎn)換為的塊地址,行地址與列地址、并同時向接口發(fā)出讀命令。當(dāng)讀出比特數(shù)據(jù)后,根據(jù)保留的低位地址選擇出一個比特數(shù)據(jù),然后傳輸給。由于可能存在同時讀寫的請求,所以采用一個仲裁器對的訪問要求進(jìn)行仲裁。優(yōu)先滿足寫入請求,在寫入操作結(jié)束后再響應(yīng)讀出請求
PC里通過軟件進(jìn)行。軟件與硬件配合使用減少了修改硬件的風(fēng)險,提高了系統(tǒng)的可維護(hù)性和可升級性。硬件系統(tǒng)采集到的是每一個采樣點的數(shù)據(jù),并不區(qū)分?jǐn)?shù)據(jù)是否在消隱期等。通過后期軟件處理將數(shù)字化的電視信號根據(jù)行場結(jié)構(gòu)提取出具有×可見窗口的有效數(shù)據(jù),并根據(jù)仿真要求安排亮度與色度信號的排列格式。當(dāng)應(yīng)用于不同場合進(jìn)行數(shù)據(jù)采集時,只要修改數(shù)據(jù)后處理部分的軟件和內(nèi)的數(shù)據(jù)采集模塊就可以實現(xiàn)系統(tǒng)的移植,而不需要改動硬件設(shè)計。
Stratix系列30F780C7型號和×的。采用語言實現(xiàn)的編程。整個采集系統(tǒng)使用了,個邏輯單元。
ITU601標(biāo)準(zhǔn)的數(shù)字電視信號的時鐘頻率為,數(shù)據(jù)為比特,其中比特亮度信號,比特色度信號,比特行同步信號和比特場同步信號。一場電視信號的數(shù)據(jù)量約是。項目開發(fā)的算法分析需要采集連續(xù)幀場的數(shù)據(jù)。采用的就可以保證存儲容量。該系統(tǒng)能夠完整不失真地采集連續(xù)場的數(shù)字電視信號。采集的電視信號用于芯片降噪、去隔行和畫質(zhì)增強等算法分析與仿真中。
SDRAM容量來實現(xiàn)。本系統(tǒng)是面向數(shù)字電視采集應(yīng)用開發(fā)的,如果前端增加就可以實現(xiàn)對模擬信號的采集。由于主控部分在中實現(xiàn),只需對系統(tǒng)的數(shù)據(jù)采集部分的位寬等進(jìn)行相應(yīng)的修改就可以適應(yīng)不同的應(yīng)用。如果使用或等高速總線接口實現(xiàn)與機(jī)的數(shù)據(jù)傳輸,該系統(tǒng)還可以脫離容量的限制,實現(xiàn)實時采集。