METHODS AND SYSTEMS FOR PROVIDING INFORMATION
TO SET-TOP BOXES HAVING SET-TOP BOX IDENTIFIERS
USING FREQUENCY SHIFT KEYING MODULATION
Field of the Invention
The present invention relates to the field of communications in general, and more particularly, to data transmission.
Background of the Invention The television (TV) has become ubiquitous in modern society. As a result, a variety of services are being provided via TV. Many of the services are provided using a set-top box that works in conjunction with the TV to provide the desired service. One example of a service -provided via a -TV is an online TV- program guide, wherein TN program schedule information is displayed on a TV for searching and selection by a viewer. Online TV program guides are described in U.S. Patent 4,751,578 to Reiter et. al. entitled System for Electronically Controllable Viewing on a Television Updateable Television Programming Information. Other popular services are also provided using a set-top box. For example cable or satellite TV may be provided using a tuner packaged as a set-top box. The tuner decodes the transmission from the service provider and formats the signal for display on the TV. Moreover, many households have more than one TV.
It is also known to provide some services over the Internet using set-top boxes. One such service is WebTV which enables a user to browse the Web using a TV as the display. WebTV, however, duplicates much of the hardware and software included in a standard PC. For example, WebTV includes a modem while many PCs come equipped with one. Consequently, the consumer who already owns a PC may pay the cost of the modem twice: once when buying the PC and a second time when buying WebTV. Furthermore, WebTV may also duplicate a portion of the functions found in most TVs.
This duplication of PC and TV components may make WebTV unnecessarily expensive or complex to the many consumers who already own a PC.
As the popularity of TV and services increase, it may become more desirable to provide multiple users in the same household with the capability to use services separately. Unfortunately, the cost to provide multiple TV users separate access to the services described above may be prohibitive. For example, viewers of different TVs may desire separate information.
Furthermore, as the popularity of cable television services increases, new consumer devices may become available for home use. For example, new types of consumer devices such as cable ready televisions, cable tuners, and video cassette recorders may be connected to cabling which carries the transmission of the cable television services for use by consumers in their homes. As the number of consumer devices used in the home increases, the cabling needed inside the home may also increase and become unwieldy. As a result, the cabling may be integrated into the structure of the home, for example in the walls and floors. It is known to use coaxial cable having an impedance of 75 ohms in some cable systems for the transmission of the cable television services.
The cabling may conduct television signals and other signals which include the cable television services, and Direct Current (DC) voltages or Alternating Current (AC) voltages for controlling the consumer devices. For example, a television signal and a DC voltage may be transmitted over the cabling to provide a video signal and a DC voltage for controlling a cable tuner.
Personal Computers also may be capable of communicating with other devices, such as the consumer devices described above. Unfortunately, separate wiring may be needed to provide the communications between the devices. For example, a serial data cable may be needed to connect two PCs. Unfortunately, if the PCs are located in different areas of the home, the serial data cable may need to be long which may make the serial data cable expensive and unwieldy. Therefore, a need exists to further improve methods and systems for providing services via consumer devices and PCs.
Summary of the Invention
It is an object of the present invention to provide improved set-top boxes for use with television services.
It is another object of the present invention to provide improved systems for the use of multiple set-top boxes.
It is, therefore, an object of the present invention to allow an improvement in the transfer of data between devices within a building.
It is another object of the present invention to allow improvement in transferring data over transmission lines which conduct television signals. These and other objects of the present invention may be provided by set-top boxes, identified by respective identifiers (IDs), that send requests for information to a PC over a television signal transmission line. The request can include the ID of the set- top box that made the request. When the requested information is accessed, the requested information and the ID of the set-top box that made the request can be transmitted over the communications link to the set-top box using frequency shift keying modulation in a frequency range that is not within a television signal frequency range used to conduct the television signal on the television signal transmission line. Accordingly, multiple set-top boxes may access information from a single residence via an existing PC, thereby allowing a more cost-effective approach than conventional systems. In one embodiment, a computer program running on the PC can handle requests from the plurality of set-top boxes. In another embodiment, a computer program can be instantiated for each of the plurality of set-top boxes. For example, a first computer program can be instantiated to handle requests from the first set-top box and a second computer program can be instantiated to handle requests from the second set-top box. The frequency shift keying modulation can be provided by generating a modulated data signal based on information included in the data. For example, the frequency shift keying modulation can generate a modulated data signal at a first frequency when the data is equal to a logical 0 and at a second frequency when the data is equal to a logical 1. In one embodiment, the first frequency is about 800KHz and the second frequency is about 1MHz.
Frequency shift keying modulation may provide a reduction in the cost of transferring data. In particular, the frequency shift keying modulation may be embodied using relatively few components. In contrast, some conventional data transfers are performed using phase shift keying modulation which may be more expensive than a system according to the present invention.
Brief Description of the Drawings
FIG. 1 is a block diagram of a first embodiment of systems and methods according to the present invention. FIG. 2 is an exemplary display of information provided to a user on a TV.
FIG. 3 is a block diagram of a second embodiment of systems and methods according to the present invention.
FIG. 4 is a block diagram of an embodiment of a set-top box according to the present invention. FIG. 5 is a block diagram of an embodiment of a PC according to the present invention.
FIG. 6 is an embodiment of a packet structure according to the present invention. FIG. 7 is a flowchart that illustrates initialization operations of a set-top box according to the present invention. FIG. 8 is a flowchart that illustrates initialization operations of a computer program running on the PC in coordination with the operations illustrated in FIG. 7. FIG. 9 is a flowchart that illustrates operations of a set-top box in response to requests for information.
FIG. 10 is a flowchart that illustrates operations of the computer program running on the PC in response to incoming requests for information from set-top boxes.
FIG. 11 is a flowchart that illustrates operations of a set-top box in response to information broadcast by the PC.
FIG. 12 is a block diagram of a cable transfer interface according to the present invention. FIG. 13 is a schematic diagram of an exemplary embodiment of a cable transfer interface according to the present invention.
Detailed Description of the Invention
The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which a preferred embodiment of the invention is shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
The phrase "television signal" as used herein includes signals formatted for display on television sets such as National Television System Committee (NTSC) format video provided in some conventional cable television systems. NTSC formatted video includes 525 lines at a horizontal frequency of 15.734 KHz and a vertical frequency of 60 Hz. Other signals formatted for display on television also are included. As described herein the phrase "transmit operation" refers to the transmission of data from a PC to a set- top box over a transmission line. Similarly, the phrase "receive operation" refers to the transmission of data from the set-top box to the PC. Like numbers refer to like elements throughout.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, data processing system and/or program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects.
Furthermore, the present invention may take the form of a computer program product on a computer-readable storage medium having computer-readable program code means embodied in the medium. Any suitable computer readable medium may be utilized including hard disks, CD-ROMs, optical storage devices, or magnetic storage devices. The present invention is also described using block diagrams and flowcharts.
Those skilled in the art will understand that the blocks in the block diagrams and the flowchart illustrations, and combinations of blocks, may be implemented with various commonly used components. It will also be understood that portions of the operations described in the blocks may be executed as computer program instructions loaded into a computer or other data processing apparatus, thus producing a machine which provides means for implementing the functions specified in the flowchart blocks and combinations
thereof. The computer program may cause operational steps to be performed on the computer or data processing apparatus to produce a computer-implemented process such that the instructions which execute on the computer or data processing apparatus provide steps for implementing the functions of the blocks or combinations thereof. Accordingly, the blocks support combinations of means for performing the specified functions and combinations of steps for performing the specified functions.
FIG. 1 is a block diagram that illustrates systems and methods according to a first embodiment of the present invention. According to the embodiment of FIG. 1, the system can include a plurality of set-top boxes lOOa-b, each of which accepts requests from respective remote controls 105a-b. According to FIG. 1, a user pushes buttons on the remote control 105a to request the display of information on a TV 102a. The remote control 105a transmits a corresponding command to the set-top box 100a associated with the remote control. It will be understood that functions of the remote control alternately can be provided directly on the set-top box and/or the remote control can be coupled to the set-top box via means such as a cable, RF coupling and/or IR coupling. The set-top box 100a can send a request for the information to a Personal Computer (PC) 135 over a communications link 130. Each set-top box lOOa-b can request different information from the PC 135, which responds by accessing the requested information locally or via a network 103, such as the Internet. As used herein, the term "information" includes information such as television program information (such as that shown in FIG. 2), e- mail, chat, sports scores, weather and the like. Set-top boxes are discussed in U.S. Patent Application No. 09/005269 entitled Methods and Systems for Providing Television Related Services via a Networked Personal Computer " which is commonly assigned to the assignee of the present application and which is incorporated herein by reference. Each request for information by a set-top box lOOa-b can include an Identifier
(ID) that identifies the set-top box lOOa-b which made the request. For example, the first set-top box 100a can be identified by a first ID of FFj6 and the second set-top box 100b can be identified by a second ID of F0)6. Requests sent to the PC 135 by the first set-top box 100a include the first ID FF1 and requests sent to the PC 135 by the second set-top box 100b include the second ID F016. The PC 135 can use the respective IDs of the first
and second set-top boxes lOOa-b to associate each received request with the set-top box that sent the request.
The PC 135 can access the requested information and can broadcast the requested information and the ID of the set-top box lOOa-b that made the request over the communications link 130. For example, the PC 135 can broadcast information requested by the first set-top box 100a with the first ID FF16 and can broadcast information requested by the second set-top box 100b with the second ID F01 over the communications link 130.
Each set-top box lOOa-b can receive the information and the associated ID broadcast by the PC 135. Each set-top box lOOa-b can compare the ID included with the information broadcast by the PC 135 to the ID stored in the set-top box lOOa-b. For example, when the PC 135 broadcasts the information requested by the first set-top box 100a, the PC 135 includes the first ID. Accordingly, the first set-top box 100a compares the ID associated with the first information broadcast by the PC 135 to the ID associated with the first set-top box 100a. When a match occurs, the first set-top box 100a accepts the information and provides it to the TV 102a. Moreover, the second set-top box 100b compares the ID associated with the first information broadcast by the PC 135 to the ID associated with the second set-top box 100b. When a mismatch occurs, the second set- top box 100b does not accept the information. The communications link 130 can be any communications medium known to those having skill in the art. In one embodiment, the communications link 130 can be a cable 117 such as those used to provide cable service to residential customers. Each set- top box lOOa-b and the PC 135 can be electrically coupled to the cable 117 via respective Cable Transfer Interfaces (CTI) llOa-c. In particular, each set-top box lOOa-b can send requests for information over the cable 117 through the associated CTI llOa-b. The PC 135 can receive the requests and can broadcast requested information through the associated CTI 110c. The cable 117 couples the CTIs llOa-c to one another through cable splitters 115 a-d. The cable splitters 115a-d can be used to distribute an input signal to multiple outputs while maintaining the proper termination for the cable 117. Direct Current (DC) blocking circuits 120a-e can be used to filter DC voltage levels
provided by some cable systems and fed back by some TVs and set-top boxes on the cable 117.
The set-top box 100a can request information by sending requests to the PC 135 and can receive the corresponding information from the PC 135 over the communications link 130 according to a command protocol described herein. User commands received from the remote control 105a are processed by the set-top box 100a to determine what action is necessary to display the desired information. If the requested information is not available within set-top box 100a, the set-top box 100a can send a request for the information to the PC 135. In response, the information requested by the set-top box 100a can be broadcast over the communications link 130 by the PC 135 and can be received by the appropriate set-top box 100a which formats the information for display on the TV 102a.
A request can include computer commands organized to access the information requested by the user via the remote control 105a. For example, the request may comprise a list of instructions which cause the PC 135 to access the network 130 and issue some of the commands included in the request to the network 130. In one embodiment, the access to the network can be provided using a telephone line. In the alternate embodiment of FIG. 3, access to the network can be provided by the cable system via a cable modem 301. As shown in FIG. 4, the set-top box 100a can include a central processing unit
(CPU) or controller 421, a Random Access Memory (RAM) 422, a Read Only Memory (ROM) 423, a Video Processing system (VP) 418, a Video Buffer (VRAM) 419, a TV interface 411, a Communication Link Interface (CLI) 417, and a wireless infra-red (IR) sensor 414. In one embodiment, the ID of the set-top box 100a can be stored in the ROM 423. In another embodiment, the ID can be encoded by switches 450, the settings of which can be read by the CPU 421. The above components are well known to those having skill in the art and need not be described further herein.
The CPU 421 may be suitable for running a computer program to process information from the PC 135, processes user commands from the remote control 105a, control the formatting of information for display on the TV 102a, and provide general system services to the set-top box 100a. The CPU 421 may process user commands
received from the remote control 105a as a stream of serial data. For example, if the user pushes a button on the remote control 105a that corresponds to a command requiring information from the network 103, the CPU 421 receives the command in an internal serial buffer from the IR sensor 415. The CPU 421 sends a corresponding computer command to the CLI 417 and the command is transmitted over communications link to the PC 135 via the CTI 110a and the network 103. The CPU 421 may also process information from the PC 135. For example, when information is returned from the network 130, it is received by the CLI 417. The CPU 421 accepts the information from the CLI 417 as a stream of serial data. In one embodiment, the CPU 421 may process the data received from the remote control 105a and information from the PC 135 and the network 103 as a single serial data stream.
The VP 418 may be used by the CPU 421 to combine information from the PC 135 with a TV signal 455 for display on the TV 102a or select between the two for display. The data from the VP 418 may be represented in RGB format wherein a first portion of the data represents red information, a second portion represents green information, and a third portion represents blue information. The VP 418 may be implemented with a WG606 Video Processor manufactured by Yamaha Inc.
The wireless IR sensor 414 receives user commands from the remote control 105a. The wireless IR sensor 414 provides the user commands from the remote control 105a to the CPU 421 for processing. The user commands can be processed by the CPU 421 as a serial data stream.
The PC 135 examines the request from the set-top box 100a to determine which set-top box lOOa-b is requesting the information. In one embodiment, a computer program running on the PC 135 handles the requests from the set-top boxes lOOa-b in an integrated fashion. For example, the computer program can record each request and the ID of the set-top box lOOa-b which made the request in a table or using other techniques known to those having skill in the art. The computer program may cause the PC 135 to access the requested information and broadcast the requested information and the ID associated with the request over the cable 117. For example, if the computer program determines that the requested information should be accessed via the Internet, the computer program causes the PC 135 to access and request the information from the
Internet. When the requested information is provided to the computer program from the Internet, the computer program looks up the request in the table to determine which set- top box lOOa-b requested the information and broadcasts the requested information and the associated ID on the cable 117. Requests from the set-top box lOOa-b are handled in view of the context in which the requests are made. For example, if the first set-top box 100a is presently displaying an e-mail session, subsequent requests are handled in the context of an e-mail session. In particular, the screen being currently displayed by the set-top box 100a and the keyboard input can be included in the context of the requests. The computer program can combine requests from multiple set-top boxes lOOa-b to the network. For example, if a first set-top box 100a sends a first request for first information and a second set-top box 100b sends a second request for second information, the computer program combines the two requests into a single request to the network 130 using techniques known to those having skill in the art. In another embodiment of the present invention, the PC 135 instantiates a plurality of computer programs, wherein each of the plurality of computer programs instantiated is associated with one of the set-top boxes 100a. In this embodiment, an interface program running on the PC 130 interfaces the plurality of computer programs to the network 130. For example, in a situation where the first and second set-top boxes lOOa-b are being used, respective first and second computer programs are instantiated to handle requests from the set-top boxes lOOa-b. Accordingly, when the first and second set-top boxes lOOa-b request information from the network 130, the interface program coordinates access to the network 103.
According to FIG. 5, the PC 135 can be a computer capable of running a wide range of applications software and may include a CPU 542, a memory 541, a network interface 543, a hard disk drive 540, an interface 531, a keyboard 539, a monitor 538 and other hardware and software components commonly found in personal computers. For example, the PC 135 may be implemented using a Pentium microprocessor marketed by Intel running the Windows 98 Operating System marketed by Microsoft Inc. The PC 135 processes the requests for information received from the set-top boxes lOOa-b over the cable 117 via the CTI 110c, and accesses the requested information which is broadcast
over the cable 117 through the CTI 110c. In addition, other processing systems such as workstations, mainframes, mini computers, and/or custom systems can be used.
Requests by the set-top boxes lOOa-b and information broadcast by the PC 135 can be structured in a packet format as illustrated in FIG. 6. Accordingly, requests for the set-top boxes lOOa-b can be referred to as request packets, and requested information broadcast by the PC 135 can be referred to as information packets. The packet format of FIG. 6 can include a START byte, an ID word, an INSTR byte, a LENGTH word, a number of DATA bytes, a CKSUM word, and a STOP byte. The Start byte can signal the start of the packet. In a particular embodiment, the START byte can be the value FF16. The ID word corresponds to the ID associated with the set-to box lOOa-b. In one embodiment, the ID word can be the least significant word of the serial number of the set-top box.
The INSTR byte can be an instruction or command to be executed by the set-top box 100a. The LENGTH word can be the number of bytes contained in the DATA field. The DATA can be a number of data bytes associated with the INSTR field. For example, if a particular command or instruction has associated data or parameters, the data is stored in the DATA field. The number of data bytes included in the DATA field is described by the LENGTH field. The CKSUM can be the least significant word of the sum of each byte contained in the INSTR, LENGTH, and DATA fields. The STOP byte can signal the end of the packet. In a particular embodiment, the STOP byte is the value FFι6.
FIG. 7 is a flowchart that illustrates initialization operations of the set-top box according to the present invention. When the user powers the set-top box up (block 700) a self test can be performed (block 705). The ID of the set-top box can be determined and a power-up packet can be sent to the PC (block 715). The power-up packet can signal the PC that the set-top box has been turned on and may provide requests for information. The set-top box can wait for an acknowledgement packet from the PC (block 720). The acknowledgement packet can signal the set-top box that the power-up packet was recognized by the PC.
When the acknowledgement packet is received from the PC (block 725), the set- top box begins processing requests from the user for information to be displayed and begins processing information packets broadcast by the PC (block 730).
FIG. 8 is a flowchart that illustrates initialization operations of a computer program running on the PC 135 in coordination with the initialization operations illustrated in FIG. 7. The computer program begins processing incoming requests from the set-top boxes in block 800. A determination is made as to whether an incoming packet is a power-up packet from a set-top box (block 805). If the incoming packet is not a power-up packet, the packet is processed as a request packet from a known set-top box as shown in FIG. 9 (block 810).
If the packet is a power-up packet, the ID associated with the power-up packet is determined (block 815) and the ID is compared to the IDs of all known set-top boxes (block 820). If the ID included in the power-up packet is the same as an ID associated with a known set-top box, operations continue with the processing of incoming request packet (block 810). If the ID included in the power-up packet is not known, the ID is recorded as an ID associated with a known set-top box and a computer program according to the present invention is instantiated (block 825). In particular, request packet from the set-top box associated with the ID included in the power-up packet above are handled by the instantiated computer program. Accordingly, a computer program may be instantiated for each known set-top box. A power-up acknowledgement packet is broadcast on the communications link (block 830) and the operations continue, wherein a determination is made as to whether an incoming packet is a power-up packet from a set- top box (block 805).
FIG. 9 is a flowchart that illustrates operations of a set-top box in response to requests for information. According to FIG. 9, the set-top box begins processing input at block 900. The set-top box waits for a command from the remote control (block 910). When a remote control command is detected (block 910), the set-top box determines if the requested information is resident in the set-top box (block 915). If the information is resident in the set-top box, the set-top box sends the requested information to the TV (block 925). If, however, the requested information is not resident in the set-top box, the
set-top box sends a request for the information, including the ID of the set-top box, to the PC (block 920).
FIG. 10 is a flowchart that illustrates operations of a computer program running on the PC in response to incoming request packets for information from the set-top boxes. According to FIG. 10, processing begins at block 1000. An incoming request for information is decoded (block 1010) and the ID included in the request is determined (block 1020). If the ID included in the request is not associated with a known set-top box (block 1030), the request is not accepted and processing continues at block 1010.
If, however, the ID included in the request is associated with a known set-top box (block 1030), the request is accepted and provided to the computer program instantiated to handle requests from the set-top box associated with the ID included with the request (block 1040). When the requested information is received (block 1050), the requested information is broadcast over the communications link (block 1060) and processing continues at block 1010. FIG. 11 is a flowchart that illustrates operations of a set-top box in response to information broadcast by the PC. According to FIG. 11, the processing of incoming packets from the PC begins in block 1100. When a packet is received from the PC (block 1110), the ID included in the packet is compared to the ID of the set-top box (block 1120). If the ID included in the packet is not equal to the ID of the set-top box (block
1130), the packet is not accepted by the set-top box. The set-top box waits for another incoming packet from the PC (block 1110). If the ID included in the packet is equal to the ID of the set-top box (block 1130), the packet is accepted and the requested information is provided to the TV (block 1140) and processing continues at block 1010. An embodiment of the cable transfer interface 110a will now be described in greater detail. According to FIG. 1, data is transferred between the PC 135 and the set- top box 100a over the transmission line 130, such as a coaxial cable, used to conduct a television signal. The set-top box 100a controls the display of a television 102 in response to commands issued by a user to the set-top box 100a. Some commands may cause the set-top box 100a to request information, such as broadcast times, from the PC
135. In response, the PC 135 may retrieve the information from the network 103 and transmit the information to the set-top box 100a.
Although the embodiment of FIG. 1 shows the PC 135 connected to the set-top box 100 via the transmission line 130, it will be understood that other devices may be used. For example, in another embodiment, two PCs may be connected via the transmission line 130 to allow the transfer of serial data between the PCs. In still another embodiment, the cable transfer interface can be powered by a separate DC power supply. Data is transferred between the PC 135 and the set-top box 100a in a half-duplex fashion that may be controlled by a computer program running on one or more processors. For example, the PC 135 and the set-top box 100a may each include one or more processors that run computer programs to coordinate the transfer of data over the transmission line 130. In operation, a transmission by either the PC 135 or the set-top box 100a may stop to allow the other device to transmit. The half-duplex control of the PC 135 and the set-top box 100a can be performed according to techniques known to those having skill in the art. The transmission line 130 includes the splitters 115 a-d that distribute the television signal 127 to the plurality of devices via cables 117 as shown in FIG. 1. The transmission line 130 can include conventional cabling such as that installed in the walls and floors of houses.
For simplicity, the transmit operation is described first, wherein data is transmitted from the set-top box 100a to the PC 135 such as when the user requests programming information to be displayed. Second, a receive operation is described in which data is transmitted from the PC 135 to the set-top box 100a such as when the PC 135 responds to the request by transferring the program information to the set-top box 100a. In the transmit operation, the set-top box 100 can transmit data to the first cable transfer interface (CTI) 110a using an interface format such as an RS-232 serial interface standard, although other interface formats may be used as well. In one embodiment, a 9- pin serial data port on the set-top box 100 can be used to transmit and receive the data. The first cable transfer interface 110a can process the data received from the set- top box 100 using frequency shift keying modulation to provide a modulated data signal which is transmitted over the transmission line 130 which also conducts the television
signal 127. However, the modulated data signal occupies a frequency range that is not within the television signal frequency range used to conduct the television signal.
The data transmitted by the first cable transfer interface 110a is transferred to the PC 135 through splitters 115a, c, d. The splitter 115d distributes the television signal 127 to the televisions 102a-c, the first and second cable transfer interfaces 110a, c and the set-top boxes lOOa-b via the cable 117. Consequently, the cable 117 conducts a distributed version of the television signal 127 and the data transmitted by the first cable transfer interface 110a. Other devices, such as videocassette recorders or other devices known in the art may be used in place of the televisions 102. A second cable transfer interface 110c can process the data transmitted by the first cable transfer interface 110a to provide data to the PC 135 according to the interface format described above. In one embodiment, a 9-pin serial data port on the PC 135 can be used to transmit and receive data between the PC 135 and the second cable transfer interface 110c. In the receive operation, data can be transmitted from the PC 135 to the set-top box 100a, such as when the PC 135 responds to the request transmitted by the set-top box 100a. In particular, data can be transmitted from the PC 135 to the second cable transfer interface 110c according to the interface format described above. The second cable transfer interface 110c can process the data to provide a second modulated data signal that is transmitted over the transmission line 130 to the first cable transfer interface 110a. The first cable transfer interface 110a demodulates the data received from the PC 135 and provides data to the set-top box 100a according to the interface format. The set-top box 100a uses the data to control the display of a distributed version of the television signal 127 on the television 102a provided to the set-top box 100a. In another embodiment, the same cable can be used to provide the distributed version of the television signal 127 and the data to the first cable transfer interface 110a and the set-top box 100a.
Accordingly, cabling installed in houses can be used to transfer data between devices, such as PCs and set-top boxes. For example, existing cabling can be used to connect a PC with a set-top box, thereby allowing data to be transferred between the set- top box and the PC. Moreover, the data transfer does not interfere with the television signal conducted over the same cable. The cabling can be installed in the floors and
walls of the house, thereby making the connection between the devices less cumbersome and less expensive than adding a dedicated cable between the devices.
FIG. 12 is a block diagram of a cable transfer interface 110 according to the present invention. In a transmit operation the data formatted according to the interface format can be received by a converter 200 which converts the received data to
Complementary Metal Oxide Semiconductor (CMOS) or Transistor to Transistor Logic (TTL) voltage levels (such as 0-5 volts) to provide a transmit format data signal. A transmitter 205 can process the transmit format data signal using Frequency Shift Keying (FSK) modulation to provide the transmit modulated data signal. The FSK modulation can be performed using a frequency range that is not within a television signal frequency range used to conduct the television signal 127 over the transmission line 130. For example, in one embodiment the FSK modulation is performed using frequencies in a range between about 800KHz and 1MHz.
The transmit modulated data signal can be provided to a switch 210 that electrically couples the transmit modulated data signal to the transmission line 130 under the control of the data provided to the cable transfer interface 110. For example, a Ready To Send (RTS) signal included in an RS-232 interface can be used to control the switch direction to electrically couple the transmit modulated data signal to the transmission line 130. The transmitter 205 can include an FSK modulator 220 that provides a modulated data signal using a frequency range that is not within the television signal frequency range used to conduct the television signal 127 over the transmission line 130. The FSK modulator 220 generates the modulated data signal at a frequency based on information included in the transmit format data signal. For example, in one embodiment the FSK modulator 220 generates the modulated data signal at a frequency of 800KHz upon detecting that the transmit format data signal is equal to a logical 0. When the transmit format data signal transitions to a logical 1 , the FSK modulator 220 generates the modulated data signal at a frequency of 1MHz.
The modulated data signal is provided to a transmit interface 225 that provides the transmit modulated data signal to the switch 210. In particular, the transmit interface 225 drives the transmit modulated data signal over the transmission line 130 via the switch
210 to compensate for a variety of transmission line 130 configurations. For example, the transmit interface 225 may drive the transmit modulated data signal over a 200-foot transmission line 130 with an impedance in a range between about 25 ohms and 75 ohms. In a receive operation data is transferred over the transmission line 130 to the switch 210 which electrically couples the data from the transmission line 130 to receiver 215 under the control of the data provided to the cable transfer interface 110 to provide a receive modulated data signal. For example, a Ready To Send (RTS) signal included in an RS-232 interface can be used to control the switch direction to electrically couple the data from the transmission line 130 to the receiver 215. The receiver 215 processes the receive modulated data signal to provide a demodulated data signal to the converter 200. In particular, the receiver 215 processes the receive modulated data signal using FSK demodulation over a frequency range that is not within a television signal frequency range used to conduct the television signal 127 over the transmission line 130 to provide a receive format data signal. The converter 200 converts the receive format data signal to the interface format as described above. For example, in one embodiment the receive format data signal can be converted from CMOS voltage levels to RS-232 voltage levels.
The receiver 205 can include a receive interface 230 that matches the impedance of the cable transfer interface 110 to the transmission line 130 to provide a receive modulated data signal. For example, in one embodiment, the receive interface 230 can provide a 75 ohm termination for the transmission line 130. The receiver 205 also includes an FSK demodulator 235 that provides a demodulated data signal using a frequency range that is not within the television signal frequency range used to conduct the television signal 127 over the transmission line 130 to provide the demodulator data signal. For example, in one embodiment the FSK demodulator 235 generates a logical 0 upon demodulating the modulated data signal at a frequency of 800KHz. The FSK demodulator 235 generates a logical 1 upon demodulating the modulation data signal at a frequency of lMhz.
FIG. 13 is a schematic diagram of an exemplary embodiment of a cable transfer interface 110 according to the present invention. According to FIG. 13, data can be transmitted to/from the cable transfer interface 110 via connector 300. The data is
converted to/from CMOS voltage levels from/to RS-232 voltage levels by an interface format chip 305 such as a MAX232CWE marketed by Maxim, Inc. The CMOS level data is processed by the FSK modulator 310 to provide a transmit modulated data signal. The FSK modulator 310 may be a Monolithic PLL XR0215ACD marketed by Exar, Inc. The transmit modulated data signal is driven over the transmission line 130 by the transmit interface 225. The transmit interface 225 can include a transistor Ql and resistors R14 and R15 in an emitter follower configuration. The emitter follower configuration can allow the transmit interface to drive the transmit modulated data signal over the transmission line 130 up to 200 feet at an impedance in the range of about 25 ohms to 75 ohms.
The transmit modulated data signal can be provided to a switch 320 which couples the transmit modulated data signal to the transmission line 130 during a transmit operation. The switch 320 may be an analog switch PI5A383AW marketed by Pericom, Inc. The switch 320 also can couple data from the transmission line 130 to FSK demodulator 325 via the receive interface 230 during a receive operation to provide the receive modulated data signal. The direction of the switch 320 is controlled by an RTS signal generated at pin 9 of the interface format chip 305. For example, the RTS signal indicates that a device is ready to send data. Accordingly, the direction of the switch 320 is set to receive data from the device sending the RTS signal. The FSK demodulator 325 can demodulate the receive modulated data signal to provide a demodulated data signal. The FSK demodulator 325 may be a Monolithic PLL XR0215ACD marketed by Exar, Inc. The demodulated data signal may have an amplitude of about 200mV.
The demodulated data signal can be compared to a reference voltage (controlled by potentiometer R32) by the comparator 330. The comparator 330 shifts the voltage level of the demodulated data signal to CMOS voltage levels to provide the receive format data signal. The comparator 330 may be a Voltage Comparator LM311M marketed by National Semiconductor, Inc. The receive format data signal is provided to the interface format chip 305 for conversion to RS-232 voltage levels upon which data is transmitted over the connector 300.
Accordingly, cabling installed in houses can be used to transfer data between devices, such as PCs and set-top boxes. For example, existing cabling can be used to connect a PC with a set-top box, thereby allowing data to be transferred between the set- top box and the PC. Moreover, the data transfer does not interfere with the television signal conducted over the same cable. The cabling can be installed in the floors and walls of the house, thereby making the connection between the devices less cumbersome and less expensive than adding a dedicated cable between the devices.
In addition, set-top boxes can be identified by respective IDs. The set-top boxes can send requests for information over a communications link to a PC. The requests can include the ID of the set-top box that made the request. When the requested information is accessed by the PC, the requested information and the ID of the set-top box that made the request are transmitted over the communications link to the set-top box. Accordingly, multiple set-top boxes may access information from a single residence via an existing PC, thereby allowing a more cost-effective approach than conventional systems. In the drawings and specification, there have been disclosed typical preferred embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the invention being set forth in the following claims.