CA1136279A - Method and means for encoding and decoding digital data - Google Patents

Method and means for encoding and decoding digital data

Info

Publication number
CA1136279A
CA1136279A CA000315347A CA315347A CA1136279A CA 1136279 A CA1136279 A CA 1136279A CA 000315347 A CA000315347 A CA 000315347A CA 315347 A CA315347 A CA 315347A CA 1136279 A CA1136279 A CA 1136279A
Authority
CA
Canada
Prior art keywords
data
signal
output
transition
clock
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.)
Expired
Application number
CA000315347A
Other languages
French (fr)
Inventor
Jordan Isailovic
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.)
Discovision Associates
Original Assignee
Discovision Associates
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 Discovision Associates filed Critical Discovision Associates
Application granted granted Critical
Publication of CA1136279A publication Critical patent/CA1136279A/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Dc Digital Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

ABSTRACT OF THE DISCLOSURE
A data handling system is described for encoding an input digital data waveform by a pulse code modulation technique useful to obtain optimum packing density for a recording medium. The encoding technique selects the binary one state of the input waveform for processing and generates an encoded waveform containing sufficient signal level transitions to reconstruct the original input data waveform.
The decoding technique examines the transitions present in the retrieved encoded signal and generates decoding indicia sufficient to identify all binary ones in the original digital waveform. A waveform generator recreates the original encoded waveform using selected clocking signals and the decoding indicia.

Description

~13~

A` ~ETH~ ;PIND ME:AN5 FOR
ENCL011111G ~!10 DECO~ ' DICI~AL DA.TA
BACK~ROUNI:~ OF T~ IN~TENl~ION
.

The present invention relates to the storage and 5 transmission of digital data by a new pulse code modu-lation technique. An encoder is provided tG change the: ;
signals from NRS encoded format into the new pulse code modulation format. A decoder is provided to change the encode~ signals ~rom the new format back into the NRS
10 encoded format.
SUMMARY OF` THE I~IENTION
, The present invention is directed to a pulse code modulation technique useful to obtain optimum packing d~nsity or the storage andjor transmission of digital ~i5 information. ~The digita~ ~information to be processed -: -is received by the~:circuitry of the present invention in NRZ format. The encoding and decoding technique described hereinafter employs minimal bandwidth and information to maintain bit synchroni~ation capability 20 and errorless data detection. The new pulse code modulation technique generates an encoded data cell -~
stream containing no ambiguities and containing positive synchronlzing informationO

36~2~

Digltal data is represented in the NRZ coded format by a succession of first and second level signals.
For convenience hereina~ter, the binary one condition is identified as the more positive o~ the two binary 5 levels and the binary zero level of the data stream is represented by the more negative of the two data levels.
The encoding technique of the present invention provides a transition in the middle of a data cell or at the transition time hetween adjacent data cells.
10 The location of a transition signal in the encoded data stream for the current cell to be recorded depends in part upon where the transition was located for the data cell just previously recorded~
An inspection of the encoded data stream, encoded 15 according to the technique of the present in~ention, i~mediately tells the observer a limited amount of definite information, for example: a) When the distance between two transitions equals the length of one data cell, the observer knows that the second transition 2Q represents a binary one in the original NRZ code;
b) When the distance between two transitions is two bit cells ln length, the observer knows (i) that a series of zeros is present in '.he NRZ code and (ii) both transitions occur between data cells. `This is 25 contrasted with both prior art methods when the transitions occur at the middle o~ the bit cell times.
., . . , .. _ ., _ . . _, ,, . .. ___ _ _ _ _ _ _ , ,, , . _ ._, _ . , In the encoding techni~ue of the present invention, the NRZ input pulse~stream is sampled to identify each binary one contained in the input NRZ ;
30 data train. A~first series of pulses, corresponding to the center of a data cell, are generated to identi y each binary one level of the NRZ bit stream. A
second series of pulses represent the clock frequency at which the NRZ encoded pulse train is processed~
35 These last two series of pulses represent the first level indicia of the encoded data pulse train ', ~L~3~

to be recorded. The two series of puIses are ANDED
together and divided by four and now represent the new encoding format for the input NRZ pulse train.
The newly encoded data stream is ready for recording 5 upon a medium capable of encoding binary data. As an alternate use, ~he encodad data stream can be transmitted by standard equipment employed for transmitting digital data.
Upon reading back from ~he recording medium or upon 1~ reception of the transmitted signal, the encoded data stream i9 applied to a decoder circuit. The decoder circuit changes the data stream back into the NRZ ~ormat.
This decoder employs a first decoding means for identifying certain of the binary ones encoded as a transition 15 occurring in the center of a data cell. ~he decoder employs a second decoding means for identifying other binary ones encoded as a transition spa~ed one data cell from the previously encoded transition. The binary ones decoded by the second decoder means includes at 20 1east all previously unidentified binary ones, A waveform generator recreates the NRZ encoded data stream from a clocking signal and the output signals generated by the~first and second decoding means. ~ first waveform generator means responds to 25 a clocking signal and the output of the first decoding `
means to form an intermediate signal containing a por~ion of the decoded information for application to a second waveform generator means. The second waveform generator also responds to a second clocking 30 signal and the output of the second decoding means to recreate the original NRæ signal. All signals used by the waveform generator are synchronized to each other.
~.~

-4~ :
These and other features of the present invention will become apparent from the detailed description set forth hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
FIGU~E 1 is a simplified block diagram of the encoder circuitry;
FIGURE 2 is a more detailed block diagram of the encoder circuitry;
FIGURE 3 is a series of waveforms A through M
10 representative of the various signals at various points within the encoders shown in Figuresl and 2;
- FIGURE 4 is a simplified block diagram of the :
decoder circuit; :
: FIGURE 5 is a more detailed block diagram of the 15 decoder circuit;
FIGURE 6 shows various waveforms A through J :
taken at various points within the decoder circuit ~;
shown in Figures 4and 5; ~
FIGURE 7 shows various waveforms A through I - :
2a taken at ~arious~points of the decoder circuits shown in:Figures 4 and~5, which are:employed to explain the operation of the 2ero detector circuit shown therein; .:
FIGURE 8 shows various waveforms A through H ;~
which are employed to explain the operation of the clock 25 and phase generator shown in Figures 4 and 5; and FIGURE 9 shows various waveforms ~ through J
which are employed to explaln the operation of the waveform generator shown in Figures 4 aAd 5.

' '~
,~

.
. ~ .

.3Ei~7~

DESCRIPTION OF THE PREFERRED EMBODIMENT
The same number is used in the different Figures to refer to the same element.
As an introduction to the detailed explanation as set forth hereinafter, certain of the terms used in such explanation are explained now to avoid later repetition.
Referring to line C of ~'igure 3, there is shown a waveform encoded by a well known pulse code modulation technique identified as Non-Return to Zero (NRZ~ code.
The waveform contains, as shown on line A of Figure 3, ten data cells identified by numerals 1 through 10.
Hereinafter, it will be convenient to refer to individual data cells within many of the various waveforms. These references will be made ~sing the 1 through 10 identification se~uence shown on line A
of Figure 6~ The decoder introduces a one data cell delay in its decoding function. Therefore, a data cqll 11 is also shown here to handle references ~o this data cell time. Line B of Figure 6 identifies the contents of each data cell 1 through 10 as a binary one or binary zero.
Complementary nomenclature can be utilized and the circuitry described hereinafter can be easily altered by well known techniques to encode and decode the opposite levels than the levels used in the `
preferred embodiment. Almost no modification to the illustrated circuits are needed to interchange a zero level signal for the one level signal discussed 3Q hereinafter. By putting an inverter in the input of ~;
the encoder and taking the complement o~ the output identified hereinafter, the description is then applicable to the zero level~
A binary one is represented by a high signal level such as at 15, and a binary zero i~ represented by a , ~ ' , , ~ " .. , ~ . ' . . . .

~L~3~7~

low signal level such as at 16. The NRZ coding technique is characterized by maintaining the same signal level when successive and identical data levels are encoded. The waveform shown on line C has two 5 successive binary ones and three successive binary æeros. There is no change in level in the waveform when these successive and identical data levels are encoded.
In the encoding and decoding techniques described 10 hereinafter, certain circuits respond to the instantaneously changing direction of polarity of ~he applied waveform. This direction of changing polarity i5 identified using standard nomenclature including; a negative going edge as shown at 17 on line C and as 15 represented by the arrowhead pointing in the direction towards the bottom of the drawing; a positive going edge as shown at 18 on line C and as represented by the arrowhead pointing in the direction towards the top of the drawing. The negative going edge is also 20 referred to as the trailing edge, and the positive going edge is also referred to as the leading edge.
A change in signal level as from a high level ~`
at 15 to a low level at 16 is a signal level transition.
This transition is also identified as a negative going 25 transition. A change in signal level from a low level at 16 to a high level at 15 is also a signal level transition, and this direction of change is also identified as a positive going transition. -Transition time in the NRZ format occurs between 30 data cells such as at 17 and 18. An i~spection of line C shows that all signal level transitions such as 17 and 18 occur at transition time, but that not all transition times involve a signal level transition.
No such signal level transition occurs between data 35 cells 5 and 6, 7 and 8, and 8 and 9.
In the explanation just finiehed concerning the relative location of various transition times, as well as the explanation ~hroughout the entire application, :, . ..

''-'''-` ~13627~

it should be kept in mind that the waveforms as shown in the several Figures are synchronized one to the other by the clock signals shown on line D of Figure 3 and line D of Figure 7. All waveforms are shown 5 relative to a clock signal having a positive transitior at the start of data cell 1. The clock signal shown on line D of Figure 7 is twice the frequency of the signal shown on line D of Figure 3. In Figure 3, one cycle of the clock signal correspond~ to each data lO cell time~ while in Figure 7, two cycles of the clock signal corresponds to each data cell time.
Referring to line M of Figure 3, there is shown the Jordan encoded waveform ~or the NRZ code shown in line C. The Jordan encoded waveform contains no 15 ambiguities and has the same power spectral density distribution as the previously mentioned Miller code for random data pattern. '' Because of the method of operation of the encoding circuitry shown in Figure 1 and 2, the ~ordan code ,~
20 shown in line M has several unique characteristics. '~
First, both positive and negative signal level `~
transitions may occur at mid data cell time as shown at l9 and 2Q, respectively. Mid data cell time is broadly defined as any time other than start of data 25 cell ~ime or end of data cell time. In the preferred embodiment, mid data cell time occurs half way between start of data cell time and end of data cell time.
Secondly, both positive and negative signal level transitions may occur at the end of data cell time 30as shown at 21 and 22, respectively. Thirdly, the spacing between successive transitions can equal one data cell time as indicated by the length of the line 23, one and one half data cell time as indicated by the length of the line 24, and two da~a cell lengths as 35indicated by the,length of the line 25. , The start and end of each data cell in the NRZ
format occurs at a point identified as the transition time bet~een successively positioned data cells, -, . : , ~ . ~ . :

~:~36~

Obviously, the end transition tLme of one data cell corresponds to the start transition time of the next successively positioned data cell.
For con~enience, each data cell has been divided into quarters as best identified with reference to data cell 1 shown on line A o~ Figure 3. These quarters ; are identified as the first, second and third quarters.
Throughout the remaining explanation of the signal processing achieved by the circuitry of the present invention, it is important ~o accurately describe the condition of a signal at various points within each data cell. To avoid confusion, the following brief description i5 used throughout all the waveforms. Two characteristics of the signal are lS given: the first is the time of the signal, and the second is the direction. The direction is ei~her negative going as at I7 on line C of Figure 3, or po~itive going as at 18 on line C of Figure 3. The time of the signal can be at mid-data cell time as at 19 and 20, at start or end of data cell time as at 21 and 22, respecti~ely, at 1/4 data cell time as at 26 as shown on line F of Figure 3, and at 3/4 data c~ll time as at 27 as shown on line F of Figure 3.
The spacing between transitions and the positioning of the signal level transition all cooperate to uniquely encode the NRZ data. One unique distinguishing feature of the Jordan code shown on line M concerns the spacing o~ successive transitions at two data cell lengths as shown by the line 25. Whenever 3Q this spacing is present in the Jordan code, the decoding circuitry identifies both transitions as occurring at transition time. This feature is employed to keep the decoding circuitry synchronized to the incoming data stream.
Referring to Figure 1, there is shown a simplified block diagram of the encoder portion of the present invention. The waveforms shown in Figure 3 - are used to explain the signal processing capability of th~ encoder portion of the present invention shown .,.. , , :. :,. , -:

in both Figures 1 and 2. The NRZ signal shown in line C of Figure 3 is applied to a NAND gate 30 over an input line 31. The NAND-gate 30 has a second input signal on a line 32. The input signal on the line 32 S is the clock signal as shown on line D of Figure 3, generated by the clock circuit 32a. The clock circuit 32a is of standard design and need not be further described.
The NRZ signal shown on line C of Figure 3 is characterized by the use of the first higher level signal shown at I5 as a binary one and the lower voltage level shown at 16 as a ~inary zero. The clock signal shown on line D of Figure 3 is characterized by having its first portion shown at 33 as the higher of the two voltage levels and th~ second portion at 34 at the lower voltage level. The length of a line 35 represents the time duration of a full data cell. A full cycle of the clock input signal occurs each data cell time.
The transition between the two voltage excursions 33 and 34 of the clock signal as represented by the line 36 represents the transition at mid-data cell time.
Referring again to Figure 1, a single level detector 37 is responsive to the output of the ~AND
circuit 30 as applied thereto over a line 38. A
positive transition detector 39 is responsive to the clock signal as applied thereto over a line 40. The output signal from the single level detector 37 is applied to an AND function circuit 41 over a line 42.
A second input`signal to the AND function circuit 41 is applied ~rom the output of the positive transition detector 39 over a line 44. The output signal from the AND function circuit 41 is applied to a divider circuit 46 over a line 48. The output signal from the divider circuit 46 is applied to an output terminal 35 50 from which it is available to be recorded or ~
transmitted by other circuitry as desired. ;
The single level detector 37 is a means for providing an output signal whenever the input NRZ `~
waveform of pulses is in one of its two predetermined 3~2~

--10-- :
levels 15 or 16 as shown on line C of Figure 3. In the embodiment described hereinafter, the detector 37 identifies the binary zero levels present in the input NRZ waveform~ ~:
For the preferred embodiment, the single level detector generates an output pulse each time the input data level represents a binary one. The output pulse o the single level detector is characterized by beginning at mid-data cell time, and is a negative 10 going pulse. The duration o~ the pulse generated by the single level detector 37 is determined by the input characteristics of the divider cixcuit 46. More speciically, the duration o~ the output pulse from the single level detector 37 need only be long enough 15 to drive the divider circuit 46.. The series of output pulses from the si~gle level detec~or 37 is shown more specifically on line G ~f Figure 3.
The positi~e transition detector 39 generates an output pulse corresponding to each positive going 20 excursion 50 of the input clock signal train as shown on line D of Figure 3. ~he output pulses from the single level detector 37 represent a first level encoding indicia identifying each binary one in the NRZ input pulse train~ Th~ output fr~m the positive 25 transi~ion detector 39 represents first le~el encoding indicia identifying each positi~e going excursion of ~`
the input clock signal.
The AND function circuit 41 combines the output signal trains pre3e~t on lines 42 and 44 into a series 30 of pulses which represent all the informatio~ necessary to recsnstruct the encoded ~RZ signal. While the output .
signal from the A~D func~ion 41 could be recordad or transmitted as it appears on line J of Figure 3, the : -waveform shown on line J contains some redundant ;~
35 i~formation and its frequency ean be reduced by dividi~g the output from the ~ND function circuit 41 by four.
Referring ~o Figure 2, ther~ is shown a more detailed logic diagram of the e~coder circuit portion o~ ~he present i~ven~ion. ~he NRZ signal to be encoded .. . ... , .. , .. . . - : ~ - ~ .

-`` 3L~L3~27~3 is applied to the NAND-gate 30 over the line 31. The clock signal is applied to the NAND-gate 30 over the line 32. The output from the NAND-gate 30 is applied to a plurality of series connected inverters 62, 64 and 66 which form a part of the single level detector 37O~
The output from the inverter 66 is applied to a NAND-gate 68, over a line 70. The output from the NAND-gate 30 is also applied as a second input to the NAND-gate 68 over the line 72.
The two inputs to th~ N~ND-gate 68 can be seen 1 on lines E and F, respectively, of Figure 3. The ~-output of the NAND~gate 30 is a negative going pulse having the duration of one-half of a data cell and beginning at the positive transition time 50 of the cIock time and ending at the negative transition time36 of the clock signal. The input signal to the NAND-gate 68 on line 70 is shown on line F of Figure 3. -~
ThiS is the inverted and delayed representation of the signal shown on line E. The term of the delay is represented by the duration between the dotted lines 74 and 76 shown between lines E, F and G of Figure 3.
This period is genera~ed by the delay characteristics `
of the inverters 62, 64 and 66. Since Schottky type circuits are employed in the inverters 62, 64 and 66, three stages axe necessary as each stage has an inherent delay of approximately five nano-seconds. If TTL-type circuits are used, only a one such in~erter stage would be necessary as TTL logic has a 15-20 nano-second internal delay. The only function of the inverter stages 62, 64 and 66 is to create an inverted representation of the output of the NAND-gate 30 having a delay sufficiently long to drive the circuits used in the divider stage 46.
The normal functioning of a NAND gate is to provide a negative going pulse when the two input signals to the N~ND-gate are at the positive signal level.
Accordingly, this would occur only during the period of delay generated by the invexters 62, 64 and 66 as _ better seen on line G of Figure 3. The negative going ;
~:

.. ,... .;. .. . .. . .;. :: .

3~

pulse on line G of Figure 3 is characterized as having a duration equal to the deIay generated by the inverter stages 62, 64 and 66 and having a leading edge which corresponds to the negative going transition 36 of the clock signal as shown on line D of Figure 3~ As previously mentioned, the important chaxacteristics ~;
of the present pulse code modulation technique i9 to generate a pulse beginning at the mid-cell time of each data cell o the NRZ code positioned at the binary one level. The pulse train shown on line G is such a sequence of pulses.
The positive transition detector 39 comprises a plurality of inverter stages 80, 82 and 84 which are connected in series and provide one input to a NAND-gate 86 over an input line 88. A second input signalto the NAND-gate 86 is provided over a line 90 which represents the clock signal as shown on line D of Figure 3. The signal applied as an input to the first inverter stage 80 is also the clock signal as represented on line 40. The clock signal applied to the series connected inverter stages 80, 82 and 84 is delayed and inverted and is shown on line H o Figure 3. The output signal from ~he NAND-gate 86 is a negative going pulse whenever the two inpu~ si~nals are at the positive binary level. This series of pulses is shown on line I of Figure 3. Each pulse on line I corresponds to the start of each clock cycle as shown on line D of Figure 3.
The AND function circuit 41 comprises a NAND-gate 96 and an inverter 98. The input to the NANDcircuit 96 is the output of the NAND-gate 68 on the line 42. A second input signal to the NAND-gate 96 is the output of the NAND-gate 86 on the line 44. The functi.on o the NAND circuit 96 is to provide a negative output signal level when each of the input signals iis at a binary one level at the same time. When the input signal is a binary zero condition, the output signal i5 also at the binary one level. Line J of Figure 3 represents the output signal from the NAND-gate 96.

,, ~ . .. .. ~ . . . . . . .

36~

The output signal from NAND-gate 96 is applied to the inverter 98 and the output signal of the invert~r 98 is shown on line K of Figure 3.
The divider circuit 46 comprises a pair of S serially connected JR flip-flops lO0 and 102~ The JK ~
flip-flop 100 is triggered to each o~ its stable states ~:
by an input negative going pulse of sufficient duration to trigger the J~ flip-flop. As previously mentioned, the function o the series connected invexters 80 through 84and 62 through 66 is to crea~e a pulse of suficient duration to trigger the JK flip-1Op 100.
The operation of each flip-flop used herein employs the following nomenclatureO Each flip-flop has two stable states which are reflected by its available 15 output signals. These two output signals are a high output signal such as at 104 on line L of Figure 3 and a low output signal such as at 106 on Iine L. Both high output signal and the low output signal is available at the non-inverted output terminal Q and 20 the inver~ed output terminal Q. The ~ and Q terminals are further~g.iven the same numexal as used to identify their respective flip-flop.
The output slgnal from the JK flip-flop lO0 is o~ a line108 and is shown as line L of Figure 3.
25 Output signal from the Q 100 terminal is applied to a :
second JK flip-flop lO~ by ~he line 108. The output from the second JK flip-flop 102 is shown on line M
of Figure 3. The oukput signal from the Q 102 terminal is applied to the output terminal 50 for application 30 to recording~and/or transmission apparatus.
Referring to Figure 4t there is shown a simplified block diagram of the decoder circuit employed in the present invention. A zero detector circuit 200 has . a f.irst input signal applied thereto ~rom a phase 35 locked clock generator 201 over a line 202. The clock 201 is of s~brd design and need not be described fuxther. The output of the clock 201 is the input timung signal haying a frequency of twice the clock signal shown on line D of Figure 3. .-:
The twice clock signal waveform applied to line 202 is . :~

L3~

shown on line D of Figure 7O
The input clock frequency is synchronized to the received input data waveform by conventional phase locked loop bit synchronizing circuits.
A positive-negative transition detector is shown at 204 having its input signal from a data terminal 205 over a line 206. The function of the detector cixcuit 204 is to provide an output pulse for each signal level transition which occurs in the received input data waveform. The output from the detector 204 is applied to many other portions of ~he decoder circuitry, one of which is to an inverter stage 208. The function of the inverter 208 is to provide an inverted output signal to reset the zero detector circuit 200. The 15 ou~put from the in~erter 208 is applied to the zero detector over the line 210.
The function of the zero detector circuit 200 is to identify two consecutive data cell signals in the input data stream that are positioned at the 20 binary zero level. Such a sequence of binary zeros is shown~in line D of Figure 6 as represented by the length of the line 25. The internal operation of the zero de~ec~or 200 will be descri~ed in more detail with reference to Figure S hereinafter. ;~
The output from the detector 204 is applied to an AND-gate 214 over a line 216. The output from the detector 204 is applied to a second AND-ga~e 218 over a line 220. The output from the detector 204 is applied to a one-shot circuit 222 over a line 224.
The output of the zero detector 200 is applied `
to a clock and phase generator 226 over a line 228. The clock and phase generator 226 receives as its second input signal the input timing signal at twice the clock frequency over a line 230. The clock and phase 35 generator 226 has a plurality of output signals. A
first output signal is applied to the AND-gate 214 over a line 232. A second output signal is applied to a first JK flip-flop 234 over a lin~ 236. A third output signal from the clock and phase generator 226 is applied .~ , ~3~

to a second JK flip-flop 238 over a line 240. The synchronous clock output signal is applied to an output terminal 242 over a line 244.
In review, the characteristics of the format of the code generated by the encoder circuitry of the~
present invention includes a signal level transition appearing in the new encoded format, at mid-data cell timej for selected binary ones in the initial NRZ
code. A second characteristic of the new ~ormat includes a pair o~ signal level transitions to identify other binary ones in the initial NRZ code. The ~`
distance between such a pair of pulses is one data celI time.
Since these are the characteristics of the recorded signal, circuitry is required in the decoder to detect these characteristics. The function of the AND-gate 214 is to select all transitions which occur in the middle of a data cell time. The AND-gate 214 achieves this result by a combination of its input signals including the ANDING of pulses received from the detector 204 with the timing pulse received on a line 232.
The input signal to the AND-gate 214 over the line 216 is a series of pulses which correspond to 25 both the positive going 19 and negative going 22 signal ; level transitions in the recorded waveform. As shown on line F of Figure 6, the pulses may occur at mid-data cell time, as chown by numeral 246, or at start/end transition times 248 and 250, respectively, 30 as shown on line F of Figure 6. It is the function of the gate 214 in combination with the input signals on lines 216 and 232 to identify those signal level transitions which occur at mid-data cell time.
The second characteristic of the recorded signal 35 is that when the dis~ance between transitions equals one data cell time then one or both transitions ;~
represent a binary one. Accordingly, it is the ~`
function of the onie-shot circuit 222 in combination wlth the AND-ga e 218 to provide such a function. The 3~2~

output of the one-shot is applied as a second input to the AND-gate 218 over a line 252. The output of the detector 204 is applied directly as a first input to the AND-gate 218, and is applied by way of the one-shot 222 as a second input to the AND-gate 218.
Functionally speaking, when a pair of pulses, separated by one data cell time, is generated by the detector 204, the first pulse becomes an enabling pulse for the second. The one-shot 222 ~tretches the first pulse to provide an enabling pulse to the AND-gate 218 for the second pulse.
Figure 5 shows a more detailed schematic diagram of the decoder circuit employed in the present invention.
Figure 6 shows a portion of the waveforms which relate 15 to the detector 204 and the AND-gate 214 and 218.
Line A of Figure 6 identifies the data cell times used herein. Line B identifies the binary content of the NRZ waveform shown on line C.
Line C of Figure 6 shows the original ~ pulse 20 code format of the information to be recorded. Line D shows the Jordan code format encoded by the circuits shown in Figuxes 1 and 2. The Jordan code format present at the input data terminal 205 of Figure 5 is applied to the detector 204 by the line 206. The 25 detector 204 comprises a plurality of inverter stages 300, 302, 30~ and 306 serially connected. It is the function of the inverter stages to provide a sufficient delay to the Jordan coded signal for detecting both the positive and negative going signal level transitions 30 presen-t in the Jordan code. The Jordan code shown on line D o~ Figure 6 is applied at the input to the inverter 300 on a line 308. The Jordan code is also applied to an exclusive OR-gate 310 over a line 312.
The output from the inverter 306 is present on a line 35 311 and i5 shown on line E of Figure 6.
The exclusive OR-gate ~10 generates an output pulse stream as shown on line F of Figure 6. This mode of operation of the exclusive OR function is standard.
An output positive pulse is generated whenever its two - ~13~;~7~

-17~
input signals are at opposite signal levels and generates an output signal at the negative level whenever its two input signals are at the same signal level.
The output pulse train from the exclusive OR-gate 310 is applied to the AND-gate 214 over the line 216. The AND-gate 214 receives its second input signal over line 232, the timing signal from the cloc~ and phase generator 226 applied over the line 232.
Referring more specifically to the clock and phase generator 226, the generator 226 comprises a ~irst flip flop 314 and a second flip-flop 316. The input timing signal over the line 230 is applied directly to the input terminaI C of the flip-flop 314 over a line 318. The flip-~lop 31~ is of the type which is identified as a~trailing edge flip-flop. It changes its stable state whenever a downward going edge of a pulse is applied to the C input of the flip-flop. The input timing pulses are applied to the second flip-flop 316 by way of an inverter 320. The inverter 320 reverses the polarity o the incoming pulse train and ~;
causes the flip-flop 316 to seemingly respond to the leading edge of the timing pulse train, because of the - , reversal of polarity by the inverter 320. The detailed ~5 operation of the clock and phase generator 226 will be described in greater detail with reference to the timing waveforms shown in Figure 8.
~ owever, for the continued explanation of the operation of the AMD-gate 214 the only input from the 3~ clock and phase generator 226 applied thereto is the ~ i 314 waveform shown on line G of Figure 6. The waveform shown on line G of Figure 6 is identical to that shown on line D of Figure 8. The output signal from the AND-gate 214 is shown on line H of Figure 6, 35 wherein a positive going pulse is generated whenever both signals applied as an input to the AND-gate 214 ~-are at the binary one leveI.
The waveform shown on line G of Figure 6 provides an enabling signal during the second and third quarters r ~
7~ .

of a data cell time to the AND-gate 214. In this manner, i~ is able to gate through the AND-gate 214 those pulses from the detector 204 which occur in the middle of a data bit cell time. The output from the AND-gate 214 is applied as a reset pulse to the flip-flop circuit 234.
The output pulse stream from the exclusive OR-gate 310 is applied to a one-shot 222 and as a first input to an AND-gate 218. The function of the one-shot 222 is to act as a pulse stretcher and generate an output signal lasting longer than one data cell time and less than one and a half a data cell times. Its waveform is shown on line I of Figure 6. The output of the AND-gate 218 is shown on line J of Figure 6 15 wherein an output pulse is generated whenever the output signal from the one-shot 222 and the output signal from the detector 204 are both at the high output level.
An inspection of lines F and I of Figure 6, shows - 20 the input to the one-shot 222, and the output from the one-chot 222. The output of the one-shot only changes to its second or enabling level after its input signal is removed. This delayed reaction prevents the one-shot 222 from gating through the AND-gate 218 25 each pulse from the detector 204. The output rom the one-shot 222 remains at the enabling level longer than one data cell time. This allows the one shot to gate through the AND-gate 218 those pulses in waveform F of Figure 6, which follow a previous pulse by one data cell 30 time.
Each binary one in the original NRZ pulse train is encoded in one of two ways: a~ a signal level transition is generated in the mid-data bit cell time;
or b~ a pair of signal level transitions separated by 35 one data celi time. Accordingly, in the decode function the AND-gate 214 identifies those signal level transitions which occur in the middle of a data cell time and the AND-gate 218 identifies those pairs of signal level transi~ions separated by one data cell , . . , , ~;.

3~;~27~
.

time in the encoded pulse train. ~ow that all the control information has been abstracted from the mcoLng Jordan code, the remaining circuitry is employed or translating the pulses into the NRZ coded ~ormat.
Referring to Figure 7, there is shown a series of waveforms genera~ed ~y the zero detector circuit 200 whereby a synchronization pulse is generated whenever a series of ~hree binary ~eros are present in the original NRZ code. While an identical synchroni2ation pulse can be generated when two binary ~exos occur in the NRZ waveform under certain circumstances this last mentioned condition will not be further explained as it is a condition that will generate a synchronization pulse depending upon th~
condition of a plurality of bit cells which precede the two binary pulses. As this is a variable, the Jordan code depends upon-three binary zeros in sequence to generate its synchronization pulse. When three - binary zeros occur in sequence it is known that the synchronization pulse will be generated having a positive going transition existing exactly at the --start of a data cell time. This positi~e going transition;at data cell time is used to set the flip-flops 314 and 316 in the cIock and phase generator 226. In the event that these flip-flops should drift out of synchronism with relation to the incoming NRZ
code, the synchronization pulse will immediately resynchronize the timing signals ~enerated by the generator~226 wit~ the~incoming NR~ code.
The original NRZ data stream is shown on line B
of Figure 7, while`the Jordan code equivalent thereof is shown on line C. The binary equivalent to the N~Z
code is shown on line A. The input timing signal present on line 202, as shown in Figure 5, is shown on line D of Figure 7. Line ~ of Fisure 7 shows the output of the inv~n~ s~ge 208. Line ~ of Fi ~ e 7 is the inverted signal of that signal shown on Line F of Figure 6 The zero detector 200 comprises a plurality of flip-flop stages 320, 322 and 324. Each of these flip-.. 36~27~

flops is operating as a divide by two stage which reSPonds to the negative going transition of the input signal applied to its clock terminal C identified in each of the flip-flops or to its reset terminal R in each of the flip-flops. The output from the Q terminal of flip-flop 320 is shown on line F of Figure 7. A
negative going transition applied to the C input terminal causes the respective flip-flop to change stable states.
A negative going transition applied to the R input terminal resets the flip-flop to that stable state wherein a low output signal level is availahle at that flip-flop's Q output termlnal.
The output waveform of the fixst divide by two flip-flop 320 is traditionally taken from its non-inverted outpu~ terminal identified as the Q ter~linal.The non-inverting Q terminal of flip-flop 320 is identified as Q 320, the Q terminal of flip-~lop 322 is identified as Q 322 and the Q terminal of flip-flop 324 is identl~ied as Q 324. The inverting terminal of flip-flop 324 is identified as ~ 324.
It was previously mentioned that the flip-flop 320 divides its input signal applied to terminal C by two by changing state each time a negative giving transition is applied to the C terminal. Additionally, the flip-flop 320 is placed in one stable state each time a reset pulse is applied to the R terminal of flip-flop 320. The reset pulse on line E of Figure 7 places each of the flip-flops 320, 322 and 324 into that stahle state wherein a low output signal is generated on the Q terminal of the flip-flop. A
detailed explanation follows explaining the waveform shown on line F of Figure 7. The negative going txansition of the waveforms shown on lines D and E
cooperate to form the waveform shown on line F.
The negative going transition of the pulse occurring during the mid-data cell time from the inverter stage 208 sets the output signal of Q 320 to its low output level. The negative going transition of the signal occurring at three-quarters data cell one time in . .

- ~:: . , ::

.

3~;~7~

-21~
the signal shown in line D sets the output signal occurring at Q 320 to its high output level. The negative going transition occurring at one-quarter data cell two time on line D resets the output o~ 320 to the low output level. The negative going transition occurring at three-quarters data cell two time on line D resets the output of Q 320 to the high output level.' The negative going transition of the reset ~ -pulse from invexter stage 208 occurring at the start 10 of data cell three time on line E sets the output of Q 320 to the low output level. The negative going transition at one-quarter data cell three time resets the output of Q 320 to the high output level. The negative going signal occurring at three-~uarter data 15 cell three tIme resets the output of Q 320 to the low ~`
output le~el. The negative going signal occurring at start of data cell four time on line E does not cause a change in the output from Q 320 because Q -~ ;
320 is already in the low output condition and a 20 negative go~ing signal on the reset line always places the flip-flop in that state such that a low output signal is available at the Q 320 terminal. The remaining wavefo~m on line F of Figure 7 is generated in a similar manner. Restating, the negative going 25 signal on line D changes the stable state of the flip-flop 320 while the negativa going pulse from inverter stage 208 sets the flip-flop 320 so that a ' low output signal level is present on its Q output terminal'. ,' Referring to line G of Figure 7, the output waveform from the Q 322 terminal is shown. The output signal',at the Q 322 terminal is generated in an identical fashion to that previously discussed with relation to Q 320.
The flip-flop 322 receives one input signal on its C terminaI. This signal is the Q 320 output signal as shown on line F of Figure 6. The second input signal applied to flip-flop 322 is the reset pulses ', 'applied to its R terminal. The fllp-flop 322 responds .

36;~

to these input signals as follows: a negative transition from i~verter 208, as shown on line E,resets the flip-flop 322 to that stable state whereby ~ low output signal is available at its output terminal Q 322; and a n~gative transition from the Q 320 terminal causes the flip-flop to change its stable state.
Acoordingly, when describing the switching of the flip-flop 322, the waveforms shown on lines E and ~ provide the input signa~s thereto.
10 The negati~e trans~tion from the inverter 208 occurring at mid-data cell one time resets the Q 322 to its low output l~vel. The negative going transition at one-~u~rter da~a cell two tLme, as sho~n on line F
of Figure ~, switches Q 322 to it~ high output level.
Both the negative tr~sition from the inverter 208 and the negative transltion from Q 320 at start o~
data cell three time, switches Q 322 to its low output level. The negative transition from Q 320 at three-guarter data cell three tIme from Q 320 cha~ges Q 3Z2 ~:
~0 to ~ s higher output level. The negative transition of the inverter 208 at start of data cell four time resets Q 322 to its low output levelO In this manner, the remaining portion of the waveform o~ line G is formed.
The negative going transition of the reset pulses on line E of Figure 7, ~et the flip-flop 324 to that stable state whexe the Q 324 te~minal ha~ its lower output level. Each negative going transition in the wavefoxm ho~n on line G has the potential of changing ~he then current stable state of flip-~lop 324. An inspection of lines E and G shows that for every negative going transition on line G which would like to change the current stable state of flip-flop 324 there is a negative going transition fxom inverter 208 which 35 rese~s flip-flop 324 to that stable state where the Q 324 terminal is at its 1QW outp~t signal. The only exception is the negative transition from Q 322 at thr~e-quart~r data cell ~ine time which sets Q 324 to its higher ou put level. This change is followed by a . .

", , :, . . . . .: ~: . .

.3~2~79 negative transition from inverter 208 at start'of data cell ten time which resets Q 324 to its low output level. The pulse which appears on line H has a negative going transition at start of data cell ten time. This transition coincides with the end of the three binary zeros shown on lines A and B.
It is the function of the zero detector 200 to generate a synohronization pulse from Q 324 whenever three binary zeros are present in the original NRZ
data stream. The complement of the wave~orm shown on line H of Figure 7 is shown on line I of Figure 7. The complement is utilized in the present invention because the fllp-flop 314 is a trailing edge flip-flop and responds to the positive going edge of the pulse shown 15 on line I. This positive going edge occurs exactly -at the transition between two adjacent data cells and this edge causes a resynchronization of the internal clock and phase generator with the received NRZ encoded data if needed.
Referring to Figure 8 there is shown a group of waveforms which relate to the operation of the clock and phase generator 226. The clock and phase generator comprises a pair of ~lip-fiops which respond to the trailing edge or negative going edge of the applied waveform at its C input terminal. The input clock frequency is applied directly to the flip-flop 314 and is applied to the flip-flop 316 by way of~an inverter 320. Accordingly, the output signal at Q 316 from the flip flop 316 is ninety degrees out of phase with the output signal Q 314 ~rom the flip-10p 314. As is characteristic in all flip-flops, one of the output signals from the Q 314 terminal of flip-flop 314 is one hundred eighty degrees out of phase with the signal from the Q 314 output ~erminal from the flip-flop 314.
Additionally, the output signal from the Q 316 output terminal of flip-flop 316 is one hundred eighty degrees out of phase with the output signal from the 316 terminal .
Line A of Figure 8 ~hows the original NRZ code~

~ 3~
-2~-Line B shows the recorded Jordan coded format~ Line C shows`the input clock frequency which is twice the frequency of the applied data. Referring collectively to lines D and E of Figure 8, the output state of the ~lip-flop 314 changes with each negati~e going edge of~
the input data clock. Referring to lines F and G, the stable state of the 316 flip-flop changes simultaneously with the positive going edge of the - applied data clock. Since the data clock is applied to the 316 flip-flop by way of -~he inverter 320~in reality the flip-flop 316 responds to a negative going edge of the applied data clock but inverted ninety degrees .
Line H of Figure 8 is identical with line I of Figure 7. This shows ~he synchronizing reset pulse occurring at the start of data cell ten time. In the event that the output waveforms from the flip-flops 314 and 316 fall out of synchronization with the incoming NRZ code, this resPt pulse would resynchroni~e the 20 generation of the output waveforms on line D, E, F and G to be in synchronization with the NRZ incoming code.
The waveform shown on line F, Figure 8 is the ~ 316 output signal and is applied to the clock sync terminal 242 by way of a line 244.
Referring to Figure 9, there is shown a plurality of waveforms associated with the generation of the NRZ code from the Jordan encoded format. ~ine A shows the binary equivaIent of the original NRZ code. Line B shows the original ~RZ encoded format. ~ine C shows 30 the Jordan format for recording the digital- data. Line D is a repeat of the Q 314 waveform as previously shown on line E of Figure 8. Line E shows the waveform generated by the AND-gate 214 which is a repeat of line H of Figure 6. The waveform shown on line F is 35 the Q 234 output of the flip-flop 234 which is generated in response to the two input pulse trains to the JK
flip-flop as shown on lines D and E of this Figure 9.
The flip-flop 234 operates according to the following logic signals: a negative going transition ,:

.3~;~7~

applied to its C input terminal will change the operating =~
state of the flip~flop only from a low signal level to a high signal level as senséd at its Q 234 output terminal. A positive signal level transition applied to the C input of 234 does not change the stable state of flip-flop 234. When a high output level is available at Q 234, a negative input transition at the C input terminal does not affect the operating state of the flip-flop 234. The positive going edge of the reset pulse applied to the R terminal of flip-flop 234, resets the flip-flop so that a low output signal is available at the Q 234 terminal.
Line G of Figure 9 shows the Q 316 output from the flip-flop 316 which is a repeat of the waveform shown on line G of Figure 8. Line H shows the waveform output from the AND~gate 218 which is also a repeat of the waveform shown on line J of Figure 6.
Line I shows the Q 238 output signal from the flip-flop 238 which is generated as a re~ult of the second decode function performed by the flip flop 238.
The flip-flop 238 decodes the applied input pulse train shown as line F G~ Figure 9 as gated by the clock signal as shown on line G of Figure 9 and reset by the pulses shown on line H of Figure 9. Accordingly, the .:
flip-flop 238 is a second decoding means for converting the intermediate signal from Q 234 to exhibit a binary one signal whenever khe original NRZ codad format contained a binary one signal as indicated by a pair of pulses separated by one bit cell time in the first encoding indicia pulse train.
Referring in more detail to the waveform shown in :~
Figure 9, the Q 314 pulse train, shown on line D of Figure 9, is applied to the C input terminal of the first decoding means 234. The output from the AND-gate 214 is applied to the reset terminal ~R~ of the first decoding flip~flop means 234. In response to the leading edge of the output pulse from the AND-gate 214, the flip-flop 234 i5 set to its first stable state-wherein it generates a low output signal at its Q 234
3~;Z7~

output terminal. At one-quarter data cell two tLme, the negative transition of the Q 314 signal applied to the C input terminal of the flip-flop 234 changes the ~table state of the flip-flop 234 to generate a 5 high output level. The flip-flop 234 is now in ~hat stable st~te whereby additional negative transitions from Q 314which occur at one-quar.ter data cell three :
time does not change the stable state o~ the 1ip-flop 234. ~he flip-flop 234 does not change states in 10 response to the negative transition of the waveform from Q 314 shown at one-guarter data cell tLme o~
data cells 4 and 5 for the same reason.
Th~ positive transition of the pulse Qhown at mid-da~a cell five time, shown in line E of Figure 9, 15 drives ~he flip-flop 234 to i~s other st ble state whereby it generates a low autpuf signal at Q.234. The negative transition occurring at one-quartex da~a cell six time resets the flip-flop to its other stable state so as to generate i~s high output signal as 20 shown on line F. The positive transition reset pulse occurring at one-half data cell six time resets the flip-flop 234 to its other stable state wherei~ it generates its low output signal as shown on line F.
The next negative transition of the Q 314 25 waveform occurs at one-~uarter data cell seven time.
This resets the flip flop 234 to its other stable ~tate for generating its high level output 3ignal. Ea~h of th succeeding negative going excursions of the Q 314 pulse train do not change the stable state of the first 30 decoding means 234O
The waveform as shown on line F of Figur~ 9 exhibits a first level decoding result. The decoding means 234 in effect has altered the applied input signals thereto to represent a first stable state for 35 each pulse which appears in the pulse;tràin ~x~m on Iine E. The pulses shown on line E correspond with pulses which were originally encoded to represent the mid-data cell time of a binary one in the original NRZ
code. ~cordingly, the waveform shown on line F is a ~,~

~l~L36;~79 partially decoded signal and now contains information representative of the binary ones pre~iou~ly ~ncoded by use of a pulse positioned at mid-data cell time.
The second decoding means 238 responds to a 5 plurality of input wave~orms. The first input waveform is the Q 234 wavefoxm.shown in line F of Figure 9.
This waveform as previously explained represents a partially decoded waveform. The second input signal applied to the second decoding means 238 is the Q 316 10 waveform shown on line G of Figure 9. The third input signal applied to the second decoding ~eans ~38 is the output of he AN~-gate 218, as shown on line ~ of Figure 9.
The operation of the second decoding means 238 15 is slightly diferent from the operation of the first decoding means 234. In effect, the waveform on line F of Fig~re 9 is shifted into the second decoding means 238 under the control of the pulses present on lines G and ~ of Figure 9. More specifically, the information 20 on line ~ is shif~ed into the ~;ecoIld decoding means 238 under the direction of ~he nega~ive going edge of the signals shown on line ~. The rese~ pul~es, as -~
~hown on line H of ~igure 9, reset the second decoding means 238 to that stable s~ate wherein it generates 25 i~s low ou~put gnal at the Q 238 output terminal. The negative transition, at start o~ data cell t~o tLme on line G, shifts the low signal }evel corresponding at the same period of time in the waveform of line F into . the ~econd decoding means 238 changing it to that stable 30 state wherein its low ~ignal level ~s available at the Q 23B output terminal, as shown on line I. The next negative transition in the waveform shown on line G
occur~ at start of data cell three and shifts the higher level present on line F into the second decoding means.
35 The higher output signal level is now present at the Q 233 terminal as shown on line I. The positive transition of the reset pulse from ~ND-gate 218, shown at start of data cell four time, resets ~he second decoding means to its other s~able state wherein it ` 1~L3~279 - generates its low output signal at the Q 238 terminal.
The negative going transitisn of Q 316 occurring at start of data cell five time shifts the high signal level present vn line F into the flip-flop 238 to change its stable sta~e to generate its high output signal level at the Q 238 output terminal.
The negative going transition of the Q 316 waveform present at s~t of~ata cell six time shits the 10~7 signal level at Q 234 into the second decoding means 238, whereby its Q 238 terminal assum~s its low signal level. The positive tran.~ition of the reset pulse at mid-data cell six tLme does nok ef~e~t the operation of the second decoding means 238 because these reset pulses only operate to reset the second decoding means to that stable s ate whereby it generates its low output signal a~ its Q 238 output terminal. Since the low output ~ignal i5 already present at the Q 238 terminal, the reset pulse does ~ot change 4,he -~tate of.flip-flop 238~
When a pulse occurs simultaneously 4~ lines E
and ~ of Figure 9, one pulse is redundant to he other. However, no ambiguity exists in the decoding of the Jordan code. Accordingly, there is no need to elLminate thi$ redunda~t pulse by additional 25 circuitry.
~ he negative going ~ra~sition of the pulse on line G, occurring at the ~tart of data cell seven ~ime, shifts the lower voltage level presant on line F
into the ~econd decoding m~ 238 so as to generate 3~ the low output signal at the Q 238 terminal. The negative going transition of the pulse shown on line ~ occurring at start of data cell ~ine time and start of data cell ten ~ime do not change the signal level at Q 238. Both signal levels remain at the high level 35 as shown on lines F and I. The positive going transition of the reset pulse occurring at start of datA cell eleven time ~esets the second decoding means 238 to that stable state whereby it generat~s its lower output signal ~evel on i~s Q 238 terminal.

~3~79 The Q terminal of the second decoding means 238 is the complement of the signal shown on the Q 238 ~ -terminal. By inspection, the Q 23~ waveform i5 identical to the original NRZ waveform shown on line B
but delayed one data cell time. Accordingly, the decoder circuit shown in Figures 4 and 5 changes the incoming Jordan encoded wava~orm to return to the original NRZ signal. The original NP~Z signal is available at the output terminal 370 as shown in Figu~e 5.
While a presently preferred embodiment has been described in detail, it should be appreciated that the ~`
invention is not to be limited except by the claims.

Claims (12)

The embodiments of the invention in which an exclusive property or privilege is claimed are as follows:
1. A data handling system of the type employed to encode digital data into a form for optimum packing density on a recording medium, the digital data being in the form of successive data cell intervals of uniform duration, and each data cell having one of two predetermined signal levels, and any transition between signal levels in the digital data occurring only at the start and end of each data cell; and of the type employed to decode the encoded digital data and to reconstruct the original form of the digital data using the signals generated during the decoding process; the data handling system for encoding the digital data comprising:
means for generating a clock signal having at least one full cycle corresponding to each data cell interval, and said clock signal having its positive going signal level transition occurring in synchronism with the transition time between adjacent data cells;
first encoding means responsive to the digital data for providing first encoding indicia representative of one of the two possible signal levels of the data cells;
second encoding means responsive to the clock signal for providing second encoding indicia identifying each positive going signal level transition of said clock signal;
means for combining said first encoding indicia and said second encoding indicia into an encoded waveform having signal level transitions of which some occur at transition times between successive data cells and others occur between transition times of successive data cells, successively positioned transitions being spaced between one and two data cells apart r and means for eliminating redundancy from the encoded waveform.
2. A data handling system of the type as recited in Claim 1 wherein:
said combining means comprises AND function means for generating a negative going pulse at mid data cell time for each binary one present in said original data waveform, and for generating a negative going pulse at start of data cell time for each positive going transition in said clock signal; and said means for eliminating redundancy includes means responsive to the output signal from said AND
function means for dividing by four the output signal from said AND function means.
3. A data handling system of the type employed to encode digital data into a form for optimum packing density on a recording medium, and the digital data being in the form of successive data cell intervals of uniform duration, and each data cell having one of two predetermined signal levels, and any transition between signal levels in the digital data occurring at the start and end of each data cell; and of the type employed to decode the encoded digital data and to reconstruct the original form of the digital data using the signals generated during the decoding process; the data handling system for encoding the digital data comprising:
means for generating a clock signal having at least one full cycle corresponding to each data cell interval, and said clock signal having its positive going signal level transition occurring in synchronism with the transition time between adjacent data cells;
first encoding means responsive to the digital data for providing first encoding indicia representative of one of the two possible signal levels of the data`
cells;

second encoding means responsive to the clock signal for providing second encoding indicia identifying each positive going signal level transition of said clock signal;
means for combining said first encoding indicia and said second encoding indicia into an encoded waveform having signal level transitions occurring at transition times between successive data cells as well as between transition times of successive data cells, and no successively positioned transitions being spaced more than two data cells apart; and means for eliminating redundancy from the encoded waveform;
wherein said first encoding means includes:
first NAND gate means responsive to said digital data to be-encoded and to said clock signal for generating a negative going pulse corresponding to each binary one present in said original digital data waveform, inverter means responsive to the output of said first NAND gate means for providing an output signal which is the inverted form of the signal from said first NAND gate means and partially delayed with reference to said output of said first NAND gate, and second NAND gate means responsive to said output from said first NAND gate and the output of said inverter means for generating a negative going pulse at mid data cell time for each binary one present in said original digital data waveform.
4. A data handling system of the type employed to encode digital data into a form for optimum packing density on a recording medium, and the digital data being in the form of successive data cell intervals of uniform duration, and each data cell having one of two predetermined signal levels and any transition between signal levels in the digital data occurring at the start and end of each data cell; and of the type employed to decode the encoded digital data and to reconstruct the original form of the digital data using the signals generated during the decoding process; the data handling system for encoding the digital data comprising:
means for generating a clock signal having at least one full cycle corresponding to each data cell interval, and said clock signal having its positive going signal level transition occurring in synchronism with the transition time between adjacent data cells;
first encoding means responsive to the digital data for providing first encoding indicia representative of one of the two possible signal levels of the data cells;
second encoding means responsive to the clock signal for providing second encoding indicia identifying each positive going signal level transition of said clock signal;
means for combining said first encoding indicia and said second encoding indicia into an encoded waveform having signal level transitions occurring at transition times between successive data cells as well as between transition times of successive data cells, and no successively positioned transitions being spaced more than two data cells apart; and means for eliminating redundancy from the encoded waveform;
wherein said second encoding means includes:
inverter means responsive to each clock signal for providing an output signal which is the inverted form of said clock signal and partially delayed with reference to said clock signal, and first NAND gate means responsive to said clock signal and the output of said inverter means for generating a negative going pulse at start of data cell time for each positive going transition in said clock signal.
5. A data handling system of the type employed to encode digital data into a form for optimum packing density on a recording medium, the digital data being in the form of successive data cell intervals of uniform duration, and each data cell having one of two predetermined signal levels, and any transition between signal levels in the digital data occurring only at the start and end of each data cell; and of the type employed to decode the encoded digital data and to reconstruct the original form of the digital data using the signals generated during the decoding process; the data handling system for encoding the digital data comprising:
means for generating a clock signal having at least one full cycle corresponding to each data cell interval, and said clock signal having its positive going signal level transition occurring in synchronism with the transition time between adjacent data cells;
first encoding means responsive to the digital data for providing first encoding indicia representative of one of the two possible signal levels of the data cells;
second encoding means responsive to the clock signal for providing second encoding indicia identifying each positive going signal level transition of said clock signal;
means for combining said first encoding indicia and said second encoding indicia into an encoded waveform having signal level transitions of which some occur at transition times between successive data cells and others occur between transition times of successive data cells, successively positioned transitions being spaced between one and two data cells apart; and means for eliminating redundancy from the encoded waveform;

and the data handling system for decoding the encoded data signal comprising:
means for generating a decode clock signal having a repetition rate of twice the data cell time, said decode clock signal having a same predetermined direction of transition at both the start of data cell time and at mid data cell time;
clock and phase generating means responsive to said decode clock signal generating means for generating a plurality of separate phase timing signals, each of said phase timing signals being a series of pulses having a duration less than a data cell time and having a predetermined direction of transition and having a phase displacement between corresponding pulses in the same data cell time in each of said other separate phase timing signals;
first detection means responsive to said encoded digital data signal for generating a first train of pulses, each pulse in said first train identifying each transition in said encoded digital data signal;
second detection means responsive to said decode clock signal generating means and to said first detection means for generating a second train of pulses, each pulse in said second train identifying the end of data cell time of one of said encoded digital data signals having a duration of at least two consecutive data cell times having the same predetermined signal level;
first decoding means responsive to said clock and phase generating means and to the output of said first detection means for generating a first level decode signal containing transitions indicative of transitions in the encoded digital data signal which occur at mid data cell time; and second decoding means responsive to said clock and phase generating means and to the output of said first detection means and to the output of said first decoding means for altering said first level decoded signal to contain additional non-redundant--transitions indicative of the second transition in pairs of transitions generated by said first detection means, which pairs of transitions are separated by a single data cell time;
said second train of pulses from said second detection means being applied to said clock and phase generating means for synchronizing the outputs of said clock and phase generating means with said encoded digital data signal.
6. A data handling system as claimed in Claim 5, wherein said clock and phase generating means further comprising:
a first bistable device having at least a set input, a clock input, a first output and a second output; a second bistable device having at least a set input, a clock input, a first output and a second output, said output from said clock generating means being applied directly to said clock input of said first bistable device and being applied through an inverter stage to said clock input of said second bistable device, whereby:
a first train of output pulses is generated by said first bistable device in response to said clock signal generated by said clock generating means each of said pulses in said last mentioned first train having a predetermined direction of transition occurring at one quarter data cell time;
a second train of output pulses is generated by said first bistable device in response to said clock signal generated by said clock generating means, each of said pulses in said last mentioned second train having a predetermined direction of transition occurring at three-quarter data cell time;

a first train of output pulses is generated by said second bistable device in response to said clock signal generated by said clock generating means, each of said pulses in said last mentioned first train having a predetermined direction of transition occurring at start of data cell time; and a second train of output pulses is generated by said second bistable device in response to said clock signal generated by said clock generating means, each of said pulses in said last mentioned second train having a predetermined direction of transition occurring at mid data cell time.
7. A data handling system as claimed in Claim 6, wherein said first decoding means further includes:
AND-gate means having a first input, a second input and a first output;
said first input being responsive to said first train of pulses generated by said first bistable device of said clock and phase generating means;
said second input being responsive to said output of said first detection means for generating a train of pulses and each pulse being employed to identify signal level transitions in the encoded digital signal occurring at mid data cell time,
8. A data handling system as claimed in Claim 7, wherein said first decoding means further includes:
a first flip-flop having at least a first input terminal, a second input terminal and a first output terminal;
said flip-flop having two stable states, a first stable state providing an output signal at a first level at said output terminal, and a second stable state providing an output signal at a second level at said output terminal;

said first flip-flop being responsive to said output pulses of said AND-gate to be set into its second stable state from its first stable state and to generate said second level output signal at said output terminal;
said first flip-flop being responsive to said signal generated by said clock and phase generator means at one quarter data cell time to be set into its first stable state from its second stable state and to generate said first level output signal at said output terminal.
9. A data handling system as claimed in Claim 8, wherein said second decoding means further includes:
one shot means responsive to the output signal of said first detection means for providing an enabling output signal having a duration longer than one data cell time and shorter than one and a half data cell time; and AND-gate means responsive to said output signal of said first detection means and to the output of said one shot means for generating a train of pulses and each pulse being employed to identify the second pulse in a pair of pulses in the output from said first detection means, which pair of pulses are separated by one data cell interval.
10. A data handling system as claimed in Claim 9, wherein said second decoding means further includes;
a second flip-flop having at least a first input terminal, a second input terminal and a first output terminal, said second flip-flop having two stable states, a first stable state providing an output signal at a first level at said output terminal, and a second stable state providing an output signal at a second level at said output terminal;

said output signal at said output terminal of said first flip-flop of said first decoding means being shifted into said second flip-flop of said second decoding means under the control of said transitions occurring at start of data cell time as generated by said clock and phase generator; and said second flip-flop of second decode means being reset to its second stable state by said output of said AND-gate means of said second decode means for generating a decoded digital data pulse train.
11. A data handling system as claimed in Claim 5, wherein said first detection means comprises:
means for delaying the encoded digital data signal for a period less than a quarter of the data cell time and an exclusive OR means having a first input terminal and a second input terminal;
said first input terminal being responsive to said encoded digital data signal and said second input terminal being responsive to said delayed encoded digital signal for generating a pulse for each transition in said encoded digital data signal.
12. A data handling system of the type employed to encode digital data into a form for optimum packing density on a recording medium, the digital data being in the form of successive data cell intervals of uniform duration, and each data cell having one of two predetermined signal levels, and any transition between signal levels in the digital data occurring only at the start and end of each data cell; and of the type employed to decode the encoded digital data and to reconstruct -the original form of the digital data using the signals generated during the decoding process; the data handling system for encoding the digital data comprising:

means for generating a clock signal having at least one full cycle corresponding to each data cell interval, and said clock signal having its positive going signal level transition occurring in synchronism with the transition time between adjacent data cells;
first encoding means responsive to the digital data for providing first encoding indicia representative of one of the two possible signal levels of the data cells;
second encoding means responsive to the clock signal for providing second encoding indicia identifying each positive going signal level transition of said clock signal;
means for combining said first encoding indicia and said second encoding indicia into an encoded waveform having signal level transitions of which some occur at transition times between successive data cells and others occur between transition times of successive data cells, successively positioned transitions being spaced between one and two data cells apart; said transitions defining, intervals of two standard data cells in length occurring at a time coinciding with the time between successive data cell intervals in said unencoded waveform; and means for eliminating redundancy from the encoded waveform;
and the data handling system for decoding the encoded data signal and for recovering clock synchronization information comprising:
means for generating a decode clock signal wave train having at least two full cycles corresponding to each standard unencoded data cell interval, said clock signal having sequentially positioned positive-going signal level transitions and negative-going signal level transitions, said decode clock signal having positive-going signal level transitions coinciding with transition time between adjacent standard unencoded data cell intervals;

first detection means responsive to said encoded waveform of digital data for generating a series of pulses, and one of said pulses corresponds to each signal level transition contained in said encoded waveform of digital data;
zero detection means responsive to said clock signal and to said series of pulses generated by said first detection means for generating an output synchronizing pulse signal having a signal level transition coinciding with each second signal level transition in each pair of signal level transitions spaced two standard data cell intervals apart; and means for applying said output synchronizing signal to said clock generating means for maintaining said positive-going signal level transition of said clock signal in synchronism with the transition time between standard data cell intervals.
CA000315347A 1977-11-04 1978-10-31 Method and means for encoding and decoding digital data Expired CA1136279A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US84855077A 1977-11-04 1977-11-04
US848,550 1977-11-04
AU82947/82A AU530226B2 (en) 1977-11-04 1982-04-22 Digital decoder

Publications (1)

Publication Number Publication Date
CA1136279A true CA1136279A (en) 1982-11-23

Family

ID=25640103

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000315347A Expired CA1136279A (en) 1977-11-04 1978-10-31 Method and means for encoding and decoding digital data

Country Status (9)

Country Link
JP (1) JPS5474715A (en)
AU (2) AU523034B2 (en)
BE (1) BE871748A (en)
CA (1) CA1136279A (en)
CH (1) CH647366A5 (en)
DE (1) DE2847833C2 (en)
FR (1) FR2408247A1 (en)
GB (1) GB2011229B (en)
NL (1) NL7810901A (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2571910B1 (en) * 1984-10-16 1987-01-09 Bull Sa ENCODING AND DECODING METHOD AND DEVICE FOR SERIAL TRANSMISSION OF BINARY DATA WITH CONTINUOUS COMPONENT REMOVAL
GB2209908A (en) * 1987-09-15 1989-05-24 Plessey Co Plc A bi-phase modulator
GB2287622B (en) * 1994-03-17 1998-10-28 Nissan Motor Multiplex serial data communication circuit network and method and motor control system and method using multiplex serial data communication circuit network
CN117352020A (en) * 2022-06-29 2024-01-05 长鑫存储技术有限公司 Clock control circuit and semiconductor memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1323299A (en) * 1970-03-16 1973-07-11 British Aircraft Corp Ltd Data recording methods and apparatus
US3750121A (en) * 1971-06-18 1973-07-31 Honeywell Inc Address marker encoder in three frequency recording
US3815122A (en) * 1973-01-02 1974-06-04 Gte Information Syst Inc Data converting apparatus
FR2234708B1 (en) * 1973-06-22 1976-09-17 Thomson Csf
US3988729A (en) * 1975-01-29 1976-10-26 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Differential pulse code modulation
US4027335A (en) * 1976-03-19 1977-05-31 Ampex Corporation DC free encoding for data transmission system

Also Published As

Publication number Publication date
AU523034B2 (en) 1982-07-08
FR2408247B1 (en) 1984-03-09
GB2011229A (en) 1979-07-04
CH647366A5 (en) 1985-01-15
DE2847833C2 (en) 1986-01-09
BE871748A (en) 1979-05-03
DE2847833A1 (en) 1979-05-10
GB2011229B (en) 1982-08-11
AU530226B2 (en) 1983-07-07
AU8294782A (en) 1982-09-02
FR2408247A1 (en) 1979-06-01
AU4114478A (en) 1980-05-01
NL7810901A (en) 1979-05-08
JPS5474715A (en) 1979-06-15

Similar Documents

Publication Publication Date Title
US4337457A (en) Method for the serial transmission of binary data and devices for its implementation
US4167760A (en) Bi-phase decoder apparatus and method
US4232388A (en) Method and means for encoding and decoding digital data
US3865981A (en) Clock signal assurance in digital data communication systems
US4553130A (en) Variable-length encoding-decoding system
US4408325A (en) Transmitting additional signals using violations of a redundant code used for transmitting digital signals
US3422425A (en) Conversion from nrz code to selfclocking code
US4204199A (en) Method and means for encoding and decoding digital data
US4307381A (en) Method and means for encoding and decoding digital data
JPS6028455B2 (en) Digital information processing equipment
JP3963483B2 (en) Encoder and decoder
USRE31311E (en) DC Free encoding for data transmission system
US5646966A (en) Method and apparatus for detecting synchronizing signals by latching successived count values that represent time between received sync pulses for comparison to a predetermined sync pattern of count values
US3927401A (en) Method and apparatus for coding and decoding digital data
CA1037608A (en) Self-clocked pulse signal decoders
US3652943A (en) Apparatus including delay means for detecting the absence of information in a stream of bits
CA1136279A (en) Method and means for encoding and decoding digital data
US4905257A (en) Manchester decoder using gated delay line oscillator
US4740998A (en) Clock recovery circuit and method
EP0090047B1 (en) Encoding and decoding system for binary data
US4007421A (en) Circuit for encoding an asynchronous binary signal into a synchronous coded signal
US5175545A (en) Data coding system in a magnetic recording apparatus
EP0326614B1 (en) Synchronous signal decoder
US3394312A (en) System for converting two-level signal to three-bit-coded digital signal
JPH05334810A (en) Block synchronization pattern detection device, its demodulation device and its detection method

Legal Events

Date Code Title Description
MKEX Expiry