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