久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團論壇嵌入式硬件開發專區嵌入式硬件技術討論專區 → 嵌入式基于SoC的AC97技術硬件設計


  共有6957人關注過本帖樹形打印

主題:嵌入式基于SoC的AC97技術硬件設計

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
嵌入式基于SoC的AC97技術硬件設計  發帖心情 Post By:2010-11-19 9:04:40

  符合Audio Codec’97協議(簡稱AC’97,是由Intel公司提出的數字音頻處理協議)的音頻控制器不但廣泛應用于個人電腦聲卡,并且為個人信息終端設備的SOC(如Intel的PXA250)提供音頻解決方案。本文設計的音頻控制器可為DSP內核提供數字音頻接口。全文在介紹音頻控制器結構的同時,著重強調其與內核之間數據的協調傳輸,并給出基于FPGA實現SoC內核仿真環境對音頻控制器進行功能測試的方法。

  音頻控制器的結構和原理

  AC’97系統由音頻編解碼器(Codec)和音頻控制器(Controller)兩個部分組成。其中音頻編解碼器實現A/D、D/A轉換、音效處理等功能,而音頻控制器則是SoC內核與音頻編解碼器之間的數字接口,負責控制數據和音頻數據的串/并、并/串轉換以及傳輸。

  性能指標

  本設計的音頻控制器符合AC97規范V2.3,其主要指標如下:支持雙聲道錄放音;支持定采樣率(48kHz)和變采樣率錄放音;20位寬16層深PCM音頻數據FIFO;支持省電模式;支持中斷、DMA和輪詢3種方式實現與內核或內存的數據交換

  組成結構音頻控制器的主結構如圖1所示。內核/內存和音頻控制器接口(CORE/MEMORY,CTRL INTERFACE)連接音頻控制器與內核或內存。CS是片選信號,WR和RD分別是讀寫使能,ADDR(16位寬)是音頻控制器的端口地址,DIN和DOUT(都是32位寬)分別是總線上的輸入輸出數據,IRQ和DMA REQ分別是中斷和DMA請求。主模塊(AC’97 CTRL MASTER)負責音頻控制器(AC’97 CONTROLLER)與內核或內存(DMA模式下)之間PCM音頻數據、控制和狀態寄存器組(CONTROL&STATUS REGS)數據以及音頻編解碼器(AC’97 CODEC)內部寄存器數據各并行數據的傳輸,由主時鐘CLK同步。電源控制模塊(POWER CTRL)可以啟動省電模式,也由主時鐘CLK同步。

       

圖片點擊可在新窗口打開查看

            圖1 音頻控制器的主結構

  4組FIFO用于存放PCM音頻數據,都是20位寬16層深,因此可以支持最高20位寬分辨率。當FIFO滿或者空時,可以發出中斷或DMA請求。音頻編解碼器內部寄存器讀寫緩存器(CODEC REG WRITE/READ BUF,簡稱CRBUF)是2個32位寄存器。寫緩沖器可以緩存準備寫入音頻編解碼器內部寄存器的控制字,其空時可以發出中斷請求;讀緩沖器可以緩存已經從音頻編解碼器內部寄存器中讀出的狀態字,其滿時可以發出中斷請求。控制和狀態寄存器組包含8個32位寄存器,其中,通用控制寄存器的主要功能是系統冷啟動、熱啟動;通用狀態寄存器反映音頻編解碼器狀態;其他寄存器的功能包括配置PCM輸入輸出聲道、配置和產生中斷或DMA請求。輔模塊(AC’97 CTRL SLAVE)實現音頻控制器與音頻編解碼器之間(AC-LINK)數據幀的串行發送和接收。輸出數據(SDATA_OUT)由輔時鐘BIT_CLK上跳沿同步,輸入數據(SDATA_IN)由BIT_CLK下跳沿同步。

  工作原理

  DSP內核通過讀寫音頻控制器CSRS分別來獲得音頻編解碼器狀態和設置音頻編解碼器工作模式;通過讀寫FIFO來緩沖音頻錄制和播放過程中的PCM音頻數據;通過讀寫CRBUF來獲得音頻編解碼器內部寄存器狀態和設置音頻編解碼器內部寄存器參數。下面以音頻播放中的主要步驟為例,介紹音頻控制器的工作原理。

  (1)寫滿PCM左聲道輸出FIFO;
      (2)寫滿PCM右聲道輸出FIFO;
  (3)輪詢音頻編解碼器準備好(Codec ready)信號是否有效;
  (4)讀音頻編解碼器的26H寄存器,判斷D/A轉換器是否準備好;
  (5)允許CRBUF產生中斷請求;
  (6)寫0到音頻編解碼器的02H寄存器,使主音量衰減最小; 
      (7)等待CRBUF產生中斷,響應中斷并寫0到音頻編解碼器的18H寄存器,使PCM輸出音量衰減最小;
  (8)等待CRBUF產生中斷,響應中斷并寫1到音頻編解碼器的2AH寄存器,即以變采樣率播放音頻;
  (9)等待CRBUF產生中斷,響應中斷并寫5622(十六進制)到音頻編解碼器的2CH寄存器,即以22.05kHz采樣率播放音頻;
  (10)允許PCM左右聲道FIFO產生滿中斷;
  (11)設置PCM左右聲道定速率或者變速率傳輸,并開始播放音頻;
  (12)等待FIFO中的PCM碼傳送掉16層并發出中斷請求;
  (13)判斷是否是PCM左聲道FIFO發出中斷請求,如果是,則寫16層PCM左聲道數據;
  (14)判斷是否是PCM右聲道FIFO發出中斷請求,如果是,則寫16層PCM右聲道FIFO數據;
  (15)如果內存中PCM數據被讀完,則放音結束,否則返回第12步繼續放音。

  SOC仿真環境的構成和原理

  由音頻控制器的工作原理可見,其每一個步驟都是在DSP內核控制下進行的。                                                                                                                                                                                         

因此在對音頻控制器進行功能驗證時,不但要保證其本身的邏輯正確,更要保證其與內核的數據傳輸正確,這樣才有利于音頻控制器和內核的整合。由此提出通過構件SoC內核仿真環境來逼近真實內核,并在這個仿真環境中測試所設計的音頻控制器。

  仿真環境的構成

  SoC內核仿真環境的硬件以Xilinx公司的MicroBlaze多媒體開發電路板為基礎,其核心是Vertex II FPGA。電路板上還集成了National Semiconductor公司的AC’97 CODEC LM4549芯片,并且提供了LINE IN/OUT、耳機以及麥克風插口。可以通過這些插口來測試音頻錄放效果,也可通過電路板上的測試點調試部分關鍵信號。SoC內核仿真環境的構成如圖2所示。
    

圖片點擊可在新窗口打開查看

                   圖2 SoC內核仿真環境的構成

  內核模擬模塊(CORE SIM)是SoC內核仿真環境的核心,以RTL代碼形式下載到Vertex II FPGA中模擬DSP內核的單周期指令,可以實現讀寫內存、訪問音頻控制器(包括讀寫FIFO、CRBUF以及CSRS)、響應并處理中斷請求或DMA請求。其中,DIN_RAM是32位內存數據輸入總線;DIN_CTRL是32位音頻控制器數據輸入總線;DOUT是32位數據輸出總線;IRQ是音頻控制器中斷請求;DMA REQ是音頻控制器DMA請求;RST是音頻控制器異步復位。


  塊內存模塊是由Vertex II FPGA中的塊內存實現的單端口內存,這種內存的時序與常規SRAM相同,可以模擬最大126KB的片上SRAM。在Xilinx集成開發環境(ISE)中調用CORE Generator,就可以生成這種靜態內存。如果運用Memory Eidtor工具生成cgf和coe文件(塊內存的配置文件),就可以在為FPGA下載BIT文件的同時給塊內存賦初始值。基于FPGA這項強大的功能,就可以將從個人電腦上提取出來的PCM音頻碼下載到塊內存中,然后在內核模擬模塊的控制下,通過音頻控制器傳送到音頻編解碼器中,由此實現音頻播放。

  時鐘發生模塊(CLOCK GENERATOR)可發出27MHz、54MHz以及108MHz三種時鐘,并且產生音頻控制器異步復位信號RST。MicroBlaze開發電路板上的晶振發出27MHz和50MHz的占空比1:1的方波信號作為時鐘發生模塊的輸入,調用數字鎖相環硬核模塊(CLOCKGEN.v和CLOCKGEN.ucf)可輸出各倍頻時鐘(本設計用108MHz)以及異步復位信號RST。AC’97 CTRL是以RTL形式下載到Vertex II FPGA中的音頻控制器邏輯。AC97 CODEC是National Semiconductor公司的LM4549 AC97 CODEC芯片。

  內核模擬模塊的實現原理

  RTL代碼模擬的都是流水線中的指令執行級,是音頻控制器和內核直接交互數據的級別。根據DSP內核在指令執行級的行為和接口特性,可以靈活地改變內核模擬模塊的接口和內部信號(通過改變RTL代碼),形成不同的仿真環境。測試在新的仿真環境中音頻控制器與內核的工作是否協調穩定,如果結果不理想,就應更改音頻控制器的設計。這樣就能使音頻控制器的特性也能和內核達到最好的協調。

  基于SOC內核仿真環境的放音實例

  下面給出基于SoC內核仿真環境播放音頻的實例。音頻來源于Windows2000操作系統初始安裝后winnt/media目錄下的Utopia Windows Start.wav(153KB,16位單聲道的wave文件),提取出文件中的PCM音頻碼后下載到Vertex II的塊內存中。音頻控制器在SoC內核仿真環境中控制音頻編解碼器工作,連接耳機到MicroBlaze開發電路板的耳機插口,可以聽到維持將近3秒鐘的音頻信號,和原音頻文件的聲音基本一致。使用音頻分析軟件Audicity來分析音頻播放效果,原始音源與開發板播放的音頻略有不同,其原因有以下3點。(1)電腦聲卡錄音起點和原音頻的放音起點不同; (2)由于塊內存的最大容量為126KB,

     以所錄波形文件只截取了原文件(153KB)的前2/3部分。(3)經過SoC內核仿真環境放音,并由電腦聲卡錄音得到的音頻與原音頻的幅度必然不同。第1、2兩個因素引起兩個波形在時間軸方向上的偏差,因素3引起幅度軸方向上的偏差。盡管存在這些差異,但完全可以說明在SoC內核仿真環境中,所設計的音頻控制器邏輯功能正確,與內核能夠協調工作。

  總結

  本文根據所設計的音頻控制器的結構詳細介紹了構建SoC內核仿真環境來測試音頻控制器的思想和實現方法。基于這個仿真環境,不但可以測試音頻控制器實際錄放音的效果和性能,更重要的是可以及時反映其與內核的協調程度。這樣就可避免孤立設計音頻控制器而不考慮其與SoC系統協調的弊端,明顯提高后期整合SoC系統的效率。


支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

嵌入式基于SoC的AC97技術硬件設計








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
国产一区二区三区免费播放| 91啪亚洲精品| 色噜噜狠狠成人网p站| 超碰97国产在线| 国产69精品久久久久777| 奇米888四色在线精品| 亚洲成人动漫av| 亚洲乱码国产乱码精品精的特点| 日韩视频一区二区三区在线播放| 欧美在线视频不卡| 91电影在线观看| 欧美日韩中文国产| 日韩情涩欧美日韩视频| 日韩一区二区三区四区| 91精品国产综合久久精品性色| 在线播放国产精品二区一二区四区 | av电影一区二区| 成人app网站| 国产精品美女诱惑| 欧美xxxx黑人又粗又长密月| 日本一区二区久久精品| 午夜午夜精品一区二区三区文| 欧美午夜在线观看| 久久人人爽爽爽人久久久| 国产精品国产三级国产专播品爱网 | 91精品综合久久久久久| 久久色成人在线| 亚洲成av人片| 国产成人aaa| 日本中文不卡| 欧美成人video| 国产精品对白交换视频 | 欧美女孩性生活视频| 精品三级在线观看| 亚洲v精品v日韩v欧美v专区| 成人高清在线视频| 亚洲日本精品| 国产精品乱人伦一区二区| 美日韩一区二区| 欧美日韩另类丝袜其他| 欧美日韩久久一区| 亚洲亚洲人成综合网络| 97精品超碰一区二区三区| 91久久一区二区| 午夜精品久久久久久久| 国产精品区一区二区三含羞草| 欧美怡红院视频| 婷婷成人激情在线网| 国产一区精品视频| 久久久久久久久免费| 国产精品亚洲а∨天堂免在线| 色一情一乱一乱一91av| 亚洲一二三四区不卡| 精品麻豆av| 中文字幕成人av| 99国产超薄丝袜足j在线观看| 日韩一二三四区| 国产精品一区二区三区99| 亚洲欧洲精品在线观看| 一区二区国产盗摄色噜噜| 国产麻豆日韩| 亚洲丝袜另类动漫二区| 欧美一区国产一区| 亚洲网友自拍偷拍| 亚洲一区二区三区涩| 性做久久久久久| 亚洲一区二区自拍偷拍| 亚洲国产视频网站| 午夜精品视频在线观看一区二区 | 精品视频在线免费看| 美女脱光内衣内裤视频久久影院| 色老综合老女人久久久| 久久超碰97人人做人人爱| 欧美丰满嫩嫩电影| 国产精品乡下勾搭老头1| 精品处破学生在线二十三| 99久久精品免费看国产| 国产精品日韩成人| 亚洲欧美综合一区| 国产成人啪午夜精品网站男同| 欧美电影免费提供在线观看| 国产精品一区二区欧美| 日韩激情中文字幕| 日韩精品一区二区三区三区免费 | 久久国产精品无码网站| 欧美电影精品一区二区| 国产精品一区二区三区免费观看| 亚洲国产一区二区三区青草影视| 一本久久a久久免费精品不卡| 91啪亚洲精品| 视频在线在亚洲| 日本一区二区成人在线| 在线观看区一区二| 国产欧美日韩一区二区三区| 精品一区二区精品| 国产精品二区一区二区aⅴ污介绍| 日本黄色一区二区| 国产一区二区中文字幕免费看| 黄页视频在线91| 亚洲黄色小视频| 国产精品热久久久久夜色精品三区| 中文字幕成人一区| 日韩在线三区| 国产精品二区在线| 99久久综合色| 国产麻豆一精品一av一免费| 日韩精品久久理论片| 亚洲人成网站影音先锋播放| 精品久久久久久久久久久久久久久 | 日韩免费福利电影在线观看| 正在播放一区| 日韩欧美三级一区二区| 国产91精品入口17c| 不卡视频一区二区三区| 91免费看视频| 51成人做爰www免费看网站| 国产精品一二三四| 久草这里只有精品视频| 免费av成人在线| 激情综合网天天干| 久久国产视频网| 国产精品一区二区男女羞羞无遮挡 | 波多野结衣91| 国产精品一区二| 欧美日韩最好看的视频| 欧美成人一区二区在线| 久久久久久艹| 一区二区三区四区视频在线观看| 色婷婷av一区二区| 欧美婷婷六月丁香综合色| 在线播放中文字幕一区| 精品va天堂亚洲国产| 亚洲图片激情小说| 全国精品久久少妇| www.日本不卡| 欧美一区二区三区电影在线观看| 亚洲午夜久久久影院伊人| 欧美日韩一区视频| 国产精品理论片在线观看| 视频一区视频二区中文| www.av精品| 一本大道久久精品懂色aⅴ| 3d成人动漫网站| 亚洲精品乱码久久久久久黑人| 久久成人精品无人区| 久久狠狠久久综合桃花| 欧美日本视频在线| 亚洲男帅同性gay1069| 亚洲精品一区二| 国产女主播一区| 韩国一区二区在线观看| 女同一区二区| 中文字幕不卡三区| 成人理论电影网| 一区二区三区四区在线视频| 亚洲国产精品成人综合色在线婷婷| 日韩激情视频在线观看| 国产精品一区而去| 日韩欧美国产电影| 精品一区二区三区在线观看| 欧美伦理一区二区| 国产精品乱码人人做人人爱 | 色天天综合久久久久综合片| 久久久久国色av免费看影院| 免费成人美女在线观看| 欧美高清视频一区| 日韩伦理电影网| 精品伦精品一区二区三区视频| 色一情一伦一子一伦一区| 欧美伦理影视网| 色综合天天综合给合国产| 99久久无色码| 亚洲成色www久久网站| 一区二区三区中文字幕电影| 91久久精品午夜一区二区| 国产美女在线精品| 国产精品无码永久免费888| 亚洲精品免费在线看| 国产91精品一区二区麻豆网站 | 日韩一区二区电影在线| 久久国产日韩欧美精品| 日韩欧美中文字幕精品| 大波视频国产精品久久| 亚洲欧洲无码一区二区三区| 亚洲激情啪啪| 国产精品一区三区| 国产精品乱码一区二三区小蝌蚪| 日本不卡一区二区三区视频| 午夜一区二区三区视频| 日韩视频一区二区| 久久久久久a亚洲欧洲aⅴ| 日韩成人午夜精品| 久久综合九色综合欧美98| 明星裸体视频一区二区| 国产精品原创巨作av| 1区2区3区国产精品| 欧美一区二区在线看| 国产欧美日韩伦理| 国产精品99久久不卡二区| 中文字幕亚洲在|