国产在线导航,欧美日本中文,黄色在线观看网站永久免费乱码,chinese国产在线视频,亚洲欧洲第一视频,天天做人人爱夜夜爽2020毛片,亚洲欧美中文字幕在线网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>基于USB2.0的高速無(wú)線數(shù)傳接收設(shè)備的數(shù)據(jù)接收存儲(chǔ)方法

基于USB2.0的高速無(wú)線數(shù)傳接收設(shè)備的數(shù)據(jù)接收存儲(chǔ)方法

時(shí)間:2023-02-20 23:46:49 電子通信論文 我要投稿
  • 相關(guān)推薦

基于USB2.0的高速無(wú)線數(shù)傳接收設(shè)備的數(shù)據(jù)接收存儲(chǔ)方法

摘要:介紹了一種利用USB2.0接口芯片ISP1581并配合FPGA芯片EP1K30T144和DSP芯片TMS320F206實(shí)現(xiàn)無(wú)線數(shù)傳接收設(shè)備中數(shù)據(jù)接收存儲(chǔ)的方法。這種方法具有接口簡(jiǎn)單、使用方便等特點(diǎn)。

    關(guān)鍵詞:位同步 幀同步 USB2.0 差錯(cuò)控制

數(shù)據(jù)接收存儲(chǔ)技術(shù)革新是信號(hào)采集處理領(lǐng)域內(nèi)的一個(gè)重要課題。利用這種技術(shù),可以把信號(hào)的實(shí)時(shí)采集和精確處理在時(shí)間上分為兩個(gè)階段,有利于獲得令人更滿意的處理結(jié)果。在無(wú)線數(shù)傳接收設(shè)備中應(yīng)用數(shù)據(jù)接收存儲(chǔ)方法時(shí),除了要滿足數(shù)據(jù)傳輸速率和差錯(cuò)控制方面的要求外,還需要考慮如何使設(shè)備易于攜帶、接口簡(jiǎn)單、使用方便。

傳統(tǒng)外設(shè)接口技術(shù)不但數(shù)據(jù)傳輸速率較低,獨(dú)占中斷、I/O地址、DMA通道等計(jì)算機(jī)系統(tǒng)關(guān)鍵資源,容易造成資源沖突問(wèn)題,而且使用時(shí)繁雜的安裝配置手續(xù)也給終端用戶帶來(lái)了諸多不便。近年來(lái),USB接口技術(shù)迅速發(fā)展,新型計(jì)算機(jī)紛紛對(duì)其提供支持。USB2.0是USB技術(shù)發(fā)展的最新成果,利用USB2.0接口技術(shù)開(kāi)發(fā)計(jì)算機(jī)外設(shè),不但可以借用其差錯(cuò)控制機(jī)制[1][6]減輕開(kāi)發(fā)人員的負(fù)擔(dān)、獲得高速數(shù)據(jù)傳輸能力(480Mb/s),而且可以實(shí)現(xiàn)便捷的機(jī)箱外即插即用特性,方便終端用戶的使用。

1 無(wú)線數(shù)傳接設(shè)備總體構(gòu)成

無(wú)線數(shù)傳接收設(shè)備是某靶場(chǎng)測(cè)量系統(tǒng)的一個(gè)重要組成部分。如圖1所示,該設(shè)備由遙測(cè)接收機(jī)利用天線接收經(jīng)過(guò)調(diào)制的無(wú)線電波信號(hào),解調(diào)后形成傳輸速率為4Mb/s的RS-422電平差分串行數(shù)據(jù)流。以幀同步字打頭的有效數(shù)據(jù)幀周期性地出現(xiàn)在這些串行數(shù)據(jù)中。數(shù)據(jù)轉(zhuǎn)存系統(tǒng)從中提取出有效的數(shù)據(jù)幀,并在幀同步字后插入利用GPS接收機(jī)生成的本地時(shí)間信息,用于記錄該幀數(shù)據(jù)被接收到的時(shí)間,然后送給主機(jī)硬件保存。

在無(wú)線數(shù)傳接收設(shè)備中,數(shù)據(jù)轉(zhuǎn)存系統(tǒng)是實(shí)現(xiàn)數(shù)據(jù)接收存儲(chǔ)的關(guān)鍵子系統(tǒng)。下面將詳細(xì)介紹該系統(tǒng)的硬件實(shí)現(xiàn)及工作過(guò)程。
(范文先生網(wǎng)www.qkfawen.com收集整理)
2 數(shù)據(jù)轉(zhuǎn)存系統(tǒng)基本構(gòu)成及硬件實(shí)現(xiàn)

數(shù)據(jù)轉(zhuǎn)存系統(tǒng)主要由FPGA模塊、DSP模塊、USB2.0接口芯片構(gòu)成,各個(gè)模塊之間的相互關(guān)系如圖2所示示。圖中,4Mb/s的串行數(shù)據(jù)輸入信號(hào)SDI已由RS-422差分電平轉(zhuǎn)換為CMOS電平。為突出重點(diǎn),不太重要的信號(hào)連線未在圖中繪出。下面分別介紹這幾個(gè)模塊的主要功能。

2.1 FPGA模塊實(shí)現(xiàn)及春功能

FPGA模塊在Altera公司ACEX系列的EP1K30TI144-2芯片中實(shí)現(xiàn)。其中主要的功能子模塊有:位同步邏輯、幀同步邏輯、授時(shí)時(shí)鐘和譯碼邏輯。位同步邏輯主要由數(shù)字鎖相環(huán)構(gòu)成,用于從串行數(shù)據(jù)輸入信號(hào)SDI中恢復(fù)出位時(shí)鐘信號(hào)。幀同步邏輯從位同步邏輯的輸出信號(hào)提取幀同步脈沖。兩者為DSP利用其同步串行口接收串行數(shù)據(jù)作好準(zhǔn)備。這樣,利用一對(duì)差分信號(hào)線就可以接收同步串行數(shù)據(jù),簡(jiǎn)化了印制電路板的外部接口。授時(shí)時(shí)鐘在DSP和GSP接收機(jī)的協(xié)助下生成精度為0.1ms的授時(shí)信息。譯碼邏輯用于實(shí)現(xiàn)系統(tǒng)互聯(lián)。

2.2 DSP模塊實(shí)現(xiàn)及其功能

DSP模塊是數(shù)據(jù)轉(zhuǎn)存系統(tǒng)的主控模塊,在T1公司16位定點(diǎn)DSP芯片TMS320F206[4]中實(shí)現(xiàn)。在DSP的外部數(shù)據(jù)空間還配置了32KX16的高速SRAM,可以緩存80余幀數(shù)據(jù),用于提高系統(tǒng)的差錯(cuò)控制能力。DSP利用同步串行口接收FPGA送來(lái)的同步串行數(shù)據(jù),利用異步串口接收GPS接收機(jī)送來(lái)時(shí)間信息(用于初始化FPGA授時(shí)時(shí)鐘),利用外部總線接口訪問(wèn)FPGA授時(shí)時(shí)鐘、外部SRAM、ISP1581的片內(nèi)寄存器?梢钥闯鯠SP模塊主要用于完成數(shù)據(jù)幀的接收、重組以及轉(zhuǎn)存調(diào)度等任務(wù)。

    ISP1581芯片是PHILIPS公司推出的高速USB2.0設(shè)備控制器,實(shí)現(xiàn)了USB2.0/1.1物理層、協(xié)議層,完全符合USB2.0規(guī)范,即支持高速(480Mb/s)操作,又支持全速(12Mb/s)操作。ISP1581沒(méi)有內(nèi)嵌微處理器,但對(duì)微處理器操作了靈活的接口。在上電時(shí),通過(guò)配置BUS——CONF、DAO、MODE1、MODE0、DA1引腳電平可以適應(yīng)絕大多數(shù)的微處理器接口類型。例如,通過(guò)BUS_CONF/DA0引腳,總線配置可以選擇普通處理器模塊(Generic Phocessor mode)中分割總線模式(Split Bus Mode);在普通處理器模式下,通過(guò)MODE0/DA1引腳可以選擇讀寫(xiě)選通為8051風(fēng)格或者M(jìn)otorola風(fēng)格。

在數(shù)據(jù)轉(zhuǎn)存系統(tǒng)中,ISP1581用于處理主機(jī)的高速數(shù)據(jù)傳輸。它工作在普通處理器接口模式下,采用8051風(fēng)格的讀寫(xiě)選通信號(hào),由DSP芯片TMS320F206控制。兩者在選定工作方式下的信號(hào)連線如圖3所示,圖中未畫(huà)出的信號(hào)引腳可以懸空,供電引腳的連接方式在參考資料[2]第46頁(yè)有簡(jiǎn)明描述。在FPGA譯碼邏輯的作用下,ISP1581的片內(nèi)寄存器被映射在DSP的片外數(shù)據(jù)空間中。DSP通過(guò)8位地址線選擇要訪問(wèn)

的寄存器,在讀寫(xiě)選通信號(hào)的控制下,利用16位數(shù)據(jù)線與選定的寄存器交換數(shù)據(jù)。在訪問(wèn)ISP1581單字節(jié)寄存器時(shí),數(shù)據(jù)總線高字節(jié)內(nèi)容無(wú)關(guān)緊要。ISP1581通過(guò)中斷引腳INT向DSP報(bào)告發(fā)生的總線事件,利用D+、D-引腳完成與主機(jī)的數(shù)據(jù)交換。

3 數(shù)據(jù)轉(zhuǎn)存系統(tǒng)的工作過(guò)程

系統(tǒng)加電后,當(dāng)FPGA配置過(guò)程結(jié)束時(shí),如果有串行數(shù)據(jù)輸入,位同步邏輯和幀同步邏輯便啟動(dòng)同步過(guò)程。同時(shí),DSP片內(nèi)FLASH中復(fù)位中斷服務(wù)程序c_int0()[4]被立即執(zhí)行,在建立好C語(yǔ)言的工作環(huán)境下,它會(huì)調(diào)用主函數(shù)main()。在main()中,需要安排好一系列有先后順序的初始化工作。其中,ISP1581的初始化過(guò)程比較復(fù)雜,需要考慮設(shè)備采用的供電方式(這里為自供電[6]方式)、插接主機(jī)和系統(tǒng)上電的先后次序,并需要與USB總線枚舉[1][6]過(guò)程相結(jié)合。

在FPGA中的位同步邏輯和幀同步邏輯均進(jìn)入同步狀態(tài),且DSP主控模塊配合主機(jī)完成初始化任務(wù)后,即可啟動(dòng)數(shù)據(jù)的傳輸過(guò)程。下面介紹一下ISP1581的初始化過(guò)程及DSP控制的數(shù)據(jù)幀的接收機(jī)轉(zhuǎn)存流程。

3.1 ISP1581的初始化

在初始化過(guò)程中,首先需要設(shè)置影響ISP1581自身工作方式的一些寄存器,然后與主機(jī)端USB系統(tǒng)配合進(jìn)行,應(yīng)答來(lái)自主機(jī)端的設(shè)備請(qǐng)求。當(dāng)數(shù)據(jù)轉(zhuǎn)存系統(tǒng)板作為USB 2.0設(shè)備通過(guò)連接器連到主機(jī)USB根集線器上的一個(gè)端口時(shí),主機(jī)便可檢測(cè)到這一連接,接著給該端口加電,檢測(cè)設(shè)備并激活該端口,向USB設(shè)備發(fā)送復(fù)位信號(hào)。設(shè)備收到這一復(fù)位信號(hào)后,即進(jìn)入缺省狀態(tài),此后就能夠通過(guò)缺省通信通道響應(yīng)主機(jī)端送來(lái)的設(shè)備請(qǐng)求。主機(jī)通過(guò)描述符請(qǐng)求(GET_DESCRIPTOR)獲得設(shè)備端的詳細(xì)信息,通過(guò)設(shè)置地址請(qǐng)求(SET_ADDRESS)設(shè)置設(shè)備地址,通過(guò)設(shè)置配置請(qǐng)求(SET_CONFIGURATION)選定合適的設(shè)備配置。在設(shè)備成功響應(yīng)了這些設(shè)備請(qǐng)求之后,就可以與主機(jī)通信了。

    在響應(yīng)主機(jī)請(qǐng)求的過(guò)程中,DSP需要配置ISP1581的端點(diǎn)以實(shí)現(xiàn)不同類型的傳輸通道。根據(jù)數(shù)據(jù)傳輸速率的要求,除了缺省的控制通道外,系統(tǒng)中實(shí)現(xiàn)了一個(gè)批傳輸(bulk)[1]類型的輸入通道。這樣,ISP1581就可以像FIFO一樣方便地從數(shù)據(jù)轉(zhuǎn)存系統(tǒng)向主機(jī)傳輸數(shù)據(jù),而且具有差錯(cuò)控制能力,簡(jiǎn)化了設(shè)備端軟件設(shè)計(jì)的復(fù)雜性。

3.2 數(shù)據(jù)幀的接收轉(zhuǎn)存過(guò)程

系統(tǒng)正常工作時(shí),需要與主機(jī)端程序相互配合。主要端需要開(kāi)發(fā)者實(shí)現(xiàn)的程序包括設(shè)備驅(qū)動(dòng)程序和應(yīng)用程序。在Windows 2000操作系統(tǒng)下,USB設(shè)備驅(qū)動(dòng)程序?yàn)閃DM模型的驅(qū)動(dòng)程序,開(kāi)發(fā)環(huán)境DriverStudio為WDM型驅(qū)動(dòng)程序提供了框架結(jié)構(gòu),使得驅(qū)動(dòng)開(kāi)發(fā)變得非常容易(參見(jiàn)參考文獻(xiàn)[5]第八、九、十章)。驅(qū)動(dòng)程序接收應(yīng)用程序的請(qǐng)求,利用USB總線驅(qū)動(dòng)程序(US-BD)和主機(jī)控制器驅(qū)動(dòng)程序(HCD)通過(guò)主機(jī)控制器安排USB總線事務(wù),設(shè)備端則根據(jù)這些事務(wù)調(diào)度相應(yīng)的數(shù)據(jù)幀的傳輸。關(guān)于主機(jī)端口如何安排總線事務(wù)可以查閱參考文獻(xiàn)[1]。以下著重介紹設(shè)備端數(shù)據(jù)的調(diào)度過(guò)程。

數(shù)據(jù)幀的接收轉(zhuǎn)存過(guò)程主要由DSP負(fù)責(zé),DSP在外部SRAM中建立了一個(gè)數(shù)據(jù)幀的隊(duì)列,如圖4所示。系統(tǒng)主要工作在中斷驅(qū)動(dòng)模式下,與同步串行口相關(guān)的中斷服務(wù)程序負(fù)責(zé)建立隊(duì)列的尾部,對(duì)應(yīng)于ISP1581中斷引腳INT的中斷服務(wù)程序負(fù)責(zé)建立隊(duì)列的頭部。

當(dāng)以幀同步字打頭的一幀數(shù)據(jù)以串行位流的形式到來(lái)時(shí),F(xiàn)PGA產(chǎn)生的幀同步脈沖可以直接啟動(dòng)DSP同步串行口接收數(shù)據(jù),該同步脈沖同時(shí)以中斷方式通知DSP為一幀數(shù)據(jù)的接收做好準(zhǔn)備。DSP接到通知后,首先檢查外部SRAM中是否有足夠的空間容納一幀數(shù)據(jù)。如果沒(méi)有空間,則丟棄當(dāng)前數(shù)據(jù)幀(根據(jù)設(shè)計(jì),這種情況是很少見(jiàn)的);如果有空間,則為當(dāng)前數(shù)據(jù)幀保留足夠的空間。接著在幀起始位置填寫(xiě)幀步字,讀取授時(shí)時(shí)鐘的當(dāng)前值并填寫(xiě)在幀同步字后。這樣,一個(gè)新的數(shù)據(jù)幀(圖4中數(shù)據(jù)幀F(xiàn)_N)就建立了,但是并沒(méi)有加入到隊(duì)列中,而是要等待來(lái)自同步串行口的后繼數(shù)據(jù)嵌入該幀中后再加入到隊(duì)列中。

同步串行口的接收緩沖區(qū)在接收到若干字(由初始化時(shí)的設(shè)置決定)后,會(huì)向DSP提出中斷請(qǐng)求。在中斷服務(wù)程序中,DSP讀取接收緩沖區(qū)中的內(nèi)容,并將其填入上述新開(kāi)辟的幀F(xiàn)_N中。在一幀數(shù)據(jù)接收完畢后,就將該幀添加到隊(duì)列的尾部,表示該幀數(shù)據(jù)已經(jīng)準(zhǔn)備好(圖4中數(shù)據(jù)幀F(xiàn)_R),可以通過(guò)ISP1581送給主機(jī)硬件保存。

    DSP在查詢到隊(duì)列中有已經(jīng)準(zhǔn)備好的數(shù)據(jù)幀存在時(shí),就設(shè)置ISP1581的端點(diǎn)索引寄存器(Endpoint Index Register)使其指向初始化時(shí)配置的批傳輸輸入端點(diǎn),然后將隊(duì)列首幀數(shù)據(jù)通過(guò)ISP1581的數(shù)據(jù)端口寄存器(Data Port Register)填寫(xiě)在端點(diǎn)緩沖區(qū)中。在端點(diǎn)緩沖區(qū)被填滿后,它就自動(dòng)生效。在不能填滿端點(diǎn)緩沖區(qū)的情況下,可以通過(guò)設(shè)置控制功能寄存器(Control Function Register)的VENDP位[2]強(qiáng)制該端點(diǎn)緩沖區(qū)生效。端點(diǎn)緩沖區(qū)生效后,在USB總線上下一IN令牌到來(lái)時(shí),該端點(diǎn)緩沖區(qū)中的數(shù)據(jù)就通過(guò)USB總線傳輸?shù)街鳈C(jī)中。主機(jī)成功接收到數(shù)據(jù)后,會(huì)給ISP1581以ACK應(yīng)答。能夠通過(guò)INT引

腳報(bào)告給DSP,DSP就可以繼續(xù)往端點(diǎn)中填寫(xiě)該幀其余數(shù)據(jù)。

在隊(duì)列首幀數(shù)據(jù)被成功轉(zhuǎn)移到主機(jī)后,DSP就丟棄首幀數(shù)據(jù)。如果隊(duì)列在還有數(shù)據(jù)幀,則將次首幀作為首幀,繼續(xù)前述傳輸過(guò)程;如果沒(méi)有要傳輸?shù)臄?shù)據(jù)幀,則為隊(duì)列首幀指針Head_Ptr賦空值(NULL),等待新的數(shù)據(jù)幀的到來(lái)。

USB2.0是計(jì)算機(jī)外設(shè)接口技術(shù)發(fā)展的最新成功,具有廣闊的應(yīng)用前景。本文介紹了PHILIPS公司USB2.0接口芯片ISP1581在無(wú)線數(shù)據(jù)接收設(shè)備中的應(yīng)用。高性能、便攜化的無(wú)線數(shù)據(jù)傳接收設(shè)備。其在靶場(chǎng)實(shí)彈試驗(yàn)中受到了用戶的好評(píng)。



【基于USB2.0的高速無(wú)線數(shù)傳接收設(shè)備的數(shù)據(jù)接收存儲(chǔ)方法】相關(guān)文章:

基于USB2.0總線的高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)08-06

基于USB2.0的高速同步數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)08-06

基于USB2.0的同步高速數(shù)據(jù)采集器的設(shè)計(jì)08-06

基于伯努利大數(shù)定律的云存儲(chǔ)數(shù)據(jù)方法研究08-18

基于USB總線的高速數(shù)據(jù)采集系統(tǒng)08-06

USB2.0接口和DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)08-06

具有USB2.0接口的高速數(shù)據(jù)采集卡設(shè)計(jì)08-06

基于無(wú)線收發(fā)數(shù)傳模塊PTR2030的溫度測(cè)控系統(tǒng)設(shè)計(jì)08-06