Digital broadcast receiver and broadcasting method

Abstract: A data receiving-processing apparatus comprising a means for receiving an extended function program or data transmitted thereto, a means for processing the received data, a first storage means such as a read-only memory for storing a first program used to execute the data processing and having a branch for the extended function program, a second storage means such as a nonvolatile memory for storing the extended function program in a compressed state, a third storage means such as a volatile memory for storing the extended function program in a decompressed state, an ID code storage means for storing an ID code to identify the apparatus, and a decision means for making a decision as to whether the ID code has predetermined content. The received data is processed in accordance with the first program stored in the first storage means and, after the extended function program stored in the second storage means is read out at the branch in the first program, the data is processed in accordance with the extended function program. In this apparatus, a new extended function program can be added at low cost in compliance with requirement.

Description: The present invention relates generally to a digital broadcast receiver and a broadcasting method, and more particularly, but not exclusively, to those adapted for use in transmitting and receiving digitized video data via a broadcast satellite or a communication satellite for example. There has recently been noticed a remarkable diffusion of a broadcasting system which digitizes audio and video signals and broadcasts such signals via a satellite. Digitizing the desired signals realizes transmission of data as well as video and audio signals. According to this system, a broadcast can be received by the use of an exclusive data receiving-processing apparatus (decoder). By previously allocating a unique number (decoder ID) to each decoder and identifying such decoder ID, it is possible to restrict the provision of a predetermined service (e.g., enabling reception of a particular pay program) only to a user having a specific decoder. In other words, it becomes possible to realize a conditional access function. In this field, continuous exploration is currently in progress as to what services are providable, and there is a high possibility of new services being started in some novel form hereinafter. For this reason, it is preferred that each decoder be previously so constituted as to be capable of receiving any new service upon start thereof, that is to say that the decoders are "forward compatible". In a situation where a new service is receivable only by a user who has purchased a new decoder, there arises a difference among available services depending on the rime of purchase of the decoder to consequently bring about some partiality. In the case of adding a new service (new function) as mentioned above, some additional modification needs to be given to the program in the decoder. In an attempt to achieve such modification, it has been discussed heretofore to adopt a method of once collecting the decoder from each user and, after replacing the program ROM incorporated therein, returning the decoder to the user again or replacing the whole decoder with a new one, or to adopt a method of distributing a new IC card to each user and loading a new program from the IC card into the decoder by utilizing an IC card interface incorporated in the decoder (see eg. EP-A-0 506 435). However, if the number of decoders already sold is great, it would be difficult to collect them for upgrading and return to their owners. As regards distributing IC cards, these tend to be expensive and limited in capacity so any modifiable program is limited merely to a short one due to the limited memory capacity of the IC card. It is therefore an object of the present invention to realize simple additional modification of even a relatively long program at low cost. According to a first aspect of the present invention, there is provided a digital broadcast receiver for receiving data transmitted thereto and processing the data through predetermined steps, comprising: a receiving means for receiving data transmitted thereto and also for receiving an extended function program for receiving added broadcast services; a processing means for processing said data received by said receiving means; a first storage means for storing a first program which is used to execute the data processing by said processing means; and a second storage means for storing said extended function program received by said receiving means; wherein said processing means processes the data received by said receiving means in accordance with said first program stored in said first storage means and in accordance with the extended function program, characterised in that: said extended function program is encoded and transmitted to said receiver, and said extended function program is decoded and stored in said second storage means when an ID code of said receiver corresponds to an ID code of said extended function program; and wherein said first program has an execution branch to said extended function program and said processing means processes the received data in accordance with the extended function program at the branch in the first program. According to a second aspect of the present invention, there is provided a broadcasting method which encodes a video signal and broadcasts the same as video data from a transmitter, then receives and decodes the video data by a receiver, said method comprising the steps of: previously storing, in said receiver, a first program to execute a process of decoding the video data, said first program having a branch for an extended function program; receiving the broadcasted video data by said receiver; decoding, in said receiver, the received video data in accordance with the first program previously stored; operating said transmitter to broadcast the extended function program when a specific decoding process is to be executed in said receiver, and operating said receiver to receive and store the broadcasted extended function program; and reading the extended function program at said branch after the extended function program is stored in said receiver, and decoding the video data in accordance with the extended function program, said method further comprising the steps of: previously storing, in said receiver, an ID code to identify said receiver; scrambling the extended function program and transmitting the same from said transmitter to said receiver; making a decision as to whether the ID code stored in said receiver has predetermined content or not; and if the result of such a decision signifies that said ID code has the predetermined content, descrambling the extended function program and storing the same in said receiver. In the present invention, whenever any extended function program is required, the program is transmitted and stored on the receiving side. A branch for the extended function program is prepared in the basic program, so that when the extended function program has been stored, the extended function program can be read out at the branch in the basic program, whereby the data can be processed in accordance with the extended function program thus read out. Consequently, it becomes possible to transmit and add a new extended function program at any time in compliance with requirement. The above and other features and advantages of the present invention will become apparent from the following description which will be given with reference to the illustrative accompanying drawings. In the drawings: Fig. 1 is a block diagram showing an exemplary constitution of a digital telecast decoder where the data receiving-processing apparatus of the present invention is applied; Fig. 2 is a schematic diagram for explaining programs stored in a ROM 7 and an EEPROM 9 included in Fig. 1; and Fig. 3 is a schematic diagram for explaining programs stored in a ROM 7, a RAM 8 and an EEPROM 9 included in Fig. 1. Fig. 1 shows an exemplary constitution of a digital telecast decoder constructed by applying the data receiving-processing apparatus of the present invention. An antenna 1 receives broadcast waves from an unshown satellite and outputs the same as an electric signal to a converter 2. Then the converter 2 down-converts the signal received at the antenna 1 into a signal of a predetermined frequency and outputs the converted signal to a front end 3. The front end 3 demodulates the signal obtained from the converter 2 and, after error correction, outputs the corrected signal to a transport block 4. Subsequently the transport block 4 separates the input data of unitary packets from the front end 3 into a video data packet, an audio data packet and other data packets (e.g., packet of conditional access data which include an extended function program mentioned later). The conditional access data is sent via an IC card interface 5 to an IC card 5A, where a decision is made as to whether the relevant decoder has an access right or not to the input signal. If the result of this decision signifies that the decoder has an access right, a decipher key (control word) is outputted to the transport block 4, which then executes a deciphering process by the use of this control word. The data of a video packet separated in the transport block 4 is supplied to a video decoder 10, while the data of an audio packet is supplied to an audio decoder 11. The video decoder 10 decodes the input video data and outputs the decoded data to an NTSC encoder 12. Then the NTSC encoder 12 encodes the input video data into a video signal of the NTSC system and outputs the same therefrom. Meanwhile the audio decoder 11 decodes the input audio data and then outputs the decoded data as an audio signal. A CPU 6 executes a variety of processes in accordance with a program stored previously in a ROM 7, and stores in a RAM 8 any data and so forth required for each process. An EEPROM 9, which is a nonvolatile reprogrammable memory, is used to store any data (e.g., a pass word or a channel number received immediately before switch-off of the power supply) necessary to be retained even after the power supply for the decoder is switched off. In case the EEPROM 9 is used to store any data necessary to be retained even after switch-off of the power supply, its required capacity may be at most several hundred bytes or so. In this embodiment, however, an extended function program is written in the EEPROM 9. Therefore, the required capacity of the EEPROM 9 employed in this embodiment amounts to 32 kilobytes for example. Now the operation of the above embodiment will be described below. When the power supply for the decoder is switched on, the CPU 6 controls each block in accordance with the program stored in the ROM 7 and starts a receiving operation, so that the signal received at the antenna 1 is supplied via the converter 2 to the front end 3 to be thereby demodulated. And after error correction, the demodulated signal is supplied to the transport block 4. Then the transport block 4 separates the input packet data from the packet ID and supplies the video data to the video decoder 10 while supplying the audio data to the audio decoder 11. The video decoder 10 decodes the input video data and outputs the decoded data to the NTSC encoder 12. Subsequently the NTSC encoder 12 converts the input video data into a video signal of the NTSC system and outputs the converted signal. Meanwhile the audio decoder 11 decodes the input audio data and outputs the decoded data as an audio signal. In this manner, both pictures and sounds corresponding respectively to the video data and the audio data broadcasted via the satellite can be watched and listened on an unshown monitor unit. When the conditional access data has been inputted, the transport block 4 supplies the same to the IC card 5A via the IC card interface 5. A CPU incorporated in the IC card 5A requests the CPU 6, via the transport block 4, to read out the decoder ID allocated to the relevant decoder. In response to such a request, the CPU 6 reads out the decoder ID stored in the ROM 7 (or EEPROM 9) and then supplies the decoder ID via the transport block 4 to the IC card 5A. The CPU incorporated in the IC card 5A makes a decision as to whether the decoder ID has an access right to the conditional access data or not. And if the result of this decision signifies that the decoder ID has an access right, a control word is supplied to the transport block 4. Subsequently in the transport block 4, there is executed a process of deciphering or descrambling the conditional access data by the use of such a control word. An extended function program is also included in the conditional access data. Therefore the extended function program ciphered similarly is transmitted, via the satellite, as a plurality of packets inclusive of predetermined decoder ID. Consequently, only the decoder including specific decoder ID has an access right to these packets and is enabled to decipher the same, whereby it is rendered possible merely for a user, who paid a predetermined additional fee already, to add the required extended function. The CPU 6 transfers the extended function program, which has been deciphered in the transport block 4, to the EEPROM 9 and then stores the program therein. Fig. 2 typically shows a basic program stored in the ROM 7 and extended function programs stored in the EEPROM 9. More specifically, the basic program stored in the ROM 7 includes, in its address a1 for example, a branch step for the extended function program. This branch step is so programmed that an address stored at each of, e.g., entries t1 to t3 of the EEPROM 9 is read and, when the address is 0, it is regarded as no storage of any extended function program therein, and an error process is executed. Meanwhile, when a predetermined address is written therein, the corresponding address of the EEPROM 9 is accessed so that the extended function program stored in that address is read out therefrom. In the embodiment of Fig. 2, an address f1 is described at an entry t1 of the EEPROM 9, and an address f2 is described at an entry t2. And an extended function program 1 is written in the address f1 of the EEPROM 9, while an extended function program 2 is written in the address f2. Therefore, either the extended function program 1 or 2 is executed. In this embodiment, 0 is written at an entry t3 of the EEPROM 9. Consequently, this embodiment is in such a state that merely two of the three extended function programs can be utilized, but the third one is not utilizable yet. In comparison with the RAM 8, the EEPROM 9 is generally slower in access speed, smaller in capacity and more expensive. Therefore the production cost of the EEPROM 9 is extremely increased if its capacity is set to be so great. In order to eliminate such a disadvantage, there may be contrived a technique of compressing and storing an extended function program in the EEPROM 9 and, at the time of switching on the power supply or starting the program, unwinding (expanding) the compressed extended function program stored in the EEPROM 9 and then writing the unwound program in the RAM 8. Fig. 3 shows an embodiment representing the above case. Similarly to the aforementioned example, an extended function program transmitted via a satellite is written in the EEPROM 9. However, in the embodiment of Fig. 3, the extended function program is sent in a compressed state from the transmitter side and then is stored in the EEPROM 9 while being retained in such a compressed state. Consequently it becomes possible to hold even a relatively long program in the EEPROM 9 without the necessity of increasing the storage capacity thereof so much. In this case, the extended function program from the transmitter side may be sent as uncompressed data and may be stored in the EEPROM 9 after being compressed by the CPU 6 on the receiver side. For compression of a program, there is adopted a lossless data compression method based on reversible encoding which is capable of completely resuming the former original data by unwinding (expanding) the compressed data. Some known codes adequate for such data compression are, e.g., run length code, Huffman code, arithmetic code, and Lempel-Ziv code. In this embodiment, there is a description in an address a0 of the ROM 7 to execute a process of unwinding the compressed extended function program stored in the EEPROM 9 when the power supply for the encoder is switched on, whereby an extended function table stored in the EEPROM 9 is unwound and stored in the RAM 8. In the embodiment of Fig. 3, addresses F1, F2, 0 are described correspondingly to the descriptions f1, f2, 0 at entries t1 to t3 of the EEPROM 9. An extended function program 1 in an unwound state is stored in the address F1 of the RAM 8, and an extended function program 2 in an unwound state is stored in the address F2. Entries T1 to T3 of the RAM 8 are described at the branch step for the extended function program in the address a1 of the ROM 7. Therefore, similarly to the foregoing example of Fig. 2, it is possible to execute the extended function program 1 stored in the address F1 of the RAM 8 written at the entry T1, and also the extended function program 2 stored in the address F2 written at the entry T2. Differing from the state in the EEPROM 9, the extended function programs unwound in the RAM 8 are erased when the power supply for the decoder is switched off. Therefore the program unwinding process is necessary every time the power supply is switched on. However, the programs once unwound are continuously utilizable until switch-off of the power supply. In case it is presumed that the storage area of the RAM 8 may probably become insufficient, the extended function programs can be erased, whenever not required, in response to a command from a user. It is also possible to modify the configuration in such a manner that the CPU 6 detects probable insufficiency of the storage area of the RAM 8 and erases any unrequired program. Thus, the present invention enables only a specified decoder to utilize, e.g., game software or an electronic program guide (EPG) for selecting a desired one of many broadcast channels, or to monitor pay-per-view picture. In a state where merely video data alone out of video and audio data is scrambled (ciphered) and broadcasted, if the broadcasting method is so changed as to scramble the audio data as well, a program necessary for descrambling the scrambled audio data is transmitted from a broadcasting station (transmitter side) to each encoder (receiver side) so that the scrambled audio data can also be descrambled. In the embodiment mentioned above, an EEPROM is employed as a memory for holding the data even in an off-state of the power supply. However, any other memory is usable as well if it is nonvolatile and reprogrammable. And the timing for unwinding (expanding) the compressed program may be set to coincide with the use thereof. According to the present invention, as mentioned above, an extended function program is transmitted and stored whenever necessary. A branch for the extended function program is previously prepared in a basic program and, when the extended function program has been stored, it can be read out at the branch in the basic program, so that data can be processed in accordance with the extended function program thus read out. Therefore, it becomes possible to transmit and add a new extended function program in compliance with the requirement. Although the present invention has been described hereinabove with reference to some preferred embodiments thereof, it is to be understood that the invention is not limited to such embodiments alone, and a variety of other modifications and variations will be apparent to those skilled in the art. The scope of the invention, therefore, is to be determined solely by the appended claims.

Claims: A digital broadcast receiver for receiving data transmitted thereto and processing the data through predetermined steps, comprising: a receiving means (1) for receiving data transmitted thereto and also for receiving an extended function program for receiving added broadcast services; a processing means (6) for processing said data received by said receiving means; a first storage means (7) for storing a first program which is used to execute the data processing by said processing means (1); and a second storage means (9) for storing said extended function program received by said receiving means (1); wherein said processing means (6) processes the data received by said receiving means (1) in accordance with said first program stored in said first storage means (7) and in accordance with the extended function program, characterised in that : said extended function program is encoded and transmitted to said receiver, and said extended function program is decoded and stored in said second storage means (9) when an ID code of said receiver corresponds to an ID code of said extended function program; and wherein said first program has an execution branch to said extended function program and said processing means (6) processes the received data in accordance with the extended function program at the branch in the first program. A digital broadcast receiver according to claim 1, wherein said extended function program is transmitted to said receiver in a compressed state and stored in said second storage means (9). A digital broadcast receiver according to claim 2, wherein said receiver further comprises a third storage means (8) for storing the decompressed extended function program when the compressed program stored in said second storage means (9) has been read out and decompressed. A digital broadcast receiver according to claim 3, wherein said first storage means (7) is a read-only memory, said second storage means (9) is a nonvolatile memory, and said third storage means (8) is a volatile memory. A digital broadcast receiver according to claim 4, wherein said processing means (6) compresses the received extended function program and stores the same in said second storage means (9). A digital broadcast receiver according to any one of the preceding claims, further comprising an ID code storage means (7) for storing said ID code to identify the receiver, and a decision means for making a decision as to whether the ID code stored in said ID code storage means has predetermined content corresponding to said ID code of said extended function program or not; wherein the extended function program is transmitted in a scrambled state, and only when the result of the decision made by said decision means signifies that the ID code stored in said ID code storage means has the predetermined content, the scrambled extended function program is descrambled and then is stored in said second storage means. A digital broadcast receiver according to claim 6, further comprising an IC card interface (5) through which the data is transmitted to or received from an IC card (5A), wherein said decision means is incorporated in said IC card (5A). A digital broadcast receiver according to any one of the preceding claims, wherein said data is composed of encoded video and audio signals. A digital broadcast receiver according to any one of the preceding claims, wherein a plurality of extended function programs are stored in said second storage means (9). A digital broadcast receiver according to any one of the preceding claims, wherein said data comprises at least a video signal transmitted in a compressed state, and said processing means decodes the compressed video signal into the original noncompressed signal. A broadcasting method which encodes a video signal and broadcasts the same as video data from a transmitter, then receives and decodes the video data by a receiver, said method comprising the steps of: previously storing, in said receiver, a first program to execute a process of decoding the video data, said first program having a branch for an extended function program; receiving the broadcasted video data by said receiver; decoding, in said receiver, the received video data in accordance with the first program previously stored; operating said transmitter to broadcast the extended function program when a specific decoding process is to be executed in said receiver, and operating said receiver to receive and store the broadcasted extended function program; and reading the extended function program at said branch after the extended function program is stored in said receiver, and decoding the video data in accordance with the extended function program, said method further comprising the steps of: previously storing, in said receiver, an ID code to identify said receiver; scrambling the extended function program and transmitting the same from said transmitter to said receiver; making a decision as to whether the ID code stored in said receiver has predetermined content or not; and if the result of such a decision signifies that said ID code has the predetermined content, descrambling the extended function program and storing the same in said receiver. A broadcasting method according to claim 11, wherein said transmitter transmits the extended function program in a compressed state to said receiver.

Inventors: OZAWA TOSHIRO, YUCHI HIROFUMI, OZAWA, TOSHIRO, YUCHI, HIROFUMI, Ozawa, Toshiro, c/o Sony Corporation, Yuchi, Hirofumi, c/o Sony Corporation
Applicants: SONY CORP, SONY CORPORATION
Application year: 1996
Main classification: H04N7
IPC codes: H04N7, H04N5