基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于USB2.0的MPEG視頻卡的設(shè)計(jì)與實(shí)現(xiàn)

摘要:本文介紹了一種基于接口的MPEG視頻卡的設(shè)計(jì)方案及其軟硬件設(shè)計(jì)方法。

關(guān)鍵詞:USB;視頻卡;MPEG;WDM

通用串行總線(UniversalSerialBus,即USB)以其方便的即插即用和熱插拔特性,以及較高的傳輸速率,成為PC領(lǐng)域廣為應(yīng)用的外設(shè)連接規(guī)范。目前,國(guó)內(nèi)外普遍采用的是規(guī)范,它支持兩種傳輸速率:和12Mbps,主要應(yīng)用在低速傳輸要求的場(chǎng)合。2000年發(fā)布的規(guī)范提供了480Mbs的傳輸速率,以滿足更快的數(shù)據(jù)傳輸要求。

為了使MPEG視頻卡快速地向PC機(jī)傳送大量的數(shù)據(jù),我們?cè)谠O(shè)計(jì)MPEG視頻卡與PC機(jī)的接口時(shí)采用技術(shù)。對(duì)USB的設(shè)計(jì)與開(kāi)發(fā),我們是基于CYPRESS公司的EZ-USBFX2系列的CY7C68013芯片及其FX2開(kāi)發(fā)包。

1、硬件設(shè)計(jì)

傳統(tǒng)的采用PCI接口的MPEG視頻卡,不但占用了有限的PCI插槽,安裝不方便,而且不支持熱插拔和即插即用。所以,在本設(shè)計(jì)中,我們選用接口芯片對(duì)傳統(tǒng)的MPEG視頻卡進(jìn)行了改進(jìn)。

改進(jìn)后的接口的方案如圖1所示。

該接口的MPEG視頻卡的工作原理為:音視頻信號(hào)經(jīng)AK4550音頻處理芯片及AA7113視頻處理芯片進(jìn)行A/D轉(zhuǎn)換,將模擬信號(hào)轉(zhuǎn)換成8bit的PCM格式的數(shù)字信號(hào),傳入SZ1510音視頻壓縮采集芯片進(jìn)行處理,將編碼調(diào)制PCM格式的數(shù)據(jù)轉(zhuǎn)化為符合格式MPEG-1的混合影視文件,最后MPEG-1數(shù)據(jù)經(jīng)USB接口芯片送給PC機(jī)作進(jìn)一步的處理,如存儲(chǔ)、顯示等。

設(shè)計(jì)中,我們選用的USB接口芯片是EZ-USBFX2系列的CY7C68013芯片。該芯片是針對(duì)的,而且和兼容,它支持兩種傳輸速率:全速12Mbps和高速480Mbps,它不支持低速(Low_speed)。該芯片的內(nèi)部結(jié)構(gòu)如圖2所示。

CY7C68013-128AC內(nèi)部集成了一個(gè)增強(qiáng)的8051內(nèi)核,它既與標(biāo)準(zhǔn)的8051兼容,又有諸多的改進(jìn):最高工作頻率48MHZ,一個(gè)指令周期只需4個(gè)時(shí)鐘周期,比標(biāo)準(zhǔn)的8051平均提高了倍;2個(gè)UARTS端口;3個(gè)定時(shí)/記數(shù)器;擴(kuò)展的中斷系統(tǒng)及其更多I/O口等。CY7C68013內(nèi)部集成的的SIE能完成大部分協(xié)議的處理工作,減少了用戶對(duì)繁雜的USB協(xié)議的處理。另外,用戶在開(kāi)發(fā)時(shí),可以利用GPIF和FIFO方式實(shí)現(xiàn)與高速外圍設(shè)備之間的邏輯連接,并進(jìn)行高速數(shù)據(jù)的傳輸。在該改進(jìn)方案中,我們選用的是GPIF方式,實(shí)現(xiàn)和Z1510之間的通信。

2、軟件設(shè)計(jì)

USB軟件設(shè)計(jì)包括三方面的工作:固件設(shè)計(jì),驅(qū)動(dòng)程序設(shè)計(jì)和主機(jī)端應(yīng)用程序的設(shè)計(jì)。

固件設(shè)計(jì)

設(shè)計(jì)中,我們考慮到MPEG視頻卡要求快速地持續(xù)地傳送大量數(shù)據(jù),并對(duì)數(shù)據(jù)的完整性要求不太高,我們采用ISO傳輸方式。另外,我們讓CY7C68013工作在GPIF模式下的FIFORead方式,最多可以傳輸4Gbyte或word。外設(shè)的數(shù)據(jù)由于不需8051的處理,我們采用自動(dòng)打包的方式,直接從FIFO到SIE,這樣有利于提高傳輸速率。其主要實(shí)現(xiàn)代碼

voidTD_Init()

{

CPUCS=0X01;[1:0]=10;for48MHzoperation.

GpifInit();

……

SYNCDELAY;

EP6CFG=0XDA;點(diǎn)配置:同步IN方式、緩沖大小1024字節(jié)

SYNCDELAY;

FIFORESET=0X80;//activateNAK_ALLtoavoidraceconditions

SYNCDELAY;

FIFORESET=0X06;,FIFO6

SYNCDELAY;

FIFORESET=0X00;NAK_ALL

SYNCDELAY;

EP6FIFOCFG=0X0D;

SYNCDELAY;

……

}

驅(qū)動(dòng)程序設(shè)計(jì)

在WINDOWS平臺(tái)下,USB驅(qū)動(dòng)程序由三部分組成:USB設(shè)備驅(qū)動(dòng)程序,USB總線驅(qū)動(dòng)程序和USB主控制器驅(qū)動(dòng)程序,它們必須遵循WIN32驅(qū)動(dòng)程序模型。其中,WINDOWS操作系統(tǒng)已經(jīng)提供了處于驅(qū)動(dòng)程序棧底的USB總線驅(qū)動(dòng)程序和USB主控制器驅(qū)動(dòng)程序。而USB設(shè)備驅(qū)動(dòng)程序由設(shè)備開(kāi)發(fā)者編寫,它通過(guò)向USB總線驅(qū)動(dòng)程序發(fā)送包含URB的IRP(I/ORequestPacket),來(lái)實(shí)現(xiàn)USB外設(shè)之間的信息交換。當(dāng)主機(jī)應(yīng)用程序要對(duì)USB設(shè)備進(jìn)行I/O操作時(shí),它調(diào)用WindowsAPI函數(shù)對(duì)Win32子系統(tǒng)進(jìn)行Win32調(diào)用,由I/O管理器將此請(qǐng)求構(gòu)造成一個(gè)合適的IRP,并把它傳遞給USB設(shè)備驅(qū)動(dòng)程序。USB設(shè)備驅(qū)動(dòng)程序接受到這個(gè)IRP后,根據(jù)IRP中包含的具體操作代碼,構(gòu)造響應(yīng)的URB并把它放到一個(gè)新IRP中,然后把此IRP傳遞到USB總線驅(qū)動(dòng)程序,USB總線驅(qū)動(dòng)程序根據(jù)IRP中所包含的URB執(zhí)行響應(yīng)的操作,并把操作結(jié)果通過(guò)IRP返還給USB設(shè)備驅(qū)動(dòng)程序。

USB設(shè)備驅(qū)動(dòng)程序接受到此IRP后,將操作結(jié)果通過(guò)IRP返還I/O管理器。最后,I/O管理器將此IRP中操作結(jié)果返還給應(yīng)用程序,至此應(yīng)用程序?qū)SB設(shè)備的一次I/O操作完成。

開(kāi)發(fā)USB設(shè)備驅(qū)動(dòng)程序,可采用Numega公司的開(kāi)發(fā)包DriverWorks和Microsoft公司的2000DDK,并以VC++作為輔助開(kāi)發(fā)環(huán)境。DriverWorks提供的驅(qū)動(dòng)向?qū)?,可根據(jù)用戶的需要,自動(dòng)生成代碼框架。減少了開(kāi)發(fā)的難度,縮短了開(kāi)發(fā)的周期。

在CYPRESS公司的EZ-USBFX2開(kāi)發(fā)包中,有一個(gè)通用的驅(qū)動(dòng)程序,該程序可不加修改經(jīng)DDK編譯后直接使用。在本設(shè)計(jì)中,由于時(shí)間關(guān)系,我們采用的就是這個(gè)通用驅(qū)動(dòng)程序。

應(yīng)用程序設(shè)計(jì)

USB主機(jī)應(yīng)用程序是計(jì)算機(jī)中完成特定功能的程序,其關(guān)鍵是實(shí)現(xiàn)從USB外設(shè)讀取或發(fā)送特定數(shù)量的數(shù)據(jù),USB標(biāo)準(zhǔn)設(shè)備請(qǐng)求和特定的命令等。另外,可以對(duì)數(shù)據(jù)做進(jìn)一步的處理,如:存儲(chǔ)、顯示、快速傅立葉變換等。在WINDOWS2000下,我們所使用的應(yīng)用程序開(kāi)發(fā)工具是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論