亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Avalon總線的音頻編解碼控制器IP核設(shè)計(jì)

        2017-06-27 08:08:46秦玉龍
        關(guān)鍵詞:編解碼框圖時(shí)序

        秦玉龍

        (宿遷學(xué)院 信息工程學(xué)院,宿遷 223800)

        Avalon總線的音頻編解碼控制器IP核設(shè)計(jì)

        秦玉龍

        (宿遷學(xué)院 信息工程學(xué)院,宿遷 223800)

        介紹了基于Avalon總線的WM8731音頻編解碼控制器IP核的設(shè)計(jì),包括音頻數(shù)據(jù)訪問接口模塊和Avalon-MM接口模塊等,并利用SOPC技術(shù)將其封裝成可重用的IP核。自定義IP核的使用,有效降低了該芯片的開發(fā)難度,同時(shí)也使系統(tǒng)易于擴(kuò)展和升級,具有較高的靈活性。在Quartus II和ModelSim下使用VHDL語言完成了控制器的設(shè)計(jì)、仿真以及Nios II系統(tǒng)的構(gòu)建,并通過SignalTap II邏輯分析儀進(jìn)行了硬件測試。仿真和測試結(jié)果表明,該控制器滿足WM8731各項(xiàng)時(shí)序要求。

        音頻編解碼;自定義IP核;Avalon總線;Nios II

        引 言

        隨著數(shù)字音頻技術(shù)在語音識別、加密、音效處理等方面的廣泛應(yīng)用,人們對語音信號的采集與處理也提出了更高的要求[1]。傳統(tǒng)的音頻數(shù)據(jù)采集與處理系統(tǒng)大多基于單片機(jī)或者數(shù)字信號處理器(DSP),其具有效率低、靈活性差等缺點(diǎn)[2]。在基于SOPC(System On Programmable Chip,片上可編程系統(tǒng))的系統(tǒng)中,由于FPGA的可編程性,可以根據(jù)實(shí)際需要裁減處理器,選擇需要的標(biāo)準(zhǔn)外設(shè),定制用戶外設(shè),為計(jì)算密集型任務(wù)開發(fā)專用的硬件加速器[3]。因此,SOPC方案具有靈活、高效等優(yōu)點(diǎn)。

        系統(tǒng)采用SOPC技術(shù),定制了基于Avalon總線的WM8731音頻編解碼控制器IP核,并將其和Nios II處理器、存儲器、I/O接口等標(biāo)準(zhǔn)IP核集成在一起,構(gòu)成用戶定制的Nios II處理器系統(tǒng)。在Quartus II 11.0環(huán)境下構(gòu)建了基于Altera公司的EP4CE115F29C7芯片的硬件系統(tǒng),在Nios II 11.0 SBT for Eclipse環(huán)境下進(jìn)行了驅(qū)動程序的設(shè)計(jì),對定制的IP核進(jìn)行了完整的測試。經(jīng)測試表明,音頻數(shù)據(jù)采集實(shí)時(shí)性高、輸出音頻質(zhì)量好,滿足WM8731各項(xiàng)時(shí)序要求。

        1 系統(tǒng)設(shè)計(jì)

        系統(tǒng)主要由Nios II處理器、SDRAM控制器、FLASH控制器、JTAG_UART等標(biāo)準(zhǔn)IP核以及音頻編解碼控制器IP核構(gòu)成。系統(tǒng)總體框圖如圖1所示。

        音頻編解碼控制器IP核由音頻數(shù)據(jù)訪問接口和Avalon接口模塊組成。音頻數(shù)據(jù)訪問接口主要負(fù)責(zé)音頻數(shù)據(jù)采集(ADC部分)和輸出(DAC部分)。Nios II處理器作為整個(gè)系統(tǒng)核心,通過I2C接口配置該控制器。I2C接口時(shí)序由PIO端口通過軟件模擬實(shí)現(xiàn),該部分內(nèi)容可參考相關(guān)文獻(xiàn),本文不再贅述。

        圖1 系統(tǒng)總體框圖

        在進(jìn)行音頻數(shù)據(jù)采集時(shí),首先ADC部分負(fù)責(zé)將串行音頻輸入數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)并存入adcfifo,然后Nios II處理器可將adcfifo中的音頻數(shù)據(jù)讀取出來并存儲到sdram中。在輸出音頻數(shù)據(jù)時(shí),首先Nios II處理器將存儲在sdram中的音頻數(shù)據(jù)寫入dacfifo,然后DAC部分負(fù)責(zé)從dacfifo中讀取音頻數(shù)據(jù)并進(jìn)行并串轉(zhuǎn)換。

        2 音頻編解碼控制器設(shè)計(jì)

        2.1 WM8731音頻接口介紹

        系統(tǒng)采用WM8731音頻編解碼芯片。WM8731共有4種音頻接口模式[4],這些模式指定了時(shí)鐘信號和串行數(shù)據(jù)之間的時(shí)序關(guān)系。在本系統(tǒng)中,數(shù)據(jù)訪問使用I2S模式和16位分辨率。在該模式下,ADC輸出的數(shù)據(jù)流格式如圖2所示。有效數(shù)據(jù)在adclrc發(fā)生電平變化后的第2個(gè)bclk開始。adclrc作為一個(gè)校準(zhǔn)時(shí)鐘,用于指示adcdat是左

        圖2 I2S模式下ADC/ADC數(shù)據(jù)時(shí)序波形

        聲道還是右聲道數(shù)據(jù)。當(dāng)adclrc為低電平時(shí),輸出左聲道數(shù)據(jù);為高電平時(shí),輸出右聲道數(shù)據(jù)。bclk作為一個(gè)位時(shí)鐘,在每個(gè)時(shí)鐘的下降沿輸出一個(gè)新的數(shù)據(jù)。首先輸出的是最高有效位。

        DAC輸出數(shù)據(jù)流格式與ADC的類似,但是數(shù)據(jù)是通過dacdat線從數(shù)據(jù)訪問接口模塊輸出到WM8731芯片,daclrc作為校準(zhǔn)時(shí)鐘。

        2.2 音頻數(shù)據(jù)采集設(shè)計(jì)

        音頻數(shù)據(jù)采集部分的功能框圖如圖3所示。首先通過移位寄存器adc_shift_reg實(shí)現(xiàn)串并轉(zhuǎn)換;然后通過數(shù)據(jù)緩沖器adc_buf將并行數(shù)據(jù)寫入adcfifo。

        圖3 音頻數(shù)據(jù)采集功能框圖

        仿真波形圖如圖4所示。由圖4可見,音頻數(shù)據(jù)的采集是從adclrc信號變化后的第二個(gè)bclk時(shí)鐘上升沿開始的,滿足I2S模式下數(shù)據(jù)流的時(shí)序要求。音頻數(shù)據(jù)的串并轉(zhuǎn)換發(fā)生在adclrc信號變?yōu)?之后的第一個(gè)bclk時(shí)鐘上升沿,將并行數(shù)據(jù)寫入adc_buf寄存器;在該時(shí)刻如果adcfifo沒有滿,則產(chǎn)生一個(gè)adcfifo寫請求信號,從而在下一個(gè)bclk時(shí)鐘上升沿將數(shù)據(jù)寫入adcfifo。

        圖4 音頻數(shù)據(jù)采集仿真波形圖

        2.3 音頻數(shù)據(jù)輸出設(shè)計(jì)

        音頻數(shù)據(jù)輸出部分的功能框圖如圖5所示。在dacfifo非空時(shí),通過輸出數(shù)據(jù)緩沖器dac_buf將dacfifo中的數(shù)據(jù)加載到到移位寄存器,進(jìn)行并串轉(zhuǎn)換。在進(jìn)行并串轉(zhuǎn)換時(shí),根據(jù)I2S模式下數(shù)據(jù)流的時(shí)序要求,在發(fā)送左右聲道數(shù)據(jù)之前需要插入一個(gè)時(shí)鐘周期的空閑周期,然后按照從高位到低位順序依次輸出每一位數(shù)據(jù)。

        圖5 音頻數(shù)據(jù)輸出功能框圖

        該部分仿真波形如圖6所示。當(dāng)檢測到daclrc下降沿且dacfifo非空時(shí),發(fā)出dacfifo_rd信號將dacfifo數(shù)據(jù)讀取到q讀數(shù)據(jù)總線上;同時(shí)將dac_buf緩沖器中的數(shù)據(jù)加載到dac_shift_reg移位寄存器中。當(dāng)檢測到daclrc上升沿時(shí),將q讀數(shù)據(jù)總線上的數(shù)據(jù)讀到dac_buf緩沖器中。

        圖6 音頻數(shù)據(jù)輸出仿真波形圖

        2.4 Avalon接口設(shè)計(jì)

        Avalon總線是Altera公司開發(fā)的用于連接Nios II處理器和各種IP核模塊的總線技術(shù)[3]。為了將控制器集成到Nios II系統(tǒng)中,必須為其封裝一個(gè)Avalon接口,使其滿足Avalon接口規(guī)范中定義的信號和時(shí)序要求。

        該控制器的Avalon接口主要包括一個(gè)Avalon存儲器映射(Avalon-MM)從接口、一個(gè)導(dǎo)管(Conduit)接口、一個(gè)時(shí)鐘輸入接口和一個(gè)復(fù)位輸入接口。從接口包含片選、地址、讀寫和讀寫數(shù)據(jù)等Avalon信號,用于與Nios II處理器交互,導(dǎo)管接口包含連接外部芯片所需的各信號。控制器通過從接口和Nios II處理器之間的交互如下:讀取來自于adcfifo的32位音頻數(shù)據(jù)或者adcfifo_empty、dacfifo_full狀態(tài)信號;將32位音頻數(shù)據(jù)寫入dacfifo中;發(fā)送清零命令。

        數(shù)據(jù)讀/寫操作遵循Avalon從接口的基本讀/寫時(shí)序,如圖7所示。根據(jù)Avalon總線規(guī)范要求,讀寫命令由Avalon總線在時(shí)鐘的上升沿發(fā)出[5]。對于讀操作,從接口可在當(dāng)前時(shí)鐘的下降沿提供有效數(shù)據(jù),從而保證Avalon總線能夠在下一個(gè)時(shí)鐘的上升沿讀取到有效數(shù)據(jù)。對于寫操作,從接口必須在下一個(gè)時(shí)鐘的上升沿捕獲寫數(shù)據(jù)。

        圖7 Avalon從接口基本讀寫時(shí)序圖

        3 IP核的創(chuàng)建及測試

        圖8 音頻編解碼控制 器IP核框圖

        在完成音頻編解碼控制器設(shè)計(jì)之后,可以通過Qsys系統(tǒng)集成工具來創(chuàng)建一個(gè)新的IP核,如圖8所示,可以將其集成到Nios II系統(tǒng)中。在設(shè)置Avalon-MM從接口s1時(shí),根據(jù)上述Avalon接口部分的設(shè)計(jì),需要將等待時(shí)間設(shè)置為0,即從接口s1的讀寫操作都是在一個(gè)時(shí)鐘周期內(nèi)完成的。

        對該IP核的測試工作可分兩個(gè)方面:搭建硬件系統(tǒng)平臺、編寫驅(qū)動程序。

        硬件系統(tǒng)平臺可以在Quartus II環(huán)境下搭建,主要由Nios II處理器、SDRAM控制器、FLASH控制器等標(biāo)準(zhǔn)IP核和用戶自定義的音頻編解碼控制器IP核組成。

        驅(qū)動程序的編寫在Nios II SBT for Eclipse環(huán)境下完成,驅(qū)動程序由I2C驅(qū)動和音頻數(shù)據(jù)的訪問程序兩部分構(gòu)成,I2C驅(qū)動通過PIO端口模擬實(shí)現(xiàn)。音頻數(shù)據(jù)訪問程序可用于查看FIFO緩存器的狀態(tài),輸入和輸出音頻數(shù)據(jù),通過以下宏實(shí)現(xiàn)[6]:

        IORD(audio_base,ADC_DATA_REG);

        IORD(audio_base,STATUS_REG);

        IOWR(audio_base,DAC_DATA_REG,data);

        IOWR(audio_base,CMD_REG,data);

        宏定義中各寄存器的含義如表1所列。

        測試時(shí)通過SignalTap II邏輯分析儀采樣到的波形如圖9所示??梢?,控制器的輸入、輸出信號均滿足WM8731各項(xiàng)時(shí)序要求。

        Audio Codec Controller IP Core Design Based on Avalon Bus

        Qin Yulong

        (School of Information Technology,Suqian College,Suqian 223800,China)

        In the paper,the design of WM8731 audio codec controller IP core based on the Avalon bus is designed,including the codec data access interface module and the Avalon-MM interface module,which is encapsulated into reusable IP cores using SoPC technology.The use of custom IP core can effectively reduce the difficulty of the development of the chip,and makes the system easy to expand and upgrade,and it has the advantages of high flexibility.The design and simulation of the controller and the construction of Nios II system are completed in Quartus II and ModelSim using VHDL,and the hardware verification is performed using SignalTap II logic analyzer. The simulation and test results show that the controller can meet the timing requirements of WM8731.

        audio codec;custom IP Core;Avalon bus;Nios II

        TP334.4

        A

        猜你喜歡
        編解碼框圖時(shí)序
        時(shí)序坐標(biāo)
        基于Sentinel-2時(shí)序NDVI的麥冬識別研究
        1553B總線控制器編解碼設(shè)計(jì)
        捷豹I-PACE純電動汽車高壓蓄電池充電系統(tǒng)(三)
        大型民機(jī)試飛遙測視頻編解碼方法研究
        基于H.265編解碼的高清視頻傳輸系統(tǒng)研究
        電子測試(2018年18期)2018-11-14 02:30:54
        電路圖2017年凱迪拉克XT5
        算法框圖的補(bǔ)全
        一種毫米波放大器時(shí)序直流電源的設(shè)計(jì)
        電子制作(2016年15期)2017-01-15 13:39:08
        基于圖表法構(gòu)建《萬有引力定律與航天》知識網(wǎng)絡(luò)
        久久久久久国产精品免费网站| 久久精品国产99久久无毒不卡| 97在线观看播放| 久久福利青草精品免费| 久久久9色精品国产一区二区三区| 日本视频一区二区三区在线| 欧洲多毛裸体xxxxx| 乱码精品一区二区三区| 国产精品国三级国产av| 国产成人精品一区二区不卡| 午夜时刻免费入口| 中文亚洲av片在线观看不卡| 亚洲人成网站18男男| 国产精品一区二区三区av在线| 亚洲精品久久7777777| 无码aⅴ在线观看| 亚洲综合色婷婷七月丁香| 91精品久久久老熟女91精品 | 久久久精品人妻一区二区三区游戏| 内射人妻视频国内| 亚洲国产一区二区在线| 色婷婷久久99综合精品jk白丝 | 无码人妻aⅴ一区二区三区| 宝贝把腿张开我要添你下边动态图 | 久久免费亚洲免费视频| 亚洲人成77777在线播放网站| 9999毛片免费看| 丰满人妻被猛烈进入中文字幕护士| 国产精品一区二区三区卡| 成人h视频在线观看| 亚洲一区二区三区久久蜜桃| 成人国产高清av一区二区三区| 日本少妇春药特殊按摩3| 天美麻花果冻视频大全英文版| 精品一区二区三区中文字幕在线| 伊人久久大香线蕉av五月| 777午夜精品免费观看| 91福利国产在线观一区二区| 国产夫妻精品自拍视频| 欧美另类人妖| 国产午夜精品理论片|