[發明專利]一種利用USBHost接口實現程控儀器通信的總線橋有效
| 申請號: | 201710277455.1 | 申請日: | 2017-04-25 |
| 公開(公告)號: | CN107168917B | 公開(公告)日: | 2019-09-24 |
| 發明(設計)人: | 肖寅東;葉建偉;劉科;王厚軍;田書林;郭廣坤;黃建國 | 申請(專利權)人: | 電子科技大學 |
| 主分類號: | G06F13/42 | 分類號: | G06F13/42 |
| 代理公司: | 成都行之專利代理事務所(普通合伙) 51220 | 代理人: | 溫利平 |
| 地址: | 611731 四川省成*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 利用 usbhost 接口 實現 程控 儀器 通信 總線 | ||
1.一種利用USB Host接口實現程控儀器通信的總線橋,其特征在于,包括:通過USBHost接口連接控制主機與儀器主機的USB總線橋;
USB總線橋包括主USB芯片和從USB芯片,通過將兩塊USB芯片“背靠背”連接構成,其中,主USB芯片支持USBTMC協議;
主USB芯片和從USB芯片均包括USB收發器、CPU、端點FIFO以及FIFO接口,以及運行在兩塊USB芯片上的固件程序;
其中,CPU運行著USB芯片的固件程序,完成USB芯片的初始化和配置符合協議的各類描述符,以及對USB收發器、端點FIFO和FIFO接口的控制;
USB收發器用來實現USB芯片分別與儀器主機和控制主機之間的通信,其主要傳輸方式包括控制傳輸、Bulk傳輸和中斷傳輸;控制傳輸實現USB芯片在兩個主機上的識別與連接,Bulk傳輸實現USB芯片與主機之間的數據傳輸,中斷傳輸實現從USB芯片與儀器主機的Header數據傳輸;
端點FIFO用于存放USB芯片與主機之間的傳輸數據,并根據不同的傳輸方式存放不同位置;
FIFO接口受CPU控制,用于實現將端點FIFO數據通過本地引腳與另一塊USB芯片的連接;
主USB芯片的USB收發器通過BulkOut傳輸接收到來自控制主機發送的數據后,將其存放在端點FIFO里,CPU讀取這些數據的前12字節,即USBTMC協議規定的Header數據,判斷本次傳輸方式,若本次傳輸為Out型傳輸,則設置FIFO接口寫操作,將這些數據寫到從USB芯片,從USB芯片的USB收發器先將Header數據由中斷傳輸發送給儀器主機,再由BulkOut傳輸將數據發送給儀器主機;若為In型傳輸,則同樣先設置FIFO接口寫操作,將提取的12字節Header數據經從USB芯片發送給儀器主機,然后設置FIFO接口讀操作,讀取從USB芯片的數據,從USB芯片的USB收發器通過BulkIn傳輸接收儀器主機的數據,并將其由主USB芯片的FIFO接口讀操作讀走,當主USB芯片讀到數據并保存在端點FIFO里后,將端點FIFO里的數據通過BulkIn傳輸發送給控制主機;儀器主機通過安裝的驅動程序通過中斷傳輸輪詢從USB芯片的中斷端點緩沖區,獲取Header數據,對Header進行解析后跳轉執行相對應的操作,即開啟BulkOut傳輸寫數據,或開啟BulkIn傳輸讀數據,或者是不操作等待下一次中斷傳輸。
2.根據權利要求1所述的一種利用USB Host接口實現程控儀器通信的總線橋,其特征在于,所述的Out型傳輸的方式為:直接BulkOut傳輸方式傳輸Header+數據;所述的In型傳輸的方式為:先通過BulkOut發送一個Header,再開啟BulkIn傳輸,其傳輸數據為Header+數據;其中,Header為12字節的長度,第一字節為MsgID,用來表明本次傳輸的類型,是Out型還是In型;接下來是1字節的bTag和1字節的bTagInverse,用來區別多次傳輸;再1字節保留為0;接著的4字節時TransferSize,表示本次傳輸的長度;再1字節時bmTransferAttributes,用來表明傳輸的額外規定;最后3字節保留為0。
3.根據權利要求1所述的一種利用USB Host接口實現程控儀器通信的總線橋,其特征在于,所述的FIFO接口通過本地引腳連接用于實現主、從USB芯片間的數據傳輸;其中,本地引腳包括用于數據傳輸的16根數據總線、實現傳輸握手的PinTxnOver和PinSReady引腳,以及基于USBTMC協議類請求命令的PinAbortBulkOut、PinAbortBulkIn、PinClearHalt和PinInit引腳;
當主USB芯片需要與從USB芯片進行數據傳輸時,先對PinSReady引腳進行判定,當其為高電平時,則從USB芯片可以進行數據傳輸,然后主USB芯片置PinTxnOver引腳為高電平,并置數據總線有效,當從USB芯片接收到PinTxnOver引腳為高電平時,置PinSReady引腳為低電平,并置數據總線有效,開始進行數據傳輸,數據傳輸結束后,主USB芯片置PinTxnOver引腳為低電平,則傳輸結束,當從USB芯片收到PinTxnOver引腳為低電平時,置PinSReady引腳為高電平,為下一次數據傳輸準備;
所述的PinAbortBulkOut、PinAbortBulkIn、PinClearHalt和PinInit引腳受主USB芯片CPU控制,用于類請求命令的處理;當需要進行類請求命令處理時,將相應的引腳電平取反,從USB芯片的CPU輪詢這些引腳電平,當檢測到引腳電平改變時,執行相應類請求命令。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于電子科技大學,未經電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710277455.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種基于DRF無線USBHUB拓展器系統
- 下一篇:一種串口轉換保護電路





