TW202147128A - 通用周邊延伸器結構、系统及方法 - Google Patents

通用周邊延伸器結構、系统及方法 Download PDF

Info

Publication number
TW202147128A
TW202147128A TW109146274A TW109146274A TW202147128A TW 202147128 A TW202147128 A TW 202147128A TW 109146274 A TW109146274 A TW 109146274A TW 109146274 A TW109146274 A TW 109146274A TW 202147128 A TW202147128 A TW 202147128A
Authority
TW
Taiwan
Prior art keywords
output device
host
target input
input
conversion
Prior art date
Application number
TW109146274A
Other languages
English (en)
Other versions
TWI769640B (zh
Inventor
維斌 陳
Original Assignee
美商金士頓數位股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商金士頓數位股份有限公司 filed Critical 美商金士頓數位股份有限公司
Publication of TW202147128A publication Critical patent/TW202147128A/zh
Application granted granted Critical
Publication of TWI769640B publication Critical patent/TWI769640B/zh

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1632External expansion units, e.g. docking stations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/263Arrangements for using multiple switchable power supplies, e.g. battery and AC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30065Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/04Methods or arrangements for sensing record carriers, e.g. for reading patterns by mechanical means, e.g. by pins operating electric contacts
    • G06K7/042Methods or arrangements for sensing record carriers, e.g. for reading patterns by mechanical means, e.g. by pins operating electric contacts controlling electric circuits
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2562/00Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
    • A61B2562/22Arrangements of medical sensors with cables or leads; Connectors or couplings specifically adapted for medical sensors
    • A61B2562/225Connectors or couplings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • General Business, Economics & Management (AREA)
  • Public Health (AREA)
  • Business, Economics & Management (AREA)
  • Epidemiology (AREA)
  • Power Engineering (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Stored Programmes (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

揭露一種解決傳統、醫療及工業應用中通訊地連接周邊輸入∕輸出裝置及智能主機裝置之需要之通用周邊延伸器結構、系統及方法。所揭露之通用周邊延伸器包含一輸入∕輸出裝置之轉換及管理模組,該輸入∕輸出裝置之轉換及管理模組具有一裝置端程式、一主機端輸入∕輸出裝置之轉換及管理程式以及一主機∕裝置之轉換及管理排程程式。

Description

通用周邊延伸器結構、系统及方法
本發明概言之係關於一種通用周邊延伸器結構、系統及方法。
自四十多年前個人電腦(personal computer;PC)首次成為可用以來,已經引入了許多介面及周邊輸入∕輸出(Input∕Output;I∕O)裝置。包含通用串列匯流排-A(Universal Serial Bus-A;USB-A)、高速周邊組件互連(Peripheral Component interconnection Express;PCIe)、串列先進技術附接(Serial Advanced Technology Attachment;SATA)、以太網路(Ethernet)、無線保真(Wireless Fidelity;WiFi)、藍牙、USB-C、Lightning、Thunderbolt、高清晰度多媒體介面(High-Definition Multimedia Interface;HDMI)等之該等介面在PC演進過程中得以倖存及發展。對應的傳統周邊輸入∕輸出裝置包含USB儲存器、固態驅動機(Solid state drive;SSD)、鍵盤、滑鼠、跟蹤板、顯示面板、耳機、揚聲器、運動手環、網際網路協定(Internet Protocol;IP)照相機、列印機、掃描儀、媒體讀卡器、藍光∕數位多功能光碟(digital versatile disk;DVD)刻錄機、智能讀卡器及其他智能周邊裝置。醫療或工業應用中的周邊輸入∕輸出裝置包含內視鏡、超音波儀器、X射線、心電圖(Electrocardiography;ECG)儀器、無創血糖儀、銷售點系統、非接觸式紅外溫度計、血壓計、人工智能(artificial intelligence;AI)協同處理器等。
當智能主機(例如智能手機及平板電腦)在普通人的日常生活中變得較PC或筆記型電腦更普遍時,外行人非常需要能夠自口袋中的智能手機或手邊的平板電腦存取現有的周邊輸入∕輸出裝置,而非必需等到拿到家中或辦公室笨重的筆記型電腦。
通用智能主機的一實例包含:足夠的計算能力、實時作業系統(operating system;OS)及裝置驅動程式、使其可攜的電池系統、用於使用者介面輸入∕輸出的顯示面板、用於網路及媒體連接部的複數個介面通道以及連接至網路∕人工智能以進行資料收集、分析及最佳化的能力。
一個實例性用途係為使用者藉由智能讀卡器讀取歐洲支付(Europay)、萬事達卡(Mastercard)、Visa(EMV)晶片卡。目前,在筆記型電腦或個人電腦平台上讀取基於USB的智能讀卡器沒有問題,此乃因USB介面以及所需裝置驅動程式及對應的應用程式是可用的。但在智能主機平台上,介面及應用程式皆不可用,更不用提裝置驅動程式了。因此,只要當需要存取傳統周邊輸入∕輸出裝置時(例如上面提及的智能讀卡器的情況),普通使用者必需重度依賴傳統筆記型電腦或個人電腦,即使智能主機更為方便。此種挫折感可藉由以下來例示:在推出蘋果手機(iPhone)∕蘋果平板電腦(iPad)的十年後,就連標準類型之USB儲存器也才剛剛開始被iOS平台所支援。同樣,雖然現成的藍牙滑鼠功能齊全,且在當今Windows Office 環境中易於使用,但其右鍵點擊、滾輪及滑鼠指針功能在當今iOS環境中的遠端桌面應用程式中仍有待支援。
相較於智能主機的快速演進性,醫療及工業平台在採用新技術標準方面甚至相對更加保守,尤其是在介面領域中。因此,醫療及工業應用中的周邊輸入∕輸出裝置不太可能在智能主機平台上得到本地支援。但由於智能主機無處不在、無所不在的特性,加上其在計算能力方面的高效能及可承受的價格,採用及部署智能主機作為使用者與許多周邊輸入∕輸出裝置(包含傳統、醫療及工業周邊輸入∕輸出裝置)之間的直觀使用者介面是非常有益的。
因此,需要一種解決在傳統、醫療及工業應用中連接通用周邊裝置輸入∕輸出裝置及通用智能主機的上述問題之通用周邊延伸器結構及系統。本申請案解決此種需求。
本發明揭露了一種解決在傳統、醫療及工業應用中連接通用周邊輸入∕輸出裝置及通用智能主機的需要的通用周邊延伸器結構及系統。
在一個實例中,該通用周邊延伸器系統包含:一通用周邊延伸器;至少一介面通道;至少一智能主機;至少一周邊輸入∕輸出裝置;至少一電源;以及至少一對應的應用程式,分別地連接於至少一目標輸入∕輸出裝置;其中,該通用周邊延伸器通過該至少一介面通道分別通訊地耦合至該至少一智能主機、該目標輸入∕輸出裝置及該至少一周邊輸入∕輸出裝置;其中,該至少一周邊輸入∕輸出裝置包含一介面連接部通訊連接於該至少一介面通道;以及其中,該對應的應用程式連接於該目標輸入∕輸出裝置且安裝於該至少一智能主機,以執行該目標輸入∕輸出裝置的一功能。
在另一實例中,包含一輸入∕輸出裝置之轉換及管理模組的一通用周邊延伸器具有一裝置端程式;一主機端輸入∕輸出裝置之轉換及管理程式;及一主機∕裝置之轉換及管理排程程式。
在另一實例中,一種電腦程式產品,經由一電子裝置載入該電腦程式產品後,該電子裝置執行該電腦程式產品所儲存的可執行之複數個程式指令,以透過一通用周邊延伸器的一輸入∕輸出裝置之轉換及管理模組通訊地連接一目標輸入∕輸出裝置及智能主機,藉此因應於執行,使得該通用周邊延伸器的一計算裝置執行該輸入∕輸出裝置之轉換及管理模組的一裝置端程式,以執行下列作業流程,包含:列舉該目標輸入∕輸出裝置;進行一檢查以確定該目標輸入∕輸出裝置是否為在線狀態;因應該目標輸入∕輸出裝置為不在線,返回該等業流程至該列舉該目標輸入∕輸出裝置;因應該目標輸入∕輸出裝置為在線,增加該目標輸入∕輸出裝置至端點列表;發送一重置(RESET)指令給該目標輸入∕輸出裝置;從該目標輸入∕輸出裝置中獲取一描述符;分配一裝置位址給該目標輸入∕輸出裝置;從該目標輸入∕輸出裝置中獲取一描述符表;進行一檢查以確定該目標輸入∕輸出裝置是否為可用的;因應該目標輸入∕輸出裝置不可用,回應遇到錯誤,且該過程返回至該列舉該目標輸入∕輸出裝置;因應該目標輸入∕輸出裝置為可用,激活該目標輸入∕輸出裝置上的配置;於目標輸入∕輸出裝置之轉換及管理表中配置目標輸入∕輸出裝置屬性;與該目標輸入∕輸出裝置進行互動;啟動一主機∕裝置之轉換及管理排程;進行一檢查以確定該應用程式是否要結束;因應該應用程式結束,退出該應用程式;因應該應用程式繼續進行,進行另一檢查以確定主機會話是否結束;因應該主機會話結束,返回該作業流程至該列舉該目標輸入∕輸出裝置;以及因應該主機會話繼續進行,繼續與該目標輸入∕輸出裝置進行互動。
本發明的其他態樣、優點及特徵包含於其實例性實例之以下說明中,該說明應結合圖式來進行。
本發明概言之係關於可攜式資料存取裝置,且更具體而言係關於在一資料存取裝置上使用多端口介面。本文揭露所主張結構、方法及系統之詳細實例或實施例;然而,可理解,所揭露之實例或實施例僅例示可以各種形式實施之所主張之結構及方法。然而,本發明可以許多不同形式實施,且不應該被解釋為受限於本文闡述之實例或實施例。在本說明中,可省略熟習此項技術者眾所習知之特徵及技術之細節,以避免不必要地使所呈現之實例或實施例模糊。
本說明書中參考「一個實施例」、「一實施例」、「一實例性實施例」、「一個實例」、「一實例」等指示所述實例或實施例可包含一特定特徵、結構或特性,但每一實例或實施例可未必包含該特定特徵、結構或特性。此外,此種片語未必指相同實例或實施例。此外,當結合一實例或實施例闡述特定特徵、結構或特性時,認為結合或聯合其他實例或實施例影響此種特徵、結構或特性處於熟習此項技術者眾所習知之知識範圍內,無論是否明確闡述。
如第1圖所示,一計算主機20之一傳統實例包含一計算裝置24、輸入∕輸出集線器管理部23、輸入∕輸出裝置驅動程式240、輸入∕輸出介面25及介面連接部26、27、28。計算主機20可藉由介面連接部28及介面通道1800供電,介面通道1800包含介面連接部180、181,並藉由介面連接部182連接至一電源適配器183。計算主機20進一步藉由介面連接部27及介面通道1700連接,介面通道1700包含介面連接部170、171,並藉由介面連接部172連接至一傳統輸入∕輸出裝置173。計算主機20亦藉由介面連接部26及介面通道2600連接,介面通道2600包含介面連接部260、261,並藉由介面連接部262連接至一使用者介面裝置263。
同樣,如第1圖所示,需要對應之輸入∕輸出裝置驅動程式240,以連接於傳統輸入∕輸出裝置,該傳統輸入∕輸出裝置可為例如一智能讀卡器173。還需要一應用程式264以安裝在計算主機20上,並在使用者介面裝置263上運行,以供使用者執行預期智能讀卡器功能。
傳統周邊輸入∕輸出裝置以及醫療及工業周邊輸入∕輸出裝置一般以與上述連接於計算主機20及使用者介面裝置263之智能讀卡器類似的方式工作。計算主機20如何存取兩個不同之周邊輸入∕輸出裝置之間之區別在於具有不同輸入∕輸出裝置驅動程式240及對應之應用程式264。
如第2圖所示,一輸入∕輸出集線器裝置30之一傳統實例包含計算裝置34、輸入∕輸出集線器管理部33、輸入∕輸出介面35及介面連接部36、37、38。輸入∕輸出集線器裝置30藉由介面連接部38及介面通道1800供電,介面通道1800包含介面連接部180、181,並藉由介面連接部182連接至一電源適配器183。輸入∕輸出集線器裝置30還藉由介面連接部37及介面通道1700連接,介面通道1700包含介面連接部170、171,並藉由介面連接部372連接至一本地支援之輸入∕輸出裝置373。輸入∕輸出集線器裝置30還藉由介面連接部36及介面通道1600連接,介面通道1600包含介面連接部160、161,並藉由介面連接部362連接至一智能主機363。
如第2圖所示,智能主機363代替第1圖之使用者介面裝置263及輸入∕輸出裝置驅動程式240。由於智能主機平台之封閉性,智能主機平台在其相容性列表中具有非常有限之本地支援之輸入∕輸出裝置373。所示之一個實例為標準USB儲存器373。智能主機363上還需要一本地應用程式364(例如iOS上之檔案應用),以供使用者執行檔案總管功能(file explorer function)。此外,還需要在智能主機上安裝一應用程式,以供使用者與本地支援之輸入∕輸出裝置373互動。
由於本地支援之輸入∕輸出裝置被限制於智能主機363上,因此大多數傳統周邊輸入∕輸出裝置以及醫療及工業周邊輸入∕輸出裝置在智能主機平台上不可用。由於智能主機平台安全問題之沙盒效應(sandbox effect),該等受限之可用者被進一步減少。換言之,即使例如傳統USB儲存器373等周邊輸入∕輸出裝置被智能主機363辨識,除了本地支援之檔案應用所容許的內容之外,其不能執行例如備份及恢復等其他有用功能,該檔案應用僅容許在智能主機363上探索及播放USB儲存器373中儲存之內容。
如第3圖所示,一專用智能主機463之一傳統實例用於藉由介面通道4600連接至專用周邊輸入∕輸出裝置473。介面通道4600具有兩個介面連接部461、471。介面通道4600之端部其中之一連接至專用智能主機463之介面連接部462。介面通道4600之另一端部連接至專用周邊輸入∕輸出裝置473之介面連接部472。專用智能主機463上還需要一應用程式464,以供使用者在專用周邊輸入∕輸出裝置473上執行目標功能。
由於與專用周邊輸入∕輸出裝置473之硬體相容性問題,專用智能主機464必需在計算能力、使用者介面輸入∕輸出、物理尺寸、介面連接部、裝置驅動程式、韌體、作業系統及應用方面進行定製設計。相較於本發明實施例及實例而言,傳統技術之缺點包含剛性結構、擴展靈活性較低、開發及部署時間較長、不能隨著技術進步而縮放、以及導致較高成本之規模經濟性相對低。
第4圖所示通用周邊延伸器結構及系統之一實例包含一通用周邊延伸器10、複數個智能主機163、複數個周邊輸入∕輸出裝置173、複數個介面通道1600、1700、1800、複數個電源11、12、183及至少一對應之應用程式164。
通用周邊延伸器10更包含計算裝置14、輸入∕輸出裝置之轉換及管理部13、輸入∕輸出介面15、能量儲存單元11、電源管理∕充電單元12及介面連接部16、17、18。通用周邊延伸器10藉由介面連接部18及介面通道1800供電,介面通道1800包含介面連接部180、181並藉由介面連接部182連接至電源適配器183。通用周邊延伸器10還藉由介面連接部17及介面通道1700連接,介面通道1700包含介面連接部170、171並藉由介面連接部172連接至周邊輸入∕輸出裝置173。通用周邊延伸器10還藉由介面連接部16及介面通道1600連接,介面通道1600包含介面連接部160、161,並藉由介面連接部162連接至一智能主機163。
智能主機163可為一手機、一個人資料助理(personal data assistant ;PDA)、一個人媒體播放機裝置、一無線網路觀看裝置(wireless web-watch device)、一個人耳機裝置、一應用專用裝置或一包含任何上述功能之混合裝置。智能主機163亦可被實作為一包含筆記型電腦及非筆記型電腦配置二者之個人電腦。
介面連接部可為一符合主機或輸入∕輸出裝置中之一特定介面之物理或虛擬連接部。介面通道(無論是有線的還是無線的)可為各種主機與輸入輸出裝置之間之介面連接部。電源可藉由一外部電源適配器183、一內部電源管理∕充電單元12或一能量儲存單元11。
如第4圖進一步所示,周邊輸入∕輸出裝置173可為一醫療超音波掃描儀探針內視鏡、超音波儀器、X射線、心電圖(ECG)儀器、無創血糖儀、銷售點系統、非接觸式紅外溫度計、血壓計、AI協同處理器等。連接於周邊輸入∕輸出裝置173之一應用程式164亦被用來安裝於智能主機163上,以供使用者執行醫用超音波儀器功能,例如超音波影像觀察。
傳統周邊輸入∕輸出裝置以及醫療及工業周邊輸入∕輸出裝置一般以與連接於通用周邊延伸器10及智能主機163之上述超音波掃描儀探針173類似的方式工作。智能主機163如何藉由通用周邊延伸器10存取兩個不同周邊輸入∕輸出裝置之間之差異在於周邊輸入∕輸出裝置173及對應之應用程式164。
相較於傳統技術而言,通用周邊延伸器結構及系統之實例及實施例在結構之靈活性、更容易擴展及升級、高效能、普遍性、易於開發及部署、更小之尺寸以及導致更低成本之高規模經濟之標準化方面帶來了許多有益效果。
藉由利用通用周邊延伸器上之硬體映射及轉換以及在智能主機上為每一預期周邊裝置輸入∕輸出裝置運行之對應之應用程式,幾乎所有周邊輸入∕輸出裝置皆能夠連接及部署至智能主機,而不存在由智能主機平台之封閉性所強加之原始約束。
第5A圖及第5B圖例示一智能主機、一通用延伸器及一周邊輸入∕輸出裝置之間之兩種物理連接組合之實例。在此兩種連接組合中,需要至少一智能主機用於使用者介面目的。
第5A圖示出連接至一通用延伸器10及一周邊輸入∕輸出裝置173之一智能主機163。通用周邊延伸器10包含計算裝置14、輸入∕輸出裝置之轉換及管理部13、輸入∕輸出介面15、能量儲存單元11、電源管理∕充電單元12、介面連接部16、17、18及一對應之應用程式164。通用周邊延伸器10藉由介面連接部18供電。通用周邊延伸器10還藉由介面連接部17及介面通道1700(未示出)連接,介面通道1700包含介面連接部170、171,並藉由介面連接部172連接至一周邊輸入∕輸出裝置173。通用周邊延伸器10亦藉由介面連接部16及介面通道1600(未示出)連接,介面通道1600包含介面連接部160、161,並藉由介面連接部162連接至一智能主機163。介面連接部16、17、18及160、161、170、171可包含但不限於USB-A、PCIe、SATA、以太網路、WiFi、藍牙、USB-C、閃電、雷電介面及HDMI。周邊輸入∕輸出裝置173可為一醫療超音波掃描儀探針。連接於周邊輸入∕輸出裝置173之一應用程式164亦用於安裝於智能主機163上,以供使用者執行醫療超音波儀器功能(例如超音波影像觀察)。
第5B圖示出連接至一通用延伸器10及另一智能主機1630之一智能主機163。可連接其他周邊輸入∕輸出裝置,但在第5圖中未示出。若不存在其他周邊輸入∕輸出裝置被連接,則每一智能主機163、1630可藉由通用周邊延伸器10中的輸入∕輸出裝置之轉換及管理部13功能用作相對之智能主機1630、163之一周邊輸入∕輸出裝置。在此種配置下,亦可利用互動作業流程,包含該兩個智能主機163、1630之間之資料傳輸或備份恢復功能。通用周邊延伸器10包含計算裝置14、輸入∕輸出裝置之轉換及管理部13、輸入∕輸出介面15、能量儲存單元11、電源管理∕充電單元12、以及介面連接部16、17、18及一對應之應用程式164、1640。通用周邊延伸器10藉由介面連接部18供電。通用周邊延伸器10藉由介面連接部16及介面通道1600(未示出)連接,介面通道1600包含介面連接部160、161,並藉由介面連接部162連接至一智能主機163。通用周邊延伸器10還藉由介面連接部17及介面通道1700(未示出)連接,介面通道1700包含介面連接部170、171,並藉由介面連接部1620連接至一智能主機1630。介面連接部16、17、18及160、161、170、171可包含但不限於USB-A、PCIe、SATA、以太網路、WiFi、藍牙、USB-C、Lightning、Thunderbolt及HDMI。應用程式164亦用於安裝於智能主機163上,以供使用者執行醫療ECG儀器功能,例如ECG影像觀察。應用程式1640亦用於安裝於智能主機1630上,以供使用者執行X射線功能,例如X射線影像觀察。
第6圖顯示裝置控制程式。每一周邊輸入∕輸出裝置包含裝置控制程式,以藉由一特定介面與主機通訊。如第6圖所示,周邊輸入∕輸出裝置在61中監聽介面。接下來,周邊輸入∕輸出裝置在62中進行一檢查以確定周邊輸入∕輸出裝置是否被智能主機發現。若周邊輸入∕輸出裝置沒有被智能主機發現(N),則周邊輸入∕輸出裝置返回至回圈中等待在61中監聽介面。若周邊輸入∕輸出裝置被智能主機發現(Y),則周邊輸入∕輸出裝置在63中開始等待智能主機請求。周邊輸入∕輸出裝置然後在64中處理主機請求。之後,周邊輸入∕輸出裝置在65中進行一檢查以確定主機會話是否結束。若主機會話沒有結束,則周邊輸入∕輸出裝置返回至在63中等待主機請求。否則,若主機會話結束,則周邊輸入∕輸出裝置返回至在61中監聽介面,並全部重新開始。
第7圖示出智能主機應用程式流程。每一周邊輸入∕輸出裝置包含智能主機端程式,以藉由一特定介面與智能主機通訊。如第7圖所示,由智能主機執行之一智能主機應用在70中啟動一目標輸入∕輸出圖形使用者介面(Graphical User Interface;GUI)。智能主機然後在71中列舉目標周邊(目標)輸入∕輸出裝置。亦即,列舉目標輸入∕輸出裝置是通過目標輸入∕輸出裝置被附加至通用周邊延伸器系統並被分配一將用於存取目標輸入∕輸出裝置之特定數字位址所藉由之一過程。其亦為智能主機查詢目標輸入∕輸出裝置,以決定目標輸入∕輸出裝置是哪種類型的裝置,以嘗試分配一適當驅動程式給目標輸入∕輸出裝置之時間。智能主機在72中進行一檢查以確定目標輸入∕輸出裝置是否為在線狀態。若目標輸入∕輸出裝置為不在線,則過程返回至在71中再次列舉目標輸入∕輸出裝置。否則,若目標輸入∕輸出裝置為在線,則智能主機在73中增加目標輸入∕輸出裝置至端點列表。智能主機然後在74中發送一重置指令給目標輸入∕輸出裝置。智能主機然後在75中自目標輸入∕輸出裝置獲取描述符。例如,描述符可為一USB描述符,可包含裝置描述符、配置描述符、介面描述符、端點描述符及字符串描述符。之後,智能主機在76中分配一裝置位址給目標輸入∕輸出裝置。智能主機然後在77中自目標輸入∕輸出裝置獲得一整個描述符表。智能主機在78中進行一檢查以確定目標輸入∕輸出裝置是否為可用的。例如,USB裝置具有一描述符層次結構,該等描述符向主機描述例如裝置是什麼、其是誰製造的、其支援什麼版本之USB、其可配置多少種方式、端點數目及其類型等資訊。若裝置為可用,則該等描述符定義為主機內部或通用周邊延伸器內部之準則。若目標輸入∕輸出裝置為不可用,則在780中遇到一錯誤,且過程返回至在71中再次列舉目標輸入∕輸出裝置。否則,若目標輸入∕輸出裝置為可用,則智能主機在79中激活目標輸入∕輸出裝置上之配置。例如,配置(描述符)規定裝置之供電方式、最大功耗是什麼以及裝置具有之介面數目。智能主機在791中開始與目標輸入∕輸出裝置互動。智能主機然後在793中進行一檢查以確定應用程式是否要結束。若應用程式要結束,則退出程式。否則,智能主機在794中進行另一檢查以確定主機會話是否結束。若主機會話結束,則智能主機過程返回至在71中再次列舉目標輸入∕輸出裝置。否則,若主機會話繼續進行,則智能主機在791中繼續與目標輸入∕輸出裝置互動。
第8圖示出裝置端輸入∕輸出裝置之轉換及管理程式。通用周邊延伸器包含裝置端輸入∕輸出裝置之轉換及管理程式,以藉由一特定介面與目標輸入∕輸出裝置通訊。
如第8圖所示,通用周邊延伸器在81中列舉目標輸入∕輸出裝置。通用周邊延伸器在82中進行一檢查以確定目標輸入∕輸出裝置是否為在線狀態。若目標輸入∕輸出裝置為不在線,則該過程返回至在81中再次列舉目標輸入∕輸出裝置。否則,若裝置為在線,則通用周邊延伸器在83中增加目標輸入∕輸出裝置至端點列表。通用周邊延伸器然後在84中發送一重設指令給目標輸入∕輸出裝置。通用周邊延伸器然後在85中自目標輸入∕輸出裝置獲取描述符。之後,通用周邊延伸器在86中分配一裝置位址給目標輸入∕輸出裝置。然後在87中,自目標輸入∕輸出裝置獲取整個描述符表。通用周邊延伸器在88中進行一檢查以確定目標輸入∕輸出裝置是否為可用的。若目標輸入∕輸出裝置為不可用,則通用周邊延伸器在880中遇到一錯誤,並且該過程返回至在81中再次列舉目標輸入∕輸出裝置。否則,若目標輸入∕輸出裝置為可用,則通用周邊延伸器在89中激活目標輸入∕輸出裝置上之配置。通用周邊延伸器然後在890中在轉換及管理表中配置目標輸入∕輸出裝置屬性。通用周邊延伸器然後在891中開始與目標輸入∕輸出裝置互動。通用周邊延伸器在892中啟動主機∕裝置之轉換及管理排程。通用周邊延伸器然後在893中進行一檢查以確定應用程式是否要結束。若應用程式要結束,則退出應用程式。否則,通用周邊延伸器在894中進行另一檢查以確定主機會話是否結束。若主機會話結束,則該過程返回給通用周邊延伸器在81中再次列舉目標輸入∕輸出裝置。否則,若主機會話繼續進行,則通用周邊延伸器在891中繼續與目標輸入∕輸出裝置互動。
第9圖示出主機端輸入∕輸出裝置之轉換及管理程式。通用周邊延伸器包含主機端程式,以藉由一特定介面與智能主機通訊。
如第9圖所示,通用周邊延伸器在91中監聽介面。接下來,通用周邊延伸器在92中進行一檢查以確定通用周邊延伸器是否被智能主機發現。若通用周邊延伸器沒有被智能主機發現,則該過程返回以使通用周邊延伸器在迴圈中等待,然後在91中監聽介面。否則,若通用周邊延伸器被智能主機發現,則通用周邊延伸器在920中開始在轉換及管理表中配置主機屬性。例如,通用周邊延伸器發揮智能主機之一裝置之作用。通用周邊延伸器將記錄主機配置之屬性,包含裝置之供電方式、最大功耗是什麼、其具有之介面數目及通訊速度。通用周邊延伸器然後在93中等待智能主機請求,並在930中開始一主機會話。通用周邊延伸器然後在94中處理智能主機請求。通用周邊延伸器在940中啟動主機∕裝置之轉換及管理排程。例如,第8圖、第9圖及第10圖所述之硬體映射及轉換與目標輸入∕輸出裝置之列舉相關聯。一旦如在88中確定目標輸入∕輸出裝置為可用,則如在890中,目標輸入∕輸出裝置屬性被記錄於通用周邊延伸器內之裝置映射及表中。然後,如在892及940中,目標輸入∕輸出裝置準備好轉換以可用於智能主機之請求94。之後,通用周邊延伸器在95中進行一檢查以確定主機會話是否結束。若主機會話沒有結束,則通用周邊延伸器之過程返回至在93中等待智能主機請求。否則,若主機會話結束,則通用周邊延伸器返回至在91中監聽介面,並且重新開始該過程。
第10圖示出主機∕裝置之轉換及管理排程程式。通用周邊延伸器包含主機∕裝置之轉換及管理排程程式,以藉由特定介面排程智能主機請求及目標輸入∕輸出裝置回應。
如第10圖所示,通用周邊延伸器在100中查找主機∕裝置之轉換及管理表。接下來,通用周邊延伸器在101中進行一檢查,以確定智能主機及目標輸入∕輸出裝置是否相容。例如,若主機配置屬性不處於裝置之處理能力範圍內,則智能主機及目標輸入∕輸出裝置不相容。若智能主機及目標輸入∕輸出裝置不相容,則通用周邊延伸器在99中結束主機會話。否則,若智能主機及目標輸入∕輸出裝置相容,則通用周邊延伸器在102中開始處理∕排程智能主機之主機端請求。通用周邊延伸器然後在103中轉換智能主機請求給目標輸入∕輸出裝置,並在104中傳遞該請求給裝置端的目標輸入∕輸出裝置。例如,在轉換期間,通用周邊延伸器用作智能主機與目標輸入∕輸出裝置之間之一中間人。由於缺乏主機端之本地支援,智能主機及目標輸入∕輸出裝置無法相互辨識。一旦通用周邊延伸器驗證了主機請求,則通用周邊延伸器轉而承擔作為目標輸入∕輸出裝置之一主機之一作用。通用周邊延伸器轉換主機之原始請求,並以目標輸入∕輸出裝置可理解之形式或格式來傳遞該原始請求。通用周邊延伸器然後在105中等待目標輸入∕輸出裝置回應,並在106中轉換裝置回應給智能主機,並且在107中將該回應傳遞回主機端上之智能主機。在將該回應傳遞回智能主機之後,通用周邊延伸器在108中進行一檢查,以確定是否有一指令用以結束主機會話。若主機會話沒有結束,則通用周邊延伸器返回至在102中處理及排程主機端請求。否則,若主機會話結束,則退出程式。
其他實例包含基於包含一可攜式超音波影像掃描儀、USB儲存備份∕恢復系統、心電圖系統、智能讀卡器、可攜式內視鏡、可攜式無創血糖儀、可攜式銷售點系統、可攜式血壓計、非接觸式紅外溫度計及AI協處理器之通用周邊延伸器結構及系統之一智能主機應用系統。
熟習此項技術者將理解,對於本文揭露之此種及其他過程及方法,在該等過程及方法中執行之功能可以不同之順序實施。此外,概述之步驟及作業流程僅作為實例提供,並且在不背離所揭露之實例或實施例之本質條件下,該等步驟及作業流程其中之一些可為可選的,組合成更少之步驟及作業流程,或者擴展成附加之步驟及作業流程。
此外,本揭露在本申請案中闡述之特定實例或實施例方面不受限制,該等實例或實施例旨在作為對各個態樣之例示。對於熟習此項技術者而言將顯而易見的是,在不背離其精神及範圍之情況下,可進行許多修改及變化。除了本文列舉之方法及設備之外,本揭露範圍內之功能等同之方法及甚至設備對於熟習此項技術者而言將藉由前述說明而顯而易見。此種修改及變化旨在落入隨附申請專利範圍之範圍內。本揭露僅由隨附申請專利範圍之各項以及此種申請專利範圍授權之等效形式之全部範圍來限制。應理解,本揭露不限於特定方法、試劑、化合物、組成物或生物系統,該等特定方法、試劑、化合物、組成物或生物系統當然可變化。亦應當理解,本文使用之術語僅僅是為了闡述特定實例或實施例,而非旨在進行限制。
本文闡述之計算作業流程、過程等可實施為儲存於一電腦可讀取媒體上之電腦可讀取程式指令。電腦可讀取程式指令可例如由一行動單元、一網路元件及∕或任何其他計算裝置之一處理器來執行。
在一實例中,計算裝置14通常包含一或多個中央處理單元(Central Processing Unit;CPU)處理器及一系統記憶體。一記憶體匯流排可用於處理器與系統記憶體之間之通訊。
資料儲存裝置可為可移除儲存裝置、不可移除儲存裝置或其組合。舉幾個實例而言,可移除儲存裝置及不可移除儲存裝置之實例包含磁碟裝置,例如軟碟驅動程式及硬碟驅動機(hard-disk drive;HDD)、光碟驅動機(例如光碟(compact disk ;CD)驅動機或數位多功能光碟(DVD)驅動機)、固態驅動機(SSD)及磁帶驅動機。實例性電腦儲存媒體可包含以用於儲存例如電腦可讀取程式指令、資料結構、程式模組或其他資料等資訊之任何方法或技術實施之揮發性及非揮發性、可移除及不可移除媒體。
系統記憶體、可移除儲存裝置及不可移除儲存裝置為電腦儲存媒體之實例。電腦儲存媒體可包含但不限於隨機存取記憶體(Random Access Memory;RAM)、唯讀記憶體(Read-only memory;ROM)、電可抹除可程式化唯讀記憶體(Electrically Erasable Programmable Read - Only Memory;EEPROM)、快閃記憶體或其他記憶體技術、光碟唯讀記憶體(Compact Disc Read - Only Memory;CD-ROM)、數位多功能光碟(DVD)或其他光學儲存器、盒式磁帶、磁帶、磁碟儲存器或其他磁性儲存裝置,或者可用於儲存所需資訊並且可由計算裝置14存取之任何其他媒體。任何此種電腦儲存媒體皆可為計算裝置14之一部分。
計算裝置14可被實施為一小型可攜式(或行動)電子裝置之一部分,例如一手機、一個人資料助理(PDA)、一個人媒體播放機裝置、一無線網路觀看裝置、一個人耳機裝置、一應用專用裝置或一包含任何上述功能之混合裝置。計算裝置14亦可實作為一個人電腦,包含筆記型電腦及非筆記型電腦配置二者。
系統各態樣之硬體實作方式與軟體實作方式之間幾乎沒有區別;硬體或軟體之使用通常是(但不總是,因為在某些上下文中,硬體與軟體之間之選擇可變得非常重要)一代表成本與效率權衡之設計選擇。存在各種可實作本文所述之過程及∕或系統及∕或其他技術之工具(例如,硬體、軟體及∕或韌體),且較佳工具可隨著過程及∕或系統及∕或其他技術被部署之上下文而變化。例如,若實施者確定速度及準確度為最重要的,則實施者可選擇一主要硬體及∕或韌體工具;若靈活性為最重要的,則實施者可選擇一主要軟體實作方式;或者,再次作為另一選擇,實施者可選擇硬體、軟體及∕或韌體之某種組合。
前述詳細說明已經闡述了用於藉由使用方塊圖、流程圖及∕或實例來連接傳統、醫療及工業應用中之通用周邊輸入∕輸出裝置及通用智能主機之裝置及∕或過程之各種實例或實施例。在此種方塊圖、流程圖及∕或實例包含一或多個功能及∕或作業流程之範圍內,熟習此項技術者將理解,此種方塊圖、流程圖或實例內之每一功能及∕或作業流程可藉由廣泛之硬體、軟體、韌體或實際上其任何組合來單獨地及∕或共同地實施。熟習此項技術者將認識到,本文揭露之實例或實施例之一些態樣全部或部分地可等同地在積體電路中實施,作為在一或多個電腦上運行之一或多個電腦程式(例如,作為在一或多個電腦系統上運行之一或多個程式)、作為在一或多個處理器上運行之一或多個程式(例如,作為在一或多個微處理器上運行之一或多個程式)、作為韌體或實際上作為其任意組合,並且根據本揭露,設計電路系統及∕或為軟體及∕或韌體寫入代碼將完全處於熟習此項技術者之技能範圍內。此外,熟習此項技術者將理解,本文闡述之標的之機制能夠以各種形式作為一程式產品分發,並且無論用於實際實施分發之訊號承載媒體之特定類型如何,本文闡述之標的之例示性實例或實施例皆適用。一訊號承載媒體之實例包含但不限於下列:一可記錄型媒體,例如一軟碟、一硬碟驅動機、一固態驅動機、一光碟、一DVD、一數位磁帶、一電腦記憶體等;以及一傳輸型媒體,例如一數位及∕或一類比通訊媒體(例如,一光纜、一波導、一有線通訊鏈路、一無線通訊鏈路等)。
熟習此項技術者將會認識到,此項技術中常見的是以本文闡述之方式闡述裝置及∕或過程,並且此後使用工程實踐來將此種闡述之裝置及∕或過程整合至資料處理系統中。亦即,本文闡述之裝置及∕或過程之至少一部分可藉由一合理數量之實驗整合至一資料處理系統中。熟習此項技術者將認識到,一典型之資料處理系統一般包含以下其中之一或多者:一系統單元殼體、一視訊顯示裝置、例如揮發性及非揮發性記憶體等一記憶體、例如微處理器及數位訊號處理器等處理器、例如作業系統、驅動程式、圖形使用者介面及應用程式等計算實體、例如一觸摸板或螢幕等一或多個互動裝置及∕或包含回饋回圈及控制馬達(例如,用於感測位置及∕或速度之回饋;用於移動及∕或調整組件及∕或數量之控制馬達)之控制系統。一典型之資料處理系統可利用任何合適之市售組件(例如通常在資料計算∕通訊及∕或網路計算∕通訊系統中發現之該等組件)來實作。
最後,關於本文中實質上任何複數及∕或單數用語之使用,熟習此項技術者可根據上下文及∕或應用將複數轉換成單數及∕或將單數轉換成複數。為清楚起見,可明確闡述各種單數∕複數排列。
熟習此項技術者將理解,一般而言,本文所用之用語、且特別是在隨附申請專利範圍(例如,隨附申請專利範圍之主體)中使用之用語一般旨在作為「開放式」用語(例如,用語「包含(including)」應被解釋為「包含,但不僅限於」,用語「具有(having)」應被解釋為「具有至少」,用語「包含(includes)」應被解釋為「包含,但不僅限於」等)。熟習此項技術者更將理解,若旨在使一所介紹請求項陳述物為一特定數目,則將在該請求項內明確地陳述此種意圖,而在不進行此種陳述之情況下,則不存在此種意圖。舉例而言,為幫助理解,以下隨附申請專利範圍可含有使用介紹性片語「至少一」及「一或多個」來介紹請求項陳述物。然而,此種片語之使用不應被視為暗示以不定冠詞「一」進行之一請求項陳述物之介紹將含有此種所介紹請求項陳述物之任意特定請求項限制於僅含有一個此種陳述物之實例或實施例,即便當同一請求項包含介紹性片語「一或多個」或「至少一」及例如「一」等不定冠詞(例如,「一」應被解釋為意指「至少一」或「一或多個」)時;此同樣適用於介紹請求項陳述物所使用之定冠詞。此外,即使明確陳述一所介紹請求項陳述物之一特定數目,熟習此項技術者將認識到,此種陳述物應該被解釋為意謂至少所陳述之數目,例如,沒有其他修飾語之「兩個陳述物」之裸陳述意謂至少兩個陳述物,或者二或更多個陳述物。此外,在其中使用「A、B及C至少其中之等」之一慣例類似用語之情況下,此種造句一般旨在使熟習此項技術者將理解該慣例(例如,「具有A、B及C至少其中之一之一系統」將包含但不限於僅具有A、僅具有B、僅具有C、具有A及B二者、具有A及C二者、具有B及C二者、及∕或具有A、B及C三者之系統等)。在其中使用「A、B或C至少其中之等」之一慣例類似用語之情況下,此種造句一般旨在使熟習此項技術者將理解該慣例(例如,「具有A、B或C至少其中之一之一系統」將包含但不限於僅具有A、僅具有B、僅具有C、具有A及B二者、具有A及C二者、具有B及C二者、及∕或具有A、B及C三者之系統等)。熟習此項技術者更將理解,事實上,無論是在實施方式中、申請專利範圍中、還是在圖式中,任一轉折性詞語及∕或呈現二或更多個供選擇項之片語應被理解為涵蓋包含該等項其中之一、該等項其中之任一者、或該等項二者之可能性。舉例而言,片語「A或B」將被理解為包含「A」或「B」或者「A及B」之可能性。
此外,在根據馬庫什群組(Markush group)闡述本揭露之特徵或態樣之情況下,熟習此項技術者將認識到,本揭露亦因此根據馬庫什群組之任何單個成員或成員之子組來闡述。
自前述將會理解,本文已經闡述了本揭露之各種實例或實施例用於例示目的,且在不背離本揭露之範圍及精神之情況下,可進行各種修改。因此,本文揭露之各種實例或實施例不旨在進行限制,真正之範圍及精神由以下申請專利範圍來指示。
10:通用周邊延伸器 11:電源∕能量儲存單元 12:電源∕電源管理∕充電單元 13:輸入∕輸出裝置之轉換及管理部 14、24、34:計算裝置 15、25、35:輸入∕輸出介面 16、17、18、26、27、28、36、37、38、160、161、162、170、171、172、180、181、182、260、261、262、362、372、461、471、472、1620:介面連接部 20:計算主機 23:輸入∕輸出集線器管理部 30、33:輸入∕輸出集線器裝置 61、62、63、64、65、70、71、72、73、74、75、76、77、78、79、81、82、83、84、85、86、87、88、89、91、92、93、94、95、100、101、102、103、104、105、106、107、108、780、791、793、794、880、890、891、892、893、894、920、930、940:作業流程 163、363、1630:智能主機 164、264、464、1640:應用程式 173:輸入∕輸出裝置∕智能讀卡器∕周邊輸入∕輸出裝置∕超音波掃描儀探針 183:電源∕電源適配器 240:輸入∕輸出裝置驅動程式 263:使用者介面裝置 364:本地應用程式 373:輸入∕輸出裝置∕USB儲存器 463:專用智能主機 473:專用周邊輸入∕輸出裝置 1600、1700、1800、2600、4600:介面通道
圖式例示本發明的若干實例,且與本說明一起用於解釋本發明的原理。此項技術中具有通常知識者容易認識到,各圖中所示之實例僅是實例性的,且不旨在限制本發明之範圍。
第1圖例示具有連接於傳統輸入∕輸出裝置之輸入∕輸出裝置驅動程式之一計算主機的一傳統實例。
第2圖例示與連接於本地支援之輸入∕輸出裝置的一輸入∕輸出集線器裝置互動之一智能主機之一傳統實例。
第3圖例示用於連接至專用周邊輸入∕輸出裝置之一專用智能主機之一傳統實例。
第4圖例示通用周邊延伸器結構及系統之一實例。
第5圖例示智能主機、通用延伸器及周邊輸入∕輸出裝置之間的兩種物理連接組合之實例。
第6圖例示裝置控制程式之一實例。
第7圖例示智能主機應用程式之一實例。
第8圖例示裝置端輸入∕輸出裝置之轉換及管理程式之一實例。
第9圖例示主機端輸入∕輸出裝置之轉換及管理程式之一實例。
第10圖例示主機∕裝置之轉換及管理排程程式之一實例。
10:通用周邊延伸器
11:電源/能量儲存單元
12:電源/電源管理/充電單元
13:輸入/輸出裝置之轉換及管理部
14:計算裝置
15:輸入/輸出介面
16、17、18、160、161、162、170、171、172、180、181、182:介面連接部
163:智能主機
164:應用程式
173:輸入/輸出裝置/智能讀卡器/周邊輸入/輸出裝置/超音波掃描儀探針
183:電源/電源適配器
1600、1700、1800:介面通道

Claims (15)

  1. 一種通用周邊延伸器系统,包含 一通用周邊延伸器; 至少一介面通道; 至少一智能主機; 至少一周邊輸入∕輸出裝置; 至少一電源;以及 至少一對應的應用程式,分別地連接於至少一目標輸入∕輸出裝置; 其中,該通用周邊延伸器通過該至少一介面通道分別通訊地耦合至該至少一智能主機、該目標輸入∕輸出裝置及該至少一周邊輸入∕輸出裝置; 其中,該至少一周邊輸入∕輸出裝置分別地包含一介面連接部通訊連接於該至少一介面通道;以及 其中,該對應的應用程式連接於該目標輸入∕輸出裝置且安裝於該至少一智能主機,以執行該目標輸入∕輸出裝置的一功能。
  2. 如請求項1所述之通用周邊延伸器系統,其中該通用周邊延伸器包含: 一計算裝置; 一輸入∕輸出裝置之轉換及管理模組; 複數個輸入∕輸出介面; 一能量儲存單元; 一電源管理∕充電單元;以及 複數個介面連接部。
  3. 如請求項2所述之通用周邊延伸器系統,其中該輸入∕輸出裝置之轉換及管理模組包含: 該輸入∕輸出裝置之轉換及管理模組的一裝置端程式; 該輸入∕輸出裝置之轉換及管理模組的一主機端輸入∕輸出裝置之轉換及管理程式;以及 一主機∕裝置之轉換及管理排程程式。
  4. 如請求項3所述之通用周邊延伸器系統,其中該輸入∕輸出裝置之轉換及管理模組包含一裝置端程式,該裝置端程式用以因應於執行,使該計算裝置執行下列作業流程,包含: 列舉該目標輸入∕輸出裝置; 進行一檢查以確定該目標輸入∕輸出裝置是否為在線狀態; 因應該目標輸入∕輸出裝置為不在線,返回該等作業流程至該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為在線,增加該目標輸入∕輸出裝置至一端點列表; 發送一重置(RESET)指令給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置獲取一描述符; 分配一裝置位址給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置獲取一描述符表; 進行一檢查以確定該目標輸入∕輸出裝置是否為可用的; 因應該目標輸入∕輸出裝置為不可用,回應遇到錯誤,且該過程返回該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為不可用,激活該目標輸入∕輸出裝置上的配置; 於該目標輸入∕輸出裝置之轉換及管理表中配置該目標輸入∕輸出裝置屬性; 與該目標輸入∕輸出裝置進行互動; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該應用程式是否要結束; 因應該應用程式結束,退出該應用程式; 因應該應用程式繼續進行,進行另一檢查以確定一主機會話是否結束; 因應該主機會話結束,返回該作業流程至該列舉該目標輸入∕輸出裝置;以及 因應該主機會話繼續進行,繼續與該目標輸入∕輸出裝置進行互動。
  5. 如請求項4所述之通用周邊延伸器系統,其中該列舉該目標輸入∕輸出裝置是藉由該目標輸入∕輸出裝置附加至該通用周邊延伸器系統,且分配一特定數值位址的一過程,且該特定數值位址是用以存取該目標輸入∕輸出裝置。
  6. 如請求項4所述之通用周邊延伸器系統,其中該列舉包含:進行一次該智能主機查詢該目標輸入∕輸出裝置以決定該目標輸入∕輸出裝置是哪種類型的裝置,以分配一適當的驅動程式給該目標輸入∕輸出裝置。
  7. 如請求項3所述之通用周邊延伸器系統,其中該目標輸入∕輸出裝置之轉換及管理模組包含一主機端輸入∕輸出裝置之轉換及管理程式,該主機端輸入∕輸出裝置之轉換及管理程式用以因應於執行,使得該計算裝置執行下列進一步的作業流程,包含: 監聽該介面; 進行一檢查以確定該通用周邊延伸器是否被該至少一智能主機發現; 因應該通用周邊延伸器沒有被該至少一智能主機發現,返回該作業流程至一迴圈等待該監聽該介面; 因應該通用周邊延伸器有被該至少一智能主機發現,在該主機∕裝置之轉換及管理表中配置該主機∕裝置屬性; 等待一智能主機請求; 因應接收到該智能主機請求,開始一主機會話; 處理該智能主機請求; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該主機會話是否結束; 因應該主機會話未結束,返回至該等待該智能主機請求的該作業流程; 因應該主機會話結束,返回至該監聽該介面;以及 重新開始該等作業流程。
  8. 如請求項3所述之通用周邊延伸器系統,其中該輸入∕輸出裝置之轉換及管理模組包含一主機∕裝置之轉換及管理排程程式,該主機裝置之轉換及管理排程程式用以因應於執行,使得該計算裝置執行下列進一步的作業流程,包含: 查找該等主機∕裝置之轉換及管理表; 進行一檢查以確定該至少一智能主機及該目標輸入∕輸出裝置是否相容; 因應該至少一智能主機及該目標輸入∕輸出裝置不相容,結束該主機會話; 因應該至少一智能主機及該目標輸入∕輸出裝置相容,處理及排程該至少一智能主機的一主機端請求; 轉換該智能主機請求給該目標輸入∕輸出裝置; 傳遞該請求給該裝置端的該目標輸入∕輸出裝置; 等待該目標輸入∕輸出裝置回應及轉換該裝置回應給該至少一智能主機; 將該回應傳遞回該主機端的該至少一智能主機; 進行一檢查以確定是否有一指令用以結束該主機會話; 因應該主機會話未結束,返回至處理及排程該主機端請求; 因應結束該主機會話的一指令,結束該主機會話及退出。
  9. 一種通用周邊延伸器,包含一輸入∕輸出裝置之轉換及管理模組,其中該輸入∕輸出裝置之轉換及管理模組包含: 一裝置端程式; 一主機端輸入∕輸出裝置之轉換及管理程式;以及 一主機∕裝置之轉換及管理排程程式
  10. 如請求項9所述之通用周邊延伸器,其中執行該用以該輸入∕輸出裝置之轉換及管理模組之該裝置端程式,使該通用周邊延伸器的一計算裝置執行下列作業流程,包含: 列舉該目標輸入∕輸出裝置; 進行一檢查以確定該目標輸入∕輸出裝置是否為在線狀態; 因應該目標輸入∕輸出裝置為不在線,返回該等作業流程至該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為在線,增加該目標輸入∕輸出裝置至一端點列表; 發送一重置指令給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置中獲取一描述符; 分配一裝置位址給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置中獲取一描述符表; 進行一檢查以確定該目標輸入∕輸出裝置是否為可用的; 因應該目標輸入∕輸出裝置不可用,回應遇到錯誤,且該過程返回該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為可用,激活該目標輸入∕輸出裝置上的配置; 於該目標輸入∕輸出裝置之轉換及管理表中配置該目標輸入∕輸出裝置屬性; 與該目標輸入∕輸出裝置進行互動; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該應用程式是否要結束; 因應該應用程式正結束,退出該應用程式; 因應該應用程式繼續進行,進行另一檢查以確定主機會話是否結束; 因應該主機會話結束,返回該作業流程至該列舉該目標輸入∕輸出裝置;以及 因應該主機會話繼續進行,繼續與該目標輸入∕輸出裝置進行互動。
  11. 如請求項9所述之通用周邊延伸器,其中執行該輸入∕輸出裝置之轉換及管理模組的該主機端輸入∕輸出裝置之轉換及管理程式,使得該通用周邊延伸器的該計算裝置執行下列作業流程,包含: 監聽該介面; 進行一檢查以確定該通用周邊延伸器是否被一智能主機發現; 因應該通用周邊延伸器沒有被該智能主機發現,返回該作業流程至一迴圈等待該監聽該介面; 因應該通用周邊延伸器有被該智能主機發現,在該主機∕裝置之轉換及管理表中配置該主機∕裝置屬性; 等待一智能主機請求; 因應接收到該智能主機請求,開始一主機會話; 處理該智能主機請求; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該主機會話是否結束; 因應該主機會話未結束,返回至該等待該主機請求的該作業流程; 因應該主機會話結束,返回該監聽該介面,以及 重新開始該等作業流程。
  12. 如請求項9所述之通用周邊延伸器,其中執行該輸入∕輸出裝置之轉換及管理模組的該主機∕裝置之轉換及管理排程程式,使得該該通用周邊延伸器的該計算裝置執行下列進一步作業流程,包含: 查找該等主機∕裝置之轉換及管理表; 進行一檢查以確定一智能主機及一目標輸入∕輸出裝置是否相容; 因應該智能主機及該目標輸入∕輸出裝置不相容,結束該主機會話; 因應該智能主機及該目標輸入∕輸出裝置相容,處理及排程該智能主機的一主機端請求; 轉換一智能主機請求給該目標輸入∕輸出裝置; 傳遞該智能主機請求給該裝置端的該目標輸入∕輸出裝置; 等待該目標輸入∕輸出裝置回應及轉換該裝置回應給該智能主機; 將該目標輸入∕輸出裝置回應傳遞回該主機端的該智能主機; 進行一檢查以確定是否有一指令用以結束該主機會話; 因應該主機會話未結束,返回至處理及排程該主機端請求; 因應有結束該主機會話的一指令,結束該主機會話及退出。
  13. 一種電腦程式產品,經由一電子裝置載入該電腦程式產品後,該電子裝置執行該電腦程式產品所儲存的可執行之複數個程式指令,以透過一通用周邊延伸器的一輸入∕輸出裝置之轉換及管理模組通訊地連接一目標輸入∕輸出裝置及一智能主機,藉此因應於執行,使得該通用周邊延伸器的一計算裝置執行該輸入∕輸出裝置之轉換及管理模組的一裝置端程式,以執行下列作業流程,包含: 列舉該目標輸入∕輸出裝置; 進行一檢查以確定該目標輸入∕輸出裝置是否為在線狀態; 因應該目標輸入∕輸出裝置為不在線,返回該等作業流程至該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為在線,增加該目標輸入∕輸出裝置至一端點列表; 發送一重置指令給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置中獲取一描述符; 分配一裝置位址給該目標輸入∕輸出裝置; 從該目標輸入∕輸出裝置中獲取一描述符表; 進行一檢查以確定該目標輸入∕輸出裝置是否為可用的; 因應該目標輸入∕輸出裝置不可用,回應遇到錯誤,且該過程返回該列舉該目標輸入∕輸出裝置; 因應該目標輸入∕輸出裝置為可用,激活該目標輸入∕輸出裝置上的配置; 於該目標輸入∕輸出裝置之轉換及管理表中配置該目標輸入∕輸出裝置屬性; 與該目標輸入∕輸出裝置進行互動; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該應用程式是否要結束; 因應該應用程式結束,退出該應用程式; 因應該應用程式繼續進行,進行另一檢查以確定主機會話是否結束; 因應該主機會話結束,返回該作業流程至該列舉該目標輸入∕輸出裝置;以及 因應該主機會話繼續進行,繼續與該目標輸入∕輸出裝置進行互動。
  14. 如請求項13所述之電腦程式產品,儲存進一步可執行之複數個程式指令,以透過該通用周邊延伸器的該輸入∕輸出裝置之轉換及管理模組通訊地連接該目標輸入∕輸出裝置及該智能主機,藉此因應於執行,使得該通用周邊延伸器的該計算裝置執行該輸入∕輸出裝置之轉換及管理模組的一主機端輸入∕輸出裝置之轉換及管理程式,以執行下列進一步的作業流程,包含: 監聽該介面; 進行一檢查以確定該通用周邊延伸器是否被該智能主機發現; 因應該通用周邊延伸器沒有被該智能主機發現,返回該作業流程至一迴圈等待該監聽該介面; 因應該通用周邊延伸器有被該智能主機發現,在該主機∕裝置之轉換及管理表中配置該主機∕裝置屬性; 等待一智能主機請求; 因應接收到該智能主機請求,開始一主機會話; 處理該智能主機請求; 啟動一主機∕裝置之轉換及管理排程; 進行一檢查以確定該主機會話是否結束; 因應該主機會話未結束,返回至該等待該主機請求的該作業流程; 因應該主機會話結束,返回至該監聽該介面,以及 重新開始該等作業流程。
  15. 如請求項14所述之電腦程式產品,儲存再進一步可執行之複數個程式指令,以透過該通用周邊延伸器的該輸入∕輸出裝置之轉換及管理模組通訊地連接該目標輸入∕輸出裝置及該智能主機,藉此因應於執行,使得該通用周邊延伸器的該計算裝置執行該輸入∕輸出裝置之轉換及管理模組的一主機∕裝置之轉換及管理排程程式,以執行下列再進一步的作業流程,包含: 查找該等主機∕裝置之轉換及管理表; 進行一檢查以確定該智能主機及該目標輸入∕輸出裝置是否相容; 因應該智能主機及該目標輸入∕輸出裝置不相容,結束該主機會話; 因應該智能主機及該目標輸入∕輸出裝置相容,處理及排程從該智能主機獲取的一主機端請求; 轉換該智能主機請求給該目標輸入∕輸出裝置; 傳遞該請求給該裝置端的該目標輸入∕輸出裝置; 等待該目標輸入∕輸出裝置回應及轉換該裝置回應給該智能主機; 將該回應傳遞回該主機端的該智能主機; 進行一檢查以確定是否有一指令用以結束該主機會話; 因應該主機會話未結束,返回至處理及排程該該主機端請求; 因應有結束該主機會話的一指令,結束該主機會話及退出。
TW109146274A 2020-06-09 2020-12-25 通用周邊延伸器結構、系統及電腦程式產品 TWI769640B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/896,917 2020-06-09
US16/896,917 US11593158B2 (en) 2020-06-09 2020-06-09 Universal peripheral extender for communicatively connecting peripheral I/O devices and smart host devices

Publications (2)

Publication Number Publication Date
TW202147128A true TW202147128A (zh) 2021-12-16
TWI769640B TWI769640B (zh) 2022-07-01

Family

ID=72339395

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109146274A TWI769640B (zh) 2020-06-09 2020-12-25 通用周邊延伸器結構、系統及電腦程式產品

Country Status (3)

Country Link
US (1) US11593158B2 (zh)
GB (1) GB2595941B (zh)
TW (1) TWI769640B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220376942A1 (en) * 2021-05-19 2022-11-24 Focus Universal Inc. System and method for a smart home system

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208904B1 (en) 1994-02-02 2001-03-27 Mitsubishi Electric & Electronics Usa, Inc General purpose data communications protocol converter
US6222855B1 (en) 1998-02-19 2001-04-24 Lucent Technologies, Inc. Method and apparatus for converting between differing data and command exchange protocols
US7444493B2 (en) 2004-09-30 2008-10-28 Intel Corporation Address translation for input/output devices using hierarchical translation tables
US7870567B2 (en) * 2005-04-25 2011-01-11 International Business Machines Corporation Configuring a device using information from a device table
US8024500B2 (en) 2005-08-15 2011-09-20 Research In Motion Limited Universal peripheral connector
US7558899B2 (en) 2007-04-04 2009-07-07 Imation Corp. Dongle configured to electrically couple a data storage device and a host computing device
US8504755B2 (en) 2010-03-03 2013-08-06 Plx Technology, Inc. USB 3 bridge with embedded hub
US20110264835A1 (en) 2010-04-21 2011-10-27 I/O Interconnect, Ltd. Control System and Control Docking
US20120011287A1 (en) * 2010-04-22 2012-01-12 I/O Interconnect, Ltd. Port expander with connection identification
US9213661B2 (en) * 2010-06-23 2015-12-15 International Business Machines Corporation Enable/disable adapters of a computing environment
US20120210034A1 (en) 2011-02-14 2012-08-16 Teco Image System Co., Ltd. Portable data processing system and signal input/output device thereof
US8190798B1 (en) * 2011-03-09 2012-05-29 Apple Inc. Client device configuration based on information stored by host device
US9152527B2 (en) 2012-07-09 2015-10-06 Qualcomm Incorporated Method and apparatus for identifying wireless peripherals and their states at a docking host for wireless docking
US9107027B2 (en) * 2012-08-23 2015-08-11 Intel Corporation Wireless connector
US9674687B2 (en) * 2014-03-24 2017-06-06 Qualcomm Incorporated Vendor-specific docking management operations
US9727085B2 (en) 2015-02-04 2017-08-08 Inducomp Corporation Tablet computer system
WO2017100821A1 (en) * 2015-12-17 2017-06-22 Lyrebird Interactive Holdings Pty Ltd Apparatus and method for an interactive entertainment media device
AU2016100189B4 (en) 2016-02-19 2017-08-17 Magnum Technologies International Pty Ltd Peripheral Manager for Cloud/Web-based POS Applications
US20180329837A1 (en) 2017-05-10 2018-11-15 Qualcomm Incorporated Input/output direction decoding in mixed vgpio state exchange
KR102273191B1 (ko) 2017-09-08 2021-07-06 삼성전자주식회사 스토리지 장치 및 그것의 데이터 트레이닝 방법
TWM592993U (zh) 2019-09-05 2020-04-01 三泰科技股份有限公司 具有解析度切換的usb集線器

Also Published As

Publication number Publication date
CN113782175A (zh) 2021-12-10
TWI769640B (zh) 2022-07-01
US20210382749A1 (en) 2021-12-09
GB202011699D0 (en) 2020-09-09
GB2595941A (en) 2021-12-15
GB2595941B (en) 2023-04-05
US11593158B2 (en) 2023-02-28

Similar Documents

Publication Publication Date Title
US7921244B2 (en) Data sharing and transfer systems and methods
JP4510359B2 (ja) 多機能半導体記憶装置、及びホスト・コンピュータを起動させる方法
TW497026B (en) Power management method and device for display devices
US20070043889A1 (en) Information processing apparatus and access method
US9542201B2 (en) Network bios management
US20060206653A1 (en) [virtual ide storage device with pci express]
JP6040101B2 (ja) ストレージ装置の制御方法、ストレージ装置及び情報処理装置
CN109426613B (zh) 在uefi中检索调试数据的方法及其电脑系统
US9880858B2 (en) Systems and methods for reducing BIOS reboots
US20120066422A1 (en) Method and system for transferring high-speed data within a portable device
WO2022151707A1 (zh) 内存测试方法及装置、可读存储介质、电子设备
TWI769640B (zh) 通用周邊延伸器結構、系統及電腦程式產品
US20100180080A1 (en) External storage device having a self-contained security function
TW586075B (en) Method of making any card capable of booting from a multi-card reader/writer
Nikkel NVM express drives and digital forensics
CN113782175B (zh) 通用周边延伸器结构、系统及方法
Milenković et al. Using of Raspberry Pi for data acquisition from biochemical analyzers
US20040167999A1 (en) Data transfer control device, electronic instrument, program and method of fabricating electronic instrument
JP2001307038A (ja) マルチインターフェースを有するメモリーカード及びその変換アダプタ
JP2003337784A (ja) 制御システム及びusbデバイス
TWI225581B (en) Integrated portable memory device
US20140173050A1 (en) Multiple file transfer speed up
US20060015661A1 (en) Visual display for USB storage key
US20240202147A1 (en) Message conversion and message passthrough between devices and a processor in a multi-panel computing device
TWI416338B (zh) 資料通訊系統中進行通訊的計算裝置、資料通訊系統中通訊的方法以及資料通訊系統