INTERFACING DEVICE TO BE USED TO CONNECT PERIPHERAL DEVICES TO A COMPUTER
The present invention concerns a universal interfacing device to be used to connect peripheral devices to a computer. More particularly, the device according to the invention enables to directly recognise the peripheral connected to it, and therefore to be able to access directly the files of the peripheral concerning both the interfacing and the detected data and/or data treated by the peripheral itself, without the necessity to install specific drivers. The search for techniques suited to achieve fast and secure transfers of data between a computer and each of the interfaces installed on the peripheral devices is a target of fundamental importance. This assumes a particular relevance for the prototypes of instruments realised in the laboratory, which are not standard peripherals.
The problem is however completely general and is therefore present in all the other cases, i.e. cases in which specific solutions are already at disposal. Indeed, in general, the interfaces must solve a series of problems such as: reliability and speed of transfers, signal control even at great distance between instrument and computer, compatibility with different operating systems residing in the accessible computers, installation of specific programs which interface the operating systems to the hardware, i.e. the drivers. Finally, it is necessary a specific skill to write programs based on the utilised drivers' types. A solution, when possible, is to make resort to commercial interface boards comprised of drivers for the various operating systems and gate types. Such a solution is often expensive and full of compromises, or is bad supported, and is not definitive almost always. In any case, it can be utilised by dint of a dependency by the companies supplying the commercial interfaces. The coming of the "secure" Operating Systems, which forbid the free access to the I/O gates of the systems, has strengthened the problems connected to the utilisation of the interfaces. Unless one is skilled in the writing of specific drivers, making resort to the vast library of function of the DDK ("Drive Development Kit") type, today one has to make resort to the intervention of software houses, which makes onerous for
instance the utilisation of experimental devices, since these are often utilised with the help of different computers necessitating different drivers. All this involves also long times in the realisation of the interfaces both because of the difficulties encountered in the elaboration of a new hardware project (research of product and components, construction and monitoring) and for realising programs precisely adapted to the drivers used. To the Applicant's knowledge, today do not exist flexible interfaces suited to operate the peripheral user devices with all types of computer and standard work-stations independently from the resident operating systems, and, at the same time, which are compatible with all or many of the available gates in those computers. It is object of the invention to provide a universal interface for peripheral devices to be connected to a computer, which solves the above-mentioned problems. It is specific subject-matter of the invention an interfacing device for the connection of peripheral devices to a computer, the peripheral devices comprising one or more internal functions and/or registries, characterised in that it comprises an emulating unit connected to at least a peripheral device and to at least a computer, the emulating unit presenting to said at least a computer a predetermined, apparent I/O addressing, which is accessible to said at least a computer, of said one or more internal functions and/or registries, so that, in consequence of a write operation from said at least a computer on at least a file corresponding to said predetermined apparent I/O addressing, the emulating unit selects the writing information content from the files transmitted from the computer and sends it to at least one of said one or more internal functions and/or registries, and vice versa, in consequence of a read operation from file from said at least a computer, it builds the reading information content to be transmitted to the computer on the basis of the information content of at least one of these internal functions and/or registries. Preferably according to the invention, the interfacing device comprises a controller of transfers which takes care of the transfers of said writing and reading information contents according to said apparent addressing I/O on the basis of at least a predefined table of transfers. Preferably according to the invention, said at least a predefined transfer table is re-configurable.
Preferably according to the invention, the interfacing device comprises a memory buffer. Preferably according to the invention, said at least a predefined transfer table is stored in a portion of said buffer. Preferably according to the invention, on the buffer it is shown a
FileSystem addressing I/O structure. Preferably according to the invention, said predefined table of transfers comprises a correspondence between a FileSystem addressing I/O structure provided on the buffer and the actual addressing of said internal functions and/or registries on the peripheral device. Preferably according to the invention, the communication between the computer and the emulation unit is based on the SCSI international standard. Preferably according to the invention, the interfacing device comprises a SCSI core. Preferably according to the invention, the interfacing device comprises a device of the "Direct-Access-Device" type. Preferably according to the invention, the emulation unit comprises a device of the "Communication Device" type, the computer using the ASPI drivers for the access to the interfacing device. Advantageously according to the invention, the emulation unit is realised by a FPGA integrated circuit. The invention will be now described, by way of illustration and not by way of limitation, by particularly referring to the drawings of the enclosed Figures, in which: - Figure 1 shows a general block diagram of the device according to the invention; - Figure 2 shows a preferred embodiment of the device according to the invention. All standard operating systems are able to recognise the disk unit for saving data (for example magnetic, removable or floppy disc) as system's peripheral. This means that, by connecting a disc unit to a computer, the operating system of the latter recognises such a unit as standard resource and the user can utilise the therein resident files in the usual manner. According to the present invention, since the disc unit is universally recognised, in the same way will be universally recognised an
interfacing device which emulates its features, and, by means of usual operations of access to files, it will be possible to control the (user) peripheral devices connected to it. All this goes in a transparent way for the user, without the necessity to write down drivers, to draw up communication protocols or to produce installation programs. He/she has only to connect his/her peripheral device to the computer through the interfacing device and, from that moment on, he/she will access his/her own product through standard operations on the files. The emulation (through the subject interfacing device) as disc unit of a peripheral device open the possibility to store possible user files associated to the device (for example dedicated and system's applications, configurations, results) in a reserved memory area in the interfacing device itself, thus enabling a more extended plug & play functionality. With reference to Figure 1 , the interfacing device 100 is comprised of an emulation unit 1 connected to a computer 200 and to the peripheral device 300. The emulation unit 1 is charged to reply to all the requests of access to files coming from computer 200 and, by means of a re- elaborating process, it makes such accesses interpretable by peripheral device 300. The re-elaborating process, performed by the emulating unit 1 , consists in individuating from blocks transmitted by computer 200, in consequence of a writing operation on file, only the blocks concerning the data content of the files or data-area and in sending them simultaneously to the peripheral device 300, adapting, according to a re-configurable readdressing, the structure of such data to the structure of the functions and registries internal to the peripheral device 300, and, conversely, in creating the data-blocks to be transmitted to the computer 200, in consequence of a reading operation from file, adapting, according to re-configurable readdressing, the structure of the data read from the functions and from the registries internal to peripheral device 300 to the data-area structure required by computer 200. An embodiment of the interfacing device according to the invention is implemented by adopting the SCSI protocol for the communication with the computer 200.
Optionally in such embodiment, the interfacing device can comprise another alternative communication modality which exploits the standard SCSI protocol as well, but with previous installation of standard ASPI drivers. The SCSI standard ("Small Computer System Interface"), proposed by ANSI ("American National Standard for Information Systems"), is preferred because it is a tested communication protocol, certified and recognised by all the standard Operating Systems. The variety of available adaptors and controllers enables flexibility of connection of peripheral devices to all the standard computers. Moreover, the speed of transfer allowed by such a standard automatically adapts to the best performances expressed by each peripheral device alone. Finally, the standardization of the protocol for the operation of the direct-acces-devices, that is the disc units, enables the realisation of the interfacing device according to the invention in a simple, rapid and economic way and minimising the implementing difficulties. In order to implement the interfacing device 100 in this embodiment, it is advantageous to use a FPGA device ("Field- Programmable Gate Array") because it presents the well-known features of versatility, re-configurability and ability of integration. Making reference to Figure 2, according to principle scheme of Figure 1 , the emulating unit 1 is comprised of a SCSI core 2 linked together with a device 3 of the Direct-Access type, a transfer processor 4 pertaining to the peripheral device 300, and a memory buffer 5. The transfer processor 4 intercepts the bytes of the Data-Area blocks arriving from computer 200, in consequence of a write operation on file, and transfers them simultaneously in the peripheral device 300 on the basis of a pre-defined transfer table and, conversely, it reads the data from the peripheral device 300, on the basis of a second, pre-defined transfer table, and presents them as bytes of the Data-Area blocks to be sent to computer 200, in consequence of a read operation on file, according to the inverse path. The above-mentioned tables are therefore created depending on the peripheral device 300 to be interfaced, and are easily re- configurable, since they represent files visible from the computer. In the memory buffer 5 have been placed: a FileySystem universally recognised, the pre-defined transfers tables and a reserved
area for the possible user files associated to the peripheral device 300, as described in the foregoing. Through the interfacing device 100 according to the invention, after having configured the data transfer protocol between the peripheral device 300 and the transfer processor 4, such peripheral device can be
•used with any market computer provided with any Operating System and without other adaptations. If on one hand the use of the disc emulator enables an immediate access to the peripheral device 300, on the other hand one is bound to transmit a minimal data block (sector) of 512 byte as prescribed by the communication standard with the disc units. For this reason, as above mentioned, it is possible to implement, in the interfacing device 100 a control unit 6 which meets the specifications of device of Communication-Device type (linked together with the core SCSI 2), in order to allow an access to the peripheral device
300 which is alternative to that of emulation, with the advantage of the possibility to transfer single byte and to have a low-level control of the
SCSI bus. This allows accessing the peripheral device 300 both by blocks and by single bytes. In the latter context, to access such a device, recognised by the computer 200 as SCSI peripheral, one has to install the specific ASPI drivers ("Advanced SCSI Programming Interface") for the SCSI devices and freely available in Internet, getting out from buying or implementing dedicated drivers. The ASPI standard allows writing a single program which is valid, mostly, in all Operating Systems upon installation of the specific
ASPI drivers. Thanks to the invention solution, any type of peripheral device will be able to use always the same interfacing device, making itself visible from any computer even when equipped with different Operating Systems. The simplicity of accessing one's peripheral devices by means of standardised operations on files extends the possibilities of application in the industrial, private and scientific sector. Such sectors will be able to use an interfacing technique which allows to have at one's disposal, "all inclusive" and cheaply, one's own products as standard resources of
Operating System.
The preferred embodiments have been above described and some modifications of this invention have been suggested, but it should be understood that those skilled in the art can make variations and changes, without so departing from the related scope of protection, as defined by the following claims.