Programmable synchronization character

Information

  • Patent Grant
  • 5896426
  • Patent Number
    5,896,426
  • Date Filed
    Monday, February 5, 1996
    29 years ago
  • Date Issued
    Tuesday, April 20, 1999
    25 years ago
Abstract
A character programming method (10) whereby a synchronization character (17) can be determined in a determine encoding scheme operation (12) and a determine synchronization character operation (14). The synchronization character (17) can then be programmed into a synch character logic (26) of an integrated circuit (20) or a core (20) thereof. The synch character logic (26) can be programmed through a plurality of program pins (30) on the periphery of the integrated circuit (20) or by more sophisticated means such as by sending the programming from a sending integrated circuit (40) to a receiving integrated circuit (42) through a communications line (44).
Description

TECHNICAL FIELD
The present invention relates to the field of electronic data processing and communications, and more particularly to a method and means for synchronizing asynchronous data communications means. The predominant current usage of the present inventive programmable synchronization character will be in synchronization of communications originated and/or terminated by asynchronous data communications integrated circuit devices.
BACKGROUND ART
It is frequently necessary or desirable to insert a synchronization character in a data stream. For example, a FibreChannel specification requires the use of such a synchronization character. When a data stream containing a required synchronization character is detected by a FibreChannel compatible device, the device locks onto the data stream and is synchronized therewith.
In order to deserialize a bitstream made up of, for example, a plurality of parallel data streams, it is necessary to initially synchronize the deserializer device with the input stream, so that the deserializer can determine which portion of the serial bitstream corresponds to the first parallel input, which portion to the second input, and the like. Different data formats utilize different synchronization characters, and there are several considerations relevant to the determination of the size and configuration of a synchronization character. Among these considerations are that the synchronization character should be unlike any character that is likely to occur in the regular data stream, and also that DC balance is maintained by keeping a generally equally quantity of ones and zeros, since an excess of either will cause an instantaneous blockage due to inherent capacitance in the transmission means and will, therefore, restrict the speed of transmission at least on copper (as opposed to fiber optic) transmission lines. An excellent discussion of synchronization characters and the relevant considerations is found in U.S. Pat. No. 4,975,916 issued to Miracle et al.
It would be desirable to make data communications devices such that they could communicate with many different types of such devices using a great variety of data formats and data transmission protocols. However, no prior art method has effectively provided for the synchronization of high speed asynchronous serial data in the many various data formats and transmission protocols currently in use and which might be developed in the future.
INDUSTRIAL APPLICABILITY
The inventive character programming method 10 is intended to be widely used in the production and operation of data transmission methods and means, particular in very high speed data communications applications. It is anticipated that there will be significant application by manufacturers, OEM's, equipment installers, and the like--where it will be desirable to have a quantity of parts on hand which might be used in any of a number of different applications, with the user having the flexibility to program the synchronization character 17 at the time the unit is required to be put into operation, installed, or the like. Also, it is anticipated that it will be desirable, in many instances, to go to the extra expense to produce the integrated circuits 20 such that they can be programmed even from a remote location, such as in the example discussed in relation to FIG. 4, herein.
Since the inventive character programming method 10 may be readily practiced in conjunction with a great variety of hardware means and data communication formats and protocols, and particularly since it greatly increases the flexibility and adaptability of such means and methods in relation to the present state of the art, it is anticipated that it will be readily accepted in the industry and included, in one form or another, in many of the data communications products of the future. For these and other reasons, it is expected that the utility and industrial applicability of the invention will be both significant in scope and long lasting in duration.
All of the above are only some of the examples of available embodiments of the present invention. Those skilled in the art will readily observe that numerous other modifications and alterations may be made without departing from the spirit and scope of the invention. Accordingly, the above disclosure is not intended as limiting and the appended claims are to be interpreted as encompassing the entire scope of the invention.
DISCLOSURE OF INVENTION
Accordingly, it is an object of the present invention to provide a means for communicating between devices where at least one of such devices is not inherently dedicated to the transmission protocol used by another of such devices.
It is another object of the present invention to provide an improved method for transferring data between computer devices.
It is yet another object of the present invention to provide an improved method and means whereby data communications devices may be more versatile and adaptable than existing such devices.
Briefly, the preferred embodiment of the present invention is a method for making data communications devices more versatile by allowing for the programmability of a synchronization character. Since it is necessary for both a sending device and a receiving device to use the same synchronization character, unless such devices are made to communicate with other of their own kind and no other kind, then such devices could not communicate in the prior art. However, according to the present invention, it is possible to program one or both of the communications devices to adapt such device to send and/or to recognize a particular synchronization character.
In an first preferred embodiment of the invention, a communications device can be programmed through external pins. An equally preferred alternate embodiment of the invention provides for computerized programming through the logic of the invention such that it can be easily reprogrammed or programmed from a remote location
An advantage of the present invention is that digital communications devices can be more versatile.
A further advantage of the present invention is that digital communications devices can be premanufactured and/or stockpiled and then programmed for a particular application when needed.
Yet another advantage of the present invention is that an integrated circuit core can be modified to work in a particular application.
Still another advantage of the present invention is that it is easy and inexpensive to implement.
These and other objects and advantages of the present invention will become clear to those skilled in the art in view of the description of the best presently known mode of carrying out the invention and the industrial applicability of the preferred embodiment as described herein and as illustrated in the several figures of the drawing.





BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 is a flow chart depicting the basic operations of the present inventive programmable synchronizaton character method;
FIG. 2 is an example of a ten bit synchronization character;
FIG. 3 is a diagrammatic representation of an example of hardware for practicing the present inventive method; and
FIG. 4 is an equally preferred alternate embodiment of the hardware of FIG. 3.





BEST MODE FOR CARRYING OUT THE INVENTION
The following detailed description illustrates the invention by way of example, not by way of limitation of the principles of the invention. The best presently known mode for carrying out the invention is a method depicted in the Flow chart of FIG. 1 and designated therein by the general reference character 10. The basic operations of the inventive character programming method 10 are a determine encoding scheme operation 12, a determine synchronization character operation 14 and a program synchronization operation 16. The determine encoding scheme operation 12 and the determine synchronization character operation 14 may be entirely performed by an operator, or may be accomplished by more sophisticated means and methods, as will be discussed in more detail hereinafter. For the present, a simple example of the determine encoding scheme operation 12 would be simply to find out what encoding scheme is being used from available documentation, and an equally simple example of the determine synchronization character operation 14 would be to determine what synchronization character is required, also from the documentation. FIG. 2 depicts a simple example of a ten bit synchronization character 17, consisting simply of alternating ones and zeros, such as might be applied in the practice of the present inventive character programming method 10.
FIG. 3 depicts an exemplary hardware 18 such as might be used in the practice of the present inventive method 10. The exemplary hardware 18 is embodied in a printed circuit board 19, such as a network interface board, or the like, which would generally be inserted in a computer or other data processing or communications means. The printed circuit board has thereon an integrated circuit 20, and a subcomponent of the integrated circuit 20 is a core 22 circuit. Within the core 22 of the example of FIG. 3 is a fast synch unit 24, although it is not intended that the present invention be limited to a particular type of synchronization means as is exemplified by the fast synch unit 24. Whatever type of synchronization means is used, and in particular in the example of the fast synch unit 24 of FIG. 3, there is a synch character logic 26 for holding and maintaining the synchronization character 17 (FIG. 2). In the simple example of FIG. 3, a plurality of program lines 28 connect the synch character logic 26 to a like plurality of program pins 30 on the periphery of the integrated circuit 20. In the present example of FIG. 3 there are ten program pins 30 corresponding to the ten binary digits of the ten bit synchronization character 17. A user or manufacturer can set the synchronization character in the synch character logic 26 by either leaving the program pins unconnected or else connecting the program pins to a supply voltage pin 32 or a ground pin 34 (as is appropriate to the particular configuration of the synch character logic), depending whether a one or a zero is desired at the digit place corresponding to each particular program pin 30.
FIG. 4 depicts an equally preferred alternate embodiment 18a of the exemplary hardware. A sending unit 36 (a sending computer or other such device) is intended to send data to a receiving unit 38. A sending integrated circuit 40 within the sending unit will initiate a serial data stream to a receiving integrated circuit in the receiving unit 38 over a communications line 44. The example of FIG. 4 is intended to illustrate a situation, contemplated by the inventors, wherein it may be necessary or desirable to configure the receiving integrated circuit 42 such that it can readily be programmed to contain essentially any type of synchronization character. Indeed, it might be desirableto have the sending integrated circuit actually program the receiving integrated circuit in preparation for a more elaborate data transmission to follow. One skilled in the art will recognize that, although the examples discussed previously herein of the determine encoding scheme operation 12 and the determine synchronization character operation 14 are extremely simple, it is conceivable that the receiving integrated circuit could actually be provided with intelligence to recognize the type of encoding scheme of incoming data and the type of synchronization character required to synch to such a data stream. This would be an example of a more sophisticated determine encoding scheme operation and determine synchronization character operation 16 touched upon briefly previously herein, and within the contemplation of the inventors as to the practice of the present inventive method 10. Also, as will be recognized by one skilled in the art, when the synch character logic 26 is thus externally programmable, the synch character logic 26 will be a programmable data register.
INDUSTRIAL APPLICABILITY
The inventive character programming method 10 is intended to be widely used in the production and operation of data transmission methods and means, particular in very high speed data communications applications. It is anticipated that there will be significant application by manufacturers, OEM's, equipment installers, and the like--where it will be desirable to have a quantity of parts on hand which might be used in any of a number of different applications, with the user having the flexibility to program the synchronization character 17 at the time the unit is required to be put into operation, installed, or the like. Also, it is anticipated that it will be desirable, in many instances, to go to the extra expense to produce the integrated circuits 20 such that they can be programmed even from a remote locate, such as in the example discussed in relation to FIG. 4, herein.
Since the inventive character programming method 10 may be readily practiced in conjunction with a great variety of hardware means and data communication formats and protocols, and particularly since it greatly increases the flexibility and adaptability of such means and methods in relation to the present state of the art, it is anticipated that it will be readily accepted in the industry and included, in one form or another, in many of the data communications products of the future. For these and other reasons, it is expected that the utility and industrial applicability of the invention will be both significant in scope and long lasting in duration.
All of the above are only some of the examples of available embodiments of the present invention. Those skilled in the art will readily observe that numerous other modifications and alterations may be made without departing from the spirit and scope of the invention. Accordingly, the above disclosure is not intended as limiting and the appended claims are to be interpreted as encompassing the entire scope of the invention.
It should be understood that various modifications within the scope of this invention can be made by one of ordinary skill in the art without departing from the spirit thereof. We therefore wish our invention to be defined by the scope of the appended claims as broadly as the prior art will permit, and in view of the specification if need be.
Claims
  • 1. A method for programming a receiving integrated circuit, in a transmission system employing a serial link between a transmitting circuit and the receiving integrated circuit, to synchronize on a particular character, the method comprising:
  • receiving a data stream in the receiving intergrated circuit from the transmitting circuit, the data stream having been encoding according to a particular encoding scheme;
  • recognizing the particular encoding scheme, the step of recognizing being performed by the integrated circuit,
  • based upon the results of the step of recognizing the particular encoding scheme, determining a synchronization character corresponding to the particular encoding scheme, the step of determining being performed by the receiving integrated circuit;
  • forwarding a program voltage value corresponding to the synchronization character into a set of external pins to program respective bits within a sync character logic contained within the receiving integrated circuit; and
  • transmitting the synchronization character and a serial data stream across the serial link to the sync character logic.
  • 2. The method of claim 1, wherein:
  • the sync character logic is set by selectively connecting external pins to an appropriate voltage level.
  • 3. The method of claim 2, wherein:
  • the appropriate voltage level is a ground potential.
  • 4. The method of claim 2, wherein:
  • the appropriate voltage level is a positive logic voltage potential.
  • 5. The method of claim 2, wherein:
  • the program voltage value is forwarded into the external pins across a data communications line.
  • 6. The method of claim 2, wherein:
  • the program voltage value is forwarded into the external pins from a location remote from the receiving integrated circuit.
CROSS REFERENCES TO RELATED APPLICATIONS

This application is being filed generally concurrently with the following applications, and these are incorporated herein by reference. U.S. patent application Ser. No. 08/586.173 filed on Jan. 17, 1996 for a WRAP BACK TEST SYSTEM AND METHOD; U.S. Ser. No. 08/596,816 filed on Feb. 5, 1996 for a FAST SYNCHRONIZATION METHOD; U.S. patent application Ser. No. 08/597.896 filed on Feb. 5, 1996 for a HIGH SPEED PHASE LOCKED LOOP TEST METHOD AND MEANS; U.S. patent application Ser. No. 08/586.171 filed on Jan. 17,1996 for a METHOD OF INTERLEAVING NETWORK TRAFFIC OVER SERIAL LINES; and U.S. patent application Ser. No. 08/597,015 filed on Feb. 5, 1996 for a SELF TEST OF CORE WITH UNPREDICTABLE LATENCY.

US Referenced Citations (48)
Number Name Date Kind
4048445 Ghisler Sep 1977
4071887 Daly et al. Jan 1978
4271513 Maejima et al. Jun 1981
4308472 McLaughlin Dec 1981
4419633 Phillips Dec 1983
4486739 Franasek et al. Dec 1984
4564933 Hirst Jan 1986
4573017 Levine Feb 1986
4573172 Grimaldi Feb 1986
4575841 Fagerstedt et al. Mar 1986
4575864 Rice, Jr. et al. Mar 1986
4613979 Kent Sep 1986
4631719 Huffman et al. Dec 1986
4675886 Surie Jun 1987
4748623 Fujimoto May 1988
4751469 Nakagawa et al. Jun 1988
4806878 Cowley Feb 1989
4908819 Casady et al. Mar 1990
4920546 Iguchi et al. Apr 1990
4975916 Miracle et al. Dec 1990
4979185 Bryans et al. Dec 1990
4988901 Kamuro et al. Jan 1991
5010559 O'Connor et al. Apr 1991
5025458 Casper et al. Jun 1991
5028813 Hauck et al. Jul 1991
5040195 Kosaka et al. Aug 1991
5043931 Kovach et al. Aug 1991
5052026 Walley Sep 1991
5111451 Piasecki et al. May 1992
5126690 Bui et al. Jun 1992
5159279 Shenoi et al. Oct 1992
5180993 Dent Jan 1993
5251217 Travers et al. Oct 1993
5265089 Yonehara Nov 1993
5268652 Lafon Dec 1993
5274668 Marschall Dec 1993
5299236 Pandula Mar 1994
5327103 Baron et al. Jul 1994
5337306 Hall Aug 1994
5343461 Barton et al. Aug 1994
5353250 McAdams Oct 1994
5379409 Ishikawa Jan 1995
5398270 Cho et al. Mar 1995
5448571 Hong et al. Sep 1995
5473758 Allen et al. Dec 1995
5481543 Veltman Jan 1996
5559854 Suzuki Sep 1996
5577039 Won et al. Nov 1996