《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > AAC音頻解碼中位數可選且自動加載移位寄存器設計
AAC音頻解碼中位數可選且自動加載移位寄存器設計
儀器儀表學報
摘要: 在對采樣率為44.1kHz的AAC音頻進行解碼時,一幀的解碼時間須控制在23.22毫秒內。且音頻中每一幀可包含1"48個聲道的數據,若遇時序要求最嚴格的場合,即一幀包含48個聲道數據,實時性則很難滿足,因此速度便成為硬件設計的重要指標。所以在系統設計時,為完成解碼的實時性要求,各模塊應以速度為優化目標。
Abstract:
Key words :

1、引言  

    在對采樣率為44.1kHz的AAC音頻進行解碼時,一幀的解碼時間須控制在23.22毫秒內。且音頻中每一幀可包含1"48個聲道的數據,若遇時序要求最嚴格的場合,即一幀包含48個聲道數據,實時性則很難滿足,因此速度便成為硬件設計的重要指標。所以在系統設計時,為完成解碼的實時性要求,各模塊應以速度為優化目標。  

    在AAC音頻解碼" title="AAC音頻解碼">AAC音頻解碼電路的設計中,需要一塊電路連接AAC比特流的存儲電路和和取數解碼電路,考慮到它須完成數據緩沖和移位的功能,我們選擇用移位寄存器" title="移位寄存器">移位寄存器來實現,示意圖如下。  


  
圖1 移位寄存器功能示意圖  

    典型的移位寄存器有兩個特點:1)每個時鐘周期移一位,2)加載的優先級別高于移位的優先級別,移位需等待加載的完成。而AAC音頻數據采用變長編碼技術,即壓縮比特流中的數據部分為可變長的哈夫曼編碼,所以每次解碼完畢從移位寄存器中移出的位數不是固定值,若使用典型移位寄存器一位一位地移數據降低了工作效率;且每次移位須等待加載完畢進行,耗費了等待時間。所以,典型的移位寄存器在時序要求緊張的場合對速度提高起到了負面作用,導致整個系統不能完成實時性要求。因此本設計針對AAC音頻解碼這一特殊應用,對典型移位寄存器在速度方面進行改進設計,使之每一周期可移出任意位,且移位無須等待加載完成,從而加速了移位過程,使之滿足實時性要求。  

    論文結構如下:首先介紹本設計的工作原理,對其中一些參數進行配置;其次分模塊進行電路設計;再次,將典型移位寄存器和本設計分別下載到FPGA開發板,從速度和面積兩方面進行實驗結果的比較;最后,對設計展望,提出可優化的方向。  

2、工作原理  

    考慮到本設計的特定使用場合,選擇移位寄存器為64位,移位位數是1"16可變的整數,存儲空間是位寬為32位的fifo。在其他場合下,可基于同樣的設計方法通過改變參數來滿足要求。  

    移位寄存器功能示意如圖1所示,此移位寄存器連接了兩塊電路單元:單元一、需要取數的AAC音頻解碼電路單元;單元二、數據的存儲空間。當任意時刻單元一需取數時,可向移位寄存器發出取數信號,并給出要取的位數,移位寄存器就在一個周期內將所需長度的數據移出。當移位寄存器中的數據少于一定量時(在此設為32位),會自動從單元二中加載數據,且加載與移位同優先級別,所以無須等待時間。  

3、位數可選、自動加載移位寄存器電路設計  

    以主要寄存器的不同功能依據,將電路劃分為如下圖所示的虛線框內的三個模塊。下面將分模塊介紹電路的設計。  


  
圖2 位數可選、自動加載移位寄存器電路圖  

3.1 有效數據計數器的設計  

    有效數據計數器是用來記錄移位寄存器中剩余有效數據的位數。初始化時,存儲器向移位寄存器加載64位有效數據,計數器為64;當外界從移位寄存器取數時,計數器在原有計數的基礎上減掉所取的位數;當移位寄存器從存儲器加載數據時,計數器在原有計數的基礎上加上加載數據的位寬(32);當移位和加載同時進行時,計數器進行上述的減法和加法的混合運算。  

    使用計數器的目的是為了產生加載數據的標志信號(在這里設為32)。當有效數據計數器中的數目小于等于32時,產生加載信號,而當計數器中的數目大于32時,撤除加載信號。在這里加載數據的標志位可以是范圍為16"32的整數,范圍的制定決定于:加載標志的下限要滿足一次取數的最大長度,上限要保證除有效數據外的剩余空間足夠下一次的數據加載長度。  

3.2 初始化控制狀態機的設計  

    移位寄存器在電路復位時須加載上有效數據,以保證第一次的取數的正確進行。而此時加載標志不能由有效數據計數器產生,因為有效數據計數器在初始化的狀態下為64不可能產生加載標志,所以加載標志需由復位信號間接產生。且由于移位寄存器的長度(64位)是存儲器的寬度(32位)的2倍,所以需要加載兩次。  

    鑒于以上的功能要求,設計初始化狀態機,其中包括三個狀態: IDLE, INIT_0和 INIT_1。當復位產生時,復位信號的兩級寄存信號(防止亞穩態)為觸發信號,使狀態由IDLE跳轉到INIT_0;下一個時鐘周期,狀態機自動由INIT_0跳轉到INIT_1,并產生輸出信號init_0;再下個時鐘周期,狀態機自動由INIT_1跳轉到IDLE,并產生輸出信號init_1。狀態機產生的上述兩個輸出信號控制產生移位寄存器在初始化時的兩次加載信號。狀態轉換圖如下:  


  
圖3 移位寄存器初始化狀態轉移圖  

3.3 移位寄存器的設計  

    之所以選擇64位的移位寄存器,是因為若選擇一倍于存儲器寬度的移位寄存器長度(32位),移位后剩余的有效數據的位數可能不夠下一次的移位長度,為滿足移位長度的要求,需要在加載后再次移位,因此移位最多要花費三個時鐘周期的時間;若選擇三倍于存儲器寬度的移位寄存器的長度或更長(>=96位)時,當設定加載數據的標志為有效數據不大于32時,需要加載兩次數據,當設定加載數據的標志為有效數據不大于64時,此時移位寄存器中的有效數據相對于需要移位的最長數據偏長且沒有必要。所以,將移位寄存器的長度選擇為2倍于存儲器的寬度(64位)在時間和空間上都達到了最優。  

    初始化過程:初始化狀態機產生的輸出信號init_0和init_1為兩次加載的控制信號,這兩個信號控制移位寄存器在初始化的兩個時鐘周期內,從存儲器中取出數據并將其分別加載到高32位和低32位。  

   移位過程:當取數信號發出取數要求時,輸入的取數位數作為多路選擇器的數據選擇端,當前移位寄存器的值和0作為多路選擇器的數據端,通過數據選擇決定移位寄存器下個周期從高位到低位的值。  

    加載過程:當加載信號發出時,剩余有效數據作為多路選擇器的數據選擇端,當前移位寄存器的值、FIFO輸出的值和0作為多路選擇器的數據端,通過數據選擇決定移位寄存器下個周期從高位到低位的值。  

    移位和加載同時發生的過程:當移位和加載信號同時產生時,移位寄存器中剩余的有效數據的位數和輸入的取數位數共同作為多路選擇器的數據選擇端,當前移位寄存器的值、FIFO輸出的值和0作為多路選擇器的數據端,通過數據選擇決定移位寄存器下個周期從高位到低位的值。  

4、實驗結果  

    為完成解碼實時性的要求,本設計對典型的移位寄存器在速度上進行改進,但控制邏輯變得復雜,從而消耗了更多資源。因此,我們選擇速度、面積作為性能指標對兩種設計進行比較。在基于FPGA的硬件設計中,面積指標通常用查找表數和寄存器數來表示,速度指標我們選擇最大時鐘頻率及解碼時平均每幀消耗的周期數來表示。  

    我們采用altera公司FPGA開發工具QuartusII分別對兩塊電路進行綜合和時序分析,從綜合報告中獲得查找表和寄存器的數目,從時序報告中獲得最大時鐘頻率。并將兩個設計分別同AAC音頻解碼電路一起整體下載到stratix II EP2S180 的FPGA開發板,以AAC音頻壓縮文件中隨機抽取的10幀數據為測試矢量,使用一計數器記錄下移位寄存器消耗的周期數,將其寫入片內ram,并將觀測到的數據通過計算得平均每幀消耗的周期數。實驗結果如下表所示: 

表1 實驗數據對比  

    由對比數據可得以下結論:  

    1、典型移位寄存器的工作頻率大于位數可選、自動加載移位寄存器的頻率。但由于此移位寄存器只是更大電路中的一個小模塊,由實際結果可知電路整體的工作頻率并不取決于此模塊的工作頻率,所以在整體電路中對單獨模塊的頻率進行比較并不能得出速度的優劣。  

    2、由查找表數和寄存器數的比較可得:典型移位寄存器消耗的資源遠小于位數可選、自動加載移位寄存器,即典型移位寄存器在面積上占有較大優勢。  

    3、由平均每幀消耗周期數的比較可得:兩者工作在相同的時鐘頻率下時,位數可選、自動加載移位寄存器消耗的時間約為典型移位寄存器的28%,單位時間內傳輸的數據量提高到典型移位寄存器的356%,所以位數可選、自動加載移位寄存器在速度上占有較大優勢。  

    綜上,為完成AAC音頻解碼的實時性要求,本設計進行了速度和面積上的折中處理,相對于典型移位寄存器本設計以犧牲面積為代價換取了速度上的優勢,使之在規定時間內完成解碼。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
美女国内精品自产拍在线播放| 欧美午夜在线视频| 亚洲在线成人| 亚洲美洲欧洲综合国产一区| 亚洲第一色在线| 久久国产加勒比精品无码| 亚洲欧美日韩精品久久| 亚洲一区二区视频在线观看| 一本一本久久a久久精品综合妖精| 亚洲激情小视频| 亚洲人精品午夜在线观看| 亚洲国产一区二区三区a毛片| 亚洲成人在线网| 在线看片日韩| 亚洲国产va精品久久久不卡综合| 亚洲成人资源| 亚洲国产视频a| 亚洲国产精品热久久| 亚洲国产日韩欧美在线99| 亚洲高清视频一区二区| 亚洲国内自拍| 亚洲精品视频一区| 一区二区三区蜜桃网| 亚洲深夜av| 亚洲欧美日韩综合国产aⅴ| 亚洲欧美日韩国产| 欧美一区免费视频| 亚洲国产成人精品久久| 亚洲国产一区二区a毛片| 亚洲日本在线观看| 一本久久知道综合久久| 亚洲在线中文字幕| 欧美一区二区在线免费播放| 久久青草久久| 欧美久久九九| 国产精品久久久久久久久果冻传媒 | 欧美午夜电影在线| 国产精品家庭影院| 国产欧美一区二区三区另类精品 | 久久成人国产| 最近看过的日韩成人| 一本色道久久综合亚洲精品高清 | 欧美一区二区免费观在线| 久久精品视频播放| 亚洲精品视频啊美女在线直播| 亚洲视频在线播放| 欧美一级淫片aaaaaaa视频| 久久综合九色综合久99| 欧美—级a级欧美特级ar全黄| 欧美视频精品一区| 国产性天天综合网| 最近中文字幕日韩精品| 在线视频你懂得一区二区三区| 欧美一区二区成人| 亚洲日韩成人| 亚洲欧美日韩国产精品 | 欧美日在线观看| 国产亚洲亚洲| 亚洲日本一区二区| 亚洲综合不卡| 亚洲人成在线播放网站岛国| 亚洲欧美国内爽妇网| 美女国产精品| 国产精品一区久久久| 亚洲第一黄色| 亚洲视频你懂的| 亚洲电影免费| 亚洲欧美国产高清va在线播| 免费的成人av| 国产乱码精品| 亚洲精品视频在线播放| 欧美一区1区三区3区公司| 一本久久青青| 玖玖国产精品视频| 国产精品美女www爽爽爽| 亚洲高清av| 午夜精品在线视频| 一区二区三区日韩精品视频| 老司机成人网| 国产精品永久| 亚洲美女视频| 亚洲精品123区| 午夜精品一区二区三区在线| 欧美成人一区二免费视频软件| 国产精品视频xxxx| 亚洲美女精品久久| 亚洲黄色在线| 久久九九精品99国产精品| 国产精品大片免费观看| 最新国产拍偷乱拍精品| 亚洲成在人线av| 欧美一级播放| 国产精品v一区二区三区| 亚洲福利视频专区| 亚洲电影第1页| 久久精品动漫| 国产精品一区二区久久国产| 日韩图片一区| 亚洲精选久久| 免费在线观看日韩欧美| 好吊视频一区二区三区四区| 亚洲欧美色一区| 亚洲欧美国产一区二区三区| 欧美日韩视频在线一区二区| 亚洲高清网站| 亚洲国产精品视频| 久久嫩草精品久久久精品| 国产日韩欧美精品| 亚洲女ⅴideoshd黑人| 亚洲综合精品一区二区| 欧美日韩一区二区免费在线观看| 亚洲经典在线| 亚洲精品欧美在线| 女人香蕉久久**毛片精品| 樱桃国产成人精品视频| 亚洲电影观看| 免费视频最近日韩| 亚洲风情在线资源站| 亚洲黄网站黄| 欧美~级网站不卡| 亚洲成人在线视频网站| 亚洲国产欧美一区二区三区同亚洲| 久久精视频免费在线久久完整在线看| 国产欧美在线播放| 亚洲综合电影| 久久大逼视频| 国产一区二区三区日韩欧美| 欧美一级在线亚洲天堂| 久久精品视频导航| 国产一区二区三区观看| 久久成人这里只有精品| 久久综合999| 亚洲高清不卡av| 99国产精品一区| 欧美三级免费| 亚洲无线一线二线三线区别av| 亚洲自拍三区| 国产精品永久免费观看| 欧美一区二区日韩| 美女精品在线| 亚洲国产一二三| 亚洲无亚洲人成网站77777| 国产精品高潮久久| 午夜在线电影亚洲一区| 久久亚洲综合网| 亚洲高清123| 亚洲午夜91| 国产日韩av高清| 亚洲电影在线播放| 欧美激情综合色| 一区二区精品国产| 欧美中在线观看| 永久免费精品影视网站| 99国内精品久久久久久久软件| 国产精品家庭影院| 欧美中文字幕在线观看| 欧美国产综合视频| 这里只有视频精品| 久久婷婷久久| 亚洲激情亚洲| 香蕉亚洲视频| 亚洲第一页在线| 亚洲一区二区三区高清 | 激情综合中文娱乐网| 亚洲精品日韩激情在线电影| 欧美日韩免费观看一区=区三区| 亚洲尤物精选| 美女啪啪无遮挡免费久久网站| 亚洲精品中文字幕在线观看| 欧美一区二区三区视频在线| 精品福利av| 亚洲欧美变态国产另类| 激情成人av在线| 亚洲午夜精品一区二区| 国产视频综合在线| 日韩一本二本av| 国产日韩av一区二区| 日韩视频二区| 国产亚洲一区二区三区| 在线亚洲欧美视频| 国产一区二区三区四区在线观看| 日韩午夜av在线| 国产亚洲电影| 在线亚洲免费视频| 黄色一区二区在线观看| 亚洲午夜在线| 亚洲大片在线观看| 欧美伊人久久久久久久久影院 | 1000部精品久久久久久久久| 亚洲午夜免费视频| 伊人久久av导航| 亚洲男人的天堂在线观看| 在线成人激情黄色| 亚洲欧美制服另类日韩| 亚洲国产另类 国产精品国产免费| 午夜精品三级视频福利| 亚洲精品久久久蜜桃| 久久夜色精品亚洲噜噜国产mv| 中文在线资源观看视频网站免费不卡| 女同性一区二区三区人了人一 |