基于FPGA的AVS視頻解碼芯片仿真和驗證平臺設計
AVS是我國具備自主知識產(chǎn)權的第二代信源編碼標準,其編碼效率比MPEG-2高2~3倍,與AVC相當,但技術(shù)方案簡(jiǎn)潔,芯片實(shí)現復雜度低,是一套包含系統、視頻、音頻和媒體版權管理在內的完整標準體系,為數字音視頻產(chǎn)業(yè)提供了全面的解決方案。
本文引用地址:http://dyxdggzs.com/article/189611.htm從2012年11月1日起,AVS標準將被強制執行,屆時(shí),所有在中國內地上市的地面數字電視接收機(包括機頂盒、一體機)必須內置AVS解碼功能,否則將無(wú)法銷(xiāo)售。由此,在未來(lái)十年時(shí)間內,高清晰度/標準清晰度AVS解碼芯片的國內需求量年均將達到4 000多萬(wàn)片。
在芯片設計中,驗證所花費的時(shí)間約占整個(gè)設計周期的70%~80%。驗證成為大規模集成電路設計的主要瓶頸。一方面,視頻解碼器需要對大量的一致性測試碼流進(jìn)行驗證,在考慮時(shí)序信息以后,軟件的仿真速度非常慢,因此,需要基于FPGA的硬件仿真平臺來(lái)提高仿真和驗證的速度。另一方面,門(mén)數百萬(wàn)級以上的芯片設計每次投片費用巨大,投片前進(jìn)行基于FPGA的驗證是保證投片成功的一個(gè)必不可少的環(huán)節。
當前關(guān)于視頻解碼芯片的FPGA驗證平臺的文獻并不多。參考文獻[2]用2塊VirtexE系列的FPGA搭建了視頻解碼芯片的驗證平臺;參考文獻[2]則采用Xilinx公司的兩片FPGA和Altera公司的2片EP2C35 FPGA完成驗證平臺的設計。本文針對視頻解碼器芯片的仿真和驗證要求,通過(guò)對驗證平臺框架的優(yōu)化,提出基于1塊Altera的FPGA芯片,設計實(shí)現視頻解碼器的硬件驗證平臺。
1 驗證平臺組成和設計
硬件驗證平臺應該具有可重用的特點(diǎn)。在芯片的設計階段,硬件驗證平臺可以作為仿真驗證平臺,要求能夠獨立完成整個(gè)視頻解碼的過(guò)程。一方面可以將視頻解碼系統的硬件模塊載入,以驗證硬件模塊的功能;另一方面可以載入視頻解碼系統的軟件部分,讓硬件模塊和軟件模塊在一個(gè)平臺下真正實(shí)現軟硬件協(xié)同工作,以驗證整個(gè)解碼系統的功能,實(shí)現視頻解碼的全過(guò)程。
本驗證平臺以Altera公司的DE2多媒體開(kāi)發(fā)平臺為主體,在FPGA內嵌入Nios II軟核處理器,結合Nios II可自定義CPU指令和用戶(hù)外設的特點(diǎn),配合PC機軟件程序、VGA顯示器以及自定義SDRM存儲器端口控制模塊,搭建出一個(gè)完整的視頻解碼芯片驗證平臺,如圖1所示。

考慮到方便設計和占用資源少的原因,該驗證平臺僅用一塊FPGA,故將其分為兩部分來(lái)設計:視頻解碼部分和VGA顯示部分。其中,視頻解碼部分可以獨立完成視頻碼流解碼過(guò)程,將輸入的視頻文件解碼成YUV文件;同時(shí),可將設計的AVS視頻解碼器的硬件模塊載入,以驗證硬件模塊的功能,并且為分析所設計模塊的性能參數提供可靠依據。VGA顯示部分主要控制VGA顯示器顯示解碼生成的YUV文件。這兩部分構成了一個(gè)“視頻解碼—VGA顯示”的完整的驗證平臺。
1.1 視頻解碼設計
該系統主要分為視頻解碼系統硬件設計和軟件程序開(kāi)發(fā)。
1.1.1 視頻解碼硬件設計
視頻解碼系統硬件設計框圖如圖2所示,采用一塊Altera EP2C35F672C6 FPGA,它能提供豐富的內存資源和容量,以及新算法資源,增強時(shí)鐘管理支持,其結構體系將使系統性能達到更高層次,擴大輸入輸出帶寬,提高時(shí)鐘頻率、內存速度和數據處理速度。在FPGA上實(shí)現Nios II軟核CPU、SDRAM、Flash、Timer、Epcs controller等模塊相連。Nios II 軟核CPU和其他IP模塊之間通過(guò)Avalon片上總線(xiàn)相連,該總線(xiàn)規定了主部件和從部件之間進(jìn)行連接的端口和通信的時(shí)序。該部分允許將設計的硬件模塊或者AVS視頻解碼系統掛接到Avalon總線(xiàn)上,通過(guò)Nios II軟核處理器的控制,與PC機中的軟件解碼程序協(xié)同工作,共同完成視頻解碼過(guò)程。同時(shí)還能夠計算出其所占用資源以及加入硬件模塊后所節省的時(shí)間,便于準確分析所驗證硬件模塊的性能參數。

根據系統的功能要求和Nios II軟核處理器的高度可配置性,通過(guò)硬件開(kāi)發(fā)工具SoPC Builder定制的硬件系統框圖如圖3所。Nios II系統用CFI-Flash存儲輸入的視頻頻碼流文件,SDRAM用作運行程序的內存。同時(shí)加入了SD卡,預留存儲以后需要解碼的大容量視頻文件,生成的解碼文件暫存在PC機上,這樣極大地減少了片上RAM的使用率。

fpga相關(guān)文章:fpga是什么
pic相關(guān)文章:pic是什么
評論