999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種傳輸實時USB音頻的串行接口引擎設計*

2013-12-30 09:48:44喬麗萍王聰華
電子器件 2013年4期
關鍵詞:引擎設備

靳 釗,喬麗萍,王聰華,郭 晨,劉 策

(1.長安大學信息工程學院,西安710064;2.西藏民族學院信息工程學院,陜西咸陽712082)

隨著VoIP產業的迅猛發展,與其相關的高品質音頻芯片發展空間巨大。USB是應用面最廣的PC外設接口,其實時同步數據傳輸模式適合于傳送高速實時音視頻數據流[1-2],因此USB音頻類設備具備較大的應用價值。MP3、MP4等設備的流行普及,使USB接口的應用更為廣泛,若能為這些便攜設備增加USB音頻功能,它們會成為集成語音聊天、網絡電話等功能的通信終端設備,這將大大提高設備的兼容性,擴展其應用領域。

串行接口引擎模塊[3]是USB音頻設備硬件結構中的一個重要的組成部分,負責完成底層數據的處理工作。本文根據有限狀態機理論,首先得到實現數據流功能的有限狀態機,進一步通過狀態機控制串行接口引擎,完成對音頻數據的處理。設計通過FPGA硬件平臺驗證,成本低、可靠性高及多點數據采集,既可作為獨立的產品,也可以方便地集成到其他多媒體采集卡上。

1USB Audio的設備架構與設備描述符

USB設備架構描述的是USB設備中間層的通用屬性與操作[4]。結合USB音頻類設備協議,圖1給出了本設計的一個包含錄音、放音功能的USB音頻設備架構。設備包含4個功能節點 IT1、OT3、IT4、OT5,3 個接口 IF0、IF1 和 IF2。

根據USB音頻類協議以及本文設計的音頻設備架構,可以確定USB描述符表,功能是將設備接口參數、結構及邏輯關系報告給主機驅動程序。USB設備驅動程序只有收到完整的描述符后,才能“理解”設備的各種接口、端點及功能節點的配置信息及其邏輯關系。從邏輯分析儀抓取的包數據可以分析該設備與主機之間是否正確建立通信[5]。

圖1 USB Audio設備架構

圖2 串行接口引擎框圖

2 串行接口引擎的結構及實現

2.1 串行接口引擎結構

傳統的USB音頻設備大多使用MCU+USB來構成[6],本設計以串行接口引擎完成USB通信系統的底層數據處理和鏈路的控制,使用狀態機取代MCU工作以降低成本。根據USB協議以及USB音頻類協議,串行接口引擎主要分成PHY接口、編碼器、編碼狀態機、譯碼器、譯碼狀態機等部分。圖2給出串行接口引擎的結構框圖,圖中的ROM存儲設備描述符表,RAM存儲耳機和麥克風的音頻數據。

2.2 PHY接口設計

USB Audio的PHY接口模塊直接與主機的物理PHY接口相連,接收來自主機的差分放大信號并向其發送NRZI差分信號,因此該模塊分成接收RX與傳送TX兩部分。Phy_dpi,phy_dmi是經過PHY接口轉換的D+、D-,phy_di是實際傳輸的數據??偩€工作的空閑態與工作態在邏輯上分別與J態(邏輯電平1)和K態(邏輯電平0)等價[6]。通過控制D+和D-線從空閑態到相反的邏輯電平,就可以實現源端口的包發送。dpllvalid信號為1表示USB包發送結束(EOP),串行輸入的數據有效,開始對主機發送數據進行處理。復位條件為EOP有效。NCVerilog仿真波形見圖3。PHY接口發送TX部分,以12MHz的速率將資料送給主機PHY??刂艱+和D-兩位同時為0到達SE0態,標志包發送結束;控制D+和D-線的一位,使D+為1后到達J態,可實現EOP信號的發送。

圖3 PHY RX仿真波形

圖4 解碼模塊仿真波形

2.3 解碼與編碼模塊設計

解碼模塊分成NRZI解碼、解碼去‘0’、CRC校驗、串并轉換。在包傳送時,USB使用一種NRZI(None Return Zero Invert,無回零反向碼)編碼方案[7]。解碼過程中,若總線數據不變動(0->0,1->1),則檢出“1”;有變動(0->1,1->0),則檢出“0”。采樣信號dpllvalid有效時,得到NRZI解碼后的數據rxnrzidata。為了確保信號發送的準確性,傳送設備要進行位插入操作,即在數據被編碼前,在數據流每6個連續‘1’后插入一個‘0’,強迫NRZI碼發生變化。接收端通過CRC檢測包在傳輸過程中是否發生損壞[8]。令牌包采用5 bit CRC校驗,數據包采用16 bit CRC校驗。串并轉換模塊將串行數據轉換為8 bit的并行數據,計數器rxbitcnt對接收到的NRZI解碼數據進行計數,計數器rxbytecnt對接收到的字節數計數,產生有效命令解碼信息和數據,以供解碼狀態機使用。圖4給出了解碼仿真波形。編碼過程完全是解碼過程的逆過程,并串轉換模塊將8 bit并行數據轉成1 bit串行數據,之后產生CRC校驗位,經過插入0 bit,NRZI編碼后送出。

2.4 編碼及譯碼狀態機

編碼及譯碼狀態機[9]是數據流處理部分的核心模塊,控制和協調其他各個功能模塊的正常工作。根據USB音頻設備所要發送接收的數據分組的基本格式,以及USB協議規定的總線傳輸方式,可以將USB音頻設備的數據分組的各個部分作為一個狀態,控制后面的模塊工作[10]。圖5給出了編碼及譯碼模塊的數據流狀態機。

圖5 數據流狀態機

解碼狀態機是由USB_IDLE,USB_RX,USB_TX 3個狀態組成;而編碼狀態機是由USB_TX、USBtx_start、USBtx_sync、USBtx_pid、USBtx_iso、USBtx_data、USBtx_crc、USB_EOP 8個狀態組成。USB任何操作都由主機發起,初始情況下狀態機處于IDLE狀態。當探測到數據由空閑態到相反的邏輯電平時,狀態機從USB_IDLE進入USB_RX,解碼狀態機開始接收數據包。當判斷為主機發起SETUP控制傳輸,收到DATA0包,此時USB Audio需回ACK給主機,狀態機跳入USB_TX;當判斷主機發起端點0的IN控制傳輸,收到IN包,此時USB Audio需回描述符給主機,狀態機跳入USB_TX;當判斷主機發起端點3的IN同步傳輸,收到IN包,此時USB Audio需輸出同步音頻數據給主機,狀態機跳入USB_TX。解碼狀態機主要功能用以處理控制傳輸和同步傳輸。狀態跳入USB_TX態時,解碼狀態機工作結束。在初始情況下,編碼狀態機處于USBtx_start態,輸出字節位計數器清0后,狀態機跳入USBtx_sync,輸出同步字段8'b0000_0001,輸出字節位計數器再次清0后,狀態機跳入USBtx_pid,之后根據輸出數據分組的具體情況跳轉狀態。例如:當接收到端點0的OUT包,USBtx_pid態輸出 PID為 ACK,狀態跳入USB_EOP;當接收到端點3的IN包,USBtx_pid態輸出PID為DATA0,狀態跳入USBtx_iso,同步數據輸出結束后,狀態跳入USBtx_crc,之后跳入USB_EOP。狀態機仿真波形如圖6所示。

圖6 狀態機仿真波形

3 FPGA硬件驗證結果

提出的串行接口引擎電路由Verilog HDL編程實現,通過NC-Verilog軟件仿真后,采用Altera公司的QuartusⅡ開發環境綜合并下載cyclone2 EP2C35芯片驗證平臺上,DAC為PT8211,ADC使用HI5812。通過USB邏輯分析儀抓取數據分析,圖7列舉了USB Audio正確回復給主機設備的描述符。同時USB Audio可以正確回復配置描述符、音頻控制接口描述符、音頻數據流接口描述符等,此處不再逐一列舉。從分析儀抓取的數據中,我們看到USB Audio能夠正確回復設備描述符給主機,可以被主機識別檢測到的,并且在FPGA驗證平臺上,聲音經過ADC芯片采集后通過USB Audio正常實現錄音以及放音功能。

圖7 USB Audio設備描述符

4 結論

本文在對USB協議中的串行接口引擎部分研究的基礎上,提出了一種USB Audio串行接口引擎模塊的設計方法,并用硬件描述語言加以實現。經FPGA硬件驗證,分析數據無誤,且錄放音功能正常實現。測試表明設計功能穩定,電路結構簡單,具備一定的通用性和可移植性。

[1]Sostari D,Vinko D,Svedek T.USB RF Front-End of the DRM Receiver under LabView API Environment[C]//Proceedings of the 35th International Convention of MIPRO.2012,218-221.

[2]曹玲芝,張恒.視頻處理系統高速USB接口設計[J].電子器件,2007,30(4):1337-1340.

[3]基于nRF2401無線USB串口轉換模塊[J].電子器件,2009,32(4):778-780.

[4]Universal Serial Bus Device Class Definition for Audio Device.Release 1.0[EB/OL].http://www.usb.org/developers/devclass_docs/audio10.pdf.March 18,1998.

[5]雍尚剛,鄧龍江,朱向東.USB設備控制器IP核系統設計及FPGA 實現[J].計算機工程與科學,2005,27(12):86-89.

[6]Xu Lijun,Gao Guohong,Li Xueyong et al.Video Collection System Based on Embedded System and USB Communication[C]//Second International Conference on Communication Systems Networks and Applications(ICCSNA).2010:112-114.

[7]Universal Serial Bus Specification.Revision1.1[EB/OL].http://esd.cs.ucr.edu/webres/usb11.pdf.1998.

[8]Universal Serial Bus Device Class Definition for Audio Data Formats.Release 1.0[EB/OL].http://www.usb.org/developers/devclass_docs/frmts10.pdf.March 18,1998.

[9]Ciletti M D.Verilog HDL高級數字設計[M].2版.北京:電子工業出版,2010:200-623.

[10]吳茶花.USB音頻系統設計[D].國防科學技術大學.2010:4-32.

猜你喜歡
引擎設備
以學促干 挺膺擔當 激活砥礪前行的紅色引擎
諧響應分析在設備減振中的應用
基于VB6.0+Access2010開發的設備管理信息系統
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
三生 三大引擎齊發力
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
如何在設備采購中節省成本
基于Cocos2d引擎的PuzzleGame開發
主站蜘蛛池模板: 国产精品熟女亚洲AV麻豆| 欧美在线导航| 97国产在线观看| 亚洲aaa视频| www.精品视频| 播五月综合| 国产欧美日韩精品第二区| 久久精品国产精品青草app| 精品一区二区三区水蜜桃| 国产经典三级在线| 久久久久无码国产精品不卡| 91久久偷偷做嫩草影院精品| 香蕉在线视频网站| 亚洲天堂网在线播放| 色婷婷视频在线| 国产精品大尺度尺度视频| 朝桐光一区二区| 美女被躁出白浆视频播放| 国产精品成人观看视频国产| 婷婷色在线视频| 免费无码在线观看| 亚洲无码37.| 国产成人乱无码视频| h网址在线观看| 毛片视频网| 久久久久久午夜精品| 一本无码在线观看| 日本妇乱子伦视频| 亚洲精品制服丝袜二区| 国产国产人成免费视频77777 | 青草娱乐极品免费视频| 亚洲人成在线精品| 国内毛片视频| 国产精品一区二区国产主播| 久久综合九色综合97婷婷| 在线观看精品自拍视频| 一区二区三区精品视频在线观看| 欧美啪啪网| 成人福利在线视频免费观看| 高清国产va日韩亚洲免费午夜电影| 久久久亚洲色| 成年女人18毛片毛片免费| 日韩美女福利视频| 国产一级裸网站| 欧美专区在线观看| 欧美成a人片在线观看| 婷婷99视频精品全部在线观看 | 国产尤物在线播放| 男女男精品视频| 国产va在线观看免费| 伊人婷婷色香五月综合缴缴情| 国产精品自拍合集| 小说区 亚洲 自拍 另类| 精品乱码久久久久久久| 影音先锋丝袜制服| 国产麻豆精品久久一二三| 91欧美亚洲国产五月天| 国产成人亚洲欧美激情| 精品乱码久久久久久久| 欧美国产视频| 国产SUV精品一区二区6| 国产成人免费| 美女视频黄频a免费高清不卡| 亚洲中文字幕无码mv| 成人国产小视频| 久久久久久国产精品mv| 久久精品国产一区二区小说| 不卡视频国产| 免费观看亚洲人成网站| 伊人AV天堂| 亚洲视频二| 91蜜芽尤物福利在线观看| 国产欧美日韩另类| 一级香蕉人体视频| 久久人搡人人玩人妻精品 | 四虎精品国产AV二区| 丰满人妻久久中文字幕| 99精品热视频这里只有精品7| 国产精品久久久久久搜索| 香蕉视频在线精品| 国产一级在线观看www色 | 2021最新国产精品网站|