GB2264374A - Programmable protocol converter. - Google Patents

Programmable protocol converter. Download PDF

Info

Publication number
GB2264374A
GB2264374A GB9203863A GB9203863A GB2264374A GB 2264374 A GB2264374 A GB 2264374A GB 9203863 A GB9203863 A GB 9203863A GB 9203863 A GB9203863 A GB 9203863A GB 2264374 A GB2264374 A GB 2264374A
Authority
GB
United Kingdom
Prior art keywords
converter
converter according
programme
compiler
user
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
GB9203863A
Other versions
GB9203863D0 (en
Inventor
Peter Holy
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SYSTEMS Ltd KK
Original Assignee
SYSTEMS Ltd KK
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 SYSTEMS Ltd KK filed Critical SYSTEMS Ltd KK
Priority to GB9203863A priority Critical patent/GB2264374A/en
Publication of GB9203863D0 publication Critical patent/GB9203863D0/en
Publication of GB2264374A publication Critical patent/GB2264374A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Abstract

A programmable protocol converter adapted to modify a data stream by means of an internal high level language programme which can be written by a user. Essentially, the converter comprises a microprocessor 1, a high level language compiler 4 and one or more software storage devices 7, 11, 12. and one or more interfaces 15. In its preferred form the PPG contains everything needed to enable a user with limited expertise to write a data conversion programme and produce a self-contained converter device which can be connected between the previously incompatible devices. <IMAGE>

Description

"PROGRAMMABLE PROTOCOL CONVERTER" The present invention relates to a programmable protocol converter (PPC) that is a device which can modify a data stream (such as an RS-232 data stream) by means of an internal high level language program which can be written by a person who is not an expert in the hardware and software details of a data communications device.
With the proliferation of computers and computer-based devices, there are many instances where the data stream emitted by one device is not compatible with the intended destination device, even when the interfaces of the interconnected devices are comparable electrically. In such cases the incompatibility is often simple and can be solved by a simple modification of the data.
However, the construction of a customised converter device which performs the required modification of the data is not a trivial task. It requires expertise in microprocessor hardware design, in low-level microprocessor software, and in fundamental principles of data communications as applied to microprocessor-based hardware.
It requires an expenditure of time which is likely to be disproportionate relative to the value of the desired solution. The cost of the hardware for the device is also likely to be excessive given that only one or a small quantity may be required.
In the past, the requirement for such data conversion has been partly addressed by products known as single board computers.
These are microprocessor-based devices which may contain the basic hardware required to implement a data converter. The user of such a single board computer must usually write all the difficult software mentioned in the previous paragraph and while the hardware cost may be acceptable, the cost of the time will usually not be.
Another approach is to use a personal computer and program it to perform the required conversion. The disadvantage of this approach is the cost, the physical size and that the above-mentioned software expertise is still required of the user.
Any cost-effective solution to this data conversion requirement should include a versatile hardware product and an easy and quick method of writing a program to perform the desired data modification.
The program should be in a high level language such as Basic or Pascal or C, and should execute sufficiently fast to make the converter suitable for the high data rates found in modern computer peripherals.
According to the present invention, there is a programmable protocol converter adapted to modify a data stream by means of an internal high level language programme, which can be written by the user, the converter comprising the combination of:- a microprocessor, a high level language compiler, and one or more software storage devices at least one of which is a non-volatile memory, and one or more interfaces.
Preferably the compiler is a Pascal compiler or a C compiler or both.
The converter may, optionally, include a basic interpreter and/or a programme editor.
Both the high level language compiler and the editor may be integrated into the converter such that only a simple ASCII VDU terminal is required to enter, edit, compile, and test a user's programme.
The converter may include system software which manages the editing, compilation, storage and execution of multiple user programmes. It may also include data analysis functions which facilitate diagnosis and definition of the incompatibility whose elimination is desired.
The converter will normally require interfaces which may be, for example, selected from:- RS-232, Centronics parallel', RS-422, and RS-485 and combinations thereof.
Optionally the converter is fitted with analogue input/output circuitry to permit the converter to act as an analogue data acquisition system or as an analogue function generator.
There may also be a facility which allows a user-specified programme to be automatically executed whenever the converter is powered up, even if the programme is stored within the converter in source form only.
Preferably facilities are provided for encrypting a programme.
In its preferred form, the PPC contains everything needed to enable a user with limited expertise to write a data conversion program and to finish with a self-contained converter device which, once the conversion program is functioning, can be left in place connected between the previously incompatible devices.
The PPC may be used in a wide range of applications in addition to the above described data modification application: it can be programmed for an input-only application where it monitors a data stream for errors or other special conditions, or it can be programmed for an output-only application where it generates a usermodifiable data stream which can be used for testing or exercising other devices.
While it is envisaged that the PPC will initially be fitted with RS-232 interfaces because these are among the most common interfaces used in the field of computer peripherals, as mentioned above, other interfaces such as Centronics Parallel or RS-422 or RS-485 can be fitted. In all such applications, the user would greatly benefit from the ease of generating and modifying the high level language program controlling the PPC.
While a compiler (rather than an interpreter) will produce the fastest executing programs and also enable the writing of a more sophisticated program within the storage space limitations of the PPC, a simple Basic interpreter may also be provided which enables a user with very minimal programming expertise to generate a simple data conversion program. When the high level language compiler and the editor are integrated in the PPC, only a simple ASCII VDU terminal is required to enter, edit, compile and test the user's program. Alternatively, a computer may be used as the terminal by means of a terminal emulation program executing on that computer.
If, during the development of the user's data conversion program, the user may desire to separately write and test multiple programs, the PPC supports the creation, editing, storage and compilation of multiple high level language programs. Because in most applications only one program will ultimately be used even though multiple programs may be developed and stored in the PPC, a facility may be provided which allows a user-specified program to be automatically executed whenever the PPC is powered-up. If the user-specified program is stored in the PPC in high level language source form as originally created by the user, the program is automatically compiled prior to execution.
The optional functions for encrypting a high level language program language program are included for the following reasons. A high level/if stored in the PPC in source form, would if not encrypted be readable by anyone who connects a terminal to the PPC and enters the program edit mode. Further, if the program which has been selected for automatic execution at power-up is encrypted, it will be automatically decrypted during compilation in a temporary manner arranged to render it impossible to capture the unencrypted program text without the use of sophisticated equipment and expertise.
In the accompanying single sheet of drawings, one embodiment of the invention is illustrated by way of example.
The programmable protocol converter shown in the single figure of the drawings includes a number of features which, as is clear from the text above, are optional features. As seen in the drawing, the converter comprises a microprocessor 1 with support logic 2, The converter has a front panel with controls and indicators 21 which feeds into a control bus 19. Rear panel connectors 16 include a power input which feeds the power supply which in turn feeds a power bus 20. There is also a conventional data bus 18 and address bus 17. Interfaces 15 may be provided between the rear panel connector 16 and the various buses and interfaces may also be fed by the power supply 14.
A number of memories are provided. Firstly there is a non-volatile memory 12 for storage of application-specific programmes which may contain the multiple programmes 13. The non-volatile memory 12 is connected as can be seen to the four buses 17, 18, 19 and 200 Secondly there is a random access memory 11 containing a work space 8, a stack 9 and comms buffers 10, again connected to the four buses. Thirdly there is a programme memory 7 (EPROM) which contains a system code 3, a compiler and run times section 4, an editor 5 and a filing system 6.
This completes the basic hardware and software necessary to build a preferred form of programmable protocol converter embodying the invention.
The basic essential features of this converter are the microprocessor 1, the high level language compiler 4 and one or more of the software storage devices 7, 11 and 12 together with one or more interfaces 15 which may in the present instance be, for example, RS-232 or Parallel interfaces.
The mode of usage of the PPC is as follows: First, the user will indentify the problem to be solved, by examining any data flowing from one device to the other. The PPC has an Input Hex Dump function which non-intrusively receives and displays (in hex and ASCII) data flowing along a cable.
Second, the user will determine what modification to the data is required. This will become evident partly from the above and partly from consultation of the documentation of the devices involved.
Third, the user will write a programme in the PPC's high level language. This involves entering the PPC Editor and entering the programme text, followed by an invocation of the PPC compiler.
If the compiler finds errors, the user returns to the Editor to correct those errors and then recompile. Optionally, the compiler could enter the Editor automatically on encountering an error and open the programme text for editing at the error location.
Fourth, the user will test the programme by connecting the PPC between the two devices whose compatibility is desired. An initial version of a programme could contain debugging statements which print to the PPC's terminal when a particular part of the programme has been executed.

Claims (9)

1. A programmable protocol converter adapted to modify a data stream by means of an internal high level language programme, which can be written by the user, the converter comprising the combination of:- a microprocessor, a high level language compiler, and one or more software storage devices at least one of which is a nonvolatile memory, and one or more interfaces.
2. A converter according to claim 1 and in which the compiler is a Pascal compiler or a C compiler or both.
3. A converter according to claim 1 or claim 2 and including a Basic interpreter.
4. A converter according to any preceding claim and including a programme editor.
5. A converter according to claim 4 and in which both the high level language compiler and the editor are integrated into the converter such that only a simple ASCII VDU terminal is required to enter, edit, compile and test a user's programme.
6. A converter according to any of claims 1 to 5 and which includes system software which manages the editing, compilation, storage and execution of multiple user programmes.
7. A converter according to any preceding claim which also includes data analysis functions which facilitate diagnosis and definition of the incompatibility whose elimination is desired.
8. A converter according to any preceding claim and in which the converter is fitted with interfaces selected from:- RS-232, Centronics parallel, RS-422, and RS-485 and combinations thereof.
9. A programmable protocol converter substantially as hereinbefore particularly described and as illustrated in the accompanying drawings.
9. A converter according to any preceding claim which is fitted with analogue input/output circuitry to permit the converter to act as an analogue data acquisition system or as an analogue function generator.
10. A converter according to any preceding claim including a facility which allows a user-specified program to be automatically executed whenever the converter is powered-up, even if the program is stored within the converter in source form only.
11. A converter according to any preceding claim including facilities for encrypting a program.
12. A programmable protocol converter substantially as hereinbefore particularly described and as illustrated in the accompanying drawings.
Amendments to the claims have been filed as follows 1. A programmable protocol converter adapted to modify a data stream by means of an internal high level language programme, which can be written by the user, the converter comprising the combination of:- a microprocessor, a high level language compiler, and one or more software storage devices at least one of which is a nonvolatile memory, and one or more interfaces, and including a Basic interpreter, and a programme editor, in which both the high level language compiler and the editor are integrated into the converter in such a manner that only a simple ASCII VDU terminal is required to enter, edit, compile and test a user's programme.
2. A converter according to Claim 1 and in which the compiler is a Pascal compiler or a C compiler or both.
3. A converter according to Claim 1 or Claim 2 and which includes system software which manages the editing, compilation, storage and execution of multiple user programmes.
4. A converter according to any preceding Claim which also includes data analysis functions which facilitate diagnosis and definition of the incompatibility whose elimination is desired.
5. A converter according to any preceding Claim and in which the converter is fitted with interfaces selected from:- RS-232, Centronics parallel, RS-422, and RS-485 and combinations thereof.
6. A converter according to any preceding Claim which is fitted with analogue input/output circuitry to permit the converter to act as an analogue data acquisition system or as an analogue function generator.
7. A converter according to any preceding Claim including a facility which allows a user-specified programme to be automatically executed whenever the converter is powered-up, even if the programme is stored within the converter in source form only.
8. A converter according to any preceding Claim including facilities for encrypting a programme.
GB9203863A 1992-02-24 1992-02-24 Programmable protocol converter. Withdrawn GB2264374A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB9203863A GB2264374A (en) 1992-02-24 1992-02-24 Programmable protocol converter.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9203863A GB2264374A (en) 1992-02-24 1992-02-24 Programmable protocol converter.

Publications (2)

Publication Number Publication Date
GB9203863D0 GB9203863D0 (en) 1992-04-08
GB2264374A true GB2264374A (en) 1993-08-25

Family

ID=10710908

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9203863A Withdrawn GB2264374A (en) 1992-02-24 1992-02-24 Programmable protocol converter.

Country Status (1)

Country Link
GB (1) GB2264374A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2347829A (en) * 1998-12-30 2000-09-13 Gen American Royalty Inc Communication protocol translator for consumer electronic networks
WO2003027816A1 (en) 2001-09-28 2003-04-03 High Density Devices As Method and device for encryption/decryption of data on mass storage device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1573046A (en) * 1976-06-15 1980-08-13 Bunker Ramo Data processing system communication control unit
EP0193139A2 (en) * 1985-02-25 1986-09-03 International Standard Electric Corporation Apparatus for executing communication protocol conversions
EP0259786A1 (en) * 1986-09-12 1988-03-16 Xmit Ag Interface arrangement with preselectable protocols for a microcomputer plug-in card
EP0288713A2 (en) * 1987-04-29 1988-11-02 International Business Machines Corporation Concurrent multi-protocol I/O controller
EP0391157A2 (en) * 1989-04-03 1990-10-10 Siemens Aktiengesellschaft Interface module
GB2241360A (en) * 1990-02-05 1991-08-28 Jupiter Technology Inc Programmable data communication system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1573046A (en) * 1976-06-15 1980-08-13 Bunker Ramo Data processing system communication control unit
EP0193139A2 (en) * 1985-02-25 1986-09-03 International Standard Electric Corporation Apparatus for executing communication protocol conversions
EP0259786A1 (en) * 1986-09-12 1988-03-16 Xmit Ag Interface arrangement with preselectable protocols for a microcomputer plug-in card
EP0288713A2 (en) * 1987-04-29 1988-11-02 International Business Machines Corporation Concurrent multi-protocol I/O controller
EP0391157A2 (en) * 1989-04-03 1990-10-10 Siemens Aktiengesellschaft Interface module
GB2241360A (en) * 1990-02-05 1991-08-28 Jupiter Technology Inc Programmable data communication system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2347829A (en) * 1998-12-30 2000-09-13 Gen American Royalty Inc Communication protocol translator for consumer electronic networks
WO2003027816A1 (en) 2001-09-28 2003-04-03 High Density Devices As Method and device for encryption/decryption of data on mass storage device

Also Published As

Publication number Publication date
GB9203863D0 (en) 1992-04-08

Similar Documents

Publication Publication Date Title
US6349407B1 (en) Method and apparatus for re-introducing version control
US5960202A (en) Method and apparatus for automatically logging compiler options and/or overriding compiler options
US20040012632A1 (en) Disabling and conditionally compiling graphical code in a graphical program
KR940703049A (en) A system that divides processing tasks into signal processors and decision microprocessors that interface with them
WO1996010224A3 (en) Mechanism for linking together the files of emulated and host system for access by emulated system users
JPH0244421A (en) Generation of task train
EP0978433A3 (en) Method of operating a motor vehicle management computer system
Evans et al. On-line debugging techniques: a survey
US4675840A (en) Speech processor system with auxiliary memory access
GB2264374A (en) Programmable protocol converter.
Gatliff Embedding with GNU: GNU debugger
Jansen et al. Cider: A component-based toolkit for creating smart diagram environments
Friedrich et al. Efficient object-oriented software with design patterns
JP3832067B2 (en) Program transfer method for image processing apparatus
Nikoukhah Scicos: a dynamic systems modeler and simulator
Karjoth XFSM: A formal model of communicating state machines for implementation specifications
Brown The development of a microprocessor-based system on a limited budget
Matthews Microcomputer vs. minicomputer for educational computing
Radetzki SystemC TLM Transaction Modelling and Dispatch for Active Object.
JPS62214444A (en) Simulation method
Lee et al. Programming control and data acquisition routines for the IEEE-488 instrumentation interface
Musstopf et al. Program generators for process control applications
Basil A microprocessor-based refreshing buffer for storage tube graphics terminals
Mughal Generation of incremental indirect threaded code for language-based programming environments
EP0115566A2 (en) Method for testing the operation of an I/O controller in a data processing system

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)