《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 通用音頻解碼器驗證系統設計與實現
通用音頻解碼器驗證系統設計與實現
來源:電子技術應用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亚洲国产精品_日韩亚洲一区二区
老司机免费视频一区二区| 国产精品成人观看视频国产奇米| 99国产精品久久| 最新成人av在线| 久久国产精品亚洲77777| 亚洲欧美日韩国产综合在线| 亚洲一本大道在线| 亚洲午夜精品一区二区| 一区二区欧美精品| 一本色道久久综合亚洲精品不 | 国产一区二区三区最好精华液| 国产精品v欧美精品v日韩| 欧美午夜电影在线| 国产精品xxx在线观看www| 欧美性理论片在线观看片免费| 欧美日韩和欧美的一区二区| 欧美日韩亚洲另类| 国产精品av一区二区| 国产精品高精视频免费| 国产精品欧美一区二区三区奶水| 国产精品久久久久久久7电影 | 一区二区三区国产精华| 在线视频免费在线观看一区二区| 在线亚洲国产精品网站| 亚洲一区影院| 欧美一区二区视频网站| 久久久国产一区二区| 每日更新成人在线视频| 欧美国产乱视频| 欧美日韩福利在线观看| 欧美性猛交xxxx免费看久久久| 国产精品日本| 激情婷婷久久| 亚洲乱码国产乱码精品精可以看| 99精品欧美一区| 亚洲免费网站| 久久精品国产第一区二区三区最新章节| 亚洲成色最大综合在线| 99国产精品国产精品久久| 亚洲综合视频1区| 久久成人久久爱| 免费成人性网站| 欧美日韩一区二区三区视频| 国产精品视频yy9099| 红桃视频亚洲| 日韩一区二区精品视频| 亚洲欧美日韩另类| 亚洲国产精品国自产拍av秋霞| 夜夜嗨网站十八久久| 欧美一区在线直播| 欧美aaaaaaaa牛牛影院| 欧美日韩在线三级| 国产亚洲欧美一区二区| 亚洲精品欧美| 欧美一区二区三区婷婷月色| 亚洲精品在线观| 午夜在线电影亚洲一区| 麻豆成人小视频| 国产精品地址| 黄色成人在线免费| 在线一区视频| 亚洲高清三级视频| 亚洲香蕉在线观看| 美女国内精品自产拍在线播放| 欧美涩涩网站| 在线观看91精品国产麻豆| 制服丝袜亚洲播放| 91久久精品美女| 午夜精品在线观看| 欧美gay视频| 国产区精品视频| 亚洲精品视频在线观看网站| 欧美一级在线视频| 亚洲在线视频观看| 欧美国产在线电影| 国产一二三精品| 亚洲视频一二| 99精品99| 久久三级福利| 国产精品一二| 99精品黄色片免费大全| 亚洲国产女人aaa毛片在线| 性欧美videos另类喷潮| 欧美伦理在线观看| 亚洲第一精品夜夜躁人人躁| 午夜日韩视频| 午夜国产精品视频免费体验区| 欧美激情性爽国产精品17p| 国产曰批免费观看久久久| 亚洲午夜国产成人av电影男同| 亚洲美女一区| 美女在线一区二区| 国内精品美女在线观看| 午夜激情一区| 亚洲先锋成人| 欧美另类专区| 亚洲国产日韩一区| 亚洲国产成人av| 久久国产精品久久久久久电车| 国产精品扒开腿爽爽爽视频| 亚洲三级免费电影| 亚洲精品黄网在线观看| 麻豆国产va免费精品高清在线| 国产日韩精品视频一区| 亚洲一区二区三区免费在线观看| 一二三区精品福利视频| 欧美成人一区在线| 亚洲国产高潮在线观看| 亚洲电影毛片| 久久久久一本一区二区青青蜜月| 国产毛片一区二区| 亚洲欧美另类国产| 午夜日韩在线观看| 国产精品久久久久毛片软件| 一本色道久久加勒比精品| 亚洲新中文字幕| 国产精品v日韩精品v欧美精品网站| 亚洲精选视频免费看| 一本色道88久久加勒比精品| 欧美激情小视频| 亚洲美女视频网| 这里只有精品视频| 欧美日韩精品一区二区在线播放 | 国产精品久久久久一区二区| 夜夜嗨av一区二区三区四季av | 亚洲精品一级| 欧美激情亚洲精品| 亚洲九九精品| 中文国产亚洲喷潮| 国产精品国产自产拍高清av| 亚洲一区二区三区高清不卡| 欧美亚洲三区| 国产综合色精品一区二区三区| 久久国产婷婷国产香蕉| 久久久久久久97| 亚洲第一中文字幕| 99re6热只有精品免费观看 | 99精品国产一区二区青青牛奶| 欧美日本久久| 亚洲网站在线| 久久精品主播| 在线观看三级视频欧美| 亚洲精品在线免费观看视频| 欧美日韩成人在线| 亚洲视频综合在线| 久久精品99无色码中文字幕| 狠狠色综合网站久久久久久久| 亚洲日本免费电影| 欧美日韩色综合| 午夜精品久久久久久久久 | 国产精品视频九色porn| 欧美一级在线亚洲天堂| 免费中文日韩| 夜夜精品视频| 久久精品国产亚洲aⅴ| 在线看不卡av| 亚洲午夜在线观看视频在线| 国产亚洲观看| 亚洲精品一区二区网址 | 国产日韩欧美日韩大片| 亚洲国产福利在线| 欧美日韩网址| 午夜精品三级视频福利| 噜噜噜在线观看免费视频日韩| 亚洲美女91| 久久高清福利视频| 亚洲精品视频在线看| 欧美一区二区在线看| 亚洲福利在线观看| 亚洲欧美另类国产| 在线成人av| 亚洲一区综合| 一区二区三区在线视频观看| 亚洲视频欧美视频| 狠狠色2019综合网| 亚洲一区二区伦理| 激情欧美丁香| 亚洲欧美另类国产| 亚洲国产精品第一区二区| 午夜视频在线观看一区二区三区| 欲色影视综合吧| 亚洲摸下面视频| 1024欧美极品| 欧美亚洲日本国产| 亚洲欧洲在线观看| 欧美在线观看视频一区二区| 91久久精品一区| 久久www成人_看片免费不卡| 亚洲精品在线观看视频| 久久久久久**毛片大全| 一本大道久久精品懂色aⅴ| 久久夜色精品亚洲噜噜国产mv | 亚洲一区二区视频在线观看| 国内精品久久久久久久影视蜜臀 | 亚洲天堂av图片| 欧美国产日韩亚洲一区| 欧美在线播放一区| 国产精品婷婷午夜在线观看| 亚洲最新视频在线播放| 精品1区2区3区4区|