MPEG-2傳輸流解復用在內嵌ARM核的FPGA上的實(shí)現
引言
本文引用地址:http://dyxdggzs.com/article/189845.htm隨著(zhù)芯片技術(shù)的發(fā)展,FPGA的容量已經(jīng)達到上百萬(wàn)門(mén)級,從而使FPGA成為設計的選擇之一。Altera公司的FPGA芯片EPXA10應用SOPC技術(shù),集高密度邏輯(FPGA)、存儲器(SRAM)及嵌入式處理器(ARM)于單片可編程邏輯器件上,實(shí)現了RISC和FPGA的完美結合。本文使用EPXA10芯片,利用片上的ARM微處理器對MPEG-2傳輸流進(jìn)行解碼,得到必要的解碼參數,實(shí)現了將傳輸流分成視頻流和音頻流的解復用。
EPAX10器件
簡(jiǎn)要介紹
ALTERA公司的EPXA10器件單片集成了ARM硬核,百萬(wàn)門(mén)級的FPGA,以及SDRAM存儲器的接口。它將FPGA和ARM處理器完美結合在一起,是一個(gè)典型的SOPC結構。
其中ARM處理器是32位的ARM922T,工作頻率可以達到200MHz,具有8K的數據緩存和8K的指令緩存。通過(guò)板上的JTAG接口,可以實(shí)現斷點(diǎn)調試功能。
片上的百萬(wàn)門(mén)級FPGA可用于實(shí)現用戶(hù)自定義的邏輯。它通過(guò)AHB總線(xiàn)和ARM處理器相互連接。為了更加靈活的使用,FPGA用戶(hù)自定義邏輯可以定義為主模塊(master),在總線(xiàn)通信時(shí)處于發(fā)起端;或是定義為從模塊(slave),在總線(xiàn)通信時(shí)處于接收端。FPGA器件內部有3M大小的存儲器,同時(shí)集成了SDRAM控制器。在FPGA開(kāi)發(fā)板上可以外接128M的SDRAM,為了便于內部FPGA和外部SDRAM大數據量的交換,用戶(hù)還可以定義自己的DMA模塊,用于訪(fǎng)問(wèn)外部SDRAM。通過(guò)UART、網(wǎng)卡接口、JTAG接口,FPGA可以很方便地同外部計算機通信、下載程序,及調試程序等。
MPEG-2傳輸流簡(jiǎn)要介紹
作為數字視頻壓縮技術(shù)的國際通用標準,MPEG-2標準于1994年被運動(dòng)圖像專(zhuān)家組制定出來(lái),分成系統層、視頻壓縮層和音頻壓縮層。系統層主要用來(lái)描述音、視頻的數據復用和音、視頻的同步方式。在系統層定義了TS(傳輸流)和PS(節目流)兩種形式的碼流。PS通常用于相對無(wú)錯的環(huán)境,例如DVD中,其長(cháng)度為2048字節;TS通常用于相對有錯的環(huán)境,例如數字電視的地面廣播傳輸中,分組長(cháng)度規定為188字節。TS流和PS流都是由編碼后的基本數據流(ES)根據一定的格式打包形成PES包,再加入一些系統信息而構成的,碼流形成過(guò)程如圖2所示。根據MPEG-2協(xié)議,在發(fā)送端,基本流的PES打包由音/視頻編碼器完成,復用器接收編碼端的音、視頻數據流以及輔助數據流,按照一定的復用方法將其交織成為單一的TS流。為了實(shí)現音、視頻同步,在碼流中還必須加入各種時(shí)間的標志和系統的控制信息。接收端和發(fā)送端正好相反。
評論