高密度FIFO器件在視頻和圖像領(lǐng)域中的應(yīng)用
許多市場(chǎng)領(lǐng)域(包括視頻廣播、軍事、醫(yī)學(xué)影像、基站)都得益于使用高密度 FIFO 器件方案的使用,其具有可編程的特點(diǎn)。并且比 SDRAM + FPGA 的體系結(jié)構(gòu)可以顯著節(jié)省成本和改進(jìn)視頻質(zhì)量,使用系統(tǒng)級(jí)編程,可以使高密度 FIFO 設(shè)計(jì)更簡(jiǎn)單,成本更低。在這篇文章中,我們將首先介紹幾個(gè)視頻應(yīng)用,了解其數(shù)據(jù)路徑及需要處理的數(shù)據(jù)性質(zhì)。下一步,我們將盡力估計(jì)在視頻處理通道中操作數(shù)據(jù)的復(fù)雜性。然后會(huì)介紹可編程高密度 FIFO和其能力,以及它如何能更有效率的替代當(dāng)前傳統(tǒng)的使用 SDRAM 和 FPGA 實(shí)現(xiàn)幀緩存的方案。
視頻應(yīng)用概述: 圖 1 顯示了 IPTV 的系統(tǒng)框圖。輸入傳輸流可以是任何編碼形式如 DVB -ASI,MPEG2 或SDI,他們通過(guò)用多格式解碼器(multi-format CODEC)傳輸,轉(zhuǎn)換成(即解碼或重解碼)成H.264 傳輸流。經(jīng)編碼的傳輸流用通道信息封裝并通過(guò)以太網(wǎng)發(fā)送。在接收路徑,到來(lái)的傳輸流在顯示之前要進(jìn)行解碼和后處理,例如降噪、顏色增強(qiáng),縮放,去隔行等。 圖 2 顯示了一個(gè)用于電影制作和攝影棚的 HD(高清)專(zhuān)業(yè)相機(jī)的系統(tǒng)框圖。捕獲到的圖像經(jīng)過(guò)一個(gè)圖像處理器,進(jìn)行色彩處理、亮度提高、數(shù)碼縮放、幀速率轉(zhuǎn)變等等。圖像處理單元通常使用一個(gè)基于 FPGA 的設(shè)計(jì),由于大部分的圖像處理是專(zhuān)有的,會(huì)經(jīng)常發(fā)生變化。應(yīng)用處理器管理與其它設(shè)備的通訊以及壓縮并存儲(chǔ)捕獲到的內(nèi)容到海量存儲(chǔ)(HDD)。應(yīng)用處理器也有一個(gè)圖形引擎來(lái)進(jìn)行屏幕顯示(OSD),它和進(jìn)來(lái)的視頻混合后顯示。從上述例子中,我們可以看到數(shù)據(jù)處理包括兩種類(lèi)型:1) 幀同步: 在一些任務(wù)中需要幀同步(例如,通過(guò)以太網(wǎng)傳輸和接收時(shí),當(dāng)碼流速度不斷變化而解碼器需要一個(gè)恒速的傳輸流)。雖然存儲(chǔ)器對(duì)同步的要求似乎很小,但當(dāng)涉及到多個(gè)碼流時(shí)它可能很顯著。這種同步可以由一個(gè)異步 FIFO 實(shí)現(xiàn)。2) 幀存儲(chǔ): 幀存儲(chǔ)在這些地方需要:任何暫時(shí)的處理如幀率轉(zhuǎn)換,數(shù)碼變焦(縮放),或執(zhí)行去隔行。儲(chǔ)存的幀數(shù)量隨著需要的臨時(shí)信息數(shù)目增加而增加。當(dāng)視頻數(shù)據(jù)按照本來(lái)的順序時(shí),幀緩存也必須是“先進(jìn)先出”。 通過(guò)上面的討論,我們可以說(shuō),所有的儲(chǔ)存和同步都可以使用 FIFO 實(shí)現(xiàn)。那么理想的 FIFO應(yīng)該是多大的呢?一個(gè)典型的 1080p 幀,10 位 4:2:2 格式將需要存儲(chǔ)器大小為 39.55M 位(每行像素?cái)?shù)*每幀行數(shù)*每像素比特?cái)?shù)=1920*1080*20)。預(yù)計(jì)總?cè)萘靠梢酝ㄟ^(guò)需要存儲(chǔ)的幀數(shù)乘以這個(gè)數(shù)字。典型的視頻處理算法需要存儲(chǔ) 2 到 3 幀,這意味著總?cè)萘恳_(dá)到 120M 位。由于不可能有如此大的基于片上 SRAM 的 FIFO 存儲(chǔ)器,一般的方法是使用一個(gè) DRAM 來(lái)緩存這個(gè)數(shù)據(jù)。高密度FIFO -傳統(tǒng)的實(shí)施和及其復(fù)雜性。 幀緩存就是高密度 FIFO,傳統(tǒng)上使用外部 DDR SDRAM 實(shí)現(xiàn)。舉例說(shuō)明一個(gè)典型的視頻處理應(yīng)用和這些 FIFO 如何實(shí)現(xiàn)。 圖3顯示了一個(gè)典型情況的數(shù)據(jù)路徑,有4種不同來(lái)源的視頻流需要顯示在同一個(gè)顯示器上。四個(gè)以 1080p60(24 位 RGB)分辨率捕捉視頻的高清相機(jī)使用一個(gè) cameralink 接口連接到系統(tǒng)上。色彩空間轉(zhuǎn)換 (從 RGB 到 YCbCr)及色度采樣降低(從 4:4:4 到 4:2:2)后,橫向和縱向幀按比例減少,并儲(chǔ)存在 DDR2 SDRAM 里。存儲(chǔ)的幀可以按要求讀回和定位,結(jié)果幀和融合幀然后提高采樣速度和色彩空間轉(zhuǎn)換為通過(guò) LVDS 連接來(lái)驅(qū)動(dòng)面板。 讓我們看看存儲(chǔ)器大小和帶寬要求: