GB2060230A - Improved Error Coding for Video Disc System - Google Patents
Improved Error Coding for Video Disc System Download PDFInfo
- Publication number
- GB2060230A GB2060230A GB8032853A GB8032853A GB2060230A GB 2060230 A GB2060230 A GB 2060230A GB 8032853 A GB8032853 A GB 8032853A GB 8032853 A GB8032853 A GB 8032853A GB 2060230 A GB2060230 A GB 2060230A
- Authority
- GB
- United Kingdom
- Prior art keywords
- code
- data word
- error
- start code
- word
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 claims description 7
- 239000002131 composite material Substances 0.000 claims description 4
- 230000002401 inhibitory effect Effects 0.000 claims 1
- 230000004044 response Effects 0.000 abstract description 5
- 239000004020 conductor Substances 0.000 description 39
- 241001422033 Thestylus Species 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 238000012937 correction Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 4
- 238000009432 framing Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000001143 conditioned effect Effects 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 238000005311 autocorrelation function Methods 0.000 description 2
- 239000000356 contaminant Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000979 retarding effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/92—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N5/9201—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal
- H04N5/9206—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving the multiplexing of an additional signal and the video signal the additional signal being a character code signal
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/02—Recording, reproducing, or erasing methods; Read, write or erase circuits therefor
- G11B5/09—Digital recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1806—Pulse code modulation systems for audio signals
- G11B20/1813—Pulse code modulation systems for audio signals by adding special bits or symbols to the coded information
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/3027—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
- G11B27/3036—Time code signal
- G11B27/3054—Vertical Interval Time code [VITC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/34—Indicating arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Error Detection And Correction (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
In a video disc system wherein each data field includes, as well as a video signal, a predetermined digital start code followed by a digital error code and digital information bits, the error code is a polynomial division code chosen so that for each data field an error code remainder register in the video disc player initially contains the predetermined start code rather than zero, and/or, if no errors are detected, finally contains the predetermined start code rather than zero. An arrangement is also described which, in response to the reading of a particular sequence of data from the disc indicating the end of the record, disables the read head.
Description
SPECIFICATION .~'
Improved Error Coding for Video Disc System
The present invention relates generally to video disc systems, and more particularly to error codes used in video disc systems for encoding and decoding digital information on a recorded video signal.
!n video disc systems, certain advanced features may be implemented by recording digital information along with the video signal. Examples of such advanced features include automatically skipping over "locked groove" defects, display of program playing time, and automatic end-of-program detection. Our patent application 8032856 "Improved Digital on Video Recording and Playback
System" by T. Christopher and C. Dieterich, filed concurrently herewith disclosed a video disc system including a p!ayer having a simple, efficient, video-to-digital interface for separating prerecording digital information from the video signal and how such digital information is used to implement the above-mentioned features.
The recorded digital format comprises a start code, an error code, and information bits. During playback, the video disc player samples digital data encoded on the video signal until a start code is detected. After the start code is detected, the error code and the information bits are clocked into appropriate registers. In a sequential process, the error code and information bits are decoded to determine if there is an error. The decoding process results in a predetermined result (referred to herein 'as a remainder) if no errors are detected.
In one known system for encoding digital data on a video disc medium, the digital format includes a start bit, followed by information bits, followed by a group error code. The information bits include a groove or track identification number to indicate the position of a playback stylus on the video disc. The complete digital message is encoded on the video signal during one line of the vertical blanking interval.
in the known system, in order to decode such recorded digital data in the player, the line in the vertical blanking interval containing data is gated to a decoding circuit. After sensing the start bit, the decoder clocks each successive bit into a data register and checks the received group error code for received errors, if any. A group error code, after decoding, has a particular error check result (herein referred to as a remainder), equal to zero when beginning with zero in the decoder, assuming no errors are detected.
The above-described data system can be disrupted by any of several types of noise-induced errors. These errors include framing errors, where the received message is shifted one or more bits away from its proper position, and error code failures, where the error code check indicates validity in the presence of noise-induced errors. It is important that the digital data read by the player be substantially free of undetected errors. These noise induced errors as well as certain other disadvantages of the above-described data system can be diminished by the use of the herein disclosed improved digital data encoding/decoding arrangement.
The arrangement for encoding digital data in accordance with the present invention includes generating a start code at the beginning of each digital message, and an accompanying coset error code and information bits. Preferably the error code and information bits sequentially follow the start code. Placing the information bits at the end of the message is advantageous in that it facilitates a simpler decoder in the video disc playback apparatus. A Barker sequence may be generated at the start code to improve self-synchronization and reduce framing errors.
A coset error code is similar to a group error code except that either the remainder after decoding, or the beginning contents of the remainder register before decoding, or both is non-zero. In other words, the situation which is avoided by using a coset code is one where all zeros appear as a valid error-free message.
Use of an error code with. a non-zero remainder, in accordance with the present invention, results in a lower rate of undetected errors than would be the case for a group code with a zero remainder.
This result is believed to be due to the particular nature of a video signal and the way in which the digital information is recorded thereon. The decoder searches for a digital message during the vertical blanking interval where the transmitted lines are at black level (logical zero). During this time, logical zeros are more likely to occur than ones. Therefore, noting that the remainder of zero is zero (after decoding), noise is more likely to cause a zero remainder than any other non-zero remainder. For example, in the previous system described, if a noise burst occurs equal to the start code followed by a black level (all zeros) than a zero remainder would result. The present data system, wherein the decoding process begins with a non-zero number and/or ends with a non-zero number, is not subject to such errors.
Various hardware configurations are available for decoding a digital message in accordance with the above-mentioned format. Minimum requirements include data storage means for storing received data, error code check means including an error code check register for computing a remainder, means for detecting a start code, means for detecting a valid remainder, and control means for controlling the overall sequential decoding process. The present invention is also directed towards simplifying and reducing the hardware required for decoding the digital message.
In accordance with a feature the present invention, a recording apparatus is provided which records an error code so that at least a portion of the recorded digital data word has an error check result equal to the start code. In accordance with another feature of the present invention a decoding
apparatus is provided for playback which indicates that a received digital data word is valid if at least a
portion of the received data word has an error check result equal to the start code.
In one embodiment of the present invention, the error code is arranged so that (1) the remainder after decoding a valid message is equal to the start code, and (2) such remainder is computed over the entire message, including the start code. Therefore the error code check register begins with the start code, and, if no errors are detected after the full message is received, also ends with the start code in the register.
In operation, successive data bits are clocked into the error code check register until a start code
is detected. Thereafter, the error code check register need not be cleared, but simply begins computing the remainder beginning with the start code. After the complete message is received, the same means for detecting a start code is now used for detecting a valid remainder. The encoding hardware used in the video disc recording apparatus is arranged to accommodate the present disclosed video disc player decoder without substantially increasing the recording hardware.
In the Drawing
Figure 1 is a graphical representation of a television signal including the vertical blanking interval between odd and even fields;
Figure 2 is a graphical representation of the digital data format used in the disclosed recording method;
Figure 3 is a block diagram of a video disc encoder;
Figure 4 is a block diagram of a video disc player;
Figure 5 is a block diagram showing more detail of the digital data generator of the video disc encoder of Figure 3;
Figure 6 is a block diagram showing more detail of the information buffer for the video disc player of Figure 4;
Figure 7 is a schematic diagram of a means for generating an error check code from the information bits for the video disc encoder of Figure 5;
Figure 8 is a schematic diagram, shown partially in block form, of the information buffer for the video disc player of Figure 4;;
Figure 9 is an embodiment of a receiver control counter for the information buffer shown in
Figure 8;
Figure 10 is a state transition diagram for the microprocessor control means of Figure 4; and
Figure 11 is a flow chart representing a program algorithm for the microprocessor control means of Figure 4.
Signal Format
Particular details of an NTSC type television signal formatted in accordance with the buried subcarrier technique as described in US Patent 3,872,498, "Color information translating systems", to
D. Pritchard, are shown in Figure 1. A vertical blanking interval separates the interlaced odd and even fields. Those skilled in the television arts will readily recognize the standard vertical blanking interval containing a first equalizing pulse interval, a vertical sync interval, a second equalizing pulse interval, followed by a number of horizontal line intervals at the start of each new field. As shown in Figure 1, the video signal information begins on line 22' of field 1, and on line 284' of field 2.
The digital information representative of the field number appears at line 17' of field 1, and line 280' of field 2. Digital information could, as well, be inserted in other lines of the vertical blanking interval. To show the details of the digital signal format, Figure 2 expands the time scale during the horizontal line containing data (line 17' or line 280').
Data are represented in terms of luminance level: 100 IRE units is a logical "one" and 0 IRE units (blank) is a logical "zero". The first data bit follows the standard horizontal sync pulse 140 and color burst 142. The frequency of the burst 142 is about 1.53 MHz, the frequency of the buried subcarrier.
Each data bit is transmitted synchronously with the 1.53 MHz buried subcarrier signal. As shown in
Figure 2, the digital message comprises a 13-bit start code termed B(x), a 13-bit redundant error check code termed C(x), and 51 information bits termed l(x). The beginning of the next horizontal line is indicated by the next horizontal sync pulse 140a and color burst 142a. Thus, the individual data bits are synchronous with the color subcarrier, and the overall digital message is synchronous with the vertical sync pulse. Note that the data rate can be a multiple or submultiple of any convenient subcarrier frequency. Also, other values of luminance may be assigned to logic one and zero, or more than one bit may be associated with a given luminance level.
A start code is used in the present system to synchronize the data system to the digital message thereby avoiding the need to detect the edge of horizontal or vertical sync. Synchronizing errors in a serial digital data system result in framing errors, i.e. where received data is shifted by one or more bits from its proper position. Previously known systems for recording digital data on a video disc encoded
signal have shown that the edges of sync signals are not reliable as a time reference and have resulted
in framing errors. Start codes have proven to be more reliable.
~The specific start code chosen, 1111100110101, is one of the Barker codes known in radar and
sonar technology. See "Group Synchronization of Binary Digital Systems", by R. H. Barker, published
1953 by Academic Press, New York, N.Y.Barker codes are designed such that the- auto-correlation
function, of a signal containing a Barker code shifted with respect to itself, is maximized when
coincidence occurs, and'minimized elsewhere. That is, if one assigns a value of +1 or -1 to each bit in thestart code-and computes the sum of the respective bit products for each shifted position of the start
code with respect to itself, such auto-correlation function will produce a sharp maximum when
coincidence occurs. Specifically, a Barker code shifted any odd number of places with respect to itself
produces an auto-correlation of 0.A Barker code shifted any even number of places with respect to
itself produces an auto-correlation of~1. However, when there is coincidence, the auto-correlation is
N, where N-is the number of bits in the Barker code. In other words, a Barker code shifted any number
of places with respect to itself differs in a maximum number of bit positions.In the presence of noise, this characteristic reduces the probability of a false start code detection, as compared to an arbitrarily
chosen start code. , "The information bits,--I(x), include a field number, a band number, and spare information bits for
future expansion.-Field numbers identify each field of the video signal by a unique 18-bit binary number.- At the beginning of the video disc, the first field of the video program is field "zero".
'Thereafter; each field is consecutively numbered in ascending order.#Band numbers refer to recorded
video signal in a group of adjacent convolutions of the (spiral) tracks which form a band-like shape. All
of the material in such band of grooves is identified by having a common band number. As an example 'of band number utility, the video signal after the end of the video program material is recorded having
-band number !'sixty-three". The video disc player senses band sixty-three as the end of program and
responds by lifting the stylus from the record.
The ~ iS~' The error check code C(x) is computed from 1(x) in the video disc recording apparatus. To this end, I(x) Is multiplied by a constant, H(x). The resulting product is divided by another constant g(x). After such division, the remainder (the quotient is unused) is added to a third constant M(x). The result is C(x).
In the video disc player, the received message is checked for errors by dividing the entire
message, including the start code, by the constant g(x) mentioned above. If the remainder is equal to
the start code, B(x),#then the message is considered error free. The constants H(x) and M(x) are chosen
so-that the remainder of the entire message will in fact be the start code; The constant g(x), used in
both the video disc recording apparatus and the video disc player is called the generator polynomial of
the code. A specific g(x) is chosen which generates a code having error detection properties particularly
advantageous as applied to the video disc medium.In the system described herein, the addition,
multiplication; and'division operations referred to above are performed according to special rules to
accommodate the hardware available for carrying them out. The error coding will be discussed in
greater detail hereinafter in conjunction with the encoding and decoding hardware.
A'block digram of a video disc encoder is shown in Figure 3. A composite video signal from
source 30 is linearly combined in adder 36 with a digital data bit stream on conductor 37 supplied by
the digital data generator 38. Synchronizing means 32 supplies a color subcarrier and synchronizing
pulses so that the data bits generated by the digital data generator 38 are synchronous with the color
subcarrier appearing at terminal 31 a and so that the digital message is encoded on the proper
horizontal line in the vertical blanking interval. Information bits, appearing at data bus 39 and
representing the video'field number and band number, are provided by apparatus 34. The use of field
number and band number information will be discussed in conjunction with the microprocessor
program (Figures 10 and 11).The digital data and the video signal are combined in the adder 36.
Further signal processing means 40 conditions the composite video for the recording medium. The
composite video signal is of the buried subcarrier type and is recorded using FM modulation
techniques.
In the video disc player of Figure 4, the FM signal is detected using pickup transducer and stylus
assembly 20 and converted-in video processing circuitry 18 to a standard television signal for viewing
on an ordinary television receiver: Video processing circuitry 18 includes means responsive to the color
burst signal to phase lock a 1.53 MHz local color oscillator to the color subcarrier. The color oscillator,
in addition to its usual use for demodulating the buried subcarrierwave, is also used to provide the
digital clock signal and this signal appears on conductor 72. The video processing circuitry 18 further
includes means for demodulating the video carrier and comb filtering the recovered video signal. Comb
filter 19 subtracts two adjacent field lines, which result appears on conductor 70 as processed video.
Since line 16', which is at the black level, is subtracted from line 17', which is modulated with digital
data, the processed video on conductor 70 is the recovered digital data. Naturally, line 16' may be any
constant luminance level. Note that if the subsequent line 18' to the data line 17' is a constant
luminance line (also black) the subsequent output of the comb filter during line 18' is again recovered
digital data, but the data is inverted. By subtracting one line from a constant luminance adjacent line,
the recovered digital signal is self-referenced, thereby eliminating data errors due to shifts in the d-c
level of the video signal.If it were desired to place data on consecutive lines, as compared to placing
data adjacent to constant luminance lines, then means for referencing the video signal to a
predetermined luminance level, or a d-c reference level would be necessary in order to separate the
digital data stream from the video signal.
As shown in Figure 4, the information buffer 16 is responsive to processed video on conductor 70
and the 1.53 MHz clock signal on conductor 72 to extract digital data from the video signal. The buffer '16 is controlled by a digital binary control signal on conductor 71 from the microprocessor 10. In one
binary state, the control signal on conductor 71 causes the information buffer 1 6 to acquire data. In the
other binary state, the control signal on conductor 71 conditions the information buffer 16 to transfer
the received data to the microprocessor 10. In particular, when the control signal on conductor 71 is
high, the information buffer 16 opens to sample incoming data on the processed video signal
conductor 70 using the 1.53 MHz signal on conductor 72 as a clock.After a complete message is
received, the status signal on conductor 75 furnishes an indication that a message is complete. To
transfer the message to the microprocessor memory, the control signal on conductor 71 is set low.
This action closes the information buffer 16, resets the internal control circuits, and gates the results of
the message error code check onto status conductor 75. If the status signal indicates the message is
valid (i.e. error code check indicates validity), the microprocessor 10 is programmed to transfer the
data in the information buffer 16 to the microprocessor 10. The microprocessor supplies an external
clock signal on conductor 73 to transfer data from the information buffer 1 6. For each clock pulse, one
bit of data on conductor 74 is shifted out of the information buffer and into the microprocessor 1 0. When
all the data is transferred to the microprocessor 1 0, and the program is ready for another digital
message, control conductor 71 is again returned to a high state and the process is repeated.
The microprocessor 10, via the information buffer 16, controls the gating of line 17' (or line 280')
out of the video signal. The first digital message is obtained by continuously searching the video signal for a start code. Thereafter, the information buffer 1 6 is closed. Then, based on the time of arrival of the first digital message, the information buffer is opened approximately six lines before the next digital
message is expected. If no valid message is found, the information buffer 1 6 is closed approximately
six lines after such expected time of arrival. If a valid digital message is found, the information buffer 16
is closed and a new time of arrival for the next digital message is calculated based on the time of arrival
of the current digital message.In such manner, the microprocessor 1 0 opens a gate, or "data window",
approximately twelve lines wide and centered about the expected data. The time interval from the
center of one data window to the next is approximately one video field time interval. The width of the
data window is chosen so that under worst case timing conditions the expected data will fall within the
data window. Sources of timing error, as explained below, are: finite resolution of the digital timer; the
drift rate of the timer; program uncertainty in determining time of arrival of present data; and timing
differences between odd and even interlaced fields..Use of an alternate microprocessor and/or timer
may be accommodated by adjusting the data window width accordingly.The microprocessor program
which controls the logic for searching for data and centering the data window is discussed hereinafter
in conjunction with Figures 10 and 11.
The microprocessor 10 is also responsive to the player panel controls 14 (load, pause, and scan) to operate the player mechanism 12 and drive the player display 22 in accordance with a
predetermined program, as discussed hereinafter. The player mechanism is further provided with at
least one stylus "kicker" operable by the microprocessor 10. A kicker is a means, piezoelectric,
electromagnetic, or otherwise, for impulsively moving the signal pickup means to adjacent grooves or signal tracks on the video disc medium. The use of the kicker to break out of "locked grooves" will be discussed hereinafter in conjunction with the flow diagrams of Figures 10 and 11.
Error Code
As mentioned above, the video disc recording apparatus uses the information bits l(x) to compute
C(x). Because of the large number of potential combinations -- I(x) and C(x) together are 64 bits long ~and the desire to determine the error detection and correction characteristics of a given code without resorting to enumeration, error codes are treated mathematically. A general mathematical development of ring theory and Galois Fields GF(2m), applicable to error codes in general, can be found
in "Error Correcting Codes" by W. Wesley Peterson, published by MIT Press, Cambridge,
Massachusetts. For present purposes, the error coding in the video disc may be best understood in terms of a few simple definitions.
A digital message, comprising ones and zeros, can be considered'as representing an algebraic polynomial comprising powers of x. The coefficients of the respective powers of x are the individual bits of the message. For example, the 4 bit message 1011, can be represented by the polynomial P(x), where
P(x)=1 ~ x3+0 ~ x2+1 ~ x+1 ~ X =x3+x+1 Applying this notation to the start code, 1 1 1 1 1001 then B(x)=x12+x11+x10+x9+x8+x5+x4+x2+ 1 The highest power of x is called the degree of the polynomial. In the above example, B(x) is a
- polynomial of degree 12.
Polynomials may be added, subtracted, multiplied, and divided using the ordinary rules of algebra
except for expressing coefficients in modulo 2 terms. A shorthand notation for the remainder of a
polynomial after division by another polynomial is indicated by brackets. That is, if P(x) r(x)
=Q(x)+
g(x) ' g(x)
where the remainder, r(x), has a degree less than the divisor, g(x), then [ P (x) ] =r(x) In the video disc recording apparatus, the total message recorded on the video disc is represented
by a polynomial, T(x). From Figure 2,
I T(x)=B(x)x64+C(x)x51+l(x) (1)
,
The term x64 shifts B(x) by 64 bits, because B(x) is at the beginning of the data format.Similarly,
the term X51 shifts C(x) 51 bits to represent that C(x) is recorded before l(x). In accordance with the
apparatus being described, the recording apparatus computes a value for C(x) so that the total
message, T(x), has a remainder equal to B(x) after being divided by g(x).That is, assuming C(x) to be of
the form C(x)=[l(x) ~ H(x) ] +M(x), (2)
then H(x) and M(x) are constant polynomials chosen so that [ T#x) ] =B(x) (3)
It can be shown that equations (1), (2) and (3), when solved for the constant polynomials H(x) and
M(x), yield ,. ~ ' H(X)= [ X12 ] M(x)= [ B(x)x13+B(x)x127j ,, . >
Figure 7 includes a table enumerating the chosen values for B(x) and g(x), as well as the derived
values of H(x)-and#M(x). Note that the table in Figure 7 shows high order bits on the right, so that they
are in the same order as the flip flop storage elements appear in the logic diagram of the same figure.
In the video disc player, the recorded digital message is read by the player electronics. The data
recorded on the video disc is T(x). The data read by the player is R(x). If no errors are generated between recording and playback then T(x)=R(x). The received message,- R(x), is checked for errors by
dividing R(x) by-g(x). If the remainder is equal to B(x), the start code, then the message is considered
error-free. On the other hand, if the remainder does not equal B(x), then an error is thereby indicated.
The characteristics of a code generated in the above manner depend on the choice of g(x), which
is called the generator polynomial. The particular g(x) chosen for the video disc medium is one from the
computer generated codes demonstrated by Tadao Kasami in "Optimum Shortened Cyclic Codes for
Burst Error Correction" published in IEEE Transations on Information Theory 1963. A burst error in a
digital system is a type of error where adjacent bits in the digital message are lost. Burst errors are
considered a likely type of transmission error in the video disc medium.As shown by Kasami in the
aforementioned reference, a code which can correct single burst errors of 6 bits or less, can be
implemented using a generator polynomial given by g(x)-x13+x12+x11+x10+x7+x6+x5+x4+x2+ 1 least Furthermore, it may be shown that for the g(x) given above, all single burst errors of 1 3 bits or will willbe detected, and 99.988 percent of all single burst errors longer than 1 3 bits will be detected
as well. The video disc player, as described herein, uses only the error detection capabilities of the
chosen code.
4 - As a specific example of error code generation, consider the case where the field number is
25,000, the band number is 17, and the spare bits 0. Since 25,000 in binary representation is 000
110 000 110 101 000, and 17 in binary representation is 010 001 (high order bits are on the left), the
51 information bits are 000 000 000 000 000 000 000 000 000 000 110000 110 101 000 010
001. The order of transmission is spare bits first, followed by field number, and then band number,
wherein the most significant bit is transmitted first. The error code for the above specific l(x), computed
as the remainder of l(x) times H(x), plus M(x), is represented by 0111100100010. The next video field
is 25,001 or 000 110 000 110 101 001 in binary representation.For the corresponding information
bits, 000 000 000 000 000 000 000 000 000 000 110000 110 101 001 010001, the proper error
code is 1000101101110. The complete digital message for field 25,001 including the start code is therefore,1111100110101 1000101 101 1 10 000 000 000 000 000 000 000 000 000 000 1 10 000 110 101 001,010 001, shown in order of transmission. The start code is the first 13 bits, the
error code is the next 13 bits, and the 51 information bits are last. In the video disc player, the above
digital message is checked for errors by dividing the received message by g(x). If no errors are detected,
the remainder is 1111100110101, which is exactly the start code.
Hardware
A block diagram of a means for generating T(x) is shown in Figure 5. Under the control of the
transmitter control means 50, 24 information bits are loaded via data bus 39, and 27 spare information bits are loaded via data bus 39a into a 51 bit shift register 44. I(x), which comprises these 51 bits, is
then shifted into another 51 bit shift register 52.
At the same time, during the 51 shift pulses, an encoder 45 computes C(x) in the following way.
Polynomial dividing and multiplying means 46 is responsive to the 51 bit serial transmission of l(x) to
compute-the remainder of 1(x) times H(x) divided by g(x). M(x) is then added in parallel in polynomial
adder 48. The resulting code C(x) is loaded into a 13-bit shift register 54, and B(x), the start code, is
loaded via data bus 49 into another 13 bit shift register 47. Since the start code is a constant digital
value, such loading is preferably accomplished by fixed connections to the parallel load inputs of shift
register 47 as opposed to a software implementation. In positive logic notation, the corresponding
parallel inputs to shift register 47 are connected to ground potential wherever the start code has a zero,
and to a positive potential wherever the start code has a one.Transmitter control means 50 controls
the total message T(x), contained in the three shift registers 52, 54, 47, being shifted out serially in
synchronism with the color subcarrier on conductor 31 a. A video synchronizing pulse applied on
conductor 33 provides transmitter control means 50 with a time reference so that the digital message
is transmitted at the proper time with respect to the video signal.
A specific embodiment of the encoder (45 of Figure 5) is shown in Figure 7. Clocked flip flops
having output terminals Q0 through Q12 form a remainder register. Multiplication by H(x) and division by
g(x) is performed simultaneously in bit serial fashion. Afterwards, the remainder is held in the
remainder register outputs QO through Qua2. See Chapter 7, pages 107~114 of the above-mentioned
Peterson reference for a general treatment of such circuits. To appreciate the simplicity of the circuit in
Figure 7 for multiplying and dividing polynomials, it is noted that both addition and subtraction (of
coefficients of terms of like power) is performed by an exclusive OR gate.Multiplication of l(x) by H(x) is
performed by appropriate connections to one or more exclusive OR gates 80 through 91. In particular,
wherever a coefficient of H(x), but not g(x), is equal to 1, (bit positions 1,3 and 8) input l(x) is
connected to an input of an exclusive OR gate 80, 82 and 87, respectively. Division of l(x) by g(x) is
performed by multiplying the output of Qa2 by g(x), and subtracting the resulting product from the
contents of register 0o through Q.2. In particular, wherever a coefficient of g(x), but not H(x), is equal to
1, (bit positions 4, 7 and 11) the output of Qr2 is connected to an input of exclusive OR gate 83, 86 and
89, respectively.Where H(x) and g(x) are both equal to 1 (bit positions 0, 2, 5, 6, 10 and 12) the output
of exlusive OR gate 91 is connected to an input of exclusive OR gates 81, 84, 85, 88 and 90,
respectively. After 51 clock pulses, one for each bit of í(x), the contents of register Q0 through Q12 is the
remainder of 1(x). H(x) after division by g(x).
Note how M(x) is added to the contents of the remainder register. Addition of coefficients is in mudulo 2 arithmetic performed as the exclusive OR function. Wherever M(x) has coefficients of +1, the complement output, Q, of the corresponding flip flop is used; wherever M(x) has coefficients of 0, the uncomplemented output, 0, is used.
A block diagram of a means for decoding the received message, R(x), appears in Figure 6, which is an embodiment of the information buffer 1 6 of Figure 4, discussed above. Control signal on conductor 71, an input, conditions the receiver decoder of Figure 6 either to receive data from the video signal, or transfer data to the microprocessor.
In the receive state, each bit is simultaneously shifted into two separate registers. One such register 60 is for data, and the other 62 is for error checking. The error check register 62 is a polynomial divider. However, when acquiring new data, the divider feedback path is disabled so it functions as a straight shift register. The operation of divider register 62 will be discussed subsequently in greater detail in conjunction with Figure 8. For present purposes, register 62 is responsive to the receiver control means 64 to either shift in successive bits of R(x), or divide successive bits of R(x) by g(x). In either case, the contents of register 62 is available on data bus 78 and provided to the start code and valid data detector 66.
The receive operation begins with register 62 conditioned to operate as a shift register. After B(x) is detected by detector 66, control means 64 conditions register 62 to operate as a polynomial divider.
Thus, polynomial division by g(x) begins with B(x) in the divider register 62. The receiver control means
64 is further responsive to the detection of B(x) to time out a period equal to the remaining message
bits (64 clock pulses). After the time out period, the divider 62 contains the remainder of R(x) modulo
g(x), which should be B(x) if the message is valid. During the error check process, data register 60 has
been shifting in data bits. At the end of the time out period, the data register 60 stores only the last 24
bits. However, sinceLthe 24-information bits are placed at the end of the message, register 60 will
contain the assigned information bits.If it is desired to utilize the spare information bits, additional shift register stages may beaded. be 'added.' Interpretation of the output status signal on conductor 75 depends on the state of control signal
on conductor 71. When the control signal on conductor 71 conditions the receiver for acquiring data
(receive state) the status signal on conductor 75 is defined as "message received". When the control
signal on #conductor 7.1 conditions the receiver for transferring data (transfer state), status signal
conductor 75 indicates "data valid". The control signal on conductor 71 also resets the receiver control
means 64 and gates the results of the remainder check onto the status signal on conductor 75.
The received information is transferred out of shift register 60 in response to external clocks supplied by the microprocessor on conductor 73. After the data is shifted out, the control signal on -conductor 71 may be returned to its previous state which will again condition the receiver-decoder to continuously search for another start code.
Figure 8 shows a logic diagram, partially in block form, of the receiver decoder of Figure 6. The flip flops having output terminals QOT through Q, > ' form a remainder register. Polynomial division by g(x) is performed by multiplying successive register output terms from 012' by g(x) and subtracting the
product (via exclusive-OR gates 100 through 108) from the contents of the remainder register. A feedback connector from Q.2' (through NOR gate 109) is made to an exclusive OR gate wherever g(x)
has coefficients of 1, except for bit 13. Since the coefficients of g(x) are 1 for bit positions 0, 2, 4, 5, 6,
7, 10, 11,12, an exclusive OR gate is placed at the data input of each respective flip flop of the
remainder register as shown.NAND gate 11 8 detects B(x), which is both the start code and the valid
error check code. The receiver control counter 117; begins counting responsive to a start signal from
AND gate 120, counts 63 clock periods and supplies a stop signal which is used by NAND gate 111 to
stop the clock to all decoder flip flops. A representative embodiment of the receiver control counter
1-17 is shown in Figure 9 comprising seven flip flops 130 through 136.
The sequence of operations in receiving data is as follows. When the control signal on conductor 71 is high, data is gated to divider 62 through AND gate 110. Flip flop 119 has been previously set, which disables the feedback signals in divider 62 by blocking NOR gate 109. Register 62 now functions as a shift register. Upon detecting B(x), the output of NAND gate 118 goes low, and the 0
output of-flip flop 19 goes low one clock period later. Therefore, feedback is enabled for polynomial
division by the output of AND gate 120 via NOR gate 109 when B(x) is detected in the remainder
register. After 63 clock periods, the receiver control counter 11 7 stops and the status signal on
conductor 75 goes high, indicating "message received". Shift register 60 holds the last 24 bits of l(x).
To transfer data, the. control signal on conductor 71 is made low. The inverted output of NAND gate
118, which is low if the remainder after division is 8(x),'is gated onto the status signal on conductor 75.
External clock pulses on conductor 73 cause successive shifts of data in register 60 to the output data
signal on conductor 74. The external clock pulses also clear the remainder register by shift in zeros.
The above arrangement-shows a remainder register beginning and ending with the same non
zero constant. However, it will be understood that other arrangements are possible when using a coset
code. For instance, after detecting B(x), the remainder register can be set to a first arbitrary constant.
Then, after division, the remainder register is checked for a proper second constant. The first constant,
or the second constant, may be zero; both constants may not be zero.
Observe the simplified hardware which results from the error code format described herein. By
ending with-the start code, B(x), as a valid remainder, the start code detector (NAND gate 11 8) also
serves as a valid code detector. By beginning division with the start code in the divider, a control step is
eliminated in not having to clear the remainder register.
Typically. error codes are placed at the end of a message.
However, by placing the error code before the information bits, the receiver controller is further
simplified in not having to distinguish information bits from error code bits with regard to the data
storage register 60. In addition, the receiver controller, as, shown in Figure 8, is a simple counter 117,
having a start terminal, a stop terminal, and providing a timing out for a single time interval.
Microprocessor Implementation
Digital information, including band number-and field number, are recorded on the video signal,
and utilized by the player to achieve a variety of features. Band number information is used by the
player to detect end of play (band.sixty three). Field number information in ascending order is used to
calculate and display the program playing time on LED display means 22 in Figure 1. If the length of
program material is known, field number information can be used to compute the remaining program
playing time. For NTSC type signals, elapsed program time in minutes may be obtained by calculating
the field number divided by 3600. If desired, the remaining program time may be derived from the
previous calculation. This feature is useful to the viewer when scanning for a desired point in the
program.A particularly useful feature, derived from field number information, is locked groove
correction which will be discussed hereinafter in conjunction with the more general case, track error
correction.
Field numbers represent actual stylus position.Thus, whenever the stylus re-enters a groove,
whether after jumping tracks or after the scan mechanism is operated, the actual stylus position can be
determined from the first valid field number read. Both the track error correction system and the
program playing time display means use field number data, and therefore share the decoding portion of
the video disc digital data system. The particular track error correction system discussed herein after
uses field number data (stylus position) to keep the stylus at or ahead of its expected position assuming
a predetermined stylus/record relative velocity. The program playing time display uses field number
data for an indication of playing time, which is actually another representation of stylus position.
The microprocessor controller has several internal modes. Figure 10 is a state transition diagram
indicating the mode logic performed by the microprocessor program. Each of the circles represent a
machine mode: LOAD, SPINUP, ACQUIRE, PLAY, PAUSE, PAUSE LATCHED, and END. For each mode, the position of the stylus and the status of the display is indicated inside each respective circle. The -arrows between modes indicate the logical combination of signals, supplied by the panel controls (load
pause, scan), that cause a transition from one mode to another. The load signal indicates that the
player mechanism is in a condition to receive a video disc. The pause signal is derived from a
corresponding control panel switch, and the scan signal indicates the operation of the scan
mechanism.
After power is turned on, the system goes into LOAD mode. A video disc may be loaded onto the
turntable in this mode. After loading, the player enters SPINUP mode for several seconds, allowing the
turntable to be brought up to the full speed of 450 RPM. At the end of SPINUP mode, the ACQUIRE
mode is entered.
In ACQUIRE mode, the digital subsystem lowers the stylus and continuously searches for a "good
read". In ACQUIRE mode, a "good read" is defined as a valid start code and a valid error check
remainder. After finding a "good read" the system enters PLAY mode.
In PLAY mode, the microprocessor establishes in memory an expected, or predicted, next field
number. The predicted field number is incremented or updated each field. For all subsequent reads, the
microprocessor uses the predicted field number in performing two additional checks to further improve
the-integrity of the data.
The first additional check is a sector check. The video disc in the embodiment under consideration
contains eight fields in every revolution, dividing the disc into eight sectors. Since the relative physical
position of the sectors is fixed, the sectors follow a periodic recurring order as the disc rotates, even if
the stylus jumps over a number of tracks. Although the digital information cannot be read for one or
more fields, (sectors) while the stylus is skipping to a new track the microprocessor keeps time, and
increments the predicted field number accordingly. When the stylus settles at a new track and picks up
a new digital message, the new field number is checked by comparison to the predicted field number. If
the sector is wrong, the data is considered a "bad read".
Field number is represented by an 18 bit binary number. Sector information may be obtained
from field number by finding the remainder after dividing the field number by eight. However, it is noted
that the three least significant bits of a binary number counts modulo eight. Therefore the least
significant three bits of each new field number must equal the least significant three bits of the
predicted field number to pass the sector check.
A second check of data integrity is the range check, a test of the maximum range of stylus
movement along the radius of the disc. No more than 63 tracks are expected to be jumped when
encountering worst case conditions in any mode. Track numbers are represented by the most
significant 1 5 bits of the field number. The microprocessor subtracts the present track number from the
predicted track number. If the difference is greater than the acceptable range of 63 tracks then the
present data is considered a "bad read". All other reads are regarded as good reads and are used to
update the predicted field number. After fifteen consecutive bad reads, the system re-enters the
ACQUIRE mode. The presence of a scan signal in certain modes, as shown in Figure 10, will also cause
a transition to ACQUIRE mode.
When going from ACQUIRE mode to PLAY mode the microprocessor sets the bad read count to
thirteen. This means that when entering PLAY mode from ACQUIRE mode, one of the next two fields
must supply a good read or the bad read count will reach fifteen causing a return to ACQUIRE mode.
If the pause button is pressed during PLAY mode, the system enters PAUSE mode. In this mode
the stylus is off the record and is held in its then radial position over the record. When the pause button
is released, PAUSE LATCHED mode is entered and held. Pressing the pause button again releases the
PAUSE LATCHED mode, causing a transition to ACQUIRE mode. END mode is entered from PLAY
mode when band number sixty three is detected.
Figure 11 is a flow chart of the program executed by the microprocessor. The microprocessor
hardware includes one interrupt line and a programmable timer. A commercially available
microprocessor suitable for the present system is the Fairchild Semiconductor model F8.
The microprocessor uses the timer to controF the window in time that the information buffer searches for data. This "data window" is approximately twelve horizontal lines wide and is centered about the expected data. When no data is found, the timer maintains internal program synchronization to one field time interval.
The microprocessor interrupt is coupled to the status signal on conductor 75 (Figure 4). Interrupts are enabled only in ACQUIRE mode when the system continuously searches for data. The program is interrupted when a digital message is received. The interrupt service routine (not shown) sets an interrupt flag if the error code check indicates validity. Thereafter, in PLAY mode, the programmable timer is used to indicate the estimated time of arrival of the next digital message.
Switch inputs (load, scan, and pause) are conditioned to prevent switch bounce from causing undesired player response. The microprocessor program includes logic to debounce switch inputs.
Debounced switch values are stored in memory. A separate debounce count is maintained for each switch. To check debounce 154 the switches are sampled and compared to the stored switch value. If the sampled state and the stored state are the same, the debounce count for that switch is set to zero.
Switch states are sampled as often as possible. Each field, (every 16 milliseconds for NTSC), all debounce counts are incremented unconditionally. If the resulting debounce count is equal to or greater than 2, the stored state is updated to the new (debounced) value. The new switch state is then acted upon.
The first programmed step (Figure 11), after power is turned on, is initialization 150 of all program parameters. The timer is set to time out one video field. Mode is set to LOAD.
the next step 152 is a program to carry out the state transition logic represented in Figure 10.
Debounce counts are normally incremented at this time, and tested to determine whether a new switch state is fully debounced.
After the mode selection logic 152, the program enters a tight loop 153 to (1) sample switches setting debounce counts to zero, if required 1 54, and (2) check if the timer is close to time out 155, and (3) check if the interrupt flag has been set 1 56.
If the interrupt flag is set 1 56, the program transfer data, 1 57a, from the information buffer and sets the timer 157b, to time out a new field interval. When the interrupt service routine sets the interrupt flag, the contents of the timer are saved in memory. The program now uses the previously stored timer contents to set the timer, 1 57b, with a corrected value predicting the approximate time of occurrence of the next digital message. As previously noted, even though the data represents the first good read in ACQUIRE mode, the bad read count is set, 1 57c, to 13.
If the interrupt flag is not set, the program branches as the timer gets close to time out, 1 55. If the machine is not in PLAY mode 159, then the timer is set to time out another field interval, 1 58. If the machine is in PLAY mode, 1 59, then a number of time critical tasks,160, are performed. The data window is opened, 1 60a, (by setting control signal on conductor 71 in Figures 1 and 8 to a logical one) approximately six horizontal lines before the expected data. Received data is read and checked as previously described. After data is received, or if no data is received, the data window is closed.Timer content, which represents the actual time of arrival of the digital message, is used as a correction factor to set the timer again, 1 60b. The timer is therefore set to center the next data window over the predicted time of arrival of the next digital message based on the actual time of arrival of the present digital message.
Expected field number is updated, 1 60c, band number is checked for start (band 0) and end of play (band sixty three), and the bad read count is incremented, 160g, for a bad read. For valid field data in the program. viewing material, time is calculated and displayed, 1 6Of. If valid field data indicates that the stylus has skipped backward, the stylus kicker means is activated, 1 60e, and ACQUIRE mode is entered. Also, if the band read count reaches 15, ACQUIRE mode is directly entered. Throughout the time utilized for critical tasks 160, the switch debounce check routine is repeated periodically so that switches are tested as often as is feasible.The program unconditionally returns through the mode selection logic 1 52 to the tight loop 1 53 and waits for the timer test 155, or the interrupt check 156, to indicate the arrival of the next digital message.
The timer may be set by loading the timer directly via programmed instructions. However, rather than use a sequence of instructions, it is best to "set" the timer by establishing a location in memory (a mark) which corresponds to a time out condition of the timer. The timer, then, is free running. Time out, or closeness to the time out, is detected by comparing the contents of the timer to the mark set in memory. The next desired time out condition is set by adding the next desired time interval to the previous timer contents and storing the result in memory. The timer is thus "set" each time valid data is received, or if no data is received within the data window, by setting a new mark in memory corresponding to the next time out condition.
The programmable timer in the microprocessor used in the described arrangement is conditioned by the program to divide cycles of the input 1.53 MHz clock by a factor of 200. The timer thus counts once for every 200 cycles of the 1.53 MHz clock. Ohe vertical field (1/60 second for NTSC) is then approximately 128 timer counts. One may alternatively use a timer which counts a different multiple of the 1.53 MHz clock, or one that uses a timing source independent of the video signal.
The data window is made wide enough to allow for several sources of timing error. Timer uncertainty due to the finite resolution of the timer is equal to one least significant bit, which
corresponds to two horizontal lines. Accumulated drift error, because 128 timer counts is not exactly
one vertical field, is somewhat less than one line after 16 consecutive fields in which no valid message
is found. It is noted that since the 1.53 MHz color subcarrier clock is an odd multiple of one half the line
frequency, a timer which counts a corresponding multiple of the color subcarrier clock would have zero
drift rate. In the particular arrangement described herein, program uncertainty in determining the time
of arrival of the data, is approximately 97 microseconds, or about 1.5 lines.Finally, because alternate
fields are interlaced, the time from one digital message to the next is either 262 lines or 263 lines,
depending on whether the present field is odd or even. Although the program could keep track of odd
and even fields, it is simpler to just widen the data window by one additional line. Combining the above
factors, it can be shown that a data window extending three timer counts (about 6 lines) both before
and after the start of expected data is adequate to allow for worst case timing conditions.
Track Error Correction
As mentioned earlier, field number information may be used to detect "locked grooves". If the
new field number (after sector and range check) is less than the expected field number, then the stylus
has skipped backward and is repeating the tracking of a previously played convolution(s), i.e. a "locked
groove" has been encountered. If the new field number is greater than the expected field number, the
stylus has skipped forward, i.e. toward record center. In the present application, skipped tracks are
ignored; if the new field number is greater (but still passes sector and range check) then the expected
field is updated to the new field. In certain other applications, such as where the video disc is used to
record digital information on many horizontal lines, it may be necessary to detect and correct skipped
tracks as well.However, in the present application, a locked groove or track is corrected by operating a
stylus "kicker" until the stylus is returned to the expected track. Eventually, the stylus will be advanced
past the "locked groove" defect.
In a more general sense, the use of field number information in accordance with the present
disclosure provides an accurate means for detecting general tracking errors. In any video disc system
having spiral or circular tracks, including optical and grooveless systems, tracking errors due to defects
and contaminants are always possible. The present system provides a means for detecting and
correcting such tracking errors in a-video disc player. For positive tracking a bi-directional kicker means
is provided for moving the pickup backward or forward in the program material. Thus, when a tracking
error is detected, whether a skipped track or a locked track, the pickup is moved in such direction so as
to correct the tracking error. Although the regular pickup servo could be used for track error correction
purposes, a separate kicker, or pickup repositioning means, is preferable.The regular servo is generally
adapted for stable tracking of the spiral signal track, and may not have the proper characteristics to
respond to abrupt tracking errors. A separate kicker, on the other hand, can be specifically adapted to
provide the fast response needed to correct tracking errors. A specific example of a kicker suitable for
use with the disclosed apparatus may be found in our application No. 7937029 (2O34507A).
Several control algorithms are possible. The pickup apparatus may be returned directly to the
correct track by producing stylus motion proportional to the magnitude of the detected tracking error.
Or, a kicker may be operated in response to a series of pulses, wherein the number of pulses is
proportional to the magnitude of the detected tracking error. The pickup is moved a given number of
tracks per pulse until the stylus is back on the expected track. For certain applications (e.g. retrieving
digital data stored on the video disc medium) it may be desirable to return the pickup to the point of
departure and attempt a second read, rather than return the pickup to the expected track. In any event,
it is seen that by the use of a kicker and suitable control logic, successful tracking can be obtained even
though the video disc contains defects or contaminants which would otherwise cause unacceptable
tracking errors.
In a digital track correction system, security against undetected data errors is particularly
important to prevent noisy signals from advancing# or retarding the pickup unnecessarily. The present
data system reduces the probability of an undetected read error to a negligible level.
To a rough approximation, one can estimate the probability that a random digital input will
appear to the data system as a valid message containing a non-sequential field number, thereby
actuating the stylus kicker. The random probability of a good start code is 1 in 2'3. The random
probability of a good error code is also 1 in 2'3. The random probability of a good field number is
calculated as follows. Field numbers contain 1 8 bits. Since there are eight sectors on the disc of the
system under consideration, the least significant 3 bits of each field number indicate the sector
number, which must match the expected sector number. The remaining fifteen bits, which represent
track number, can vary over the allowable range (plus or minus 63 tracks). Therefore only 126 out of 218 random field numbers will pass the sector and range checks.Combining all safeguards, the
probability of an undetected error is 126 in 244.
The above estimate is based on an assumption of a truly random input, and it does not take into
account several factors which further reduce the probability of an undetected error.
For example, on a video disc track, burst noise, where the erroneous bits are adjacent to each
other, is more likely than other types of noise. As previously noted, the particular error code chosen
detects all single burst errors up to 13 bits, and a high percentage of all longer bursts as well. Also, as previously explained, the choice of a non-zero remainder for the error check code (a coset code) further reduces the probability of an undetected error. Furthermore, the particular start code chosen, a Barker code, reduces the probability that noise will cause a false start code detection.
The disclosed data system, as applied to the video disc system, results in a rate of undetected errors which is relatively low and false alarms which would otherwise cause unnecessary stylus movement are significantly reduced. The data security provided by the disclosed system improves the stability of many player functions, such as display of program playing time, which depend on recorded digital data for proper operation.
Claims (18)
1. A video disc recording apparatus for encoding an information word on a video signal, comprising:
means for generating a video signal;
means for generating a first data sequence corresponding to a start code;
means for generating a second data sequence corresponding to an error code over at least a portion of said information word; and
means for modulating said video signal in accordance with a recorded data word comprising said start code, said error code, and said information word, wherein said error code is a coset code over at least a portion of said recorded data word.
2. A video disc recording apparatus according to Claim 1 for encoding an information word, l(x), on a horizontal line of a composite video signal during the vertical blanking interval thereof, wherein said error code generating means generating an error code C(x), using a generator polynomial g(x), said error code of the form
C(x)= [ l(x) ~ H(x) ] +M(x) where H(x) and M(x) are each constant polynomials; and said modulating means modulating said video signal during a horizontal line during the vertical blanking interval thereof in accordance with a recorded word T(x), including said error code and said information word; wherein H(x) and M(x) are chosen so that [ T(x) ] *O.
3. Apparatus according to Claim 1 or 2, wherein said means for generating said error code is responsive to said information word; means for combining said information word and said error code; and means, included in said means for generating said error code, for controlling the generation of said error code so that at least a portion of said data word has an error check result equal to said start code.
4. The video disc recording apparatus according to Claim 1, wherein said means for controlling the generation of said error code is of a type such that the complete data word has an error check result equal to said start code.
5. The apparatus according to Claim 1, for encoding an information word l(x) on said video signal, wherein said start code, B(x), corresponds to a start sequence; said means for generating said error code, C(x), using a generator polynomial g(x), said error code being of the form,
C(x)=[l(x) ~ H(x)J+M(x), where H(x) and M(x) are each constant polynomials; and said modulating means modulating said video signal in accordance with a data word T(x), given by T(x)=B(x)xrn+fl+C(x)xrn+l(x) where n equals the number of bits in said error code and m equals the number of bits in said information word; and wherein H(x) and M(x) are chosen so that [ T(x) ] =B(x).
6. A decoder apparatus for decoding an information word from a video signal, wherein said video signal is modulated during a horizontal line during the vertical blanking interval thereof in accordance with a recorded data word, said recorded data word including an error code and an information word, said decoder apparatus comprising:
receiving means responsive to said modulated video signal for detecting individual bits of a received data word;
polynomial divider means coupled to said receiving means for dividing at least a portion of said received data word by a constant polynomial g(x), said polynomial divider means having a remainder output; and
control means responsive to said remainder output, for indicating that said received data word is valid if said remainder output of said polynomial divider is equal to a predetermined value, wherein said predetermined value is not equal to zero.
7. The apparatus according to Claim 6 for playing back a video disc wherein:
said receiving means having a received data word output corresponding to the bits of said rnr.nrdnd data word: and having first decoder means for detecting said start code;
said polynomial divider means including an error check register for dividing at least a portion of said received data word by a constant polynomial g(x); and
said control means responsive to said first decoder means and said error check register, said control means including means for setting said error check register to a first predetermined constant before division, and means for indicating that said received data word is valid if said error check register contains a second predetermined constant after division, wherein at least one of said first and second predetermined constants is not zero.
8. The decoder apparatus as set forth in Claim 7, wherein said start code is represented in a binary format by, by,1111100110101.
9. The decoder apparatus as set forth in Claims 6 or 7, wherein said constant polynomial g(x) is given by g(x)=x13+x12+x11+x10+x7+x6+x5+x4+x2+1.
10. The decoder apparatus as set forth in Claim 6 or 7, wherein said polynomial divider means is responsive to said control means for dividing the entire received data word.
11. The decoder apparatus as set forth in Claim 6 or 7, wherein said polynomial divider means is responsive to said control means for dividing said combined information and error code of said received data word.
12. The apparatus according to Claim 6 for playing back a video disc, wherein said data word comprises a start code and a combined information word and error check code, and wherein: said polynomial divider means comprises error check means coupled to said receiving means for generating an error check result; and said control means is responsive to said error check means, for indicating that said received data word is valid if at least a portion of said received data word has an error check result equal to said start code.
13. The apparatus according to Claim 12, wherein said control means indicates said received data word is valid if the complete received data word has an error check result equal to said start code.
14. The apparatus according to Claim 12, wherein said data word contains a start code and a combined information word and error check code, and wherein said control means is responsive to said remainder output, for indicating that said received data word is valid if said remainder output after division by g(x) is equal to said start code.
15. The apparatus according to Claim 12 for playing back a video disc, wherein said data word contains a start code and a combined information word and error check code, including detector means coupled to said receiving means for detecting said start code; and wherein said polynomial divider means dividing, responsive to a divide command signal, at least a portion of said received data word by said constant polynomial g(x), said polynomial divider means including a remainder register; and said control means responsive to said detector means for supplying said divide command signal after the detection of said start code; and control means further including means responsive to said remainder register contents for providing an indication that said received data word is valid if the contents of said remainder register after said polynomial division is equal to said start code.
16. The apparatus according to Claim 12, for playing back a video disc, wherein said data word contains a start code and a combined information word and error check code, wherein: said divider means includes shift register means connected to said receiving means, said shift register means including feedback means responsive to an enabling signal for multiplying the output of said shift register means.by said constant polynomial g(x) and subtracting the result thereof from the contents of said shift register; detector means connected to said shift register for detecting said start code; and said control means including means responsive to said detector means for supplying said enabling signal to said feedback means after said detecting means detects said start code, and further including means responsive to said detector means for detecting said start code in said shift register after said data word is received for indicating that said received data word is valid.
1 7. In a video disc player for playing a video disc having a substantially spiral information track, said information track representing a recorded carrier signal modulated by a video signal, said video signal including information signals representing recorded digital numbers wherein a predetermined value of said digital numbers corresponds to a band of convolutions of said spiral information track after the end of the recorded video program, said video disc player including a signal pickup means for sensing said recorded video signal, an end of program detection apparatus comprising: detecting means coupled to said signal pickup means for decoding said recorded digital numbers; and control means responsive to said decoded digital numbers for providing an end of program indication signal upon said detecting means decoding said predetermined value of said recorded digital numbers; said video disc player further including means responsive to said end of program indication signal for inhibiting the operation of said pickup means.
18. Video disc apparatus for recording or playback of an encoded information word including a coset error code, substantially as hereinbefore described with reference to the accompanying drawings.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/084,393 US4308557A (en) | 1979-10-12 | 1979-10-12 | Video disc system |
US06/084,396 US4309721A (en) | 1979-10-12 | 1979-10-12 | Error coding for video disc system |
Publications (2)
Publication Number | Publication Date |
---|---|
GB2060230A true GB2060230A (en) | 1981-04-29 |
GB2060230B GB2060230B (en) | 1984-08-08 |
Family
ID=26770922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB8032853A Expired GB2060230B (en) | 1979-10-12 | 1980-10-10 | Error coding for videao disc system |
Country Status (15)
Country | Link |
---|---|
KR (1) | KR850001310B1 (en) |
AR (1) | AR227162A1 (en) |
AU (1) | AU538007B2 (en) |
BR (1) | BR8006460A (en) |
DE (1) | DE3038357A1 (en) |
DK (1) | DK429980A (en) |
ES (1) | ES8200983A1 (en) |
FI (1) | FI803145L (en) |
FR (1) | FR2467521A1 (en) |
GB (1) | GB2060230B (en) |
IT (1) | IT1133859B (en) |
NL (1) | NL8005624A (en) |
NZ (1) | NZ195228A (en) |
PL (1) | PL130439B1 (en) |
SE (1) | SE8006983L (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2488031A1 (en) * | 1980-07-29 | 1982-02-05 | Victor Company Of Japan | APPARATUS FOR REPRODUCING A ROTARY RECORDING MEDIUM WITH AUTOMATIC SEARCHING OF RECORDING PARTS TO BE REPRODUCED |
FR2514588A1 (en) * | 1981-10-14 | 1983-04-15 | Rca Corp | DEVICE FOR RECORDING DIGITAL MANIFESTATIONS OF A CONTINUOUS ANALOGUE SIGNAL IN TIME AND DEVICE FOR PROCESSING ITS RECORDED DIGITAL MANIFESTATION |
EP0136882A1 (en) * | 1983-10-05 | 1985-04-10 | Nippon Gakki Seizo Kabushiki Kaisha | Data processing circuit for digital audio system |
EP0261915A2 (en) * | 1986-09-20 | 1988-03-30 | Pioneer Electronic Corporation | Initial state setting system for still picture recording/reproducing device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3413599A (en) * | 1963-05-31 | 1968-11-26 | Ibm | Handling of information with coset codes |
NL7212015A (en) * | 1972-09-04 | 1974-03-06 | ||
US3821703A (en) * | 1972-12-26 | 1974-06-28 | Ibm | Signal transferring |
-
1980
- 1980-10-03 FI FI803145A patent/FI803145L/en not_active Application Discontinuation
- 1980-10-06 SE SE8006983A patent/SE8006983L/en not_active Application Discontinuation
- 1980-10-06 AU AU62994/80A patent/AU538007B2/en not_active Ceased
- 1980-10-08 BR BR8006460A patent/BR8006460A/en unknown
- 1980-10-09 IT IT25253/80A patent/IT1133859B/en active
- 1980-10-10 DE DE19803038357 patent/DE3038357A1/en not_active Ceased
- 1980-10-10 NZ NZ195228A patent/NZ195228A/en unknown
- 1980-10-10 GB GB8032853A patent/GB2060230B/en not_active Expired
- 1980-10-10 NL NL8005624A patent/NL8005624A/en not_active Application Discontinuation
- 1980-10-10 DK DK429980A patent/DK429980A/en not_active Application Discontinuation
- 1980-10-10 ES ES495838A patent/ES8200983A1/en not_active Expired
- 1980-10-10 FR FR8021751A patent/FR2467521A1/en active Pending
- 1980-10-10 AR AR282855A patent/AR227162A1/en active
- 1980-10-11 PL PL1980227240A patent/PL130439B1/en unknown
- 1980-10-13 KR KR1019800003923A patent/KR850001310B1/en active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2488031A1 (en) * | 1980-07-29 | 1982-02-05 | Victor Company Of Japan | APPARATUS FOR REPRODUCING A ROTARY RECORDING MEDIUM WITH AUTOMATIC SEARCHING OF RECORDING PARTS TO BE REPRODUCED |
FR2514588A1 (en) * | 1981-10-14 | 1983-04-15 | Rca Corp | DEVICE FOR RECORDING DIGITAL MANIFESTATIONS OF A CONTINUOUS ANALOGUE SIGNAL IN TIME AND DEVICE FOR PROCESSING ITS RECORDED DIGITAL MANIFESTATION |
EP0136882A1 (en) * | 1983-10-05 | 1985-04-10 | Nippon Gakki Seizo Kabushiki Kaisha | Data processing circuit for digital audio system |
EP0261915A2 (en) * | 1986-09-20 | 1988-03-30 | Pioneer Electronic Corporation | Initial state setting system for still picture recording/reproducing device |
EP0261915A3 (en) * | 1986-09-20 | 1989-04-05 | Pioneer Electronic Corporation | Initial state setting system for still picture recording/reproducing device |
Also Published As
Publication number | Publication date |
---|---|
AR227162A1 (en) | 1982-09-30 |
DE3038357A1 (en) | 1981-04-23 |
ES495838A0 (en) | 1981-11-16 |
ES8200983A1 (en) | 1981-11-16 |
IT8025253A0 (en) | 1980-10-09 |
AU538007B2 (en) | 1984-07-26 |
SE8006983L (en) | 1981-04-13 |
BR8006460A (en) | 1981-04-14 |
KR850001310B1 (en) | 1985-09-12 |
AU6299480A (en) | 1981-04-16 |
FI803145L (en) | 1981-04-13 |
PL130439B1 (en) | 1984-08-31 |
IT1133859B (en) | 1986-07-24 |
NL8005624A (en) | 1981-04-14 |
PL227240A1 (en) | 1981-07-10 |
NZ195228A (en) | 1985-01-31 |
KR830004744A (en) | 1983-07-16 |
FR2467521A1 (en) | 1981-04-17 |
DK429980A (en) | 1981-04-13 |
GB2060230B (en) | 1984-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4308557A (en) | Video disc system | |
US4307418A (en) | Video disc player system for correlating stylus position with information previously detected from disc | |
US4313134A (en) | Track error correction system as for video disc player | |
US4309721A (en) | Error coding for video disc system | |
US4419699A (en) | Digital on video recording and playback system | |
US4357702A (en) | Error correcting apparatus | |
US4575770A (en) | Video disc data systems for interactive applications | |
EP0605206A2 (en) | Data recording method and data recording apparatus | |
JPS6412143B2 (en) | ||
US4488278A (en) | Coding system for digital audio disc record | |
EP0109551B1 (en) | Apparatus for decoding video address code signals | |
EP0322782B1 (en) | Circuit for detecting a synchronizing signal | |
US3883891A (en) | Redundant signal processing error reduction technique | |
CA1149947A (en) | Digital on video recording and playback system | |
GB2060230A (en) | Improved Error Coding for Video Disc System | |
EP0232144B1 (en) | Data demodulation system | |
US5271022A (en) | Digital optical sound system | |
US4639792A (en) | Apparatus for decoding video address code signals | |
US4953040A (en) | Time code reader in a device for reproducing video signals from magnetic tape | |
JPH10511833A (en) | Apparatus for decoding channel signal into information signal and playback apparatus comprising this apparatus | |
KR0127222B1 (en) | Id code processing circuit for dvcr | |
JP2663441B2 (en) | Sync signal detection method | |
KR100192244B1 (en) | Digital signal processor | |
KR100595145B1 (en) | Signal processing unit | |
KR100223160B1 (en) | Method and device for recording/detecting sync. signals of a digital vcr |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |