視頻應(yīng)用中的CRC測試
摘要:量化復(fù)雜視頻信號鏈中微小工程變更的影響,常常是件吃力不討好的工作。諸如循環(huán)冗余校驗(CRC)之類的簡單錯誤檢測算法,盡管有多方面的局限性,但不失為一種有效的工具。本文以ADI公司功能全面的單芯片影音前端ADV7850為基礎(chǔ),詳細介紹了一種有效視頻應(yīng)用的CRC測試方法。
1 數(shù)字視頻系統(tǒng)
近年來,消費、專業(yè)和汽車應(yīng)用中數(shù)字視頻傳輸媒體大行其道,促使許多視頻產(chǎn)品設(shè)計和制造商轉(zhuǎn)移焦點。實現(xiàn)出色模擬性能的要求已經(jīng)走到盡頭,取而代之的是實現(xiàn)盡可能高的數(shù)字數(shù)據(jù)速率的要求。傳輸媒體包括DVI、HDMI、LVDS、MHL和APIX。
在這場追逐更高數(shù)據(jù)速率的競賽中,的增長是主要驅(qū)動因素之一。近年來,HDMI規(guī)范進一步發(fā)展,最大支持視頻分辨率的數(shù)據(jù)速率已達到2.25GHz到3GHz,在將來的規(guī)范升級中極有可能會進一步提高。
開發(fā)一個集成所有這些器件的可靠視頻信號鏈以支持如此高數(shù)據(jù)速率的視頻格式,正在成為視頻產(chǎn)品設(shè)計和制造商的重大挑戰(zhàn)。 為了成功支持此類視頻格式,電纜質(zhì)量、電源設(shè)計、信號完整性、PCB質(zhì)量和芯片設(shè)置都必須處于絕對最佳水平。 但是,視頻產(chǎn)品設(shè)計和制造商如何才能輕松評估各種調(diào)整對上述系統(tǒng)要素的影響呢?
2 循環(huán)冗余校驗
循環(huán)冗余校驗(CRC)是W. Wesley Patterson于1961年發(fā)明的一種冗余校驗方法。它可以檢測數(shù)字數(shù)據(jù)中的錯誤,主要用于數(shù)據(jù)傳輸中,例如32位CRC被用于以太網(wǎng)數(shù)據(jù)傳輸。 CRC的局限性包括:CRC只能檢測數(shù)字數(shù)據(jù)中的錯誤,無法在檢測到錯誤后予以糾正,只有更復(fù)雜的算法(如糾錯碼(ECC)或前向糾錯(FEC)等)才具有糾錯功能;CRC無法確定接收數(shù)據(jù)中的錯誤數(shù)目。
CRC實現(xiàn)方案有很多種,但基本前提是一樣的:數(shù)據(jù)發(fā)送器先計算并追加校驗位數(shù)(常稱作“校驗和”)到數(shù)據(jù)上,再發(fā)送數(shù)據(jù)。
誤碼率測試是一種引入注目的CRC測試替代方案,其主要優(yōu)勢在于它能協(xié)助量化數(shù)據(jù)受損的程度。 誤碼率測試要求將一個參考圖案輸入系統(tǒng),然后將系統(tǒng)的輸出與參考圖案進行比較分析,差異的數(shù)量即表示發(fā)生誤碼的數(shù)量。 如果輸出圖案與參考圖案完全一致,則無誤碼,系統(tǒng)工作在“最有效點”上。如果輸出圖案與參考圖案不同,則差異的數(shù)量可在某種意義上指示數(shù)據(jù)受損的程度。
雖然誤碼率測試是一項非常強大的工具,但它需要輸入已知圖案并能對照已知圖案分析輸出,這也是它的一個主要缺點。 對參考圖案的需求(以便能夠量化數(shù)據(jù)受損程度),大大降低了其靈活性。 誤碼率測試只能應(yīng)用于已知圖案,CRC則可應(yīng)用于任何靜態(tài)數(shù)據(jù)圖案,也就是說,它可以非常靈活地用在各種情況下: 從原型系統(tǒng)的開發(fā)和評估到產(chǎn)品線路測試結(jié)束,直至現(xiàn)場調(diào)試客戶反映的問題。
3 ADV7850
ADV7850是ADI公司首款針對消費和專業(yè)影音市場而開發(fā)的完整影音前端器件。 該器件包含:一個4路輸入HDMI接收器,支持高達4k x 2k @ 30 Hz的視頻分辨率;一個視頻和圖形數(shù)字化儀,工作頻率高達162MHz;一路高速串行視頻輸出;一個3D梳狀視頻解碼器;以及一個音頻編解碼器。
除了用作功能全面的單芯片影音前端之外,ADV7850還集成了一個采用CRC的幀檢查器。 它位于ADV7850輸出端之前,接近ADV7850信號鏈的末端,可檢查HDMI輸入的完整視頻路徑。該特性不可用于模擬輸入,因為以最高170MHz頻率工作的模數(shù)轉(zhuǎn)換器(ADC)會引入最低有效位(LSB)誤差。
ADV7850中的幀檢查器利用CRC-16-CCITT多項式(x16 + x12 + x5 + 1)來分析用戶可配置數(shù)量的幀,通過一個I2C位2使能。一旦使能,幀檢查器就會分析各視頻通道(綠、紅、藍)上的每個數(shù)據(jù)像素(從480p的30萬像素到4k x 2k的800萬像素),從而計算每個幀(幀數(shù)由用戶配置,最多255)的校驗和。 要分析的幀數(shù)通過I2C控制寄存器進行配置。
幀檢查器完成分析后,通過I2C報告每個通道(HDMI在紅色、綠色和藍色通道上傳輸數(shù)據(jù))的一組結(jié)果。 如上所述,對于靜態(tài)輸入,對CRC執(zhí)行多次迭代應(yīng)當產(chǎn)生一致的結(jié)果。兩個幀之間只要有一個像素不同(最多有1600萬像素的數(shù)據(jù)),校驗和結(jié)果就會不同。
無論該像素差異是由視頻源上的噪聲或傳輸介質(zhì)間歇產(chǎn)生的噪聲引起,還是由ADV7850的配置錯誤引起,它都會指出錯誤。
這樣,系統(tǒng)設(shè)計師就能優(yōu)化系統(tǒng)并重新測試。
幀檢查器的功能當然非常好,但只有將其投入實際應(yīng)用,才能體現(xiàn)其真正的價值。 ADV7850的幀檢查器可以在視頻產(chǎn)品的整個開發(fā)周期中使用,也可以在制造周期中使用。
模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理
評論