本發明涉及usb3.0通信領域,特別涉及多種usb3.0\2.0\1.1\1.0終端設備與計算機之間遠距離通信的技術領域,具體是指一種基于光纖傳輸的usb2.0\3.0hub。
本發明還涉及一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法。
本發明還涉及一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法。
背景技術:
usb3.0對傳輸速度進行了大幅提升,它基于全雙工數據傳輸協議,理論傳輸速率高達5gbps(即625mb/秒),實際數據傳輸速率也將高達3.2gbps(即400mb/秒),相比usb2.0時代有了將近10倍的提升,而現在最新的usb3.1gen2標準又將傳輸速率提升到了10gbps,因此數據的傳輸距離遇到了前所未有的挑戰。由于傳輸速率由以往的usb2.0標準規定的480mbps提升到了5gbps,因此使用傳統的電纜一般不會超過3米,一些使用廠家使用中繼放大芯片后,傳輸距離也只能達到最遠15米的傳輸距離,但是由于采用電纜傳輸在使用過程中特別容易受到電磁干擾的影響,因此不適合在一些電磁干擾較大的工業生產流水線上使用,以及一些對電磁干擾敏感的設備(如軍工設備)上使用;而目前隨著工業4.0的興起,許多usb3.0工業相機的傳輸距離會超過這個距離,甚至要達到幾百米的距離,另外一些企業和單位出于安全考慮,往往需要將計算機主機集中管理,用戶只能在遠端使用usb3.0存儲設備和usb3.0打印機,從而實現計算機主機與使用者的安全隔離,而計算機與終端之間往往也達到了上百米,并且數據在傳輸過程中不能有電磁泄漏而導致數據安全得不到保障。而我們采用光纖傳輸usb3.0信號即可以解決電磁干擾的問題,又可以解決傳輸距離的問題,此外現在雖然有一些可以實現usb3.0信號遠距離傳輸的裝置,但它們一般都是將終端設備的usb3.0數據通過usb3.0物理層芯片解析成其它的數據格式再重新編碼轉換成光纖來傳輸,另外一端將接收到的光信號轉換成電信號,通過usb3.0物理層芯片轉換成并行數據送到采集卡進行數據采集,它們都是針對一些特定的設備應用,無法實現其它usb3.0標準終端設備的接入,例如一種用來實現usb3.0工業相機遠距離傳輸的裝置是無法用來接入u盤、usb3.0移動硬盤或是打印機等其它usb3.0終端設備,而且現有還沒有一種能直接將usb2.0和usb3.0設備同時通過一個單usb3.0主控芯片采用超高速信號差分數據線用光模塊轉換成光信號后用光纖完成遠距離傳輸的方案,一般都是要外加一個usb2.0到usb3.0的轉換芯片,再用一個usb3.0hub整合傳輸,兼容性有待提高,而且這個芯片目前處于壟斷,其它廠家無法通過渠道采購到,直接限制了usb3.0在遠距離傳輸中對usb2.0/1.1/1.0的兼容應用。
技術實現要素:
本發明要解決的技術問題是提供一種基于光纖傳輸支持多種usb終端設備與計算機之間進行遠距離傳輸的usb2.0\3.0hub,可以通過usb3.0的超高速差分信號傳輸usb3.0\2.0\1.1\1.0數據,即向下兼容usb2.0/1.1/1.0設備,而且可以通過數字診斷電路實現usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制。
本發明所采用的技術方案:一種基于光纖遠距離傳輸兼容usb2.0的usb3.0hub,包括一個usb3.0光纖發送端和一個usb3.0光纖接收端,兩者之間通信的光纖通信可以通過自定義通信規則進行自動協商,usb3.0超高速信號是全雙工信號,收和發各是一對獨立的差分數據線:sstx+/-和ssrx+/-,因此可以用光模塊轉換成光信號后用光纖傳輸,在usb3.0光纖接收端的usb3.0hub主控芯片內部包含了一個usb2.0加速引擎,可以所有下行端口的usb2.0信號轉換成usb3.0信號,最后與所有下行接口的usb3.0信號通過usb3.0hub主控芯片內的超高速hub路由引擎與計算機主機的usb3.0主控芯片進行數據傳輸,因此可以用光纖通過usb3.0超高速信號來同時傳輸usb2.0和usb3.0數據,該usb3.0hub主控芯片四個端口都可以連接usb2.0或usb3.0終端外設,而且usb2.0和usb3.0設備可以混合使用,即向下兼容usb2.0\1.1\1.0設備;可以采用多模光纖、也可以采用單模光纖,可以采用雙芯光纖,也可以采用單芯光纖,usb3.0光纖發送端和usb3.0光纖接收端都有一個可以熱插拔的sfp+光模塊,在使用過程中光模塊靈活更換,而且光纖的長度可以根據實際需要進行布線。傳輸距離可以達到300米到400米,本發明所采用技術方案傳輸的數據是原生的usb3.0數據格式,在usb3.0光纖通信過程中,為了保證兼容性和普遍適用性,不會將usb3.0主控制器、usb3.0hub主控芯片和usb3.0終端設備發送的原生usb3.0數據轉換成其它格式并重新編解碼再進行傳輸,只是將收到的usb3.0電信號進行電-光-電的轉換,光纖傳輸設備不會在數據流中加入任何附加的數據,因此usb3.0信號使用光纖傳輸設備在傳輸過程中是透明的,所有符合usb3.0\2.0\1.1\1.0標準的終端外設都可以正常連接。
與此相應的,本發明另一個要解決的技術問題是提供一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法。
與此相應的,本發明還有一個要解決的技術問題是提供一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法。
以下將詳細介紹usb3.0光纖發送端的各個組成部分。
按上述方案,所述usb3.0光纖發送端,包括usb3.0上行接口、usb3.0hub主控芯片、flash芯片、rx_det模擬負載、sfp+光模塊、mcu控制單元、管理接口電路、led指示電路、供電單元。
所述usb3.0上行接口,用來連接計算機主機的usb3.0主控制器。
優選地,所述usb3.0hub主控芯片為μpd720210,一方面用來接收usb3.0數據,另一方面用來解決在使用光纖傳輸過程中光纖接口重復插拔、sfp+光模塊插拔、計算機開關機及重啟等這些狀態下終端設備無法連接上計算機主機的問題,此外還可以實現usb3.0信號中繼放大的作用,usb3.0hub主控芯片的一個端口連接管理接口電路,實現usb2.0轉換成rs-232接口,rs-232接口連接到mcu控制單元的一個rs-232串口,用來實現在計算機主機端對usb3.0光纖發送端及usb3.0光纖接收端的數字診斷管理。
所述flash芯片,用于存儲usb3.0hub主控芯片的配置數據。
所述rx_det模擬負載,用來模擬usb3.0終端設備;根據usb3.0協議,usb3.0接口的rx輸入端必須包含rxdetect電路,usb3.0物理層在處于u1、u2、u3狀態時,為了節省電力而使用lfps(lowfrequencyperiodsingal)信號作為通信介質,lfps信號是一種低頻率的周期性信號,當usb3.0下行端口沒有插入設備時,usb3.0主控制器會不停的發送rxdetect方波信號,該方波信號并不是lfps信號。如果一直沒有device插上,根據usb3.0協議,則一直處在rxdetect狀態中;當有device插上時,usb3.0hub芯片的tx端則會發送lfps信號;而普通的sfp+光模塊的輸入接口電路沒有usb3.0接口rx輸入端的rxdetect電路,因此sfp+光模塊與usb3.0hub芯片連接時,usb3.0hub芯片會一直處在rxdetect狀態中,無法與usb3.0光纖接收機的usb3.0hub主控芯片進行通信,導致鏈接失敗無法進行數據傳輸,而本發明中的rx_det模擬負載是用來解決這一問題的關鍵技術手段。
所述sfp+光模塊,連接到usb3.0hub主控芯片的某一個下行接口,一方面用來將usb3.0hub芯片下行接口的tx輸出端發送來的電信號轉換成光信號,另一方面用來將usb3.0光纖接收端發送過來的光信號轉換成電信號送到usb3.0光纖發送端usb3.0hub芯片的下行接口rx輸入端;此外,本發明利用sfp+光模塊光發送機的發射關斷控制tx_disable輸入腳和光接收機的無光告警信號los輸出腳組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,計算機通過數字診斷通道來實現對usb3.0終端設備的供電電路或是usb3.0終端設備發送控制指令,以及對usb3.0光纖接收端的sfp+光模塊進行數字診斷管理。
所述mcu控制單元,用來控制usb3.0hub與計算機主機的usb3.0主控制器的握手連接及usb3.0主控芯片復位,用來控制供電單元實現usb3.0接口供電和外部供電自動切換,用來實現sfp+光模塊的數字診斷及其控制,用來實現usb3.0終端設備控制指令的發送,結合管理接口實現對usb3.0光纖發送端及usb3.0光纖接收端的數字診斷管理。
所述管理接口電路,連接到usb3.0hub主控芯片的一個下行usb2.0端口,實現usb2.0轉換成rs-232接口,rs-232接口連接到mcu控制單元的一個rs-232串口,用來實現在計算機主機端對usb3.0光纖發送端及usb3.0光纖接收端的數字診斷管理。
所述供電單元,可以實現usb3.0接口供電和外部供電自動切換,為usb3.0hub芯片、mcu控制單元、sfp+光模塊、管理接口、led指示電路、eeprom提供電源。
所述led指示電路,用于指示的通信狀態、sfp+模塊狀態、故障情況等信息。
以下將詳細介紹usb3.0光纖接收端的各個組成部分。
按上述方案,所述usb3.0光纖接收端,包括四個usb3.0下行接口、usb3.0hub主控芯片、eeprom芯片、rx_det模擬負載、sfp+光模塊、mcu控制單元、管理接口電路、led指示電路、供電單元。
所述usb3.0下行接口,用來連接usb3.0終端設備。
優選地,所述usb3.0hub主控芯片為frescologic公司生產的fl6000,fl6000采用frescologic公司獨有f-onetm技術,可以讓下行端口的usb2.0和usb3.0數據通過上行端口的usb3.0超高速差分數據線(sstx+/-和ssrx+/-)來進行傳輸,而不必在外面加一顆usb2.0到usb3.0的轉換芯片,整體電路變得更加簡單,兼容性更好,在支持usb3.0設備的同時可以直接向下兼容usb2.0/1.1/1.0設備,fl6000芯片內部包含了一個usb2.0加速引擎(usb2.0tousb3.0translators),可以所有下行端口的usb2.0信號轉換成usb3.0信號,最后與所有下行接口的usb3.0信號通過usb3.0hub主控芯片內的超高速hub控制器與路由引擎(superspeedhubcontrollerandrouting)與計算機主機的usb3.0主控芯片進行數據傳輸,因此可以用光纖通過usb3.0超高速差分數據線來同時傳輸usb2.0和usb3.0數據;usb3.0hub主控芯片的上行口連接到sfp+光模塊,usb3.0光纖接收端的usb3.0hub主控芯片四個端口都可以支持usb2.0和usb3.0終端外設,如usb2.0手寫筆、usb觸摸屏、usb鼠標、usb鍵盤、usb3.0工業打印機、usb3.0相機、usb3.0移動硬盤、usb3.0移動u盤等標準usb外設,usb2.0和usb3.0設備可以混合使用。
所述eeprom芯片,用于存儲usb3.0hub主控芯片的配置數據。
所述rx_det模擬負載,用來模擬usb3.0主控制器下行接口rx輸入端的rx_det電路;根據usb3.0協議,usb3.0接口的rx輸入端必須包含rxdetect電路,usb3.0物理層在處于u1、u2、u3狀態時,為了節省電力而使用lfps(lowfrequencyperiodsingal)信號作為通信介質,lfps信號是一種低頻率的周期性信號,當usb3.0hub主控芯片上行端口沒有與usb3.0主控制器連接上時,usb3.0hub主控芯片的tx端會不停的發送rxdetect方波信號,該方波信號并不是lfps信號。如果一直沒有與usb3.0主控制器連接上,根據usb3.0協議,則一直處在rxdetect狀態中;當usb3.0hub主控芯片上行端口與usb3.0主控制器連接上時,usb3.0hub芯片的tx端則會發送lfps信號;而普通的sfp+光模塊的輸入接口電路沒有usb3.0接口rx輸入端的rxdetect電路,因此sfp+光模塊與usb3.0hub芯片連接時,usb3.0hub主控芯片會一直處在rxdetect狀態中,無法與usb3.0光纖發送機的usb3.0hub主控芯片下行接口進行通信,導致鏈接失敗無法進行數據傳輸,而本發明中的rx_det模擬負載是用來解決這一問題的關鍵技術手段。
所述sfp+光模塊,一方面,將usb3.0光纖發送端發送過來的光信號轉換成電信號送到usb3.0光纖接收端usb3.0hub主控芯片的上行接口rx輸入端;另一方,將usb3.0光纖接收端上行接口tx輸出端發送過來的電信號轉換成光信號送到usb3.0光纖發送端sfp+光模塊的rx輸入端;此外,本發明利用sfp+光模塊光發送機的發射關斷控制tx_disable輸入腳和光接收機的無光告警信號los輸出腳組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,計算機通過數字診斷通道來實現對usb3.0終端設備的供電電路或是usb3.0終端設備發送控制指令,以及對usb3.0光纖接收端的sfp+光模塊進行數字診斷管理。
所述mcu控制單元,用來控制usb3.0hub與計算機主機的usb3.0主控制器的握手連接及usb3.0主控芯片復位、用來控制供電單元實現usb3.0終端設備的供電控制與故障診斷、用來實現usb3.0終端設備控制指令的發送、用來實現sfp+光模塊的數字診斷及其控制,結合管理接口實現對usb3.0光纖發送端及usb3.0光纖接收端的數字診斷管理。
所述管理接口電路,連接到usb3.0hub主控芯片的一個下行usb2.0端口,實現usb2.0轉換成rs-232接口,rs-232接口連接到mcu控制單元的一個rs-232串口,用來實現在計算機主機端對usb3.0光纖發送端及usb3.0光纖接收端的數字診斷管理。
所述供電單元,可以實現usb3.0接口供電和外部供電自動切換,為usb3.0hub芯片、mcu控制單元、sfp+光模塊、管理接口、led指示電路、eeprom提供電源。
所述led指示電路,用于指示的通信狀態、sfp+模塊狀態、故障情況等信息。
所述一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法,是指通過單片機編程技術和制定相關的通信規則來解決在使用光纖傳輸usb3.0數據過程中因光纖接口光纖中斷、光纖重復插拔、sfp+光模塊熱插拔、計算機開關機及重啟后usb3.0終端設備重新計算機主機建立正確通信鏈接的方法。
usb3.0光纖通信是一個全雙工雙向通信,可以使用兩芯光纖,或者利用光波分復用原理使用單芯光纖,在光纖連接過程中會出現三種情形,第一種是usb3.0光纖發送端sfp+光模塊的光發送機和接收機用同時與usb3.0光纖接收端sfp+光模塊的光發送機和光接收機建立連接;第二種是usb3.0光纖發送端sfp+光模塊的光發送機先與usb3.0光纖接收端sfp+光模塊的光接收機建立連接,進一步地,usb3.0光纖發送端sfp+光模塊的光接收機與usb3.0光纖接收端sfp+光模塊的光發送機建立連接;第三種是usb3.0光纖發送端sfp+光模塊的光接收先與usb3.0光纖接收端sfp+光模塊的光發送機建立連接,進一步地,usb3.0光纖發送端sfp+光模塊的光發送機與usb3.0光纖接收端sfp+光模塊的光接收機建立連接。
如果因光纖損壞或是人為將光纖拔出而導致的光纖連接中斷,需要重新進行光纖連接時,計算機主機與遠端usb3.0光纖接收端的usb3.0hub主控芯片需要重新建立連接,此時雙方會重新發起低速lfps信號進行握手連接,從而確定連接狀態,但此時如果usb3.0光纖接收端的usb3.0hub主控芯片還未退出超高速鏈接狀態,當出現第一種和第三種情況時,usb3.0光纖發送端的usb3.0hub主控芯片下行接口收到的不是lfps數據信號,而是超高速數據包,這樣就會導致協商失敗,導致計算機連接此usb3.0光纖發送端的usb3.0主控制器端口死機,從而無法識別usb3.0光纖發送端的usb3.0hub主控芯片、usb3.0光纖接收端的usb3.0hub主控芯片及外接usb3.0終端設備。
usb3.0光纖發送端和usb3.0光纖接收端在通信過程中往往會遇到計算機主機關機、重啟、計算機主機關機了很長時間后重新開機,這樣就會面臨嚴峻的問題:當計算機主機重新進入操作系統后,經常會出現usb3.0光纖發送端和usb3.0光纖接收端與當計算機主機連接失敗,計算機主機有可能會提示usb3.0設備合規但是無法鏈接、或是根本沒有鏈接動作,導致這個問題的原因是在計算機主機退出系統后,usb3.0光纖發送端和usb3.0光纖接收端的通信狀態并未進入lfps協商狀態,而一直處于正常的超高速鏈接,當計算機主機重新進入系統后,計算機主機的usb3.0主控制器應該與usb3.0光纖發送端是一個低速率通信模式,但實際計算機主機的usb3.0主控制器首先收到的是usb3.0光纖發送端發送過來的超高速數據包,從而導致兩者的協商失敗,計算機主機無法找到usb3.0主控制器外接的所有usb3.0終端設備。
為了解決以上問題,我們在此約定一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法:不管任何時候,usb3.0光纖接收端的sfp+光模塊的光接收機總是先于usb3.0光纖發送端的sfp+光模塊的光接收機收到光信號;usb3.0光纖接收端的光接收機在光纖連接中斷后,mcu控制單元發輸出控制指令使usb3.0hub主控芯片上行接口鏈路斷開,usb3.0hub主控芯片進入待機狀態,并使usb3.0光纖接收端sfp+光模塊的光發送機處于發射禁止狀態,完全不會發送光信號出來,即使光纖重新連接正常,在usb3.0光纖接收端的usb3.0hub主控芯片沒有完成鏈路初始化前也會處于發射禁止狀態;光纖斷開后usb3.0光纖發送端的光接收機收不到光信號,mcu控制單元發輸出控制指令使usb3.0光纖發送端usb3.0上行接口與計算機主機的usb3.0主控制器鏈路連接中斷;當usb3.0光纖接收端的光接收機在光纖重新連接后,mcu控制單元發輸出控制指令使usb3.0hub主控芯片進入正常工作狀態,初始化芯片鏈路狀態,usb3.0hub主控芯片上行接口tx輸出端輸出lfps信號,mcu控制單元發輸出控制指令使usb3.0光纖接收端sfp+光模塊的光發送機處于發射使能狀態,正常發送lfps光信號出來,usb3.0光纖發送端的光接收機收到lfps光信號后,mcu控制單元發輸出控制指令使usb3.0光纖發送端usb3.0上行接口與計算機主機usb3.0主控制器的鏈路接通,并重新與計算機主機進行lfps協商,直至通信連接正常;當產生計算機主機關機后usb3.0光纖發送端電路可以監控與計算機主機usb3.0控制器的鏈路狀態,mcu控制單元發會根據與計算機主機usb3.0控制器的鏈路狀態輸出相應控制指令,使usb3.0光纖發送端usb3.0上行接口與計算機主機的通信鏈路處于斷開狀態,usb3.0光纖發送端的usb3.0hub主控芯片會進入待機狀態,并向usb3.0光纖接收端的usb3.0主控芯片發送lfps協商信號,讓兩者都處于待機狀態;當產生計算機主機關機、重啟、計算機主機關機后重新開機時usb3.0光纖發送端電路可以監控與計算機主機usb3.0控制器的鏈路狀態,usb3.0光纖發送端的mcu控制單元發會根據與計算機主機usb3.0控制器的鏈路狀態輸出相應控制指令,使usb3.0光纖發送端usb3.0上行接口與計算機主機處于正確的連接狀態,當監控到計算機usb3.0控制器發起lfps協商后,usb3.0光纖發送端mcu控制單元使usb3.0光纖發送端usb3.0上行接口與計算機主機usb3.0主控制器的鏈路接通,并向計算機主機發出lfps信號進行通信協商,直至通信連接正常;usb3.0光纖發送端與計算機主機通信正常后,usb3.0光纖發送端的usb3.0hub主控芯會向usb3.0光纖接收端的usb3.0主控芯片發送lfps協商信號,直至通信連接正常。
usb3.0標準規定的超高速usb3.0終端設備在通信過程中的數據流都必須編碼成超高速數據流進行傳輸,由于usb3.0標準沒有留出一些低速率的io通道,因此,在usb3.0光纖通信過程中,為了保證兼容性和普遍適用性,光纖傳輸設備不會對usb3.0重新編解碼,只是將收到的usb3.0電信號進行電-光-電的轉換,光纖傳輸設備不會在數據流中加入任何附加的數據,usb3.0信號使用光纖傳輸設備在傳輸過程中是透明的。因此,對于諸如遠程開關控制、數字診斷信號的發送與結果回傳都無法通過usb3.0的硬件電路完成,所以本發明正是基于這種實際應用,提出了一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法。
所述一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法,是指利用sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳和光接收機的無光告警信號sfp_los輸出腳組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,計算機通過數字診斷通道來實現對usb3.0終端設備的供電電路或是usb3.0終端設備本身的控制接口發送控制指令,以及對sfp+光模塊、終端設備的供電狀態進行數字診斷管理。
參照smallform-factorpluggable(sfp)transceivermultisourceagreement(msa)國際標準,sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳是用來開啟和關斷sfp+光模塊光發送機激光器的發光狀態,當該引腳為高電平時,激光器不發光,當該引腳為低電平時,激光器發光,當sfp+光模塊正常工作時發射關斷控制信號電平要一直保持為低;而sfp+光模塊光接收機的無光告警信號sfp_los輸出腳在沒有光信號輸入到光接收機的時候,無光告警信號sfp_los輸出腳輸出一個高電平信號,有光信號輸入到光接收機的時候,無光告警信號sfp_los輸出腳輸出一個低電平信號,該信號只是用來判斷輸入光信號的有無,在正常光通信過程中,該信號一直是保持低電平;這兩個控制腳本身沒有雙向數據通信的功能,但是我們可以在發射關斷控制sfp_tx_disable輸入腳輸入一個低速率的數字方波信號,如9600bps的串口信號,那么sfp+光模塊光發送機會按照該低速率的數字方波信號高低電平的變化產生無光發出和有光發出的狀態變化,從而調制出9600bps低速率的光信號,而在對應sfp+光模塊光接收機的無光告警信號sfp_los輸出腳會按照無光輸入和有光輸入的狀態變化,還原出原始的9600bps的串口信號;因此,sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳和光接收機的無光告警信號sfp_los輸出腳可以組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,數字診斷通道在usb3.0鏈路正常通信的情況下是不工作的,數字診斷通道只有在usb3.0光纖發送端和usb3.0光纖接收端初始連接建立之前、usb3.0終端設備發生故障、以及人為進行控制時才會進行工作,而且操作人員在計算機端和usb3.0設備端都可以進行相應管理操作。
當我們在使用usb3.0終端設備過程中偶爾會出現設備死機或是其它無法通過計算機主機端恢復usb3.0終端設備到正常工作狀態時,我們可以通過數字診斷通道向管理接口發送特定的指令到usb3.0終端設備本身控制接口或是與usb3.0終端設備連接usb3.0端口的供電電路,對設備進行冷啟動,從而恢復正常,我們也可以通過數字診斷通道向管理接口發送特定的指令到usb3.0終端設備本身控制接口獲取usb3.0終端設備的故障情況。
在usb3.0光纖發送端和usb3.0光纖接收端初始連接建立之前,usb3.0光纖接收端的mcu控制單元通過sfp+光模塊的i2c總線讀取到光模塊的發射光功率、激光器的偏置電流、接收靈敏度、光模塊的供電電壓、工作溫度、故障情況等光模塊指標后,通過usb3.0光纖接收端的mcu控制單元的rs-232串口將信號發送到sfp+光模塊的sfp_tx_disable輸入腳,調制輸出rs232光信號,而在usb3.0光纖發送端數字診斷通道的sfp_los輸出腳輸出rs-232串行數據,rs-232串行數據輸送到usb3.0光纖發送端的mcu控制單元數字診斷通道的串口信號輸入腳los_232_rxd,經mcu控制單元處理后送到計算機主機端;此外,我們還可以在計算機主機端通過管理接口的usb2.0tors232轉換電路將指令轉換成rs-232信號,rs-232通過管理接口的rs232_txd輸出引腳發送數字診斷請求指令到usb3.0光纖發送端的mcu控制單元的rs-232串口信號輸入腳cmi_rs232_rxd,mcu控制單元通過數字診斷通道發送指令到usb3.0光纖接收端的mcu控制單元的串口信號輸入腳los_232_rxd,收到指令后mcu控制單元將讀取到的光模塊指標通過數字診斷通道回傳到usb3.0光纖發送端的mcu控制單元的串口信號輸入腳los_232_rxd,經mcu控制單元處理后通過rs-232串口信號輸出腳cmi_rs232_txd發送到通過管理接口的輸入引腳rs232_rxd,通過usb2.0tors232轉換后送到計算機主機端;對于usb3.0光纖發送端的光模塊指標,我們可以在計算機主機端能過管理接口發送數字診斷請求指令到usb3.0光纖發送端的mcu控制單元直接獲取;通過這兩種方法可以實現對sfp+光模塊的數字診斷管理;此外當usb3.0光纖接收端的usb3.0終端設備供電產生過流故障時,mcu控制單元會將此故障代碼存儲起來,直到過流故障解除才會清除所存故障代碼,當我們發現設備工作不正常時,可以在計算機主機端過管理接口發送數字診斷請求指令到usb3.0光纖接收端的mcu控制單元獲取usb3.0終端設備故障代碼。
本發明的有益效果是:提供了一種基于光纖傳輸支持多種usb3.0終端設備與計算機之間遠距離傳輸的usb3.0hub,傳輸距離可以達到300米到400米,可以采用多模光纖、也可以采用單模光纖,可以采用雙芯光纖,也可以采用單芯光纖;本發明可以連接usb2.0或usb3.0終端外設,而且usb2.0和usb3.0設備可以混合使用,即向下兼容usb2.0/1.1/1.0設備,采用可以熱插拔的sfp+光模塊,sfp+光模塊可以在不斷電的情況下進行更換,使用和維護都十分的方便,而且光纖的長度可以根據實際需要進行布線;不僅可以實現多種usb3.0終端設備與主機連接,而且可以通過數字診斷電路實現sfp+光模塊的狀態監控及對usb3.0終端設備進行遠程操作,本發明所傳輸的數據是原生的usb3.0數據格式,不會將usb3.0主控制器、usb3.0hub主控芯片和usb3.0終端設備發送的原生usb3.0數據轉換成其它格式并重新編解碼再進行傳輸,因此它的傳輸是透明的,所有符合usb3.0標準的終端外設都可以正常連接,本發明在延長usb3.0傳輸距離的同時,還具有傳輸通道無電磁泄漏、抗電磁干擾的優點。
附圖說明
圖1是本發明的系統應用原理框圖。
圖2是本發明的usb3.0光纖發送端原理框圖。
圖3是本發明的usb3.0光纖發送端usb3.0hub主控芯片原理框圖。
圖4是本發明的usb3.0光纖發送端rx_det模擬負載。
圖5是本發明的usb3.0光纖發送端sfp+光模塊。
圖6是本發明的usb3.0光纖發送端mcu控制單元。
圖7是本發明的usb3.0光纖發送端供電單元。
圖8是本發明的usb3.0光纖發送端管理接口。
圖9是本發明的usb3.0光纖接收端原理框圖。
圖10是本發明的usb3.0光纖接收端usb3.0hub主控芯片原理框圖。
圖11是本發明的usb3.0光纖接收端rx_det模擬負載。
圖12是本發明的usb3.0光纖接收端sfp+光模塊。
圖13是本發明的usb3.0光纖接收端mcu控制單元。
圖14是本發明的usb3.0光纖接收端供電單元。
圖15是本發明的usb3.0光纖接收端管理接口。
具體實施方式
為更好地理解本發明,下面結合附圖和實施例對本發明作進一步的描述。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發明相關的部分而非全部電路結構。
本發明為一種基于光纖傳輸支持多種usb3.0終端設備與計算機之間遠距離傳輸的usb3.0hub;如圖1所示,usb3.0光纖發送端1一端通過usb3.0電纜連接到計算機主機的usb3.0host3,另一端通過光纖連接到usb3.0光纖接收端2;usb3.0光纖接收端2一端通過光纖連接到usb3.0光纖發送端1,usb3.0光纖接收端2的下行接口通過usb3.0電纜可以同時連接到usb3.0移動硬盤、usb3.0攝像頭、usb3.0打印機,還可以連接其它標準usb3.0終端;本發明利用usb3.0接口的超速數據差分接口:sstx+/-和ssrx+/-來實現usb3.0的超高速通信鏈接,傳輸距離可以達到300米到400米,本發明所傳輸的數據是原生的usb3.0數據格式,不會將usb3.0主控制器、usb3.0hub主控芯片和usb3.0終端設備發送的原生usb3.0數據轉換成其它格式并重新編解碼再進行傳輸,因此它的傳輸是透明的,所有符合usb3.0\2.0\1.1\1.0標準的終端外設都可以正常連接。
參照圖2-8,詳細說明usb3.0光纖發送端1。
如圖2所示,usb3.0光纖發送端1,包括一個usb3.0上行接口11、usb3.0hub主控芯片12、rx_det模擬負載13、sfp+光模塊14、供電單元15、mcu控制單元16、led指示電路17、管理接口電路18、flash芯片19。
usb3.0hub主控芯片12與其它電路的連接:flash數據總線1212外接flash芯片19;上行接口u3h_rx+/-差分對1213和u3h_tx+/-差分對1214連接到usb3.0上行接口11;下行端口1的usb3-tx1+/-差分對1222連接到rx_det模擬負載13的高速差分信號輸入端131;rx_det模擬負載13的高速差分信號輸出端132連接到sfp+光模塊14的tx+/-輸入端146,下行端口1的usb3-rx1+/-差分對2223連接到sfp+光模塊14的rx+/-輸出端147;usb3.0上行接口供電電壓vbus監控信號vbus_det輸入腳1215連接到mcu控制單元的vbus控制信號vbus_det輸出腳1634,此信號用來控制usb3.0光纖發送端1和usb3.0光纖接收端2的通信協商;復位信號rst_usb輸入1216一方面連接外部復位電路,另一方面連接到mcu控制單元16的usb3.0hub復位信號rst_usb輸出腳1633,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
sfp+光模塊14引腳與其它電路的連接:i2c總線時鐘信號sfp_scl引腳141連接到mcu控制單元16的時鐘信號sfp_scl引腳1611,i2c總線數據信號sfp_sda引腳142連接到mcu控制單元16的數據信號sfp_sda引腳1612;sfp+光模塊14的發射關斷信號sfp_txdisable輸入引腳143連接到mcu控制單元16的sfp_txdisable輸出引腳1613;sfp+光模塊14的發射故障指示sfp_txfault輸出引腳144連接到mcu控制單元16的sfp_txfault輸入引腳1614;sfp+光模塊14的插入檢測引腳143連接到mcu控制單元16的sfp_txdisable輸出引腳1613;sfp+光模塊14的發射關故障指示sfp_txfault輸出引腳144連接到mcu控制單元16的sfp_txfault輸入引腳1614;sfp+光模塊14的無光告警信號los輸出引腳145連接到mcu控制單元16的los輸入引腳1615和los_232_rxd輸入引腳1638;sfp+光模塊14的光模塊插拔檢測信號mod_in輸出引腳148連接到mcu控制單元16的mod_in輸入引腳1616。sfp+光模塊14的光發送電路供電輸入sfp_vcct引腳149連接到供電單元15的光模塊光發送電路供電sfp_vcct輸出引腳1522;sfp+光模塊14的光接收電路供電輸入sfp_vccr引腳140連接到供電單元15的光模塊光接收電路供電sfp_vccr輸出引腳1523,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
供電單元15與其它電路的連接:外部供電ext_5v引腳1515連接外部供電源;usb總線供電usb_5v引腳1516連接到usb總線供電芯片的電源輸出引腳,該芯片型號為sp2525a-2e,該芯片的使能引腳低電平時芯片輸出電壓;usb總線供電檢測信號usb_pwr_det輸出引腳1511連接到mcu控制單元16的usb總線供電檢測信號usb_pwr_det輸入引腳1636;usb總線供電電源芯片使能信號pwr_sw輸入引腳1512連接到mcu控制單元16的usb總線供電芯片的使能pwr_sw輸出引腳1632,當pwr_sw為低電平,usb總線供電芯片輸出供電電壓;usb總線供電電源芯片電流過載信號usb_pwr_fl輸出引腳1513連接到mcu控制單元16的usb總線供電芯片的電流過載信號usb_pwr_fl輸入引腳1637;當沒有外部電源供電時,usb_pwr_det保持輸出低電平,mcu控制單元16的pwr_sw輸出一個低電平使能信號給供電單元15的pwr_sw輸入,此時,usb總線供電芯片輸出供電電壓;當有外部電源供電時,usb_pwr_det保持輸出高電平,mcu控制單元16的pwr_sw輸出一個高電平使能信號給供電單元15的pwr_sw輸入,此時,usb總線供電芯片不工作,由外部電源給整個電路供電;mcu控制單元16供電vcc_mu輸出引腳1524連接到mcu控制單元16的電源vcc_mcu輸入引腳1631,供電單元內部一個二極管的正極連接到ext_5v,該二極管的負極連接到vcc_mu,另一個二極管的正極連接到usb_5v,該二極管的負極連接到vcc_mu,mcu控制單元16同時從usb接口和外部電源取電,mcu控制單元16的供電是優先供給的,即不受供電切換電路的影響;管理接口18供電vcc_cmi輸出引腳1525連接到管理接口18的電源vcc_cmi輸入引腳182;供電單元15的電源vcc_hub輸出腳1526連接到usb3.0hub主控芯片12的供電vcc_hub輸入腳1211;sfp+光模塊14的供電使能信號sfp_pwr_en輸入引腳1514連接到mcu控制單元16的sfp_pwr_en輸出引腳1635,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
管理接口18與其它電路的連接:管理接口18的具有兩路usb2.0信號輸入,兩路信號可以自動切換,一路usb2.0信號usb2.0_a+/-輸入端口180連接到外部usb2.0主控制器,另一路usb2.0信號usb2.0_b+/-輸入端口181連接到usb3.0hub主控芯片12下行端口4的usb2.0信號usb2-4+/-差分對1224,通過usb2.0tors-232轉換芯片,從而在pc主機上增加一個rs-232管理串口;管理接口18的串口發送數據rs232_txd引腳184連接到mcu控制單元16的cmi_rs232_rxd輸入引腳1617;管理接口18的串口接收數據rs232_rxd引腳183連接到mcu控制單元16的cmi_rs232_txd輸入引腳1616,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
mcu控制單元16有一個在線編程和升級接口,isp_rs232_txd輸出引腳2643連接到計算機主機rs-232接口的rxd;isp_rs232_rxd輸出引腳2644連接到計算機主機rs-232接口的txd,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
參照圖9-15,詳細說明usb3.0光纖接收端2。
如圖9所示,usb3.0光纖接收端2,包括一個usb3.0device下行接口單元21、usb3.0hub主控芯片22、rx_det模擬負載23、sfp+光模塊24、供電單元25、mcu控制單元26、led指示電路27、管理接口電路28、eeprom芯片29。
usb3.0hub主控芯片22的引腳與其它電路的連接:eeprom數據總線2212外接eeprom芯片29,具體型號為m24c64;超速發送信號u3h_tx+/-差分對2213,連接到rx_det模擬負載23的高速差分信號輸入端231;rx_det模擬負載23的高速差分信號輸出端232連接到sfp+光模塊24的tx+/-輸入端246;超速接收信號u3h_rx+/-差分對2214連接到sfp+光模塊24的rx+/-輸出端247;usb3.0上行接口供電電壓vbus監控信號vbus_det輸入腳2215連接到mcu控制單元的vbus控制信號vbus_det輸出腳2634,此信號用來控制usb3.0光纖發送端1和usb3.0光纖接收端2的通信協商;復位信號rst_usb輸入2216一方面連接外部復位電路,另一方面連接到mcu控制單元26的usb3.0hub復位信號rst_usb輸出腳2633;下行接口端口1電源使能ppon1信號輸出腳2231連接到供電單元的下行端口1電源使能dp_pwen1信號輸入腳2527;下行接口端口2電源使能ppon2信號輸出腳2233連接到供電單元的下行端口2電源使能dp_pwen1信號輸入腳2528;下行接口端口3電源使能ppon3信號輸出腳2235連接到供電單元的下行端口3電源使能dp_pwen3信號輸入腳2529;下行接口端口4電源使能ppon4信號輸出腳2237連接到供電單元的下行端口4電源使能dp_pwen4信號輸入腳2530;下行接口端口過流信號oci輸入腳2235連接到供電單元的下行端口1過流信號dp_ovci1輸出腳2531、下行端口2過流信號dp_ovci2輸出腳2532、下行端口3過流信號dp_ovci3輸出腳2533、下行端口4過流信號dp_ovci1輸出腳2534;差分對usb3-tx1+/-信號輸出2222和usb3-rx1+/-信號輸入2223及usb2-1+/-差分對2241分別連接到下行接口1的usb3.0接口;差分對usb3-tx2+/-信號輸出2224和usb3-rx2+/-信號輸入2225及usb2-2+/-差分對2242分別連接到下行接口2的usb3.0接口;差分對usb3-tx3+/-信號輸出2226和usb3-rx3+/-信號輸入2227、及usb2-3+/-差分對2243分別連接到下行接口3的usb3.0接口;差分對usb3-tx4+/-信號輸出2228和usb3-rx4+/-信號輸入2229、及usb2-4+/-差分對2244分別連接到下行接口4的usb3.0接口,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
sfp+光模塊24引腳與其它電路的連接:i2c總線時鐘信號sfp_scl引腳241連接到mcu控制單元26的時鐘信號sfp_scl引腳2611,i2c總線數據信號sfp_sda引腳242連接到mcu控制單元26的數據信號sfp_sda引腳2612;sfp+光模塊24的發射關斷信號sfp_txdisable輸入引腳243連接到mcu控制單元26的sfp_txdisable輸出引腳2613;sfp+光模塊24的發射故障指示sfp_txfault輸出引腳244連接到mcu控制單元26的sfp_txfault輸入引腳2614;sfp+光模塊24的插入檢測引腳243連接到mcu控制單元26的sfp_txdisable輸出引腳2613;sfp+光模塊24的發射關故障指示sfp_txfault輸出引腳244連接到mcu控制單元26的sfp_txfault輸入引腳2614;sfp+光模塊24的無光告警信號los輸出引腳245連接到mcu控制單元26的los輸入引腳2615和los_232_rxd輸入引腳2616;sfp+光模塊24的光模塊插拔檢測信號mod_in輸出引腳248連接到mcu控制單元26的mod_in輸入引腳2617。sfp+光模塊24的光發送電路供電輸入sfp_vcct引腳249連接到供電單元25的光模塊光發送電路供電sfp_vcct輸出引腳2522;sfp+光模塊24的光接收電路供電輸入sfp_vccr引腳240連接到供電單元25的光模塊光接收電路供電sfp_vccr輸出引腳2523,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
供電單元25與其它電路的連接:外部供電ext_5v引腳2515連接外部供電源;由外部電源給整個電路供電;mcu控制單元26供電vcc_mu輸出引腳2524連接到mcu控制單元26的電源vcc_mcu輸入引腳2621;管理接口28供電vcc_cmi輸出引腳2525連接到管理接口28的電源vcc_cmi輸入引腳282;供電單元25的電源vcc_hub輸出腳2526連接到usb3.0hub主控芯片22的供電vcc_hub輸入腳2211;sfp+光模塊24的供電使能信號sfp_pwr_en輸入引腳2521連接到mcu控制單元26的sfp_pwr_en輸出引腳2625;供電單元25的下行端口1的過流信號dp_ovc1_mcu輸出引腳2544連接到mcu控制單元26的dp_ovc1_mu輸入引腳2630;供電單元25的下行端口2的過流信號dp_ovc2_mcu輸出引腳2545連接到mcu控制單元26的dp_ovc2_mu輸入引腳2631;供電單元25的下行端口3的過流信號dp_ovc3_mcu輸出引腳2546連接到mcu控制單元26的dp_ovc3_mu輸入引腳2632;供電單元25的下行端口4的過流信號dp_ovc4_mcu輸出引腳2547連接到mcu控制單元26的dp_ovc4_mu輸入引腳2633;供電單元25的下行端口1的遠程冷啟動控制信號dp_pwen1_mcu輸出引腳2540連接到輸入引腳mcu控制單元26的dp_pwen1_mu輸入引腳2634;供電單元25的下行端口2的遠程冷啟動控制信號dp_pwen2_mcu輸出引腳2541連接到輸入引腳mcu控制單元26的dp_pwen2_mu輸入引腳2635;供電單元25的下行端口3的遠程冷啟動控制信號dp_pwen3_mcu輸出引腳2542連接到輸入引腳mcu控制單元26的dp_pwen3_mu輸入引腳2636;供電單元25的下行端口4的遠程冷啟動控制信號dp_pwen1_mcu輸出引腳2543連接到輸入引腳mcu控制單元26的dp_pwen4_mu輸入引腳2637,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
管理接口28與其它電路的連接:管理接口28的usb2.0信號usb2.0-4+/-輸入端口281連接到外部計算機主機的usb2.0端口,通過usb2.0tors-232轉換芯片,從而在外部計算機主機上增加一個rs-232管理串口;管理接口28的串口發送數據rs232_txd引腳284連接到mcu控制單元26的cmi_rs232_rxd輸入引腳2642;管理接口28的串口接收數據rs232_rxd引腳283連接到mcu控制單元26的cmi_rs232_txd輸入引腳2641,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
mcu控制單元26有一個在線編程和升級接口,isp_rs232_txd輸出引腳2643連接到計算機主機rs-232接口的rxd;isp_rs232_rxd輸出引腳2644連接到計算機主機rs-232接口的txd,在其它電路說明中有對本部分信號連接有說明的,在此不再詳細描述。
下面將詳細說明一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法的具體實現方式。
所述一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法,是指通過單片機編程技術和制定相關的通信規則來解決在使用光纖傳輸usb3.0數據過程中因光纖接口光纖中斷、光纖重復插拔、sfp+光模塊熱插拔、計算機開關機及重啟后usb3.0終端設備重新計算機主機建立正確通信鏈接的方法。
usb3.0光纖通信是一個全雙工雙向通信,可以使用兩芯光纖,或者利用光波分復用原理使用單芯光纖,在光纖連接過程中會出現三種情形,第一種usb3.0光纖發送端1的sfp+光模塊14的光發送機和接收機用同時與usb3.0光纖接收端2的sfp+光模塊24的光發送機和光接收機建立連接;第二種是usb3.0光纖發送端1的sfp+光模塊14的光發送機先與usb3.0光纖接收端2的sfp+光模塊24的光接收機建立連接,進一步地,usb3.0光纖發送端1的sfp+光模塊14的光接收機與usb3.0光纖接收端2的sfp+光模塊24的光發送機建立連接;第三種是usb3.0光纖發送端1的sfp+光模塊14的光接收先與usb3.0光纖接收端2的sfp+光模塊24的光發送機建立連接,進一步地,usb3.0光纖發送端1的sfp+光模塊14的光發送機與usb3.0光纖接收端2的sfp+光模塊24的光接收機建立連接。
如果因光纖損壞或是人為將光纖拔出而導致的光纖連接中斷,需要重新進行光纖連接時,計算機主機與遠端usb3.0光纖接收端2的usb3.0hub主控芯片22需要重新建立連接,此時雙方會重新發起低速lfps信號進行握手連接,從而確定連接狀態,但此時如果usb3.0光纖接收端2的usb3.0hub主控芯片22還未退出超高速鏈接狀態,當出現第一種和第三種情況時,usb3.0光纖發送端1的usb3.0hub主控芯片12下行接口收到的不是lfps數據信號,而是超高速數據包,這樣就會導致協商失敗,導致計算機連接此usb3.0光纖發送端1的usb3.0主控制器3端口死機,從而無法識別usb3.0光纖發送端1的usb3.0hub主控芯片12、usb3.0光纖接收端2的usb3.0hub主控芯片22及外接usb3.0終端設備。
usb3.0光纖發送端1和usb3.0光纖接收端2在通信過程中往往會遇到計算機主機關機、重啟、計算機主機關機了很長時間后重新開機,這樣就會面臨嚴峻的問題:當計算機主機重新進入操作系統后,經常會出現usb3.0光纖發送端1和usb3.0光纖接收端2與當計算機主機連接失敗,計算機主機有可能會提示usb3.0設備合規但是無法鏈接、或是根本沒有鏈接動作,導致這個問題的原因是在計算機主機退出系統后,usb3.0光纖發送端1和usb3.0光纖接收端2的通信狀態并未進入lfps協商狀態,而一直處于正常的超高速鏈接,當計算機主機重新進入系統后,計算機主機的usb3.0主控制器3應該與usb3.0光纖發送端1是一個低速率通信模式,但實際計算機主機的usb3.0主控制器3首先收到的是usb3.0光纖發送端1發送過來的超高速數據包,從而導致兩者的協商失敗,計算機主機無法找到usb3.0主控制器3外接的所有usb3.0終端設備。
為了解決以上問題,我們在此約定一種對usb3.0光纖發送端和usb3.0光纖接收端之間光纖通信的自動協商方法:不管任何時候,usb3.0光纖接收端1的sfp+光模塊14的光接收機總是先于usb3.0光纖發送端2的sfp+光模塊24的光接收機收到光信號;usb3.0光纖接收端1的光接收機在光纖連接中斷后,mcu控制單元16發輸出控制指令使usb3.0hub主控芯片22上行接口鏈路斷開,usb3.0hub主控芯片22進入待機狀態,并使usb3.0光纖接收端2的sfp+光模塊24的光發送機處于發射禁止狀態,完全不會發送光信號出來,即使光纖重新連接正常,在usb3.0光纖接收端2的usb3.0hub主控芯片22沒有完成鏈路初始化前也會處于發射禁止狀態;光纖斷開后usb3.0光纖發送端1的光接收機收不到光信號,mcu控制單元16發輸出控制指令使usb3.0光纖發送端1的usb3.0上行接口與計算機主機的usb3.0主控制器3鏈路連接中斷;當usb3.0光纖接收端2的光接收機在光纖重新連接后,mcu控制單元26發輸出控制指令使usb3.0hub主控芯片22進入正常工作狀態,初始化芯片鏈路狀態,usb3.0hub主控芯片22上行接口tx輸出端輸出lfps信號,mcu控制單元26發輸出控制指令使usb3.0光纖接收端2的sfp+光模塊24的光發送機處于發射使能狀態,正常發送lfps光信號出來,usb3.0光纖發送端1的光接收機收到lfps光信號后,mcu控制單元16發輸出控制指令使usb3.0光纖發送端1的usb3.0上行接口與計算機主機usb3.0主控制器3的鏈路接通,并重新與計算機主機進行lfps協商,直至通信連接正常;當產生計算機主機關機后usb3.0光纖發送端電路可以監控與計算機主機usb3.0控制器的鏈路狀態,mcu控制單元發會根據usb3.0光纖發送端與計算機主機usb3.0控制器的鏈路狀態輸出相應控制指令,使usb3.0光纖發送端usb3.0上行接口與計算機主機的通信鏈路處于斷開狀態,usb3.0光纖發送端的usb3.0hub主控芯片會進入待機狀態,并向usb3.0光纖接收端的usb3.0主控芯片發送lfps協商信號,讓兩者都處于待機狀態;當產生計算機主機關機、重啟、計算機主機關機后重新開機時usb3.0光纖發送端電路1可以監控與計算機主機usb3.0控制器3的鏈路狀態,usb3.0光纖發送端1的mcu控制單元16發會根據與計算機主機usb3.0控制器3的鏈路狀態輸出相應控制指令,使usb3.0光纖發送端1的usb3.0上行接口與計算機主機處于正確的連接狀態,當監控到計算機usb3.0控制器3發起lfps協商后,usb3.0光纖發送端1的mcu控制單元16使usb3.0光纖發送端1的usb3.0上行接口與計算機主機usb3.0主控制器3的鏈路接通,并向計算機主機發出lfps信號進行通信協商,直至通信連接正常;usb3.0光纖發送端1與計算機主機通信正常后,usb3.0光纖發送端1的usb3.0hub主控芯12會向usb3.0光纖接收端1的usb3.0主控芯片22發送lfps協商信號,直至通信連接正常。
usb3.0標準規定的超高速usb3.0終端設備在通信過程中的數據流都必須編碼成超高速數據流進行傳輸,由于usb3.0標準沒有留出一些低速率的io通道,因此,在usb3.0光纖通信過程中,為了保證兼容性和普遍適用性,光纖傳輸設備不會對usb3.0重新編解碼,只是將收到的usb3.0電信號進行電-光-電的轉換,光纖傳輸設備不會在數據流中加入任何附加的數據,usb3.0信號使用光纖傳輸設備在傳輸過程中是透明的。因此,對于諸如遠程開關控制、數字診斷信號的發送與結果回傳都無法通過usb3.0的硬件電路完成,所以本發明正是基于這種實際應用,提出了一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法。
下面將詳細說明一種對usb3.0光纖發送端和usb3.0光纖接收端進行數字診斷及usb3.0終端設備遠程控制的方法的具體實現方式。
所述一種對usb3.0發送機1和usb3.0光纖接收機2進行數字診斷及usb3.0終端設備遠程控制的方法,是指利用sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳和光接收機的無光告警信號sfp_los輸出腳組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,計算機通過數字診斷通道來實現對usb3.0終端設備的供電電路或是usb3.0終端設備本身的控制接口發送控制指令,以及對sfp+光模塊、終端設備的供電狀態進行數字診斷管理。
參照smallform-factorpluggable(sfp)transceivermultisourceagreement(msa)國際標準,sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳是用來開啟和關斷sfp+光模塊光發送機激光器的發光狀態,當該引腳為高電平時,激光器不發光,當該引腳為低電平時,激光器發光,當sfp+光模塊正常工作時發射關斷控制信號電平要一直保持為低;而sfp+光模塊光接收機的無光告警信號sfp_los輸出腳在沒有光信號輸入到光接收機的時候,無光告警信號sfp_los輸出腳輸出一個高電平信號,有光信號輸入到光接收機的時候,無光告警信號sfp_los輸出腳輸出一個低電平信號,該信號只是用來判斷輸入光信號的有無,在正常光通信過程中,該信號一直是保持低電平;這兩個控制腳本身沒有雙向數據通信的功能,但是我們可以在發射關斷控制sfp_tx_disable輸入腳輸入一個低速率的數字方波信號,如9600bps的串口信號,那么sfp+光模塊光發送機會按照該低速率的數字方波信號高低電平的變化產生無光發出和有光發出的狀態變化,從而調制出9600bps低速率的光信號,而在對應sfp+光模塊光接收機的無光告警信號sfp_los輸出腳會按照無光輸入和有光輸入的狀態變化,還原出原始的9600bps的串口信號;因此,sfp+光模塊光發送機的發射關斷控制sfp_tx_disable輸入腳和光接收機的無光告警信號sfp_los輸出腳可以組合形成一個低速率雙向rs-232傳輸通道,由雙向rs-232傳輸通道、mcu控制單元、管理接口組成一個數字診斷通道,數字診斷通道在usb3.0鏈路正常通信的情況下是不工作的,數字診斷通道只有在usb3.0光纖發送端和usb3.0光纖接收端初始連接建立之前、usb3.0終端設備發生故障、以及人為進行控制時才會進行工作,而且操作人員在計算機端和usb3.0設備端都可以進行相應管理操作。
當我們在使用usb3.0終端設備過程中偶爾會出現設備死機或是其它無法通過計算機主機端恢復usb3.0終端設備到正常工作狀態時,我們可以通過數字診斷通道向管理接口發送特定的指令到usb3.0終端設備本身控制接口或是與usb3.0終端設備連接usb3.0端口的供電電路,對設備進行冷啟動,從而恢復正常,我們也可以通過數字診斷通道向管理接口發送特定的指令到usb3.0終端設備本身控制接口獲取usb3.0終端設備的故障情況。
在usb3.0光纖發送端和usb3.0光纖接收端初始連接建立之前,usb3.0光纖接收端2的mcu控制單元26通過sfp+光模塊24的i2c總線讀取到光模塊的發射光功率、激光器的偏置電流、接收靈敏度、光模塊的供電電壓、工作溫度、故障情況等光模塊指標后,通過usb3.0光纖接收端1的mcu控制單元26的rs-232串口將信號發送到sfp+光模塊24的sfp_tx_disable輸入腳243,調制輸出rs232光信號,而在usb3.0光纖發送端1數字診斷通道的sfp_los輸出腳145輸出rs-232串行數據,rs-232串行數據輸送到usb3.0光纖發送端1的mcu控制單元16數字診斷通道的串口信號輸入los_232_rxd輸入腳1638,經mcu控制單元16處理后送到計算機主機端;此外,我們還可以在計算機主機端通過管理接口18的usb2.0tors232轉換電路將指令轉換成rs-232信號,rs-232通過管理接口18的rs232_txd輸出引腳86發送數字診斷請求指令到usb3.0光纖發送端1的mcu控制單元16的rs-232串口信號cmi_rs232_rxd輸入腳1618,mcu控制單元16通過數字診斷通道發送指令到usb3.0光纖接收端2的mcu控制單元26的串口信號輸入los_232_rxd輸入腳2616,收到指令后mcu控制單元26將讀取到的光模塊指標通過數字診斷通道回傳到usb3.0光纖發送端1的mcu控制單元16的串口信號輸入los_232_rxd輸入腳1638,經mcu控制單元16處理后通過rs-232串口信號cmi_rs232_txd輸出腳1617發送到通過管理接口18的rs232_rxd輸入引腳85,通過usb2.0tors232轉換后送到計算機主機端;對于usb3.0光纖發送端1的光模塊指標,我們可以在計算機主機端能過管理接口18發送數字診斷請求指令到usb3.0光纖發送端1的mcu控制單元直接獲取;通過這兩種方法可以實現對sfp+光模塊的數字診斷管理;此外當usb3.0光纖接收端2的usb3.0終端設備供電產生過流故障時,mcu控制單元22會將此故障代碼存儲起來,直到過流故障解除才會清除所存故障代碼,當我們發現設備工作不正常時,可以在計算機主機端過管理接口18發送數字診斷請求指令到usb3.0光纖接收端2的mcu控制單元22獲取usb3.0終端設備故障代碼。
以上內容是結合具體的優選實施方式對本發明所作的進一步詳細說明,不能認定本發明的具體實施方式僅限于此,對于本發明所屬技術領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干簡單的推演或替換,都應當視為屬于本發明由所提交的權利要求書確定保護范圍。