當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀]摘 要:介紹了一種利用USB2.0的高速傳輸特性,基于USB和DSP的數(shù)據(jù)采集系統(tǒng)。詳細論述了系統(tǒng)的總體結構、部分硬件設計,并簡要敘述了相應固件程序的實現(xiàn)。關鍵詞:USB DSP FPGA 高速

摘 要:介紹了一種利用USB2.0的高速傳輸特性,基于USB和DSP的數(shù)據(jù)采集系統(tǒng)。詳細論述了系統(tǒng)的總體結構、部分硬件設計,并簡要敘述了相應固件程序的實現(xiàn)。
關鍵詞:USB DSP FPGA 高速傳輸
測量儀器一般由數(shù)據(jù)采集、數(shù)據(jù)分析和顯示三部分組成,而數(shù)據(jù)分析和顯示可以由PC機的軟件來完成,因此只要額外提供一定的數(shù)據(jù)采集硬件就可以和PC機組成測量儀器。這種基于PC機的測量儀器被稱為虛擬儀器[1]。而在一些數(shù)據(jù)量比較大、采集時間比較長的場合,就需要采用高速的數(shù)據(jù)傳輸通道?;谔摂M儀器的思想和高速傳輸通道的要求,設計了一種基于DSP和USB2.0的高速數(shù)據(jù)傳輸接口。
1 數(shù)據(jù)采集系統(tǒng)硬件
數(shù)據(jù)采集系統(tǒng)由A/D數(shù)據(jù)采集單元、USB從接口單元、U盤讀寫單元組成。硬件原理圖如圖1所示。被測信號經A/D轉換后寫入FIFO中;當FIFO數(shù)據(jù)半滿后,產生中斷,通知DSP進行數(shù)據(jù)壓縮處理;DSP把壓縮好的數(shù)據(jù)依次寫入USB接口芯片的4個從FIFO中,4個從FIFO對應USB的4個端點,DSP一邊寫入數(shù)據(jù),已寫滿的從FIFO就一邊通過相應端點由SIE把數(shù)據(jù)發(fā)送到上位機,上位機一邊把收到的數(shù)據(jù)通過多線程存儲到硬盤中,一邊把數(shù)據(jù)解壓并把波形實時顯示出來。對于少量的數(shù)據(jù),可以存儲到U盤,送回PC機進行分析顯示。


1.1 A/D采集模塊
作為單通道輸入的MAX1189,主要控制信號有CS、R/C(Read/Conversion)、EOC(End of Conversion)。圖2為MAX1189的時序圖[2]。如圖2所示,每個采樣周期長達CS信號的三個周期。在第一個CS信號的下降沿,如果R/C為低電平,也就進入了應答模式,這是開始采樣前必須的準備工作。為了適應不同的輸入極性要求,MAX1189的內部參考電壓可以在每次轉換結束后進行設置,這是通過在第二個CS下降沿時,R/C的高低電平變化來控制的,非常簡便。低電平時,ADC內部參考電壓無需進行轉換,這樣在開始下一個周期的轉換時無需等待電壓的變化。高電平時,內部參考電壓會進行調變,這樣在開始下一周期的轉換時需要等待大約12?滋s的時間。在CS信號的第三個下降沿,EOC信號變?yōu)榈碗娖?,表示采樣結束,此時R/C信號為高電平,會把采樣數(shù)據(jù)放到總線上,這樣就完成了一個周期的采樣。采樣模塊的控制信號是由FPGA控制的。


1.2 DSP與FIFO的連接
主處理器DSP既要控制采集,又要完成數(shù)據(jù)的處理和傳輸,因此數(shù)據(jù)采集模塊采集來的數(shù)據(jù)不能直接傳送給DSP,這會極大影響DSP的處理效率。解決辦法是利用數(shù)據(jù)緩沖器如雙口RAM、FIFO等,對數(shù)據(jù)進行適度緩存,當緩存的數(shù)據(jù)量達到一個設定值時,可以通知CPU進行一次高速數(shù)據(jù)傳輸,將緩存的數(shù)據(jù)一次性地讀入。在設計中采用了緩沖,較好地解決了采集端與處理端的速度匹配問題。
FIFO的讀寫由各自的控制時鐘FIFOR和FIFOW控制,寫時鐘與采樣時鐘同步,讀時鐘與DSP處理數(shù)據(jù)的時序有關。當FIFO半滿后,F(xiàn)PGA會根據(jù)FIFOHF、FIFOE/F、FIFOPAFE的相應位判斷FIFO是否半滿,F(xiàn)PGA便向DSP發(fā)出中斷請求。本設計中采用外部中斷的EXTINT3來作為FIFO緩沖數(shù)據(jù)的DMA傳輸觸發(fā)事件。DSP響應FPGA中斷請求,讀取數(shù)據(jù)進行數(shù)據(jù)壓縮。當DSP數(shù)據(jù)處理速度跟不上采集數(shù)據(jù)速度時,F(xiàn)IFO就會全滿,F(xiàn)PGA根據(jù)FIFOHF、FIFOE/F、FIFOPAFE相應位狀態(tài)判斷到FIFO已全滿,于是向USB接口芯片單片機發(fā)出最高級中斷請求,通知系統(tǒng)數(shù)據(jù)己溢出,采集發(fā)生嚴重錯誤。
1.3 USB從接口電路
USB從接口單元采用CYPRESS的CY7C68013芯片。如圖3所示,USB接口芯片CY7C68013由3.3V電源供電。PAO/INTO#選擇INTO工作方式,其中斷級別最高,當FIFO全滿造成數(shù)據(jù)溢出導致數(shù)據(jù)采集發(fā)生嚴重錯誤時,該中斷請求發(fā)生,系統(tǒng)通知數(shù)據(jù)溢出錯誤,并停止數(shù)據(jù)采集。RESET#為USB接口芯片復位輸入。


USB的FDO~FDl5與DSP的I/O數(shù)據(jù)線相連,用于DSP與USB從FIFO通信,SLWR為寫控制時鐘。FLAGB、FLAGC用于輸出2,4,6,8相應端點從FIFO的空滿狀態(tài),以便DSP寫USB從FIFO時獲取空滿狀態(tài)。
FIFOADRO、FIFOADR1用于DSP尋址2,4,6,8相應端點USB從FIFO,F(xiàn)IFOADRO及FIFOADR1功能真值表如表1所示。FIFOADRO、FIFOADR1的初值為00,對應DSP寫端點2的從FIFO, FPGA對寫USB從FIFO的控制時鐘SLWR計數(shù),當達到512次時,表示端點2己寫滿,計數(shù)器清零,F(xiàn)IFOADRO和FIFOADR1的值自加一次變?yōu)?1,對應DSP寫端點4的從FIFO。以此類推,DSP依次寫2,4,6,8端點數(shù)據(jù),當FIFOADRO和FIFOADR1的值為11時,再自加一次,F(xiàn)IFOADRO和FIFOADR1的值又變?yōu)?0,因此,DSP可循環(huán)寫2,4,6,8端點。需要說明的是,當DSP開始寫一新端點的從FIFO之前,DSP要讀一次FLAGB、FLAGC標志位,若該端點不空,則等待;若空,則進行寫數(shù)據(jù)操作[3]。


1.4 U盤讀寫單元
此電路單元采用USB主控芯片CH375。CH375 是一USB總線的通用接口芯片,支持USB-HOST主機方式和USB-DEVICE/SLAVE設備方式。此系統(tǒng)中只采用USB的主功能,用來讀寫U盤[4]。
CH375 芯片的RD#和WR#引腳分別連接DSP的讀選通輸出引腳和寫選通輸出引腳。CS#由地址譯碼電路驅動。INT#輸出的中斷請求是低電平有效,可以連接到DSP的中斷輸入引腳。當WR#為高電平并且CS#和RD#及A0都為低電平時,CH375中的數(shù)據(jù)通過D7~D0 輸出;當RD#為高電平并且CS#和WR#及A0都為低電平時,D7~D0上的數(shù)據(jù)被寫入CH375芯片中;當RD#為高電平并且CS#和WR#都為低電平而A0 為高電平時,D7~D0上的數(shù)據(jù)被作為命令碼寫入CH375芯片中。CH375內置了處理Mass-Storage 海量存儲設備的專用通訊協(xié)議的固件,DSP可以直接以扇區(qū)為基本單位讀寫常用的USB 存儲設備(包括USB硬盤/USB閃存盤/U 盤)。
2 軟件設計
本設計的軟件主要由兩大部分組成:USB芯片軟件及DSP通信軟件。其中,USB芯片軟件的設計是關鍵,它又包括固化程序、驅動程序、PC機端應用程序[5]以及DSP端通信接口程序。
2.1 固化程序
USB芯片的固化程序主要負責:
(1) 寄存器初始化工作,設置一些特殊功能寄存器的初值以實現(xiàn)所需的屬性或者功能;
(2) 輔助硬件完成設備的枚舉過程,對主機的設備請求作出適當?shù)捻憫?br />(3) 完成中斷處理、數(shù)據(jù)接收及發(fā)送以及對外圍電路的控制。
2.2 驅動程序
開發(fā)USB設備驅動程序可采用Jungo公司的WinDriverv6.03,并以VC++6.0作為輔助開發(fā)環(huán)境。利用WinDriver提供的開發(fā)平臺,用戶即可完成驅動程序的設計工作,剩下的底層細節(jié)由WinDriver內核統(tǒng)一處理,從而降低了對開發(fā)者編程能力的要求,同時也大大縮短了開發(fā)周期。下面對使用WinDriver開發(fā)驅動程序的步驟作一個簡要說明:
(1) 啟動WinDriver的DriverWizard工具;
(2) 利用DriverWizard檢測硬件是否正常;
(3) 在DriverWizard中選擇所使用的開發(fā)環(huán)境,這里使用VC6.0開發(fā)環(huán)境,并生成驅動程序代碼;
(4) 對生成的代碼進行修改,使其符合系統(tǒng)的需要;
(5) 在WinDriver環(huán)境的用戶模式下調試驅動程序。
2.3 PC端應用程序
USB主機應用程序是計算機中完成特定功能的程序,其關鍵是實現(xiàn)從USB 外設讀取或發(fā)送特定數(shù)量的數(shù)據(jù)、USB標準設備請求和特定的命令等。另外,可以對數(shù)據(jù)做進一步的處理,如:存儲、顯示、快速傅立葉變換等。
主機應用程序的編寫使用VC編譯環(huán)境中的API函數(shù)實現(xiàn)。應用程序的編程方法與串口編程類似。首先必須查找設備,調用WIN32函數(shù)CreateFilea( )打開設備的句柄;然后調用WIN32函數(shù)DeviceIoControl( )就可以進行數(shù)據(jù)讀寫和控制操作;最后關閉設備句柄。
2.4 DSP端通信接口程序
在本設計中,DSP處于主控地位,通過INT中斷決定什么時候接收USB送來的數(shù)據(jù),并把接收來的數(shù)據(jù)做簡單的壓縮運算,決定何時往USB發(fā)送這些數(shù)據(jù)。在讀數(shù)據(jù)時,應首先判斷FX2的FIFO2是否為空,如果不為空則將數(shù)據(jù)讀進來,一次讀進一個16位數(shù)。在寫數(shù)據(jù)時,首先判斷要寫的數(shù)據(jù)個數(shù)是否為512字節(jié)的整倍數(shù)。
由于開發(fā)此系統(tǒng)涉及到USB驅動開發(fā)以及應用程序的設計,比較繁瑣,嘗試利用Mass Storage協(xié)議開發(fā)虛擬設備,把數(shù)據(jù)采集卡當作一個Windows的外圍設備,采用文件系統(tǒng)格式直接以文件形式存儲數(shù)據(jù)。這部分主要是修改CY7C68013的固件程序,如設備描述符、端點描述符,主機會把采集卡認為是一Mass Storage設備,然后利用SCSI協(xié)議以及文件系統(tǒng)就可以直接存儲由DSP傳過來的數(shù)據(jù),這樣就省去了復雜的驅動和應用程序設計。
本文介紹了基于USB2.0的16bit數(shù)據(jù)采集系統(tǒng),采用數(shù)據(jù)壓縮算法完成了數(shù)據(jù)量的壓縮以及高速數(shù)據(jù)傳輸[6]。由于USB的即插即用特性,彌補了傳統(tǒng)數(shù)據(jù)采集卡插拔困難的缺點,相信隨著技術的進步,USB技術必將得到更廣泛的應用。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉