`Tasler
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,470,399 B1
`Oct. 22, 2002
`
`US006470399B1
`
`(54) FLEXIBLE INTERFACE FOR
`COMMUNICATION BETWEEN A HOST AND
`AN ANALOG I/9 mavrcra CONNECTED TO
`THE INTERFACE REGARDLESS THE TYPE
`OF THE 1/0 DEVICE
`
`(75)
`
`Inventor: Michael Tasler, Wfirzburg (DE)
`
`FOREIGN PA'I‘I:'.N'I‘ DOCUMl:'.N'I'S
`
`B,
`JP
`JP
`wo
`
`13-Eff
`0 085 799 Al
`no3omo7 A
`08110883 A
`wo94;1974(,
`
`12“995
`10/I994
`411996
`9/1994
`
`_
`N011‘-363
`
`( * )
`
`(73) Assignee: Labortechnik Tasler GmbH,
`Wuerzburg (DE)
`‘
`_
`_
`_
`S“l"JeCl_‘0 any d15C1311T1¢Fs_ ‘he ‘Wm Of Ihlf
`patent is extended or adjusted under 33
`U-S-(3 15407) by 0 d3)'S-
`09/331,002
`
`(21) APPL No_.
`
`PCT/EP98/01187
`
`Mar. 3, 1998
`
`(22) PCT Filed:
`.
`(86) PCT No"
`§ 371 (c)(l),
`Jun. 14, 1999
`(2), (4) Date:
`(37) PCT P“b- N0-3 W093/39710
`PCT pub Dam. Sep_ 11, 1998
`
`Foreign Application Priority Data
`(30)
`M .4, 1907
`(DE) ....................................... .. 197 08 755
`E”
`
`['13- CI-7 ---------------------------------------------- -- G06F 13/14
`(51)
`(53) US» CL ---------------------------- .- 710/15; 710/63; 710/'53
`(58) Field of Search ............................. .. 710/15, 16, 11,
`710712, 62, 63, 64; 7(l3,./23, 24, 25
`_
`References Cned
`U_g_ pATENT [)()(jUME1\r]‘g
`
`(56)
`
`5391-5” A
`2 :
`444634 A
`5.481154 A
`5,499,273 A *
`5_50(;..¢.92 A
`5,510,774 A
`5.548.783 A *
`6,012,113 A *
`
`
`"
`
`"
`
`3/1994 Davis 9‘ 3"
`$°:kli1"fl id‘
`8/16:05 Dijsake a '
`I/19% Gum-i
`3/1095 McNcill ct al.
`4/1995 Muma
`4/1096 Lonclc
`710.-'15
`8/19% Jones etal.
`
`1/2000 Tuckncr
`.................... .. 710,154
`
`703,24
`
`OTHER PUBLICATIONS
`Steve Martin, “PC-based Data Acquisition in an Industrial
`Environment,” pp. 1-3 (1990).
`Payne et al., “High Speed PC—based Data Acquisition Sys-
`mus," [E33, pp. 21.10.3145 (1995).
`National Instruments Corporation, “Dynamic Signal Acqui-
`sition and DSP Board for the PC AT,” IEEE 488 and VXIbus
`Control, Data Acquuisition, and Analysis, pp. 3—118—3—123,
`(1994)_
`"Communication Method between
`IBM Corporation,
`Devices through FDD Interface,” IBM Technical Disclosure
`Bulletin, vol. 38 (No. 05), p. 245 (May, 1995).
`. Cited by examiner
`Pn'mar_v Examir1cr—Thomas Lee
`Assistant E.\'amirrr3r—Thuan Du
`(74) Attorney, Agent, or Firm—Patton Boggs LLP
`(57)
`ABSTRACT
`An interface device (10) provides fast data communication
`between a host device with input,-’output interfaces and a data
`transmit/receive device, wherein the interface device (10)
`comprises a processor means (13), a memory means (14), at
`first connecting device (12) for interfacing the host device
`with the interface device, and a second connecting device
`(15) for interfacing the interface device (10) with the data
`transmit/receive device. 'lhe interface device (10) is config-
`ured by the processor means (13) and the memory means
`(14) in such a way that when receiving an inquiry from the
`host device via the first’connecting device (12) as to the type
`of a device attached to the host device, regardless of the type
`of the data transmit/receive device,
`the rntertace device
`-‘finds 8 Signal I0 the host dt’-VICC V18 the first C0m1€Cl1"g
`device (12) which signals to the host device that
`it
`is
`communicating with an input,/output device.
`
`15 Claims, 2 Drawing Sheets
`
`1800
`
`.;v nrnrnt mm: SUPPLY
`g5V,_>_ tsv AXIALDG roan SUPPLY
`
`
`
`IDIIGOLSO!-!0|‘.
`
`12-517: “.5 NH: BM!
`1300
`
`UHH 20-143
`uwcnrr I-M)
`
`12.1117. mama.
`- Alli
`IFIKI
`IW.
`um.
`-1
`
`-1
`
`.
`
`PRECISION
`VOLYADI
`IIBFBRINCK
`
`\l!l.’l‘1—
`P
`II
`I L
`n
`
`
`
`
`
`smugaA1::za/irusuvu~’.LVGor
`
`1515
`
`1510
`
`1505
`
`HUAWEI EX. 1001- 1/10
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Oct. 22, 2002
`
`2f01teehS
`
`US 6,470,399 B1
`
`\aHzmz<ma
`m>Hmomm.
`
`.<..H.<QOH.
`
`moH>ma
`
`
`
`HUAWEI EX. 1001- 2/10
`
`
`
`U.S. Patent
`
`Oct. 22, 2002
`
`Sheet 2 of2
`
`US 6,470,399 B1
`
`ECmDEVIECanR/TIMSNARTATAD0T
`
`aammammasong<eHoHq>m.+
`
`
`
`
`mmamm>zoooa\o<q<zmuaxm
`
`
`
`
`
`>qmm:m.mm3omooq<z<>m«.u.>mu
`
`mmamm>zou
`
`onxon.
`
`ox:
`
`32
`
`moaomzzou
`
`.
`
`zHm-m
`
`822.9mvmr
`
`
`
`maamzummHmHqmz<
`
`
`
`:HH3IHH3
`
`IHA<o>mun
`
`ozmmmoH>mnm
`
`
`
`zoHa<mmumm>o
`
`
`
`><ammmo<a4o>
`
`oueomsomm
`
`zoamaommm
`
`mozmmwmmm
`
`mw<a4o>
`
`
`
`o¢mvomfim
`
`83.mmz..a.
`
`zoaaomqmm
`
`A=<maaxouzo
`
`
`
`mxxowIHHBV
`
`
`
`
`
`US 6,470,399 B1
`
`
`
`
`1
`FLEXIBLE INTERFACE FOR
`
`
`
`COMMUNICATION BETWEEN A HOST AND
`
`
`
`
`AN ANALOG I/O DEVICE CONNECTED TO
`
`
`
`
`
`
`THE INTERFACE REGARDLESS THE TYPE
`
`
`
`
`
`OF THE I/O DEVICE
`
`
`
`
`
`
`
`FIELD OF THE INVENTION
`
`
`
`
`
`
`The present invention relates to the transfer of data and in
`
`
`
`
`
`
`
`
`
`
`
`particular to interface devices for communication between a
`
`
`
`
`
`
`
`computer or host device and a data transmit/receive device
`
`
`
`
`
`
`
`
`
`from which data is to be acquired or with which two-way
`
`
`
`
`
`
`
`
`
`
`
`communication is to take place.
`
`
`
`
`
`BACKGROUND OF THE INVENTION
`
`
`
`
`
`
`
`
`
`Existing data acquisition systems for computers are very
`
`
`
`
`
`
`
`limited in their areas of application. Generally such systems
`
`
`
`
`
`
`
`
`can be classified into two groups.
`
`
`
`
`
`
`In the first group host devices or computer systems are
`
`
`
`
`
`
`
`
`
`
`attached by means of an interface to a device whose data is
`
`
`
`
`
`
`
`
`
`
`
`
`to be acquired. The interfaces of this group are normally
`
`
`
`
`
`
`
`
`
`
`standard interfaces which, with specific driver software, can
`
`
`
`
`
`
`
`
`be used with a variety of host systems. An advantage of such
`
`
`
`
`
`
`
`
`
`
`
`interfaces is that they are largely independent of the host
`
`
`
`
`
`
`
`
`
`
`device. However, a disadvantage is that
`they generally
`
`
`
`
`
`
`
`
`require very sophisticated drivers which are prone to mal-
`
`
`
`
`
`
`
`
`function and which limit data transfer rates between the
`
`
`
`
`
`
`
`
`
`device connected to the interface and the host device and
`
`
`
`
`
`
`
`
`
`
`vice versa. Further, it is often very difficult to implement
`
`
`
`
`
`
`
`
`
`
`such interfaces for portable systems and they offer few
`
`
`
`
`
`
`
`
`
`possibilities for adaptation with the result that such systems
`
`
`
`
`
`
`
`
`
`offer little flexibility.
`
`
`
`The devices from which data is to be acquired cover the
`
`
`
`
`
`
`
`
`
`
`
`entire electrical engineering spectrum. In a typical case, it is
`
`
`
`
`
`
`
`
`
`
`assumed that a customer who operates, for example, a
`
`
`
`
`
`
`
`
`
`diagnostic radiology system in a medical engineering envi-
`
`
`
`
`
`
`
`ronment reports a fault. A field service technician of the
`
`
`
`
`
`
`
`
`
`
`system manufacturer visits the customer and reads system
`
`
`
`
`
`
`
`
`log files generated by the diagnostic radiology system by
`
`
`
`
`
`
`
`
`
`means a portable computer or laptop for example. If the fault
`
`
`
`
`
`
`
`
`
`
`cannot be localized or if the fault is intermittent, it will be
`
`
`
`
`
`
`
`
`
`
`
`
`necessary for the service technician to read not only an error
`
`
`
`
`
`
`
`
`
`
`
`log file but also data from current operation. It is apparent
`
`
`
`
`
`
`
`
`
`
`
`that in this case fast data transfer and rapid data analysis are
`
`
`
`
`
`
`
`
`
`
`
`
`necessary.
`
`Another case requiring the use of an interface could be,
`
`
`
`
`
`
`
`
`
`
`for example, when an electronic measuring device, e.g. a
`
`
`
`
`
`
`
`
`
`multimeter, is attached to a computer system to transfer the
`
`
`
`
`
`
`
`
`
`
`data measured by the multimeter to the computer. Particu-
`
`
`
`
`
`
`
`
`larly when long-term measurements or large volumes of data
`
`
`
`
`
`
`
`
`
`are involved is it necessary for the interface to support a high
`
`
`
`
`
`
`
`
`
`
`data transfer rate.
`
`
`
`From these randomly chosen examples it can be seen that
`
`
`
`
`
`
`
`
`
`
`is
`an interface may be put
`to totally different uses.
`It
`
`
`
`
`
`
`
`
`
`
`
`therefore desirable that an interface be sufficiently flexible to
`
`
`
`
`
`
`
`
`
`permit attachment of very different electrical or electronic
`
`
`
`
`
`
`
`
`systems to a host device by means of the interface. To
`
`
`
`
`
`
`
`
`
`
`
`prevent operator error,
`it is also desirable that a service
`
`
`
`
`
`
`
`
`
`
`technician is not required to operate different interfaces in
`
`
`
`
`
`
`
`
`
`different ways for different applications but that, if possible,
`
`
`
`
`
`
`
`
`
`a universal method of operating the interface be provided for
`
`
`
`
`
`
`
`
`
`
`a large number of applications.
`
`
`
`
`
`To increase the data transfer rates across an interface, the
`
`
`
`
`
`
`
`
`
`
`route chosen in the second group of data acquisition systems
`
`
`
`
`
`
`
`
`
`
`for the interface devices was to specifically match the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`2
`interface very closely to individual host systems or computer
`
`
`
`
`
`
`
`
`
`systems. The advantage of this solution is that high data
`
`
`
`
`
`
`
`
`
`
`transfer rates are possible. However, a disadvantage is that
`
`
`
`
`
`
`
`
`
`the drivers for the interfaces of the second group are very
`
`
`
`
`
`
`
`
`
`
`
`closely matched to a single host system with the result that
`
`
`
`
`
`
`
`
`
`
`
`they generally cannot be used with other host systems or
`
`
`
`
`
`
`
`
`
`
`their use is very ineffective. Further, such types of interface
`
`
`
`
`
`
`
`
`
`
`have the disadvantage that they must be installed inside the
`
`
`
`
`
`
`
`
`
`
`computer casing to achieve maximum data transfer rates as
`
`
`
`
`
`
`
`
`
`they access the internal host bus system. They are therefore
`
`
`
`
`
`
`
`
`
`
`generally not suitable for portable host systems in the form
`
`
`
`
`
`
`
`
`
`
`of laptops whose minimum possible size leaves little internal
`
`
`
`
`
`
`
`
`
`space to plug in an interface card.
`
`
`
`
`
`
`
`DESCRIPTION OF PRIOR ART
`
`
`
`
`
`
`A solution to this problem is offered by the interface
`
`
`
`
`
`
`
`
`
`
`devices of IOtech (business address: 25971 Cannon Road,
`
`
`
`
`
`
`
`
`Cleveland, Ohio 44146, USA) which are suitable for laptops
`
`
`
`
`
`
`
`
`
`such as the WaveBook/512 (registered trademark). The
`
`
`
`
`
`
`
`interface devices are connected by means of a plug-in card,
`
`
`
`
`
`
`
`
`
`approximately the size of a credit card, to the PCMCIA
`
`
`
`
`
`
`
`
`
`
`interface which is now a standard feature in laptops. The
`
`
`
`
`
`
`
`
`
`
`plug-in card converts the PCMCIA interface into an inter-
`
`
`
`
`
`
`
`
`face known in the art as IEEE 1284. The said plug-in card
`
`
`
`
`
`
`
`
`
`
`
`
`provides a special printer interface which is enhanced as
`
`
`
`
`
`
`
`
`
`regards the data transfer rate and delivers a data transfer rate
`
`
`
`
`
`
`
`
`
`
`of approximately 2 MBps as compared with a rate of approx.
`
`
`
`
`
`
`
`
`
`1 MBps for known printer interfaces. The known interface
`
`
`
`
`
`
`
`
`
`device generally consists of a driver component, a digital
`
`
`
`
`
`
`
`
`
`signal processor, a buffer and a hardware module which
`
`
`
`
`
`
`
`
`
`terminates in a connector to which the device whose data is
`
`
`
`
`
`
`
`
`
`
`
`to be acquired is attached. The driver component is attached
`
`
`
`
`
`
`
`
`
`
`directly to the enhanced printer interface thus permitting the
`
`
`
`
`
`
`
`
`
`known interface device to establish a connection between a
`
`
`
`
`
`
`
`
`
`computer and the device whose data is to be acquired.
`
`
`
`
`
`
`
`
`
`
`In order to work with the said interface, an interface-
`
`
`
`
`
`
`
`
`
`specific driver must be installed on the host device so that
`
`
`
`
`
`
`
`
`
`
`
`the host device can communicate with the digital signal
`
`
`
`
`
`
`
`
`
`processor of the interface card. As described above, the
`
`
`
`
`
`
`
`
`
`driver must be installed on the host device. If the driver is
`
`
`
`
`
`
`
`
`
`
`
`
`a driver developed specifically for the host device, a high
`
`
`
`
`
`
`
`
`
`
`data transfer rate is achieved but the driver cannot be easily
`
`
`
`
`
`
`
`
`
`
`
`installed on a different host system. However, if the driver is
`
`
`
`
`
`
`
`
`
`
`a general driver which is as flexible as possible and which
`
`
`
`
`
`
`
`
`
`
`
`can be used on many host devices, compromises must be
`
`
`
`
`
`
`
`
`
`
`accepted with regard to the data transfer rate.
`
`
`
`
`
`
`
`
`Particularly in an application for multi-tasking systems in
`
`
`
`
`
`
`
`
`which several different tasks such as data acquisition, data
`
`
`
`
`
`
`
`
`display and editing are to be performed quasi-
`
`
`
`
`
`
`
`simultaneously, each task is normally assigned a certain
`
`
`
`
`
`
`
`
`priority by the host system. A driver supporting a special
`
`
`
`
`
`
`
`
`
`
`task requests the central processing system of the host
`
`
`
`
`
`
`
`
`
`device for processor resources in order to perform its task.
`
`
`
`
`
`
`
`
`
`
`Depending on the particular priority assignment method and
`
`
`
`
`
`
`
`
`on the driver implementation, a particular share of processor
`
`
`
`
`
`
`
`
`resources is assigned to a special task in particular time slots.
`
`
`
`
`
`
`
`
`
`
`
`Conflicts arise if one or more drivers are implemented in
`
`
`
`
`
`
`
`
`
`
`such a way that they have the highest priority by default, i.e.
`
`
`
`
`
`
`
`
`
`
`
`they are incompatible, as happens in practice in many
`
`
`
`
`
`
`
`
`
`applications. It may occur that both drivers are set to highest
`
`
`
`
`
`
`
`
`
`
`
`priority which, in the worst case, can result in a system
`
`
`
`
`
`
`
`
`
`
`
`crash.
`
`EP 0685799 A1 discloses an interface by means of which
`
`
`
`
`
`
`
`
`
`
`several peripheral devices can be attached to a bus. An
`
`
`
`
`
`
`
`
`
`
`interface is connected between the bus of a host device and
`
`
`
`
`
`
`
`
`
`
`various peripheral devices. The interface comprises a finite
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`10
`
`
`
`15
`
`
`
`20
`
`
`
`25
`
`
`30
`
`
`
`35
`
`
`
`40
`
`
`
`45
`
`
`50
`
`
`
`55
`
`
`
`60
`
`
`
`65
`
`
`HUAWEI EX. 1001- 4/10
`
`HUAWEI EX. 1001- 4/10
`
`
`
`
`
`US 6,470,399 B1
`
`
`
`
`3
`state machine and several branches each of which is
`
`
`
`
`
`
`
`
`
`assigned to a peripheral device. Each branch comprises a
`
`
`
`
`
`
`
`
`
`data manager, cycle control, user logic and a buffer. This
`
`
`
`
`
`
`
`
`
`
`known interface device provides optimal matching between
`
`
`
`
`
`
`
`a host device and a specific peripheral device.
`
`
`
`
`
`
`
`
`The specialist publication IBM Technical Disclosure
`
`
`
`
`
`
`Bulletin, Vol. 38, No. 05, page 245; “Communication
`
`
`
`
`
`
`
`
`Method between Devices through FDD Interface” discloses
`
`
`
`
`
`
`
`an interface which connects a host device to a peripheral
`
`
`
`
`
`
`
`
`
`
`device via a floppy disk drive interface. The interface
`
`
`
`
`
`
`
`
`
`consists in particular of an address generator, an MFM
`
`
`
`
`
`
`
`
`
`encoder/decoder, a serial/parallel adapter and a format signal
`
`
`
`
`
`
`generator. The interface makes it possible to attach not only
`
`
`
`
`
`
`
`
`
`
`a floppy disk drive but also a further peripheral device to the
`
`
`
`
`
`
`
`
`
`
`
`
`FDD host controller of a host device. The host device
`
`
`
`
`
`
`
`
`
`
`assumes that a floppy disk drive is always attached to its
`
`
`
`
`
`
`
`
`
`
`
`floppy disk drive controller and communication is initiated
`
`
`
`
`
`
`
`
`if the address is correct. However, this document contains no
`
`
`
`
`
`
`
`
`
`
`information as to how communication should be possible if
`
`
`
`
`
`
`
`
`
`the interface is connected to a multi-purpose interface
`
`
`
`
`
`
`
`
`instead of to a floppy disk drive controller.
`
`
`
`
`
`
`
`
`SUMMARY OF THE INVENTION
`
`
`
`
`
`
`
`
`
`
`It is an object of the present invention to provide an
`
`
`
`
`
`
`
`
`
`
`
`interface device for communication between a host device
`
`
`
`
`
`
`
`
`and a data transmit/receive device whose use is host device-
`
`
`
`
`
`
`
`
`
`independent and which delivers a high data transfer rate.
`
`
`
`
`
`
`
`
`
`In accordance with a first aspect of the present invention,
`
`
`
`
`
`
`
`
`
`this object is met by an interface device for communication
`
`
`
`
`
`
`
`
`
`between a host device, which comprises drivers for input/
`
`
`
`
`
`
`
`
`output devices customary in a host device and a multi-
`
`
`
`
`
`
`
`
`
`purpose interface, and a data transmit/receive device com-
`
`
`
`
`
`
`
`prising: a processor; a memory; a first connecting device for
`
`
`
`
`
`
`
`
`
`
`interfacing the host device with the interface device via the
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface of the host device; and a second
`
`
`
`
`
`
`
`
`
`connecting device for interfacing the interface device with
`
`
`
`
`
`
`
`
`the data transmit/receive device, wherein the interface
`
`
`
`
`
`
`
`device is configured by the processor and the memory in
`
`
`
`
`
`
`
`
`
`
`such a way that the interface device, when receiving an
`
`
`
`
`
`
`
`
`
`
`inquiry from the host device as to the type of a device
`
`
`
`
`
`
`
`
`
`
`
`
`attached to the multi-purpose interface of the host device,
`
`
`
`
`
`
`
`
`
`sends a signal, regardless of the type of the data transmit/
`
`
`
`
`
`
`
`
`
`
`
`receive device attached to the second connecting device of
`
`
`
`
`
`
`
`
`
`the interface device, to the host device which signals to the
`
`
`
`
`
`
`
`
`
`
`
`host device that it is an input/output device customary in a
`
`
`
`
`
`
`
`
`
`
`
`host device, whereupon the host device communicates with
`
`
`
`
`
`
`
`
`the interface device by means of the driver for the input/
`
`
`
`
`
`
`
`
`
`
`
`output device customary in a host device.
`
`
`
`
`
`
`
`In accordance with a second aspect of the present
`
`
`
`
`
`
`
`
`
`invention,
`this object
`is met by an interface device for
`
`
`
`
`
`
`
`
`
`
`communication between a host device, which comprises a
`
`
`
`
`
`
`
`
`multi-purpose interface and a specific driver for
`this
`
`
`
`
`
`
`
`
`interface, and a data transmit/receive device comprising: a
`
`
`
`
`
`
`
`
`processor; a memory; a first connecting device for interfac-
`
`
`
`
`
`
`
`
`ing the host device with the interface device via the multi-
`
`
`
`
`
`
`
`
`
`
`purpose interface of the host device; and a second connect-
`
`
`
`
`
`
`
`
`
`ing device for interfacing the interface device with the data
`
`
`
`
`
`
`
`
`
`
`transmit/receive device, wherein the interface device is
`
`
`
`
`
`
`
`configured using the processor and the memory in such a
`
`
`
`
`
`
`
`
`
`
`way that the interface device, when receiving an inquiry
`
`
`
`
`
`
`
`
`
`from the host device as to the type of a device attached at the
`
`
`
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface of the host device, sends a signal,
`
`
`
`
`
`
`
`
`
`regardless of the type of the data transmit/receive device
`
`
`
`
`
`
`
`
`
`attached to the second connecting device of the interface
`
`
`
`
`
`
`
`
`
`device, to the host device which signals to the host device
`
`
`
`
`
`
`
`
`
`
`
`that it is an input/output device customary in a host device,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`10
`
`
`
`15
`
`
`
`20
`
`
`
`25
`
`
`30
`
`
`
`35
`
`
`
`40
`
`
`
`45
`
`
`50
`
`
`
`55
`
`
`
`60
`
`
`
`65
`
`
`
`
`
`
`
`4
`
`whereupon the host device communicates with the interface
`
`
`
`
`
`
`
`device by means of the specific driver for the multi-purpose
`
`
`
`
`
`
`
`
`
`interface.
`
`In accordance with a third aspect of the present invention,
`
`
`
`
`
`
`
`
`
`this object is met by a method of communication between a
`
`
`
`
`
`
`
`
`
`
`
`host device, which comprises drivers for input/output
`
`
`
`
`
`
`
`devices customary in a host device and a multi-purpose
`
`
`
`
`
`
`
`
`
`interface, and a data transmit/receive device via an interface
`
`
`
`
`
`
`
`
`device comprising the steps of interfacing of the host device
`
`
`
`
`
`
`
`
`
`
`with a first connecting device of the interface device via the
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface of the host device; interfacing of the
`
`
`
`
`
`
`
`
`
`data transmit/receive device with a second connecting
`
`
`
`
`
`
`
`device of the interface device; inquiring by the host device
`
`
`
`
`
`
`
`
`
`
`at the interface device as to the type of device to which the
`
`
`
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface of the host device is attached;
`
`
`
`
`
`
`
`
`regardless of the type of the data transmit/receive device
`
`
`
`
`
`
`
`
`
`attached to the second connecting device of the interface
`
`
`
`
`
`
`
`
`
`device, responding to the inquiry from the host device by the
`
`
`
`
`
`
`
`
`
`
`
`interface device in such a way that it is an input/output
`
`
`
`
`
`
`
`
`
`
`
`device customary in a host device, whereupon the host
`
`
`
`
`
`
`
`
`
`device communicates with the interface device by means of
`
`
`
`
`
`
`
`
`
`the usual driver for the input/output device.
`
`
`
`
`
`
`
`The present invention is based on the finding that both a
`
`
`
`
`
`
`
`
`
`
`
`high data transfer rate and host device-independent use can
`
`
`
`
`
`
`
`
`
`be achieved if a driver for an input/output device customary
`
`
`
`
`
`
`
`
`
`in a host device, normally present in most commercially
`
`
`
`
`
`
`
`
`
`available host devices, is utilized. Drivers for input/output
`
`
`
`
`
`
`
`
`devices customary in a host device which are found in
`
`
`
`
`
`
`
`
`
`
`practically all host devices are, for example, drivers for hard
`
`
`
`
`
`
`
`
`
`
`disks, for graphics devices or for printer devices. As how-
`
`
`
`
`
`
`
`
`
`ever the hard disk interfaces in common host devices which
`
`
`
`
`
`
`
`
`
`can be, for example, IBM PCs, IBM-compatible PCs, Com-
`
`
`
`
`
`
`
`
`modore PCs, Apple computers or even workstations, are the
`
`
`
`
`
`
`
`
`
`interfaces with the highest data transfer rate, the hard disk
`
`
`
`
`
`
`
`
`
`
`driver is utilized in the preferred embodiment of the inter-
`
`
`
`
`
`
`
`
`
`face device of the present
`invention. Drivers for other
`
`
`
`
`
`
`
`
`storage devices such as floppy disk drives, CD-ROM drives
`
`
`
`
`
`
`
`
`or tape drives could also be utilized in order to implement
`
`
`
`
`
`
`
`
`
`
`the interface device according to the present invention.
`
`
`
`
`
`
`
`
`As described in the following, the interface device accord-
`
`
`
`
`
`
`
`
`ing to the present invention is to be attached to a host device
`
`
`
`
`
`
`
`
`
`
`
`
`by means of a multi-purpose interface of the host device
`
`
`
`
`
`
`
`
`
`which can be implemented, for example, as an SCSI inter-
`
`
`
`
`
`
`
`
`
`face or as an enhanced printer interface. Multi-purpose
`
`
`
`
`
`
`
`
`interfaces comprise both an interface card and specific driver
`
`
`
`
`
`
`
`
`
`software for the interface card. The driver software can be
`
`
`
`
`
`
`
`
`
`
`designed so that it can replace the BIOS driver routines.
`
`
`
`
`
`
`
`
`
`
`Communication between the host device and the devices
`
`
`
`
`
`
`
`
`attached to the multi-purpose interface then essentially takes
`
`
`
`
`
`
`
`
`
`place by means of the specific driver software for the
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface and no longer primarily by means of
`
`
`
`
`
`
`
`
`
`BIOS routines of the host device. Recently however drivers
`
`
`
`
`
`
`
`
`
`for multi-purpose interfaces can also already be integrated in
`
`
`
`
`
`
`
`
`
`the BIOS system of the host device as, alongside classical
`
`
`
`
`
`
`
`
`
`
`input/output interfaces, multi-purpose interfaces are becom-
`
`
`
`
`
`ing increasingly common in host devices. It is of course also
`
`
`
`
`
`
`
`
`
`
`
`possible to use BIOS routines in parallel with the specific
`
`
`
`
`
`
`
`
`
`
`driver software for the multi-purpose interface, if this is
`
`
`
`
`
`
`
`
`
`
`desired.
`
`The interface device according to the present invention
`
`
`
`
`
`
`
`
`comprises a processor means, a memory means, a first
`
`
`
`
`
`
`
`
`
`connecting device for interfacing the host device with the
`
`
`
`
`
`
`
`
`
`interface device, and a second connecting device for inter-
`
`
`
`
`
`
`
`
`facing the interface device with the data transmit/receive
`
`
`
`
`
`
`
`
`device. The interface device is configured by the processor
`
`
`
`
`
`
`
`
`
`means and the memory means in such a way that
`the
`
`
`
`
`
`
`
`
`
`
`
`interface device, when receiving an inquiry from the host
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`HUAWEI EX. 1001- 5/10
`
`HUAWEI EX. 1001- 5/10
`
`
`
`
`
`US 6,470,399 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`5
`device via the first connecting device as to the type of a
`
`
`
`
`
`
`
`
`
`
`
`
`device attached to the host device, sends a signal, regardless
`
`
`
`
`
`
`
`
`
`of the type of the data transmit/receive device, to the host
`
`
`
`
`
`
`
`
`
`
`
`device via the first connecting device which signals to the
`
`
`
`
`
`
`
`
`
`
`host device that it is communicating with an input/output
`
`
`
`
`
`
`
`
`
`device. The interface device according to the present inven-
`
`
`
`
`
`
`
`
`tion therefore simulates, both in terms of hardware and
`
`
`
`
`
`
`
`
`software,
`the way in which a conventional
`input/output
`
`
`
`
`
`
`
`device functions, preferably that of a hard disk drive. As
`
`
`
`
`
`
`
`
`
`support for hard disks is implemented as standard in all
`
`
`
`
`
`
`
`
`
`commercially available host systems, the simulation of a
`
`
`
`
`
`
`
`hard disk, for example, can provide host device-independent
`
`
`
`
`
`
`
`use. The interface device according to the present invention
`
`
`
`
`
`
`
`
`therefore no longer communicates with the host device or
`
`
`
`
`
`
`
`
`computer by means of a specially designed driver but by
`
`
`
`
`
`
`
`
`
`means of a program which is present in the BIOS system
`
`
`
`
`
`
`
`
`
`
`(Basic Input/Output System) and is normally precisely
`
`
`
`
`
`
`matched to the specific computer system on which it is
`
`
`
`
`
`
`
`
`
`installed, or by means of a specific program for the multi-
`
`
`
`
`
`
`
`
`
`
`purpose interface. Consequently,
`the interface device
`
`
`
`
`
`
`according to the present invention combines the advantages
`
`
`
`
`
`
`
`
`of both groups. On the one hand, communication between
`
`
`
`
`
`
`
`
`
`the computer and the interface takes place by means of a
`
`
`
`
`
`
`
`
`
`
`
`host device-specific BIOS program or by means of a driver
`
`
`
`
`
`
`
`
`
`program which is matched to the multi-purpose interface
`
`
`
`
`
`
`
`
`and which could be regarded as a “device-specific driver”.
`
`
`
`
`
`
`
`
`
`On the other hand, the BIOS program or a corresponding
`
`
`
`
`
`
`
`
`
`
`multi-purpose interface program which operates one of the
`
`
`
`
`
`
`
`
`common input/output interfaces in host systems is therefore
`
`
`
`
`
`
`
`
`in all host systems so that
`the interface device
`present
`
`
`
`
`
`
`
`
`
`
`according to the present
`invention is host device-
`
`
`
`
`
`
`
`independent.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`
`
`
`
`In the following, preferred embodiments of the present
`
`
`
`
`
`
`
`
`invention will be explained in more detail with reference to
`
`
`
`
`
`
`
`
`
`
`the drawings enclosed, in which:
`
`
`
`
`
`FIG. 1 shows a general block diagram of the interface
`
`
`
`
`
`
`
`
`
`device according to the present invention; and
`
`
`
`
`
`
`
`FIG. 2 shows detailed block diagram of an interface
`
`
`
`
`
`
`
`
`device according to a preferred embodiment of the present
`
`
`
`
`
`
`
`
`invention.
`
`DETAILED DESCRIPTION OF PREFERRED
`
`
`
`EMBODIMENTS
`
`FIG. 1 shows a general block diagram of an interface
`
`
`
`
`
`
`
`
`
`device 10 according to the present invention. A first con-
`
`
`
`
`
`
`
`
`
`necting device 12 of the interface device 10 can be attached
`
`
`
`
`
`
`
`
`
`
`
`
`to a host device (not shown) via a host line 11. The first
`
`
`
`
`
`
`
`
`
`
`
`
`connecting device is attached both to a digital signal pro-
`
`
`
`
`
`
`
`
`
`cessor 13 and to a memory means 14. The digital signal
`
`
`
`
`
`
`
`
`
`
`
`processor 13 and the memory means 14 are also attached to
`
`
`
`
`
`
`
`
`
`
`
`a second connecting device 15 by means of bidirectional
`
`
`
`
`
`
`
`
`
`communication lines (shown for all lines by means of two
`
`
`
`
`
`
`
`
`
`
`directional arrows). The second connecting device can be
`
`
`
`
`
`
`
`
`attached by means of an output line 16 to a data transmit/
`
`
`
`
`
`
`
`
`
`
`
`
`receive device which is to receive data from the host device
`
`
`
`
`
`
`
`
`
`
`
`or from which data is to be read, i.e. acquired, and trans-
`
`
`
`
`
`
`
`
`
`
`
`ferred to the host device. The data transmit/receive device
`
`
`
`
`
`
`
`
`
`itself can also communicate actively with the host device via
`
`
`
`
`
`
`
`
`
`
`the first and second connecting device, as described in more
`
`
`
`
`
`
`
`
`
`
`detail in the following.
`
`
`
`
`Communication between the host system or host device
`
`
`
`
`
`
`
`
`and the interface device is based on known standard access
`
`
`
`
`
`
`
`
`
`
`commands as supported by all known operating systems
`
`
`
`
`
`
`
`
`(e.g. DOS, Windows, Unix). Preferably, the interface device
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`6
`according to the present invention simulates a hard disk with
`
`
`
`
`
`
`
`
`
`a root directory whose entries are “virtual” files which can
`
`
`
`
`
`
`
`
`
`
`be created for the most varied functions. When the host
`
`
`
`
`
`
`
`
`
`
`device system with which the interface device according to
`
`
`
`
`
`
`
`
`
`the present invention is connected is booted and a data
`
`
`
`
`
`
`
`
`
`
`transmit/receive device is also attached to the interface
`
`
`
`
`
`
`
`
`device 10, usual BIOS routines or multi-purpose interface
`
`
`
`
`
`
`
`
`programs issue an instruction, known by those skilled in the
`
`
`
`
`
`
`
`
`
`
`art as the INQUIRY instruction, to the input/output inter-
`
`
`
`
`
`
`
`
`faces in the host device. The digital signal processor 13
`
`
`
`
`
`
`
`
`
`
`receives this inquiry instruction via the first connecting
`
`
`
`
`
`
`
`
`device and generates a signal which is sent to the host device
`
`
`
`
`
`
`
`
`
`
`
`
`(not shown) again via the first connecting device 12 and the
`
`
`
`
`
`
`
`
`
`
`host line 11. This signal indicates to the host device that, for
`
`
`
`
`
`
`
`
`
`
`
`
`example, a hard disk drive is attached at the interface to
`
`
`
`
`
`
`
`
`
`
`
`which the INQUIRY instruction was sent. Optionally, the
`
`
`
`
`
`
`
`
`host device can send an instruction, known by those skilled
`
`
`
`
`
`
`
`
`
`
`in the art as “Test Unit Ready”, to the interface device to
`
`
`
`
`
`
`
`
`
`
`
`
`request more precise details regarding the queried device.
`
`
`
`
`
`
`
`
`Regardless of which data transmit/receive device at the
`
`
`
`
`
`
`
`
`output line 16 is attached to the second connecting device,
`
`
`
`
`
`
`
`
`
`
`the digital signal processor 13 informs the host device that
`
`
`
`
`
`
`
`
`
`
`it is communicating with a hard disk drive. If the host device
`
`
`
`
`
`
`
`
`
`
`
`receives the response that a drive is present, it then sends a
`
`
`
`
`
`
`
`
`
`
`
`
`request to the interface device 10 to read the boot sequence
`
`
`
`
`
`
`
`
`
`
`
`which, on actual hard disks, normally resides on the first
`
`
`
`
`
`
`
`
`
`
`sectors of the disk. The digital signal processor 13, whose
`
`
`
`
`
`
`
`
`
`
`operating system in stored in the memory means 14,
`
`
`
`
`
`
`
`
`
`responds to this instruction by sending to the host device a
`
`
`
`
`
`
`
`
`
`
`
`virtual boot sequence which, in the case of actual drives,
`
`
`
`
`
`
`
`
`
`
`includes the drive type, the starting position and the length
`
`
`
`
`
`
`
`
`
`
`of the file allocation table (FAT), the number of sectors, etc.,
`
`
`
`
`
`
`
`
`
`
`
`known to those skilled in the art. Once the host device has
`
`
`
`
`
`
`
`
`
`
`
`
`received this data, it assumes that the interface device 10
`
`
`
`
`
`
`
`
`
`
`according to a preferred embodiment of the present inven-
`
`
`
`
`
`
`
`
`tion is a hard disk drive. In reply to an instruction from the
`
`
`
`
`
`
`
`
`
`
`
`
`
`host device to display the directory of the “virtual” hard disk
`
`
`
`
`
`
`
`
`
`
`
`drive simulated by the interface device 10 with respect to the
`
`
`
`
`
`
`
`
`
`
`
`host device, the digital signal processor can respond to the
`
`
`
`
`
`
`
`
`
`
`host device in exactly the same way as a conventional hard
`
`
`
`
`
`
`
`
`
`
`
`disk would, namely by reading on request the file allocation
`
`
`
`
`
`
`
`
`
`
`table or FAT on a sector specified in the boot sequence,
`
`
`
`
`
`
`
`
`
`
`
`normally the first writable sector, and transferring it to the
`
`
`
`
`
`
`
`
`
`
`host device, and subsequently by transferring the directory
`
`
`
`
`
`
`
`
`structure of the virtual hard disk. Further, it is possible that
`
`
`
`
`
`
`
`
`
`
`
`the FAT is not read until immediately prior to reading or
`
`
`
`
`
`
`
`
`
`
`
`storing the data of the “virtual” hard disk and not already at
`
`
`
`
`
`
`
`
`
`
`
`
`initialization.
`
`In a preferred embodiment of the present invention, the
`
`
`
`
`
`
`
`
`
`digital signal processor 13, which need not necessarily be
`
`
`
`
`
`
`
`
`
`implemented as a digital signal processor but may be any
`
`
`
`
`
`
`
`
`
`
`other kind of microprocessor, comprises a first and a second
`
`
`
`
`
`
`
`
`
`command interpreter. The first command interpreter carries
`
`
`
`
`
`
`
`out the steps described above whilst the second command
`
`
`
`
`
`
`
`
`
`interpreter carries out the read/write assignment to specific
`
`
`
`
`
`
`
`
`functions. If the user now wishes to read data from the data
`
`
`
`
`
`
`
`
`
`
`
`
`transmit/receive device via the line 16, the host device sends
`
`
`
`
`
`
`
`
`
`
`a command, for example “read fil