Abstract:
A card reader for reading data cards of the type having columns of machine-readable information thereon and transmitting data outputs representative of this information to an interface, includes a read station for sensing the information in each column and generating corresponding data outputs. A latching circuit receives data outputs from the sensing means and transmits the data outputs to the interface responsive to a strobing signal. A timing wheel is employed to detect the velocity of the cards during transport through the read station to provide an output proportional to velocity. A train of pulses is generated for each column responsive to the velocity output, and the period of the pulse train is adjusted to compensate for increases or decreases in the velocity of the card through the read station, by employing a phase-locked loop circuit. The pulse train is then decoded to generate the strobing signal to the latching means coincident with a first predetermined pulse in the train, and for utilizing other pulses in the train to generate signals initiating other functions of the reader.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to apparatus designed to decode information contained on data cards, such as punched cards, for example. In particular, the present invention is directed to new and useful means and methods for synchronizing electronic data outputs representative of the information with the corresponding area of the data card where such information is located; and to new and useful means and methods of resynchronizing the electronic data outputs when an area of information on a data card is not detected at an anticipated time or location. 
     2. Description of the Prior Art 
     Card readers are employed to &#34;read&#34; coded information on data cards. Generally, the information is arranged on a card in rows and columns, and takes the form of a punched hole, a magnetic stripe, or the like. 
     It is essential that a card reader be capable of correlating specific data outputs with the corresponding column of information being read. If this correlation is not maintained, then a given output is incorrectly attributed to the wrong column; alternatively, when the information is not located at the appropriate area of the card, as a misregistered column, for example, an incorrect data output will result. These problems can arise from changes in the velocity of the data card through the reader caused by variations in drive motor voltage or temperature; or by misregistry of the punched holes or magnetic stripes. 
     Some of the above-described problems have been solved in prior art card readers by employing relatively expensive hysterisis-type synchronous motors. Other arrangements have utilized large timing discs having a plurality of striations per column, and have coordinated the data outputs with specific mechanical striations. 
     Phase comparison and referencing techniques are utilized in a number of applications in the electronic arts. Examples of patents disclosing such arrangements are U.S. Pat. Nos.: 3,238,459 to Landee; 3,150,352 to Einsel et al.; 3,010,028 to Mierhoff et al.; 3,201,759 to Kelley; 3,523,231 to Arthur et al.; 3,851,238 to Fletcher et al.; 3,420,989 to Sapp; 3,683,345 to Faulkes et al.; 3,336,534 to Gluth; 2,992,411 to Abbott; 3,181,122 to Brown; and 3,839,665 to Gabor. 
     SUMMARY OF THE INVENTION 
     The present invention contemplates apparatus for reading data cards of the type having columns of machine-readable information thereon, and for providing data outputs representative of said information to a device interfaced therewith, in which the apparatus includes means for synchronizing the data outputs with respective columns of the cards. The synchronizing means includes a rotatable shaft for driving the cards through the apparatus, and means for detecting the position of the shaft for each column. Means are also included for receiving an output from the detecting means and generating a train of pulses, the period of the pulse train being dependent upon the angular velocity of the shaft. Means are further provided for processing the pulse train for correlation of each data input with a corresponding one of the columns. 
     In particular, the processing means comprises means for decoding and counting the pulses in the pulse train and generating a strobing signal to latching means holding the data outputs from the card reader, until the strobing signal is applied thereto. The decoding and counting means also utilizes various pulses in the train to generate signals initiating other card reader functions, including an index mark signal to the interface device indicating that data has been transmitted to the interface. 
     The system of the present invention also contemplates detection of the misregistry of an information column, and re-initiation of the pulse train generating means when such misregistry is detected, in order to resynchronize the data outputs representative of such misregistered column. 
    
    
     THE DRAWINGS 
     FIGS. 1 and 2 together form an overall block diagram of the system in accordance with the present invention. 
     FIGS. 3(a)-(j), inclusive, are wave forms illustrating various electronic and electromagnetic signals related to the operation of the system shown in FIGS. 1 and 2. 
     FIG. 4 is a top plan view of a punched data card of the type read by the system of FIGS. 1 and 2. 
    
    
     DETAILED DESCRIPTION 
     An initial description of a card reader system employing synchronization and resynchronization means in accordance with the present invention will be described with reference to FIGS. 1 and 2, followed by a description of the operation of the system referenced to FIGS. 1-4, inclusive. 
     I. system layout 
     a. data Output 
     The system, referred to generally as 10, includes a read station 12 having a slot 14 for receiving a data card 11 in the read station. The data card 11 has a leading edge 13 and a trailing edge 15, and a plurality of bits of information disposed in columns thereon, such as punched holes 17. It will be understood by those skilled in the art that the read station 12 includes a plurality of light sources and photocells therein, which are adapted to provide an output when one of the punched holes 17 are detected between the light source and the photocell. 
     The system 10 also includes an output section 16 for receiving the photocell outputs 18 from the read station 12. The output section 16 includes photocell amplifiers 20 which amplifies the outputs from the read station 12 and forwards these signals to a gating circuit 22 and to a data latching circuit 24. The outputs of the data latching circuit 24 are fed through appropriate line drivers 26 to an interface device (not shown) of the type adapted to receive data from the reader 10. 
     The gating circuit 22 includes a plurality of &#34;and&#34; and &#34;or&#34; gates of conventional design, all of the photocell outputs being &#34;anded&#34; together to provide an &#34;all dark&#34; output in the event that no photocell in the read station 12 is energized, as for example in the no data fields immediately following the leading edge 13 and immediately prior to the trailing edge 15 of the card 11. All of the photocell outputs are likewise all &#34;ored&#34; together to provide a &#34;one-light&#34; output in the event any one photocell in the read station 12 is energized. 
     The data latching circuit 24 is of a type used with state of the art card readers, and is adapted to hold the outputs from the photocells in the read station 12 and then transmit the photocell outputs to the line drivers 26 responsive to a strobing signal. 
     B. Card Transport Mechanism and Timing Disc 
     The card reader 10 further includes a motor 30 having a shaft 32 to which is attached a drive wheel 34 positioned adjacent the read station 12 and which is adapted to transport the data card 11 through the slot 14. While a direct mechanical connection between the shaft 32 and the wheel 34 is shown, it will be understood that complex belt and pulley arrangements or mechanical equivalents thereof are utilized in state of the art card readers, it being further understood that the simplified arrangement of FIGS. 1 and 2 is utilized for descriptive purposes only. 
     A timing disc 36 is fixed to the shaft 32. The disc 36 includes a plurality of ferrous notches 38. A magnetic transducer 40 is positioned adjacent the disc 36 to detect the notches 38 and provide a reference signal, F ref , the frequency of which is directly proportional to the rotational speed of the shaft 32. A pulse squaring amplifier 42 refines the output from the transducer 40. 
     C. Synchronization Circuit 
     The output from the amplifier 42 is fed into a phase-locked loop circuit 44 which includes a phase comparator 46, a low pass filter 48, an amplifier 50, a voltage controlled oscillator (VCO) 52, and a binary divider 54. As shown in FIG. 1, the output from the amplifier 42 is fed into the phase comparator 46, which likewise receives an output from the binary divider 54. The phase comparator 46 provides either a lead or lag signal to the filter 48, which signal is amplified at 50 and forwarded to the VCO 52, the output of which is coupled to the binary divider 54. Phase-locked loop circuits of the type shown are adapted to provide, after a start up period, an output which is a pulse train having a binary number (N) of pulses for each cycle of the F ref  signal. This (N) F ref  signal is fed into a column counting circuit 56, which includes a binary divider circuit 58 and a decoder circuit 60. The column counting circuit 56 provides four output signals, T 0 , T N-A , T N-B  and T N , which are described in detail below with reference to the operation of the reader 10. These outputs are fed to an event gating circuit 62. One output, T N , is also fed to a card counting circuit 64, which includes a binary divider circuit 66 and a decoder 68. The card counting circuit 68 generates five output signals, C 0 , C 1 , C M-A , C M  and C M+X  which are also described below. The first four of these signals are transmitted to the event gating circuit 62, and the fifth signal, C M+X , is transmitted to an initiation logic circuit 70. 
     The event gating circuit 62 includes a plurality of &#34;and&#34; gates, utilized to generate seven outputs, each of which represents an input of one signal from either counting circuit 58, 64; or the coincidence of two signals, one from each counting circuit (as shown by legends in FIG. 2), in order to initiate various card reader functions as described more fully below. Three of the outputs from the event gating circuit 62 are coupled to an error logic circuit 72, these outputs serving as a leading edge dark check (L. E. dark ck), a trailing edge dark check (T. E. dark ck) and a trailing edge light check (T. E. light ck). The error logic circuit 72 also receives the &#34;all dark&#34; and &#34;one-light&#34; outputs from the gating circuit 22 and the output section 16. Fourth and fifth outputs from the event gating circuit 62 comprise &#34;wide data strobe&#34; and &#34;clear data&#34; signals fed to the data latching circuit 24. A sixth output signal from the event gating circuit 62 is fed directly through a line driver 74 as an &#34;index mark&#34; to the interface, indicating the availability of data outputs from the line drivers 26 associated with the output section 16. 
     Referring again to the error logic circuit 72, this circuit includes an output to the interface through a line driver 80. Referring also to the initiation logic circuit 70, this circuit receives the &#34;all dark&#34; input signal from the gating circuit 16. The output of the initiation logic circuit 70 provides a &#34;reader enable&#34; signal which is differentiated at circuit 84 and fed into both the column and card counting circuits 56 and 64. 
     D. Resynchronization Circuit 
     A seventh and final output from the event gating circuit 62 is a &#34;resynch enable&#34; signal to an &#34;and&#34; gate 76, which also receives the &#34;one-light&#34; output from the gating circuit 22 and the output section 16. The output of the &#34;and&#34; gate 76 is differentiated at differential amplifier 78, and fed into the binary divider 58 of the column counting circuit 56. 
     Ii. reader operation 
     operation of the reader 10 is begun with a start signal input to the initiation logic circuit 70. As the first card 11 passes into the slot 14 of the read station 12, the leading edge 13 of the card effects an &#34;all dark&#34; output from the gating circuit 22, which is then fed to the initiation logic circuit 70. The initiation logic circuit 70 then sets the column and card counting circuits 56 and 64 with a differentiated &#34;reader enable&#34; input thereto. 
     Referring to the phase-locked loop circuit 44, rotation of the shaft 32 causes movement of the card 11 through the read station 12, and also causes rotation of the timing disc 36. Movement of the ferrous notches 38 past the transducer 40 generates the F ref  signal input to the phase-locked loop circuit 44. After a short period of time, the phase-locked loop circuit 44 becomes stabilized, in that the output of the VCO 52 is a pulse train having a number (N) of pulses for each cycle of the F ref  signal. The number (N) is dependent upon the design of the VCO 52, and is selected as a binary number; while any binary may be utilized, the number 256 is suitable. With frequency changes in the F ref  signal, the phase comparator circuit 46 detects either a phase lead or lag with respect to the output of the binary divider 54, which lead or lag signal is then fed into the VCO 52 via the low pass filter 48 and the amplifier 50. In a well known manner, the VCO 52 adjusts the overall period of the pulse train transmitted therefrom, such that the period of the pulse train increases with decreases in the velocity of the card through the read station, or alternatively decreases with increases in the velocity of the card. Thus, the (N) F ref  signal output from the phase-locked loop circuit includes a given number of pulses in a pulse train, the entire pulse train being expanded or contracted with respect to time responsive to changes in the velocity of the shaft 32. The number of ferrous notches 38 is preselected to have a specific ratio with respect to the number of data columns on the card 11, for example one notch per column. The pulse train output from the phase-locked loop circuit 44 will therefore have (N) pulses per column. 
     The (N) F ref  signal is then fed into the binary divider circuit 58 of the column counting circuit 56. This divider circuit, assuming the presence of the &#34;reader enable&#34; input, divides the (N) F ref  signal into the constituent binary numbers, for example in the instance of the binary 256 pulses in the pulse train, the binary divider provides 8 binary outputs from 2 0  to 2 7 . These outputs are decoded in the decoder circuit 60, to provide four outputs T 0 , T N-A , T N-B  and T N . T N  represents the last pulse in the pulse train, T 0  represents a predetermined pulse located preferably at the end of the first one-third of the pulse train, and T N-A  represents a pulse occurring at about the beginning of the second third of the pulse train. T N-B  is a pulse occurring intermediate between the pulse representing signal T N-A  and the pulse representing signal T N  (note FIGS. 3(g), (i) and (h), respectively). 
     As shown in FIG. 1, signal output T N  from the decoder circuit 60 is also fed into the binary divider circuit 66 of the card counting circuit 64. In a manner similar to that described above with respect to the column counting circuit 56, the card counting circuit 64 provides five outputs, each of which occurs at a specific T N  signal, and is predetermined by the decoder circuit 68. Four of the five outputs from the decoder circuit 68 are fed into the event gating circuit 62, and comprise outputs C 0 , C 1 , C M-A  and C M . A fifth output C M+X , is fed to the initiation logic circuit 70. 
     The outputs of the event gating circuit 62, the gating circuit 22 and the resynchronization circuit including the &#34;and&#34; gate 76 and the differential amplifier 78 will be described with reference to FIGS. 3(a)-(j). 
     As previously described, operation of the reader 10 is begun with a start signal to the initiation logic circuit 70. As the leading edge 13 of the data card 11 (note FIG. 4) the &#34;one-light&#34; signal generated by the absence of the card is terminated, and an &#34;all dark&#34; output is fed to the initiation logic circuit 70, causing the &#34;reader enable&#34; signal (note FIG. 3(b)) to set the column and card counting circuits 56 and 64. After the leading edge dark area has passed the photocells in the read station 12, the event gating circuit 62 outputs a &#34;leading edge dark check&#34; to the error logic circuit 72. This leading edge dark check signal comprises the C 0  output of the card counting circuit 64, and if the error logic circuit 72 has not seen a &#34;all dark&#34; signal prior to receipt of the C 0  leading edge dark check signal, then a read error signal is generated to the interface through the line driver 80. 
     When the card 11 advances through the read station 12 such that the first column of punched holes 17 is adjacent the photocells, a &#34;one-light&#34; signal is initiated. Previous to this &#34;one-light&#34; condition, the coincidence of C 0  and T N-B  outputs from the respective counting circuits 64 and 56 provides a &#34;resynch enable&#34; signal to the &#34;and&#34; gate 76 (note FIG. 3(d)). When the &#34;one-light&#34; condition is detected, this signal is also fed to the resynchronization &#34;and&#34; gate 76, which in turn restarts the binary divider circuit 58 of the column counting circuit 56. In this way, the pulse train is referenced from the leading edge of any one punched hole 17 in the first data column having a punched hole therein. Subsequently, output T 0  from the column counting circuit 56 occurs coincident with a predetermined pulse in the pulse train output of the phase-locked loop circuit 44. Noting the &#34;data strobe&#34; output from the event gating circuit 62, the occurrence of outputs T 0  and C 1  from the respective counters 56 and 64 releases the stored data outputs of the photocell amplifier 20 stored in the data latching circuit 24. These data outputs are then transmitted through the line drivers 26 to the interface. The &#34;data strobe&#34; signal is terminated upon the occurrence of the T N-A  from the column counting circuit 56, and the continuation of the C 1  output from the card counting circuit 64. These data strobe signals continue for each column in which data appears therein, as is shown in FIG. 3(g). It will be noted that the width of the data strobe is approximately one-third of the overall column between the leading and trailing edges thereof, appearing in the middle one-third. 
     At the end of a given pulse train, the T N  output from the column counting circuit 56 is fed to the data latching circuit 24 of the output section 16, in order to clear data therefrom and reset the data latching circuit to receive further output from the photocell amplifiers 20. Prior to initiation of the T N  signal, T N-B  is fed to the interface through the line driver 74 to provide an &#34;index mark&#34; indicating that data is available from the data latching circuit 24 (note FIG. 3(i)). The outputs from the data latching circuit 24 are subsequently fed into the interface, as is shown by each column of information noted at FIG. (j). 
     Noting columns 5 and 7 of FIG. 3(c), there is shown at column 5 a misregistered data column which appears early with respect to the normal position. Column 7 depicts a punched hole appearing late with respect to the normal position. It will be seen that the resynchronization signal (FIG. 3(f)) is generated responsive to the &#34;one-light&#34; condition determined at the leading edge of the hole, and thereafter resets the column counting circuit 56 so that T 0 , and subsequent outputs T N-A , T N-B  and T N , are all reset with respect to the changed condition of the misregistered column of data. The above synchronization and resynchronization means allows the use of much less expensive drive motors than the hysterisis-type synchronous motors described above. Further, the use of the phase-locked loop circuit provides a means for tracking changes in the drive shaft velocity, and generating an output responsive thereto. Further, the resynchronization technique described above allows the counting circuits to be reset for each data column in which a punched hole, or equivalent information is contained in the data card.