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