[go: up one dir, main page]

JP2001521692A - Download computer files from transmitter to computer via receiver / decoder - Google Patents

Download computer files from transmitter to computer via receiver / decoder

Info

Publication number
JP2001521692A
JP2001521692A JP54322098A JP54322098A JP2001521692A JP 2001521692 A JP2001521692 A JP 2001521692A JP 54322098 A JP54322098 A JP 54322098A JP 54322098 A JP54322098 A JP 54322098A JP 2001521692 A JP2001521692 A JP 2001521692A
Authority
JP
Japan
Prior art keywords
block
computer
blocks
data
receiver
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP54322098A
Other languages
Japanese (ja)
Inventor
メイラウド,ユージェン
ゲラルド モーリス ビューク,ジャン−ベルナール
Original Assignee
カナル プラス ソシエテ アノニム
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by カナル プラス ソシエテ アノニム filed Critical カナル プラス ソシエテ アノニム
Publication of JP2001521692A publication Critical patent/JP2001521692A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Discrete Mathematics (AREA)
  • Communication Control (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 ファイルまたはその1部が、データの一連のRグループに分割され、そのグループの各々が、データの一連のCブロックに細分されている。C冗長ブロックのグループが生成され、冗長ブロックの各々が、データブロックのビットワイズ排他ORまたはNORであることにより、Rグループ内のデータブロックの対応する1つと関連している。データブロックのグループと冗長ブロックのグループがトランスミッタから連続して送信される。レシーバ/デコーダにおいて、送信されたブロックの少なくともいくつかが受信されて、コンピュータに供給される。このコンピュータは、受信された冗長ブロックの少なくとも1つについて、その冗長ブロックと、1つを除く全てのこれと対応するデータブロックとが受信されたかどうかを決定し、受信されている場合には該1つのデータブロックを再生するために使用される。欠損したデータブロックは、再送信を待つことなく再生が可能である。 (57) Summary A file or portion thereof is divided into a series of R groups of data, each of which is subdivided into a series of C blocks of data. A group of C redundant blocks is generated, each of the redundant blocks being associated with a corresponding one of the data blocks in the R group by being a bitwise exclusive OR or NOR of the data blocks. A group of data blocks and a group of redundant blocks are continuously transmitted from the transmitter. At a receiver / decoder, at least some of the transmitted blocks are received and provided to a computer. The computer determines, for at least one of the received redundant blocks, whether the redundant block and all but one of its corresponding data blocks have been received, and if so, the corresponding data block. Used to play one data block. The lost data block can be reproduced without waiting for retransmission.

Description

【発明の詳細な説明】 レシーバ/デコーダを介したトランスミッタからコンピュータへの コンピュータファイルのダウンロード 本発明は以下に関するものである。 ● レシーバ/デコーダ(デジタル衛星TVセットトップボックス等)を介 して、トランスミッタ(衛星TVアップリンクトランスミッタ等)からコンピュ ータへ(PCまたはワークステーション等)コンピュータファイルをダウンロー ドする手段; ● このような手段の1部を実行するために使用するコンピュータ; ● このようなコンピュータの処理手段をプログラムするためのコンピュー タプログラムを備えた記録媒体(ディスケットまたはCD−ROM等); ● MPEG送信システム; ● MPEGビデオおよび/または音声データと、コンピュータファイルデ ータのブロック。 主にTV信号のブロードキャスト、特に、しかし限定的にではなく、衛星TV システムを目的としたデジタル送信システムの到来により、こうしたシステムを 別の用途に使用する可能性がでてきた。例えば、エンドユーザがダウンロードす ることができるコンピュータファイルまたはソフトウェアである。 こうした送信システムではデータエラーが頻繁に発生する。ビデオまたは音声 データのエラーの場合、これらのデータエラーは補間技術等を使って頻繁にごま かすことができるが、コンピュータファイルの単一ビットがそのファイルを使用 不可能にしてしまう。 本発明の第1の面は、レシーバ/デコーダを介した、トランスミッタからコン ピュータへのコンピュータファイルのダウンロードに特に関連し、ファイルをデ ータのブロックに分割する段階と、トランスミッタからそのブロックを送信する 段階と、レシーバ/デコーダで送信されたブロックを受信する段階と、レシーバ /デコーダからコンピュータに受信したブロックを供給する段階とを有する。一 般に、ブロックはCRCコードを含んでいるため有効性を調べることができ、ブ ロックの送信が繰返されるため、もし1度目の送信時にブロックの受信が正確に 行われなかった場合、または全く受信できなかった場合でも、2度目、あるいは 後続する送信時に受信される。こうしたスキームを伴う問題は、1つ以上のブロ ックが適切に受信されなかった場合、ファイルの受信により長い時間がかかって しまうことである。極端な場合、最後のブロックが適切に受信されないと、その ファイルをダウンロードするためにかかる合計の時間は約2倍になってしまう。 こうしたスキームに伴う別の問題は、例えば、レシーバ/デコーダからコンピュ ータへのダウンロード値が、トランスミッタからレシーバ/デコーダへのダウン ロード値よりも低いために、ブロックが送信された順番でダウンロードされない 場合に、最後の数ブロックを待つ時間が比較的長くなることである。極端な場合 、最後の数ブロックを待つ時間は、ブロックの1セット全部を送信するのにかか る時間とほぼ同じ程度に長い。これは全てのブロックが有効に受信された場合も 同様である。 本発明の第1面によれば、ファイルまたはその1部を一連のデータのRグルー プに分割し、前記グループの各々を一連のデータのCブロックに細分する段階を 有し、C冗長ブロックのグループを生成する段階を有し、これらのデータブロッ クのビットワイズ排他ORまたはNORであることにより、各冗長ブロックが、 前記Rグループ内の対応するデータブロックと関連し、前記データブロックのグ ループと前記冗長ブロックのグループの各々をトランスミッタから送信する段階 を有し、前記送信されたブロックの少なくともいくつかを前記レシーバ/デコー ダで受信する段階を有し、前記受信されたブロックを、前記レシーバ/デコーダ からコンピュータへ供給する段階を有し、前記受信された冗長ブロックの少なく とも1つについて、その冗長ブロックと、これに関連する1つを除く全てのデー タブロックが受信されたかどうかを前記コンピュータで決定し、受信されている 場合には、その冗長ブロックと、これに対応する受信されたデータブロック上に おいて、ビットワイズ排他ORまたはNORオペレーションを実行することによ り前記1つのデータブロックを再生する段階を有する、レシーバ/デコーダを介 してトランスミッタからコンピュータにコンピュータファイルをダウンロードす る方法が得られる。 疑問を避けるため、複数のデータブロック上でのビットワイズ排他ORオペレ ーションとは、ブロックの最初の1つの各ビットがそのブロックの第2の対応ビ ットでXORされることを意味し、この結果がブロックの第3の対応ビットでX ORされ、これがブロックの最後の1つまで続けられる。簡略化のために、第2 ブロックの第1ビットでXORされたのは第1ブロックの第1ビットであり、そ の結果が第3ブロックの第1ビットでXORされ、その結果の第1ビットを得る ためにこれが続けられ、また、第2ビット、第3ビット等についても同様の動作 が実行される。しかし、これとは異なる所定のブロックのビットの置換をXOR オペレーションに採用することも可能である。XORではなく排他NORオペレ ーションが採用されている場合にも、同様の解釈が当てはまる。 本発明の第1の面は、特にファイルダウンロードオペレーションの最後にかけ て、データブロックがまだ受信されていなくても、残りのデータブロックの送信 および有効性の受信を待つことなく、対応する冗長ブロックと対応するデータブ ロックからそのブロックを再生することが可能である。特定のブロックの送信ま たは受信に問題がある場合は、同一の一連のCブロック内の次のブロックの送信 または受信においても問題が発生する可能性が比較的高い。しかし、値Cを適切 に選択することで、Cブロックの次の連続内にある関連ブロックの送信または受 信に問題が発生する可能性は比較的低くなる。こうした冗長ブロックを追加する ことで、全てのブロックを100/R%で送信するのに必要な時間が長くなって しまう。しかし、Rの値を適切に選択することで、本発明のこの面が提供する利 点でこの欠点を補うことが可能である。一般に、CとRの値は、それぞれ50、 10とすることができる。 決定および再生段階は、いくつかの受信した冗長ブロックのみに、特にファイ ルダウンロードオペレーションの最後に近いもの対して実行することができる。 しかし、決定および再生段階は、1つを除く全ての対応するデータブロックが受 信されている冗長ブロックの受信した各々に実行することが好ましい。この後者 の場合、方法はさらに、残りのデータブロックを再生するのに十分なブロックが 受信された時と、ファイルまたはその前記部分にそれ以上のブロックの受信を中 止する時とを決定する段階を有する。従って、再生段階は、必要な全てのブロッ クが受信されてから実行される。 番号RとCの値は、全てのファイルダウンロードオペレーションにおいて同じ 値である。しかし、柔軟性を提供するために、この方法はさらに、番号RとCの 値を表示するデータをトランスミッタから送信し、レシーバでR、Cデータを受 信し、R、Cデータをコンピュータに供給する段階を有することが好ましく、こ こでコンピュータは、各々の冗長ブロックがどのデータブロックに対応するかを 決定する上で、供給されたR、Cデータを使用する動作が可能である。 ブロックは、C冗長ブロックのグループ内にあるi番目(i=1〜C)の冗長 ブロックが、Cデータブロックの各Rグループ内のi番目データブロックと対応 するような順序で配置されることが好ましい。しかし、その他の関係も可能であ る。 本発明の第2の面によれば、コンピュータが、前記レシーバ/デコーダから前 記ブロックを受信する手段を有し、前記受信したブロックを処理するための手段 を有し、前記処理手段が、前記受信した冗長ブロックの少なくとも1つについて 、その冗長ブロックと、これに対応するデータブロックの1つを除く全部が受信 されているかどうかを決定し、受信されている場合は、その冗長ブロック上と、 対応する受信したデータブロック上でビットワイズ排他ORまたはNORオペレ ーションを実行することにより、前記1つのデータブロックを再生するようにプ ログラムされており、前記受信したデータブロックと、あらゆる再生されたデー タブロックとを記憶する手段を有する、本発明の第1の面の方法の1部を実行す るために使用するコンピュータが得られる。 処理手段は、1つを除く全ての対応するデータブロックが受信されている冗長 ブロックの受信した各々について、こうした決定および再生を実行するようにプ ログラムされていることが好ましい。この場合、処理手段は、残りのデータブロ ックの再生に十分なブロックが受信された時を決定し、また、受信手段が、ファ イルまたはその該1部のブロックのそれ以上の受信を中止するようにプログラム されていることが好ましい。 受信手段は、番号R、Cの値を表示するデータを受信するように動作可能であ ることが好ましく、また、処理手段は、冗長ブロックの各々がどのデータブロッ クに対応するかを決定する上で、R、Cデータを使用するようにプログラムされ ている。 処理手段は、コンピュータファイルまたはその1部を再構成するために、受信 したデータブロックと再生されたあらゆるデータブロックとをリンクするように プログラムされていることが好ましく、また、記憶手段はこの再構成されたファ イルまたはその1部を記憶するように動作可能であることが好ましい。 本発明の第3の面によれば、上述したように動作するために、本発明の第2の 面によるコンピュータの処理手段をプログラムするためのコンピュータプログラ ムを備えた記憶媒体が得られる。 本発明の第4の面によれば、レシーバ/デコーダへダウンロードするために、 ファイルまたはその1部を、データの一連のRグループに分割し、また、前記グ ループの各々を前記データの一連のCブロックに細分する手段を有し、C冗長ブ ロックのグループを生成する手段を有し、前記各冗長ブロックが、データブロッ クのビットワイズ排他ORまたはNORであることによって、Rグループ内のデ ータブロックの対応する1つと関連し、前記データブロックのグループと、前記 冗長ブロックのグループとの各々を送信する手段を有することを特徴とするMP EG送信システムが得られる。 本発明の第5の面は、ファイルをデータのブロックに分割し、トランスミッタ からブロックを連続して送信し、送信されたブロックをレシーバ/デコーダで受 信し、受信したブロックをレシーバ/デコーダからコンピュータに供給する段階 を備えた、レシーバ/デコーダを介してトランスミッタからコンピュータへコン ピュータファイルをダウンロードする方法に特に関連する。 データのブロックは、一般に700キロビット/秒といった固定のデータ値に おいてトランスミッタからレシーバ/デコーダへ送信される。異なる能力を持つ コンピュータでレシーバ/デコーダを使用するため、また、これらの能力を役立 たせるために、レシーバ/デコーダは、データ値の異なる様々なモードでブロッ クをコンピュータにダウンロードすることが可能である必要がある。この様々な モードとは、典型的な1Mビット/秒のデータ値を有するIEEE 1284E CPモード、典型的な400キロビット/秒のデータ値を有するIEEE 12 84パラレルバイトモード、典型的な150〜200キロビット/秒のデータ値 を有するIEEE 1284パラレルニブルモード、おそらく115キロビット /秒の最大データ値を有し、典型的なデータ値がこれよりもかなり低い可能性が あるRS−232シリアルモードである。 レシーバ/デコーダへのデータ値がレシーバ/デコーダからのデータ値よりも 速い場合、全てのデータブロックが確実にコンピュータに受信およびダウンロー ドされるように対処する必要がある。これは、完全なコンピュータファイルを記 憶できる十分な大きさのレシーバ/デコーダにバッファを設けることで達成され る。あるいは、レシーバ/デコーダからコンピュータへの最小のデータ値を概算 し、これをレシーバ/デコーダの期待データ値に分割して、端数を切上げした整 数Xを求め、受信したブロックの各X内の1つがコンピュータにダウンロードさ れるため、N/Xブロックが1つの位相に受信され、全てのNブロックをダウン ロードするためにこの位相がX回繰返される。しかしながら、これは、効率性の ために正確に概算されたコンピュータへのデータ値に依存するものであり、実際 にはデータ値は変化するので、この方法は不可能である。また、この方法を使用 すると、特定のデータブロックが損失した場合に重大な問題が発生してしまう。 本発明の第5の面は、これらの問題の解決方法を見つけることである。 本発明の第5の面によれば、前記ファイルを複数(N)のブロックに分割する 段階を有し、前記ファイルのブロックの各々を、そのブロックの一致と共に、前 記トランスミッタから連続して送信する段階を有し、レシーバ/デコーダにおい て、各ブロックにつき、最初にリセットされた複数のNフラグを1つ提供し、前 記ブロックの最新の送信を受信する段階と、そのブロックにフラグが設定されて いるかどうかを決定し、設定されていない場合には、前記レシーバから前記コン ピュータにそのブロックを供給し、そのブロックにフラグを設定する段階とを全 てのフラグが設定されるまで周期的に繰返す、レシーバ/デコーダを介して、ト ランスミッタからコンピュータにコンピュータファイルをダウンロードする方法 が得られる。 従って、レシーバ/デコーダに受信されるブロックの順番は関係ないことがわ かるであろう。レシーバ/デコーダはブロックが必要であるかどうかの決定もで き、必要である場合にはそのブロックをコンピュータにダウンロードする。レシ ーバ/デコーダが、ブロックをレシーバ/デコーダにダウンロードするのと同じ 速度でブロックをコンピュータにダウンロードできる場合には、全てでない場合 ほとんどのブロックが順番に連続してダウンロードされる。しかし、レシーバ/ デコーダが、ブロックをレシーバ/デコーダにダウンロードするのと同じ速度で ブロックをコンピュータにダウンロードできない場合、例えばその半分の速度で しかダウンロードできない場合には、一般的に言えば、ある段階において別のブ ロックがダウンロードされ、続いて、後続する段階において残りのブロックがダ ウンロードされる。レシーバ/デコーダへのダウンロード値とレシーバ/デコー ダからのダウンロード値の間の比率が変化すると、上述した装置がブロックのイ ンターリーブを自動的に調整する。 供給段階の各々を遂行しながら、コンピュータは、供給されたブロックの受信 の肯定応答をレシーバ/デコーダに送信することが好ましく、そのブロックの肯 定応答の受信に反応して、各ブロックの設定が実行される。従って、ブロックが コンピュータによって適切に肯定されていない場合、レシーバ/デコーダは次の 機会にそのブロックを再びダウンロードする。 この方法は、フラグをリセットする段階を除いて、方法を繰返す段階をさらに 有する。従って、ブロックの受信に割込みがあった場合、ダウンロード方法は、 既に受信したブロックをダウンロードすることなく再開される。 本発明の第6の面によれば、MPEGビデオおよび/または音声データのテー ブルと、コンピュータファイルデータのブロックを受信するように配置されたレ シーバ/デコーダであって、コンピュータファイルが、周期的に受信されるこう したブロックの複数Nとして受信され、こうしたブロックの各々がそのブロック の識別を有しており、前記レシーバ/デコーダが、各コンピュータファイルブロ ックについて、最初にリセットされている複数のNフラグを1つ記憶する手段を 有し、1番新しく受信したコンピュータファイルブロックを一時的に記憶する手 段を有し、前記ブロック記憶手段内に記憶された前記ブロックをコンピュータに 供給する手段と、1番新しく受信したブロックのフラグが前記フラグ記憶手段で 設定されているかどうかを決定し、設定されていない場合には、前記ブロック供 給手段に、前記ブロック記憶手段から前記コンピュータへそのブロックを供給さ せ、前記フラグ記憶手段内のそのブロックにフラグを設定させる制御手段を有す ることを特徴とするレシーバ/デコーダが得られる。 レシーバ/デコーダは、コンピュータから、このようなブロックがブロック供 給手段から受信された旨の肯定応答を受信するための手段をさらに有し、前記制 御手段が、前記ブロックの肯定応答に反応して、そのブロックにフラグを設定す るように動作可能であることが好ましい。 制御手段は、接続が損失した後に、フラグをリセットすることなくコンピュー タファイルブロックの受信を再開させるように動作可能であることが好ましい。 ブロック供給手段が、異なるタイプの複数のブロック供給手段であり、例えば 、ECPモードIEEEパラレルポート、バイトモードIEEEパラレルポート 、ニブルモードIEEEパラレルポート、RS−232シリアルポートの内の少 なくとも2つを備えている。 レシーバ/デコーダを介してトランスミッタからコンピュータへコンピュータ ファイルをダウンロードする方法に、本発明の第1および第5の特徴を組合せて 採用することが可能であることに留意すべきである。 次に、本発明の特徴を、添付の図面を参照しながら、純粋に例証の方法によっ て説明する。 第1図は、デジタルテレビシステムの全体のアーキテクチャである。 第2図は、第1図で示したデジタルテレビシステムのインタラクティブシステ ムのアーキテクチャである。 第3図は、第1図、第2図のシステムのレシーバ/デコーダ形成部品のインタ ーフェースの略線図である。 第4図は、デジタルテレビシステムに使用される遠隔コンローラの略線図であ る。 第5図は、ダウンロードされるファイルを構成するブロックの配置を示す。 第6図は、ファイルがダウンロードされている際のブロックのシーケンスを示 す。 第7図は、ファイルのダウンロードオペレーションの最中にあるレシーバ/デ コーダの機能線図である。 第8図〜第12図は、ファイルのダウンロードオペレーション中にレシーバ/ デコーダ内で起こるプロセスを示す系統線図である。 第13図は、ダウンロードされるファイルを構成するブロックの配置を示す別 の図である。 第14図は、第13図に示したブロック第1マトリックスをさらに詳細に示す 図である。 第15図は、第13図に示したブロックの一般化したマトリックスを示す図で ある。 第16図は、ダウンロードのためのファイルを準備する上で、テレビシステム のアプリケーションとデータサーバにおいて実行される処理を示す系統線図であ る。 第17図は、ファイルダウンロードオペレーションの最中に実行される処理を 示す系統線図である。 本発明によるデジタルテレビシステム1000の全体像を第1図に示している 。本発明は主に、圧縮したデジタル信号を送信するために従来のMPEG−2圧 縮システムを利用した従来のデジタルテレビシステム2000を備えている。よ り詳細には、ブロードキャストセンター内のMPEG−2コンプレッサ2002 がデジタル信号ストリーム(一般にはビデオ信号のストリーム)を受信する。コ ンプレッサ2002はリンケージ2006でマルチプレクサ、スクランブラ20 04と接続している。マルチプレクサ2004は複数の入力信号をさらに受信し 、1つ以上の送信ストリームをアセンブルし、圧縮されたデジタル信号を、リン ケージ2010を介してブロードキャストセンターのトランスミッタ2008へ 送信する。もちろんこの送信は、遠隔通信リンクを含む幅広いバラエティの形式 で行うことができる。トランスミッタ2008はアップリンク2012を介して 電磁信号を衛星トランスポンダ2014へ送信する。この衛星トランスポンダに おいて、電磁信号は電子的に処理され、概念的なダウンリンク2016を介して 地上のレシーバ2018へブロードキャストされる。レシーバ2018は、一般 にはエンドユーザが所有またはレンタルしている衛星受信アンテナである。レシ ーバ2018が受信した信号は統合レシーバ/デコーダ2020へ送信される。 統合レシーバ/デコーダ2020は、エンドユーザが所有またはレンタルし、エ ンドユーザのテレビセット2022と接続ている。さらに、レシーバ/デコーダ 2020は、圧縮MPEG−2信号をテレビセット2022用のテレビ信号にデ コードする。 条件付きアクセスシステム3000は、マルチプレクサ2004、レシーバ/ デコーダ2020に接続しており、また、1部がブロードキャストセンター内に 、別の1部がデコーダ内に配置されている。これにより、エンドユーザは1つ以 上のブロードキャストサプライヤからのデジタルテレビブロードキャストにアク セスすることができる。コマーシャルオファー(ブロードキャストサプライヤが 販売する単数または複数のテレビプログラム)に関連するメッセージの解読が可 能なスマートカードを、レシーバ/デコーダ2020内に挿入することができる 。エンドユーザは、デコーダ2020とスマートカードを使って、サブスクリプ ションモードまたは番組有料視聴制のいずれかでコマーシャルオファーを購入す ることができる。 インタラクティブシステム4000もマルチプレクサ2004、レシーバ/デ コーダ2020と接続しており、さらに1部がブロードキャストセンター内に、 別の1部がデコーダ内に配置されている。これにより、エンドユーザはモデムに 繋がれたバックチャネル4002を介して多くのアプリケーションと対話するこ とができる。 第2図は、本発明によるデジタルテレビシステム1000のインタラクティブ テレビシステム4000の一般アーキテクチャを示す。 例えば、インタラクティブシステム4000により、エンドユーザは画面上の 形ログから商品を購入することができ、オンデマンドでローカルニュースや天気 予報を観ることや、ゲームで遊ぶことが可能になる。 インタラクティブシステム4000は、全体として4つの主要素を備えている 。 ● オーサリングツール4004。ブロードキャストセンターまたはその他 の場所に設けられ、ブロードキャストサプライヤがアプリケーションの作成、開 発、デバッグ、テストを行える。 ● アプリケーションおよびデータサーバ4006。ブロードキャストセン ターにあり、オーサリングツール4004と接続している。エンドユーザに向け て同報通信を行うために、ブロードキャストサプライヤはこれを使用して、アプ リケーションとデータをMPEG−2伝送ストリーム(一般にはその専用セクシ ョン)に挿入するべくマルチプレクサおよびスクランブラ2004へ伝達するた めに、準備し、有効にし、フォーマットすることができる。 ● 実行時エンジン(RTE)を備えたバーチャルマシン4008。これは 、エンドユーザが所有またはレンタルしているレシーバ/デコーダ2020内に インストールされた一行可能なコードであり、エンドユーザはレシーバ/デコー ダ2020の稼動メモリ内に実行のためにアプリケーションを受信し、有効にし 、圧縮を解除し、ロードすることができる。エンジン4008はまた、常駐の、 汎用アプリケーションを実行する。エンジン4008はハードウェアおよびオペ レーティングシステムから独立している。 ● レシーバ/デコーダ2020と、アプリケーションおよびデータサーバ との間においてモデムで繋がれたバックチャネル4002。これにより、エンド ユーザの要求に応じて、信号に、サーバ4006にデータとアプリケーションを MPEG−2伝送ストリームに挿入するように指示することが可能になる。 インタラクティブTVシステムは、システムに内蔵されたレシーバ/デコーダ および様々な装置の機能を制御する「アプリケーション」を使用して動作する。 アプリケーションはエンジン4008内で「リソースファイル」として表されて いる。「モジュール」は、リソースファイルとデータのセットである。1つのア プリケーションを構成するためインは数個のモジュールが必要である。レシーバ /デコーダの「メモリボリューム」とはモジュールのための記憶スペースである 。モジュールは、MPEG−2伝送ストリームからレシーバ/デコーダ2020 内にダウンロードすることもできる。 レシーバ/デコーダ2020の物理的インターフェースはデータのダウンロー ドに使用される。第3図を参照すると、デコーダ2020は、例えば次の6つの ダウンロード装置を備えている。MPEGフローチューナ4028、シリアルイ ンターフェース4030、パラレルインターフェース4032、モデム4034 、2つのカードリーダ4036。 本明細書の目的として、アプリケーションとは、好ましくはレシーバ/デコー ダ2020の高レベル機能を制御するためのコンピュータコードの1ピースであ る。例えば、エンドユーザが、遠隔コントローラ2026(第4図にさらに詳細 に示す)をテレビセット2022の画面上のボタンオブジェクト上に照準し、有 効キーを押すと、そのボタンに関連した指示シーケンスが実行される。 インタラクティブアプリケーションは、エンドユーザの要求に応じてメニュー の提示、命令の実行を行い、そのアプリケーションの目的に関するデータを提供 する。アプリケーションは、レシーバ/デコーダ2020のROM(またはFL ASHあるいは他の非揮発性メモリ)内に記憶された常駐アプリケーションか、 ブロードキャストのどちらであってもよく、デコーダ2020のRAM(または FLASH)内にダウンロードされる。 アプリケーションの例を以下に示す。 ● 開始アプリケーション。レシーバ/デコーダ2020が、モジュールの 適応可能なコレクション(この用語については後に詳細に説明する)である常駐 開始アプリケーションを備えている。モジュールの適応可能なコレクションは、 レシーバ/デコーダ2020をMPEG−2環境で即時動作可能にする。アプリ ケーションは、所望であればブロードキャストサプライヤによって変更が可能な コア特性を備えている。また、コア特性は常駐アプリケーションとダウンロード したアプリケーションの間のインターフェースを提供する。 ● スタートアップアプリケーション。スタートアップアプリケーションは 、ダウンロードしたまたは常駐のいずれであってもよいアプリケーションをレシ ーバ/デコーダ2020上で実行する。このアプリケーションは、アプリケーシ ョンを開始するために、サービスが到着すると実行されるブートストラップとし て働く。スタートアップはRAM内にダウンロードされるため、アップデートが 容易に行える。またスタートアップを、ダウンロードの直後、またはプリロード の後のいずれかに、各チャネルで使用可能なインタレクティブアプリケーション の選択および実行が可能であるように構成することも可能である。プリロードの 場合には、アプリケーションはメモリ2024内にロードされ、必要に応じてス タートアップによって起動することが可能である。 ● プログラムガイド。プログラムガイドは、プログラミングについての完 全な情報を提供するインタラクティブアプリケーションである。例えば、プログ ラムガイドは、デジタルTVブーケの各チャネルに割当てられた1週間のTVプ ログラムについての情報を提供する。遠隔コントローラ2026上のキーを押す と、エンドユーザは、テレビセット2022の画面上にある事象の上にオーバレ イされたアッドオン画面にアクセスできる。このアッドオン画面は、デジタルテ レビブーケの各チャネルの現在および次の事象についての情報を提供するブラウ ザである。遠隔コントローラ2026上の別のキーを押すと、エンドユーザは、 1週間以上の事象についての情報のリストを表示するアプリケーションにアクセ スできる。さらにエンドユーザは、単純でカストマイズされたクリテリアで事象 の検索およびソートが行える。また、選択したチャネルに直接アクセスすること ができる。 ● 番組有料視聴制アプリケーション。番組有料視聴制アプリケーションは 、条件付きアクセスシステム3000と連結したデジタルテレビブーケの各PP Vチャネル上で利用可能なインタラクティブサービスである。エンドユーザは、 TVガイドまたはチャネルブラウザを使ってこのアプリケーションにアクセスす ることができる。さらに、このアプリケーションはPPVチャネル上でPPV事 象が検出され次第、自動的に開始する。エンドユーザは、ドータースマートカー ド3020または通信サーバ3022(モデム、電話、DTMFコード、MIN ITEL等を使用)を介してカレント事象を購入することができる。アプリケー ションは、レシーバ/デコーダ2020のROM内に常駐するもの、またはレシ ーバ/デコーダ2020のRAM内にダウンロード可能なもののいずれかであっ てよい。 ● PCダウンロードアプリケーション。要求すれば、エンドユーザはPC ダウンロードアプリケーションを使ってコンピュータソフトウェアをダウンロー ドすることができる。 ● マガジンブラウザアプリケーション。マガジンブラウザアプリケーショ ンは、オンスクリーンボタンを介したエンドユーザナビゲーションを備えた画像 の巡回ビデオブロードキャストを有する。 ● クイズアプリケーション。クイズアプリケーションはブロードキャスト クイズプログラムと同期することが好ましい。1例として、テレビ2022の画 面上に多項式選択の質問が表示されるので、ユーザは遠隔コントローラ2026 を使って答えを選択できる。クイズアプリケーションは、その答えが正解である かどうかをユーザに知らせることができ、また、ユーザの点数をカウントするこ とができる。 ● テレショッピングアプリケーション。テレショッピングの1例において 、販売される商品のオファーがレシーバ/デコーダ2020に転送され、テレビ 2022上に表示される。遠隔コントローラを使って、ユーザは購入する特定の アイテムを選択できる。そのアイテムの注文が、モデムで繋がれたバックチャネ ル4002を介してアプリケーションおよびデータサーバ4006へと送信され るか、あるいは、個別の販売システムへと送信される。この販売システムの電話 番号は、レシーバ/デコーダ2020のカードリーダ4036の1つに挿入され たクレジットカードに勘定を付ける旨の命令と共にレシーバ/デコーダにダウン ロードされている。 ● テレバンキングアプリケーション。テレバンキングの1例において、ユ ーザは、レシーバ/デコーダ2020のカードリーダ4036の1つに銀行カー ドを挿入する。するとレシーバ/デコーダ2020が、銀行カードに、またはレ シーバ/デコーダに記憶された電話番号を使ってユーザの銀行を呼出し、アプリ ケーションが複数の機能を提供するので遠隔コントローラ2026を使って選択 を行う。この機能には、例えば、電話回線を介した預金口座収支報告のダウンロ ード、預金口座の間での資金の送金、小切手帳の要求等がある。 ● インターネットブラウザアプリケーション。インターネットブラウザア プリケーションの1例において、特定のURLのウェブページを見たいというよ うなユーザからの指示が、遠隔コントローラ2026を使って入力され、これら の指示が、モデムで繋がったバックチャネル4002によってアプリケーション およびデータサーバ4006へ送信される。すると、ブロードキャストセンター からの送信に適切なウェブページが含まれ、この送信がアップリンク2012、 トランスポンダ2014、ダウンリンク2016を介してレシーバ/デコーダ2 020によって受信され、テレビ2022上に表示される。 次に、PCダウンロードアプリケーションの特定の特徴について説明する。解決 すべき特定の技術問題は、最終的にソフトウェアをダウンロードしたいコンピュ ータが、ブロードキャストする側のデータ入力値とは異なる値を有することであ る。例えば、ソフトウェアがMPEG−2ストリームを介して500キロビット /秒で送信する場合、値の差異は9キロビット/秒〜1000キロビット/秒で ある。 この問題を解決するためには、ブロードキャストセンターにおいて、ソフトウ ェアがNブロックに分割され(第5図参照)、MPEG専用セクションに繰返し挿 入される(第6図参照)。レシーバ/デコーダ2020は、全部のソフトウェアブ ロックを説明するビットマップを含んでいる。ダウンロードが開始すると、ビッ トマップ内の各ビットが0に設定される。ダウンロード手順の段階は次の通りで ある。ブロック番号を読み、bit=0の場合は受信側のコンピュータにブロッ クを送信し、受信側のコンピュータがブロックを調べ、適切である旨の確認を送 信する。受信側のコンピュータが、そのコンピュータ内のソフトウェア(通常は フロッピーディスクに提供されている)に対して、送信されたソフトウェアの多 数のブロックを結合するよう要求する。自動インターリーブがフロー制御手段を 提供する。ブロードキャストデータ値が変更できないようにされているため、連 続サイクル内のブロックが自動的にインターリーブされる。受信側のコンピュー タのビット値に従って、カルーセル方式の連続サイクルで3〜4つおきのブロッ クがデコーダ2020に送信される。これは全てのブロックが受信されるま で続けられる。 ブロックが1つでも欠けると問題が発生する。この問題を解決するためには、 XOR機能を使った冗長の概念を利用する。必要に応じて失われたブロックの値 の引出しが可能なデータストリームに、冗長ブロックが追加される。 次に、PCダウンロードアプリケーションについてより詳細に説明する。PC ダウンロードが行われている間、一般に、MPEGフローチューナ4028を介 して、通常700キロビット/秒のデータ値で、トランスポンダ2014からレ シーバ/デコーダ2020へ、また、パラレルインターフェース4032または シリアルインターフェース4030を介して、レシーバ/デコーダ2020から コンピュータへ、データがダンロードされる。レシーバ/デコーダは、典型的な 1Mビット/秒のデータ値を有するIEEE 1284 ECPモード、典型的 な400キロビット/秒のデータ値を有するバイトモード、150〜200キロ ビット/秒のデータ値を有するニブルモードでのパラレルインターフェース40 32を介したコンピュータへのダウンロードを支持する。レシーバ/デコーダは さらに、おそらく115キロビット/秒の最大データ値で、おそらくこれよりも かなり小さい典型的なデータ値での、RS−232モードでのシリアルインター フェース4030を介したコンピュータへのダウンロードを支持する。レシーバ /デコーダ2020は柔軟性を与えるためにこれら全てのモードのコンピュータ へのダウンロードを提供するので、通常、ユーザはその中から最も高速のダウン ロードモードを選択する。 レシーバ/デコーダ2020へのデータ値がレシーバ/デコーダ2020から のデータ値よりも速い場合、全てのデータブロックがコンピュータに確実に受信 およびダウンロードされるよう処置をとる必要がある。これは、コンピュータフ ァイル全てを記憶するのに十分な大きさのバッファを、レシーバ/デコーダ20 20内に設けることで達成される。しかしこれはコスト高である。あるいは、レ シーバ/デコーダ2020からコンピュータへの最小のデータ値を概算し、これ をレシーバ/デコーダ2020の期待データ値に分割して、端数を切上げした整 数Xを求め、受信したブロックの各X内の1つがコンピュータにダウンロードさ れるため、N/Xブロックが1つの位相に受信され、全てのNブロックをダウン ロードするためにこの位相がX回繰返される。しかしながら、これは、効率性の ために正確に概算されたコンピュータへのデータ値に依存するものであり、実際 にはデータ値は変化するので、この方法は不可能である。また、この方法を使用 すると、特定のデータブロックが損失した場合に重大な問題が発生してしまう。 これらの問題を解決するために、第7図に示すようにPCダウンロードオペレ ーションの最中にレシーバ/デコーダ2020が機能的に配列される。レシーバ 2018から入力されたビットストリームにブロック検出機能10が実行され、 ビットストリームはセレクタ12からバッファ14Aまたはバッファ14Bへ通 過する。バッファ14A、14Bから選択された1つのコンテンツが、セレクタ 16、パラレルポート4032の1つ、シリアルポート4030を介してPC1 4の関連するポートに供給される。バッファ14A、14Bは、ビットマップ2 0と同様に、レシーバ/デコーダ2020のRAMの部分によって提供される。 ブロック検出機能10、セレクタ12、16、バッファ14A、14B、パラレ ルおよびシリアルポート4032、4030、ビットマップ20は、PCダウン ロードアプリケーションを実行するプロセッサ22によって制御されている。 次に、PCダウンロードオペレーション中のレシーバ/デコーダ2020のオ ペレーションについて、第8図〜第12図の系統線図を参照しながら説明する。 第8図の段階24にあるように、開始プロセスにおいて、受信されたブロックが ブロック検出機能10によって検出され、各ブロックのヘッダからブロックの番 号Nが検出された。各ブロックは、そのブロックの番号iと、ブロックの合計番 号Nを含んでいる。段階26において、ビットマップ20は番号Nと等しい複数 のビットで設定されており、各ビットは0にリセットされる。段階28、30に おいて、バッファAフラグとバッファBフラグは両方とも「エンプティ」に設定 されている。既述した例において、これらフラグの可能な状態は、「エンプティ」 、「フィリング」、「フル」、「エンプティ中」である。段階32で、PCへの出力 モードが設定される。次に、段階34で、開始プロセスが第9図、第10A図、 第10B図、第11A図、第11B図、第12図に示す第6プロセスへと続く。 この開始プロセスは実質的にパラレルで実行される。 第9図は、バッファ14A、14Bへのダウンロードの開始を制御するルーチ ンである。段階36で、このプロセスはブロック検出機能10によって新規ブロ ックが検出されるまで待機する。新規ブロックが検出されると、段階38におい て新規ブロックの番号iがブロック検出機能10によって検出される。段階40 では、ビットb(i)が1に設定されているかどうかビットマップ20を調べ、 設定されている場合には、そのブロックは無視され、プロセスがその開始時に戻 る。設定されていない場合は、段階42においてバッファAフラグの「エンプテ ィ」かどうか調べられ、そうである場合は段階44でバッファAフラグが「フィ リング」に設定され、続いて、段階46において、セレクタ12を介したバッフ ァ14Aへのブロックのダウンロードが開始されて、その後プロセスがその開始 時に戻る。段階42においてバッファAフラグが「エンプティ」に設定されてい ない場合は、段階48でバッファBフラグが「エンプティ」であるかどうか調べ られる。「エンプティ」である場合は、段階50においてバッファBフラグが「 フィリング」に設定され、続いて段階52においてセレクタ12を介したバッフ ァ14Bへのブロックのダウンロードが開始し、その後プロセスがその開始時に 戻る。段階42、48において、どちらのバッファフラグも「エンプティ」に設 定されていない場合には、プロセスがその開始時に戻る。 第10A図は、ブロックのバッファ14Aへのダウウンロードの最後に実行さ れるルーチンを示している。段階54において、プロセスは、ブロック検出機能 10が最後のブロックを検出するまで待機する。次に、段階56、58において 、ブロック内に含まれたCRCを使ってブロックが調べられる。ブロックが良好 であれば、段階60においてバッファAフラグが「フル」に設定され、ブロック が不良であれば、段階62においてバッファAフラグが「エンプティ」に設定さ れ、その結果このブロックは無視される。第10Bに示すように、バッファ14 Bへのブロックのダウンロードの最後に補足ルーチンが実行される。 第11A図は、バッファAからPC18へのブロックのダウンロードを制御す るルーチンを示すものである。段階64において、プロセスは、バッファAフラ グが「フル」設定になるまで待機する。次に段階66において、バッファBフラ グが「エンプティ中」に設定されているかどうかが調べられ、設定されている場 合、プロセスはバッファ10Bが完全にエンプティ状態になるまで待機する。次 に段階68で、バッファAフラグが「エンプティ中」に設定される。続いて段階 70で、バッファ14A内のブロックiが、設定出力モードを使って、セレクタ 16を介してPC18へダウンロードされる。段階72においてプロセスは、ダ ウンロードが完了するまで待機する。次に段階74において、PC18からの肯 定応答のチェックが行われる。肯定応答が受信されると、次に段階76において 、ビットマップ20内のブロックIのためのビットb(i)が1に設定され、段 階78において、バッファBフラグが「エンプティ」に設定される。次に、プロ セスはその開始時に戻る。段階74において肯定応答が受信されない場合、段階 76は省略される。従って、ブロックのダウンロードは無視される。第11B図 に示すように、バッファ14BからPC18へのブロックのダウンロードを制御 する補足ルーチンが実行される。 第12図に、コンピュータのダウンロードが完了したかどうかを調べるルーチ ンを示す。段階80において、ビットマップ20内の全てのビットb(1)〜b (N)が1に設定されているかどうかが調べられ、設定されている場合には、レ シーバ/デコーダ2020を考慮する限りファイルダウンロードオペレーション が終了する。 上記の説明から、レシーバ/デコーダ2020に受信されるブロックの順番は 関係ないことがわかるであろう。レシーバ/デコーダ2020は、ブロックが必 要であるかどうかの決定もできる。必要である場合、レシーバ/デコーダ202 0はそのブロックをバッファ14A、14Bの内の1つに配置し、PC18がそ のブロックを受信する準備が整うまで待機する。ブロックがCRCチェックに合 格しなかった場合、または、ブロックがPC18によって正しく確認されなかっ た場合は、レシーバ/デコーダ2020が次の機会にそのブロックを再度ダウン ロードする。レシーバ/デコーダ2020が、レシーバ/デコーダ2020にブ ロックがダウンロードされるのと同じ速度でそのブロックをPC18にダウンロ ードできるのであれば、全てでない場合はほとんどのブロックが順番に連続して ダウンロードされる。しかしながら、レシーバ/デコーダ2020が、レシーバ /デコーダ2020にブロックがダウンロードされるのと同じ速度でそのブロッ クをPC18にダウンロードできない場合、例えば、その半分の速度でしかダウ ンロードできない場合には、一般的に言えば、ある段階において別のブロックが ダウンロードされ、続いて、後続する段階において残りのブロックがダウンロー ドされる。レシーバ/デコーダ2020へのダウンロード値とレシーバ/デコー ダ2020からのダウンロード値の間の比率が変化すると、上述した装置がブロ ックのインターリーブを自動的に調整する。 動作中のソフトウェアの分を別にして、上述した装置でメモリを必要とするも のは、2つのバッファ14A、14Bと、ビットマップ20である。一般に、ブ ロックのサイズは2キロバイト(1つのMPEG−2テーブルの容量は4キロバ イトまで可能である)であり、1つのファイル中のブロックの最大数は216ブ ロックである。従って、メモリの必要量は、バッファ14A、14Bでは4キロ バイト、ビットマップ20では216/8=8キロバイトであるので、合計12 バイトが、216×2キロバイト=128Mバイトのサイズのファイルをダウン ロードするために必要となる。 上述の装置においてPC18は以下のようににプログラムされている。すなわ ち、各ブロックが受信されると、ブロックが、ブロックの番号iを含むファイル 名と共にPC18のハードディスクに書込まれる。次に、全てのブロックが受信 されたら、オリジナルのコンピュータファイルを再生するためにNファイル内の データが連結される。 次に、ブロードキャストセンターとレシーバ/デコーダ2020間の接続が損 失した場合に対処するために、第5図〜第12図を参照して上述した装置の改良 について説明する。この場合、損失した接続はレシーバ/デコーダ2020によ って検出され、ユーザは、ダウンロードオペレーションを再開したいかどうかを 問われるであろう。その場合、上述の問題においてファイルのダウンロードが要 求されるが、存在するビットマップ20のビットb(1)からb(N)は0にリ セットされないようにするために第8図の段階26は省略される。従って、ダウ ンロードオペレーションは、既にダウンロードされたブロックを再度ダウンロー ドすることなく再開される。 次に、XOR機能を使った冗長の概念についてより詳細に説明する。第5図、 第6図を参照して上に説明した装置において、データのブロックは、単純にブロ ック1〜Nの連続であると考慮される。これから説明する装置は、第13図〜第 15図に示すように、ブロックは一連のマトリックスとして配置され、各マトリ ックスがブロックの(R+1)列とCカラムを含んでいると考慮される。特に第 14図に示すように、第1マトリックス(マトリックス1)内で、最上列はi= 1〜Cと番号付けされたブロックを含み、次の列は、i=C+1〜2Cと番号付 けされたブロックを含み、この調子で最下列まで続く。第15図に示すような、 jと番号付けされたより一般的なマトリックスの場合、最上列がi=(j−1) (R+1)C+1〜((j−1)(R+1)+1)Cと番号付けされたブロックを 含み、最下列がi=(j(R+1)-1)C+1〜j(R+1)Cと番号付けさ れたブロックを含んでいる。マトリックスjのr列とカラムCの一般な位置にお いて、ブロックの番号はi=((j−1)(R+1)+(r−1))C+cである。 このマトリックスにおいて、最下列(r=1〜R)を除く全ての列内のブロック はデータブロックであり、このデータブロック内に、ダウンロードされるコンピ ュータファイルが分割される。しかし、最下列(r=R+1)内のブロックは、 アプリケーションおよびデータサーバ4006によって既に計算され、MPEG ビットストリーム内に加えられた冗長ブロックである。さらに詳細には、第16 図に示すように、段階100においてダウンロードされるファイルが各々が2キ ロバイトのデータブロック内に分割される。段階102では、RとCの値が設定 される。段階104では、マトリックス番号カウンタjが1に設定される。段階 106において、第1RCデータブロックが、データブロックのCカラムとR列 のマトリックスとして読取られる。段階108では、各カラムc=1〜Cについ て、そのカラムの冗長ブロックが計算される。より詳細には、冗長ブロックは、 対応するカラム内のデータブロック上のビットワイズXORオペレーションとし て計算される。段階110において、冗長ブロックは、マトリックスの追加の最 下列(r=R+1)として考慮される。段階112では、ブロック番号i=(j −1)(R+1)C+1〜(j(R+1)-1)Cがデータブロックへのヘッダと して追加され、ブロック番号i=(j(R+1)-1)C+1〜j(R+1)C がその冗長ブロックへのヘッダとして追加され、ブロックが記憶される。段階1 14において、ファイルの最後に達したかどうかのテストが実行され、達して いない場合には段階116においてマトリックスカウンタjがインクリメントさ れる。次に、次のRCデータブロックのために段階102〜108が繰返される 。これはコンピュータファイルの最後に達するまで続けられる。ファイル用のエ ントリがディレクトリか、またはファイルの名前、サイズ、日付スタンプと、R およびCの値を含むインデックスMPEG−2テーブルかに追加される。これで 、処理されたデータブロックと冗長ブロックは送信の準備が整ったことになる。 レシーバ/デコーダ2020を使ってファイル等をダウンロードしたい場合、 ユーザはディレクトリまたはインデックスからファイルのエントリを選択する。 するとレシーバ/デコーダ2020が、RおよびCの値を含むファイル情報をP C18に供給する。次に、そのファイルのPCダウンロードの最中に、レシーバ /デコーダ2020は、第7図〜第12図を参照して上述した方法と同じ機能で 動作する。しかし、PC18は以下の方法で冗長ブロックに対処するようにプロ グラムされている(これは、ディスケットまたはCD−ROMからPC18にロ ードされた、あるいはレシーバ/デコーダ2020からPC18にダウンロード されたプログラムによる)。全体としてPC18は、冗長ブロックのダウンロー ドを検出する度に、受信された冗長ブロックと同じマトリックスの同じカラム内 にあるデータブロックの1つを除く全てが受信されているかどうかを調べる。受 信されている場合、PC18が、受信したデータブロックおよび受信した冗長ブ ロック上でビットワイズXORオペレーションを実行することにより、損失した データブロックを再生し、この再生したデータブロックをレシーバ/デコーダ2 020から受信したかのように記憶する。 さらに詳細には、第17図を参照すると、初期段階120においてPC18が 値R、Cを受信し、次いで段階122においてブロックを受信する。段階124 では、PC18が受信したブロックのヘッダからそのブロック番号iを抽出する 。段階126では、PC18がそのブロックをiとして記憶する。続いて、段階 128でレシーバ/デコーダ2020に肯定応答を送信する。段階130におい て、PC18は、少なくとも1つ(R−1)を除く全てのブロックがCカラムの 各々に受信されたかどうかをチェックする。このチェックは、ブロックが記憶さ れているPC18のハードディスクのディレクトリを調べるか、また好ましくは 、速度の理由で、各ブロックが記憶された際に区切られるビットマップをPC1 8のメモリ内に採用することにより行うことができる。少なくとも1つを除く全 てのブロックが各カラムに記憶されている場合、十分なブロックが受信されてい るのでプロセスは段階132へと進む。しかし、記憶されていない場合には、プ ロセスは次のブロックを受信するために段階122へと戻る。段階132はFO R−NEXTループを制御する。段階134では、PC18が各カラムについて 、そのカラムの全てのデータブロック(すなわち、R−1データブロック)が受 信されているかどうかを決定する。受信されている場合、FOR−NEXTルー プは次のカラムへ進む。しかし、受信されていない場合には、段階136におい て、PC18が、受信されたデータブロックおよび冗長ブロック上でビットワイ ズXORオペレーションを実行することで、欠損しているデータブロックを再生 する。次に段階138において、PC18は再生されたデータブロックを記憶し 、FOR−NEXTループ内の次のカラムへと進む。FOR−NEXTループの 最後において、プロセスは段階140へと進む。段階140では、受信されたデ ータブロックからコンピュータファイルが再生される。次に段階142で、コン ピュータファイルがPC18のハードディスクに記憶される。段階134におい て、ブロックがデータブロックであるかまたは冗長ブロックであるかの決定が、 関係0<i-jRC<Cの真理を調べることで行われる。この関係で、マトリッ クス番号jはj=int((I−1)/(R+1)C)+1から求められ、ここで 、int()は()の整数部分に関連する。真理である場合、そのブロックは冗 長ブロックであり、真理でない場合、それはデータブロックである。 上述した装置は2つの大きな問題を抱えている。第1の問題は、トランスポン ダ2014から各レシーバ2018へのビットストリームに起こる短い割込みに 関するものである。特定のブロックiがこうした割込みによって影響されると、 同列内の次のブロックi+1も影響を受ける可能性が比較的高いことが理解され る。同カラム内の次のブロックi+Cも影響を受けてしまう可能性を比較的低く するために、Cの値が選択される。ただし、各カラム内の(R+1)ブロックの Rは適切に受信されているならば、冗長ブロックと、ビットワイズXORオペレ ーションのプロパティを使って、残りのブロックを再生することができる。もう 1つの問題はファイルダウンロードオペレーションの最後近くにブロックが受信 される有効値に関するものである。待機しているブロックが1つだけの場合、待 機時間は、ファイル内の全てのブロックを送信するのに必要な時間とほぼ同じ長 さであることが理解される。上述した装置において、待機するデータブロックが 少ししかない場合、これは受信された冗長ブロックおよびデータブロックから再 生することが可能である。当然、冗長ブロックの送信の追加により、ファイル全 体を送信する合計時間も増え、従って、送信割込みへの対処、および最後の数ブ ロックを待つ時間を減じる利点は、CとRの値を適切に選択することにより、合 計送信時間の増大の欠点に対して対応するものでなければならない。値CとRの 選択は、統計的研究またはトライアルアンドエラーの対象となり得る。しかし一 般には、この値はC=50とR=10であろう。CとRの両方が5よりも大きい ことが好ましい。 上述した例において、CとRの値は、ファイルが送信可能なブロックに準備さ れた際に決定され、CとRの値はダウンロード可能なファイルのディレクトリま たはインデックステーブルに含まれる。あるいは、CとRの値がディレクトリま たはインデックステーブルに含まれることなく予め決定され、PC18が予めC とRの値と共にプログラムされてもよい。 上述した例において、ブロックのダウンロードは、ファイルの再生に十分なブ ロックがダウンロードされるまで続けられる。次に、欠損したブロックが再生さ れ、ファイルが再生される。別の例において、特定なカラムの冗長ブロックがダ ウンロードされ、そのカラムの1つを除いた全てのデータブロックがダウンロー ドされている場合、ファイル全体の再生に十分なブロックがダウンロードされる まで待つことなく、欠損したデータブロックが再生され、その段階で受信された 旨がマークされる。 上述した装置において、レシーバ/デコーダ2020はPC18から独立した 状態として説明されている。しかし、レシーバ/デコーダ2020が、例えばア ドオンカードの形で、PC18の1部を形成していることが理解されるであろう 。 本発明は、単に例として述べられ、詳細の変更は本発明の範囲内で行うことが できる。 説明に開示された各特徴、および(妥当である場合)請求の範囲および図面は 、別々にあるいは任意の適切な組み合わせで提供されてもよい。 前述の好ましい実施例では、本発明のある種の特徴はコンピュータソフトウェ アを使用して実現された。しかしながら、もちろん、これらの特徴のいずれかは ハードウェアを使用して実現されてもよいことは当業者に明らかである。さらに 、ハードウェア、コンピュータソフトウェア等によって実行された機能は、電気 信号等であるいは電気信号を使用して実行されることは容易に理解される。 相互参照は、我々の同時係属出願に対して行われ、全ては、同じ出願日を有し 、名称が「信号発生および放送(代理人参照番号PC/ASB/19707)」、「 暗号化放送信号の受信機と併用するためのスマートカード、および受信機(代理 人参照番号PC/ASB/19708)」、「放送・受信システムおよびそのため の条件付アクセスシステム(代理人参照番号PC/ASB/19710)」、「受信 機/デコーダを介して送信機からコンピュータにコンピュータファイルのダウン ロード(代理人参照番号PC/ASB/19711)」、「テレビジョンプログラム および他のデータの送信および受信(代理人参照番号PC/ASB/19712)」 、「データのダウンロード(代理人参照番号PC/ASB/19713)」、「コン ピュータメモリ構成(代理人参照番号PC/ASB/19714)」、「テレビジ ョンあるいはラジオ制御システム生成(代理人参照番号PC/ASB/1971 5)」、「送信データストリームからのデータセクションの抽出(代理人参照番号P C/ASB/19716)」、「アクセス制御システム(代理人参照番号PC/AS B/19717)」、「データ処理システム(代理人参照番号PC/ASB/197 18)」、および「放送・受信システム、およびそのための受信機/デコーダおよ び遠隔コントローラ(代理人参照番号PC/ASB/19720)」である。これ らの文書の開示は参照してここに組み込まれている。出願のリストは本出願を含 んでいる。DETAILED DESCRIPTION OF THE INVENTION       Transmitter to computer via receiver / decoder                    Computer file download   The present invention relates to the following. ● Via a receiver / decoder (digital satellite TV set-top box, etc.) do it, From a transmitter (such as a satellite TV uplink transmitter) Download computer files (PC or workstation, etc.) Means to implement; ● a computer used to carry out part of such means; ● A computer for programming such computer processing means. Recording medium (diskette or CD-ROM, etc.) with a data program; ● MPEG transmission system; ● MPEG video and / or audio data, Computer file de Data block.   Mainly broadcast TV signals, In particular, But not limited, Satellite TV With the advent of digital transmission systems aimed at systems, Such a system There is a possibility of using it for another purpose. For example, End user downloads Computer files or software that can be   Data errors frequently occur in such a transmission system. Video or audio For data errors, These data errors are frequently fraudulent using interpolation techniques, etc. Can be scraped, A single bit of a computer file uses that file Make it impossible.   A first aspect of the present invention is Via a receiver / decoder, Transmitter to controller Especially related to the downloading of computer files to the computer, Deleting files Splitting into data blocks, Transmit that block from the transmitter Stages and Receiving the transmitted block at the receiver / decoder; Receiver / Supplying the received block from the decoder to the computer. one Generally, The block can be checked for validity because it contains a CRC code, B Because the lock is sent repeatedly, If the block is received correctly on the first transmission If not, Or even if you didn't receive it at all, The second time, Or Received on subsequent transmissions. The problems with such a scheme are: One or more blocks If the lock was not received properly, It takes a long time to receive files Is to put it. In extreme cases, If the last block is not properly received, That The total time it takes to download the file is about doubled. Another problem with these schemes is that For example, From receiver / decoder to computer The download value to the data Down from transmitter to receiver / decoder Because it is lower than the load value, Blocks are not downloaded in the order sent In case, The waiting time for the last few blocks is relatively long. Extreme case , The time to wait for the last few blocks is How to send an entire set of blocks About the same time as This is true even if all blocks have been successfully received. The same is true.   According to a first aspect of the present invention, R file of a series of data Divided into Subdividing each of the groups into a series of C blocks of data Have Generating a group of C redundant blocks; These data blocks The bitwise exclusive OR or NOR of Each redundant block is Associated with a corresponding data block in the R group, Group of the data block Transmitting a loop and each of the groups of redundant blocks from a transmitter Has, Converting at least some of the transmitted blocks into the receiver / decode Receiving at the server, The received block The receiver / decoder From the computer to the computer, Less of the received redundant blocks About one, The redundant block, All but one related to this Determining at the computer whether a block lock has been received; Has been received in case of, The redundant block, On the corresponding received data block And By performing a bitwise exclusive OR or NOR operation Reproducing the one data block. Via receiver / decoder Download a computer file from the transmitter to the computer A method is obtained.   To avoid doubts, Bitwise exclusive OR operation on multiple data blocks What is a solution? Each first bit of a block is the second corresponding bit of that block. Means XOR, The result is X in the third corresponding bit of the block. ORed, This continues until the last one in the block. For simplicity, Second XORed with the first bit of the block is the first bit of the first block, So Is XORed with the first bit of the third block, Get the first bit of the result This was continued for Also, The second bit, Similar operation for the third bit, etc. Is executed. But, XOR is used to replace the bits of a predetermined block different from this. It can also be employed in operations. Exclusive NOR operation, not XOR If the solution is adopted, Similar interpretations apply.   A first aspect of the present invention is Especially at the end of the file download operation hand, Even if the data block has not been received yet, Send remaining data block And without waiting for the receipt of validity Corresponding redundant block and corresponding data block It is possible to play that block from the lock. Until sending a specific block Or if you are having problems receiving, Transmission of the next block in the same series of C blocks Alternatively, there is a relatively high possibility that a problem will occur in reception. But, Appropriate value C By selecting Transmission or reception of the associated block in the next continuation of the C block The likelihood of communication problems is relatively low. Add these redundant blocks By that The time required to send all blocks at 100 / R% increases I will. But, By properly choosing the value of R, The benefits provided by this aspect of the invention It is possible in this respect to make up for this disadvantage. In general, The values of C and R are 50 each It can be set to 10.   The decision and regeneration stages are: Only for some received redundant blocks, Especially Phi Can be performed on the one near the end of the download operation. But, The decision and regeneration stages are: All corresponding data blocks except one are received It is preferably performed on each received redundant block being transmitted. This latter in the case of, The method is also Enough blocks to play the remaining data blocks When received, During the reception of further blocks in the file or its parts Determining when to stop. Therefore, The playback stage is All necessary blocks This is executed after the token is received.   The values of the numbers R and C are Same for all file download operations Value. But, To provide flexibility, The method further: Numbers R and C Transmit data to display the value from the transmitter, R at the receiver, Receive C data Believe in R, Preferably, providing C data to a computer, This Where the computer Which data block each redundant block corresponds to In deciding, R supplied, Operation using C data is possible.   The block is I-th (i = 1 to C) redundancy in a group of C redundant blocks Block Corresponds to the ith data block in each R group of C data blocks It is preferable to arrange them in such an order. But, Other relationships are possible You.   According to a second aspect of the present invention, Computer Before the receiver / decoder Means for receiving said block, Means for processing the received block Has, The processing means comprises: For at least one of the received redundant blocks , The redundant block, All but one of the corresponding data blocks are received To determine if If so, On that redundant block, Bitwise exclusive OR or NOR operation on the corresponding received data block By running the solution, Push to play the one data block Has been programmed Said received data block; Any regenerated day Having means for storing Performing part of the method of the first aspect of the invention You will have a computer to use.   The processing means is Redundancy in which all but one corresponding data block has been received For each received block, Make decisions and replays It is preferably programmed. in this case, The processing means is Remaining data block Determine when enough blocks have been received to play the Also, Receiving means Fa Program to halt further reception of the file or its part block It is preferred that   The receiving means is Number R, Operable to receive data indicating the value of C. Preferably Also, The processing means is Which data block is In deciding whether to respond to R, Programmed to use C data ing.   The processing means is To reconstruct the computer file or a part of it, Receiving To link any data blocks that have been reproduced Preferably programmed, Also, The storage means uses this reconstructed file. Preferably, it is operable to store the file or a part thereof.   According to a third aspect of the present invention, To work as described above, The second of the present invention Computer program for programming computer processing means by computer Thus, a storage medium having a memory is obtained.   According to a fourth aspect of the present invention, To download to the receiver / decoder, File or part of it Divided into a series of R groups of data, Also, The group Means for subdividing each of the loops into a series of C blocks of said data; C redundant bus Means for generating a group of locks, Each of the redundant blocks is Data block By being bitwise exclusive OR or NOR Data in R group Associated with a corresponding one of the data blocks, A group of said data blocks; Said MP having means for transmitting each of the groups of redundant blocks An EG transmission system is obtained.   A fifth aspect of the present invention is: Split the file into blocks of data, Transmitter Continuously send blocks from The transmitted block is received by the receiver / decoder. Believe in Providing the received block from the receiver / decoder to the computer With Transmitter to computer via receiver / decoder It is particularly relevant to how to download a pewter file.   The block of data is Generally a fixed data value of 700 kilobits / second At the transmitter to the receiver / decoder. Have different abilities To use a receiver / decoder on a computer, Also, Use these abilities To help The receiver / decoder is Blocking in various modes with different data values It must be possible to download the tool to the computer. This variety The mode is IEEE 1284E with typical 1 Mbit / s data values CP mode, IEEE 12 with typical 400 kbit / s data values 84 parallel byte mode, Typical 150-200 kbit / s data value IEEE 1284 parallel nibble mode with Probably 115 kilobits / Max data value per second, Typical data values could be much lower This is an RS-232 serial mode.   The data value to the receiver / decoder is greater than the data value from the receiver / decoder If fast, Ensure that all data blocks are received and downloaded to the computer Need to be addressed. this is, Record complete computer files Achieved by buffering a receiver / decoder of sufficient size to remember You. Or, Approximate minimum data value from receiver / decoder to computer And Dividing this into the expected data values of the receiver / decoder, Rounded up Find the number X, One in each X of the received block is downloaded to the computer Because N / X blocks are received in one phase, Down all N blocks This phase is repeated X times to load. However, this is, Efficiency In order to rely on accurately estimated data values to the computer, Actual Since the data value changes, This method is not possible. Also, Use this method Then Significant problems arise when certain data blocks are lost. A fifth aspect of the present invention is: The solution is to find a solution to these problems.   According to a fifth aspect of the present invention, Divide the file into multiple (N) blocks Having a stage, Each of the blocks of the file With that block match, Previous Transmitting continuously from the transmitter, Receiver / decoder smell hand, For each block, Providing one of a plurality of N flags that were initially reset, Previous Receiving the latest transmission of the block; The block is flagged To determine if If not set, From the receiver to the controller Supply the blocks to the pewter, And setting the flag on the block. Repeat periodically until all flags are set, Through the receiver / decoder, G How to Download Computer Files from a Transmitter to a Computer Is obtained.   Therefore, The order of the blocks received by the receiver / decoder does not matter. It will be. The receiver / decoder can also decide if a block is needed Come If necessary, download the block to your computer. Resi Server / decoder Same as downloading block to receiver / decoder If you can download blocks to your computer at speed, If not all Most blocks are downloaded sequentially in sequence. But, Receiver / The decoder At the same speed as downloading blocks to the receiver / decoder If you can't download the block to your computer, For example, at half the speed If you can only download it, Generally speaking, At some stage, another block The lock is downloaded, continue, In subsequent stages, the remaining blocks are Downloaded. Download value to receiver / decoder and receiver / decode When the ratio between the download values from The device described above is Adjust interleave automatically.   While performing each of the supply stages, Computer Receiving supplied blocks Preferably to the receiver / decoder, Acknowledgment of the block In response to receiving the fixed response, The setting of each block is executed. Therefore, Block If not properly acknowledged by the computer, The receiver / decoder is Download the block again on occasion.   This method Except for resetting the flag, Additional steps to repeat the method Have. Therefore, If there is an interrupt in receiving the block, How to download It is resumed without downloading the already received block.   According to a sixth aspect of the present invention, MPEG video and / or audio data table Bull and A laser arranged to receive blocks of computer file data A siever / decoder, Computer files This is received periodically Received as a plurality N of blocks Each of these blocks is Has the identification of Said receiver / decoder Each computer file browser About the Means for storing one of a plurality of N flags that have been reset first Have Method to temporarily store the first newly received computer file block Having a step, The block stored in the block storage means is transferred to a computer. Means for supplying; The flag of the first newly received block is stored in the flag storage means. Determine if it is set, If not set, Block To supply means, The block is supplied from the block storage means to the computer. Let A control means for setting a flag in the block in the flag storage means A receiver / decoder characterized in that:   The receiver / decoder is From a computer, Such a block is Means for receiving an acknowledgment of receipt from the supply means, Said system Your means is In response to the block acknowledgment, Flag the block Preferably, it is operable to   The control means After the connection is lost Computing without resetting flags Preferably, it is operable to resume receiving the file block.   Block supply means, A plurality of block supply means of different types, For example , ECP mode IEEE parallel port, Byte mode IEEE parallel port , Nibble mode IEEE parallel port, Of the RS-232 serial ports It has at least two.   Computer from transmitter to computer via receiver / decoder How to download the file, Combining the first and fifth features of the invention It should be noted that adoption is possible.   next, Features of the present invention, With reference to the attached drawings, Purely by way of illustration Will be explained.   Figure 1 This is the overall architecture of the digital television system.   Fig. 2 The interactive system of the digital television system shown in FIG. The architecture of the system.   FIG. FIG. 1, The receiver / decoder components of the system of FIG. FIG.   FIG. FIG. 2 is a schematic diagram of a remote controller used in a digital television system. You.   FIG. 4 shows an arrangement of blocks constituting a file to be downloaded.   FIG. Indicates the sequence of blocks as the file is being downloaded You.   FIG. Receiver / data during file download operation It is a function diagram of a coder.   FIG. 8 to FIG. During the file download operation, the receiver / FIG. 3 is a system diagram illustrating processes that occur in a decoder.   FIG. Another showing the arrangement of blocks that make up the downloaded file FIG.   FIG. 13 shows the block first matrix shown in FIG. 13 in more detail FIG.   FIG. FIG. 13 shows a generalized matrix of the blocks shown in FIG. is there.   FIG. In preparing the files for download, TV system FIG. 3 is a system diagram showing processing executed by the application and the data server of FIG. You.   FIG. What happens during the file download operation FIG.   FIG. 1 shows an overview of a digital television system 1000 according to the present invention. . The present invention is mainly Conventional MPEG-2 compression for transmitting compressed digital signals A conventional digital television system 2000 using a compression system is provided. Yo More specifically, MPEG-2 compressor 2002 in Broadcast Center Receive a digital signal stream (generally a stream of video signals). Ko Impreza 2002 is a multiplexer with linkage 2006, Scrambler 20 04. Multiplexer 2004 further receives a plurality of input signals. , Assemble one or more transmission streams, The compressed digital signal Rin To the broadcast center transmitter 2008 via the cage 2010 Send. Of course, this transmission Wide variety of forms including telecommunications links Can be done with Transmitter 2008 is connected via uplink 2012 An electromagnetic signal is transmitted to the satellite transponder 2014. To this satellite transponder And Electromagnetic signals are processed electronically, Via the conceptual downlink 2016 Broadcast to a terrestrial receiver 2018. Receiver 2018, General Is a satellite receiving antenna owned or rented by the end user. Resi The signal received by the server 2018 is transmitted to the integrated receiver / decoder 2020. The integrated receiver / decoder 2020 Owned or rented by the end user, D Connected to the TV set 2022 of the user. further, Receiver / decoder 2020 is Decompress the compressed MPEG-2 signal into a TV signal for TV set 2022 Code.   Conditional access system 3000, Multiplexer 2004, Receiver / Connected to the decoder 2020, Also, One in the broadcast center , Another part is located in the decoder. This allows One or more end users Access digital TV broadcasts from the above broadcast suppliers Can be accessed. Commercial Offer (broadcast supplier One or more TV programs to sell) Smart card Can be inserted into the receiver / decoder 2020 . End users Using a decoder 2020 and a smart card, Subscription Purchase commercial offers in either subscription mode or pay-per-view Can be   Interactive system 4000 also has multiplexer 2004, Receiver / de Connected to the coder 2020, One more in the broadcast center, Another part is located in the decoder. This allows End users can connect to the modem Interact with many applications via a connected back channel 4002 Can be.   Fig. 2 Interactive of digital television system 1000 according to the present invention 3 shows the general architecture of the television system 4000.   For example, With the interactive system 4000, End user on screen Products can be purchased from the shape log, Local news and weather on demand Watch the forecast, You can play games.   Interactive system 4000 Has four main elements as a whole . ● Authoring tool 4004. Broadcast center or other At the location of Broadcast suppliers create applications, Open Departure, debug, Can test. ● Application and data server 4006. Broadcast Sen In the It is connected to the authoring tool 4004. For end users In order to broadcast Broadcast suppliers use this to Ap Application and data to an MPEG-2 transport stream (generally, its dedicated section). To the multiplexer and scrambler 2004 for insertion into the In order to Prepare, Enable Can be formatted. ● A virtual machine 4008 with a runtime engine (RTE). this is , In the receiver / decoder 2020 owned or rented by the end user Installed one-line code, End user is receiver / decoder Receiving the application for execution in the working memory of the Enable , Uncompress, Can be loaded. Engine 4008 also Resident, Run a generic application. Engine 4008 includes hardware and operating Independent of the rating system. ● Receiver / decoder 2020, Application and data server A back channel 4002 connected by a modem between This allows End At the request of the user, At the signal Data and applications on server 4006 It becomes possible to instruct to insert into the MPEG-2 transmission stream.   Interactive TV system Receiver / decoder built into the system It operates using "applications" that control the functions of various devices. The application is represented as a “resource file” in the engine 4008 I have. "Modules" A set of resource files and data. One a An application requires several modules to form an application. Receiver / Decoder “memory volume” is storage space for modules . The module is MPEG-2 Transport Stream to Receiver / Decoder 2020 You can also download it inside.   The physical interface of the receiver / decoder 2020 is the data download Used for Referring to FIG. The decoder 2020 is For example, the following 6 It has a download device. MPEG flow tuner 4028, Cereal Interface 4030, Parallel interface 4032, Modem 4034 , Two card readers 4036.   For the purposes of this specification, An application is Preferably receiver / decoder A piece of computer code for controlling the high-level functions of You. For example, End user, Remote controller 2026 (further detailed in FIG. 4) On the button object on the screen of the TV set 2022, Yes When you press the effect key, The instruction sequence associated with that button is executed.   Interactive application Menu upon request of end user Presentation, Execute the instruction, Provides data about the purpose of the application I do. The application is The ROM (or FL) of the receiver / decoder 2020 Resident application stored in ASH or other non-volatile memory) It can be either broadcast or The RAM of the decoder 2020 (or FLASH).   An example of the application is shown below. ● Start application. Receiver / decoder 2020 Module Resident, which is an adaptable collection (this term is explained in more detail below) Has a start application. An adaptable collection of modules Enable the receiver / decoder 2020 to operate immediately in the MPEG-2 environment. App Application Can be changed by broadcast supplier if desired Has core properties. Also, Core properties are resident application and download Provide an interface between the applications. ● Startup application. Startup application , Download applications that may be downloaded or resident Server / decoder 2020. This application is Application In order to start the As a bootstrap that runs when the service arrives Work. Since the startup is downloaded into RAM, Update Easy to do. Also start up, Immediately after downloading, Or preload After any of Interactive applications available for each channel Can be selected and executed. Preloaded in case of, The application is loaded into memory 2024, If necessary It can be activated by start-up. ● Program guide. The program guide Complete programming An interactive application that provides complete information. For example, Blog Ram Guide One week TV program assigned to each channel of digital TV bouquet Provides information about the program. Press a key on the remote controller 2026 When, End users Overlay the event on the screen of the TV set 2022 You can access the added add-on screen. This add-on screen Digital A browser that provides information about the current and next events of each channel of the Levi Bouquet It is the. Pressing another key on the remote controller 2026, End users Access an application that displays a list of information about events over a week I can do it. In addition, end users Events with simple, customized criteria Search and sort. Also, Direct access to the selected channel Can be. ● Program paid viewing application. Paid program viewing program application , Each PP of digital TV bouquet connected with conditional access system 3000 An interactive service that can be used on the V channel. End users Access this application using your TV guide or channel browser Can be further, This application is a PPV As soon as an elephant is detected, Start automatically. End users Daughter smart car 3020 or communication server 3022 (modem, phone, DTMF code, MIN (Using ITEL etc.). Application Is Resident in the ROM of the receiver / decoder 2020, Or resi Server / decoder 2020, which can be downloaded to the RAM. May be. ● PC download application. If you request, End user is PC Download computer software using download application Can be ● Magazine browser application. Magazine browser application Is Image with end-user navigation via on-screen buttons Has a cyclic video broadcast. ● Quiz application. Quiz application broadcast It is preferable to synchronize with the quiz program. As an example, Picture of TV 2022 A polynomial choice question is displayed on the surface, The user operates the remote controller 2026 Can be used to select an answer. The quiz application The answer is correct To let the user know if Also, Counting user scores Can be. ● Teleshopping application. In one example of tele-shopping , The offer for the item to be sold is forwarded to the receiver / decoder 2020, TV set 2022. With a remote controller, The user can purchase a specific Items can be selected. Ordering the item Back channel connected by modem Transmitted to the application and data server 4006 via the Or Or, Sent to individual sales systems. Phone for this sales system The number is Inserted into one of the card readers 4036 of the receiver / decoder 2020 Down to receiver / decoder with instruction to credit credit card Has been loaded. ● Telebanking application. In one example of telebanking, You The user One of the card readers 4036 of the receiver / decoder 2020 has a bank card Insert a key. Then, the receiver / decoder 2020 becomes On the bank card, Or Calling the user's bank using the telephone number stored in the sheaver / decoder, App Application provides multiple functions, select using remote controller 2026 I do. This feature includes For example, Downloading account reports via telephone line Mode, Transfer of funds between savings accounts, There is a request for a checkbook. ● Internet browser application. Internet browser In one application example, You want to see a specific URL web page Instructions from the user Entered using the remote controller 2026, these The instructions Application by back channel 4002 connected by modem And transmitted to the data server 4006. Then Broadcast center Contains the appropriate webpage for submissions from, This transmission is the uplink 2012, Transponder 2014, Receiver / Decoder 2 via downlink 2016 020, It is displayed on the television 2022. next, Specific features of the PC download application will be described. Settle The specific technical issues to be addressed are: The computer from which you want to download the software Data Having a value different from the data input value of the broadcaster. You. For example, Software is 500 kilobits via MPEG-2 stream / S per second, The difference between the values is 9 kilobits / second to 1000 kilobits / second. is there.   To solve this problem, At the broadcast center, Software Is divided into N blocks (see FIG. 5), Repeated insertion into MPEG section (See FIG. 6). Receiver / decoder 2020 All software blocks Contains a bitmap that describes the lock. When the download starts, Bit Each bit in the map is set to zero. The steps of the download procedure are as follows is there. Read the block number, If bit = 0, the block is sent to the receiving computer. Send The receiving computer examines the block, Send confirmation of suitability I believe. The receiving computer Software in that computer (usually (Provided on floppy disk) Lots of software sent Requests that a number of blocks be combined. Automatic interleaving provides flow control provide. Because the broadcast data value is not changed, Communicating Blocks in subsequent cycles are automatically interleaved. Receiving computer According to the bit value of Carousel type continuous cycle every 3-4 blocks Is transmitted to the decoder 2020. This is done until all blocks have been received. Continue with.   A problem arises when even one block is missing. To solve this problem, The concept of redundancy using the XOR function is used. Block value lost if needed Into a data stream from which Redundant blocks are added.   next, The PC download application will be described in more detail. PC While the download is taking place, In general, Via the MPEG flow tuner 4028 do it, Usually with a data value of 700 kilobits / second, From transponder 2014 To the Sheaver / Decoder 2020, Also, Parallel interface 4032 or Via serial interface 4030 From receiver / decoder 2020 To the computer, The data is downloaded. The receiver / decoder is Typical IEEE 1284 ECP mode with a data value of 1 Mbit / s, Typical Byte mode with a data value of 400 kilobits / second, 150-200 kg Parallel interface 40 in nibble mode with data values in bits / second 32 for download to a computer. The receiver / decoder is further, Probably with a maximum data value of 115 kilobits / second, Probably more than this For typical data values that are fairly small, Serial interface in RS-232 mode Support download to computer via face 4030. Receiver / Decoder 2020 is a computer in all these modes to provide flexibility To provide a download to Normal, The user is the fastest down Select the load mode.   The data value to the receiver / decoder 2020 is Faster than the data value of All data blocks are reliably received by the computer And take action to be downloaded. this is, Computer A buffer large enough to store all the files Receiver / decoder 20 20 to achieve this. But this is costly. Or, Les Estimate the minimum data value from the Seer / Decoder 2020 to the computer, this Into the expected data values of the receiver / decoder 2020, Rounded up Find the number X, One in each X of the received block is downloaded to the computer Because N / X blocks are received in one phase, Down all N blocks This phase is repeated X times to load. However, this is, Efficiency In order to rely on accurately estimated data values to the computer, Actual Since the data value changes, This method is not possible. Also, Use this method Then Significant problems arise when certain data blocks are lost.   To solve these problems, As shown in Fig. 7, PC download operation During the operation, the receiver / decoder 2020 is functionally arranged. Receiver The block detection function 10 is executed on the bit stream input from 2018, The bit stream passes from the selector 12 to the buffer 14A or 14B. Spend. Buffer 14A, One content selected from 14B is selector 16, One of the parallel ports 4032, PC1 via serial port 4030 4 associated ports. Buffer 14A, 14B is Bitmap 2 Like 0, Provided by the RAM portion of the receiver / decoder 2020. Block detection function 10, Selector 12, 16, Buffer 14A, 14B, Parale And serial port 4032, 4030, Bitmap 20 is PC down It is controlled by a processor 22 that executes a load application.   next, Receiver / decoder 2020 during PC download operation About perations, This will be described with reference to the system diagrams of FIGS. As in step 24 of FIG. In the start process, The received block is Detected by the block detection function 10, Block number from the header of each block No. N was detected. Each block is The number i of the block, Block total number No. N is included. In step 26, A plurality of bitmaps 20 equal to the number N Is set by the bits of Each bit is reset to zero. Stage 28, To 30 And Buffer A flag and buffer B flag both set to "empty" Have been. In the example already described, The possible states of these flags are: "Empty" , "Filling", "full", “Empty”. In step 32, Output to PC The mode is set. next, At step 34, The starting process is shown in FIG. 9, FIG. 10A, FIG. 10B, FIG. 11A, FIG. 11B, The process continues to the sixth process shown in FIG. This starting process is performed substantially in parallel.   Fig. 9 Buffer 14A, Routine to control start of download to 14B It is. At step 36, This process is a new block Wait until a lock is detected. When a new block is detected, Step 38 Thus, the block detection function 10 detects the number i of the new block. Stage 40 Then Check bitmap 20 to see if bit b (i) is set to 1; If set, The block is ignored, Process returns to its start You. If not set, In step 42, the "empty" "" If so, at step 44 the buffer A flag is Ring " continue, In step 46, Buff via selector 12 Download of the block to the filer 14A is started, Then the process starts Return to time. If the buffer A flag is set to "empty" in step 42 If not, Step 48 checks whether the buffer B flag is "empty" Can be If "empty" In step 50, the buffer B flag is set to " Filling " Subsequently, in step 52, the buffer The download of the block to the filer 14B starts, Then when the process starts Return. Stage 42, At 48, Both buffer flags are set to "empty". If not specified, The process returns to its start.   FIG. Executed at the end of downloading the block to buffer 14A. Shows the routine to be performed. In step 54, The process, Block detection function Wait until 10 detects the last block. next, Stage 56, At 58 , The block is checked using the CRC contained in the block. Good block If, In step 60, the buffer A flag is set to "full"; block Is bad, In step 62, the buffer A flag is set to "empty". And As a result, this block is ignored. As shown in FIG. 10B, Buffer 14 At the end of downloading blocks to B, a supplementary routine is executed.   FIG. 11A shows Controls block download from buffer A to PC 18 FIG. In step 64, The process, Buffer A hula Wait until the setting is set to "full". Next, at step 66, Buffer B hula Is set to "empty" Place that is set If The process waits until the buffer 10B is completely empty. Next In step 68, The buffer A flag is set to "empty". Then the stage 70, The block i in the buffer 14A is Using the setting output mode, selector 16 and downloaded to the PC 18. In step 72, the process includes: Da Wait for the download to complete. Next, in step 74, Acknowledgment from PC18 A check for a fixed response is performed. When an acknowledgment is received, Then in step 76 , Bit b (i) for block I in bitmap 20 is set to one, Step On floor 78, The buffer B flag is set to "empty". next, Professional Seth returns at the beginning. If no acknowledgment is received in step 74, Stage 76 is omitted. Therefore, Block downloads are ignored. FIG. 11B As shown in Controls block download from buffer 14B to PC 18 Is executed.   In FIG. Routine to check if computer download is complete To indicate In step 80, All bits b (1) to b in the bitmap 20 It is checked whether (N) is set to 1 and If set, Les File download operation as far as the sheaver / decoder 2020 is considered Ends.   From the above explanation, The order of the blocks received by the receiver / decoder 2020 is You will find it has nothing to do. Receiver / decoder 2020 Block is required You can decide whether it is important. If needed, Receiver / decoder 202 0 stores the block in buffer 14A, 14B, placed in one of PC18 Wait until you are ready to receive this block. Block passes CRC check If not, Or Block not correctly identified by PC18 If Receiver / decoder 2020 downs the block again at next opportunity To load. Receiver / decoder 2020 Receiver / decoder 2020 Download the block to PC 18 at the same speed as the lock is downloaded. If you can load If not all, most blocks are consecutive Downloaded. However, Receiver / decoder 2020 Receiver Block / decoder 2020 at the same speed as the block is downloaded. If you are unable to download the For example, Dow only at half its speed If you can't download Generally speaking, At some stage another block Downloaded, continue, The remaining blocks are downloaded in subsequent stages Is executed. Download value to receiver / decoder 2020 and receiver / decoder When the ratio between the download values from 2020 changes, The above-mentioned device Automatically adjusts the interleave of the rack.   Apart from the running software, The above devices require memory Is Two buffers 14A, 14B, It is a bitmap 20. In general, B The lock size is 2 kilobytes (the capacity of one MPEG-2 table is 4 kilobytes) Is possible up to the site) The maximum number of blocks in one file is 216 Lock. Therefore, The required amount of memory is Buffer 14A, 4kg for 14B Part-Time Job, In the bitmap 20, since 216/8 = 8 kilobytes, Total 12 Bytes 216 x 2 KB = 128 MB file down Required to load.   In the device described above, the PC 18 is programmed as follows. Sand Chi As each block is received, Block File containing block number i It is written on the hard disk of PC 18 together with the name. next, All blocks received When done To play the original computer file The data is concatenated.   next, Loss of connection between broadcast center and receiver / decoder 2020 To cope with loss, Improvements to the device described above with reference to FIGS. Will be described. in this case, Lost connections are made by receiver / decoder 2020. Is detected, The user Whether you want to resume the download operation Will be asked. In that case, File download required for above issues Required, Bits b (1) to b (N) of the existing bitmap 20 are reset to 0. Step 26 of FIG. 8 is omitted to prevent it from being set. Therefore, Dow The unload operation is Download already downloaded blocks again Resumed without any delay.   next, The concept of redundancy using the XOR function will be described in more detail. FIG. 5, In the device described above with reference to FIG. The block of data is Simply bro Is considered to be a sequence of blocks 1-N. The device to be described is FIG. 13 to FIG. As shown in FIG. The blocks are arranged as a series of matrices, Each matri Is considered to include the (R + 1) column of blocks and the C column. Especially As shown in FIG. In the first matrix (Matrix 1), The top row is i = Including blocks numbered 1-C, The next column is Numbered i = C + 1 ~ 2C Including the block It continues to the bottom row in this condition. As shown in FIG. For a more general matrix, numbered j, The top row is i = (j-1) Blocks numbered as (R + 1) C + 1 to ((j-1) (R + 1) +1) C Including The bottom row is numbered as i = (j (R + 1) -1) C + 1 to j (R + 1) C Included blocks. In the general position of column r and column C of matrix j And The block number is i = ((j-1) (R + 1) + (r-1)) C + c. In this matrix, Blocks in all columns except the bottom column (r = 1 to R) Is a data block, Within this data block, Downloaded compilation The computer file is split. But, The blocks in the bottom row (r = R + 1) Already calculated by the application and data server 4006, MPEG Redundant blocks added in the bitstream. More specifically, Sixteenth As shown in the figure, If the files downloaded in step 100 are two keys each Divided into low byte data blocks. In step 102, R and C values set Is done. In step 104, The matrix number counter j is set to 1. Stage At 106, The first RC data block is C column and R column of data block As a matrix. In step 108, For each column c = 1 ~ C hand, The redundant block for that column is calculated. More specifically, Redundant blocks are Bitwise XOR operation on the data block in the corresponding column Is calculated. In step 110, Redundant blocks are Addition of matrix It is considered as the lower row (r = R + 1). In step 112, Block number i = (j -1) (R + 1) C + 1 to (j (R + 1) -1) C is a header to the data block. And added Block number i = (j (R + 1) -1) C + 1 to j (R + 1) C Is added as a header to the redundant block, The block is stored. Stage 1 At 14, A test is run to see if the end of the file has been reached, Reached If not, at step 116 the matrix counter j is incremented. It is. next, Steps 102-108 are repeated for the next RC data block . This continues until the end of the computer file is reached. D for the file If the entry is a directory Or the name of the file, size, A date stamp, R And the index containing the value of C is added to the MPEG-2 table. with this , The processed data blocks and redundant blocks are now ready for transmission.   If you want to download a file using the receiver / decoder 2020, The user selects a file entry from a directory or index. Then, the receiver / decoder 2020 becomes File information including values of R and C is expressed as P Supply to C18. next, During the PC download of the file, Receiver / Decoder 2020, With the same function as the method described above with reference to FIGS. Operate. But, The PC 18 is designed to deal with redundant blocks in the following way. (This is Log in from PC or CD-ROM to PC18. Loaded, Or download from receiver / decoder 2020 to PC18 Program). The PC 18 as a whole Download redundant blocks Every time a code is detected, In the same column of the same matrix as the received redundant block To see if all but one of the data blocks at have been received. Receiving If trusted, PC18, Received data blocks and received redundant blocks By performing a bitwise XOR operation on the lock, Lost Play the data block, The reproduced data block is transmitted to the receiver / decoder 2 020 as if it were received.   More specifically, Referring to FIG. In the initial stage 120, the PC 18 The value R, C is received, Then, at step 122, the block is received. Stage 124 Then The block number i is extracted from the header of the block received by the PC 18. . At step 126, The PC 18 stores the block as i. continue, Stage At 128, an acknowledgment is sent to the receiver / decoder 2020. In stage 130 hand, PC18 is All blocks except at least one (R-1) are of the C column. Check if each received. This check is Blocks are remembered Check the directory on the hard disk of PC 18 Also preferably , For speed reasons, The bitmap divided when each block is stored is stored in PC1. 8 can be performed in the memory. All except at least one If all blocks are stored in each column, Not enough blocks have been received Thus, the process proceeds to step 132. But, If not remembered, Step The process returns to step 122 to receive the next block. Step 132 is FO Controls the R-NEXT loop. In step 134, PC18 for each column , All data blocks in that column (ie, R-1 data block) Determine if you are trusted. If received, FOR-NEXT Lou The group proceeds to the next column. But, If not, Step 136 hand, PC18, Bitwise on received data blocks and redundant blocks By executing the XOR operation, Replay missing data blocks I do. Next, in step 138, The PC 18 stores the reproduced data block. , Go to the next column in the FOR-NEXT loop. FOR-NEXT loop Finally, The process proceeds to step 140. In stage 140, The received data A computer file is played from the data block. Next, in step 142, Con The computer file is stored on the hard disk of PC18. Step 134 hand, The decision whether a block is a data block or a redundant block is This is done by examining the truth of the relationship 0 <i-jRC <C. In this connection, Matri The index number j is obtained from j = int ((I-1) / (R + 1) C) +1, here , int () relates to the integer part of (). If it is true, That block is a joke Long block, If not, It is a data block.   The device described above has two major problems. The first problem is Transponder Short interrupts that occur in the bit stream from It is about. When a particular block i is affected by such an interrupt, It is understood that the next block i + 1 in the same column is also likely to be affected. You. It is relatively unlikely that the next block i + C in the same column will be affected. To do The value of C is selected. However, Of (R + 1) block in each column If R is properly received, Redundant blocks, Bitwise XOR operation Using the properties of the The remaining blocks can be played. Already One problem is that a block is received near the end of a file download operation The valid values to be used. If there is only one block waiting, Waiting The machine time is Approximately the time required to send all blocks in the file It is understood that it is. In the device described above, The waiting data block is If there is only a little, It reconstructs the received redundant and data blocks. It is possible to live. Of course, With the addition of sending redundant blocks, All files The total time to send the body has also increased, Therefore, Handling transmission interrupts, And the last few The advantage of reducing the time waiting for locks is By properly choosing the values of C and R, Combination It must deal with the disadvantage of increasing the total transmission time. Of values C and R The choice is Can be subject to statistical studies or trial and error. But one Generally, This value would be C = 50 and R = 10. Both C and R are greater than 5 Is preferred.   In the example above, The values of C and R are The file is prepared in a sendable block Is determined when The values of C and R are stored in the directory of the downloadable file. Or included in the index table. Or, If the values of C and R are Or it is predetermined without being included in the index table, PC18 is C And with the value of R.   In the example above, Block download, Enough blocks to play the file Continue until the lock is downloaded. next, The missing block is played And The file plays. In another example, Redundant blocks in specific columns Downloaded, All data blocks except one of the columns are downloaded If it is Enough blocks are downloaded to play the entire file Without waiting until The missing data block is played, Received at that stage Is marked.   In the device described above, Receiver / decoder 2020 is independent of PC18 It is described as a state. But, Receiver / decoder 2020 For example, In the form of a doon card, It will be appreciated that it forms part of PC 18 .   The present invention Just mentioned as an example, Changes in details may be made within the scope of the invention. it can.   Each feature disclosed in the description, And (where appropriate) the claims and drawings , It may be provided separately or in any suitable combination.   In the preferred embodiment described above, Certain features of the present invention relate to computer software. Was realized using a. However, of course, Any of these features It will be apparent to those skilled in the art that the present invention may be implemented using hardware. further , hardware, Functions performed by computer software, etc., Electrical It is easily understood that the operation can be performed using a signal or the like or using an electric signal.   The cross reference is Filed against our co-pending application, Everything is Have the same filing date , Named "Signal Generation and Broadcasting (Agent Reference Number PC / ASB / 19707)", " Smart card for use with receivers of encrypted broadcast signals, And receiver (substitute Person reference number PC / ASB / 19708) " "Broadcast / Receive System and its Conditional access system (agent reference number PC / ASB / 19710) " "Receive Download computer files from transmitter to computer via transmitter / decoder Road (agent reference number PC / ASB / 19711) " "Television program And reception and transmission of other data (agent reference number PC / ASB / 19712) " , "Download data (agent reference number PC / ASB / 19713)", "Con Computer memory configuration (agent reference number PC / ASB / 19714) " "TV Or radio control system generation (agent reference number PC / ASB / 1971) 5) ", "Extraction of data section from transmitted data stream (agent reference number P C / ASB / 19716) " "Access control system (agent reference number PC / AS) B / 19717) ", "Data processing system (agent reference number PC / ASB / 197 18) ", And "Broadcasting and receiving systems, And receivers / decoders therefor and And remote controller (agent reference number PC / ASB / 19720). " this The disclosures of these documents are incorporated herein by reference. The list of applications includes this application. It is.

───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(GH,KE,LS,MW,S D,SZ,UG),EA(AM,AZ,BY,KG,KZ ,MD,RU,TJ,TM),AL,AM,AT,AU ,AZ,BA,BB,BG,BR,BY,CA,CH, CN,CU,CZ,DE,DK,EE,ES,FI,G B,GE,GH,HU,IL,IS,JP,KE,KG ,KP,KR,KZ,LC,LK,LR,LS,LT, LU,LV,MD,MG,MK,MN,MW,MX,N O,NZ,PL,PT,RO,RU,SD,SE,SG ,SI,SK,TJ,TM,TR,TT,UA,UG, US,UZ,VN,YU────────────────────────────────────────────────── ─── Continuation of front page    (81) Designated countries EP (AT, BE, CH, DE, DK, ES, FI, FR, GB, GR, IE, IT, L U, MC, NL, PT, SE), OA (BF, BJ, CF) , CG, CI, CM, GA, GN, ML, MR, NE, SN, TD, TG), AP (GH, KE, LS, MW, S D, SZ, UG), EA (AM, AZ, BY, KG, KZ , MD, RU, TJ, TM), AL, AM, AT, AU , AZ, BA, BB, BG, BR, BY, CA, CH, CN, CU, CZ, DE, DK, EE, ES, FI, G B, GE, GH, HU, IL, IS, JP, KE, KG , KP, KR, KZ, LC, LK, LR, LS, LT, LU, LV, MD, MG, MK, MN, MW, MX, N O, NZ, PL, PT, RO, RU, SD, SE, SG , SI, SK, TJ, TM, TR, TT, UA, UG, US, UZ, VN, YU

Claims (1)

【特許請求の範囲】 1. コンピュータファイルを、レシーバ/デコーダを介してトランスミッタか らコンピュータへダウンロードする方法であって、 ファイル、またはその1部を一連のデータのRグループに分割し、前記グルー プの各々を一連のデータのCブロックに細分する段階を有し、 C冗長ブロックのグループを生成する段階を有し、これらのデータブロックの ビットワイズ排他ORまたはNORであることにより、各冗長ブロックが、前記 Rグループ内の対応するデータブロックと関連し、 前記データブロックのグループと前記冗長ブロックのグループの各々をトラン スミッタから送信する段階を有し、 前記送信されたブロックの少なくともいくつかを前記レシーバ/デコーダで受 信する段階を有し、 前記受信されたブロックを、前記レシーバ/デコーダからコンピュータへ供給 する段階を有し、 前記受信された冗長ブロックの少なくとも1つについて、その冗長ブロックと 、これに関連する1つを除く全てのデータブロックが受信されたかどうかを前記 コンピュータで決定し、受信されている場合には、その冗長ブロックと、これに 対応する受信されたデータブロック上において、ビットワイズ排他ORまたはN ORオペレーションを実行することにより前記1つのデータブロックを再生する 段階を有することを特徴とする方法。 2. 決定および再生された段階が、1つを除く全ての関連するデータブロック の前記受信された冗長ブロックの各々について受信されていることを特徴とする 請求の範囲1に記載の方法。 3. 残りのデータブロックを再生するのに十分なブロックが受信された時を決 定し、次に前記ファイルまたは前記その1部にそれ以上ブロックを受信すること を中止する段階をさらに有することを特徴とする請求の範囲2に記載の方法。 4. 前記トランスミッタから番号RとCの値を表示するデータを送信し、前記 RとCデータを前記レシーバにおいて受信し、前記RとCデータを前記コンピュ ータへ供給する段階をさらに有し、 前記コンピュータが、各冗長ブロックにどのデータブロックが関連するかを決 定する上で、供給されたRとCデータを使って動作可能であることを特徴とする 前出の請求の範囲の内のいずれか1項に記載の方法。 5. 前記C冗長ブロックのグループ内の前記冗長ブロックのi番目(i=1〜 C)が、前記CデータブロックのRグループの各々内のi番目に対応するように 、前記ブロックが命令されることを特徴とする前出の請求の範囲の内のいずれか 1項に記載の方法。 6.レシーバ/デコーダを介して、トランスミッタからコンピュータにコンピュ ータファイルをダウンロードする方法であって、 前記ファイルを複数(N)のブロックに分割する段階を有し、 前記ファイルのブロックの各々を、そのブロックの一致と共に、前記トランス ミッタから連続して送信する段階を有し、 レシーバ/デコーダにおいて、 各ブロックにつき、最初にリセットされた複数のNフラグを1つ提供し、 前記ブロックの最新の送信を受信する段階と、 そのブロックにフラグが設定されているかどうかを決定し、設定されていない 場合には、前記レシーバから前記コンピュータにそのブロックを供給し、そのブ ロックにフラグを設定する段階とを、 全てのフラグが設定されるまで周期的に繰返すことを特徴とする方法。 7. 各供給段階の後に、前記コンピュータが、供給されたブロックを受信した 旨の肯定応答を前記レシーバ/デコーダに送信するように配置され、 前記各ブロックの設定が、そのブロックの肯定応答の受信に応じて実行される ことを特徴とする請求の範囲6に記載の方法。 8. 前記フラグのリセットの段階を除き、請求の範囲6または7の方法を繰返 す段階をさらに有することを特徴とする請求の範囲6または7のいずれか1項に 記載の方法。 9. 請求の範囲1〜5のいずれか1項に記載の、また、請求の範囲6〜8のい ずれか1項に記載の方法。 10. 実質的に図面を参照して説明した、レシーバ/デコーダを介して、トラ ンスミッタからコンピュータへコンピュータファイルをダウンロードする方法。 11. 請求の範囲1〜5、9、10のいずれか1項に記載の方法の1部を実行 するために使用するコンピュータであって、前記コンピュータが、 前記レシーバ/デコーダから前記ブロックを受信する手段を有し、 前記受信したブロックを処理するための手段を有し、前記処理手段が、前記受 信した冗長ブロックの少なくとも1つについて、その冗長ブロックと、これに対 応するデータブロックの1つを除く全部が受信されているかどうかを決定し、受 信されている場合は、その冗長ブロック上と、対応する受信したデータブロック 上でビットワイズ排他ORまたはNORオペレーションを実行することにより、 前記1つのデータブロックを再生するようにプログラムされており、 前記受信したデータブロックと、あらゆる再生されたデータブロックとを記憶 する手段を有することを特徴とするコンピュータ。 12.前記処理手段が、前記対応するデータブロックの1つを除く全てが受信さ れた、前記受信した冗長ブロックの各々について、こうした決定と再生を実行す るようにプログラムされていることを特徴とする請求の範囲11に記載のコンピ ュータ。 13. 前記処理手段が、前記対応するデータブロックの1つを除く全てが受信 された、前記受信した冗長ブロックについて、こうした決定と再生を実行するよ うにプログラムされていることを特徴とする請求の範囲12に記載のコンピュー タ。 14. 前記受信手段が、番号R、Cの値を示すデータの受信が可能であり、前 記処理手段が、各冗長ブロックがどのデータブロックに対応するかを決定するた めにR、Cデータを使用するようにプログラムされていることを特徴とする請求 の範囲11〜13のいずれか1項に記載のコンピュータ。 15. 前記処理手段が、前記コンピュータファイルまたはその1部を再構成す るために、受信したデータブロックと、再生されたあらゆるデータブロックをリ ンクし、また、前記記憶手段が前記再構成ファイルまたはその1部を記憶するよ うに動作可能であることを特徴とする請求の範囲11〜14のいずれか1項に記 載のコンピュータ。 16. 実質的に図面を参照して説明した、レシーバ/デコーダを介して、トラ ンスミッタからコンピュータにコンピュータファイルをダウンロードするために 使用するコンピュータ。 17. 請求の範囲11〜16に記載されたように動作するように、これらの請 求の範囲のいずれか1項に記載の、コンピュータの処理手段をプログラムするた めのコンピュータプログラムを備えた記憶媒体。 18. 実質的に図面を参照して説明した、コンピュータプログラムを備えた記 憶媒体。 19.MPEG送信システムであって、 レシーバ/デコーダへダウンロードするために、ファイルまたはその1部を、 データの一連のRグループに分割し、また、前記グループの各々を前記データの 一連のCブロックに細分する手段を有し、 C冗長ブロックのグループを生成する手段を有し、前記各冗長ブロックが、デ ータブロックのビットワイズ排他ORまたはNORであることによって、Rグル ープ内のデータブロックの対応する1つと関連し、 前記データブロックのグループと、前記冗長ブロックのグループとの各々を送 信する手段を有することを特徴とするMPEG送信システム。 20. 実質的に図面を参照して説明したMPEG送信システム。 21. MPEGビデオおよび/または音声データのテーブルと、コンピュータ ファイルデータのブロックを受信するように配置されたレシーバ/デコーダであ って、 コンピュータファイルが、周期的に受信されるこうしたブロックの複数Nとし て受信され、こうしたブロックの各々がそのブロックの識別を有しており、前記 レシーバ/デコーダが、 各コンピュータファイルブロックについて、最初にリセットされている複数の Nフラグを1つ記憶する手段を有し、 1番新しく受信したコンピュータファイルブロックを一時的に記憶する手段を 有し、 前記ブロック記憶手段内に記憶された前記ブロックをコンピュータに供給する 手段と、1番新しく受信したブロックのフラグが前記フラグ記憶手段で設定され ているかどうかを決定し、設定されていない場合には、前記ブロック供給手段に 、前記ブロック記憶手段から前記コンピュータへそのブロックを供給させ、前記 フラグ記憶手段内のそのブロックにフラグを設定させる制御手段を有することを 特徴とするレシーバ/デコーダ。 22. 前記コンピュータから、このようなブロックが前記ブロック供給手段か ら受信された旨の肯定応答を受信するための手段をさらに有し、 前記制御手段が、前記ブロックの肯定応答に反応して、そのブロックにフラグ を設定するように動作可能であることを特徴とする請求の範囲21に記載のレシ ーバ/デコーダ。 23. 前記制御手段が、接続の損失後に、前記フラグのリセットを行わずに、 前記コンピュータファイルブロックの受信を再開させるように動作可能であるこ とを特徴とする請求の範囲21または22のいずれか1項に記載のレシーバ/デ コーダ。 24. 前記ブロック供給手段が、複数の異なるタイプの前記ブロック供給手段 の内の1つであることを特徴とする請求の範囲21〜23のいずれか1項に記載 のレシーバ/デコーダ。 25. 前記複数のブロック供給手段が、ECP−モードIEEEパラレルポー ト、バイトモードIEEEパラレルポート、ニブルモードIEEEパラレルポー ト、RS−232シリアルポートの内の少なくとも2つを有することを特徴とす る請求の範囲24に記載のレシーバ/デコーダ。 26. 実質的に図面を参照して説明したレシーバ/デコーダ。[Claims] 1. Transmits computer files via a receiver / decoder to a transmitter Download to your computer,   The file, or a part thereof, is divided into a series of data R groups, Subdividing each of the groups into a series of C blocks of data,   Generating a group of C-redundant blocks; By being bitwise exclusive OR or NOR, each redundant block is Associated with the corresponding data block in the R group,   Transform each of the group of data blocks and the group of redundant blocks. Transmitting from the transmitter,   Receiving at least some of the transmitted blocks at the receiver / decoder Trusting,   Providing the received block from the receiver / decoder to a computer Having a step of   For at least one of the received redundant blocks, the redundant block Determines whether all but one of the data blocks associated with this have been received. If determined and received by the computer, the redundant block and On the corresponding received data block, a bitwise exclusive OR or N Regenerate the one data block by performing an OR operation A method comprising steps. 2. All relevant data blocks except one determined and reconstructed stage Received for each of said received redundant blocks. The method of claim 1. 3. Determine when enough blocks have been received to play the remaining data blocks. And then receiving more blocks in the file or part of it 3. The method of claim 2, further comprising the step of: 4. Transmitting data indicating the values of numbers R and C from the transmitter, R and C data are received by the receiver, and the R and C data are received by the computer. Data supply step,   The computer determines which data block is associated with each redundant block. Operable using the supplied R and C data. A method according to any one of the preceding claims. 5. The i-th (i = 1 to 1) of the redundant block in the group of the C redundant blocks So that C) corresponds to the i-th in each of the R groups of the C data block. Any of the preceding claims, wherein said blocks are commanded Item 2. The method according to item 1. 6. From the transmitter / computer to the computer via the receiver / decoder Data file download method,   Dividing the file into a plurality (N) of blocks;   Each of the blocks in the file, along with a match for that block, Having a step of transmitting continuously from the mitter,   In the receiver / decoder, For each block, provide one of a plurality of N flags that were initially reset, Receiving the latest transmission of the block;   Determines if the block is flagged and not set In that case, the block is supplied from the receiver to the computer and the block is supplied to the computer. Flagging the lock.     A method which repeats periodically until all flags are set. 7. After each dispensing step, the computer receives the dispensed blocks A positive acknowledgment to the receiver / decoder.   Setting of each of the blocks is performed in response to receiving an acknowledgment of that block The method of claim 6, wherein: 8. The method according to claim 6 or 7 is repeated except for the step of resetting the flag. 8. The method according to claim 6, further comprising the step of: The described method. 9. The method according to any one of claims 1 to 5, and any one of claims 6 to 8. 2. The method according to claim 1. 10. Through a receiver / decoder substantially as described with reference to the drawings, How to download computer files from a transmitter to a computer. 11. Performing a part of the method according to any one of claims 1 to 5, 9, 10, A computer used to perform   Means for receiving the block from the receiver / decoder,   Means for processing the received block, wherein the processing means comprises: For at least one of the received redundant blocks, the redundant block and its corresponding Determine if all but one of the corresponding data blocks have been received and If so, on the redundant block and the corresponding received data block By performing a bitwise exclusive OR or NOR operation on Programmed to play back the one data block;   Store the received data blocks and any reconstructed data blocks A computer characterized by having means for performing. 12. The processing means may determine that all but one of the corresponding data blocks have been received. For each of the received redundant blocks thus determined, such determination and regeneration are performed. 12. The computer program according to claim 11, which is programmed to Computer. 13. The processing means receives all but one of the corresponding data blocks Performing such a determination and regeneration on the received redundant block 13. The computer according to claim 12, which is programmed as follows. Ta. 14. The receiving means is capable of receiving data indicating the values of the numbers R and C; Processing means for determining which data block each redundant block corresponds to. Characterized in that it is programmed to use R, C data for 14. The computer according to any one of ranges 11 to 13. 15. The processing means reconstructs the computer file or a part thereof; Data blocks that have been received and any data blocks that have been played back. And the storage means stores the reconstructed file or a part thereof. Operable as described in any one of claims 11 to 14. Computer. 16. Through a receiver / decoder substantially as described with reference to the drawings, To download computer files from the transmitter to the computer The computer to use. 17. These contracts may be operated as described in claims 11-16. Programing the computer processing means according to any one of claims. Storage medium provided with a computer program for the computer. 18. A computer program comprising a computer program substantially as described with reference to the drawings. Storage medium. 19. An MPEG transmission system,   File or part of it for downloading to the receiver / decoder Dividing the data into a series of R groups, and each of the groups Means for subdividing into a series of C blocks,   Means for generating a group of C redundant blocks, wherein each of the redundant blocks is Bit-wise exclusive OR or NOR of the data block Associated with a corresponding one of the data blocks in the group,   Each of the group of data blocks and the group of redundant blocks is transmitted. An MPEG transmission system comprising means for communicating. 20. An MPEG transmission system substantially as described with reference to the drawings. 21. Table of MPEG video and / or audio data and computer A receiver / decoder arranged to receive a block of file data. What   A computer file is defined as a plurality N of such blocks that are received periodically. Each such block has an identification of that block, and The receiver / decoder   For each computer file block, several initially reset Means for storing one N flag,   A means to temporarily store the newly received computer file block Have   Supplying the block stored in the block storage means to a computer Means and the flag of the block newly received are set in the flag storage means. Is determined, if not set, the block supply means Causing the computer to supply the block from the block storage means, Having control means for setting a flag in the block in the flag storage means. Receiver / decoder featured. 22. From the computer, if such a block is the block supply means Further comprising means for receiving an acknowledgment that it has been received from   The control means responds to the acknowledgment of the block by flagging the block. 22. The receiver according to claim 21, wherein the receiver is operable to set Server / decoder. 23. The control means, after the loss of connection, without resetting the flag, Operable to resume receiving the computer file block. A receiver / decoder according to any one of claims 21 and 22, characterized in that: Coda. 24. The block supply means comprises a plurality of different types of block supply means; 24. The method as claimed in claim 21, wherein the distance is one of the following: Receiver / decoder. 25. The plurality of block supply means may be an ECP-mode IEEE parallel port. Port, byte mode IEEE parallel port, nibble mode IEEE parallel port , Having at least two of the RS-232 serial ports. A receiver / decoder according to claim 24. 26. A receiver / decoder substantially as described with reference to the drawings.
JP54322098A 1997-03-21 1997-04-25 Download computer files from transmitter to computer via receiver / decoder Pending JP2001521692A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP97400650.4 1997-03-21
EP97400650 1997-03-21
PCT/EP1997/002109 WO1998043162A1 (en) 1997-03-21 1997-04-25 Downloading a computer file from a transmitter via a receiver/decoder to a computer

Publications (1)

Publication Number Publication Date
JP2001521692A true JP2001521692A (en) 2001-11-06

Family

ID=26070204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54322098A Pending JP2001521692A (en) 1997-03-21 1997-04-25 Download computer files from transmitter to computer via receiver / decoder

Country Status (14)

Country Link
EP (1) EP1010068A1 (en)
JP (1) JP2001521692A (en)
CN (1) CN1254422A (en)
AU (1) AU739663B2 (en)
BR (1) BR9714590A (en)
CA (1) CA2284147A1 (en)
HU (1) HUP0001481A3 (en)
IL (1) IL131933A0 (en)
NO (1) NO994533L (en)
NZ (1) NZ500199A (en)
PL (1) PL335779A1 (en)
TR (1) TR199902272T2 (en)
WO (1) WO1998043162A1 (en)
ZA (1) ZA973606B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3630037B2 (en) 1999-10-06 2005-03-16 日本電気株式会社 DSM-CC carousel receiving apparatus, receiving method used therefor, and recording medium recording the control program thereof
AU2002329585A1 (en) * 2002-09-30 2004-05-04 Popwire.Com Dynamic transferring software/protocol

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2033699B (en) * 1978-11-01 1982-11-10 Philips Electronic Associated Error detection
CA1177558A (en) * 1982-04-15 1984-11-06 Groupe Videotron Ltee. (Le) Cable network data transmission system
US4660202A (en) * 1985-04-29 1987-04-21 Zenith Electronics Corporation Error protection method for packeted data
US4985895A (en) * 1988-11-14 1991-01-15 Wegener Communications, Inc. Remote controlled receiving system apparatus and method
US5003591A (en) * 1989-05-25 1991-03-26 General Instrument Corporation Functionally modifiable cable television converter system
KR950001439B1 (en) * 1990-04-30 1995-02-24 삼성전자주식회사 Coding apparatus of error correction
EP0680216B1 (en) * 1994-04-28 2007-11-21 OpenTV, Inc. Apparatus and method for formulating an interactive signal

Also Published As

Publication number Publication date
HUP0001481A3 (en) 2001-01-29
AU739663B2 (en) 2001-10-18
AU2888097A (en) 1998-10-20
HUP0001481A2 (en) 2000-09-28
IL131933A0 (en) 2001-03-19
NO994533L (en) 1999-11-22
WO1998043162A1 (en) 1998-10-01
NZ500199A (en) 2002-08-28
TR199902272T2 (en) 2000-01-21
NO994533D0 (en) 1999-09-17
BR9714590A (en) 2002-09-17
EP1010068A1 (en) 2000-06-21
ZA973606B (en) 1998-09-07
CN1254422A (en) 2000-05-24
PL335779A1 (en) 2000-05-22
CA2284147A1 (en) 1998-10-01

Similar Documents

Publication Publication Date Title
CA2284018C (en) Extracting data sections from a transmitted data stream
JP4079282B2 (en) Broadcast / reception system and conditional access system therefor
JP4062367B2 (en) MPEG receiver / decoder and method for downloading data to an MPEG receiver / decoder
KR100589447B1 (en) Signal Generation and Broadcast
JP4418754B2 (en) Interactive television reception method and transmission method and related apparatus
JP2001518255A (en) Smart card for use with receiver of encrypted broadcast signal, and receiver
JP2001519627A (en) Download data
JP2001518256A5 (en)
JP2001521692A (en) Download computer files from transmitter to computer via receiver / decoder
KR20040094836A (en) Downloading of software programs
KR20000076401A (en) Downloading a computer file from a transmitter via a receiver/decoder to a computer
JP2002118812A (en) Digital broadcast receiver
KR19990016897A (en) How to upgrade your operating system and how to correct errors
MXPA99008542A (en) Downloading a computer file from a transmitter via a receiver/decoder to a computer
CZ331199A3 (en) Retrieving computer file from a transmitter via a receiver(decoder into a computer
HK1025451B (en) Broadcast and reception system, and conditional access system therefor