1 引言
大容量數(shù)據(jù)的高速傳輸是存儲技術(shù)的研究的熱點技術(shù),,而在工業(yè)環(huán)境的數(shù)據(jù)傳輸中抗干擾技術(shù)以及醫(yī)療設(shè)備對人身的安全也是目前研究的熱門課題,,USB(Universal Serial Bus)是 “通用串行總線”。它是一種應(yīng)用在 PC領(lǐng)域的接口技術(shù),。其主要優(yōu)點是:可以熱插拔,、攜帶方便、標準統(tǒng)一,,因而得到了廣泛的應(yīng)用,。 USB用于測試與測量應(yīng)用的優(yōu)勢很多,使用 USB接口的設(shè)備也與日俱增,,例如數(shù)碼相機,、掃描儀、圖像設(shè)備,、醫(yī)療設(shè)備,、打印機等等。在工業(yè)環(huán)境自動化程度較高的現(xiàn)場,,醫(yī)療設(shè)備對人體信息的提取和診斷,,大量信息數(shù)據(jù)的獲取與存儲往往應(yīng)用快速的 USB接口來實現(xiàn),而目前的 USB接口對工業(yè)干擾非常敏感,,在醫(yī)療上對人身安全存在隱患,,USB的隔離應(yīng)用是基于 PC平臺的醫(yī)療設(shè)備和具有很大地電位差的工業(yè)應(yīng)用。本文提出基于 CPLD的 USB隔離技術(shù),實現(xiàn)了 USB總線的可靠安全通信,,在工業(yè)現(xiàn)場和醫(yī)療設(shè)備通信接口中發(fā)揮著重要作用,。
2 系統(tǒng)硬件構(gòu)成及工作原理
全速(12Mbps) USB連接的光隔離,12Mbps的速度可滿足一般數(shù)據(jù)傳輸?shù)膸捯?,設(shè)計中使用廉價耦合器,,支持足夠的數(shù)據(jù)傳輸速率。 USB連接器包含四條線:2條用于電源供電(VBUS和 GND),,2條用于 USB數(shù)據(jù)傳輸(D+和 D-),。VBUS提供 5V電源,電流可達 500mA。D+和 D-為雙向信號線,,信號傳輸速率為 12Mbps (每位 83ns),。D+和 D-信號電平為 3.3V。圖 1所示隔離 USB接口組成框圖,,系統(tǒng)主要由 USB收發(fā)器 SP5301,、光藕電路、主控芯片 CPLD,、USB四口 HUB電路 TUSB2046B,、電源隔離五部分構(gòu)成。
隔離系統(tǒng)的工作原理:差分信號是以半雙工的形式實現(xiàn)的,,就是說,,數(shù)據(jù)線的任何一部分都可以傳送和接收數(shù)據(jù),但是在任意時刻只能進行發(fā)送或者只能進行接收,,兩者不能同時進行,。半雙工實現(xiàn)要求驅(qū)動器在不傳送數(shù)據(jù)時進入高阻抗狀態(tài)?;诖嗽?,利用 CPLD的控制能力,使其處于上下游的接收狀態(tài),,一旦檢測到一方有信息包到來,,立即進行隔離通路的切換,完成信號隔離通過,,且保證信號的完整性,。
工作過程:外電源接口上電,通過穩(wěn)壓電路提供 5V,、3V電壓,,分別給 CPLD的 I/O口, CPLD核,、下游藕合電路,、 USB收發(fā)器,、四口 HUB電路提供電源。CPLD完成復位后,,產(chǎn)生控制光耦信號,,使上游口上電(由上位機 USB接口提供,節(jié)省上位機電源),。 CPLD處于上下游接收狀態(tài),,當上游差分信號到達 USB收發(fā)器后,收發(fā)器將差分信號轉(zhuǎn)換為 VP,、VM,、 RESO三個信號,經(jīng)光電耦合電路后進入 CPLD檢測,、處理,、切換,再經(jīng)下游 USB收發(fā)器轉(zhuǎn)換為差分信號,,送入四口 HUB電路解析處理,。反之亦然。
系統(tǒng)的軟件設(shè)計與實現(xiàn)
CPLD是整個系統(tǒng)的控制核心,,軟件的設(shè)計好壞關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性,。CPLD采用 XILINX公司的 XC95144XL,具有集成度高、可靠性好及工作速度快等優(yōu)點,,開發(fā)軟件功能強大,、靈活易用、升級方便,??紤]到 USB信號速度高,要求切換快,,便于升級,功耗低,,綜合各種因素選用該芯片,。CPLD的主要功能是: 1)對 50MHZ的時鐘信號進行分頻,產(chǎn)生系統(tǒng)所需的各種時鐘信號,;2)為電源的上電順序提供監(jiān)測和控制信號,; 3)實時判斷信息包并及時為 USB收發(fā)器提供轉(zhuǎn)換控制信號;4)為 TUSB2046B提供復位信號,,監(jiān)測四口 HUB的 Suspend信號并產(chǎn)生復位信號為上游設(shè)備,; CPLD控制邏輯狀態(tài)轉(zhuǎn)換圖如圖 2所示,系統(tǒng)上電后,,CPLD初始化,,并為 TUSB2046B產(chǎn)生足夠的復位信號,,使其正常穩(wěn)定工作,然后使自己處于上下游接收狀態(tài),,若上游有信息包,,則立即轉(zhuǎn)換下游處于發(fā)送狀態(tài),讓包信號完全通過,,包結(jié)束時,,又回到上下游接收狀態(tài)。若下游有信息包時,,按上述方法上傳,。
設(shè)計實現(xiàn)應(yīng)用 XILINX公司的集成開發(fā)環(huán)境 ISE6.3,用 VHDL語言進行描述,采用自頂向下的方法進行設(shè)計,??紤]到系統(tǒng)的對稱性,在此僅畫出下游的控制邏輯關(guān)系,,圖 3所示為下游監(jiān)測與控制的邏輯關(guān)系框圖,,上游沒有 down_suspend監(jiān)測和復位產(chǎn)生電路,其它完全一致,。
4 仿真結(jié)果
該 USB隔離系統(tǒng)通過 ModelsimXE5.7C進行了波形仿真,,仿真波形如圖 4所示。從波形上可看出:上下游信息包信號都能完整地通過,,所需的控制信號及復位信號滿足理論設(shè)計要求,,驗證了工作原理的正確性。
5 結(jié)論
本設(shè)計的主要創(chuàng)新點在于 USB總線的協(xié)議的復雜性和快速性為設(shè)計實現(xiàn)必須面對許多的挑戰(zhàn),,能在分析協(xié)議的基礎(chǔ)上利用 CPLD解決了 USB總線隔離的問題,,巧妙的檢測信息包起始、快切換和包結(jié)束的難題,,克服了傳輸信息包結(jié)束慢上拉與過渡,,保證系統(tǒng)的完整性。在各種不同傳輸信號中,,采用各自不同的處理方式,,不影響傳輸線的指標和參數(shù),使系統(tǒng)穩(wěn)定可靠,,該設(shè)計在實際的醫(yī)療設(shè)備對人體測試中達到了預期的效果,。實驗結(jié)果也證明,在后序的網(wǎng)絡(luò)信息安全的具有生物特征識別功能的 USB研究中提供重要的指導意義,。