OTG技術(shù)在存儲測試中的應(yīng)用
存儲測試是在對被測對象無影響或影響在允許范圍的條件下,在被測體或測試現(xiàn)場放置微型數(shù)據(jù)采集與存儲測試儀,現(xiàn)場實時完成信息的快速采集與記憶,事后回收并由計算機處理和再現(xiàn)測試信息的一種動態(tài)測試技術(shù)。存儲測試的主要技術(shù)特點是現(xiàn)場實時快速完成動態(tài)數(shù)據(jù)采集與存儲記憶,特別是在多種惡劣環(huán)境和緊湊設(shè)計條件下完成動態(tài)參數(shù)測試,事后回收處理再現(xiàn)。傳統(tǒng)的存儲測試儀存在著如下不足:
本文引用地址:http://cafeforensic.com/article/201609/296669.htm(1)存儲介質(zhì)置于儀器內(nèi)部,回讀數(shù)據(jù)必須將整個儀器伺收。由于存儲測試所面臨的測試環(huán)境復(fù)雜,往往加裝了復(fù)雜、笨重的防護體或置于掩體中,給儀器的拆卸回收造成了困難。而戶外回讀分析數(shù)據(jù)往往受條件所限難以續(xù)施。 (2)隨著存儲測試技術(shù)的發(fā)展,存儲測試所面臨的對豫和環(huán)境日趨復(fù)雜,測試時間和所需容量靈活多變,并逐步加大。由于傳統(tǒng)的存儲測試儀設(shè)計結(jié)構(gòu)所限,不同容量就意味著要重新設(shè)計生產(chǎn)新的儀器。
(3)當(dāng)前的計算機主板普遍集成了USB接口,存儲測試儀一貫采用的"大端口"如:并口、串口等已逐漸被拋棄。一些新推出的主板甚至只集成了。 USB 口。存儲測試儀接口必須適應(yīng)這一轉(zhuǎn)變,通過一定的措施實現(xiàn)基于。USB 口的通信。本設(shè)計采用南京沁恒公司的CH375和Atmel的ATMEGA32單片機所設(shè)計的存儲測試儀有效克服了以上的不足,在實際應(yīng)用中取得了良好的效果。U盤作為新型移動存儲設(shè)備,以體積小、速度快、抗震動、通用性強的特點備受青睞。該系統(tǒng)通過單片機對U盤進行讀寫操作,采集數(shù)據(jù)按文件方式直接存儲到U盤,可以有效提高數(shù)據(jù)保存速度及可靠性。特別適合于長時問、大容量數(shù)據(jù)采集的場合,方便了與PC等上位機進行數(shù)據(jù)交換,從而實現(xiàn)現(xiàn)場采集數(shù)據(jù)、室內(nèi)分析數(shù)據(jù)。通過更換U盤可以靈活選擇系統(tǒng)容量,極大地提高了存儲測試儀的通用性,降低了測試成本。
2 USB OTG及海量存儲設(shè)備協(xié)議
作為USB 2.0的補充規(guī)范USB OTG(On The Go)以其雙重強大功能使USB設(shè)備擺脫了對PC的完全依賴,USB外設(shè)在無PC主機參與的情況下可以直接互連以進行通信。USB通信以分層方式進行,總體上可分為功能層、USB設(shè)備層和總線接口層。U盤屬于USB家族內(nèi)的海量存儲(USB Mass Storage)設(shè)備,是一種基于塊/扇區(qū)的隨機存儲設(shè)備,他與主機之間采用"控制/批量/中斷"(CBI)方式或"批量"(Bulk-Only)方式與主機通信。USB通信協(xié)議規(guī)范十分復(fù)雜,'USB海量存儲協(xié)議包括CBI,Bulk-Only,ATA和UFI等4個獨立的子類規(guī)范。前2個子規(guī)范定義了數(shù)據(jù)/命令/狀態(tài)在USB總線上的傳輸方法,后2個子規(guī)范定義了存儲介質(zhì)的操作命令。其中,ATA命令規(guī)范用于硬盤,UFI命令規(guī)范則是針對USB移動存儲制定的。U盤在進行數(shù)據(jù)保存之前,必須先按某個文件系統(tǒng)的規(guī)定進行格式化。相對于計算機硬盤來說U盤的存儲容量要小得多,因此在U盤中FAT16文件系統(tǒng)可取得比較高的綜合效率且兼容性較好,廣泛地應(yīng)用于U盤之類的移動存儲設(shè)備中。FAT16文件系統(tǒng)結(jié)構(gòu)分為5個部分:MBR區(qū),DBR區(qū),F(xiàn)AT 區(qū),F(xiàn)DT區(qū),DATA區(qū)。其中MBR區(qū)為主引導(dǎo)記錄區(qū),DBR區(qū)為操作系統(tǒng)引導(dǎo)記錄區(qū),F(xiàn)AT區(qū)存放文件分配表,F(xiàn)DT區(qū)存放文件目錄表,DATA區(qū)是真正意義上的數(shù)據(jù)存儲區(qū)。
3 系統(tǒng)硬件設(shè)計
系統(tǒng)采用AVR高檔機系列*能強大的單片AT-mega32作為中央處理芯片,選用南京沁恒電子公司的CH375作為USB主機控制芯片。硬件系統(tǒng)的工作原理框圖如圖1所示:
ATMEGA32是一款基于AVR RISC結(jié)構(gòu)的低功耗8位單片機,外接:16 MHz晶振性能可達:16 MI/S。AT-mega32包含了32 kB的系統(tǒng)內(nèi)可編程FLASH,1kBE2PROM,2kB SRAM,32個通用I/O 口,32個通用工作寄存器,一個8路10位具有可選增益差分輸入的A/D轉(zhuǎn)換器,支持多種接口方式。豐富的片上存儲器空間極大地提高了對U盤操作時的工作效率,多樣化的外圍接口方便了系統(tǒng)的擴展,高效的CPU指令集可以使系統(tǒng)獲得比較高的采樣率。CH375具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,同時支持5 V和3.3 V電源電壓,遵循USB 1.1規(guī)范。因此CH375作全速USB Host。主機接口時只需外加晶振和電容,就可以方便地掛接到單片機/DSP/MCU/MPU等控制器的系統(tǒng)總線上。由于讀寫U盤或移動硬盤時一般都是以扇區(qū)模式進行的,為了進一步提高執(zhí)行效率可以適當(dāng)增大磁盤數(shù)據(jù)緩沖區(qū)和文件數(shù)據(jù)緩沖區(qū)(都是512 B的整數(shù)倍),并且緩沖區(qū)越大,執(zhí)行的效率越高,所以外擴了32 kB的RAM 62256。傳感器信號經(jīng)模擬電路調(diào)理之后由A/D轉(zhuǎn)換器MAX 153量化成數(shù)字信號,在單片機ATMEGA32的控制下循環(huán)存入62256。待觸發(fā)信號到來之后,按照程序預(yù)設(shè)的負延遲點數(shù)將62256扣的數(shù)據(jù)連同后續(xù)到來的信號全部經(jīng)由CH375存入外掛的U盤,直至寫滿在U盤中新建的文件并關(guān)閉。同時由系統(tǒng)所設(shè)置的狀態(tài)燈指示工作已完成。
實際設(shè)計中ATMEGA32與CH375接口部分的原理圖如圖2所示
4 系統(tǒng)軟件設(shè)計
USB大容量存儲設(shè)備軟件結(jié)構(gòu)示意圖3所示
一般情況下,單片機或嵌入式系統(tǒng)處理USB存儲設(shè)備的文件系統(tǒng)需要實現(xiàn)圖3左邊的幾個層次,右邊是USB存儲設(shè)備的內(nèi)部結(jié)構(gòu)層次。由于 CH375不僅是一個通用的USB-HOST硬件接口芯片,還內(nèi)置了相關(guān)的固件程序,簡化了外部編程。內(nèi)置固件包含上圖左邊的UFI命令層,USB基本傳輸命令層及Bulk-Only協(xié)議層,所以實際的單片機程序只需要處理FAT文件系統(tǒng)層,并且即使這一層也可以由CH 375的U盤文件級子程序庫實現(xiàn)。CH375以C語言子程序庫提供了。USB存儲設(shè)備的文件級接口,這些應(yīng)用層接口API包含了常用的文件級操作,可以移植并嵌入到各種常用的單片機程序中。
這里采用ICC AVR軟件來編寫ATMEGA32的程序,并調(diào)用CH375所提供的AVRU盤文件級子程序庫CH375HFB.A。程序運行并初始化后,系統(tǒng)進入待觸發(fā)狀態(tài)。檢測到觸發(fā)信號到來之后,通過 CH375FileCreate新建文件,將AD所采集的數(shù)據(jù)通過CH375FileWrite寫入U盤,文件寫滿之后調(diào)用CH375FileClose 關(guān)閉文件。采集結(jié)束之后直接取下外接的U盤便可以拿回室內(nèi)分析。由于采用了文件管理模式,所需操作十分簡單,就像平常讀取U盤中的文件一樣。
5 結(jié) 語
經(jīng)測試該系統(tǒng)在實際使用時達到了預(yù)想效果,克服了以前存儲測試儀的一些不足。尤其對于緩變大容量信號的采集取得了良好效果。由于CH375只支持USB1.1協(xié)議,并且采用了單片機作為控制器負責(zé)管理整個系統(tǒng)的運行,勢必影響到儀器的采樣率。因此,選用支持USB 2.0協(xié)議的OTG器件,同時采用性能更好的控制器如DSP,CPLD等可極大地提高儀器的采樣速率,以適應(yīng)更高的需求。
評論