This invention relates to cable television delivery systems for providing television programming to consumer homes in digital format. More particularly, the invention relates to new technology for the cable headend portion of a cable television delivery system capable of handling digital video/audio signals.
Today's television delivery systems are designed to deliver analog video/audio signals from the signal source to viewer televisions. With the introduction of digital technology for video/audio, the future of television delivery systems requires conversion of the delivery systems from analog to digital video/audio.
Developments in digital bandwidth compression technology will allow for much greater throughput of television program signals over existing or slightly modified transmission media. The cable television delivery systems must be redesigned to take advantage of digital technology. The cable headend is a key part of a cable television delivery system and requires redesign.
Analog cable television delivery systems operate with an analog cable converter box in the viewer home which uses a television to display video programs. The converter box is connected via cable to a cable headend site.
Typically, each analog cable headend site has multiple satellite dishes. Each analog cable headend site's satellite dishes normally receives transponded signals from one or two satellites. A satellite has multiple satellite transponders. Although uplink sites and satellite dishes can transmit and receive multiple video/audio program signals, currently, each satellite transponder normally carries only one video/audio program at any given time. Typically, a transponder is dedicated to one channel of video programming. Further, there is generally one Integrated Receiver and Decoder per transponder (or channel) at the analog cable headend to receive the signal from the transponder.
In summary, current analog technology requires the combination of one uplink site, one satellite transponder, and one cable headend satellite dish to deliver each analog video/audio program to the cable headend. The cable headend uses several analog video/audio signals from multiple dishes and multiple transponders to provide multi-channel analog signals. The cable headend then transmits these analog signals on different transmission frequencies to the cable converter boxes in the viewer homes where one channel is selected.
Each television channel for analog video/audio transmissions for television is in a 6 MHz segment of bandwidth. An industry standard of 6 MHz was set in the year 1939 and the NTSC standard is still 6 MHz per channel of analog video. As television program delivery technology moves into the digital world the 6 MHz segments have no real technical significance, except in hybrid analog-digital converters.
In addition, today's cable television delivery systems carry signals which are scrambled for security reasons. Each vendor uses scrambling techniques that are incompatible with the every other vendor. There are two primary cable industry leaders in scrambling formats, Scientific-Atlanta, Inc. (SA), 4386 Park Drive, Norcross, Ga. 30093 and General Instrument Corporation, Gerald Communications Division (GI), 2200 Byberry Road, Hatboro, Pa. 19040.
Currently, a two step scrambling/descrambling process is used in cable television program delivery systems. During the first step, program signals are scrambled prior to satellite transmission and are descrambled at the cable headend. During the second step, program signals are transmitted in scrambled format to the viewer homes where an authorized converter box descrambles the signals. Primarily, two types of scrambling techniques are used between the cable headend and converter boxes in subscriber homes, video inversion and synch suppression. Thus, the final descrambling takes place at the converter box in the viewer homes using one of these two techniques.
General Instruments is by far the industry leader and has a virtual “lock” on the market for signal scrambling from origination point to cable headend. From the cable headend to the subscriber home, General Instruments and Scientific Atlanta have the greatest market shares, but face competition from competitors such as Zenith and Pioneer. Scientific Atlanta and General Instruments are also the primary producers of set top terminals for the U.S. cable industry. Therefore, cable headends may only service one vendor's converter boxes. Generally, cable headend scrambling equipment services either Scientific Atlanta converters or General Instruments converters. No standard scrambling or security measures have been agreed upon by the industry. In some cases, manufacturers can produce descramblers that are compatible with another's system.
Although no standard method for digital coding of moving pictures and audio has been established, the television industry through the International Organization For Standardization is working on a digital coding standard.
The use of digital video/audio signals for delivering cable television programming will require changing today's cable television delivery system. In particular, the analog cable headend described above will not operate in the digital environment. Methods of encryption and decryption also need to be examined.
What is needed is a cable headend which operates in the digital environment.
What is needed is a cable headend which can operate in both the digital and analog environment.
What is needed is a cable headend which receives multiple video/audio program signals from a single satellite transponder.
What is needed is a cable headend which can combine digital video/audio program signals for transmission to viewer homes.
What is needed is a cable headend which can send both analog and digital video/audio program signals to viewer homes.
What is needed is a cable headend which can combine selected analog and selected digital video/audio signals to be transmitted to viewer homes.
What is needed is a cable headend which can select discrete digital channels from a multiple digital channel feed and recombine the channels for transmission to the viewer home.
What is needed is a cable headend that can combine various digital video/audio signals to create tiered program offerings for viewers.
What is needed is a cable headend that can handle any necessary signal encryption or decryption.
Accordingly, there is an unanswered need for digital cable headend technology. There is a need for cable headend technology that takes advantage of digital compression techniques for video/audio program signals.
The present invention is designed to address these needs.
A preferred embodiment of the present invention is a digital cable headend system that allows full utilization of digital technology in a cable television delivery system. The cable headend is a key component of a digital cable television delivery system. The cable headend is the central component for receiving, combining and routing program signals to the viewer homes. The cable headend of the present invention provides much greater capability and flexibility than existing cable headends. Specifically, the Combiner, in combination with other components of the digital cable headend of the present invention, solves many technical problems and challenges.
The introduction of digital program signal technology presents several new challenges to cable television delivery systems. Digital technology will provide cable headends with hundreds of channels of programming. With this overwhelming number of programs, there must be a method of selecting or cherry-picking desired programs and/or filtering out unwanted programs received from a transponder. Also, since the programs are too numerous to pass through the limited bandwidth space in the concatenated cable to the viewer homes, the bandwidth available to homes must be effectively and efficiently managed. A limited number of programs must be selected to send to viewer homes.
In addition, the available bandwidth may differ from viewer home to viewer home. For example, a cable headend may service some cable viewers with a 550 MHz bandwidth signal (typically 50 MHz to 550 MHz) and some viewers with a 750 MHz bandwidth system. The cable headend must transmit the correct combined signal to the appropriate viewers. In a similar fashion, if concatenated cable systems with identical bandwidths require different offering of program selections, the cable headend must fashion two different combined signals with identical bandwidth, one for each concatenated cable system.
Satellite transponders act as conduits for the delivery of the digital program signals to cable headends. These satellite transponders send data in various data packet formats, at different data rates, and encrypted in one of several possible formats. Therefore, a cable headend must be able to receive, filter, combine and route signals received at different data rates for distribution to viewer homes. This requires the cable headend to delay and synchronize signals as necessary. The present invention solves these problems and others.
The cable headend also accommodates local cable and television companies with program time for local advertising and/or feature programming time availability in digital or analog form. Local digital or analog signals may be combined with satellite signals at the headend.
An important component of the new cable headend configuration is the Combiner. The basic functions of the Combiner are selecting video signals to be combined, handling video/audio signals at varying data rates (as necessary), packet switching and ensuring the integrity of the combined signal. The basic components of the preferred Combiner are a Control CPU, digital logic, and a serializer. The Control CPU in conjunction with digital logic performs the intelligent functions of the Combiner. Specifically, the Control CPU and digital logic select the video signals to be combined and ensure the integrity of the combined signal. This procedure is accomplished on the video data packet-by-packet. A variety of combinations of hardware and software may be used to perform the Combiner functions.
Combiners may be used in parallel or in series as needed to accomplish proper output of signal to set top boxes. The Combiner may be used in conjunction with various digital and analog cable headend configurations.
Four different categories of headends are described, mixed analog and digital, digital only, digital-in-analog-out, and a more complex embodiment which transmits television program information on a data signal to the set top terminal. These embodiments may each be built in a modular fashion and may service multiple concatenated cable systems having different available bandwidths.
It is an object of this invention to provide a digital cable headend for a cable television delivery system.
It is an object of this invention to provide certain needed components of a digital cable headend for use in cable television delivery systems.
It is an object of this invention to provide a versatile Combiner for a cable headend.
It is an object of this invention to provide a cable headend capable of operating in both the digital and analog environment.
It is an object of this invention to provide a cable headend capable of receiving multiple video/audio program signals from a single satellite transponder.
It is an object of this invention to provide a cable headend which routes both analog and digital video/audio program signals to viewer homes.
It is an object of this invention to provide a cable headend which can select one program from multiple video/audio programs received from a single satellite transponder.
It is an object of this invention to provide a cable headend which can filter out unselected programs from a multiple video/audio program signal.
It is an object of this invention to provide a Combiner component for a cable headend which combines digital video/audio signals and analog video/audio signals.
It is an object of this invention to provide a Combiner component for a cable headend which combines digital video/audio signals received from two different transponders.
It is an object of this invention to provide a Combiner component for a cable headend which combines digital video/audio signals of different data rates.
It is an object of this invention to provide a Combiner component for a cable headend which performs packet switching.
It is an object of this invention to provide a cable headend which combines selected analog and selected digital video/audio signals to be transmitted to viewer homes.
It is an object of this invention to provide a cable headend that creates tiered programming by combining various digital video/audio signals.
It is an object of this invention to provide a cable headend that receives a large bandwidth of video/audio programming and selects programs from among the large bandwidth to accommodate a limited bandwidth between cable headend and viewer homes.
It is an object of this invention to provide a cable headend that accommodates different bandwidth availability between cable headend and certain viewer homes.
It is an object of this invention to provide a cable headend that decrypts signals.
It is an object of this invention to provide a cable headend that encrypts signals.
It is an object of this invention to provide a cable headend that decrypts signals received in various encryption formats and encrypts all signals transmitted to viewer homes into one encryption format.
It is an object of this invention to provide a modular headend.
These and other objects and advantages of the invention will become obvious to those skilled in the art upon review of the following description, the attached drawings and appended claims.
a is a schematic of one cable headend servicing three different concatenated cable systems each with a different available bandwidth.
b is a schematic of a modular digital cable headend system servicing two concatenated cable systems.
a is a schematic of the primary components of a digital cable headend with Combiner for a digital cable television delivery system.
b is a schematic of the primary components of a digital/analog cable headend for a combined digital and analog cable television delivery system.
a is a schematic of the primary components of an alternative embodiment for a digital cable headend with Combiner and remote control access.
b and 6c are schematics of the components of alternative embodiments for a digital cable headend.
a is a more detailed schematic of the components of the preferred embodiment of the Combiner.
b is a schematic of the output control logic for the Combiner.
a is a high level software flow chart for control CPU software which controls the Combiner.
b is a software flow chart of the Control Output Gates subroutine of the Control CPU software shown in
c is a software flow chart of the Delete Packets subroutine of the Control CPU software shown in
In analog systems of today, each satellite 30 has multiple transponders 26. Each transponder is only capable of handling a single (or in rare cases, two) analog television program at a time. The received analog television program signals are combined by the cable headend 34 and routed to the concatenated cable system 32. The one program per transponder limitation of the analog television delivery system can be eliminated with the introduction of digital technology.
Those of ordinary skill in the art are presumed to have a familiarity with digital coding of moving pictures and associated audio. Specifically, the preferred embodiment uses the MPEG-2 standard of coding and those of ordinary skill in the art are presumed to be familiar with the MPEG-2 standard. The MPEG-2 Systems Working Draft Proposal from the Systems Committee of the International Organization For Standardization, document ISO/IEC JTC1/SC29/WG11 “N0531” MPEG93, dated Sep. 10, 1993, is hereby incorporated by reference.
The digital cable delivery system 40 of the invention generally employs digital compression techniques to increase existing satellite transponder 52 capacity by at least a 4:1 ratio, resulting in a four-fold increase in program delivery capability. Current digital compression techniques allow up to a ten-fold increase in program delivery capacity. As compression techniques improve, the ratio will increase. The input signals containing television programs are compressed, combined and encoded prior to satellite transmission, and subsequently transponded and transmitted to various receive sites. There are a number of compression algorithms that currently exist which can achieve the resultant increase in capacity and improved signal quality desired for the invention.
One of the achievements of the new system is effective utilization of digital compression technology. For example, with current digital compression techniques for video, the typical 50-channel capacity cable satellite receiving system can be increased to 300 channels. In the present analog configurations, one transponder is used for each satellite delivered channel (
Typical program delivery first involves the digitizing of the video signals. The digitized signal can be compressed by any one of a variety of digital compression techniques that are available. Three basic types of digital compression techniques are available: within frame (intraframe) compression, frame-to-frame (interframe) compression, and within carrier compression. All of these techniques are used in the MPEG compression standard. Following compression, the channels must be multiplexed and sent to the satellite dish (e.g., the dish 54 of one of the digital uplinks 46) that will provide the uplink. A variety of multiplexing schemes may be used in the system. In some situations, it may be advantageous to use different multiplexing schemes in different parts of the overall system. For example, one multiplexing scheme may be used for satellite transmission and a second remultiplexing scheme may be used at the cable headend 42 for combining the signals for land transmission.
Once the signal has arrived at the uplink or master control site 46, it must be modulated, upconverted, and amplified. Various types of satellites and transponders 41, 52, respectively, capable of handling digital signals, may be used in this cable television packaging and delivery system 40. An example of a satellite 41 which is being used in cable television delivery systems is the AT&T Telstar 303. These satellites 41 can be used for both digital and analog program transmission.
In one embodiment, the input signals into the cable television delivery system 20 are packaged prior to uplink by an Operations Center 56 as described in the parent application Ser. No. 07/991,074, filed Dec. 9, 1992, entitled TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM WITH MENU DRIVEN SUBSCRIBER ACCESS, and filed by the same assignee and incorporated herein by reference. Included in the program signals, which are pre-packaged, is information which enables equipment at the subscriber's home to display menus for choosing particular programs. After packaging, the packaged television program signal is prepared for satellite transmission and sent from the Operations Center 56 to the cable headend 42 via satellite transmission.
Depending on the specific embodiment, the television program signal may need to be compressed, combined/multiplexed, encoded, mapped, modulated, upconverted and amplified. The digital cable delivery systems, which are intended to be compatible with existing C and Ku Band satellite transmission technologies, accept video, audio and data signals ranging in signal quality, and supplied from a number of sources.
Upon receipt of the programming signal at the cable headend 42, the signal is manipulated and sent into a concatenated cable system 50 to subscribers' homes. In the preferred digital embodiment, the signal reaches a subscriber's home, at a set top terminal 58, in a compressed format and must be decompressed prior to viewing. Depending on the particular embodiment, the television program signal may arrive at a subscriber's home via one or more coaxial cables, fiber cables, twisted pairs, cellular telephone connections, personal communications network (PCN) hookups or other communication media. Any of a variety of transmission means or transmitters known in the art may be used to transport the signal by way of one of the transmission media described.
The connection between a subscriber's home and the cable headend 42 may also allow for two-way communications with the cable headend 42. Utilizing this two-way communications, the cable headend 42 can receive information about a subscriber's account, billing, and programs viewed. Also, the cable headend 42 is capable of sending computer data or computer software information to a subscriber's home.
As shown in
With the cable headend 42 of the present invention, the analog television programming may be combined and transmitted to viewer homes along with digital television programming signals. The digital transmissions do not affect the analog system 40. In fact, the 6 MHz analog cable signal may be transmitted simultaneously on the same cable as the digital signal, provided two signals are transmitted using separate carrier frequencies. With the present invention, the cable headends 42 may continue to supply subscribers with local channels in an analog signal format. Alternatively, the analog signals can be digitized and digitally compressed at the cable headend 42 prior to combining. Video services may be used that accept analog feeds from around the country and “repackage” the analog feeds into digital multiplexed feeds containing multiple video channels. The cable boxes or set top terminals 58 installed in the viewer homes may be configured to accommodate digital television programming only, analog only, or both.
Bandwidth Allocation
a depicts a cable headend 42 receiving and routing television programming. More specifically, it shows a cable headend receiving a greater amount of television programming than needed and routing the proper television programs to the proper portion of the cable systems. The digital cable headend of the present invention can perform bandwidth allocation in several ways.
In order to accommodate cable TV systems that have different bandwidths and channel capacities, the cable headend transmits signals of different bandwidths to portions of the concatenated cable system. To accomplish this breakdown, the television programming may be divided into parts such as priority one, two, and three programming. The large bandwidth cable TV systems can accommodate all the parts of the television programming (priority one, two, and three). Those cable TV systems with a more limited bandwidth between cable headend and viewer home are able to use the program delivery system by only accepting the number of parts that the cable system can handle within its bandwidth.
For instance, as is shown in
With this division of television programming, the program delivery system 40 and cable headend 42 may be utilized simultaneously by a variety of concatenated cable systems with varying system capacities. By placing the heavily watched or more profitable programming in the priority one division, both users and owners of the cable TV systems will be accommodated as best as possible within the limited bandwidth.
Using this preferred embodiment, the uplink is able to send one signal “s” to the satellite 41 that is sent to the cable headend 42. Each cable headend 42 accepts the entire signal and customizes the signal for the local cable system by stripping those portions of the satellite signal “s” that are unable to be handled by the local cable system 60, 62, 64. This eliminates the need for requiring the uplinks 46 to send different signals for reception by different capacity cable headends 42.
There are several ways in which the cable headend 42 may strip the unnecessary signals. A person skilled in the art will derive many methods from explanation above and the three examples discussed below.
The first method is for the signal to be sent in portions with each portion having a separate header. The cable headend 42 would then recognize the headers and transmit to the concatenated cable system only those signals in which the proper headers are identified. For example, using three concatenated cable systems 60, 62, 64 shown in
For this first method, a central Operations Center 56 must divide the program signal into three parts and send a separate leading header before each signal for each part. This method requires the additional signal overhead of a header on the program signal. The header would be transmitted from time to time as necessary.
A second method requires a set of transponders 52 to be assigned to each priority level and the cable headend 42 to route signals from the transponders 52 corresponding to the proper priority level for the concatenated cable system 60, 62, 64. For example, if there are three priority levels and 18 transponders 52, transponders 52 one through nine may be assigned to priority level one, transponders 52 ten through fourteen priority level two, and transponders 52 fifteen through eighteen assigned to priority level three. Thus, a concatenated cable system (e.g., medium bandwidth system 62) capable of operating only at priority level two, would only receive signals from transponders 52 one through nine, and ten through fourteen from the cable headend 42. The program signal from transponders fifteen through eighteen would not be transmitted to the priority level two concatenated cable system.
The third and preferred method is for the cable headend 42 to pick and choose programming from each transponder 52 and create a customized priority one, two, and three signal with chosen television programming. The cable headend 42 would then route the appropriate customized signal to each part of the concatenated cable system 60, 62, 64 that the cable headend 42 serves. This third method requires that the cable headend 42 have a component, such as a Combiner as described below, which can select among programs prior to combining the signal for further transmission on a concatenated cable system. In this manner, a single digital program may be selected from a transponder 52 carrying multiple digital programs.
b shows an example of a cable headend 42 servicing two concatenated cable systems. In particular,
In this example, RF signals 70 are received via satellite or land line and sent to two different groups of equipment.
The system of
Using this modular equipment concept almost any combination of signals with different bandwidths may be produced for transmission to the viewer homes. Also, using this system, analog and digital signals may be sent on the same concatenated cable system. Combined analog and digital signals involving 48 MHz, 72 MHz and 108 MHz or other bandwidth of digital capacity on a mixed analog digital system are possible using the example shown in
Preferably, the equipment for both the 550 MHz equipment group 72 and the 200 MHz digital equipment group 76 are able to select individual programs (or channels) from among the many programs (or channels) received on the multiple RF signals 70. Alternatively, certain RF signals 70 may be sent to the 550 MHz equipment group 72 and other RF signals 70 may only be sent to the 200 MHz equipment group 76. This can be accomplished by assigning each group of equipment to receive signals from specific satellite transponders 52 (e.g., transponders 1 through 9 assigned to equipment group one, transponders 10 through 14 assigned to equipment group two). Various priority levels can be distributed to viewer homes using a modular headend design. If transponders 52 are designated or assigned to certain priority levels, then each equipment group may be assigned priority levels and receive signals from specific transponders.
Digital Version
Information on local avails 84 (or local programming) is provided to the Control CPU 90 either manually by an operator or through a remote signal from a national site (not shown). For manual entry of local programming information, a workstation 91 or terminal is provided. Although a simple terminal with a CRT can accomplish the data entry, a workstation 91 with a graphical display and a mouse is preferred. From this workstation 91, numerous commands and a variety of data is provided to the Control CPU 90. A modem 116 is provided for receiving local avail information 84 from a remote location. A variety of communication methods may be used to receive the local avail information from the remote site. Using the demultiplexed data signal and information on local avails, the Control CPU 90 inserts any necessary local programming using the local insertion device 92.
It is preferred that the local insertion device 92 receive local programs (video/audio in digital format) for insertion directly from a separate feed 94. The separate feed 94 may be an analog feed with a digital encoder 96 or a direct digital feed 98. The local programming may be commercials or full length programs. The local insertion device adds local programs onto the digital video signals based on instructions from the Control CPU 90. Following passage through the local insertion device 92, the signal is processed through a multiplexer 100 and modulator 102 before transmission to set top terminals 58 at the viewer homes.
Using the data signal from the transponders 52 and the local avail information 84, the Control CPU 90 shown generates a digital data signal called the set top terminal control information stream (STTCIS). The set top terminal control information stream is modulated and also sent to the set top terminals 58. A variety of information to assist the set top terminal 58 may be sent on this control information stream (as discussed with
Digital Version—with Combiner
a shows the basic components of a cable headend 42 with a Combiner 104 that only handles digital television programming signals 103. The operation of the cable headend 42 is controlled by the Control CPU 90 which may receive data signals from a remote source (not shown).
After an incoming signal is demodulated by demodulators 106 and demultiplexed by demultiplexer 88 into separate television programs, the signal is processed through a packet switcher and combined with other television program signals. This combining is performed by the Combiner 104 with the aid of the Control CPU 90.
After being combined, the signal is modulated by the modulator 102 and transmitted to one or more concatenated cable systems 50 to the viewer homes. If different bandwidths of television programming are required for different portions of the cable system, more extensive hardware and software is required for the Combiner 104. Multiple Combiners 104 can be used in parallel or in series to accommodate concatenated cable systems 50 with different bandwidths as described later. Also, multiple Combiners 104 can be used in a modular system design as shown in
A portion of the digital signal received by the headend 42 may be a digital data signal 103 from a remote location. This digital data signal 103 is processed through the demodulators 106 and demultiplexers 88 before being communicated to the Control CPU 90. The Control CPU 90 will use the signal as necessary to assist in the combining process.
Digital and Analog Version—with Combiner
b shows a similar system to
The analog signals 107 which are modulated are simply placed directly on the concatenated cable system 50 at an appropriate unused location in the bandwidth (currently 6 MHz of available bandwidth is required). Using this method of including analog programs at the headend 42 produces a mixed analog and digital signal for use by the set top terminal 58. Appropriate set top terminal equipment is necessary to handle the mixed analog and digital program signal. The set top terminal 58 tunes to the correct 6 MHz within the signal spectrum for reception of programs transmitted in analog format.
Although two methods of including analog signals 107 are shown in the same headend 42, either method may be sufficient by itself. Digitizing analog program signals 107 using a digital encoder 108 is preferred since this method allows a completely digital output to be transmitted to viewer homes. Use of a digital encoder 108 also simplifies local insertion of programs by the Control CPU 90.
Details on System Operation
a shows a more detailed embodiment of an advanced system headend 42 that handles only digital signals 117. This embodiment shows that the transponder 52 information can be packaged or organized by subject matter before transmission to the headend 42. For example, one transponder 52 carries sports programming, another carries Movies, a third carries Magazines, etc. This organization of programming is not necessary for the operation of the system 42.
This embodiment also provides for remote control of the Control CPU 90 by modem 116. The embodiment of
The Integrated Receiver Components (IRCs) 118 shown demodulates and unscrambles (if necessary) the received transponder signals which may contain 4, 6, 8, or more audio/video channels of information. The IRC 118 demodulates the transponder signal into a digital bit stream of multiplexed digitized MPEG 2 format video. In an alternative embodiment, descrambling is performed by a separate descrambler. In another alternative embodiment, the multiplexed MPEG signal is encrypted before transmission to the headend 42 and decrypted by the IRC 118.
The demultiplexers 120 separate the multiplexed signals into separate individual MPEG format digital channels. Although
The Control CPU 90 of
The Combiner 104 combines the enabled or selected outputs of the demultiplexers 120 into the proper format. The Combiner 104 then outputs the signals to a modulator 102. Although a digital Quadrature Amplitude Modulator (QAM) or like device is preferred, various different types of modulation techniques may be used with the invention.
The QAM outputs a modulated RF carrier combined with other carriers onto the cable system 50. The converter boxes 58 in the homes select and demodulate a particular channel selected by the user. Although cables are the most common transmission media to homes, any media including fiber, microwave transmission or telephone lines may be used for carrying the signal.
b shows a nearly identical embodiment as
b shows an embodiment which can perform decryption and/or encryption (if necessary) with decryption and encryption equipment 126 located between the demultiplexers 120 and the Combiner 104. There is no cable industry standard that has been established for digital encryption. Generally, each set top terminal vendor uses a separate encryption/decryption methodology. In the large digital delivery systems of the future, the digital video programs will likely be encrypted to suit particular set top terminal vendor decryption equipment before the programs are transponded. Thus, incompatibility problems may arise between encrypted signals received by transponder 52 and a digital headend's 42 set top equipment 58 being serviced. This problem may be solved through the use of decryption and encryption equipment 126 at the headend 42.
Once the signal 117 has been demultiplexed 120 into separate video “channels,” it may be decrypted and encrypted 126. The unwanted encryption format may be removed by decryption. A new encryption methodology, consistent with the decryption of the set top equipment 58 serviced by the headend 42, may be added by encrypting the signal (at the headend 42) before transmission to the set top terminals 58. Although a variety of digital encryption methodologies may be used with the invention, the Digital Encryption Standard (DES) widely used in the defense industry is a preferred method.
Although the decryption/encryption equipment 126 is shown located after the demultiplexers 120 and between the error correction 124 and the Combiner 104, it may be located elsewhere. For example, the equipment may be located within some of the Combiner 104 components (described later) or it may also be located in a different location with reference to the error correction 124.
c shows a digital-in-analog-out headend 42′ which utilizes a Combiner 104 comprising MPEG Decoders 132 and analog modulators 134. The video is received in digital format, manipulated, converted and transmitted to the set top terminals 58. In this particular design, the video is converted from digital format to analog format for transmission to the set top terminals 58 (in analog format). Using this embodiment, the advantages of compressed video transmissions over satellites can be realized without changing a large installed base of analog set top terminals 58.
RF signals 70 are received by the headend 42 from satellite, landline or other means of communications. The Control CPU 90 shown may be remotely controlled or given specific instructions locally. The Control CPU 90 instructs the demultiplexers 120 on the identification of a subset of the digital video signals. This subset of video signals are selected for further processing by the headend 42′.
Following selection of the digital video, the digital video signals are processed through decoders 132.
The following is an example of one program, a sports program, being processed. A desired sports program may be received at the cable headend 42 from a transponder 52 designated for sports. The demultiplexer 120 assigned to the sports transponder is instructed to select the desired sports program. The sports program is then decoded into analog format and processed through an analog modulator 134. The analog modulator 134 may then place the program into 6 MHz of available bandwidth (e.g. between 544 MHz to 550 MHz) on the concatenated cable system 50.
The Combiner 104 can be used in conjunction with a variety of headend 42 components. Those skilled in the art will recognize that a variety of component substitutions can be made to the headend 42 within the spirit and scope of the invention.
Combiner System Hardware
In this embodiment, data is received by a Control CPU 90 along with any local avails 84. The Control CPU 90 generates a data signal, the set top terminal control information stream. The data signal is processed by the data modulator 102 and transmitted to the set top terminal 58. The Control CPU 90 also sends control signals to the digital logic 146.
The control signals instruct the digital logic 146 on the video to be combined. The digital logic 146 selects the videos to be combined and sends the video signals to the serializer 148 in an appropriate timing sequence. The serializer 148 subsequently creates one signal for transmission to the set top terminal 58.
In addition to providing instructions to the Combiner 104 for selection of videos, the Control CPU 90 effectuates the combining process and monitors the process to ensure the integrity of the combined signal. The hardware configuration of
The configuration block 152 receives instructions from the Control CPU 90. The configuration block 152 instructs the control FIFOs 154 and the logic block 153 on the video signals to be passed. The configuration block 152 configures the Combiner 104 by providing the necessary information to assign FIFOs 156 to handle specific program signals included within the digital video data stream 168.
The logic block 153 consists of the following sublogic elements: a receiver 162, identifier check 164, and a Cyclic Redundancy Check (CRC 166). The logic block 153 receives a digital video data stream 168, a clock signal 170, and a configuration signal 172 (from the configuration block). The logic block 153 outputs control signals 174 to the Control FIFO 154 and data signals 176 to a bank of FIFOs 156. The receiver 162 and identifier check 164 use the configuration signal 172 to determine the identity of video data to be passed through to the FIFOs 156. In this manner, the logic block 153 divides the video data stream 168 into its component parts. The identifier check 164 examines the addresses (or other identifying data) attached to the video data to separate the video data into parts, each part being a different program. A CRC 166 or other check may be included with the logic block.
Each FIFO 156 acts as a buffer, temporary storage, and passes packets of video to the output gates 158. Preferably, there is one logic gate associated with each FIFO 156. FIFOs 156 and logic gates commonly used in the electronics industry can provide the capabilities described. In the preferred embodiment, the FIFOs 156 include level indicators or “trigger points” to assist the Control CPU 90 in closely monitoring the data flow. To limit the breaking up of segments of data, it is preferred that the FIFOs 156 be at least large enough to hold an integer number of frames or packets of data.
If delaying of programming and minor changes in program scheduling is acceptable, then FIFOs 156 may provide large temporary storage. This storage capacity will allow minor time shifts in programming to ensure that no overflow conditions occur. The FIFOs 156 must be large enough to handle the worst case, or highest burst of speed on all channels without overflowing. Any loss of data from a FIFO 156 would result in picture disruption. The disruption may be very annoying to viewers.
In the preferred embodiment, where cost and maintaining an exact program schedule is important, the FIFOs 156 are not large enough to handle all overflows. Regardless of the size of the FIFOs 156, timing considerations are still important. The size of the FIFOs 156 is dictated by a series of factors such as cost, acceptable loss of data, scheduling and timing concerns. These factors must be balanced to determine the size of the FIFOs 156 needed for any particular embodiment.
Data re-synchronization is a complex part of the Combiner's 104 task. The logic block 153 monitors all the FIFO 156 activity and according to a fixed algorithm, will control the output gates 158. The logic block 153 and control FIFO 154 effectively open and close the gates 158 in a fashion that maintains constant output to the modulator 102 while not allowing any FIFO 156 to overflow data. There may be times when the data flow is too slow and dummy data may need to be placed in the data stream 168 before the final output to the serializer 148. This is necessary to maintain a full bit stream speed to the set top terminals 58.
The output gates 158 pass the video to the serializer 148. The serializer 148 converts the data stream 168 from the FIFOs 156 (preferably 8-bit wide) into a single bit output stream. The stream is placed on the cable system or other transmission media.
a and 9b show a more detailed schematic of one hardware implementation of the Combiner 104.
Referring to
The receiver 162 accepts a serial MPEG data stream and clock information 170 from the IRD 86. The receiver 162 converts the data into parallel 8-bit wide information. Each 8 bits of data received is compared using the address check 164′ (or other identifier or address check 164′) to addresses stored in the address check 164′. If there is an address match, the data of that particular packet is routed to the appropriate FIFO 156 which is handling data for that address. If there is no match, then the data is not routed to any FIFO 156. In other words, unneeded video/audio bit streams are not routed to any FIFO 156 but are simply ignored.
Each FIFO 156 is assigned to handle a particular video signal. These assignments may be made dynamically. The assignments are not required to be in any particular order, any FIFO 156 can be assigned any video. In alternative embodiments with FIFOs 156 of different size, fast video signals are assigned to larger FIFOs 156. Since the video signal's MPEG packets are addressed, each FIFO 156 is assigned to receive certain video packets in MPEG format that have the appropriate address assigned to that FIFO 156.
The FIFO control 154 also increments the FIFO 156 input address counter. In this manner, the control logic 154 is able to monitor the level of video packets input to the FIFO 156 and send the appropriate signal to the Control CPU 90 when the FIFO 156 is reaching its capacity. It also allows the Control CPU 90 to monitor the levels in each FIFO 156.
The FIFO control block 154 increments a FIFO 156 input and output address counter. In this manner, the FIFO control block 154 can keep track of both the input and the output flow to each FIFO 156.
The cyclic redundancy check (CRC 166) calculates the CRC 166 of the data section of the packet on the fly so that when the last byte of data has been latched into the FIFO 156 the calculated CRC 166 can be compared to the CRC 166 appended to the end of the data section of that packet. If there is a difference in one or more bits of the 32-bit CRC 166, then an error flag is set to indicate a flawed packet is coming through. The Control CPU 90 and control logic 154 must decide whether or not to pass flawed packet. It may also be possible to correct the error downstream after the serializer 148 but prior to the modulation.
Each time the output gate 158 is enabled, a number of packets are transferred to the serializer 148. In the preferred embodiment, no subsets of packets are transferred to the serializer 148. The serializer 148 converts 8-bit wide data from the FIFOs 156 into a single bit output stream.
Software
a is a high-level flow chart of the software resident at the Control CPU 90 to operate the Combiner 104. The Control CPU 90 sends appropriate instructions to various components of the Combiner 104 to ensure the selection of appropriate videos and that the video signals are combined in an appropriate manner. All of the software shown in
The Control CPU 90 will first receive commands from a central site (block 200). These commands will include which video signals should be selected and other information such as the types of signals (fast or slow video signals), whether the video is encrypted and the encryption methodology used, etc. The video can be categorized or “typed” by the bit rate of the data flow such as slow medium and fast data flow. Fast video or fast changing video with a great deal of movement requires a “faster” bit rate than slow moving video or still video.
Some video segments (or channels) may require less data flow because of less background movement or motion (slow video signals), while other video segments may require greater data flow because of more background motion and changing details (fast video signals). For instance, action scenes in sports or movies require greater video data than still pictures or pictures with mostly blue sky background. In the preferred embodiment, this type of information on the video segments is received by the Control CPU 90 from the central site. Alternatively, the video type information (fast or slow) may be determined using digital equipment at the headend 42. This digital equipment senses the amount of data and determines the type of video being received.
Upon receipt 200 of the information from the central site, the Control CPU 90 will check that the video combination requested by the central site is an acceptable combination of video feeds (block 204). If the central site (block 200) has requested a combination that is beyond the capability of the Combiner 104 equipment located at that cable headend 42, a notification signal (block 208) will be sent to the central site (block 200) requesting new information. The combination of video feeds (decision block 204) may be inappropriate for a variety of reasons, including too many video feeds (which is determined by decision block 204) or too many video packets to combine (or too much fast changing video, fast video). Although only one verification check is shown for the information received from the central site, those skilled in the art will realize that many verification checks on the information from the central site may be conducted. Following verification, notification or reject signals may be sent to the central site.
Following the verification checks, the Control CPU 90 sends video configuration data to the configuration logic (function block 212). This configuration data will inform the Combiner 104 of each video signal to select and each signal to de-select.
The software (block 200), which receives information from the central site, verifies it, and generates configuration data to send to the configuration logic, (function block 212) may be executed at irregular intervals. The remaining portions of the software should be executed on a regular basis.
The Control CPU 90 monitors (block 216) each FIFO 156 to determine what percentage of FIFO 156 capacity is filled. To accomplish this task, the Control CPU 90 will receive electrical signals from either the control FIFO 154 or each individual FIFO 156. These signals will be analyzed and a determination on the level of each FIFO 156 is made. Following this analysis, the Control CPU 90 will determine if any one FIFO 156 exceeds the first threshold level set on percentage of capacity filled (e.g., 75% filled) (decision block 220). If one of the FIFOs 156 exceeds the first threshold level of, capacity filled, then an overflow condition exists. If there is an overflow condition, the Control CPU 90 must take steps to determine which packets of information may be deleted, 224. This is further described in
Following the control of the output gates (block 228), the CPU 90 determines whether it has received further information from the central site (block 200) or whether it is time for it to reconfigure the selected videos (decision block 232). If the Control CPU 90 has received new signals from the central (site block 200), then it processes those signals and determines whether there are any changes to the video selection. If it has not received any signals from the central site, it still determines whether it has reached a time period, such as on the hour or on the half hour, when changes to the selected video are required. If changes are required or a new configuration is required, the software will cycle to the subroutines which handle the configuration.
b is an example of the software flow for the controlling of the output gates (block 228). The Control CPU 90 receives specific information on the level of data in each FIFO 156 (function block 236). It checks each FIFO 156 to determine the percentage of the FIFO's 156 capacity that has been filled (block 240). Following this check, the Control CPU 90 determines the priority of each FIFO 156 for sequencing, 244.
A variety of analytical and statistical methods may be used to determine the priority of the FIFOs 156 for sequencing. Some factors which should be considered are whether the video feed to that FIFO 156 is considered a fast video feed and designated as such, how quickly the FIFO 156 is receiving additional information from its video feed, and whether that FIFO 156 has had video packets recently deleted.
The simplest method of determining priority would be to simply make the FIFO 156 with the least available capacity (remaining) the number one priority for sequencing. In this manner, FIFOs 156 would be sequenced in accordance with their levels. However, other information should be taken into account to more accurately prioritize the FIFOs 156 and receive better results from the Combiner 104. For example, the FIFOs 156 which are receiving “fast” video signals and in the recent sampling have received large quantities of video data, are more likely to require a higher priority than an equally filled FIFO 156 that is receiving “slow” video and recent sampling has shown that it is receiving data at a slow rate. With the proper prioritizing, most overflow conditions are avoided.
Following prioritization the Control CPU 90 steps to the next priority FIFO 156 (function block 248). At this time, the Control CPU 90 signals the appropriate FIFO 156 output gate to release the video/audio information, 252.
c shows a simple example of how the overflow condition may be handled with software at the Control CPU 90. This subroutine 224 must determine which packets of video/audio information are to be deleted and how many packets are to be deleted. Prior to exiting from this subroutine, the software must correct the overflow condition, as represented at function block 256. The first step in the subroutine is for the software to check the particular FIFO 156 that has triggered the overflow condition. The subroutine then determines whether the next MPEG video packet in that particular FIFO 156, the overflow FIFO 156, is a less important MPEG video packet (decision block 260). A less important video packet may be defined in many ways. However, timing and synchronization information is considered important in most instances. One example of a less important video packet is a one that contains fine detail about the video picture. A less important MPEG video packet provides video information on the fine details of a moving picture.
If it is found that the next MPEG packet is a less important packet (e.g., fine), that less important packet may be deleted, block 264. If the next packet in the overflow FIFO 156 is not a less important packet, then the system moves on to the next FIFO 156, which is at the second highest level of capacity (block 268). The subroutine 224 now returns to check (block 260) this FIFO 156 to determine whether the next MPEG packet is a less important MPEG packet. This loop of checking each FIFO 156 for a less important packet continues until a less important packet is found or until the loop has checked each FIFO 156, whichever event occurs first.
Once the subroutine 224 has either found a packet to delete or cycled through all the FIFOs 156, it proceeds to another decision. The subroutine's 224 next decision is whether it is necessary to delete any additional packets. To make this decision, the subroutine 224 determines whether any of the FIFOs 156 are over a second threshold level that is set (e.g. 80 or 90% full), as at decision block 272. If there are FIFOs 156 that are over the second threshold level, then the subroutine 224 will delete an entire MPEG video packet (block 276) but it will not delete timing information. Preferably, the packet deleted is an MPEG video packet from the same FIFO 156 that the subroutine 224 has deleted the fine packet. If the second threshold level is not reached, then the subroutine 224 checks whether the first threshold level is reached (block 280). If the first threshold level is still surpassed, then the subroutine 224 begins anew and looks for a FIFO 156 with a fine MPEG packet to be deleted.
A number of threshold levels may be checked with varying degrees of actions taken to avert overflow problems (e.g. 75%, 85%, 95%). The higher the threshold the more detrimental (or serious) the action taken by the subroutine 224 to prevent catastrophic signal disruption to the viewer.
Although this subroutine 224 can be performed in a variety of manners, it is preferred that those MPEG packets (block 276) having the least effect on the video are deleted first (less important). Therefore, synchronization signals would not be deleted. It is preferred that fine detail MPEG video packets of information are deleted first. Using the subroutine 224 shown, it is likely that the fine detail MPEG packets (block 276) on fast moving video would be the first packets to be deleted. These packets are the least likely to affect a subscriber's picture. Since it is a fast moving video picture, one MPEG packet providing fine details on that picture is likely to go unnoticed to a viewer's eye. If larger, more important packets of information are required to be deleted, the viewer may notice a momentary pause in his video picture or a slight distortion in a subset of the screen. This will occur because new video to refresh the screen would be deleted and the next picture is delayed. Those skilled in the art will realize that many subroutines 224 which can control the overflow condition can be used.
Advanced Embodiment
The Operations Center 56 shown, is a central site 200 which performs program packaging and delivery control. Program packaging involves the organization of programs and digital information about the television programs for use by the cable headend 42 and the viewers. In the preferred embodiment, the packaged program signal will be treated at a master control uplink site 46 prior to being transmitted to the satellite 41. Various satellite multi-accessing schemes and architectures can be used with the system, including both single channel per carrier (SCPC) frequency division multiplex (FDM) and multiple channel per carrier (MCPC) time division multiplexing (TDM). Time division multiplexing is the more desirable scheme. The signal is transmitted from the satellite 41 to the cable headend 42 where the signal is treated and delivered through cables to a subscriber's home. The Operations Center is described in detail in U.S. Ser. No. 08/160,282 entitled, OPERATIONS CENTER FOR A CABLE TELEVISION DELIVERY SYSTEM, filed on Dec. 2, 1993, now U.S. Pat. No. 5,659,350, by the same assignee and incorporated herein by reference.
The cable headend 42 receives the digitally compressed and multiplexed signal from the satellite 41 and processes the signal for further distribution to the subscriber homes. The cable headend 42 of this embodiment performs two primary functions in the cable delivery system. It will act as a signal processor 300 and distribution center for routing the digitally compressed signals to subscribers and it will act as a network controller 304 receiving information from subscribers and passing the information on to the Operations Center 56 or other remote sites (such as regional, statistical and billing sites not shown).
In order to perform these two functions, the cable headend 42 of the preferred embodiment is equipped with two computer processors working in unison. Use of two processors performing different functions increases the speed and capability of the cable headend 42 without a significant increase in cost. One processor, the Control CPU 90 in the signal processing system, handles the receiving, processing and combining of the satellite 41 signal for distribution to subscribers. The second processor acts as a network controller 304 and monitors activity of the subscriber's set top terminal 58. The cable headend 42 can be operated by one CPU or a series of CPU's which perform the Control CPU 90 and network control functions.
The signal processing system 300 will treat the signal as necessary for use by the subscriber's set top terminal 58. In the simplest embodiment, the amount of processing that is necessary by the signal processing system 300 is limited to demultiplexing and frequency allocation. However, in the preferred embodiment, the signal processing system 300 demultiplexes the signal, processes the signal through the Combiner 104, allocates frequencies and then re-multiplexes the signal using a different multiplexing scheme prior to the signal's distribution to the subscriber. In addition, for embodiments in which the control of local availability time is desired at the cable headend 42, the signal processing system 300 must be capable of compressing and adding additional signals to the satellite 41 signal.
In order to incorporate local programming, the signal processing system 300 would demultiplex the satellite 41 signal, compress the local programming, combine the compressed local program with the satellite 41 signal and then multiplex the signal prior to delivery to the subscriber terminals 58. Local programming in analog format may also be combined by the Combiner 104 as described earlier. Most of the activities necessary for incorporating local programming will be automatically performed by the signal processing system 300. In the preferred embodiment, the signal processing system 300 incorporates all the necessary digital switching capability to serve numerous subscribers and multiple concatenated cable systems 50, as shown in
Although it is possible, it is preferred that the cable headend 42 does not perform any video decompression. Signals received by the cable headend 42 must be decompressed before transmission from headend 42 to subscriber location only when the compression algorithm used for the cable system differs from the one used for satellite transmission 41. Separate compression algorithms may be used to maintain desired signal quality and throughput over both of the transmission mediums. Also, digital compression is needed if the cable headend 42 operator wishes to transmit local analog signals to viewers in digital form. These analog signals received by the cable headend 42 require encoding before transmission to viewer homes (as shown earlier in
In the preferred embodiment, two-way communications between the network controller 304 and set top terminal 58 will occur over cable lines. Interactive television programming can be accommodated through the network controller 304. In addition, the network controller 304 will be able to access set top terminals 58 via phone lines for trouble shooting, special features or sophisticated reprogramming.
To perform its functions, the network controller 304 must work closely with the signal processing system 300. In many instances the data signal (also called the program control information signal) received from the Operations Center 56 must be modified prior to being sent to the set top terminals. These modifications to the program control information are made by the network controller 304 working in conjunction with the signal processing system 300 to send a set top terminal 58 control information stream (STTCIS). From the signal processing system 300, the network controller 304 receives the program control information signal which includes cable franchise specific information added by the Operations Center 56. The network controller 304 modifies the program control information signal, if necessary, and communicates the new information to the signal processing system 300. The signal processing system 300 then forwards the information to the set top terminal 58 in the form of the STTCIS. In most instances the network controller 304 will modify the program control information signal by adding additional information. In a simple embodiment, the program control information signal can be passed through the cable headend 42 to the set top terminal 58 without any modifications.
Although the signal processing system 300 will handle the addition of simple local availabilities (e.g. local advertisements) into the signal sent to the set top terminal 58, the network controller 304 will handle any of the more sophisticated local programming needs such as interactive programming and certain data services. The network controller 304 will receive any electronic signals sent by the set top terminal 58 including those in response to interactive service requests and some data service requests. The network controller 304 coordinates the necessary switching and access to allow the subscriber to enjoy these services.
The network controller 304 has the capability of performing “on the fly programming” changes, assisting in masking portions of subscriber's television screens (split screen video), assisting in selecting different audio signals for the same video (foreign languages), assisting in interactive features, create tiered programming, etc. For last minute changes to programming (such as for a local emergency or important regional events), an operator using the network controller 304 can modify the program control information signal “on the fly” and change menus available to, the subscriber. This accommodates short notice changes to program packaging that can not be provided to the Operations Center 56 in advance. In order to accommodate split screen techniques for promo and demo video, those undesired video portions of the screen must be masked. The network controller 304 can send the necessary control information to inform the set top terminal 58 to mask portions of a specific channel's video. For example, a video channel with a split screen showing four separate videos would require a ¾ mask to focus the viewer on the featured video clip. The network controller is described in detail in U.S. patent application Ser. No. 08/160,280, entitled, NETWORK CONTROLLER FOR CABLE TELEVISION SYSTEMS, filed Dec. 2, 1993, now U.S. Pat. No. 5,600,364, same assignee and incorporated herein by reference.
A number of digital cable headend 42 embodiments have been shown. Those skilled in the art will appreciate that numerous variations to the designs shown are possible. Also, based on the examples shown, those skilled in the art will appreciate that a headend 42 may be configured in a variety of ways using a Combiner 104 as a component.
The terms and descriptions used herein are set forth by way of illustration only and are not meant as limitations. Those skilled in the art will recognize that numerous variations are possible within the spirit and scope of the invention as defined in the following claims.
This application is a continuation of application Ser. No. 08/160,283, now U.S. Pat. No. 5,682,195, filed on Dec. 2, 1993, which is a continuation-in-part of application Ser. No. 07/991,074 filed Dec. 9, 1992 entitled TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM WITH MENU DRIVEN SUBSCRIBER ACCESS. The following other continuation-in-part applications, also based on the above-referenced patent application, are incorporated herein by reference: Ser. No. 08/160,281, entitled REPROGRAMMABLE TERMINAL FOR SUGGESTING PROGRAMS OFFERED ON A TELEVISION PROGRAM DELIVERY SYSTEM, filed Dec. 2, 1993, now U.S. Pat. No. 5,798,785; Ser. No. 08/160,280, entitled NETWORK CONTROLLER FOR CABLE TELEVISION DELIVERY SYSTEMS, filed Dec. 2, 1993, now U.S. Pat. No. 5,600,364; Ser. No. 08/160,282, entitled AN OPERATIONS CENTER FOR A TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM, filed Dec. 2, 1993, now U.S. Pat. No. 5,659,350; Ser. No. 08/160,193, entitled SET TOP TERMINAL FOR CABLE TELEVISION DELIVERY SYSTEMS, filed Dec. 2, 1993, now U.S. Pat. No. 5,734,853; Ser. No. 08/160,194, entitled ADVANCED SET TOP TERMINAL FOR CABLE TELEVISION DELIVERY SYSTEMS, filed Dec. 2, 1993, now U.S. Pat. No. 5,990,927.
Number | Name | Date | Kind |
---|---|---|---|
3891792 | Kimura | Jun 1975 | A |
3978470 | McGuire | Aug 1976 | A |
4197590 | Sukonick et al. | Apr 1980 | A |
4361848 | Poignet et al. | Nov 1982 | A |
4381522 | Lambert | Apr 1983 | A |
4398216 | Field et al. | Aug 1983 | A |
4484217 | Block et al. | Nov 1984 | A |
4488179 | Kruger et al. | Dec 1984 | A |
4517598 | Van Valkenburg et al. | May 1985 | A |
4528589 | Block et al. | Jul 1985 | A |
4528643 | Freeny, Jr. | Jul 1985 | A |
4587520 | Astle | May 1986 | A |
4605964 | Chard | Aug 1986 | A |
4621282 | Ahern | Nov 1986 | A |
4633462 | Stifle et al. | Dec 1986 | A |
4639225 | Washizuka | Jan 1987 | A |
4688218 | Blineau et al. | Aug 1987 | A |
4688246 | Eilers et al. | Aug 1987 | A |
4694490 | Harvey et al. | Sep 1987 | A |
4695880 | Johnson et al. | Sep 1987 | A |
4697209 | Kiewit et al. | Sep 1987 | A |
4706121 | Young | Nov 1987 | A |
4712105 | Kohler | Dec 1987 | A |
4712130 | Casey | Dec 1987 | A |
4724491 | Lambert | Feb 1988 | A |
4792972 | Cook, Jr. | Dec 1988 | A |
4805014 | Sahara et al. | Feb 1989 | A |
4816901 | Music et al. | Mar 1989 | A |
D301037 | Matsuda | May 1989 | S |
4829372 | McCalley et al. | May 1989 | A |
4829558 | Welsh | May 1989 | A |
4829569 | Seth-Smith et al. | May 1989 | A |
4860379 | Schoeneberger et al. | Aug 1989 | A |
4876736 | Kiewit | Oct 1989 | A |
4885803 | Hermann et al. | Dec 1989 | A |
4920432 | Eggers et al. | Apr 1990 | A |
4928168 | Iwashita | May 1990 | A |
4947429 | Bestler et al. | Aug 1990 | A |
4949187 | Cohen | Aug 1990 | A |
4959810 | Darbee et al. | Sep 1990 | A |
4961109 | Tanaka | Oct 1990 | A |
4975951 | Bennett | Dec 1990 | A |
4977455 | Young | Dec 1990 | A |
D314383 | Hafner | Feb 1991 | S |
4995078 | Monslow et al. | Feb 1991 | A |
4996597 | Duffield | Feb 1991 | A |
5001554 | Johnson et al. | Mar 1991 | A |
5014125 | Pocock et al. | May 1991 | A |
5015829 | Eilert et al. | May 1991 | A |
5020129 | Martin et al. | May 1991 | A |
5027400 | Baji et al. | Jun 1991 | A |
5036394 | Morii et al. | Jul 1991 | A |
5036537 | Jeffers et al. | Jul 1991 | A |
5038402 | Robbins | Aug 1991 | A |
5046093 | Wachob | Sep 1991 | A |
5047867 | Strubbe et al. | Sep 1991 | A |
5049990 | Kondo et al. | Sep 1991 | A |
5056138 | Tyson, Sr. | Oct 1991 | A |
5057917 | Shalkauser et al. | Oct 1991 | A |
5073930 | Green et al. | Dec 1991 | A |
5075771 | Hashimoto | Dec 1991 | A |
5077607 | Johnson et al. | Dec 1991 | A |
5078019 | Aoki | Jan 1992 | A |
5091782 | Krause et al. | Feb 1992 | A |
5093718 | Hoarty et al. | Mar 1992 | A |
5099319 | Esch et al. | Mar 1992 | A |
D325581 | Schwartz | Apr 1992 | S |
5103314 | Keenan | Apr 1992 | A |
5105268 | Yamanouchi et al. | Apr 1992 | A |
5130792 | Tindell et al. | Jul 1992 | A |
5132789 | Ammon et al. | Jul 1992 | A |
5132992 | Yurt et al. | Jul 1992 | A |
5133079 | Ballantyne et al. | Jul 1992 | A |
D329238 | Grasso et al. | Sep 1992 | S |
5144663 | Kudelski et al. | Sep 1992 | A |
5150118 | Finkle et al. | Sep 1992 | A |
5151782 | Ferraro | Sep 1992 | A |
5151789 | Young | Sep 1992 | A |
5152011 | Schwob | Sep 1992 | A |
5155591 | Wachob | Oct 1992 | A |
5166886 | Molnar et al. | Nov 1992 | A |
D331760 | Renk, Jr. | Dec 1992 | S |
5172413 | Bradley et al. | Dec 1992 | A |
5182639 | Jutamulia et al. | Jan 1993 | A |
5185667 | Zimmermann et al. | Feb 1993 | A |
5202817 | Koenck et al. | Apr 1993 | A |
5206722 | Kwan | Apr 1993 | A |
5206954 | Inoue et al. | Apr 1993 | A |
5216515 | Steele et al. | Jun 1993 | A |
5221962 | Backus et al. | Jun 1993 | A |
5223924 | Strubbe | Jun 1993 | A |
5231494 | Wachob | Jul 1993 | A |
5235419 | Krause | Aug 1993 | A |
5237311 | Mailey et al. | Aug 1993 | A |
5237610 | Gammie et al. | Aug 1993 | A |
5247347 | Litteral et al. | Sep 1993 | A |
5251028 | Iu | Oct 1993 | A |
5253066 | Vogel | Oct 1993 | A |
5253275 | Yurt et al. | Oct 1993 | A |
5253341 | Rozmanith et al. | Oct 1993 | A |
5260778 | Kauffman et al. | Nov 1993 | A |
5270809 | Gammie et al. | Dec 1993 | A |
5282028 | Johnson et al. | Jan 1994 | A |
5283639 | Esch et al. | Feb 1994 | A |
5285272 | Bradley et al. | Feb 1994 | A |
5289271 | Watson | Feb 1994 | A |
5293540 | Trani et al. | Mar 1994 | A |
5293633 | Robbins | Mar 1994 | A |
5319455 | Hoarty et al. | Jun 1994 | A |
5319707 | Wasilewski et al. | Jun 1994 | A |
5323240 | Amano et al. | Jun 1994 | A |
5327554 | Palazzi, III et al. | Jul 1994 | A |
5339315 | Maeda et al. | Aug 1994 | A |
5341166 | Garr et al. | Aug 1994 | A |
5341474 | Gelman et al. | Aug 1994 | A |
5343239 | Lappington et al. | Aug 1994 | A |
5343516 | Callele et al. | Aug 1994 | A |
5345594 | Tsuda | Sep 1994 | A |
5349638 | Pitroda et al. | Sep 1994 | A |
5351075 | Herz et al. | Sep 1994 | A |
5353121 | Young et al. | Oct 1994 | A |
5355162 | Yazolino et al. | Oct 1994 | A |
5357276 | Banker et al. | Oct 1994 | A |
5365265 | Shibata et al. | Nov 1994 | A |
5367571 | Bowen et al. | Nov 1994 | A |
5375068 | Palmer et al. | Dec 1994 | A |
5390348 | Magin et al. | Feb 1995 | A |
5396546 | Remillard | Mar 1995 | A |
5400401 | Wasilewski et al. | Mar 1995 | A |
5404393 | Remillard | Apr 1995 | A |
5404505 | Levinson | Apr 1995 | A |
5410326 | Goldsetin | Apr 1995 | A |
5410344 | Graves et al. | Apr 1995 | A |
5412416 | Nemirofsky | May 1995 | A |
5414426 | O'Donnell et al. | May 1995 | A |
5416508 | Sakuma et al. | May 1995 | A |
5424770 | Schmelzer et al. | Jun 1995 | A |
5432542 | Thibadeau et al. | Jul 1995 | A |
5440632 | Bacon et al. | Aug 1995 | A |
5442626 | Wei | Aug 1995 | A |
5446919 | Wilkins | Aug 1995 | A |
5461667 | Remillard | Oct 1995 | A |
5469206 | Strubbe et al. | Nov 1995 | A |
5473362 | Fitzgerald | Dec 1995 | A |
5477263 | O'Callaghan et al. | Dec 1995 | A |
5479268 | Young et al. | Dec 1995 | A |
5481294 | Thomas et al. | Jan 1996 | A |
5481296 | Cragun et al. | Jan 1996 | A |
5481542 | Logston et al. | Jan 1996 | A |
5483278 | Strubbe et al. | Jan 1996 | A |
5500794 | Fujita et al. | Mar 1996 | A |
5515098 | Carles | May 1996 | A |
5550863 | Yurt et al. | Aug 1996 | A |
5561708 | Remillard | Oct 1996 | A |
5561709 | Remillard | Oct 1996 | A |
5570126 | Blahut et al. | Oct 1996 | A |
5600364 | Hendricks et al. | Feb 1997 | A |
5629733 | Youman et al. | May 1997 | A |
5635989 | Rothmuller | Jun 1997 | A |
5644354 | Thompson et al. | Jul 1997 | A |
5661516 | Carles | Aug 1997 | A |
5663757 | Morales et al. | Sep 1997 | A |
5689663 | Williams | Nov 1997 | A |
5696906 | Peters et al. | Dec 1997 | A |
5724091 | Freeman et al. | Mar 1998 | A |
5764276 | Martin et al. | Jun 1998 | A |
5793414 | Shaffer | Aug 1998 | A |
5793872 | Hirayama et al. | Aug 1998 | A |
5877801 | Martin et al. | Mar 1999 | A |
5903319 | Busko et al. | May 1999 | A |
6331877 | Bennington et al. | Dec 2001 | B1 |
Number | Date | Country |
---|---|---|
2044574 | Dec 1992 | CA |
3423846 | Jan 1986 | DE |
3935294 | Apr 1991 | DE |
42 14 184 | Nov 1992 | DE |
149536 | Jan 1984 | EP |
103438 | Mar 1984 | EP |
145063 | Jun 1985 | EP |
0 158 767 | Oct 1985 | EP |
158548 | Oct 1985 | EP |
167237 | Jan 1986 | EP |
187961 | Jul 1986 | EP |
243312 | Oct 1987 | EP |
0 277 014 | Aug 1988 | EP |
281 293 | Sep 1988 | EP |
0 299 830 | Jan 1989 | EP |
0 314 572 | May 1989 | EP |
328 440 | Aug 1989 | EP |
0 350 643 | Nov 1989 | EP |
355697 | Feb 1990 | EP |
0 377 334 | Jul 1990 | EP |
0 396 186 | Oct 1990 | EP |
399200 | Nov 1990 | EP |
402809 | Dec 1990 | EP |
420123 | Apr 1991 | EP |
424648 | May 1991 | EP |
425834 | May 1991 | EP |
450841 | Oct 1991 | EP |
0 472 070 | Feb 1992 | EP |
506435 | Sep 1992 | EP |
513553 | Nov 1992 | EP |
513763 | Nov 1992 | EP |
0 539 106 | Apr 1993 | EP |
570 785 | Nov 1993 | EP |
0 620 689 | Oct 1994 | EP |
1204190 | Sep 1970 | GB |
2168227 | Jun 1986 | GB |
6106015 | Mar 1986 | JP |
6224777 | Feb 1987 | JP |
62-140134 | Jun 1987 | JP |
01-20454 | Jan 1989 | JP |
245167 | Mar 1989 | JP |
1130683 | May 1989 | JP |
1142918 | Jun 1989 | JP |
3114375 | May 1991 | JP |
3198119 | Aug 1991 | JP |
5250106 | Sep 1993 | JP |
07-230466 | Aug 1995 | JP |
238461 | Apr 1992 | TW |
234223 | Nov 1994 | TW |
235358 | Dec 1994 | TW |
235359 | Dec 1994 | TW |
236065 | Dec 1994 | TW |
236744 | Dec 1994 | TW |
8000209 | Feb 1980 | WO |
8912370 | Sep 1985 | WO |
8601962 | Mar 1986 | WO |
8801463 | Feb 1988 | WO |
8909528 | Oct 1989 | WO |
9010988 | Sep 1990 | WO |
9100670 | Jan 1991 | WO |
9103112 | Mar 1991 | WO |
9210040 | Jun 1992 | WO |
9212599 | Jul 1992 | WO |
9217027 | Oct 1992 | WO |
9221206 | Nov 1992 | WO |
9322877 | Nov 1993 | WO |
9414282 | Jun 1994 | WO |
9416527 | Jul 1994 | WO |
9608109 | Mar 1996 | WO |
9625006 | Aug 1996 | WO |
WO9625006 | Aug 1996 | WO |
9713368 | Apr 1997 | WO |
Number | Date | Country | |
---|---|---|---|
Parent | 08160283 | Dec 1993 | US |
Child | 08958088 | US | |
Parent | 07991074 | Dec 1992 | US |
Child | 08160283 | US |