《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 通用音頻解碼器驗證系統設計與實現
通用音頻解碼器驗證系統設計與實現
來源:電子技術應用2011年第6期
全浩軍, 郭繼昌, 張 濤
(天津大學 電子信息工程學院, 天津 300072)
摘要: 設計并實現了一個基于FPGA的音頻解碼器驗證系統。同傳統的驗證系統相比,系統不僅具有很強的通用性,還具有良好的可擴展性和強大的圖形化顯示功能,可以很方便地對各種音頻解碼器進行片上驗證。該系統的實現縮短了音頻解碼器的片上驗證周期,有助于研究人員提高工作效率,具有很大的實用價值。
中圖分類號: TN47
文獻標識碼: A
文章編號: 0258-7998(2011)06-084-03
Design and implementation of generic verification system for audio decoder
Quan Haojun, Guo Jichang, Zhang Tao
School of Electronic and Information Engineering, Tianjin University, Tianjin 300072, China
Abstract: In this paper, an FPGA-based generic verification system for audio decoders is designed and implemented. Compared with traditional verification system, the system has good generality, scalability, and powerful function of graphic display. It is easy to carry out on-chip verification for variety of audio decoders. The system can shorten the verification cycle and help researchers to improve the work efficiency. So it is much more valuable in practice.
Key words : FPGA; audio decoder; verification system


    近年來,數字多媒體技術得到了前所未有的發展。數字音頻技術已經同CD、DVD和MP3等娛樂產品一起進入到人們的日常生活中,對人們的生活產生了巨大影響[1]。而隨著個人數字娛樂產品的普及,音頻專用解碼芯片以其低成本和高性能而得到了廣泛的應用[2-3]。
       在音頻解碼芯片設計過程中,研究人員往往需要對解碼器的功能進行反復驗證[4]。傳統的驗證方法一般是利用FPGA搭建專用的測試平臺并使用ChipScope等在線邏輯分析儀進行輔助分析。這種方法可以有針對性地獲取用戶所需數據,從而在一定程度上達到驗證的目的,但存在一些缺陷。首先,測試平臺通用性差,無法兼容多個音頻解碼器。即使對于同一個解碼器,一旦接口或內部測試模塊改變,測試平臺就需要做相應的修改。其次,受限于在線邏輯分析儀的功能,測試結果的顯示不直觀,如無法根據用戶的需求實現可配置的圖形化顯示功能。為此,本文設計并實現了一個通用的音頻解碼器測試系統,其功能強大,并具有良好的可擴展性,可以幫助研究人員提高工作效率,具有很大的實用價值。
1 系統結構與工作原理
    系統總體結構如圖1所示。在FPGA內部,該驗證系統主要由系統控制、碼流輸入、輸入緩沖、音頻解碼器、輸出緩沖、音頻輸出、信息提取和信息顯示共八個模塊組成。

    系統復位完成后,如果用戶在一定時間內沒有改變系統參數,則系統會根據默認設置運行。首先,碼流輸入模塊接收系統控制模塊的指令,指定接口芯片在存儲介質的特定位置讀取數據并將其寫入輸入緩沖區中。當輸入緩沖區中的有效數據量到達預先設定的解碼最小值時,音頻解碼器便開始從輸入緩沖區中讀取編碼數據并進行解碼,之后將解碼得到的PCM樣本寫入到輸出緩沖區中。同樣,在輸出緩沖區中的有效數據量達到預先設定的播放最小值時,音頻輸出模塊開始根據獲得的音頻信息以給定的速率從輸出緩沖區中讀取PCM樣本,并按照特定的格式輸出到AC’97編解碼芯片中,從而驅動揚聲器發出聲音。在系統運行過程中,系統控制模塊實時響應用戶輸入、改變系統工作狀態。而信息顯示模塊則將信息提取模塊獲得的數據通過VGA顯示器或LED實時顯示出來。
1.1 系統控制和信息提取
  系統控制模塊一方面響應用戶輸入從而對系統進行控制,另一方面協調各模塊工作,防止緩沖區溢出。對于用戶輸入,系統控制模塊采用了延時查詢與循環驗證的處理方式,這樣提高了系統判斷的準確性,減少了誤觸發率[5]。而對于各模塊工作的協調則由系統控制模塊與信息提取模塊共同完成的。例如在音樂第一幀解碼過程中,系統控制模塊會通過信息提取模塊獲取音樂的基本信息(聲道信息、采樣率等),之后將該信息傳遞給音頻輸出模塊,從而決定輸出緩沖區中PCM樣本與聲道的對應關系以及音樂的播放速率等。同樣,輸入輸出緩沖區中的有效數據量和剩余空間等信息也通過信息提取模塊反饋到系統控制模塊中,作為控制音頻解碼器是否繼續解碼的依據。此外,信息提取模塊還對獲取的數據進行整合和篩選,并將處理結果送入到信息顯示模塊中。
1.2 碼流輸入模塊
    碼流輸入模塊通過接口芯片從存儲介質中讀取數據并將其存入到輸入緩沖區中,其結構如圖2所示。系統控制模塊在命令碼流輸入模塊讀取數據的同時,將起始地址(邏輯地址)和要讀取的數據量傳遞給該模塊。其中邏輯地址首先通過地址映射子模塊轉換為硬件物理地址,再送到數據讀取控制子模塊中。數據讀取控制子模塊確認來自系統控制模塊的指令和數據合法后,啟動進度控制狀態機,進而通過讀寫時序產生子模塊將指令寫入接口芯片內的命令寄存器中,之后等待接口芯片的反饋信息并讀取數據。在數據讀取過程中,接口芯片的工作狀態會寫入到狀態寄存器中,供數據讀取控制子模塊使用。

 

 

1.3 音頻解碼模塊
    音頻解碼模塊即待驗證的音頻解碼器。該模塊的接口分為兩部分:一是與輸入輸出緩沖區的接口,在默認狀態下,該部分接口均為單比特串行模式,但系統預留了串并轉換和并串轉換模塊,因此用戶可以選擇使用并行輸入或并行輸出。此外,基于異步FIFO的設計允許用戶在解碼器輸入輸出端使用不同的時鐘;二是與系統控制模塊和信息提取模塊的接口,為了減少接口數量,系統控制模塊只提供了解碼起始信號和解碼結束反饋信號。而信息提取模塊除提供了必須的解碼信息傳遞接口外,還提供了兩組信息提取接口,一個用于時序波形的顯示,另一個用于直接的數值顯示。除使用系統默認的接口外,用戶也可根據自己的需要對接口進行定制或擴展。可見,對于一般的音頻解碼器,用戶無需改變接口便可將其直接嵌入到驗證系統中,增強了系統的通用性。
1.4 音頻輸出模塊
    音頻輸出模塊是一個整合PCM輸出控制和AC’97輸入輸出控制的音頻輸出接口。由圖3可見,由比特時鐘生成的同步信號同時送入AC’97 編解碼器、SDATA_IN子模塊和SDATA_OUT子模塊中。其中SDATA_OUT子模塊將指令和PCM數據串行輸出到AC’97 編解碼器中,而SDATA_IN子模塊從傳輸的串行信號中解出PCM樣本和編解碼器狀態信息,并將其送到音頻輸出控制子模塊中。音頻輸出控制子模塊一方面將輸出緩沖區中的PCM數據送到SDATA_OUT模塊中,另一方面根據獲得的編解碼器狀態信息采取相應的操作。例如,在改變音量時,可以先通過SDATA_IN子模塊讀取AC’97 編解碼器中音量寄存器中的數據,再將數據進行一定的運算后發送到SDATA_OUT子模塊中,進而通過串行輸出接口寫入AC’97 編解碼器的相應寄存器中,從而完成音量的改變。

    在系統復位完成后,音頻輸出控制子模塊首先通過SDATA_IN子模塊獲得的狀態信息判斷AC’97 編解碼器的工作狀態,待可以接收指令后,再通過指令控制信息命令SDATA_OUT子模塊將指令ROM中的數據依次寫入AC’97 編解碼器中,從而完成初始化操作。在接收到播放指令后,音頻輸出控制子模塊開始從輸出緩沖區中讀取PCM樣本并經由SDATA_OUT子模塊將其填入AC’97幀結構的特定位置,實現音樂的播放。
    可見,只要將音頻輸出控制子模塊稍作修改,便可將SDATA_IN子模塊獲得的PCM數據寫入到緩沖區中,這為音頻編碼器的驗證提供了支持。
1.5信息顯示模塊
    由圖4可見,信息顯示模塊提供了多種數據顯示方式,即字符顯示、圖形顯示和字符與圖形混合的顯示方式。對于字符顯示,默認的每個字符大小為8×8個像素點,像素點數值由字符庫產生。在字符庫中,用戶除使用基本的ASCII碼字符外,也可自行定制字符點陣從而實現一些特殊字符或圖形(如公司LOGO)的顯示。因此對于較小的或可以由多個字符構成的圖形,可通過字符庫直接產生。

    而對于較復雜的圖形,則由圖形生成子模塊通過逐點繪制的方式實現。圖形和字符數據經過合成和配色后同行場同步信號一起送入到VGA顯示模塊中。
    在信息顯示模塊中,顯示控制子模塊一方面控制行場同步信號及消隱信號的產生、保證圖像數據的同步輸出,另一方面獲取數據處理子模塊的輸出數據,控制圖像的生成。而數據處理子模塊則根據系統控制模塊指定的顯示方式對原始數據進行計算或排序處理。例如,當需要在屏幕的322~578行顯示PCM波形時,由于16位PCM數據的動態范圍為-32 768~32 767,因此對這些數據進行加法和移位運算從而將其映射到指定范圍。
1.6 系統特點
    由以上分析可知,同現有的音頻解碼器驗證系統相比,該系統的優勢主要體現在以下幾個方面:
    (1)兼容各種音頻解碼器,具有很好的通用性。
    (2)支持用戶自定義的顯示和分析功能,且只需稍加改動便可用于音頻編碼器的驗證,具有良好的可擴展性。
    (3)基于物理地址的底層數據讀取方式使用戶可根據需要在存儲介質的任意位置進行非連續的數據讀取,既降低了系統復雜度,減少了資源開銷,又增加了數據讀取的靈活性。
    (4)基于FPGA的純硬件驗證方式,驗證結果更接近流片結果。
    (5)既是一個通用的音頻解碼器驗證平臺,也是一個功能完備且數據顯示直觀的播放器和演示系統。
2 系統實現及驗證實例
    整個系統在Xilinx公司的VirtexII pro開發板上實現,其硬件連接結構如圖5所示。其中FPGA內部各模塊使用VHDL和Verilog HDL語言混合編程實現,音頻解碼器為MP3解碼器[6]。在系統運行時,FPGA通過System ACE從CF卡中讀取MP3編碼數據后,在FPGA內部進行解碼,之后通過LM4550進行實時播放。在播放的過程中,系統通過FMS3818將解碼的信息顯示到VGA顯示器上,同時通過LED顯示當前系統的工作狀態。

    由系統資源開銷情況(表1)和MP3解碼器的資源開銷情況(表2)可見,在忽略解碼器資源開銷的情況下,整個測試系統的各項資源開銷均不到系統資源的60%。此外,實驗結果表明,該系統的最高時鐘頻率為106.95 MHz,且輸入輸出模塊均具有很強的實時性,可以保證數據的實時讀取與聲音的流暢播放。
    音頻解碼芯片的研究人員往往需要對解碼器的功能進行反復驗證,傳統的驗證方法存在諸多缺陷,降低了研究人員的工作效率。而本文設計的音頻解碼器驗證系統通用性強、數據顯示直觀、功能強大,縮短了音頻解碼器的片上驗證周期。實驗結果表明,該系統資源開銷低、實時性強,具有很大的實用價值。
參考文獻
[1] Hu Ruimin, Zhang Yong, Ai Haojun. Digital audio compression technology and AVS audio standard research[C]. proceedings of ISPACS 2005, Hong Kong, China, December, 2005:757-759.
[2] Zhang Hongsheng, Lu Mingying, Wang Guoyu. An ASIC  implementation of MPEG audio decoders[C].ASICON′  07.7th International Conference on.Guilin,China,October, 2007:754-757.
[3] 宋奇剛.MP3數字音頻解碼芯片VLSI設計研究[D]. 成都:電子科技大學,2005.
[4] 周建,劉鵬,陳科明,等. 基于FPGA平臺的媒體系統芯片驗證框架[J]. 微電子學,2006,36(3):284-287.
[5] 肖看,朱光喜,劉文予,等. FPGA按鍵模式的研究與設計[J].電子技術應用,2008,34(10):45-47.
[6] FALTMAN I, HAST M, LUNDGREN A, et al. A hardware  implementation of an MP3 decoder.DIGITAL IC-PROJECT, LTH, Sweden.2003.5.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一激情一区二区三区| 夜夜嗨av一区二区三区网页| 亚洲破处大片| 国产一区二区高清不卡| 国产精品人人做人人爽 | 欧美午夜电影在线观看| 欧美激情视频一区二区三区不卡| 久久综合色播五月| 久久亚洲一区二区三区四区| 久久久噜噜噜久久人人看| 欧美一区观看| 欧美一区二区三区婷婷月色| 午夜亚洲视频| 性高湖久久久久久久久| 亚洲免费一在线| 午夜久久影院| 欧美在线91| 久久久精品视频成人| 久久久噜噜噜久久中文字幕色伊伊| 久久精品国产精品| 久久久国产精品一区| 久久美女艺术照精彩视频福利播放| 久久久97精品| 免费欧美日韩| 欧美日韩高清在线观看| 欧美视频三区在线播放| 国产精品福利av| 国产精品一区二区a| 国产麻豆综合| 一区二区在线观看av| 亚洲高清视频在线观看| 亚洲精品乱码久久久久久| 日韩一级欧洲| 亚洲一区二区三区在线看| 欧美亚洲免费高清在线观看| 久久精品人人| 日韩视频在线观看| 亚洲欧美日本国产专区一区| 久久久精彩视频| 欧美成人一区二区三区| 欧美日产国产成人免费图片| 欧美视频日韩视频在线观看| 国产区日韩欧美| 一区二区在线观看av| 日韩午夜av在线| 亚洲欧美中文字幕| 亚洲人成人一区二区三区| 在线中文字幕日韩| 久久av一区二区三区漫画| 两个人的视频www国产精品| 欧美激情按摩在线| 国产精品理论片| 激情成人av| 亚洲日本理论电影| 午夜精品电影| 艳妇臀荡乳欲伦亚洲一区| 欧美亚洲综合久久| 欧美成人性网| 国产精品综合视频| 亚洲国产综合91精品麻豆| 在线视频亚洲欧美| 亚洲电影毛片| 亚洲免费视频观看| 欧美成人精品激情在线观看| 欧美午夜剧场| 加勒比av一区二区| 99热这里只有精品8| 久久国产精品99国产精| 中国日韩欧美久久久久久久久| 久久国产精品久久久久久| 欧美黄色aaaa| 国产一区二区三区网站 | 亚洲视频1区| 久久综合久久综合九色| 国产精品久久久久久影院8一贰佰| 黄色资源网久久资源365| 一本一本大道香蕉久在线精品| 亚洲第一伊人| 午夜精品久久久久| 欧美精品色一区二区三区| 国产一区二区三区成人欧美日韩在线观看| 亚洲国内在线| 亚洲在线视频观看| 尤物网精品视频| 在线综合亚洲欧美在线视频| 亚洲韩国一区二区三区| 欧美一区二区视频在线观看| 欧美另类videos死尸| 黑人巨大精品欧美黑白配亚洲| 亚洲午夜电影网| 一区二区三区**美女毛片| 久久免费偷拍视频| 国产精品永久| 一区二区三区四区五区视频 | 久久夜色精品国产欧美乱极品| 国产精品国产三级国产| 亚洲国内精品| 亚洲第一二三四五区| 欧美一区二区女人| 欧美日韩国产一区| 一区二区三区在线高清| 欧美一区二区三区久久精品| 亚洲综合久久久久| 欧美三级黄美女| 香蕉久久夜色精品国产| 一本大道久久精品懂色aⅴ| 亚洲国产精品成人精品| 久久国产精品亚洲va麻豆| 国产精品高清一区二区三区| 日韩天堂在线视频| 日韩视频第一页| 你懂的一区二区| 亚洲高清三级视频| 亚洲激情在线| 欧美福利一区二区| 亚洲成色999久久网站| 久久精品国内一区二区三区| 久久精品久久综合| 国产日韩欧美一区二区三区在线观看 | 久久精品视频导航| 久久精品日韩一区二区三区| 国产伦精品一区二区三| 亚洲免费在线视频一区 二区| 亚洲欧美日韩天堂一区二区| 欧美午夜免费电影| 日韩性生活视频| 在线综合亚洲| 欧美日韩一区综合| 一本不卡影院| 亚洲欧美国产另类| 国产精品色婷婷久久58| 在线视频一区二区| 午夜精品在线观看| 国产欧美在线看| 久久99伊人| 卡通动漫国产精品| 在线日韩欧美视频| 日韩网站在线看片你懂的| 欧美日韩亚洲一区二区三区在线观看| 亚洲精选国产| 亚洲主播在线| 国产欧美一二三区| 久久精品视频一| 欧美精品高清视频| 一区二区欧美亚洲| 久久激情综合| 亚洲韩国精品一区| 亚洲欧美日韩成人高清在线一区| 国产精品永久免费在线| 欧美在线观看视频一区二区三区| 久久手机精品视频| 亚洲二区视频在线| 国产精品99久久久久久白浆小说| 国产精品久久久久久亚洲调教 | 一本色道久久综合精品竹菊| 亚洲一区欧美| 国产欧美一区二区精品仙草咪 | 国产精品精品视频| 午夜精品福利一区二区三区av| 久久深夜福利免费观看| 亚洲激情在线激情| 亚洲欧美日韩视频一区| 黄色成人av| 夜夜嗨av色一区二区不卡| 国产精品成人一区二区| 欧美主播一区二区三区| 欧美激情二区三区| 国产精品成人aaaaa网站| 欧美一级在线视频| 欧美性片在线观看| 久久激情网站| 欧美视频免费| 久久av在线看| 欧美日韩精品免费观看| 香蕉乱码成人久久天堂爱免费 | 欧美激情视频在线播放| 亚洲免费中文| 欧美成人亚洲| 亚洲一区二区综合| 嫩草影视亚洲| 亚洲自拍偷拍麻豆| 欧美电影免费观看高清完整版| 亚洲夜间福利| 欧美激情女人20p| 香蕉久久一区二区不卡无毒影院| 欧美理论电影网| 欧美一区二区视频在线| 欧美日韩1区2区| 欧美中文字幕久久| 亚洲乱码日产精品bd| 亚洲一区激情| 久久精品国语| 在线亚洲免费| 欧美mv日韩mv国产网站| 午夜精品久久久久久久| 欧美日韩一区二区三区在线看| 亚洲国产精品电影在线观看| 国产精品久久久久影院色老大 | 在线观看一区| 久久久999|