"明細書に記載された発明。そこで、本発明の目的は、加入者データ処理システムにおいて低コストのマイクロプロセッサ及びメモリで実施することのできる対話型テレビ番組スケジュールシステム及び方法を提供することである。本発明の別の目的は、大量生産される消費者製品に使用するのに適した低コストのマイクロプロセッサでテレビ番組スケジュールデータのサブセットサーチを実行できるようにテレビ番組スケジュールデータを送信しそして記憶する対話型テレビ番組スケジュールシステム及び方法を提供することである。本発明の更に別の目的は、テレビ番組スケジュール情報を効率的な仕方で送信するシステム及び方法を提供することである。本発明の更に別の目的は、テレビ番組スケジュール情報を加入者データシステムにより効率的に収集するシステム及び方法を提供することである。本発明の更に別の目的は、スケジュールの更新を受け入れるための高速スケジュール更新を低帯域巾の送信システムで行えるようにするシステム及び方法を提供することである。本発明の更に別の目的は、現在放送されているスケジュール情報と、記録された放送と共に含まれた古いスケジュール情報とを区別できるようにするシステム及び方法を提供することである。本発明の更に別の目的は、スケジュール更新情報に優先順位処理を与えるシステム及び方法を提供することである。本発明の更に別の目的は、スケジュール情報送信を選択的に暗号化するシステム及び方法を提供することである。本発明の更に別の目的は、システムのスケジュール情報送信部分に単一のシステム時間を使用しそして加入者ユニットにおいてローカル時間の補償を行うシステム及び方法を提供することである。本発明の更に別の目的は、テレビ放送信号の異なる位置に与えられたスケジュール情報を加入者ユニットが識別できるようなシステム及び方法を提供することである。本発明の更に別の目的は、加入者ユニットによって既に収集されていて新たなスケジュール情報の部分と重複するスケジュール情報の部分を保持し、このようなスケジュール情報の部分を加入者ユニットで再び収集する必要がないようにするシステム及び方法を提供することである。本発明の更に別の目的は、使用できるメモリを最も効率的に使用するように独特な仕方でデータ圧縮を用いるシステム及び方法を提供することである。上記目的及びそれに関連した目的は、以下に開示する新規なテレビスケジュール情報送信及び利用システム並びに方法を用いることにより達成される。1つの観点において、本発明によるテレビスケジュール情報送信及び利用システムは、中央データ処理システムを有している。所定のテリトリーに対するスケジュール情報データを中央データ処理システムに与えるための手段が中央データ処理システムに接続される。中央データ処理システムは、所定のテリトリーに対するスケジュール情報データを所定のスケジュール情報送信フォーマットにフォーマットするための手段を備えている。所定のテリトリーに対するスケジュール情報データを所定のスケジュール情報送信フォーマットで送信するための手段が中央データ処理システムに接続される。所定のテリトリーの領域に各々配置された複数の領域データ処理システムは、所定のテリトリーに対するスケジュール情報データを受け取る手段と、上記複数の領域データ処理システムの各々が配置された領域に対しスケジュール情報データを選択する手段と、その領域に対するスケジュール情報データを送信する手段とを備えている。各領域には複数の加入者データ処理システムがある。複数の加入者データ処理システムの各々は、領域に対するスケジュール情報データ少なくとも一部分を受け取る手段と、加入者データ処理システムにより受け取られたスケジュール情報データを記憶する手段と、加入者データ処理システムにより受け取られたスケジュール情報データの一部分を、加入者データ処理システムのユーザへ表示するために組み立てる手段と、スケジュール情報データの部分を組み立てる手段に接続されて、スケジュール情報データの部分を表示するためのディスプレイとを備えている。本発明の別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーの加入者データ処理システムとを備えている。このシステムは、所定のテリトリーの領域に各々配置された複数の領域データ処理システムをもつように改良される。これら複数の領域データ処理システムの各々は、所定のテリトリーに対するスケジュール情報データを受け取る手段と、上記複数の領域データ処理システムの各々が配置された領域に対しスケジュール情報データを選択する手段と、その領域に対するスケジュール情報データを各領域における複数の加入者データ処理システムへ送信する手段とを備えている。テレビスケジュール送信システムの更に別の改良として、上記複数の領域データ処理システムの各々において領域に対するスケジュール情報データを送信する手段は、テレビ送信信号の異なる位置で領域に対するスケジュール情報データを送信する能力を有する。加入者データ処理システムの各々は、スケジュール情報データをテレビ放送信号において探索する手段を含む。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、所定のテリトリーに対するスケジュール情報データを、テリトリーの領域に各々位置する複数の領域データ処理システムへ送信することを含む。各領域のスケジュール情報データは、その領域データ処理システムで選択される。各領域のスケジュール情報データは、その領域データ処理システムで、各領域の複数の加入者データ処理システムへ送信される。各加入者データ処理システムにより受け取られたスケジュール情報データの部分は、各加入者データ処理システムのユーザへ表示するように組み立てられる。スケジュール情報データのこの部分は、ユーザに表示される。本発明の方法は、更に、複数の領域データ処理システムの少なくとも幾つかがテレビ放送信号の異なる部分においてスケジュール情報データを送信するようにさせることを含む。複数の加入者データ処理システムの各々は、テレビ放送信号においてスケジュール情報データを探索する。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。このシステムは、テレビスケジュールデータをコマンドとして送信するための手段を中央処理データシステムに設けることにより改良される。上記コマンドは、システム内の複数の加入者データ処理システムのための命令と、テレビスケジュールを組み立てそして表示するために複数の加入者データ処理システムにおいてこれらコマンドにより使用される基本的フォーマットのテレビスケジュール情報とを含んでいる。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、中央データ処理システムから複数の加入者データ処理システムへコマンドを送信することを含む。このコマンドは、システム内の複数の加入者データ処理システムのための命令と、テレビスケジュールを組み立てそして表示するために複数の加入者データ処理システムにおいてこれらコマンドにより使用されるテレビスケジュール情報とを含んでいる。テレビスケジュールは、複数の加入者データ処理システムの各々においてテレビスケジュール情報から組み立てられる。テレビスケジュールは、複数の加入者データ処理システムの各々のユーザに表示される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。このシステムは、スケジュール情報の一部分より成る所定のキャラクタストリングを複数の加入者データ処理システムに送信する手段を中央データ処理システムにもつように改良される。複数の加入者データ処理システムの各々における手段は、所定のキャラクタストリングがその加入者データシステムにより収集されたかどうかを決定する。複数の加入者データ処理システムの各々における手段は、所定のキャラクタストリングがまだ収集されていない場合にそれを加入者データシステムに記憶する。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、スケジュール情報の一部分より成る所定のキャラクタストリングをシステム内の複数の加入者データ処理システムに送信することを含む。所定のキャラクタストリングが特定の加入者データ処理システムにより収集されたかどうかが決定される。まだ収集されていない場合には、所定のキャラクタストリングがその加入者データ処理システムに記憶される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、直接放送衛星を備えている。中央データ処理システムは、直接放送衛星に対するテレビスケジュールデータを直接放送衛星に送信する手段を有する。加入者データ処理システムは、直接放送衛星に対するテレビスケジュールデータを直接放送衛星から受信する手段を有する。このシステムは、複数の領域データ処理システムの各々が所定のテリトリーの領域に配置されるように改善される。複数の領域データ処理システムの各々は、所定のテリトリーに対するスケジュール情報データを受信する手段を有する。複数の領域データ処理システムの各々が配置された領域に対するスケジュール情報データを選択する手段が設けられる。領域に対するスケジュール情報データを各領域の複数の加入者データ処理システムへ送信する手段が設けられる。本発明の更に別の特徴において、テレビスケジュール送信システムの方法は、直接放送衛星に対するテレビスケジュールデータを直接放送衛星に送信することを含む。直接放送衛星に対するテレビスケジュールデータは、加入者データ処理システムにおいて直接放送衛星から受信される。所定のテリトリーに対するスケジュール情報データは、所定のテリトリーの領域に配置された領域データ処理システムにおいて受信される。領域データ処理システムが配置された領域に対するスケジュール情報データは、領域データプロセッサにおいて選択される。領域に対するスケジュール情報データは、加入者データ処理システムへ送信される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、テレビスケジュールデータを送信する手段を有する中央データ処理システムを備えている。加入者データ処理システムは、中央データ処理システムにより送信されたテレビスケジュールデータの少なくとも幾つかを受信する手段を有する。このシステムは、テレビスケジュール情報より成るデータベース項目を効率的に記憶するためのメモリを含む加入者データ処理システムを設けることにより改良される。各データ項目は、ハンドルテーブルへのインデックスとしてハンドルを有しており、これは、ハンドルに対応するメモリ位置を識別する。これは、データベース項目が廃物収集のためにあるメモリ位置から別のメモリ位置へ移動できるようにする。又、これは、データ年齢として生じて破棄されるデータベースメモリのホールを回復し、そして大きな有用なメモリブロックへと連結できるようにする。これは、高価なメモリのマイクロコントローラサイクルを自由に取り引きする。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、テレビスケジュールデータを送信することを含む。テレビスケジュールデータの少なくとも幾つかは、テレビスケジュール情報より成るデータベース項目として加入者データ処理システムにおいて受信される。データ項目の各々は、ハンドルを有する。ハンドルは、それに対応するメモリ位置を識別するハンドルテーブルへのインデックスとして使用される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対する中央データ処理システムを備え、これは、既に送信されたテレビスケジュールデータの更新を含む所定のテリトリーに対するテレビスケジュールデータを送信するための手段を有する。所定のテリトリーには複数の加入者データ処理システムがある。複数の加入者データ処理システムの各々は、テレビスケジュールデータの受信器と、テレビスケジュールデータを記憶するためのメモリとを含む。メモリは受信器に接続される。このシステムは、他のテレビスケジュールデータに対して既に送信されたテレビスケジュールデータの更新に対して送信優先順位を指定するための手段を中央データ処理システムに含ませることにより改良される。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、最初に送信されたテレビスケジュール情報の更新と、最初に送信されたスケジュール情報との間にテレビスケジュール情報を送信するための相対的な優先順位を確立することを含む。テレビスケジュール情報は、この相対的な優先順位に基づいて送信される。送信されたテレビスケジュール情報の少なくとも幾つかは加入者データ処理システムにおいて受信される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。複数の加入者データ処理システムの各々は、テレビスケジュールデータのための受信器を含む。テレビスケジュールデータを記憶するためのメモリが受信器に接続される。このシステムは、送信されたテレビスケジュールデータを他の送信されたテレビスケジュールデータに対して時間で識別するための手段を中央データ処理システムに含ませることにより改良される。加入者データ処理システムの手段は、加入者データ処理システムにより受け取られたテレビスケジュールデータが、メモリに記憶されたテレビスケジュールデータの時間識別より遅れた時間識別を有するかどうか決定する。本発明の更に別の特徴において、テレビスケジュール送信システムの方法は、送信されたテレビスケジュールデータを他の送信されたテレビスケジュールデータに対する時間で識別するようにテレビスケジュールデータを送信することを含む。送信されたテレビスケジュールデータは、加入者データ処理システムで受信される。テレビスケジュールデータは、加入者データ処理システムのメモリに記憶される。テレビスケジュールデータは、その後、他のテレビスケジュールデータに対する時間による識別を含んで供給される。その後に供給されるテレビスケジュールデータの時間による識別は、メモリに記憶されたテレビスケジュールデータの時間による識別と比較される。記憶されたテレビスケジュールデータは、その後に供給されるテレビスケジュールデータの時間による識別が、記憶されたテレビスケジュールデータの時間による識別よりも遅い場合に、その後に供給されるテレビスケジュールデータと交換される。記憶されたテレビスケジュールデータは、その記憶されたテレビスケジュールデータの時間による識別が、その後に供給されるテレビスケジュールデータの時間による識別より遅い場合に、メモリに維持される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。複数の加入者データ処理システムの各々は、テレビスケジュールデータのための受信器を含む。テレビスケジュールデータを記憶するためのメモリが受信器に接続される。このシステムは、テレビスケジュールを組み立てて表示するために加入者データ処理システムにより必要とされるテレビスケジュールデータの選択された部分を暗号化するための手段を中央データ処理システムに含ませることにより改良される。加入者データ処理システムの手段は、テレビスケジュールデータの上記選択された部分を暗号化する。本発明の更に別の特徴において、テレビスケジュール送信システムの方法は、テレビスケジュールを表示のために組み立てるに必要なテレビスケジュールデータの一部分を選択的に暗号化することを含む。暗号化された部分を含むテレビスケジュールデータが送信される。テレビスケジュールデータは、加入者データ処理システムにおいて受信される。テレビスケジュールデータの暗号化された部分は、暗号解読される。ここで暗号解読された部分を含むテレビスケジュールデータは、表示のためにテレビスケジュールを組み立てるのに使用される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。複数の加入者データ処理システムの各々は、テレビスケジュールデータのための受信器を含む。テレビスケジュールデータを記憶するためのメモリが受信器に接続される。このシステムは、送信システムのための単一のシステム時間を確立するリアルタイムクロックを中央データ処理システムに含ませることにより改良される。テレビスケジュールデータを送信する手段は、単一のシステム時間を送信する手段を含む。受信器は、単一のシステム時間を送信する手段を含む。メモリは、単一のシステム時間からローカルのリアルタイムを計算するために記憶された値を有する。本発明の更に別の特徴において、テレビスケジュール送信システムの方法は、リアルタイムに関連した単一のシステム時間を確立することを含む。単一のシステム時間は、加入者データ処理システムに送信される。単一のシステム時間で表されたテレビスケジュールデータが加入者データ処理システムに送信される。単一のシステム時間からローカルなリアルタイムを計算するための値が加入者データ処理システムに送られる。この値を用いて単一のシステム時間で表されたスケジュールデータからテレビスケジュールのためのローカルな時間が計算される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。複数の加入者データ処理システムの各々は、テレビスケジュールデータのための受信器を含む。テレビスケジュールデータを記憶するためのメモリが受信器に接続される。このシステムは、テレビスケジュールデータを、テレビスケジュールにおける毎日のショーリストとして送信するように構成されたテレビスケジュールデータの送信手段を有することにより改良される。加入者データ処理システムは、現在の時間から将来の時間へと延びる複数の日々より成るローリング窓としてショーリストを維持するように構成される。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、テレビスケジュール情報を、テレビスケジュールにおける毎日のショーリストとして送信することを含む。ショーリストは、現在の時間から将来の時間へと延びる複数の日々より成るローリング窓として維持される。本発明の更に別の特徴において、テレビスケジュール情報送信システムは、所定のテリトリーに対するテレビスケジュールデータを送信する手段を有する所定のテリトリーに対する中央データ処理システムと、所定のテリトリーにおける複数の加入者データ処理システムとを備えている。複数の加入者データ処理システムの各々は、テレビスケジュールデータのための受信器を含む。テレビスケジュールデータを記憶するためのメモリが受信器に接続される。このシステムは、テレビスケジュールデータを圧縮形態でメモリに記憶するように加入者データ処理システムを構成することにより改良される。データ処理システムのリードオンリメモリは、システムのための固定のテキストを記憶する。この固定のテキストは圧縮形態でリードオンリメモリに記憶される。本発明の更に別の特徴において、テレビスケジュール情報送信システムの方法は、テレビスケジュールデータを圧縮形態でシステムのメモリに記憶することを含む。システムの固定のテキストも、圧縮形態でリードオンリメモリに記憶される。本発明の上記目的及びそれに関連した目的、効果並びに特徴は、添付図面を参照した以下の詳細な説明から当業者に容易に明らかとなろう。添付図面、特に図1-4に、テレビジョンスケジュール情報送信及び利用システム50A-50Dを示す。システム50A-50Dは、TV信号内のビデオ消去間隔VBIを介して、種々のテレビジョンプログラム供給者プロバイダ51例えばPBS、MTV、またはショウタイムからTVスケジュールデータ及び関連ネットワーク制御メッセージをパケットとして送信する。このデータは、スターサイトStarSight加入者ユニット52によって取得され、内部データベースを構成するために使用される。この内部データベースには、ユーザのTVが受信するチャネルのためのTVスケジュールを表示するために加入者ユニット52がアクセスすることができる。ネットワークシステム50A-50Dへのアクセスは予約サービスを介しているから、非加入者のアクセスを防ぐために若干のメッセージは機密保護コンピュータ53によって暗号化されている。本質的に本発明にはどのような暗号化システムを使用しても差し支えないが、米国特許第4,531,020号及び第4,531,021号に開示されている暗号化システムが好ましい。パケットは、1つのパケットの頭を見出すために、誤り検出情報及びシステムオーバヘッドバイトを含んでいる。パケット内に組み込まれている情報を、メッセージという。メッセージは、1またはそれ以上のコマンドからなる。いろいろな型のコマンドが存在しており、各型は独自のコード番号によって区別される。コマンドは、TVスケジュールデータベース、タイムマーカ、及びユーザ承認情報を構成し、維持するのに必要な異なる型の情報を含んでいる。システム50A-50Dは、特別にフォーマットされたデータを、米国全土に位置する加入者52へ送り届けるデータネットワークである。このデータは、システム加入者が、彼らのTV画面上のテレビジョンプログラムリスティングを会話式に見ることができるようにするオンスクリーンプログラム案内を構成するのに使用される。このネットワークのための情報は、UNIX登録商標コンピュータ54上で走るコンピュータプログラムによって構成されたデータベースから導出される。このデータベースを構成するためには、ショウリストファイルShowlistfileと呼ばれるプログラムリスティングファイルをコンピュータ54に供給するデータ供給者DP56が必要である。テレビジョンプログラムスケジュールデータは、56に位置する販売会社によって生成され、簡単な互換フォーマットでスターサイトコンピュータセンタ54へ供給される。どの時間に、どのチャネルで、どのテレビジョンプログラムが放映されるかを指定する情報はエンコードされている。この情報は、10日間にわたって全国の全てのチャネルで受信され、処理される。TVスケジュールに何らかの変化があれば、それらはそれらが使用可能になると直ちに、及び要求があり次第送信される。以下に、ファイル内に含まれている特別な情報及びフィールドを説明する。ショウリストファイルは、標準のTCP/IPプログラム、FTP、または相互合意された他のファイル転送プロトコル標準を使用し、DPのイーサネット登録商標及びディジタルリースラインに接続されているルータを通してコンピュータ54内のファイルシステムへ電子的に転送される。これらのファイルは、転送されるデータの量が膨大であるために、コンピュータ54内のUNIX登録商標登録商標ファイルシステムと両立可能な、相互合意されたデータ圧縮アルゴリズムを使用して圧縮することを要求することができる。リースライン58の動作速度は、全てのデータファイルを合理的な時間長で転送するのに十分であろう。ファイルは、0800時PST太平洋標準時までに完了したファイル転送分が、毎日週7日コンピュータ54へ転送される。この毎日のファイル転送は、ファイル転送を遂行するのに使用されるログイン名に対応するホームディレクトリ内へなされよう。コンピュータ54への主ファイルダウンロードは、常に12日後のためのものである。即ち、もし今日が10日であれば、今日のデータのダウンロードは22日の0000GMTグリニッジ標準時に開始されるもののためである。データファイルは毎日送られるから、既に転送されているプログラムリスティングを更新できるようにするために、ある機構を所定の位置に配置しなければならない。これは、更新ファイルを介して達成される。更新ファイルは、最後の更新フィアル未だ活動である何れかのデータのためのデータの何らかを変更する以後になされた全ての変化の記録を含む。活動データとは、今日の日付で開始され、それに続く11日にわたる日付即ち、今日から、今日の主ファイルによってカバーされる日付までの全て、但しその日付を含まないと定義される。最後の分スケジュール変化は、何らかの変化のエントリの後の5分以内にフラッシュ更新ファイルを供給するフラッシュ更新を必要とし、これらのファイルはリースライン58を横切ってその日を通してコンピュータ54へトリクルする。TVスケジュール情報は、コンピュータ54によって処理され、マスタデータベースへ挿入される。このプロセス中、冗長情報は除去される。例えば、もしアイラブルーシーショウがスケジュール情報の10日間中に2回以上放映されれば、そのショウのタイトルのための文字列は、1回だけマスタデータベース内に格納される。各チャネル及び日毎に、その日の間にどのショウがどの時間に放映されたかを指定する情報が格納される。必ずしも必要ではないが、各ショウはショウタイトル及びショウ記述を含むことができる。マスタデータベースの目的は、全てのTVスケジュールデータを、そのデータへアクセスする標準化された方法で関係データベース内に格納することである。データは、データの検索を効率的ならしめるような手法で編成される。テレビジョンの視聴者は、視聴している位置において1組のテレビジョンビデオ信号を受信する。ケーブルテレビジョン供給者は、放送及び衛星プログラムチャネルを特定のチャネルに割当てる。全てのケーブル会社は、チャネルの独自割当てを有している。地理的な全ての位置は、その地方において受信することができる1組の放送チャネルを有している。加入者ユニットは、その加入者に関連するTVスケジュールデータを加入者に供給するために、プログラムチャネルのリスティングと、そのチャネル割当てとを有していなければならない。各組の独自のチャネル割当ては、受信グループに割当られている。各受信グループに関連付けられているのは、領域名、受信グループ型ケーブル、放送、衛星、この組のプログラムチャネルを受信することができる場所の郵便番号ジップコードの組、受信したプログラムチャネルのリスト、及びこれらのプログラムチャネルに関するチャネル割当てである。受信グループ及びプログラムチャネル情報をラインアップと呼ぶ。ラインアップ情報は、情報を集める商業会社、加入者、ケーブル会社、及び放送チャネル送信カバレッジの解析のような、多くの源から到来する。単一の源から入手したラインアップ情報は、正確であるとは見做されない。種々のプロセスを使用して複数の源からのデータを揃え、優れた質を有するデータベースを入手する。マスタデータベースが作成されると、それに対して他の全てのラインアップデータが比較される。修正が確認された時には、マスタデータベースに対する変更が行われる。1つのラインアップを別のラインアップへ結合するための一次キーは、それらのラインアップの郵便番号が同一であることを確認することである。郵便番号を確認すると、チャネル割当てがその領域内のケーブル会社または加入者への電話呼び出しによって比較され、確認される。TVスケジュールデータ及び受信グループデータがマスタデータベース内へ入力されると、コンピュータプログラムはこのデータを処理し、PBSデータネットワークを介して送信するのに適したデータストリームを放出する。このデータは圧縮されており、ステーションノード及び加入者52に最適であるように編成されている。出力データストリームの特定のフォーマットを以下に説明する。出力データストリームは、データの型によってグループ化され、順序付けられている。加入者ユニット内において使用する方法に起因して、データを特定の順序に順番付けることが適している。1.機密保護キーそのデータへのアクセスを、そのデータを受信することを承認されている加入者だけに制限するために、機密保護キーが必要である。データストリームの部分は、工業標準データ暗号化標準機密保護キーアルゴリズムを使用して暗号化されている。全ての所望加入者ユニットを承認し続け、キーを変化させるために、現在及び将来の機密保護キーを含む一連のメッセージが送信される。加入者ユニットの暗号キーの初期セットは、そのユニットがデータを集め始めることを承認するネットワークメッセージで送られる。この承認メッセージ内のこれらのキーは、個々の加入者ユニットに独自の1つのキーで暗号化されている。2.殆どのTVプログラムは、テーマカテゴリ及びサブカテゴリによって類別される。マスタデータベースは、そのTVプログラムが特定のジャンルに入っているか否かを表す、各カテゴリに1組の属性を含んでいる。ジャンル属性の独特な各組み合わせには、独特なテーマ識別が割当てられる。各ショウには、1組のジャンル属性に基づいてテーマ識別が割当てられる。テーマデータブロック内の各テーマ識別にテキスト記述を割当てるテーブルが送信される。3.夏時間変化夏時間が始まる時間、及び終わる時間を指定する日付が送信される。夏時間が始まる正確な時間、及び終わる正確な時間を指定するメッセージが、データネットワーク上に繰り返し送信される。加入者ユニット52は、このメッセージを受けてローカルタイムを調整し、夏時間の効果を補償する。4.受信グループデータ受信グループデータは、全ての独自受信グループについての必要チャネルラインアップデータを含む。このデータは、領域IDその受信グループに関連する独特な番号、領域型放送、ケーブル、衛星、チャネルID特定のチャネルに関連する独特な番号、及び同調チャネル番号そのチャネルを受信するためにTVを同調させなければならないチャネルを含む。どの特定の加入者ユニット52にも、承認プロセス中に受信グループが割当てられる。加入者ユニットは、それを承認した受信グループのためのデータだけを処理する。他の全ての受信グループデータは、その加入者ユニットによって無視される。5.チャネルデータどの受信グループ内の各チャネルリファレンスも、関連付けられたチャネルデータコマンドを有していなければならない。チャネルデータコマンドはそのチャネルに関する情報、即ち、本来のチャネル番号もしそれが放送チャネルであれば、そのチャネルに同調させるチャネル、ステーション呼び出し文字、ネットワークの所属ABC、NBC、CBS、及びそのチャネル名の略語を含んでいる。どの特定のチャネルのためのデータも、データサイクル当たり1回だけ送信される。6.ショウリストデータショウリストデータは、TVプログラムのリスト、及び特定のチャネルの持続時間及び日を含んでいる。コマンドは、チャネルID、第1のプログラムの開始時間、それ以後のプログラムのリスト、及びそれらの持続時間を含む。各ショウは、ショウID、及びオプショナルな記述IDを含む。ショウID及び記述IDは各々、そのショウのタイトルまたは記述のテキストに関連する独特な番号である。各ショウは、それがペイパービューpayperviewプログラムであるか否かを表すフラグをも含んでいる。7.ショウタイトルデータショウリスト内の全ての独特なショウタイトルリファレンスは、関連したショウタイトルコマンドを有している。ショウタイトルコマンドは、ショウID、テーマID、及びショウタイトルテキストを含んでいる。各独特なショウタイトルは、データストリーム内に1回だけ含まれ、加入者ユニット52によって多数回使用されることができる。ショウタイトル内のテキストは、ハフマン圧縮技術を使用して圧縮されている。8.ショウ記述データショウリスト内の全ての独特なショウ記述リファレンスは、関連したショウ記述コマンドを有している。ショウ記述コマンドは、ショウ記述ID、MPAAの評価、評論家の評価、及びショウ記述テキストを含んでいる。各独特なショウ記述は、データストリーム内に1回だけ含まれ、加入者ユニット52によって多数回使用されることができる。ショウ記述内のテキストは、ハフマン圧縮技術を使用して圧縮されている。9.ステーションノードデータメッセージ各PBSステーションノードはデータのブロックを受信し、それはそのステーションノードから再送信されよう。そのステーションノードによってサービスされる領域内の加入者ユニットによって要求されたデータだけが、そのステーションノードへ送られる。例えば、サンフランシスコ内のステーションノードは、サンフランシスコ領域内の加入者によって受信されるケーブルシステム及びTVステーションに関するデータだけを受信する。ロスアンジェルスのデータは、サンフランシスコのステーションノードによって受信されることはない。スターサイトシステムのための機密保護ソフトウェアの目的は、スターサイトデータストリームへ条件付きアクセスを提供することである。データの一部は暗号化されている。スケジュールデータへのアクセスは、加入者ユニット52がその暗号キーを知っていなければならないことから条件付きである。承認されているユニットだけが暗号キーを受信することができる。条件付きアクセスシステムは、3つのレベルの暗号を含んでいる。各ユニットは一番上部にRSA公開/私用キー対を有している。次に、256ユニットまでのバッチが、バッチキーと呼ばれるDESキーを共用する。一番下部において、プログラム案内は、承認された全てのユニットが共用するDESキープログラムキーと呼ばれるを用いて暗号化される。定期的に変更されるプログラムキーはバッチキーの下に分配され、バッチキーはRSAキーの下に分配されるので、3レベルの階層が得られることになる。以下のようにして、工場において、または後のメッセージ内の何れかで、さまざまなキーが分配される。RSA私用キー、並びにそのユニットを識別する一貫番号は工場においてプログラムされる。スターサイトは、対応するRSA公開キーのコピーを保持する。バッチキーは、そのユニットのRSA公開キーで暗号化されている承認メッセージ内に分配される。承認メッセージは、バッチ番号、そのバッチ内のユニット番号、サービス型フィールド、並びに現在及び次のプログラムキーをもユニットに与える。承認メッセージは、典型的にはスターサイトとそのフィールド内のユニットとの最初のインタラクションであるが、バッチを再割当てするために何時送っても差し支えない。キー分配メッセージは、バッチ内のユニット数に従って、あるユニットが未だ承認されているか否かをも表す。2つの機密保護システム機能は、承認及びキー分配メッセージを処理するためのものである。第3の機能は、暗号化されたテキストをプログラムキーの1つを用いて暗号解除することである。テキストはサイファーブロックチェニーングcipherblockchaining:CBCモードに暗号化されている。プログラムキーは定期的に変更され、キー分配メッセージを用いて分配される。もし加入者が承認解除されれば彼らは新しいキー分配メッセージを受信せず、従ってTVスケジュールデータを暗号解除することはできない。加入者ユニット52は、TVプログラムスケジュールデータを受信し、処理し、そして表示するように設計されているマイクロプロセッサをベースとするシステムである。加入者ユニット52ハードウェアは、マイクロプロセッサ、リードオンリーメモリ、ランダムアクセスメモリ、機密保護コプロセッサ、IRブラスタblasterコプロセッサ、オンスクリーン表示コプロセッサ、及び電力管理回路を含む。これらの構成要素はソフトウェアによって組合わされ、電子プログラム案内システムを実現している。1.オペレーティングシステム実行以下に説明するように、マイクロプロセッサは遂行すべき多くのタスクを有している。各タスクは実時間でサービスされなければならないが、必ずしも各タイムスライスに完了させる必要はない。この機能を遂行させるたにラウンドロビン実行が使用される。主ループが個々の各タスクを順次に呼び出す。呼び出されたタスクは、その現在の状態に基づいてその限定された機能を遂行する。これらのタスクは、予め定められた時間内に全タスクまたはサブタスクを完了することが要求される。このようにして、全てのタスクは、それらの限定されたタスクをある時間内に実行する機会を有している。最後のタスクがその機能を実行し終わると、最初のタスクが再度実行される。2.メモリ管理テレビジョンプログラムデータは動的であり、常に変化している。ショウリスト、ショウタイトル、及び記述は可変長であり、日毎に変化する。この理由から、データブロックを動的の割当て、回復することができるメモリ管理システムが配備されているのである。メモリは、等サイズの割当てブロックに分割されている。メモリブロックの集合のことを、プールという。プール内のメモリブロックを参照するハンドルテーブルが作成される。アプリケーションソフトウェアサブルーチンはエントリを作成し、メモリプール内の1またはそれ以上の割当てユニットをリファレンスするハンドルテーブル内に格納することによってメモリを割当てることができる。メモリは、ハンドルテーブル内のメモリリファレンスを解放することによって割当て解除することができる。プール内の単一のメモリブロックの長さを超えるメモリの連続ブロックを有するということが、アプリケーションの要求である。これは、必要な場合に複数の連続メモリを割当てることによって行われる。多くのメモリブロックが割当て解除された後、メモリプールは断片化される。連続していないいろいろなサイズのメモリのブロックが多数存在するようになろう。背景タスクの1つは、メモリプールを断片化させないことである。割当てられたメモリブロックを、考え得る最低のメモリ位置へ移動させる手順を走らせる。メモリのブロックが移動すると、そのメモリへのリファレンスがハンドルテーブル内で変化する。これにより、アプリケーションプログラムは未だにメモリブロックへのリファレンスを有している。各割当てユニットが移動するので、割当てられているブロックの間にあるどの割当て解除されたブロックもつぶれる。その結果、割当て解除された全てのメモリは、考え得る最高のメモリ位置にあり、全てのブロックが連続することになる。3.VBIデータ処理VBIデータはビデオストリームからデコードされ、8032マイクロプロセッサによって処理される。データを格納し、パケットをアセンブルするためにバッファが使用される。特別な同期文字シーケンスを検出するためにコンパレータが使用される。これらの文字が検出されると直ちにバッファはリセットされ、パケット見出しがアセンブルされる。もしパケット見出しの正しい循環冗長チェックCRCが検出されれば、パケットの残りの部分がアセンブルされる。完全なパケットがアセンブルされると、付加的なCRCが計算されてその完全なパケットが誤りなしに受信されたことを確かめる。これが確かめられると、パケットはばらばらにされ、個々のネットワークメッセージがコマンドプロセッサへ渡される。4.コマンドプロセッサコマンドプロセッサは、暗号化ビットがコマンド見出しの中でセットされているか否かを決定する。もしセットされていれば、データは機密保護モジュールへ渡される。そこで機密保護モジュールはデータを暗号解除し、コマンドプロセッサへ戻す。コマンドプロセッサは、コマンド機能に基づいて正しい処理モジュールへコマンドを送るディスパッチャとして機能する。5.データベース処理データベースプロセッサは、全てのTVスケジュール及びチャネルデータの格納及び検索に責任がある。データベースプロセッサはコマンドプロセッサからデータを受信し、そのデータをデータベース内へ格納する。アプリケーションプログラムに関するデータを検索するために、1組の機能呼び出しが使用される。データベースの編成を以下に説明する。6.機密保護処理機密保護プロセッサは2つの主要機能、即ち、キー管理及びデータ暗号解除を有している。正しい一貫番号またはバッチ番号を含むメッセージをコマンドプロセッサから受信すると、機密保護プロセッサはメッセージを受信してメッセージを暗号解除する。承認メッセージの場合には、データはRSA私用キーを使用して暗号解除される。バッチ番号、バッチキー、及び他の制御情報がデコードされ、将来の使用に備えて格納される。キー管理メッセージの場合には、データはバッチキーを使用して暗号解除され、情報は将来の使用に備えて格納される。プログラムキーはバッチキーの下に暗号化されて分配される。7.ユーザインタフェースユーザインタフェースは、その主入力として遠隔制御コマンドを受ける。ユーザは、遠隔コントロール上のボタンを押すことによって種々の機能を要求する。ユーザインタフェースはこれらのコマンドを受信し、要求された表示画面で応答する。更に、記録が始まる時、またはユニットがデータを集めることを試みると表示コマンドが非同期的に生成される。アプリケーションは20以上の異なる、独特な表示画面を有している。各表示画面は、特定の状態に関連付けられている。画面のデータ及びフォーマットは、先行画面、その日の時間、データベースの内容、及びどの遠隔制御ボタンが押されたかに依存する。画面の流れを限定するために安定状態が使用される。全ての限定された画面に対して、入口機能、出口機能、更新機能、及びキーハンドリング機能のアレイが存在する。入口機能は、ある状態に最初に入った時に呼び出され、必要な全てのデータが集められ、画面をフォーマットする。出口機能は、画面用のメモリ及びデータを解放する時に呼び出される。更新機能は毎分1回呼び出され、画面時刻を更新し、もし何れかのショウが終わるか、または何れかの記録が開始または完了すれば再び描かれる。特定の状態になると、テーブルは、遠隔コントロール上のキー毎の別のソフトウェア機能に対するリファレンスを含む。これらの機能は、関連遠隔コントロールが押されると実行される。ユーザインタフェースは、キーの押圧と同期して、またはそれに応答しての何れかで画面上に出現及び画面から消滅するポップアップウィンドウのアレイをも管理する。それぞれの画面優先順位即ち、画面上に一時に幾つかのポップアップがある時に、どれがそれらをカバーするかを限定する18以上のポップアップカテゴリが存在する。これらのポップアップは、カーソル、ショウ記述、誤りメッージ、求援メッセージ、またはより多くの情報に対する要求であることができる。各ポップアップカテゴリは、主画面状態のものと同じような、自分自身の入口、出口、更新及びキーハンドリングルーチンを有している。更に、ユーザインタフェースは、ユーザがプログラム案内とインタラクトしている間にデータベースをロック及びアンロックし、プログラムチャネルの選択及び順番を維持し、案内画面からチューナを制御し、データベース内のテーマ探索を遂行し、データ供給者チャネルから所定の時刻にスケジュールデータを自動的に集めるデーモンdemonを制御する責任を負っている。8.VCR記録記録管理者の目的は、記録要求のリストを維持し、次いで正しい時刻に正しいチャネル上に記録を開始させることである。ユーザインタフェースは3つの型の記録、即ち1回、毎週、及び毎日を限定する。ユーザは、彼/彼女が現在視聴しているショウを記録するか、または案内画面の1つから特定のタイトルを選択することができる。ユーザは、もしそのプログラムが1回、毎週、または毎日記録するものであれば、案内グリッド、チャネル、またはテーマの1つの上の特定のタイトルへカーソルを移動させ、記録ボタンを押す。ユーザが記録要求を確認すると、記録待ち行列内にエントリがなされる。記録待ち行列は、これらの各型の記録毎のエントリを含む。毎日記録の場合には、5つまでの個々のエントリが、作業記録待ち行列においてなされる。毎週及び1回の記録について単一のエントリがなされる。作業記録待ち行列は、ショウ開始時刻によって分類される来週に関して行われる全ての記録を表している。記録デーモンは、記録を開始すべき時刻か否かを決定する実時間実行から呼び出される。作業記録待ち行列の先頭のエントリが調べられ、その記録を開始させる時刻か否かが決定される。もしその時刻であれば、ソフトウェア機能が実行されて記録が開始される。記録が開始されると、記録デーモンは記録を終了させる時刻か否かを決定する。停止時刻に到達すると、ソフトウェア機能が実行されて記録を終了させる。VCR記録の開始及び停止は、ユーザの装置の構成に基づいて幾つかの方法で行われる。ケーブルコンバータが使用されていない場合には、記録の開始には以下の動作が遂行される。1.VCR電源を投入する。2.VCRを所望のチャネルに同調させる。3.VCRを記録モードにする。もし、ケーブルコンバータが使用されていれば、以下の動作が遂行される。1.VCR電源を投入する。2.VCRをチャネルに2、3または4に同調させる。3.ケーブルコンバータを所望チャネルに同調させる。4.VCRを記録モードにする。5.現在同調しているのはどのチャネルかをユーザインタフェースソフトウェアに告げる。記録を停止させるには、VCRを停止モードにし、次いで電源を切る。全ての場合これらのコマンドは、赤外線コマンドをデバイスへ送ることによって遂行される。記録デーモンの別の機能は週毎の待ち行列、及び日毎の記録要求を調べ、作業待ち行列内に新しいエントリを発生させることである。例えば、もし現在が月曜日の朝であり、午後のプログラムのために毎日の記録要求をエントリするものとすれば、作業待ち行列内には5つのエントリ、即ち、月曜日、火曜日、水曜日、木曜日、及び金曜日がなされる。月曜日の午後に最初の記録が完了すると、作業待ち行列内の月曜日に関するエントリが削除される。記録デーモンは記録待ち行列を調べ、作業待ち行列内に次の月曜日のための新しいエントリを追加する時点であることを発見する。このエントリは、作業待ち行列内の時間順格納位置に追加される。更に、デーモンは、途中で夏時間に変わる場合には、適切な開始時刻を維持する。即ち、デーモンは秋にはショウの開始時刻に1時間を追加し、春には1時間を差し引いて、ユーザの領域に適用される夏時間に備える。記録管理者は、記録の元の型に依存して別々に、または多様に削除を処理する。9.スクリーン上の表示スクリーン上の表示OnScreenDisplay:OSDは、いろいろな表示スクリーンを形成するテキストおよびグラフィック情報を表示するために用いられる。共通のインターフェースはいろいろな装置を制御するために用いられる。3つのことなる装置、ITTTPU2740,ITTCCD3005及びZilogZ89300を用いることができる。ユーザインターフェースはテキストを描き、打ち抜かれた長方形を描き、チャネルアイコンを描くため、及びディスプレイの属性をセットするために画定された機能のセットを有する。これらのコメントを特別な装置に対する正しい機能に翻訳するソフトウェア機能のセットが用いられる。加入者ユニット52の詳細が図5に示される。以下の記載はTV受信オンリーTVReceiveOnly:TVROシステム図4参照のための加入者ユニット52による。適切な変更をして、加入者ユニット52はケーブルシステムで用いるケーブルデコーダボックスにも組み込まれ得る。加入者ユニットはテレビジョン即ちVCRsに組み込まれるか、或いは分離したスタンドアロンユニットとして設けることができる。この記載はスターサイト放送TVRO加入者ユニット52の電子ハードウェアに対してである。TVROの顧客はテレビジョンを見るためのホームサテライトディッシュhomesatellitedishesを有する人々である。TVROはTVReceiveOnly:TV受信のみを表す。TVROの加入者ユニット52は顧客のTVサテライトシステムに中継し、顧客がスターサイト電子プログラムガイドサービスを受けることを可能にする。TVROの加入者ユニット52は、現存する顧客のTVRO設備に直列に据え付けられる完全な自己保持、分離ユニットである。加入者ユニットは、顧客のTVROからのベースバンドビデオを受信する。プログラム案内表示スクリーンは、加入者ユニットにおける顧客ビデオに融合される。顧客はベースバンドビデオアウト或いはチャネル3/4RFアウトを有している。加入者ユニットはTVスクリーン上に重ねられたTVプログラムスケジュール情報をリアルタイムで構成し、表示する。TVスケジュール情報は従来のTV放送の垂直帰線期間ラインVerticlBlankingInterval:VBIの1つに送信される。加入者ユニットはこの情報をボードメモリ上の局所に記憶する。この情報は、加入者が遠隔制御上のボタンを押すと、TVスクリーン上のグリッドガイドの形状で表示される。加入者ユニット52は以下のサブセクションから成る。高価な8ビットマイクロプロセッサ10064KバイトコードのROM101プログラムデータ記憶のための512KのRAM102顧客ゲートアレイ103速いメモリデータマニュピュレーションのためのセグメント化ベースレジスタ104入来する暗号化されたデータをデコードするための安全ロジック106表示制御インターフェースのためのシリアルI.Mバス108内部プロセッサ通信のためのシリアルスターサイトバス110ISBエラー回復のための監視タイマー112IR入力113赤外線受信回路114TV,VCR制御のための赤外線送信回路116IR出力117CRC-32エンコードおよびデコードロジック118ボード上の電源120パワーダウンRAMデータ保持ビデオ入力123スクリーン上の表示制御およびホーマッター124オーバーレイ表示のための顧客カラー変換器126RFモジュレータ127ベースバンドのビデオ、又はRF出力128或いは130の選択TVRO加入者ユニット52の心臓部は8032,8ビットマイクロプロセッサ100である。このマイクロプロセッサは加入者ユニットの全てのセクションを制御する。このプロセッサの短い記述は参考のために与えられる。更に詳細には、インテルあるいはシグネティックスSigneticsからの8032データブックを参照されたい。この8032は8ビットのデータバスと16ビットのアドレスバスを有する。アドレスバスの上位の8ビットは常に有り、アドレスバスの下位の8ビットはデータバスと共に時間多重化され、外部のアドレスラッチはこのバスをデマルチプレックスde-multiplex:多重化が戻されるされる。このラッチはDBE1200ゲートアレイ103の内部に位置される。8032は2つのアドレス空間、即ち、デコード空間とデータ空間を有する。データ空間は更にRAMメモリとI/O領域に分割される。デコードはプログラムROMへの全てのアクセスを参照する。プログラムデコード空間は64Kバイトの長さであり、8032はこの空間からの読み取りだけをすることができる。全てのコードアクセスはPSINProgramStoreENableラインを用いる。-WRおよび-RDラインはコードアクセス中に表明しない。ALEはアドレスバスをデマルチプレックスするために用いられる。ALEのフォーリングエッジはアドレスの下部の8ビットをラッチする。-PSENはROM読み取りを開始するために表明する。現在のデザインは接地に常に接続されるEPROM-CSラインを有している。これは、EPROのOEACCESS時間をROM読み取りのための決められた空間にする。今日の標準によって、このマイクロプロセッサのバスタイミングは非常に遅く、これは高価なROMsの使用によって可能である。データは外部のRAM102への全てのアクセスを参照する。特別の追加のハードウェアは、データ領域が64Kアドレス限界を過ぎて広がるようにTVRO加入者に追加される。区分しているベースレジスターを介してなされ、そして後で説明される。8032-RDストローブはRAMデータ読み取りに対して表明し、-WRストローブはRAMデータ書き込みに対して表明するであろう。PSENはデータアクセス中に表明しない。RAMデータアクセスはMOVX命令によって生じることができるだけである。他の8032命令は-RD或いは-WRを表明するようにしない。再びALEはアドレスをラッチするために用いられ、-RD或いは-WRがデータ転送を開始するように表明する。読み取りデータは-RDを無効にする直前まで有効でなければならない。書き込みデータは-WRが表明される全時間有効である。RAMデータ空間と共に、64KI/O空間もある。このI/O空間はデータRAMと同じ第1の64Kセグメントを占有する。どの領域が表明されるかを決定するために用いられるDRAM_ENABLEと呼ばれる信号がある。I/O空間はシステム制御レジスタが何処に位置されるかである。18の書き込みレジスタと13の読み取りレジスタがある。これらのレジスタは、加入者ユニットにおけるいろいろなサブシステムを制御するために用いられる。クロック周波数の選択、シリアルバス制御、I.R.状態および制御等は、このレジスタセットによって全て制御される。周辺チップに配置される他の制御レジスタがある。8032は通信をするために2つのシリアルバスを用い、これらの周辺チップを制御する。IMバス108はトランズアクション処理ユニットTPU2740124と会話するために用いられる3つのワイヤーシリアルバスである。TPU2740は入来VBIデータを集め、いろいろなスターサイトオーバーレイスクリーンをフォーマットし、表示する。ソフトウェアシリアルバス110は安全マイクロプロセッサ106及びIRブラスタチップIRBlasterChip116とも会話するために用いられる。これは唯一のシリアルタイミングプロトコルを備えた2線バスである。8032アドレス空間の第1の64Kは3つの離れたオーバーラッピング機能を有する。1.もし-PSENが表明されるなら、デコードROMがアクセスされる。2.もしDRAM_ENABLE=論理0であれば、I/Oレジスタはアクセスされる。3.もしDRAM_ENABLE=論理1であれば、RAMの最初の64Kがアクセスされる。64K以上の領域は常にRAMであり、全長は512Kバイトである。8032信号の概要テーブル1は8032マイクロプロセッサの入力および出力信号を要約する。テーブルIベースレジスタ記述8032データアドレス空間は64Kバイトのだけの長さである。しかし、TVRO加入者ユニットはTVプログラムデータの64Kバイトより多くを蓄積する必要がある。読み取りおよび書き込みベースレジスタは8032が64Kの限界以上の追加のメモリをアクセスすることを可能にする。8032は、データポインターレジスタDataPointerRegisteDPRと呼ばれる内部の16ビットレジスタを用いて、外部データ位置のアドレスをホールドする。ベースレジスタDBE1200ゲートアレイに位置されるは実際のRAMアドレスを形成するためにデータポインター値に加えられる他の16ビット値をホールドする。ベースレジスタの内容は、RAMアドレスが20ビットの長さになるように、データポインターに関して4ビット左へシフトされる。20ビットは1メガバイトのトータルデータRAMサイズに対して可能にする。8032はベースレジスタに書き込まれたアドレスで開始するあらゆる外部RAMの64Kバイトのチャンクchunkをアクセスすることができる。ベースレジスタは4ビット左へシフトされるので、8032は偶数の16バイト境界上でスタートするあらゆる64Kバイトセグメントをアクセスすることができる。メモリブロック移動が素早く行われるように2つのベースレジスタがある。もしDPTRの値が各読み取りに対して変更され、ブロックが移動する間の書き込み前に再び変更されなければならなかったなら、それはソフトウェアに非常に遅く、厄介である。2重のベースレジスタは、読み取りソースブロックの開始アドレスを読み取りベースレジスタへ、且つ書き込み宛て先ブロックの開始アドレスを書き込みベースアドレスへ入れることを可能にする。同じDPTRアドレスへの書き込みによって後に続く読み取りをするソフトウェアループが書き込まれる。これはソフトウェアが外部のRAMにある如何なる場所のデータのブロックを素早く移動する。一つの設備がベースレジスタを素早くディスエーブルするために追加されることもできる。信号ENABLE_BASEは双方のベースレジスタの出力を強制的に全て0にする。これはベースレジスタの内容を変えることなく行われる。この特徴は、RAMの最初の64Kセグメントをアクセスする素早い方法を提供する。双方のRAM読み取りと書き込みは同じ位置に行く。プロセッサ関連データは最初の64Kセグメントレジスタイメージ、ソフトウェアカウンター値、システムパラメータ等に記憶される。上位のセグメントはTVプログラム情報を記憶するために用いられる。以下のテーブルIIは、DPTRが20ビットRAMアドレスを形成するためにベースレジスタにどのように追加されるかを示ことを試みている。注:アドレスバスに関して4ビット左へシフトされたベースレジスタBaseReg.15141312111098765432108032Addr.1514131211109876543210=20bitAddr.191817161514131211109876543210DRAM_ENは外部メモリ領域をアクセスするために1でなければならない。テーブルII例として:読み取りベースレジスタは0001Hexにセットされる。書き込みベースレジスタは1080Hexにセットされる。データポインタDPTRは382AHexにセットされる。8032読み取りMOVXA,DPTRはアドレス0383AHexをアクセスする注:20ビット。8032書き込みMOVXA,DPTRはアドレス1403AHexをアクセスする注:20ビット。DRAM_ENはI/O領域をアクセスするために0でなければならない。データRAM記述前述のように、データRAM102はTVプログラム案内情報を記憶する。このRAMは、3つのサイズ、128K、256K、或いは512Kバイトで現在利用可能である。データRAMはPSRAMチップを用いる。PSはPseudoStatic疑似スタティックを表す。PSRAMはスタティックRAMピンアウトでパッケージされている標準DRAMである。予備ロジックはDRAMリフレッシュが単純化されるように追加される。これらのPSRAMsはまた3ボルト下げて動作するパワーダウンデータ保持の特徴も有する。この製品に、PSRAM動作の4つのモードがある。それらは、1.シーケンスアップモード2.通常のデータ転送モード3.シーケンスダウンモード4.パワーダウンデータ保持モードである。これら2つのパーツは幾らかことなるピンアウトを有し、幾らかことなる方法で動作する。回路がこれらの相違に対して補償するために追加される。どのチップが用いられるかに依存してソフトウェアによってセットされなければならない1ビット呼出し512KRAMがある。PSRAMsはパワーオンの後シーケンスアップを行い、パワーオフの直前にシーケンスダウンを行う。PSRAM動作シーケンスアップ動作最初のパワーアップの後、PSRAMsは、あらゆる読み取りと書き込みが行われる前に、シーケンスアップされなければならない。シーケンスアップの手順は、128Kと512Kパーツに対して幾らか相違する。この手順は、PSRAMsがパワーダウンデータ保持モードであるとき、SPRAMのロジックおよびタイミングの仕様が維持されることを確実にするために追加される。システムパワーが失われると、PSRAMsがパワーアップされるように大きなキャパシタ或いはバッテリーを用いる設備がある。パワーがオフであるとき、PSRAMデータを保つために、いくつかのPSRAM入力は既知の論理状態に保持されなければならない。これに加えて、これらのピンが既知の論理状態にされると、それらは定められたタイミングの制約に従わなければならない。これらのピンおよび論理レベルは128Kおよび512Kパーツに対して異なっている。128Kパーツに対して:Chip_Enable2Pin30および-REFRESHピン1は、パワーがデータ保持を確実にするために移動されると、双方論理0に保持される。データ保持モードから通常の動作に行くと、-Chip_EnablePin30がハイHighになる前に、-REFRESHPin1は少なくとも225nSでハイにならなければならない。512Kパーツに対して:-Chip_EnablePin22は論理1に保持されなければならず、-OE/-REFRESHPin24は、パワーがデータ保持を確実にするために移動されると、論理0に保持されなければならない。データ保持から通常動作にいくと、-OE/-REFRESHPin24がハイになる前に少なくとも50nSでハイに行かなければならない。通常のPSRAMREFRESH後如何に直ぐ上記のシーケンスが生じることができるかについてのタイミング制約もある。DBE1200ゲートアレイにおけるシーケンスアップロジックが上記のタイミングを制御する。パワーオンリセットPawerOnResetPORシーケンスが終わった後、マイクロプロセッサはビット呼出しSEQUENCE_UP[WrAddr7400Hex,bit5]このビットを論理0に常に戻すことを確実にするをトグルする。SEQUENCE_UPビットをトグルすることはシーケンスアップ状態マシンをスタートする。この状態マシンは次の通常のリフレッシュパルスの終わりを待ち、上述のように、それは正しいタイミングを用いて強制された論理レベルに移るであろう。リフレッシュパルスはおよそ11μS毎に生じ、シーケンスアッププロセスがおよそ1μSかかる。ソフトウェアは、最初のPSRAMアクセスが試みられるときまでSEQUENCE_UPがセットされる時間から少なくとも151μS待つ必要がある。PSRAM動作通常の動作通常のPSRAM動作は非常に直線的に行く。リフレッシュは自動的であり、マイクロプロセッサに透過的である。PSRAMは15μS毎に少なくとも1回リフレッシュされなければならない。リフレッシュアドレスはPSRAM内で発生され、ユーザーに透過的である。リフレッシュをするために、PSRAM上のリフレッシュピンは最小時間ローに保持されなければならない。回路設計を容易にするために、リフレッシュ要求は256によって割算された内部クロックによって発生される24MHzクロックで、これはおよそ10.7μSに起きる。PSRAMチップへのリフレッシュパルスは、PSRAM読み取り或いは書き込みと同じ時間に発生してはならない。リフレッシュ要求およびあらゆるPSRAMアクセスは非同期であるので、-PSENラインはリフレッシュをスタートするために用いられる。リフレッシュ要求が検出されると、リフレッシュ回路は、次の-PSENは、フォーリングエッジ立ち下がりの端まで待つ。-PSENはROMへのコードアクセスの始めで立ち下がる。ROMへのコードアクセスは、8032がOPコードをフェッチするにしたがって、あらゆる時間に起きる。この時間の間、8032がPSRAMへアクセスすることは不可能である。リフレッシュは非常に早く、-PSENコードのフェッチが完了する前に終了するであろう。注意:このシステムは、PSRAMをリフレッシュするために-PSENトグリングを有する。通常の動作において、これはあらゆる時間に起きる。もし、あなたが8032エミュレータを使用するならば注意されたい。もし、あなたがエミュレータを壊し、停止するならば、リフレッシュは停止する。殆どのエミュレータは、オプションを有し、その破壊点が生じるとときでさえ、-PSENはまだ表明することを確実にする。PSRAMオペレーションシーケンスダウンオペレーションシーケンスダウンは、シーケンスアップの反対である。このシステムは、電源電圧が降下し始める前に8032に割り込むであろう初期警告パワー故障検出器EarlyWarningPowerFailDetectorを有している。8032は、いずれかのクリティカルPSRAMデータをセーブし、その後、SEQUENCE_DOWNビットを主張することによって、この割り込みに応答する。シーケンスダウンは、PSRAMクリティカル入力を強制的にそれらの正しい状態とし、そのようにして、タイミング仕様が維持されることを確実にするだろう。シーケンスダウンロジックは、適当なタイミングを確実なものとするため、次のリフレッシュの終了までは開始しないだろう。SEQUENCEDOWNルールが以下に示されている。128K部分に関してチップ_イネーブル2ピン30は、-REFRESHピン1が強制的に論理0にされる前の少なくとも60n秒で論理0に向かわなければならない。ゲートアレイ出力は定義されないだろうから、パワーが消滅した後、外部素子はこれらのラインを論理0に保持すべきである。512K部分に関して-チップ_イネーブルピン22は、-OE/-REFRESHピン24が強制的に論理0にされる前の少なくとも50nSで強制的に論理1にされなければならない。PSRAMオペレーションパワーダウンデータ保有クリティカル入力ピンがそれらのパワーダウンレベル上を参照のことに保持され、且つ、PSRAMチップに対する電圧が3.0ボルト以上のままである限り、データは保有されるだろう。PSRAMパワーダウンラッチPSRAMに電力を与える同一のバックアップキャパシタによって、電力を与えられるような、非常に低い電流J-Kフリップフロップが存在する。このフリップフロップは、パワーオフ期間の間に電圧が最小の電圧仕様以下に降下したかどうかをソフトウェアに知らせる。初期のパワーオン時に、このラッチは、論理0にパワーアップすべきである。マイクロプロセッサは、RAMV_OKライン上でこのラッチの状態を読むことができる。ラッチが0の場合、電圧がPSRAM最小データ保有仕様以下に降下し、且つ、全てのRAMデータが有効でないことを、それは確実にされるべきである。ラッチが1の場合、データはパワーダウンの前からいまだに有効である。RAMV_OKが論理0の場合、マイクロプロセッサは、自己試験診断が通過した後に、それを論理1に設定することができる。一旦このラッチが論理1に設定されると、PSRAMVdd電圧が約3.1ボルト以下に降下するまで、それは設定されたままであろう。このラッチを設定するために5つの状態が必要である。1.PSRAM電圧は3.1ボルトより大きくなければならないこれはJ-Kフリップフロップリセットピンを解放する。2.PCB5ボルト電源は、約4.5ボルトより大きくなければならないこれはシステムPORを解放する3.-ENBLATラインは論理0に設定されなければならない。4.BAND0ラインは論理1に設定されなければならない。5.LAT_CLKラインは論理0に、その後、論理1に、トグルされなければならない。-ENBLATとLAT_CLKラインは、8032マイクロプロセッサPORTピンによって駆動される。これらのピンは、8032ハードウェアによってPORタイムに初期化されるであろう。BAND0ラインは、DBE1200ゲートアレイから来るものであり、PORタイムにおいて論理0にリセットされる。これら全ての状態を要求することにより、パワーアップ時にスプリアスノイズグリッチによってラッチが設定され得ないであろうことが望まれる。もしラッチが論理1を読出し場合には、データが有効であることをPSRAM中のチェックサムロケーションに証明させることも悪い考え方ではないだろうちょうどこの場合は、ラッチは、ノイズグリッチによって設定され得る。ラッチ回路のためにMC14xxシリーズCMOSデバイスが選択されている。なぜなら、この系統のものは、非常に低い最悪の電流ドレインを保証するものだからである。DBE1200GATEARRAY103ゲートアレイ103は、84ピンPLCCパッケージ内で1まとめにされている。ゲートアレイの学術用語は、PCBの学術用語とは僅かに異なる。PCBは、アクティブハイを表示するため、信号名の前にを使用する。ゲートアレイは、信号がアクティブハイのときは、を落として信号名だけを使用する。PCBは、アクティブローを表示するため、信号名の前に-を使用する。ゲートアレイは、信号がアクティブローのときには、信号名の前に文字Xを付加する。アドレスとビットに関して以下の省略形を使用する。6000W.5=アドレス6000hexに書込み,ビット56C00R.3=アドレス6C00hexを読出し,ビット3ADDRESSDECODINGアドレスデコーダが添付書類Aの1~9ページ目に示されている。8デコードの74F138型が、イネーブルのために用いられる8032-RD、若しくは、-WRストローブと共に使用される。74F138の出力は、適当なアドレスが書き込まれ、若しくは、読み出されたときにのみ有効であろう。以下の表は、デコードされる書込み及び読出しアドレスを示している。ページ数は、レジスタをその上で見つけることができる添付書類Aのゲートアレイ構成図のページを表している。ゲートアレイ名は、構成図上のデコード信号の名前である。以下の表IIIは、I/O書込みレジスタデコードを示し、表IVは、I/O読出しレジスタデコードを示す。プラスDRAM_ENは、これらのレジスタにアクセスするためには0でなければならない。表IV8032I/OREADREGISTERSPSRAMCONTROLPSRAM制御ロジックが添付書類Aの2ページ目に示されている。このロジックは、チップが存在するモードに依存して制御信号をそれらの適当なピンへ向けるような複数の簡単なゲートから成っている。このチップは2つのメモリサイズモード、即ち、128Kと512K、を有する。また、シーケンスアップモードとシーケンスダウンモードが存在する。PSRAMCONTROLSIGNALSXRFSH_18-ReFreSH、若しくは、アドレス_ビット_18これは、PSRAMチップのピン1に結合されるべき二重目的信号である。シーケンスアップがなされたとき、この信号はモードに依存する。128Kモードでは、-REFRESH信号がこのピンへ向けられる。512Kモードでは、アドレスMuxからのビット18がこのピンへ向けられる。シーケンスダウンがなされたとき、この信号は強制的に論理0にされる。XRAM_OE0-RAM出力イネーブル0これは、より低いPSRAMチップのピン24と結合されるべき二重目的信号である。シーケンスアップがなされたとき、この信号はモードに依存する。128Kモードでは、これは、より低い128KPSRAMチップのためのPSRAM読出し出力イネーブルラインである。このラインは、アドレスがより低い128Kに対するものであり、且つ、8032-RDラインを主張assertする場合にのみ、アクティブローを主張することができる。512Kモードでは、これは、PSRAM読出し出力イネーブルとリフレッシュ入力である。この信号がそれ自体主張した場合には、リフレッシュが起こる。それが-チップセンタクピンと共に主張した場合には、PSRAM読出しが発生する。シーケンスダウンがなされたとき、この信号は強制的に論理0にされる。XRAM_WE0-RAM書込イネーブル0この信号は、低いオーダのPSRAMチップのピン29に結合すべきである。PSRAM書込みは、この信号が有効チップ選定と共に主張したときに、なされるだろう。シーケンスアップがなされたとき、この信号は、双方のモードにおいて、PSRAMに対する書込みイネーブルである。シーケンスダウンがなされたとき、この信号はドントケアである。XRAM_OE1-RAM出力イネーブル1これは、上部のPSRAMチップのピン24に結合されるべき二重目的信号である。シーケンスアップがなされたとき、この信号は、128Kモードでは、上部のPSRAMチップからの読出しのための出力イネーブル制御である。この信号は、512Kモードでは使用されない。なぜなら、上部のチップがインストールされていないからである。シーケンスダウンがなされたとき、この信号はドントケアである。XRAM_WEI-RAM書込みイネーブル1この信号は、高いオーダのPSRAMチップのピン29に結合すべきである。PSRAM書込みは、この信号が有効チップ選択と共に主張したときに、なされるだろう。シーケンスアップがなされたとき、この信号は、128Kモードでは、上部のPSRAMに対する書込みイネーブルである。注意:電流設計は512Kモードでは上部チップを使用しないシーケンスダウンがなされたとき、この信号はドントケアである。XCE1-チップイネーブル1これは、PSRAMチップのピン22に結合されるべき二重目的信号である。シーケンスアップがなされたとき、この信号によって、PSRAMチップは、双方のモードにおいて読出し及び書込みを行うことができる。シーケンスダウンがなされたとき、この信号は強制的に論理1にされる。512KPSRAMチップは、このラインがパワーダウンデータ保有モードの間に強制的に論理1にされるよう要求する。このラインは128KPSRAM上ではドントケアである。CE2_A17チップイネーブル2、若しくは、アドレスビット17これは、PSRAMチップのピン30に結合されるべき二重目的信号である。シーケンスアップがなされたとき、この信号はモードに依存する。128Kモードでは、この信号は、チップイネーブルと結合され、それは常に論理1である。512Kモードでは、アドレスMuxからのビット17はこのピンに向けられる。XWRSTROB-WRiteSTROBe書込みの間、これは8032書込みストローブのより短いバージョンである。XWRSTROBは、PSRAMSへ書込みを行うために使用されるタイミング信号である。データは、XWRSTROBの立上がりエッジにおいてPSRAMへ書き込まれる。この立上がりエッジは、8032-WRの立上がりエッジの前にヒットして、いずれかのPSRAMデータ保持時間が満足されることを確実なものとする。BASEREGISTERSANDADDRESSMULTIPLEXER添付書類Aのゲートアレイ構成図の3、4ページ目は、ベースレジスタとPSRAMアドレスマルチプレクサを示す。ベースレジスタの機能の記述に関する上を参照のこと。この部分は回路を処理する。このベースレジスタは、2ページ目の左側に示されている。これらのレジスタの出力は、加算器中に進む前にANDゲートを通過する。このANDゲートによって、ベースレジスタ出力は、アドレス入力において素早く強制的に全て0とすることができる。加算器の出力は、MUX上へ送り込まれる。このMUXは、READADDRESの結果を、ほとんどの場合は故障によって、PSRAMアドレスピン上に位置づける。-WRストローブが主張するまでは、8032が書込みを行おうとしていることを知る方法はない。-WRが主張したとき、フリップフロップは、MUXを、WRITEADDERの出力上へ切り換える。読出し加算器は故障値に対して選択されている。なぜなら、RAM読出しには書込みよりも多少長い時間がかかるからである。二重加算器は、-WRストローブが主張されるとすぐに書込みアドレスが安定するように設けられている。I.R.RECEIVECIRCUITI.R.レシーブ回路は、リモート上のボタンが解放されているか、若しくは、それが連続的に下に保持されているかどうかに依存して、様々な動作モードを有する。この回路は、添付書類Aの5ページ目にある。有効なコードがI.R.RECEIVEDATAREGISTER0800R中にクロックされたとき、IRR_VALIRレシーブ有効ビットとVALTIRDVALidTILRDビットが設定される。IRR_VALビットは、リモートボタンが解放されるまで設定されたままであろう。VALTILRDbittoをクリアするための2つの方法が存在する。1.I.R.RECEIVEDATAREGISTERの読出しがVALTILRDをクリアする。2.リモートボタンが解放され、その後再び押された場合、VALTILRDは、ボタンが再び押されたときにクリアされる。IRR_NCI.R.RECEIVERNOCHANGEは、I.R.RECEIVEDATAREGISTERが読み出されたことを最初に設定するだろう。それは、リモートボタンが解放されるまで設定されたままだろう。IRR_RDYは、リモートボタンが押されるとすぐにハイ状態に進み、解放されるまで設定された状態とされる。SECURITYCLOCKGENERATORセキュリティクロックジェネレータは、添付書類Aの9ページ目の中段より下にある。これはモトローラセキュリティチップに対するプログラマブルクロックジェネレータである。このクロックに対するもともとの仕様は5MHzであった。発信周波数を変更することを可能ならしめるため、このクロックはプログラム可能とされている。このクロック間隔の高時間と低時間の双方を、I/Oアドレス3C00hexへの書込みによって、独立してプログラムすることができる。高時間は上部ニブルを用いて設定され、一方、より低いニブルは低時間を設定する。この時間は、入力発信周波数の倍数である。この回路は、プログラムニブルを74F169タイプのカウンタ中にロードすることによって働く。これらのカウンタは、ダウンカウンタとして設定され、それらの中の1つだけがいずれかのときにディクリメントする。1つのカウンタが0に到達したとき、出力はトグルし、カウンタは、再ロードし、その後、もう一方のカウンタがディクリメントするだろう。プログラムレジスタの出力におけるインバータは、初期値をdivide-by-7に設定する。I.M.SERIALBUSCIRCUITI.M.バスは、TPU2740チップへの送信のために使用される。I.M.バス回路が図に示されている。このバスを詳細に説明するためにI.M.バス仕様を参照する。概略的には、I.M.バスは、3つの書込みシリアル通信バスである。3つのラインは、I.M._CLOCK、I.M._DATA、および、I.M._IDENTIFYと呼ばれる。DBE1200ゲートアレイは、常に、I.M.バスマスターであり、それ故、常に、I.M._CLOCKラインを駆動する。I.M._DATAラインは、両方向性データライン外部プルアップレジスタを有したオープンドレインである。I.M._IDENTIFYラインは、I.M.アドレスを識別し、また、転送を終了させるために使用される出力である。IMBUSWRITEは、8032からIMスレーブへの転送である。IMBUSREADは、IMスレーブデバイスから8032中へのものである。I.M.バス転送は、常に、1バイトアドレスで開始され、その後、1若しくは2バイトのデータとなる。IIBYTE3000W.0と呼ばれるビットは、幾つのデータバイトを転送するかを決定する。WXR_BIT3000W.1と呼ばれる他のビットは、その転送が読出しであるのか、書込みであるのかを決定する。添付書類Aの11ページ目は、I.M.カウンタと制御ロジックを示し、12ページ目は、I.M.データシフトレジスタを示す。I.M.CIRCUITOVERVIEWI.M.回路は、制御およびデータレジスタを介して作動される。ここに概略を述べる。I.M.BUSADDRESSREGISTER2000W12ページXL_IM_AD。8032は、通信がそこと確立されるべきスレーブデバイスの8ビットアドレスを書き込む。このアドレスは、図の74HCT273にラッチされ、転送が開始したときにシフトレジスタへ転送される。もし同じアドレスが2つの連続するI.M.転送上でアクセスされた場合には、このレジスタを再ロードする必要はない。このレジスタに書き込まれるバイトは、常に、全てのI.M.転送のためにゲートアレイから書き込まれる最初のバイトであろう。I.M.WRITEDATA1REGISTER2400W12ページXL_IM_D1。このレジスタに含まれるバイトは、I.M.書込みの間にI.M.バス上にシフトアウトされた第2のバイトである。このレジスタは各転送の後に再ロードされなければならない。I.M.WRITEDATA2REGISTER2800W12ページXL_IM_D2。このレジスタに含まれるバイトは、I.M書込みの間、しかしながら、転送長が2バイトに設定された場合にのみ、シフトアウトされた第3のバイトである。このレジスタは、各転送の後に再ロードされなければならない。I.M.READDATABYTE11000R12ページXRD_BYT1。読出し転送の後に、このレジスタは、入力データバイトを含む。それが1バイト読出し転送である場合には、データはこのレジスタに存在するだろう。それが2バイト読出し転送である場合には、受け取られた第2のバイトがこのレジスタに存在するだろう。I.M.READDATABYTE21400R12ページXRD_BYT2。2バイト読出し転送の後、このレジスタは、第1の入力データバイトを含む。1バイト読出し転送の間、出力アドレスは、このレジスタでラップバックwrapbackし、且つ、終了する。このラップ特性は、エラーチェックや診断のために使用され得る。I.M.BUSCONTROLREGISTER3000W9ページXIM_CTRL。このレジスタのビット1は、転送が読出しであるか若しくは書込みであるかどうかを決定する。このレジスタのビット0は、1、若しくは、2データバイトが転送されるのかを決定する。I.M.BUSSTARTTRANSFERREGISTER2C00W11ページXSTRT_IM。このレジスタへのいずれかの値の書込みが、I.M.バスハードウェアを開始するだろう。I.M.BUSSTATUSREGISTER1800R6ページ目XSW_LO。このレジスタのビット7は、IM_BUSYラインを含む。このラインは、I.M.転送の間中ハイである。I.M.回路動作ページ11のロジックがI.M.バス転送を制御する。I.M.クロックIM_P_CKおよび8032入力オシレータがいずれも24MHzから得られる。8032は入力オシレータに対して任意のタイミングを特定せず、特定されるタイミングは12MHz入力クロックに対して非常にルーズである。この理由は、8032およびIM_P_CKからのスタート転送パルスは非同期であると仮定されなければならないからである。図の左下にある第1の3つのフリップフロップは、これらの信号を再同期化してI.M.バス転送を開始するために使用される。転送が開始された後、ページ11の74F269カウンタはゼロからカウントアップし始めるだろう。EN_IMCKラインはIM_P_CKがI.M.バスクロックピン14へゲートアウトするのを可能にする。第1の8つのクロックはアドレスをクロックアウトし、I.M._IDENTIFYラインはこの時間の間にアサートするであろう。カウンタが8のカウントに到達すると、I.M._IDENTIFYラインは無効になるであろう。I.M._WRITEが進行中であれば、I.M._DATEラインは転送の残りの部分について出力となり続けるであろう。I.M._READEが進行中であれば、I.M._DATEラインは第8カウント後に出力から入力へ切り換わるであろう。11BYTE3C00W.0ビットの状態に依存するカウント16または24の後、転送が中断するであろう。すべてのクロックが完了した後、I.M._IDENTIFYラインは、転送の完了を示すためにもう一度しばらくの間、低パルス状態になる。この全時間の間に、IM_BUSYビットはアサートされてステータスとして8032で利用できる。IM_P_CLKは24MHzオシレータを32で分割することにより生成される。これは、およそ1.3μS毎にクロックエッジを発生する。全クロック転送に32μSかかる。ウォッチドッグタイマウォッチドッグタイマは、付録Aのゲートアレイ回路図のページ13にある。このタイマは、EN_WDOG3000W.7.でオンオフできる。ウォッチドッグタイマはアドレス6400Wに書き込むことにより通常の動作でリセットされる。このアドレスに書き込まれたデータはdontcareである。ウォッチドッグタイマは16ビットの長さであり、OSC_256クロックによりクロックされる。このタイマはゲートアレイベンダにより与えられる同期カウンタクロック1_SCBRから作られる。ウォッチドッグタイマはゼロからスタートしてカウントアップする。オーバフローが可能ならば、8032へのリセットラインがアサートするであろう。ゲートアレイへのリセットラインにおけるパワーもまたアサートするであろう。ゲートアレイPOR内部リセットがアサートする前に、8032リセットラインは約256クロックアサートするであろう。8032は、適当にリセットするためにリセットラインがアサートされている間に固定数のクロックが与えられることを要求する。注:ゲートアレイ内部PORラインは、ページ9のOSCディバイダクロックとページ12のIM読み出しデータレジスタを除き、チップを既知の状態に完全にリセットする。CRC32多項回路CRC32多項回路はゲートアレイ回路図のページ15~18にある。この回路はCRC32多項回路をチェックするかまたは発生するために使用される。この多項回路は4バイトの長さであって、データの完全性を確認するために使用される。この回路は2つの動作モード、CRC32オンとCRC32オフ、を有する。ビットX_EN_XOR6000W.4がそのモードを決定する。このビットがロジック0のとき、CRC32ロジックは使用可能にされ、CRC32レジスタに書き込まれたデータがCRC32多項回路により多重化される。ビットがロジック1のとき、CRC32多項回路は使用不能にされ、CRC32レジスタへのデータシフトは変わらない。その回路は、4つの8ビット読み出しデータレジスタ、1つの書き込みデータレジスタ、上記制御ビットおよび制御ロジックから成る。以下にレジスタの概要を記載する。CRC32読み出しレジスタ37000RCRC32読み出しレジスタ27400RCRC32読み出しレジスタ17800RCRC32読み出しレジスタ07C00RCRC32書き込みデータレジスタ6800WX_EN_XOR制御ビット6000W.4CRC32回路動作データは一度に1バイトだけCRC回路に入れられる。これは、そのバイトをCRC32書き込みデータレジスタ6800Wに書き込むことにより行われる。8032が書き込みを完了した後、ハードウェア状態マシンが1バイトを取り出してCRC回路にシフトするこのシフトは、OSCが24MHzであれば約1.5μSかかる。すべてのバイトがシフトされてしまうと、得られたものは4つのCRC32読み出しレジスタから読み出され得る。そのCRC回路は、4つのレジスタを既知の値に初期化するためにオフにされ得る。CRC32書き込みデータレジスタはページ18にある。これは並列入力直列出力のシフトレジスタである。8032WRストローブの終わりは、ページ15においてシフトロジックを開始する。このロジックはシフトの開始をOSC_2クロックに同期させるであろう。3ビットカウンタは正確に8カウントをカウントして回路を停止させる。X_EN_XORビットを使用してCRC32回路を既知の値に初期化することができる。一部のCRC回路は、32ビットがすべてゼロにセットされることでスタートし、他のCRC32回路はすべてのビットが1にセットされることによりスタートする。X_EN_XORがロジック1にセットされると、CRC回路の排他的論理和ゲートがすべて使用不能にされる。これは、CRC32書き込みデータレジスタへの書き込まれたデータを、不変のCRC32フリップフロップチェーンに入れることを可能にする。この特徴はまたCRC計算におけるブレークを可能にする。ブレークが起きると、ソフトウェアがデータを読み出して4つのCRC32読み出しレジスタに記憶することができる。その後、このデータはこれらのレジスタに再ロードされる。CRC32の多項回路は以下のとおりである:OUTPUT_1=4mA、通常速度出力ポート制御ビットOUTPUT_2=2mA、遅い10nS立ち上がり立ち下がり時間PSRAMアドレス出力OUTPUT_3=2mA、通常速度出力OUTPUT_4=4mA、通常速度出力クロックに対して使用注:出力1および2はグルーブが異なるので、出力ビット電流はグループ間で容易に変えることができる。INPUT_1=シュミットトリガ付きTTL入力レベルINPUT_2=TTL入力レベルI/O_1=2mA出力ドライバアクティブHが使用可能である、オープンドレインまたは三状態可能、入力はTTLレベルI/O_2=2mA出力ドライバアクティブHが使用可能である、入力はTTLレベルデータバステーブルVTPU2740オンスクリーンコントローラ124TPU2740は、オンスクリーンディスプレイOSDコントローラとして機能し、また、クローズドキャプションデータCCDVBIデータスライサとしても機能する。TPU2740は、ファーストプロセッサFPと呼ばれるRISCベースのプロセッサを含み、そのプロセッサはVBIデータを収集し、直列バスと通信し、OSDを制御するために使用される。内部TPU2740回路の一部は、入力クロック周波数の4倍で動作しているこれは、18MHzの入力クロックのTVROボードについて72MHzである。8032とTPU2740との間の通信は3ワイヤIM直列バス108を介して行われる。TPU2740は、完全なディジタルチップであり、ベースバンドビデオデータは、TPUにより使用される前に先ずディジタル化されなければならない。6ビットアナログディジタルコンバータμPC660が、このディジタル化を行う。μPC660は、付録AのTVRO回路図のページ1に示されている。入力ビデオ信号は約1ボルトP-Pであり、この信号は、ディジタル化される前に既知のDCレベルにクランプされなければならない。ページ1のビデオクランブおよびフィルタは、バックポーチクランプ方法を使用してこれを行っている。このクランプは、バックポーチ領域が約3.69ボルトDCとなるようにビデオ信号をバイアスしてA/Dコンバータへ入力するバックポーチはカラーバーストが存在する領域である。R15、R16、R17およびR18で構成されるページ1のレジスタネットワークはそのクランプおよびA/D回路に対して電圧レベルを設定する。A/Dの上部基準ピン11は約4.52ボルトに設定され、下部基準ピン13は約3.35ボルトに設定される。入力ビデオ信号バックポーチ領域が3.69ボルトDCピン12にバイアスされるならば、ビデオ信号の最大ピークツーピークスイングは常に基準ピンの間にあるべきである。TRUが、入来するビデオ信号だけを使用してVBIクローズドキャプションデータを取り去る。そこでは、4MHzのビデオバンド幅全体を必要としないので、R7およびC6が、約1MHzでTPUビデオをロールオフするローパスフィルタを形成する。注:クランプ電圧の比は、予期されたビデオ信号IRE値と同じである。TPUの回路網は、ディジタル化されたビデオから垂直および水平同期を検出する。OSDおよびVBIデータスライサはこれらの信号をタイミング機能のために使用する。プログラム可能なコンバータは、垂直および水平同期を検出するために使用される。このコンバータが正確に同期を検出するためには、ビデオクランプが正確に機能することが重要である。FPは、同期検出回路網の出力を読み出して水平ラインをカウントすることができ、したがって、特定のVBIラインからVBIデータを読み出して、グラフィックオンスクリーンディスプレイを正確なビデオ走査ラインで開始することができる。特定のリードインフレーミングデータを含むVBI信号が検出されると、TPUのVBI回路網はVBIデータを、FPが読み出せる内部レジスタにロードするであろう。FPがこのデータを読み出してバッファに挿入する。その後、VBIデータはIMバスを介して8032により読み出される。TPUは良好なディジタル化されたビデオおよびピン27の安定な水平タイミング基準を必要とする。水平レート信号はMC1378からのバーストゲートであり、ピン27においてTPUに送られる。これらの信号のいずれかが消失するか欠陥信号であれば、TPUは安定なオーバレイを生成することができないであろう。TPUのOSD部分は、キャッシュメモリ、キャラクタメモリ、タイミング機能および外部256K×4ビットDRAMU9から成る。FPは、IMバスから高レベルのグラフィックコマンドを読み出してそのグラフィック情報を外部のDRAMメモリに記憶する。キャッシュメモリ、タイミング回路網およびキャラクタ発生ハードウェアとともに、TRUのFPは、R、G、BおよびFBLOUTラインにグラフィックデータを出力する。R、G、Bの出力を用いて8つのカラーが発生される。FBLOUT速いブランキング出力信号は、ビデオ出力がTRUからのR、G、Bデータを含むか、または、入来するビデオが通過されるべきかを決定する。TPUは、オーバレイスクリーンおよびデータを記憶するために256K×4ビットDRAMU9を有する。これは、速いページモードDRAMであってスクリーン上にオーバレイが全くないときでもスクリーンデータを絶えず読み出すことによりリフレッシュ論理が回避される。R、G、Bカラーコンバータスターサイトテレコーストグラフィックディスプレイは、8つのカラー、すなわち、ブラック、ホワイト、グレイ、イエロー、ライトイエロー、ライトグリーンおよびレッドを必要とする。これらのカラーは、TPUが作る標準の8つのNTSC飽和カラーではない。カラーコンバータ回路は、TPU飽和ディジタルカラーをスターサイトグラフィックディスプレイの感じのよいカラーに変換するために必要とされる。この回路は、PCB回路図のページ2に示されている。カラーコンバータは、3つの8-1アナログスイッチから構成されている。R、G、B出力の各々について1つのスイッチがある。望ましいR、G、B電圧を生成する正確な電圧ディバイダが設けられている。アナログスイッチは、TPUからの3ビットのディジタルR、G、B信号に基づいてそれらの出力へ適当な電圧を迂回させる。TPUのR、G、B出力はオープンドレインとなるようにプログラムされ、それにより、全TTLレベルスイングが多重化アナログスイッチに利用できる。ページ2のR14およびC18は、R、G、Bチャンネルにおける遅延を補償するために、速いブランキング信号に対する安価なR-C遅延を形成する。オーバーレイジェネレータ及びビデオシンクロナイザーモトローラ社MC1378は、ビデオシンクロナイザーのための主メインビルディングブロックとして使用されている。このMC1378は、リモートモードREMOTEMODEピン1は、HIGHとシテセットされているにおいて、動作する。このモードにおいて、外部ビデオが、同期タイミング信号を生成するために必要である。ここで、1378のブロック図のための添付資料AのTVRO概略図の第3頁を参照する。A1ボルトピークツウピークNTSCビデオ信号は、1378及びTPUの両方のためのタイミング情報を提供するためにピン24に送られなければならない。ピン24の信号は、リモートビデオ信号RemoteVideoSignalと呼ばれる。この信号は、1378内で内部的にクランプされ、その後、合成シンクCompositesyncが分離される。この合成シンクは、垂直シンスロナイザーVerticalSyncを分離すると共に4.03MHzの水平位相ロックループHorizontalPhaseLockedLoopをロックするために使用される。合成シンクピン39と垂直シンクVerticalSyncピン38の両者は、デバッグとタイミングのための外部的に利用可能である。別の合成シンクが、4.03MHzのPLLPD1を使用するをロックするために使用される。このPLL内のVCOは、約4.03MHzのセラミック共振器として形成される。このセラミック共振器の自走周波数は、C39で調整されなければならない。このVCOを調整する最良の方法は、周波数カウンタを使用しさらにU1-5で周波数が15,750HzとなるまでにC39を調整することである。この調整は、VCOが自走するように、ビデオイン信号Videoinsignalを非接続とする。4.03MHzのVCO出力は、水平周波数を得るために256で分けられ、さらに、その後、BURSTGATEを生成するように更にデコードされる。バーストゲートMC13778ピン5は、約4uS幅で且つ約3.58MHzカラーバーストを中心とする。この信号は、オーバーレイ表示のための主タイミングレファレンスである。これは、1378とTPU2740の両者により広範囲で使用される。TPUHA、バーストゲートを使用して、オバーレイをいつスタートするかを決定する。バーストゲートからオバーレイがスタートするまでの遅延をセットするプログラマブルカウンタがTPU内にある。バーストゲート上のジェタのどれかが、オーバーレイ上に不快な側部から側部への動きannoyingsidetosidemotionを生じさせることになる。リモートビデオからのカラーバーストは、バーストゲートによりゲート制御されるPD3WO用いる4Xカラーサブキャリア発振器をロックするために、使用される。エンコーダ部からの局所的に生じた合成ビデオの位相が、PD3をロックするために使用される同様なサブキャリヤレファレンスと比較される。これは、ローカル信号とリモート信号の両方のサブキャリヤ位相がほぼ等しくなるように、PD4の手段により行われる。位相検出器の動作の概要1.PD1が、入ってくるリモート水平シンクに対して比較し且つ内部的にカウントされた4.03MHzのVCOをロックする。これは、VCR源の揺らぎに追従するために早く動作する。このPLLフィルターネットワークは、C24、C38及びR19から成る。2.PD2は、このデザインには使用しない。3.PD3HA、ゲート制御された位相の検出器gatedphasedetectorであり、入って来るリモート信号バーストに対して4つに分割されたクリスタル発振器周波数をロックする。4.PD4は、出ていくローカルカラーバーストがPD3で入ってくるリモートバーストと同じ位相となることを保証するために、内部の位相シフターを制御する。5.PD5は、この操作モードでは使用されない。MC1378内のビデオパスリモートビデオは、AC結合され、さらにピン24を介して供給され、さらに、適切なDCレベルブランキングは、0ボルトであるにクランプされる。このクランプされたビデオは、高速ビデオスイッチに供給され、この高速ビデオスイッチでは、ローカルビデオとリモートビデオとの切り換えが行われ、ピン25でオバーレイイネーブルOverlayEnableにより制御される。第2のパスは、PD3に通じており、PD3では、リモートビデオバーストが、4つに分割されたクリスタル発振器周波数と比較される。第3のパスは、入って来る信号がPALかNTSCであるかを判定する認識ディレクターIdentityDirectorに通じている。ローカルビデオは、ピン14、15及び16で直接結合の1ボルトのピークツウピーク入力であるR,G及びBの信号から生成される。その後、カラーディファレンスColorDifferenceと、B-Y、R-Y及び輝度Y信号を生成するルーママトリックスLumaMatrixが続く。B-Y信号とR-Y信号がクランプされ、さらに、それらの各モジュレータに送られる。変調されたB-Y信号とR-Y信号は、合計され、3.58MHzのNTSCのクロマ信号となり、この信号がピン18に供給される。このクロマ信号は、C33、C34、C35、R22、R13及びT1から成る3.58MHzのバンドパスフィルターにより、ろ波される。このろ波されたクロマ信号は、ピン20でフィードバックされる。この点において、クロマ信号は、400nS遅延線を通過する輝度信号に加えられる。この遅延線は、モジュレータ及びバンドパスフィルターを通過するクロマ信号のための長いパスにより、必要となる。この遅延線は、リニアグループ遅延と同様に、少なくとも4MHzのバンド幅、全バンド幅で良好なリニヤ性特性を有している。クロマとルーマの組み合わせ信号が、合成NTSCビデオ信号となり、この信号は、この後、ローカルビデオクランプによりクランプされ、さらに、高速ビデオスイッチに供給され、出力ピン27でリモートビデオとミックスされる。ローカルビデオ振幅をリモートビデオ振幅に関して正確に保持するために、2つのブースト振幅は、ACC検出器で比較され、局部的に生成されたクロマパス内の可変ゲインACC増幅器を使用して、等しく設定される。リモート信号の絶対ブースト振幅が、キルkill検出器により検出され、局部的に発生した信号のクロマが、リモートブーストが所定のレベル以下に低下したとき、オフとされる。このキルレベルは、ピン31の抵抗R3の値を変更することにより調整可能である。470Kが、約10-20mVp-pのリモートブーストでキルする。通常のブーストは286mVp-pである。電力供給このシステムは、5VDCデジタル、5VDCアナログ、及び可能性として12VDCアナログあるRFモジュレータに対してを必要としている。電流条件は、以下の通りである。5VDCデジタル550mA5VDCアナログ150mA12VDCアナログ80mAマイクロプロセッサPWRBADラインは、5VDCデジタル供給が4.75ボルト以下に低下する前の少なくとも10mSでゼロにセットされることが重要である。これにより、マイクロプロセッサが、稼動中のデータベースの処理を完了させ、DRAMの停止を順序正しく行うことが可能となる。これは、セイコー社のS80731ANパワースーパーバイザーICU2を用いて、不規則な電力をモニターすることにより行われる。不規則な電力供給が約8ボルト以下に低下した後、このS80731ANがPWRBADを断定するassert。これにより、サブルーチンのパワーダウンを開始するマイクロプロセッサ内の割り込みが生じる。U3が5VDC供給をモニターし且つDBE1200内へのRESETラインを制御する。これにより、電力が上昇し又低下している間に、クリーンリセット信号が生成される。送信器116IR送信器116の機能は、MC68HC05C9マイクロプロセッサにより発揮される。このマイクロプロセッサは、8032との通信のために、ソフトウエアシリアルバス110とインターフェイスするようにプログラムされている。このマイクロプロセッサは、大部分のVCRのもののために、IR信号をシュミレートするそれらの出力ピン上でパルスを生成することができる。MC68HC05C9内のROMは、実行可能なプログラム、コード及びシーケンスを含み、赤外線を経由してVCRを制御する。MC68HC05C9上のポートBは、それが対応するシリアルアドレスをセットするために使用される。クロック信号はDBE1200ゲートアレー内のプログラマブルクロックデバイダにより生成される。図6は、パケット300、メッセージ302及びコマンド304がどのように関連しているかを示している。図7は、パケット300を更に詳細に示している。他に示さない限り、全てのフィールドは、バイナリー2の補数binary2scomplementnumbersである。フィールド内の全ての設定されていないビットは、リザーブされ、ゼロに最初設定される。全てのマルチバイト変数は、他に表示が無ければ、格納された最も重要なバイトファースト大きなエンディアンフォーマットbigendianformatである。ただし、例外があり、CRC16とCRC32のフィーリドは、逆のオーダーで格納された最も重要でないバイトファースト小さなエンディアンフォーマットlittleendianformatである。全ての見ることができるテキスト記号列stringsは、印刷可能な文字charactersのみから構成されており、ここで、印刷可能とは、3220Hから12207AHの範囲でASCIIバリューで定められている文字である。上側と下側の両方のケースの文字lettersが、支持されている。フィールドを満たさないASCII記号列を含む全ての固定されたフィールドは、NULLASCII値0文字を用いてパッドされる。他に特に特定しない限り、フィールドを満たさない記号列は、NULLで終わらない。パケット300パケット300は、誤差検出情報及び加入者ユニットにより操作される情報から成る。図7に示されたパケットフィールドは、次に示すようにテーブルVIに示す記述を有する。テーブルVIメッセージ302メッセージ302は、パケット300の情報保持部分である。図8に示すように、これらは、1又はそれ以上のコマンド304から成っている。メッセージは、整数個のコマンドを含み、さらに、コマンドはメッセージ間で分離されていない。パケットヘッダーのサイズフィールドは、いつ全てのコマンドが処理されたかを判定するために使用される。メッセージフィールドの最適サイズは、250バイトかそれ以下である。250バイトよりも大きなコマンドは、1つのパケット内で単独に含まれるべきである。最後のコマンド内の最終バイトに続くバイトは、常に、CRC32フィールドの最初のバイトである。コマンド304コマンド304は、TVスケジュールデータベースを作り、1日の最新時間を保持し、さらに、ユーザーオーソリゼイション及びセキュリティー問題を取り扱うための、スターサイトデータトランスミッションネットワークStarSightTransmissionNetworkのエレメントである。異なるコマンドは、Cmdタイプとして知られている特別な値により区別される。それは、コマンドの最初のバイトの最も重要でない6ビットに含まれる。全部で64個の特別なコマンドタイプが可能である。2番目のフィールドは、Cmd長さであり、これは、コマンドのバイトサイズを判定するために使用される。このサイズは、CmdタイプとCmd長さのフィールドを含む。Cmd長さフィールドは、1又はそれ以上のバイト量であってもよい。テーブルIIは、全てのコマンドを示し、Cmd長さフィールドのサイズを特定している。このテーブルには、コマンドのための暗号化オフセットが含まれる。このコンセプトは、このテーブルに続くセクションで詳細に説明される。新コマンドが実行されたとき将来生じるであろうコマンドタイプを認識しない加入者ユニットは、コマンドレングスを計算し、そのコマンドCommandをスキップオーバし/イグノア無視しなければならない。Commandの第1バイトの最上位ビットMSBは、コマンドが暗号化されているかどうかを信号するフラグである。セットされていると、コマンドが暗号化され、クリアされていると、暗号化されていない。暗号化フォーマットにおいて加入者ユニットへ通ったコマンドだけが、ショウリストShowListコマンド、オーソライゼーションAuthorizationコマンド、及びキー分散コマンドKeyDistributionCommandであることが確実にされる。しかし、加入者ユニットは、任意のコマンドを暗号解読するように調整されるべきである。コマンドの暗号化した部分のスタートオフセットは、また、先行のテーブルにリストされる。大抵のコマンドが、そのクリアにおいてその内容の一部を残し、これによって、パケットストリームを処理するネットワークエンティティが、不必要なコマンドを、コマンドのガットを暗号解読することなしに、フィルタアウトする。将来のコマンドに対する暗号化のオフセットはそのコマンドが実際の実行されたとき変更されうることに注意されたい。Commandの第1バイトの2番目の上位ビット第2MSBは、2つのプログラムキーのいずれがコマンドの暗号解読のとき使用されるべきかを示している。このビットがクリアされているとき、暗号解読プログラムキー0は使用され、セットされているとき、キー1が使用されている。イニシャライゼーションベクトル及びパッド文字を追加する必要があるので、コマンドを暗号化するプロセスは、コマンドを格納するのに必要とするメモリの量を増加させる。イニシャライゼーションベクトルは、暗号化したバイトストリームのスタートに常時プリペンドprepndedされる8バイトのフィールドである。パッド動作は、そのバイトストリームが暗号化される前に、そのバイトストリームに追加される。パッド動作の目的は、暗号化データがタンパTamperされたどうかをセキュリティモジュールが決定するのを助けることにある。十分なパッド文字が、生データストリームの長さを8の倍数になるように付加される。その長さが8の倍数であれば、8個のパッド文字が付加される。パッド文字の値は付加されたフィルバイトの数である。例えば、3個の余剰バイトがコマンドに付加されると、各フィルバイトは値3となる。コマンドCommandの暗号化データは、図9に示すように、格納される。このコマンドセットの将来の改訂は、存在するコマンドにフィールドの定義を付加する。コマンドプロセッサは、最後に認識されたフィールドの後の全データをイグノア無視するように調整されるべきである。いくつかのコマンドが、特定のユニット又は特定のユニットグループにアドレスされる。ユニットは、4バイトバッチ数と1バイトユニット数の、2つの部分で構成される論理アドレスを用いてアドレスされる。バッチ数は、コマンドを同じバッチ数を共用するユニットグループに送るグループアドレスとして用いられる。ゼロのバッチ数は、リザーブした意味を持ち、全ユニットをアドレスする。他の可能な全てのバッチ数は、有効なアドレスである。例えば、バッチ数=0をもって伝送されたコマンドは、システムの広域放送システムワイドブロードキャストとして予定され、バッチアドレス23456を持つコマンドは、バッチグループ23456だけのユニットに向けて送られる。他のバッチグループのユニットは後者のコマンドをイグノアすべきである。ユニット数は、バッチグループの特定のユニットを識別するのに用いられる。255までのユニットが、1つのバッチグループに収容されるのが好ましい。ゼロのユニット数は、1バイトグループ内の全ユニットをアドレスするリザーブした意味を有する。例えば、バッチ数23456、ユニット数=0を持つ論理アドレスは、バッチグループ23456の全ユニットに向けられる。加入者ユニットデータベースを構築するのに必要とされるコマンドは、典型的には、テーブルVIIIに示す順序で、繰り返して送られる。テーブルVIII他のメッセージは、この周期的ストリームにおいて、必要とするときのランダムな基準で、散在している。伝送エラーによって、メッセージの喪失を生じて、コマンドが順序を外れて受取られることがあることに注意されたい。特に、ショウリストにギャップができることに注意されたい。加入者ユニットはメッセージの喪失と順序外れを取扱うことができねばならない。以下のセクションは、各コマンドについて記述する。コマンドは、その非暗号化フォームで示されているが、読者は、暗号化により上記の修正がいずれのコマンドにも行えることを了解されたい。TimeCommandタイムコマンドTimeCommandタイムコマンド:図10は、現在の時間と日付を特定している。これらは、周期的に、所定のレートで送られる。加入者ユニット52図1~4は、現在の時間と日付をリセットして、このメッセージで受取った値に一致させる。図10に示すタイムコマンドのフィールドは、テーブルIXに記述されている。テーブルIXDaylightSavingTimeChangeCommand日光節約時間夏時間変更コマンド夏時間変更コマンドDaylightSavingTimeChangeCommandは、次の夏時間変更が生じるときを定め、これによって、これらの変更を含む時間についてのスケジュールデータの表示が、正しく調整されたローカル時間を示すことができる。加入者ユニットは、オーソライゼーションコマンドから得られたタイムゾーンオフセットを追加して、そのローカル変更時間に対応する変更に対してグリニッジ標準時間を計算せねばならない。ショウリストは、この計算したグリニッジ標準時間が近づく夏時間に影響を受けるタイムオフセットによって示されるであろう後にエントリされる。図11に示される夏時間変更コマンドのフィールドは、テーブルXに定義されている。テーブルXRegionCommand領域コマンド領域コマンドは、スターサイトデータStarSiteDataが利用可能であり且つ所与の領域の加入者ユニットによって受取ることが可能である全チャンネルを識別する。1つの領域コマンドは、データプロバイダステーションによって受取られるエリアの各領域に対して送られる。例えば、各ケーブルシステムのチャンネルラインナップが1つの領域を構成する。オーソライゼーションコマンドが領域IDを送る。領域IDが分かると、その領域の各チャンネルに対するチャンネルデータがチャンネルデータコマンドChannelDataCommandから獲得される。このコマンドのチャンネルIDは、ユーザ領域の各チャンネルについてチャンネルデータを獲得した後は、加入者ユニットによって必要とされない。しかし、チャンネルIDとバージョンとは、チャンネルデータが失われたり例えば電力の供給停止あるいは変更したりして、再獲得せねばならない場合に備えて、保持されねばならない。チャンネルIDのエントリは、ユーザがセットアップスクリーンを使用するシーケンスを変更するまでは、加入者ユニットがチャンネルIDのエントリを表示すべきであるデフォルトの順にリストされる。チャンネルの順序は多少数値的であり、HBOやDISNEY等のチャンネルは、全て、自然チャンネル数=1として与えられ、名前の系列NameAffiliationフィールドによってアルファベット順に並べられる。ベースチャンネルだけが領域コマンドに送られるDuplicateChannelCommandを参照されたい。図12に示された領域コマンドRegionCommandはテーブルXIに定義される。テーブルXIテーブルXIチャネルデータコマンドチャネルデータコマンドが、種々のディスプレイに有用なチャネル情報を与える。チャネルデータコマンドは、データプロバイダステーションPBSステーションノードによりサービスを提供される全ての領域の各チャネルに送られる。加入者ユニットは、領域リストの1つに一致するチャネルIDエントリを含むチャネルデータコマンドを用いる領域において、全てのチャネルの情報を収拾する。ベースチャネルのみが、チャネルデータコマンドに送られる二重チャネルコマンド参照。図13に示されるチャネルデータコマンドのフィールドが、テーブルXIIで定義される。テーブルXIIショーリストコマンドショーリストコマンドが、任意のチャネルに1日のスケジュールデータを提供する。ショーリストコマンドは、チャネルが放送されていない時であってもスケジュールの空隙を有しない。ショーリストコマンドは、システムの全ての領域におけるチャネル全部に送られる。ショーリストコマンドは、多重のショースロットエントリを含み、各々のエントリは、チャネルのスケジュールにおける1つのショーに対応する。ショーリストコマンドは、少なくとも24時間のスケジュールデータを表す。ショーリストに対する最初のエントリは、グリニッジ標準時間で深夜の12時に始まる。連続するショーリストの間の境界にまたがるプログラムが、それらの開始時間が属するショーリストにおいて一回だけ表される。次のショーリストは、前のショーリストからのプログラムが、ダミーのショーエントリを伴ってそれにオーバランする部分の時間を表す。これらの充填文字エントリは、dumflgを用いて認識され、セットがこの時間スロットでショーのエントリを示すとき、前日のショーリストの末尾で見つけられる。ショーリストの最初のエントリだけが、dumflgセットを有することができる。ダミーのショーエントリは、それらのタイトルおよび記述テキストが、充填文字エントリとしてそれをラベルしたもので置き換えられることを除けば、有効なショーエントリと同様に機能する。プログラムの開始時間が、ショーリストの境界時間と正確に同じである場合には、次のショーリストにおいてこれは一回だけ表される。ショーリストコマンドが暗号化されるとき、ショーリストコマンドの暗号化は、上述のダイアグラムにおいてバイト11から開始されるすなわち、nbrshowslotentriesフィールドで開始する。ショーリストコマンドが、加入者ユニットの領域に適当でない場合や、既に受け取られている場合には、ショーリストコマンドが破棄されることが可能となる。不必要なショーリストを無視することは、暗号化の時間を費やさないですむため、加入者ユニットのデータ処理スループットを助ける。図14に示されるショーリストコマンドのフィールドを、テーブルXIIIに定義する。テーブル13ショータイトルコマンドショータイトルコマンドはプログラムのネーム例えば、COSBYSHOWおよびテーマ検索において用いられるいくつかのプログラム属性を含む。ショータイトルは、通常ホフマンエンコーディングスキームを用いて圧縮される。非圧縮状態のショータイトルは、レングスにおいて1から86バイトでなければならない。加入者ユニットのディスプレー能力が限られているので、レングスが38バイトよりも大きいタイトルは省略された。加入者領域において少なくとも一つのチャネルに対するショーリスト内にショーがある場合には、ショータイトルコマンドはデータベース内にセーブされなければならない。全ての別のショータイトルコマンドは、無視されなければならない。必要とされるショータイトルは、ショーリスト内のSID番号をショータイトルコマンド内のSID番号と一致させることによってわかる。図15に示すようなショータイトルコマンドのフィールドがテーブル14に定義される。テーブル14ショー記述コマンドショー記述コマンドは、プログラムのエピソードの記述とテーマ検索に用いたいくつかのプログラム属性とを含む。ショー記述は、通常ショータイトルに関して用いられたのと同じホフマンエンコーディングスキームを用いて圧縮される。圧縮されないショー記述はレングスにおいて1から162バイトでなければならない。加入者ユニットのディスプレイ能力には限りがあるので、レングスが120バイト以上の記述は省略される。データ提供者によってサービスされる全ての領域の記述を有する全てのショーに対して、ショー記述コマンドが送られる。加入者の領域において少なくとも一つのチャネルに対するショーリストにおいてDIDが参照される場合には、ショー記述コマンドはデータベース内にセーブされなければならない。別の全てのショー記述コマンドは無視されなければならない。必要とされるショー記述は、ショーリスト内のDID番号とショー記述コマンド内のDID番号が一致することによってわかる。図16に示したようなショー記述コマンドのフィールドがテーブル15に定義される。テーブル15テーマカテゴリーコマンドテーマカテゴリーコマンドは加入者ユニットのテーマ機能内に表示された主なカテゴリーを特定する。これらのカテゴリーはヒエラルキーテーマ検索機能内の第1のインデックスを形成する。各主なテーマカテゴリに対して、特定の8ビットID番号とテキストストリングが特定される。このテキストストリングはカテゴリーのエントリーを名づける。このエントリーは、指示された公開順にコマンド内で順次リストされる。コマンドは、テーマカテゴリーコマンドが変更されるごとに増加されるバージョン数を含む。加入者ユニットは、異なるバージョン数を有するコマンドが伝送されたとき、メモリー内に記録されたコマンドに存在するバージョンと取り替えなければならない。図17に示したようなテーマカテゴリーコマンドのフィールドは、テーブル16に定義されている。表16テーマサブカテゴリ命令テーマサブカテゴリ命令は、加入者の単位デーマ機能で示されたサブカテゴリを特定する。これらは、使用者が主テーマカテゴリを選択した後、表示される。各主テーマカテゴリは、1又は2以上のサブカテゴリを有しており、そのサブカテゴリは、階級をなすサーチスキームsearchschemeの第2のレベルを形成する。各サブカテゴリには、親カテゴリの8ビットID、固有の16ビットテーマID数、及び入力を名付けるテキストストリングtextstringが含まれている。入力は、提案される表示順序の命令内に直列に列挙される。命令には、バージョンversion数が含まれており、そのバージョン数は、テーマサブカテゴリ命令が変更されるたびに、増加される。加入者単位は、バージョンの数が異なる命令が送信されるとき、メモリに記憶された命令の現在のバージョンを差し変える。全ての加入者単位は、同じテーマカテゴリID、サブカテゴリID、及びバージョン数を含む入力を有しないとき、これらのサブカテゴリ名を記憶する。図18に示されるテーマサブカテゴリ命令のフィールドは、表17で定義される。表17加入者ユニットリセット命令加入者ユニットリセット命令によって、星観測制御センタが選択された加入者ユニットをリセットする。異なるタイプのリセットを送ることも可能である。図19に示されるように、加入者ユニットリセット命令のフィールドは表18に定義される。表18認可命令認可命令は、加入者ユニットがスケジュールデータを収集し、表示するように認可する。加入者が星観測サービスを求めるときに、その命令は送信される。認可命令を受信するまで、加入者ユニットは、どの領域にいるか分からず、それによってどのチャンネルでデータを収集するべきかが分からない。同様に、加入者ユニットは、認可命令を受信するまで、各種の命令を解読するために必要な解読キーを有していない。認可命令は、認可過程において顧客サービス代表者に与えられた直列の番号を用いて個々の加入者にアドレスする。第1の発生加入者ユニットは、単一の領域及び同じ同調周波数の2つの別個のVBI線を支持するために制限される。図20-22に示されるように認可命令のフィールドは、表19で定義される。表19長期割当IRコード命令長期割当赤外線コード命令は、特定の周辺装置を制御するために、加入者ユニット普遍遠隔制御チップによって使用される制御コードを特定する。このコードは、IRブラスタblaster言語を記載しており、この言語は、URCチップの内部データベースにない装置にたいして選択的に送出される。顧客サービス代表が星観測と言われる使用者と接触しているとき、伝送は通常発生する。なぜなら、それらが、加入者ユニットマニュアルにおけるVCR/ケーブルボックス/TV用のコード群を発見しなかったからである。IRコードは、連続数を介して特定のユニットにアドレスされるか、又は所定の生産コード、装置タイプ例えば、VCRそして装置IDを有するユニットにアドレスされる。これらの命令は、SU群にアドレスされるとき、使用者の要求について一度か、又は反復して送出される。図23に示されるように長期割当IRコード命令のフィールドは、表20に定義されている。表XXキー分配コマンドキー分配コマンドは、暗号化コマンドを解読するために使用されるべき現在及び次のプログラムキーを与える。加入者ユニットは、バッチ番号を含むキー分配コマンドに対するデータストリームを観察する必要がある。コマンドが見つけ出された時、それは、許可ビットマスク、両方のキー、及び承認データフィールドを、スターサイトセキュリティープロセッサに送る必要がある。加入者ユニットユニット番号に対応する許可ビットマスク内のビットが0の場合、加入者は、不許可になり、データ収集を保留する必要がある。図24内に示されるキー分配コマンドのフィールドは、表XXI内に定義されている。表XXI加入者ユニットコマンドこのコマンドは一つ以上の加入者ユニットにデータバイトを送信するために使用される。フォーマット及び内容の定義は、加入者ユニットに対してプライベートである。ネットワークは、データに割り込む試みはしない。この命令はコマンド及び初期化データを、分離、形式、ネットワークメッセージを定義する必要なしに、開発中に加入者ユニットに送信するためのホックを提供する。これらのメッセージの大きくは、元々一時的であることが出来る。図25に示される加入者ユニットコマンドのフィールドが表XXIIに定義されている。表XXII以下は、加入者ユニット52データベースエンジンの内部データ構造を記述している。加入者ユニットデータの一般的な特徴は、階層的である。データ構造のスケジュールデータ階層は降順での次の通りである。テーマのカテゴリー及びテーマのサブカテゴリーが、観るショーを選択するのに使用される。それらは、テーマカテゴリー/サブカテゴリー対と一致するショーを抽出するのに使用される共通のデータ値テーマインデックスを共有する。降順でのテーマデータ階層は、以下の通りである。加入者ユニットによって受信されたネットワークコマンドの記述に対して、インサイトデータ転送ネットワークプロトコル記述InSightDataTransmissionNetworkProtocoldescriptionを見る。データベースメモリプール概欄メモリマネージャーMenoryManagerは、サブスクライバユニットの適用部分によって要求されるメモリブロックを割当て且つフリーにする。アプリケーションソフトウエアーハンドルHANDLEを介してメモリブロックを参照する。メモリブロックのハンドルは、プールインデックスPOOLINDEXを含むテーブルエントリに対するインデックスである。プールインデックスは、メモリブロックMEMORYBLOCKのアドレスに翻訳されるスケールされたアドレスである。このハンドル法は、システムオブジェクトが歳を取り、そして死んでいく場合に、アプリケーションデータ構造の特定の更新を要求することなしに、メモリブロックが、再配置されることを可能にする。メモリマネージャーは、周期的に不要情報収集過程を行って、未使用メモリブロックを収集し、それらを再結合して、大きなブロックにする。アプリケーションがハンドルを用いてハンドルテーブルを介してメモリブロックを参照するので、メモリブロックは、アプリケーションデータ構造の特定の更新によって再配置することができる。更に、メモリプールは、一時的にロックされ、臨界期間中のブロックの再配置を防止する。各メモリブロックは、メモリブロックのサイズ及びオブジェクト形態OBJECTTYPEを最初の要素として含む。これは、メモリブロックの再配置及びマージングを助ける。オブシェクト形態は2つのメイングループに分カレル。メモリーの16ブロックよりも少ない中に定義することが出来る小さなオブジェクト。現在、メモリの各ブロックは16バイト長である。小さなオブジェクト第1のNIBBLE内にコード化されたオブジェクト形態、及びメモリブロックの第1バイトの第2のNIBBLE内にコード化されたブロック内の長さを有する。長いオブジェクトは、メモリブロックの第1のバイトとして、コード化されたオブジェクト形態、及びメモリブロックの第2のバイトとして、割り当てられたユニットの数を有する。メモリーブロックの第1のバイトが、ビット的に、0xCOとアンドが取られて0となる場合、これは、大きなオブジェクトであり、他の場合は、小さなオブジェクトである。データベースメモリプールアクセス法データベースメモリプールアクセス法の図示的な表現が図26に示されている。更なる詳細は以下の通りである。ハンドル表ハンドル表は図27に示される様に固定された割当て表であり、2つの形態のエントリ、フリーエントリ、及び使用中in-useエントリを含む。フリーエントリは使用中エントリと混同されない様に2MSBセットを常に有している。使用中エントリは、ハンドル、例えば、ショー題名エントリを介して参照されるデータベース項目に対するプールへのインデックスを含む。データベース項目のハンドルはハンドルテーブルへのインデックスである。データベース項目のプールインデックスは、プール内の不要情報収集のために変化できるが、そのハンドルは、該当項目がデータベース内に存在する限りは変化しない。データベースから除去された項目は、それらのハンドルをフリーリストの頂部に戻す。ハンドルテーブルエントリ0は、常にフリーリストのヘッドである。表は全てのフリーエントリに対して初期化され、各エントリは次のエントリのインデックスを含んでいる。ハンドル表のサイズは、プール内に保持することが出来るデータベース項目の数を制限する。種々のチャンネル数を有するシステムは、異なるハンドル表サイズを要求する。Field記述Poll項目を含む第1のプールブロックに対するプールへのインデックス。データベーススケジュールアクセス概覧データベースショースケジュールが、図28に示さている。チャンネルデータチャンネルデータ表と呼ばれる内部データベースエンジンデータ構造内に維持される。チャンネルデータ表は、或る領域によってアクセスされるチャンネルを選択する。チャンネルデータ表は、領域コマンド及びチャンネルデータコマンドからシステムコマンドプロセッサによって構築される。チャンネル関係情報は、領域コマンドから抽出され、チャンネルデータ表に設置される。使用領域IDは許可コマンドから抽出される。領域IDは、ショースケジュール発生に対するキー情報である。領域IDは、加入者ユニットによって処理される領域コマンドを選択し、アクセスされるチャンネルIDを定義し、チャンネルデータ表を定義し、及びショーリストを定義し、ショー題名及びショー記述を選択し、且つテーマカテゴリー及びテーマサブカテゴリーを参照する。一度チャンネルデータ表が定義されると、チャンネルはチャンネルデータ表を直接介して参照される。ショースケジュール内の各より低いレベルの表は、ハンドルを介してアクセスされる。ハンドルはメモリチャンネルデータ表内のポインタに、ハンドル表によって翻訳される。図29に示される様に、チャクネルデータ表は、領域内に各チャンネル毎の情報を含む。このデータは、チャンネル見出しChannelBanner上のチャンネル、チューニング、表示に対し、チャネルグリフgliffsに対し、そしてセットアップ中にスケジュールデータショーリストにアクセスするために使用される。Field記述Type/NbrBlksこのプール項目をホールドするのに必要とされるプールエントリ形態及びブロックの数。この形態値は、長さが領域内のチャンネルの数のために極めて長くなるために、これが2バイトフィールドであることを示している。チャンネルデータ表形態=1NbrChannel不活動のチャンネルを含むユーザー領域内のチャンネルエントリの数表XXIIIチャンネルエントリ領域内の各チャンネルに対して一つのチャンネルエントリがある図29も見よ。表XXIVチャネル複製表ChannelDuplicatesTableチャネル複製表図30は、基本チャネルの複製である領域Regionの各チャネル上に情報を含む。このデータは、有料視聴pay-for-view型チャネルのブロックBlocksのディスプレイを調整するために用いられる。チャネルの全ては、共通基本チャネルショーリストChannelShowListを共有するが、基本チャネルのショーリストのオフセットに開始時間を追加する。基本チャネルIDBaseChannelIDは、構成に記憶されない。その代わり、構成は、チャネルデータ表ChannelDataTableのチャネルエントリによるハンドルHandleと呼ばれる。チャネルエントリが複製チャネルを有しているならば、複製チャネルハンドルDuplicateChannelHandleフィールドは、それによって表をアクセスするためのハンドル番号を有する。更なる詳細は、表XXVに供給される。フィールド説明Type/NbrBlksこのプール項目を保持するために必要なプールエントリ型PoolEntryType及びブロックの番号。型値は、長さが領域のチャンネルの数により非常に大きくなることができるので、これが2バイトフィールドであるということを示す。NbrChannelsインアクティブチャネルを含んでいるユーザの領域の複製チャンネルエントリの数。表XXVチャネル複製エントリChannelDuplicatesEntry領域の各複製チャネルに対して一つのチャネル複製エントリが存在する。更なる詳細は、表XXVIに供給される。表XXVIショーリストハンドル表ショーリストハンドル表図31は、週の毎日に対するショーリストへのハンドルを含む。この表は、チャネルデータ表に配置されたショーリストハンドル表ハンドルによって指示される。この表を介して、計画するに値する週weeksを表しているショーリストをアクセスすることができる。更なる詳細は、表XXVIIに供給されている。表XXVIIショーリストショーリスト図32は、所与のチャネルに対する計画の24時間を含む。それが計画の24時間以上を実際に含む唯一のときは、放送している間にプログラムが現行の日で開始しかつ24時間ラインを横切るときである。全てのショーリストは、毎日同じ時間で常に始まる。ダミースロットDummySlotは、必要ならば前日からのオーバフローを処理するために生成される。計画の完全な組に対して、7つの個別ショーリストが所与の加入者装置SubscriberUnitによって支持される全てのプログラムオリジネータProgramOriginatorに対して要求される。ショーリストへのアクセスは、週の所与の日に対するショーリストハンドラ表を介してである。更なる詳細は、表XXVIIIに供給される。表XXVIIIショーエントリチャネルの計画は、ショーエントリの順序付けられたシーケンスによって与えられる。これらのエントリは、ショーの持続時間、表題、及び可能にはエピソードの説明を与える。エントリは、ショーが説明及び/又はグループIDを有するか否かにより4、6または8バイト長のいずれかである。所与の開始時間に対応するエントリを見出すことは、順番に、リストの開始から走査されるべきエントリを必要とし、かつ持続時間値を追加する。ショーリストには間隙がないようでなければならない。更なる詳細は、表XXIXに供給される。表XXIXショー表題ショー表題図33は、ショー表題の通常圧縮されたテキストを含む。各自のショー表題毎に一つのエントリが存在する。ショー表題は、プール基本項目である。エントリは、加入者装置がショー表題を既に有していないSIDを含む加入者装置がデータを収集しているチャネルに対してショーリストが受け取られるときにはいつでも生成される。エントリが生成されるときに、ハンドルは、それに割り当てられかつNeedItそれが必要であるフラグは、ショー表題ハンドル表エントリにセットされる。エントリの大きさは、表題の長さによって決定される。単一プールブロックは、新しいSIDがショーリストで受け取られるときにヌル表題ストリングを含んで保存される。エントリは、適切なショー表題メッセージが後続して受け取られときに充填されかつNeedItフラグがクリアされる。その時には、エントリは、再配置されかつ多重プールブロックに拡張されうるが、しかし、そのハンドルは、同じのままである。更なる詳細は、表XXXに供給される。表XXXデータベースショー表題ハッシュ表アクセススキームデータベースショー表題ハッシュ表アクセススキームは、図34に示される。ショー表題ハンドル表ショー表題ハンドル表図35は、ショー表題が必要であるかどうかまたはそれが既に受け取られたかどうかを決定するために用いられるプールベース表である。SIDがハッシュすることができる各可能な値に対して一つのショー表題ハンドル表が存在する;即ち、256の表。ショー表題ハンドル表エントリは、SUが収集しているデータであるチャネルに対するあらゆるショーリストメッセージで受け取られた全ての固有なSIDに対して行われる。エントリが行われる特定の表は、SIDのハッシュ値によって決定される;即ち、SIDの下位8ビットである。これらの表は、SIDがデータベースから削除されるときに更新されなければならない。ショーハンドル表ウォーカー背景タスクは、オンにされ、規則的間隔でこれらの表をアスセスし、かつ0に行った参照計数ReferenceCountsに対してそれらをチェックする。ウォーカーは、削除されることができるエントリを探す。更なる詳細は、表XXXIに供給される。表XXXIショー表題ハンドル表エントリショー表題ハンドル表は、多重エントリを含む。これらのエントリのそれぞれは、次のフィールドを含む。Field説明NeetItFlagショー表題テキストストリングメッセージがこのSIDに対して受け取られたかどうかを示しているフラグ。0=ショー表題が受け取られた、1=受け取られていない。ショー表題ハッシュ表ショー表題ハッシュ表図36は、各可能なSIDハッシュ値に対するプールインデックスだけを含んでいる、固定された大きさの、予め割り当てられた表である。SIDハッシュ値は、この表の中のインデックスである。n番目のエントリの値は、これまでnに対してハッシュされた受け取った全てのSIDsを含んでいるショー表題ハンドル表に対するプールの中のインデックスである。更なる詳細は、表XXXIIに供給される。表XXXIIショー説明ショー説明図37は、ショーのエピソード説明の普通に圧縮されたテキストを含む。固有のショー説明毎に一つのエントリが存在する。ショー説明は、プールベース項目である。エントリは、SUがショー説明を既に有していないDIDを含むSUが収集しているデータに対するチャネルショーリストが受け取られるときにはいつでも生成される。即ち、needitフラグがショー説明ハンドル表エントリにセットされている。エントリの大きさは、説明の長さによって決定される。単一プールブロックは、新しいDIDがショーリストで受け取られるときにヌル説明ストリングを含んで確保される。エントリは、適切なショー説明メッセージが後続して受け取られかつneeditフラグがクリアされるときに充填される。そのときには、エントリは、再配置されかつ多重プールブロックに拡張されうるしかしそのハンドルは、同じのままである。更なる詳細は、表XXXIIIに供給される。表XXXIIIデータベースショー説明アクセス概要図38は、データベースショー表題ハッシュ表アクセススキームを示す。ショー説明ハンドル表ショー説明ハンドル表図39は、ショー説明が必要であるかどうかまたはそれが既に受け取られたかどうかを決定するために用いられるプールベース表である。DIDがハッシュできる各可能な値に対して一つのショー説明ハンドル表が存在する;即ち、256の表。ショー説明ハンドル表エントリは、SUがデータを収集しているチャネルに対するあらゆるショーリストメッセージにおいて受け取られた全ての固有なDIDに対して行われる。エントリが行われる特定の表は、DIDのハッシュ値によって決定される;即ち、DIDの下位8ビットである。これらのテーブルは、DIDがデータベースから消去されたとき更新しなければならない。ShowHandleTableWalkerbackgroundtaskがオンされ、DIDが消去されたとき、たとえば、これらのリファレンスカウントが1になったとき、はつねにこれらのテーブルにアクセスする。このWalkerはデリートすることができるエントリーを探す。さらに詳細はテーブルXXXIVで入手可能である。テーブルXXXIVShowTitleHandleTableエントリーShowTitleDescriptionHandleTableは複数のエントリーを含む。これらの各エントリーはテーブルXXXIVに示されたフィールドを含んでいる。テーブルXXXVShowDescriptionHashTableこのShowDescriptionHashTable図40は固定サイズであり、各可能性のあるDIDHash値に対するインデックスのみを含む予め割り当てられたテーブルである。DIDHash値はこのテーブルへのインデックスである。n番目の値は、nまでの現在までに受信された全てのDIDを含むShowDescriptionHandleTableに対するPoolへのインデックスである。詳細は以下の通りである。Field説明PoolIndexHashからeテーブルの最初からオフセットしたこのエントリーへのDIDに対するShowDescriptionhandleTableの第1ブロックに対するPoolIndex。0値はHashedされてからこのエントリーへの現在までにチャンネルのShowリストにおいてDIDがないことを意味する。テーマカテゴリーテーブルテーマタテゴリーテーブル図41は加入者ユニットにダウンロードされたテーマの定義を含む。各テーマカテゴリーは特定のタイプのショーを探すのに使用される。各テーマカテゴリーは1つ以上のテーマサブカテゴリーを含む。各テーマカテゴリーテーブルの各テーマカテゴリーはこれと関係するテーマサブカテゴリーを有する。さらに詳細はテーブルXXXVIに示されている。テーブルXXXVIテーマカテゴリーエントリー各テーマカテゴリーに対する1つのテーマカテゴリーエントリーがある。さらに詳細が、テーブルXXXVIIに示されている。テーブルXXXVIIテーマサブカテゴリーテーブルテーマサブカテゴリーテーブル図42はテーマカテゴリーに含まれるテーマサブカテゴリーについての情報を含む。各テーマサブカテゴリーテーブルは1つのテーマカテゴリーエントリーよって参照される。各テーマサブカテゴリーエントリーはネーム、クオリファイヤqualifersおよびテーマインデックスを含む。ショータイトルおよびショー説明におけるテーマインデックスはテーマサブカテゴリーのテーマインデックスに対して一致している。テーマインデックスは一致するとき、どのショーがテーマサブカテゴリーのメンバであるかを特定する。さらなる詳細は、テーブルXXXVIIIにしめされている。テーブルXXXVIIIテーマサブカテゴリーエントリーリジョンの中に各チャンネルについて1つのテーマサブカテゴリーが存在する。テーマサブカテゴリーエントリーのさらなる詳細は、テーブルXXXIXに示されている。テーブルXXXIXこのセクションは、加入者ユニット52における全てのプロセッサの間で送られるメッセージを説明している。何人かの加入者ユニット設備はすべては使用しないかもしれないし、要求されないかもしれないが、すべてのメッセージが説明されている。メッセージのそれぞれのフィールド説明につづいてメッセージのフォーマットを示すダイヤグラムが示されている。グレーのフィールドは現在使用されていないフィールドを示している。しかしこのフィールドのビットは0にセットされて将来の設備との互換性を維持するようになっている。すべてのフィールドは特に指示しないかぎり、2の補数である。データベースエンジン-I/Oプロセッサは1Mビット/秒ではしる1Mバスで連結されている。このI/Oプロセッサは、1つ以上の特定の垂直ブランクインターバルラインVerticalBlankingIntervallineを介して、データ伝送ネットワークデータを受信し、データエンジンプロセッサによって要求されたとき、得られた生バイトを送信する。データベースエンジンは、同調チャンネルを制御し、特定の使用すべき垂直ブランクインターバルVBIラインを特定する。データベースエンジンは、またI/Oプロセッサへのグラフィックディスプレーコマンドを、たとえば、所定の色で矩形を満たすといったように、発生し、スクリーン上の所定の矩形のピクセルカウントをセイブすなわち再記憶する。すべての加入者ユニットスクリーンはこのようなグラフィックディスプレーコマンドから構成されている。データベースエンジンは、後にさらに1つ以上のコマンドが続くパケット長さフィールドを含むパケット図43でI/Oプロセッサにコマンドを発生する。I/Oプロセッサは、すべてのパケットバイトをRAMコマンドバッファに転送し、この転送が終わると、これらがパケットに受信された順でコマンドを実行する。I/Oプロセッサは全てのコマンドが実行されるまで使用中であるということを指示かするステータスフラグをセットする。パケットサイズはI/Oプロセッサに出された任意のコマンドシーケンスに受信された最初の二つのバイトである。唯一つのコマンドパケットが一度にI/Oプロセッサに送ることができる。グラフィックコマンド以下のコマンドは加入者ユニット52に接続あるいは組み込まれるテレビジョンセットのシステムディスプレースクリーンを描写するのに必要な基本的なグフィックスオペレーションを定義している。スクリーン座標は、スクリーンの上左角にある0,0に基づいている。TPU2740は、X座標の503もの高さを許容する。そして、システム最大Xは251である。これによって、システムはX座標を単一のバイトに維持することができ、かつ、異なる色の2つのピクセルにシステムピクセルを含ませることができる。したがって、251、207はスクリーンの右下角であり、コマンドで受信されたX座標はこの2740で2倍にされなければならない。以下のコマンドの全ての色はカラーバイトの上下のニブルにあるTPU2740カラーからなる。単一のシステムピクセルにおける二つの別々の色を使用することによって、表示できる色の数を増大することができる。実際にシステムピクセルをセットすることはカラーバイトにある2つの色を使用するX座標に沿って2つの連続する2740ピクセルをセットすることに関係している。エリアが満たされると、これらの色はディザditherされなければならない。すなわち、X座標に沿った連続した2740ピクセルに使用される色は適当なカラーバイトに与えられた2つのカラーの間で交互に変更される。偶数列がカラー1ではじまり奇数列たとえばY座標が奇数ナンバであるがカラー2で始まり、X座標に沿って連続するピクセルについて2つのカラーの間で交互に変化する。この2740のグラフィックルーチンは、X座標またはY座標がスクリーンの限界を越えた場合にはクリップ出力するclipoutput。すなわち、グラフィックはオペレーションにかかる座標が0,0さら251,207から外にでる場合には、ラップwrapしない。規定違反のパラメータ値は無視される。規定にあったcmdtypeフィールドは無視されるべき、パケットにおけるすべての後続のコマンドを発生させる。すなわちこのIOPは、規定にあったコマンドタイプを検出するパケットで終了する。グラフィックコマンドはVBI処理よりも優先順位が高い。セットグラフィックデフォルトセットグラフィックデフォルトコマンド図44はI/OプロセッサIOPに対して全てのグラフィック変数を初期値にリセットさせる。このコマンドは、データベースエンジンがリセット状態にあるとき電源を入れたときに使用される。このIOPは以下の値を初期化する。シャドー幅=シャドー高さ=3シャドーカラー=ブラックスモールフォントデルタX=6スモールフォントデルタY=10ラージフォントデルタX=8ラージフォントデルタY=15ハイライト=ホワイトアンダーライン1=グレーアンダーライン2=ブラックさらなる詳細は、テーブルXXXXに示されている。表XXXX消去スクリーン消去スクリーンコマンド第45図は、I/Oプロセッサによってスクリーンを空白にさせ、すべてのディスプレイバッファ画素を指定された透明カラーにセットさせる。これ以上詳しい点は表XXXXIにある。表XXXXI矩形描画指定されたディザードカラーの矩形を描画する。コマンドにセットされた対応するフラグビットに基づいて一回の操作で矩形を塗りつぶしたり、輪郭強調したり、エンボス処理したりすることができる。これらの操作は、各々、他の操作から独立して行うことができる。たとえば、空白の矩形を、アウトラインフラグビットをセットするだけで描くことができる。べた色の場合、塗りつぶした矩形、すなわち、フィルカラー1、フィルカラー2の両方が同じ値でなければならない。矩形は、塗りつぶしてからエンボス処理し、次いで輪郭強調を行ってから陰影付けを行なわなければならない。これ以上の詳しいことは第46図と表XXXXIIにある。表XXXXII第47A~47E図に矩形の例が示してある。矩形保存スクリーン上の指定された矩形の画素内容を一時バッファに保存させ、矩形復元コマンドによって後に復元できるようにする。これ以上の詳しい点は第48図および表XXXXIIIにある。表XXXXIII矩形復元矩形保存コマンドで先に保存された矩形をスクリーンに復元する。復元すべき矩形はそのポップアップIDフィールドによって認識される。復元座標により、先に保存された矩形をスクリーン上の異なった位置に戻すことができる。たとえば、これは或る種のカーソルまたはアイコンを移動させる場合に対応する。これ以上の点は第49図および表XXXXIVにある。表XXXXIV矩形縦方向移動矩形縦方向移動コマンド第50図は、スクリーン上で矩形を効果的に移動させて指定された矩形の画素内容をディスプレイメモリ内の別の場所に複写させる。このコマンドは縦方向移動のみを扱う。指定されたスクロールサイズが達成されるまで、矩形を一行ずつスクロールアップあるいはスクロールダウンする。これ以上の詳しい点は表XXXXVにある。表XXXXV書き込みASCIIストリングASCIIストリングをスクリーンに出力する。このストリングの第1キャラクタの出発座標はキャラクタの上左コーナーに一致する。引き続くキャラクタは、ASCIIキャリッジリターンキャラクタに遭遇するまで、一本の横方向ライン上にある。それ以降のキャラクタは、スクリーンの下方にあり、当初のX座標で再開する出力データYたとえば、各フォントについてセットグラフィックスデフォルトコマンドにおいて指定されている画素である。不法なキャラクタはそれぞれの場所でを出力する。キャラクタは2つのフォントの内の一方における出力であってもよい。ラージフォントではアッパーケースキャラクタのみがサポートされている。これ以上の詳しい点は第51図および表XXXXVIにある。表XXXXVIチャネルアイコン描画指定された座標でチャネルアイコンを描画する。このアイコンの座標は、もしそれが1または2のキャラクタチャネルネームを保持している場合にアイコンを正確に収容するだろう矩形の上左コーナーを表す。これらの座標は、ASCIIチャネルネームフィールドが2キャラクタよりも長い場合には調節されなければならない。この場合、IOPはこのコマンドにおいて送られるX座標を3だけ減分しなければならないチャネルネーム長-1。チャネルネームストリングがまったくキャラクタを含んでいない場合には空のチャネルアイコンが描画されるすなわち、バイト5=0の場合、1-2キャラクタサイズの空のアイコンが描画される。これ以上の詳しい点は第52図および表XXXXVIIにある。表XXXXVIIチャネルアイコンの例が第53A~53C図に示してある。透明カラー使用禁止透明カラー使用禁止コマンド第54図は、カラーコード番号がまったく透明画素を表示しないことを指定する。このコマンドは、カラーをなんら透明にしてはならないときにそれを示すのに用いられ、フルスクリーンディスプレイが描画される毎に送られなければならない。これ以上の詳しい点は以下の通りである。フィールド記述cmdタイプこれを透明カラー使用禁止コマンドとして識別するコマンドID番号=9ネットワークデータ獲得および制御インターフェイスシステムデータは、1つまたはそれ以上のVerticalBlankingIntervalVBTライン上のPBSネットワーク、MTV、Showtimeその他の通信ソースを経て受信される。I/Oプロセッサは、各ラインからデータを獲得し多重ラインである場合、それを個別の入力バッファに格納する。データは、たとえフレーミングコードが所与のフィールドにとって不正であっても、IOPの入力バッファに格納される。この場合、03sの2バイトが格納される。データは、コマンドポケットが応答を要求する少なくとも1つのコマンドを含む場合には、データベースエンジンプロセッサにのみ転送される。データベースへの応答が要求する場合には、I/Oプロセッサは要求されたデータバイトの数以下のできるだけ多くのバイトを転送する。入力バッファがいっぱいになった場合には、I/Oプロセッサは、バッファが空になるかあるいはリセットが発行されるまでデータをダンピングし始める。いっぱいのバッファは次の応答で送られるべきovflフラグをデータベースエンジンに送らせる。I/Oプロセッサはシステムデータの2VBI行まで扱うことができるし、あるいは、ライン21からのシステムデータおよび閉じたキャプションデータの1行を取り扱うことができる。データは常に各システムデータVBI行のための両フィールドから獲得される。閉じたキャプションデータも両フィールドから獲得される。I/Oプロセッサは、応答を要求する任意のコマンドに、10ミリ秒以内で応答する。VBI停止VBI停止コマンド第55図は、I/Oプロセッサに、VBI処理に関係した内部変数を初期化させる。すべてのVBIバッファカウンタはクリアされ、任意の獲得されたデータが失われる。VBIデータ獲得は、セットVBI制御パラメータまたはフラッシュVBIバッファコマンドが受信されるまで停止される。これ以上の詳しい点は以下の通りである。フィールド記述cmdタイプこれをVBI停止コマンドと識別するコマンドID番号=16。セットVBI制御パラメータこのセットVBI制御パラメータコマンド第56図により、データベースエンジンがVBIデータの獲得を制御するパラメータを指定することができる。このコマンドすなわち、フラッシュVBIバッファコマンドは、VBI停止コマンドの後に発行されてVBIデータ獲得を可能としなければならない。パラメータはすべてのVBIライン最大2ラインについて送られなければならない。各新しいセットVBI制御パラメータコマンドはすべての先行のバラメータを替える。パラメータは、最下方のVBIラインを最初にしてライン番号によって順番付けされなければならない。これ以上の詳しい点は表XXXXVIIIにある。表XXXXVIIIVBI読み込みステータスVBI読み込みステータスコマンド第57図はI/Oプロセッサに指定されたVBIラインバッファ上にステータス情報を戻させる。これ以上の詳しい点は表XXXXIXにある。フィールド記述cmdタイプこれをVBI読み込みステータスコマンドと識別するコマンドID番号=18。VBIラインステータスを要求されつつあるVBIライン番号。これが0である場合には、すべてのアクティブのVBIラインについてのステータス戻しを意味する。戻されたステータスは第58図に示すようにフォーマットされ、これについては表Iにさらに記載されている。rateこのVBIラインについてのデータレート。0=テレキャプションレート、1=フルレート。表LReadVBIBufferReadVBIBufferコマンド図59によって、I/Oプロセッサは、所定のVBI行のバッファから所定数のデータバイトを復帰させる。実際の復帰データバイト数は要求バイト数以下になる。詳細は表LIに示してある。表LI復帰されたデータは図60のフォーマットを有している。詳細は表LIIに示してある。表LIIFlushVBIBufferFlushVBIBufferコマンドによって、I/Oプロセッサは、特定のVBIバッファ内に存在する全てのデータを転送するか、データ収集を停止せずに、特定のVBI行のVBI処理をリセットする。最後のSetVBIコマンドによって送信されたパラメータによって、VBI処理が再度使用可能になる。このコマンドは、StopVBIコマンドによって延期されたVBI処理を再度使用可能にする。もしデータが転送される場合は、ReadVBIBufferコマンドの場合と同じ応答フォーマットになる。詳細は表LIIIに示してある。表LIII受信グループ受信グループまたはRGは、結合チャンネルラインナップを有する、名前が呼ばれるエンティティである。受信グループは、大別すると、地上、有線および衛星の3種類に分類される。その例が表LIVに示してある。表LIVいくつかのRG、特に有線RGは、関心を引くとともに、マーケティングやその他の業務にも役立つかもしれない関連情報を入手することになる。そのような情報の若干の例:連絡名電話番号ファックス番号ADIDMA各StarSight加入者ユニットが、メンバー、つまり、いわゆる唯一のRGであると考えられる。運用が開始された場合には、加入者ユニットには、どのRGに所属しているのかが知らせられなければならず、その結果、そのRGに相応しいラインナップが表示されることになる。ラインナップの説明ラインナップは、特定のRGで受信されるチャンネルの実際のリストである。事実、いつでも、RGおよび活動中ラインナップの1対1マッピングが行われる。各RGについて活動中ラインナップはたった1つであり、各活動中ラインナップについてRGはたった1つである。2つのRGが時々同じ受信チャンネルリストを有する可能性がある。また、一方のリストが変更され、もう一方のリストが変更されない可能性も同じようにある。この理由から、各ラインナップはRG専用である。ラインナップは、通常は、物理的な地図テレビ局および有線システムの視聴範囲を示す地図を見ることによって得られる情報の記述であると考えることができる。そこには、そのラインナップがカバーすることのできる物理的エリアで利用可能なチャンネルに関する情報が含まれている。ラインナップの目的は、特定のRGのどのチャンネルがデータによる支援を必要としているのかを定義することにある。ケーブルテレビおよび地上テレビの物理的エリアがきちんと定義されていることから、そのエリア内のテレビ視聴者が受信可能になる視聴可能チャンネルはよく分かっている。これらのチャンネルが、特定のRGについてどんなリスティングデータを伝送するのかを知るために必要とされるラインナップを構成することになる。多重ラインナップマップの場合には、同じエリアをカバーまたはオーバラップすることが可能である。この例としては、2軒の隣接する家庭で、一方が家庭用アンテナでテレビを受信しており、他方が有線テレビを視聴している場合が考えられよう。この場合は、有線テレビ加入者は、有線によって、多くの、異なるチャンネルを受信していることから、非有線加入者の隣人とは異なるRGに属していることになる。上記の場合は、両RG用のStarSightデータは1つのPBS局から伝送され、各加入者ユニットは、その加入者ユニットに定義されたデータを視聴することになる。地上テレビの場合は、特定のRGは1から数10のチャンネルを含んでいることがあり、フリンジエリアにある電波の弱い局を含んでいることがある。有線システムの場合は、ラインナップは非常によく定義されており、有線システムの全ての加入者には同一である。衛星放送の視聴者にとってのラインナップは、東海岸と西海岸で若干の違いはあるかもしれないいが、全米の視聴者にはほぼ同じであり、アメリカの大陸部の全てを1つのグループがカバーしていると言えよう。ファイルレイアウト仕様局リストは、1つの地上局または衛星フィードの基本的な特徴を識別および記録している各記録を有する記録から構成されている。非編集局および再放送局を取り扱うために、フィールドを使用して、もしあれば、どこで局のスケジュール情報が得られるかを指定する。もし局が現在編集されていない場合は、このフィールドの数値はゼロに設定される。もし異なる局IDを使用してスケジュール情報が提供されているつまり、この局が再放送局である場合は、このフィールドは他の局のIDを含んでいることになる。もし局が通常に取り扱われているスケジュールが編集され、そのIDによってデータが提供されている場合は、このフィールドは空けておかれる。ステーションリストには、売り手によってStarSightに提供されるラインナップの中にそのフィードが存在するか否かにかかわらず、売り手がその代理としてStarSightにデータを提供する各局やフィードに対応する入力を含むことが要求される。これは、ショーまたはテストのために、StarSightが局にとってのデータの必要性を時々確認するからである。このような場合は、StarSightが、この局を含むラインナップを内部的に作成し、売り手にはスケジュール情報だけの提供を求めることもある。一般的には、売り手は、アメリカの全ての定期地上局およびフィードならびに特定の指定ローカルフィードについて、データをStarSightに提供するものとする。局リストは、これらの各々を識別する入力、これらに関する全ての別名の入力、および売り手によってStarSightに提供されるラインナップの中に登場する全てのフィードに関する入力を含んでいなければならない。他のフィールドは、局呼出し文字または衛星フィード名称、名称の通常略号、発効日および失効日局呼出し文字の変更に関するものを示している。ラインナップリストラインナップリストは、下記の2つのタイプの記録から構成されている。RG記録RG記録は、連絡名、所在地、サービスのタイプ、昼間割引時間等のような、1つのRGに関する詳細を説明している。ラインナップ記録各ラインナップ記録は、そのRGによって受信されるチャンネルの1つを記述したものである。特定のRG内のチャンネルを記述した全ての現在有効な記録の総体が、そのRGのラインナップを構成している。現在有効ではない記録が存在することもあるが、それは、発効する日時が将来であるか、あるいは、失効した日時が過去であったという理由によるものである。各記録は、関連するRGおよびチャンネルを明確に識別し、現在の日時の知識とともにその記録が現在有効か否かを決定するのに十分な情報を含んでいる。さらには、複合チャンネルの構成を可能にする情報も含まれている。ラインナップリストは、完全なラインナップリストが最後に伝送された後に修正されたRGのラインナップだけからなるラインナップリスト更新を伝送することによって、増分方式で更新することができる。特定のRGラインナップを更新する場合は、完全な更新を行わなければならないことに注意すること。つまり、ラインナップリスト更新はRGの一部だけしか更新しないことがあるが、しかし、更新されるRGは、そのRGに関する全てのラインナップ情報を伝送することによって更新されなければならない。全ラインナップリストの伝送は毎週、ラインナップリスト更新の伝送は毎日行われることになろう。ファイル命名規則局およびラインナップリストのファイル名は下記のように割り当てるものとする。各ファイルの基本名は、年月日を示す6文字からなるものとする。基本名はピリオドによって接尾部から分離するものとし、接尾部は、下記の表LVに従って、ファイルのタイプを示すものとする。表LVファイル内容これらのファイルは、20~7Ehexの範囲を含むASCIIテキストから構成された記録を含むことになる。この唯一の例外は、ASCIIラインフィードである、記録ターミネータOAhexの端である。ファイル転送局およびラインナップファイルは、復帰改行終了記録からなるパイプ区切りフォーマットPDFASCIIファイルである。これらのファイルはStarSightに電子的に転送しなければならない。複合チャンネル複合チャンネルの発行はラインナップを通じて取り扱われる。もし単独同調可能チャンネルが複数の番組源から定期的に番組を放送している場合は、そのチャンネルが複合チャンネルとして知られている。例:有線チャンネル41が1日のある部分はVHIを放映し、1日の別の部分にはHBOを放映することがある。ラインナップは、複合チャンネルになる各フィードに同じ同調チャンネルを割り当てることによって、これに対処する。その複合にどんなデータをコンパイルするかを決定するためには、開始および停止時間を使用することができる。複合チャンネルが地上テレビや衛星放送で見られることはめったにないが、有線プロバイダにとっては全く当たり前のことである。局ファイルリストファイル内の各記録は、表LVIに定義されたフィールドからなる。各フィールドは、ASCIIパイプ7Chex文字によって、次のフィールドから区切られている。もし利用可能なデータがない場合は、指定デフォルトサイズが0のフィールドが空のまま残されることがある。最小サイズが非ゼロのフィールドは必須である。注:局リストの入力が削除中であることをStarSightに知らせるために、StationIDおよびLastModifiedDate/Timeフィールド内のデータを含み、その他の全てのフィールドが空の局リスト記録が伝送される。これは、StarSightに対して、その局に関する内部処理の実施を停止するよう伝えている。局リスト記録フォーマット表LVIステーションリストレコードフォーマットの詳細な説明は、表LVIIに与えられている。表LVIIIステーションリストレコードの例は、表LVIIIに与えられている。表LVII上に述べたデータを含む記録は以下の通りである:ラインアップリストラインアップのデータベースは、各RGの現に有効である各チャンネルのための一つの記録を含み、各RGの将来のラインアップも含むかもしれない。チャンネルは、分離されて定期的な供給である。複合チャンネルは複合の各部分に対する分離した記録を使用して説明される。幾つかの協定が、スターサイトStarSights処理負荷を最小にするために遵守されなければならない。1.各フィールドは、ASCIIパイプ7Chex文字によって次のものから境界を定められる。もしデータが入手できなければ、0の特別な誤った寸法をもったフィールドが空のまま残り、ゼロでない最小寸法をもったフィールドが必須である。2.RGが排除されるというスターライトを知らせるために、満了日/時フィールド内の満了する特別な日/時を包含することを除き、ラインアップ記録計数フィールド内の0と正常観察RG記録が伝達される。他の全てのフィールドがこの明細書についてフォーマット化される。これはスターサイトに信号を送り、特別な日/時の時にこのRGと組み合う内部処理をすることを止める。注:このタイプの情報を処理することに固有の遅れがあることによって、新しいRGを特定するためにこのRG番号を再使用することは良い考えではない。このような性質の問題がないということを確実にするために、RG番号は絶対に再使用されるべきでない。3.ラインアップは、このRGと組み合う全てのラインアップ記録によって直ちに追従されるRG記録と一緒に、常に全体的に述べられなければならない。4.RGを定義する現在及び将来のラインアップの両方があるときは、最初に二つの有効なデータのより早い方のものを持つRG記録と一緒に伝達し、次に現在のラインアップの全てによって追従し、続いて将来の有効データを有する他のRG記録が将来のラインアップのためのラインアップ記録の全てによって追従される。5.何らかのラインアップデータが所定のRGのために提供されるならば、RGのための全ラインアップ現在有効なものの全て及び定期的に有効になるものの全てを含むが提供されなければならない。6.所定のRGを扱う全ての記録はファイル内で隣接していなければならない。例えば、同一ファイル内でRG100を扱い、次にRG101を扱い、次にRG100を扱うという記録を持つことは許されない。7.ラインアップ情報は次のキーの値について上昇順序で区分される。a.RG番号b.有効データc.電源d.同調チャンネル8.RG記録内のこの名前の任意のフィールドにおけるこの情報を提供することによって、所定のラインアップにおける情報のための満了日/時を明確に予定することができる。9.ラインアップの如何なる記録に対する変更も、そのラインアップのためのRG記録内のラインアップ情報最終日/時修正を更新することによって反映されなければならない。10.最終日/時修正のためのラインアップ記録にフィールドがないということに注意せよ。これはRG記録内のラインアップ情報最終日/時修正を更新することによって処理される。ラインアップ情報最終日/時修正フィールドの更新は、RGに対する全ラインアップが更新され変更されたということを意味する。11.有効な日/時のためのラインアップ記録内にフィールドがないということに注意せよ。これはRG記録内の有効日/時修正を更新することによって処理される。有効日/時修正フィールドの値は、このRG記録を追従するラインアップ記録の全リストがその日及び時に有効になるあるいは有効になったということを意味する。RG記録フォーマットが表LVIIIに示される。表LVIIIRGフィールドの説明フィールド1.記録タイプ1バイトこのフィールドは常に、上方の場合のASCII文字RまたはSの一方を包含し、この記録がRG記録であるということを特定しなければならない。もし記録タイプがSならば、この記録は特別な衛星を述べるために使用され、あるフィールドの意味は再定義以下に詳細に述べるされる。両方の記録のタイプは同じ数のフィールドを持つが、記録タイプがSであるときは、幾つかのフィールドは常に空である。2.ラインアップ記録計数1-4バイトラインアップ記録の小数はこの記録を追従する。すなわち、次の記録の数はこのRGのラインアップを完全に定義するために使用される。3.RG番号8バイトこの数はこのRGの独特の十進法8桁のIDである。RG番号は再指定されることはできない。一度RG番号が指定された場合でも、例えば、会社がビジネスから外れることによって、結局使用から外れるかもしれない。しかし、この場合であってもそのRG番号は再使用されるべきでない。4.RGグループタイプ1バイトラインアップタイプはこのRGがどんなタイプのサービスを目標としているかを定義する:0=TV放送、これは従来のTVチャンネルRGである。1=標準ケーブルシステム、これは従来のケーブル周波数計画である。2=IRCケーブルIRCは変形ケーブル周波数計画である3=HRCケーブルHRCは他の変形ケーブル周波数計画である4=ケーブルシステム、未知の周波数計画5=衛星RG名もし記録タイプがRならば120バイトまで衛星名もし記録タイプがSならば可能な限り曖昧でなくRGまたは衛星を述べるために120文字までの冗長な記述を使用せよ。もしケーブルRGならば、適当ならばMSO名フィールドを使用せよ。RG名はそれ自身のラインアップを持つことができる法人を独特に特定すべきである。例えば、ケーブルシステムの各ヘッドエンドはそれ自身のラインアップを持つことができ、例え只一つの番号であり、あるいはケーブルシステム名と番号の独特の組み合わせであったとしても、各ヘッドエンドは何か独特の名前を持つべきである。6.ケーブルシステム名もし記録タイプがRならば120バイトまで衛星略号もし記録タイプがSならばもしケーブルならば、これは多重システムオペレーターMSOによって操作されるシステムであるかもしれない。もしそうならば、このケーブルシステムを特定するために共同体で一般に使用されている名前を命名せよ。もし衛星ならば、この衛星を呼ぶために通常の文字/数字の組み合わせ、例えばGalaxy3のためのG3の名前を命名せよ。7.MSO名もし記録タイプがRならば120バイトまで衛星オペレーターもし記録タイプがSならばもしケーブルならば、これは多重システムオペレーターMSOによって操作されるシステムかもしれない。もしそうならば、このケーブルシステムを特定するために共同体で一般に使用されている名前を命名せよ。もし衛星ならば、これは多重システムオペレーターMSOによって操作されるシステムであるかもしれない。もしそうならば、MSOを命名せよ。もし衛星ならば、衛星のオペレーターの名を命名せよ。8.RGローカルコンタクト0から120バイトケーブル会社におけるローカルコンタクトの名前9.コンタクト電話番号20バイトまでケーブル会社のローカルコンタクト担当者の名前10.街道住所120バイトまでケーブル会社のローカルコンタクト担当者の住所11.市120バイトまでコンタクトが配置された市の名12.州0~2バイト、アルファこれは、その州の米国郵便サービスの2文字短縮である。13.郵便番号0~10バイト郵便番号は、5バイト、-ダッシュ記号4バイトとしてフォーマットされる。稀に始めの5バイトだけしか使用可能でない。14.DMAネームレコードタイプ=Rである場合120バイトまで軌道オービット位置レコードタイプ=Sである場合このRGがあるDMAを示すのにニールセンが使用する名前は15.DMAランクレコードタイプ=Sであるときには常時エンプティーである3バイト、数字16.ADIネームレコードタイプ=Sであるときには常時エンプティーである120バイトまでこのRGがあるADIを示すのにアービトロンが使用する名前は17.ADIランクレコードタイプ=Sであるときには常時エンプティーである3バイト、数字18.コミュニティーサーブドレコードタイプ=Sであるときにはエンプティーである300バイトまでこのRGによって供給された、町、サークル、コミュニティーズ共同体、区域、地区、又は、郡のコンマ分離されたリスト。このリストは、全部ではなく間違ったとしても、余りにも少なくはなく余りにも多い名前を含む側では可能な限り簡潔、且つ、正確であるべきである。19.コメント300バイトまでこのRGをデータエントリーフィールズを行う人に近い人又は他の人と区別するのに役立つ任意の特別な情報は、特に、これが、新規加入者がどのRGにいるかを確認する試みに関するときには、気づくべきスターサイトにとって重要である。20.RGジェネラルインフォメーションラストモデファイドデータ/タイム10バイト、数字GMTデータ及びタイム。このレコードが最後にモデファイされた。フォーマットyymmddhhmm。例えば、930711051421.RGラインアップインフォメーションラストモデファイドデータ/タイム10バイト、数字GMTデータ及びタイム。このRGと関連した任意のラインアップは最後にモデファイされた。フォーマットyymmddhhmm。例えば、9307110514注意:値0000000000が、リザーブされ、特別な意味このRGに使用可能なラインアップはないを有する。22.有効なデータ/タイム10数字GMTデータ/タイム。以下のラインアップが有効になる。慣用的であるか或いは未だ有効でないラインアップ情報を指定にするのに使用されているが、知られている将来のデータ及びタイムで有効になる。このフィールドは、情報が有効であったか或いは有効になるデータ及びタイムを指定にする。23.満了データ/タイムエンプティー又は10数字GMTデータ/タイム。このフィールドは、このピースのラインアップインフォメーションが有効でなくなるときに将来のデータ及びタイムを指定する。明確にされたこのデータ/タイムが、最後の分を含まないと仮定すると、ラインアップがこの分の最後ではなく、最初で終わることを意味する。RGレコードの例を表LIXに与える。表LIX上記指定されたデータを含むサンプルレコードは以下の通りである。ラインアップレコードフォーマットを以下に表LXに示す。表LXラインアップレコードの詳細な説明は以下のとおりである。1.レコードタイプ1バイトR=ノーマルラインアップレコード、T=サテライトTVROラインアップレコード2.RGナンバー8数字3.チューナブルチャンネル1~3バイトこれは、このプログラムを受信するため貴方が調整することになるチャンネルである。これは、レコードタイプがLであるときにはケーブルシステムの、また、レコードタイプがTであるときにはTVROのトランスポンダーナンバーのケーブルチャンネルナンバー又はレターである。4.ソースレコードタイプ=Tであるときにはエンプティー幾つかのケーブルシステムは、2又は3以上の別々のケーブルの中から選択する能力を有する、すなわち、これがこのようなシステムであるときには、どのケーブルを使用するのかを指定する。これがシングルソースシステムである場合にはエンプティのままにする。5.チャンネルID12バイトこれは、このチャンネルのスケジュールインフォメーションを確認するのに使用される唯一のユニークナンバーである。これは、そのユニークなスナヒションIDを使用する、ステーションリストに構成されたステーションのうちの一つに関する。6.チャンネルタイプ1数字これは、いかなる種類のチャンネルかケーブル及びTVROラインアップに適用するa知らない1=ベーシック2=エクステンディッドベーシック3=プレミアム4=PPVbベンドウズリクエストの決められた意味である7.デイ0~7バイトこれらは、このフィードが使用される曜日である。非コンポジットチャンネルに関しては、曜日は1234567であろう。非コンポジットケースに関しては、これは非常に一般的なケースであるから、フィールドをエンプティのままにしておくことは七日すべてを指定することに等しいことを定義する。七日までの如何なる組合せをこのフィールドで指定することができる。これらのナンバーは、以下の意味をもったシングルバイトである。1=日曜日2=月曜日3=火曜日4=水曜日5=木曜日6=金曜日7=土曜日かくして、257の曜日フィールドは月曜日、木曜日及び土曜日を指定する。8.スタートタイム4バイトこれはスタートタイムGMTであり、このデータからこのチャンネルが使用されるべきである。非複合チャンネルnon-compositechannelに対して、スタートタイムは、いつも、0000時GMTである。ストップタイム4バイト4bytesこれが、このステーションからのデータに関するストップタイムGMTである。非複合チャンネルnon-compositechannelに対して、ストップタイムは、いつも、0000時GMTである。データ/時間特定は、最後の分を非包含していないnon-inclusiveと仮定され、この分の終わりではなく、開始において、ラインアップが満了することを意味する。レコードの終了ASCIIラインフィード0AHexまたはキャリッジリターン0Dhex例:2ケーブルシステムに関する現在および将来のデータを含むラインアップ下記の仮想ラインアップは、2つのケーブルの各々で2つのチャンネルだけを使用するシステムを示し、これに対して、現在および将来のラインアップが存在している。このデータは上述したようにしてソートされ、即ち、ソースAに対する現在有効な情報が、最初に与えられチャンネルナンバによって上昇する順番にソートされ、続いて、ソースBに対して現在有効な情報が、次いで、ソースAに対する将来の情報が、最後に、ソースBに対する将来の情報が与えられる。太文字すなわちボールドフェースのレコードは、2つのラインアップ間で実際に異なっているレコードだけであり、ケーブルBのチャンネル2が、再び与えられる。しかしながら、将来のラインアップが、全体として、与えられることに留意されたい。例:RGを削除下記のこの例は、上述した例、0400GMTで1994年1月15日有効、で説明したRGをどのように削除するかを示す:これは、ファイルされた満了データ/タイムを備えた、ただの、通常のRGレコードであることに留意されたい。通常のケースとは異なり、ラインアップレコードフィールドで0で示されるように、引き続くラインアップレコードがない。用語集以下の用語は、下記の説明のように、使用される。この用語集に挙げられていない用語は、リスティングデータ業界の人およびこれに関連する業界の人に知られているものである。CAC:コミュニティアクセスチャンネルチャンネルChannel:テレビ局に割当てられた別々の周波数バンド複合チャンネルCompositeChannel:1つのチャンネルで、2または3以上のPOがプログラミングを時分割することDP:データプロバイダープログラムリスティングデータのプロバイダデータプロバイダDataProvider:テレビプログラムリスティングデータの供給者フィールドFIELD:レコードのサブパートレコードは、複数のフィールドからできている。GMT:グリニッジ標準時世界標準時HRC:ケーブルシステム周波数転送標準規格スターサイトStarSight:スターサイトテレキャストインコーポレーテッドIRC:ケーブルシステム周波数転送標準規格ローカルLocal:ケーブルプロバイダから35マイル以内にあるテレビ放送局マップMAP:受取グループRGの物理的領域へのリファレンスMPAAMotionPictureArtistsAssociation:映画人協会視聴者のための適当なガイドラインMSOMultipleSystemOperator:マルチシステムオペレータが2以上のケーブルシステムを操作する。PO:プログラムオーガナイザーテレビ局、テレビケーブルプロバイダ、サテライトビデオプロバイダプライムタイム:最高視聴率時間を考えられている夕方の時間帯プログラムオーガナイザー:POを参照のことPST:太平洋標準時西海岸時間レコードRecord:ファイル内の定義された一連のASCIIキャラクタRG:レセプショングループ、明確な地理的領域で利用可能なテレビチャンネルランタイムRuntime:ショウまたは映画の分単位の長さサービスプロバイダServiceProvider:ケーブルシステムのヘッドエンド、スターサイトのプログラムデータを搬送するテレビ放送局ショウリストShowlist:本明細書で説明しているようなスケジュールリスティング情報を収容しているパイプデリミットフォーマットPipeDelimitedFormatのレコードを収容しているファイルスタートタイムStartTime:ショーが始まる地方時間時-分SU:サブスクライバユニット用アブレビエーションAbbreviationforSubscriberUnit、スターライトデータをデコードするために使用する。SyndEx:シンジケート排他性SyndicateExclusivityTCP/IP:伝達制御プロトコル即ちトランスミッションコントロールプロトコル/インターネットプロトコルTransmissionControlProtocol/InternetProtocol特定ゾーンspecifiedzone:放送局からの所定の距離あるいは領域この説明の概略以下の説明は、スターサイトレテキャストにテレビリスティングデータを送ることに関連して、データプロバイダの要件を詳細に規定する。これは、ショウリストのフォーマットパイプデリミットファイルを詳細に規定する。これらのファイル内の各レコードのフォーマットも、詳細に規定する。スターサイトへのこれらのファイルの電子的転送の詳細およびSyndExのような全国的番組オディティーodditiesによって求められる特別なファイルの要件および詳細も概説する。スターサイト電子データベースを作るのに使用されるショーリストレコードのフォーマットは、われわれのデータベースプログラムの中に、高度に集約されており、これらの、フォーマットは、スターサイトテレキャストの書かれたコンセント以外は、変える或いは変更する必要がない。使用されるフィールドのシンタックスおよび意味が、予め、文書で示されているならば、ヴェンドールデファインドフィールドVendor-DefinedField:後述の使用が許される。ファイルトランスファーの仕様ファイルトランスファーメディアおよびスピードショーリストファイルは、ルーターRouterに接続されたDPのエサーネットEthernet登録商標およびディジタルリースラインdigitalleasedlineを通して、標準TCP/IPプログラム、FTPを使用して、スターサイトテレキャストのUNIX登録商標登録商標ファイルシステムに電子的に送られることになる。リースラインのオペレーションスピードは、全てのデータファイルを、合理的な時間で、転送するのに十分である。ファイル転送プロトコルおよび圧縮データは、TCR/IPファイル転送プロトコルあるいは互いに了承されている他のファイル転送プロトコル規格を使用して、スターサイトテレキャストのUNIX登録商標ファイルシステムに転送される。このファイルは、転送されたデータがかさばるので、我々のUNIX登録商標ファイルシステムを互換性のある互いに了承されたデータ圧縮アルゴリズムを使用して、圧縮する必要がある。ファイル転送の詳細ファイルは、ファイル転送が0800時RSTまでに完了するようにして、週に七日、毎日、スターサイトに転送される。毎日のファイル転送は、ファイル転送を実行するのに使用されるロジンネームloginnameに対応するホームディレクトリの中である。スターサイトへのメインファイルダウンロードは、いつも、12日先のデータである。したがって、今日が第10日目であるなら、今日のデータダウンロードは、第22日目の0000時GMTに始まるスタートタイムの間である。下記のGMT仕様書参照のことデータファイルが、毎日、送られてくるので、既に転送されたプログラムリスティングを更新するために、あるメカニズムが必要である。これは、Updateファイルによって達成される。このUpdateファイルは、最新のUpdateファイルが作られているので、行われた全ての変更のレコードを含んでおり、未だactiveな日の全てのデータを変更する。activeなデータは、今日の日付けで始まり、引き続く11日間、即ち、今日から今日のMainファイルによってカバーされ、その日を含まない全ての日にわたる日として規定される。差し込まれるサービスのクラスが、FlashUpdatesを必要とし、このサービスのクラスが、全ての変更の入力後、5分以内に、FlashUpdatesファイルを提供する。このようなファイルは、一日中、スターサイドへのリースラインを通して、伝わるtrickle。ショーリストファイル紹介スターサイトテレキャストは、特別にフォーマットされたデータを、アメリカ合衆国中にあるスターサイトサブスクライバーに転送する。このデータは、スターサイトと呼ばれ、サブスクライバが、テレビスクリーン上にテレビプログラムリスティングを対話式で表示できるような、オンスクリーンプログラムガイドをつくるために使用される。このネットワーク用の情報は、われわれのUNIX登録商標コンピュータ上で走るコンピュータプログラムによって作られたデータベースに由来する。データベースを作るために、データプロバイダーは、スターサイトに、ショーリストファイルと呼ばれるプログラムリスティングファイルを供給することを求められる。GMTショーリストファイルは、テレビプログラムリスティングの年代順のレコードのセットである。スターサイトは、第1のレコードが、0000時GMTのスタートタィムを有しているショーファイルリストあるいは0000時GMTの後に始まる最初のショーを必要とする。このように、各ショーリストファイルの第1のレコードが、真夜中のあるいはその後の第1のショーに関するものであり、ショーリストファイルの最後のレコードが、2400時GMTの前に始まる最後のショーに関するものである。換言すれば、所与のMainファイルは、一日が、0000GMTで始まり2400GMTで終わる状態で、一日分の全ての、POに関するレコードのみを収容している。逆に言えば、Mainファイルは、その日の、全てのPOに関するショーを収容していなければならない。全てのショーリストレコードのスタートタイムフィールドがいつもGMTによって付与されているので、データプロバイダは、年に2回、サマータイムを考慮しなければならないことを警告される。すなわち、一度は、春にサマータイムが導入されるときであり、もう一度は、秋に標準時間に戻るときである。この時間の変更は、POがサマータイムの無い州あるいは国に住んでいない限り、全てのプログラムデータおよび全てのPOに対して行われなければならない。サマータイムによって、DPは、春には1時間進める調整、そして、秋には1時間遅らせる調整によって修正されたPOファイルに、レコードを集めるすなわち転送することになる。番組時間をGMTに調整すると、番組リストレコードは、常に、昼間のセービングトランジションデータであってもギャップ又は重複無しにすぐ後に続くべきである、ということに気付かれたい。シンデックスSyndEx及びネットワークの排他性FCC規則によると、TVケーブルプロバイダは、ローカルTV放送局のプログラムと時間及び内容の両者において直接的に衝突するプログラムを阻止する地方局の要求でことが求められる。このことによって、ケーブルプロバイダは、衝突時間の間、そのチャンネルでのプログラムを置き換えることができる。阻止時間の間のスロットのための正しいスケジュールをデスプレーするために、この阻止の前の24時間以内にシンデックス阻止についてスターサイトStarSightに知らせなければならない。スポーツ削除FCC規則によれば、仮にスポーツイベントの24時間以内に所定のパーセンテージのチケットが売れなければ、地方のTV放送からスポーツイベントを削除することができる。スターサイトは、この削除についての情報を求める。混成したチャンネル幾つかのケーブルプロバイダは、一つのケーブルチャンネルを数多くのプログラムセグメントに分割して、別の時間に、一つのチャンネルで2以上のプログラム創作者からのプロブラムを挿入してもよい。ある時間にどのようなサービスがそのようなチャンネルで行われるかを明確に説明する情報をスターサイトに提供することがDPに求められる。この情報は、混成プログラムが生じるチャンネルについてのPOリストの中に規定される。混成チャンネルのための数多くのPO情報は、上述したRGリストフォーマットの詳細RGListFormatSpecificaitonの中で取り扱われる。コミュニティアクセスチャンネルFCCは、各ケーブルプロバイダに、公共の使用のために少なくとも一つのコミュニティアクセスチャンネルCACを支援することを要求する。私的な市民は、このような公共の観点、公共の情報又は承認された公共プログラムのためにこのチャンネルでプログラム時間を求めることができる。スターサイトは、各CACのためのプログラム情報と一緒に番組リストを要求し、CAC番組リストネームは、各ケーブルシステムの名前に拘束される。低電力局LPTV低電力多くは個人的に所有するのTV放送局が、米国の多くの領域に存在する。このような低電力局の幾つかは、DPによるプログラムリストサポートを要求するであろう。このことは、各LPTVのための番組リストファイルに基づいて各局毎に処理される。シンデックス、ネットワーク排他性、スポーツ削除、混成チャンネル、公共のアクセスチャンネル、低電力局のためのデータでの正確なフォーマットを決定すベきである。番組リストファイルの定義番組リストファイルは、テレビジョンプログラムリストを含む数多くのレコードからなる。この番組リストレコードは、所定数のフィールドを有する。殆どのフィールドは、可変のサイズの幾つかのフィールドを備えた所定のサイズのものである。このことは、番組リストレコードに最小及び最大ビットサイズを与える。正確な最小/最大サイズに関する番組リストレコードフィールドの定義を参照。レコードターミネータの端、つまり0Ahexラインフィードを除いて、番組リストファイルは、ASCII記号と、その前後に20hexないし7hexの範囲のものだけを含む。このことは、制御コード、新しいラインコード又はレコードコードが番組リストファイルの一部になるのを防止する。番組リストファイルのネームこの記述において3種類のファイルを述べる。これらは全て、同じレコードフォーマットを有するが、これらは幾分異なって使用される。これらを所定のデータに対してメインファイル、アップデートファイル、フレッシュファイルと呼ぶ。メインファイルは、ある特定のデータに関するデータだけを含む。メインファイルは、このようなデータに関する全てのデータの初期ロードに相当する。アップデートファイルは、早い日に提供された番組リストデータを改定する情報を含む。このアップデートファイルは、入り込んだ新しい情報に依存した、数日を包括するデータを含む。フレッシュファイルは、入り込んだ更新情報を含む。メインファイルのネームは、MAINの文字と、これに続いて、日付けを表す4つの数字と、ピリオッド及びサフィックスDATとからなる。例えば、MAIN0812のときに、MAIN0812.DATが有効なメインファイルネームである。アップデートファイルネームは、UPDTの文字と、これに続いて、日付けを表す4つの数字と、ピリオッド及びサフィックスDATとからなる。例えば、UPDT0812のときに、UPDT0812.DATが有効なメインファイルネームである。フレッシュファイルネームは、FLSH]の文字と、これに続いて、日付けを表す4つの数字と、任意であるが、ピリオッド及びサフィックスDATとからなる。例えば、FLSH0642のときに、FLSH0642.DATが有効なアップデートファイルネームである。異なる種類のコンピュータへのインターフェースをもたらすので、ファイルの命名の変更は、現存する全てのコンピュータオペレーテングシステムと実際上一緒に作業するように選択される。ファイルネームの中のアルファベット文字は、全てのアッパケース又は全てのロアーケースのいずれかであり、混合したケースは許されない。各POデータは、そのPOに関する各レコードの第1フィールドでPOを特定することによって特定される、ファイルそれ自身の部分を有する。このID番号12バイトを超えないは、ASCII数字0ないし9からなり、局リストファイルでのこのPOに割当られた局IDナンバーで特定され、これは別の書類で特定される。番組リストファイル長さ各ファイルは、この書類のいずれかで特定される番組リストレコードを含む。このファイルは、1日24時間を埋めることが要求されるレコードを含む。所与のファイルの中の各レコードは、実行時間フィールドと、番組リストレコードのスタート時間フィールドで特定されるスタート時間とで定義されるようなプログラム長さを有する。このスタート時間および実行時間によって、ファイルの内容が、時間順序において隙間のない1日24時間連続したものになる。連続したファイル全てのメインファイルレコードは、日々及び各週などで何らの時間的隙間のない連続したスタート時間及び実行時間を有する。番組リストレコードのフォーマットを表LXIに示す。表LXIエンドオブリコードマーカーおよびエンドオブファイルマーカーは、単一のラインフィードOAhexおよび/またはキャリッジリターンODhexとなる。一般的なプログラミングに対するショーのタイプが表LXIIに示されている。表LXII注:ショータイプ指示子は、つねに、一定の3キャラクタ長を有している。必要があれば、さらに、指示子を追加して用いてもよい。スポーツプログラミングに対するショーのタイプが表LXIIIに示されている。表LXIII注:ショータイプ指示子は、つねに、一定の3キャラクタ長を有している。必要があれば、さらに、指示子を追加して用いてもよい。詳細なショーリストフィールドクラスの説明。ショーリストリコードフィールドは4つのクラスに分けられている。それらは、プログラム情報を含むデータフィールド、データフィールドを分けるデリミタフィールド、リコードを終了させ、分けるリコードターミネータおよびファイルターミネータのエンドである。フィールドクラスの説明。以下の仕様における全てのフィールドは、バイトで表された最小および最大サイズを有していることに注意されたい。多くのフィールドは、一定長を有し、所定長から変化してはならない。他のフィールドは、可変の最小および最大長を有しているが、その少数は、最小あるいは最大として定義される。一定長フィールドが意味のないデータを含んでいても、それは、適当なキャラクタを有する最小長に詰め込まれなければならない。最大フィールド長もまたくっつけられなければならず、どのフィールドも、その最大長を越えることは許されない。データフィールドテキストどのフィールドに含まれているテキストも制御コードを含んではおらず、全てのフィールドは、20ないし7Eを含んだ16進法値の範囲内にセットされたASCIIキャラクタのみを含んでいる。デリミタは、ショーリストリコードの異なるフィールドを分け、ショーリストリコード内で一意的であり、デリミタとして以外には、ショーリストリコード内で使用されない。等しい数のデリミタとデータフィールドがある。ショーリストリコードは、フィールド、デリミタ、,,フィールド、デリミタ、エンドオブリコードのパターンを有している。デリミタは、各リコードの最後のデータフィールドに続いている。エンドオブリコード全てのリコードは、ショーリストリコード内の最後のデータフィールドの最後のデリミタに続くエンドオブリコードターミネータで終了する。このターミネータは、ラインフィードOAhex用のASCIIコード、あるいは、キャリッジリターンOAhex、あるいは、いずれかの順序の双方である。エンドオブファイルエンドオブファイルターミネータは、テキストストリングZZZZZEOFとして定義される。Showlistfileの最後のデータリコードの後に、全てのデータが転送されたという信号まで、エンドオブファイルターミネータがなければならない。詳細なデータフィールドの説明。フィールド1.ステーションID1ないし12バイトステーションIDは、このプログラムの発信元テレビ局、ケーブルチャンネルあるいはサテライトプロバイダを示すのに用いられるデータプロバイダによって指定されたステーションリストリコードフォーマット参照一意的数である。それは、10デシマルデジットを越えてはならない。他のキャラクタは許されない。2.スタートデータ8バイトプログラムが放映される時年、月、日のGMTデータを示す8バイト数。このデータは、与えられたファイル内における全てのリコードに対しd同じでなければならない。1ないし4バイトは、現在の年、たとえば、1991年を定義している。3ないし4バイトは月を定義し、1月は01、12月は12で定義される。5ないし6バイトは、01から31の日を表示する。3.スタート時間4バイト4バイト数はプログラム放映時間GMTであり、ミリタリータイムとして投入される。1および2バイトは、プログラムが放映されるGMT時間における時間である。例午前6時=06、正午=12、午後6時=18、午前0時=003および4バイトは、プログラムが放映される分である。例:1分過ぎ=01、1分前=594.ランタイム4バイト分で表したプログラム長。最小のショーshowランタイム長は、0005分で、最大長は、9999分である。スターサイトデータベースプログラムは、240分より大きいランタイムで、ショーを240分長の複数のショーに区切る。ランタイムデータは、表LXIIIに示されている。表LXIII上記ショーリストリコードフィールドのサンプルフラグメント5963215|1|991231|0900|0060|フィールド5.クローズドキャプション1バイトショーが終わると、このフィールドには、Yyesの見出しがつけられ、そうでないときは、Nnoの見出しがつけられる。6.ステレオ1バイトショーがステレオのとき、このフィールドはYyesとなり、そうでないときは、Nnoとなる。7.カラー1バイトショーがカラーのとき、このフィールドはCcolorとなり、そうでないときは、BblackWhiteとなる。8.タイプ3バイト映画、スポーツ、ニュース、トークショーなどを示すプログラムを示す簡略記号。表LXI、LXII参照。9.映画番号0ないし10デシマルデジットこの一意的数は、データプロバイダにより、ショーに対する一意的数として与えられ、放映された各ショーや映画のタイトルにより異なっている。一旦、この数が使用されると、そのタイトルを示すものとしてロックされて残る。これらのフィールドの例は、表LXIVに与えられている。表LXIV上述のショーのリストのレコードフィールドのサンプルフラグメントは、次のとおりである。Y|N|C|MOV|1234567890|フィールド10.グループID5バイトこの5バイトの数は、プログラムリンク無しについての00000から、65,535までの独特のプログラムリンクについての65535までである。この数は、記録する目的のために互いにリンクされる必要のある2以上の特別の番組プログラム又はショーの独特のグループ分けを考慮に入れる。これらの番組のリンキング又はグループ分けは、ROOT1及びROOT2におけるように、同じタイトル名を持たない番組の連続した記録について必要とされる。これらのフィールドは、もし、プログラムリンクが無いならば00000であり、もし、リンクがあるならば65,535までの独特の十進数であろう。この独特の数は、リンクされたプログラミングが完了し、この数に関係があるいかなるショーもデータベースから出て行ったときまで保持される。その時の後、この数は操作開始前の状態に戻され、もう一度使用することができる。永久的にいかなるショーのグループID番号をロックするための準備もない。65,535の上界は、この数がスターサイトStarSightによって2バイトの二進数に変換され、この方法でSUに送られるから必要である。もし、記録時間に両立しないことがないとすれば、この数は、チャネルの境界を越え、2以上の異なるチャネルでの2以上のショーの組として互いにリンクするのに用いられる。11.タイトル0から50バイトこのフィールドは番組のタイトル即ち名、スポーツチーム、トークショー等の名を含む。これらのフィールドの例は、表LXVに与えられている。表LXV上述のショーリストのレコードフィールドのサンプルフラグメントは次のとおりである。0000|人が飛ぶ|以下の4つの番組の記載のフィールドは、利用されるときに、異なる記載にすべきである。多数の記載は、同じ記載の多数の写しであるものとして示すものではない。記載は、それが完全に適合する最も小さいフィールドに入らなければならない。もし、4つの異なる番組の記載が存在するならば、次第に減少する順序で、記載を適当な長さのフィールドに挿入する。フィールド12~19:記載、批評、エピソードタイトル、製作年及び監督。12.番組の記載10から300バイトこれは番組、ショー、スポーツ競技等の最も長い記載である。13.番組の記載20から200バイトこれは番組、ショー、スポーツ競技等の記載の短くした記載である。14.番組の記載30から100バイトこれは番組、ショー、スポーツ競技等の記載の短くした記載である。15.番組の記載40から50バイトこれは番組、ショー、スポーツ競技等の記載に利用される最も短い記載である。16.批評1バイト映画について格付けする批評。これは、もし批評がないときは0であり、或いは、映画の質次第で、4を最高として、1、2、3又は4である。17.エピソード0から50バイトこれは連続もののショーのエピソードの記載の備えをする。18.年0又は4バイトこれは映画又はショーが製作された年である。19.監督0から25バイト映画監督の名前。これらのフィールドの例は、表LXVIに与えられている。表LXVI上述のショーリストのレコードフィールドのサンプルフラグメントは次のとおりである。人に翼が発生し、冬の間、南に飛び、外国の人口を助ける|人に翼が発生し、冬の間、南に飛び、国を助ける|人に翼が発生し、国を助ける|人が飛び、国を助ける|4|飛ぶ人|1999|ジョンフィルムメーカー|フィールド20~25:スターの名前20.スター1の姓0から25バイト第1の俳優の姓。21.スター1の名0から25バイト第1の俳優の名中間名。22.スター2の姓0から25バイト第2の俳優の姓。23.スター2の名0から25バイト第2の俳優の名中間名。24.スター3の姓0から25バイト第3の俳優の姓。24.スター3の名0から25バイト第3の俳優の名中間名。これらのフィールドの例は、表LXVIIに与えられている。表LXVII上述のショーリストのレコードフィールドのサンプルフラグメントは次のとおりである。フォールズ|ジョー|フローツ|メアリー|ソアーズ|サム|ジャンルのバイトのフィールド:フィールド26~49ジャンルのバイトのフィールドは3つのカテゴリーに分けられる。第1カテゴリーは、テーマTHEMEカテゴリーであり、これはショーのタイプの概略の記載の備えをする。スターライトは、テーマの検索が行われるとき、番組を別個のカテゴリーに分けるためにテーマの情報を用いる。第2カテゴリーはMPAA等級であり、映画を見る人にこのショーを見る人の適当な年齢の映画産業の等級を知らせるのに用いられる。この等級は、通常、映画についてのみ有効である。第3カテゴリーはMPAA等級を更に説明する。下記の24のデータフィールドは、番組のテーマのタイプの説明である。これらの24個のフィールドのうちで最大の5つのフィールドは、いずれの1つの番組についてもTとして設定される。いくつかのものは互いに両立せず、いつでも同時にTに設定されることはない。フィールド26.アクション27.冒険28.伝記29.古典30.コメディー31.ダンス32.ドキュメンタリードラマdocudrama33.ドキュメンタリー34.ドラマ35.ファンタジー36.歴史37.ホラー38.武道39.ミュージカル40.ミステリー41.オペラ42.ロマンス43.風刺作品44.科学45.サイエンスフィクション46.サスペンス47.スリラー48.西部劇49.状況喜劇SituationComedy上記フィールドを含むレコードフラグメントの例は、表LXVIIIに与えられている。表LXVIII上記番組リスト記録フィールドのサンプルフラグメントは以下のとおりである。T|T|F|F|T|F|F|F|F|T|F|F|F|F|F|F|F|T|F|T|T|F|F|F|MPAA指定:フィールド50-56フィールド♯50.G1バイト一般聴衆.51.NC171バイト17未満の子供なし.52.NR1バイト指定なし.53.PG1バイト親のガイダンス.54.PG1バイト13歳未満の親のガイダンス.55.R1バイト制限.56.AO1バイトアダルトオンリー.最も厳しい指定.これらのフィールドの例は表LXIXに示される。表LXIXフィールド50-56のサンプルフラグメントは以下のとおりである。T|F|F|F|F|F|F|MPAA指定:フィールド57-62フィールド♯57.冒涜1バイト58.裸1バイト59.バイオレンス1バイト60.アダルトシチュエーション1バイト61.アダルトテーマ1バイト62.アダルトランゲージ1バイト63.PPVイベント:フィールド63.1バイトこの番組がペイ-パー-ビュー-イベントであることを表示する場合にはTに設定、そうでなければF、わからなければ空白.これらのフィールド場のサンプルは表LXXに示される。表LXXフィールド5763のための記録フラグメントは以下のとおりである。T|F|T|F|T|T|T|フィールド64およびそれ以上:売主の規定するフィールドPPVイベンド以降のすべてのフィールドは、記録読み終わり暗号の義務的な末端を除いて選択的である。これらのフィールドの最小数および最大数は指示されておらず、これらのフィールドのいずれにおいても文字数については特別の制限は強制されない。売主は、記録のこの部分を使用して、指定されたフォーマットが護衛することを困難又は不可能にする番組に関連した追加のデータを提供することができる。各売主の規定するフィールドは、1つのデータエレメントを処方するのに使用されなければならない。フィールドの内容は自由フォーマットであるが、但し、前述したような、すべてのデータはプリント可能なASCIIテキストとして転写されなければならないという制約を伴い、VerticalBarhex7C、CarriageReturnhex0D、および、Linefeedhex0Aがデータとして発生しない。その理由は、これらの文字は、FieldDelimiterkVerticalBarおよびEnd-of-RecordCarriageReturnおよびLinefeedの意味をそれぞれ有しているからである。その意図は、売主になるべく自由に番組を記載させることにある。番組のタイプ、ジャンル、カテゴリー、サブカテゴリー等についての追加の情報並びに現在のところまだ期待することができないその他のタイプの情報をこれらのフィールドに配置することができる。これらのフィールドを使用する場合には、売主は、スターサイトに、これらのフィールドを売主がどのように使用するかについてなるべく十分に規定した文書を別に提供しなければならない。以下に示す例は、固定したフォーマットを処方するものではなく、売主の規定するフィールドが記録にその他の情報を補足することができるかもしれない1つの可能な方法を例示するにすぎない。この例では、売主が、通常のフォーマットに処方されている以上のカテゴリー化をスポーツ番組に対して可能にすると仮定する。売主はデータ自身とは別にフィールドを文書化しなければならない:たとえば、売主XYZが、スターサイトに以下の情報を含む文書を提供したとしよう。フィールド名内容または意味SPNAMEスポーツ名SPENV屋内または屋外SPSプロフェショナル、アマチュアまたはプロ-アマSPLIVEもしあれば、ゲームが生で進行中.SPTEAMもしあれば、これはチームスポーツである.売主XYZによって供給された売主の規定するフィールドにおけるシンタックス関する注記:フィールド名は、上記リストからの途切れのないASCIIストリングスペースおよびタブは許されないである。いくつかのケースでフィールド名があることは、真のの状態を意味し、その他のケースでフィールド名以上の値もまた特定される。値が特定されている場合には、フィールド名の後にシングルスペースまたはタブが続き、フィールド内のその他のすべてのものはその値を構成する。この情報の場合には、売主XYZは、以下の例に見られるような売主の規定するフィールドを有する記録をスターサイトに伝送することができる:第1の売主の規定するフィールド64SPNAMEホッケー第2の売主の規定するフィールド65SPSプロフェショナル第3の売主の規定するフィールド66SPENV屋内第4の売主の規定するフィールド67SPTEAM第5の売主の規定するフィールド68SPLIVEこの記録では、SPENVは、たとえば、フィールド♯66で特定されているとしても、それは、どの売主の規定するフィールドで特定されてもよく、また、全然言及されていなくてもよいことに注目されたい。同じ注意が、すべての売主の規定するフィールドにあてはまる。これは、データとしてフィールド名を与えるこの例で使用される方法の故にあてはまる。売主が、そのフィールドに対するデータがあろうとなかろうとすべてのフィールドが常に存在するというより硬性の慣習に固執することを選択する場合には、各フィールドの名称または用法は完全に位置に依存することとなり、個々に文書化することができ、かくして、データを備えたフィールド名を伝送する必要をなくすことができるであろう。いずれの方法も可能であり、売主は自分の好きな別の方法があれば、それが先に説明したルールの範囲内にあれば、これもおそらく可能であろう。上記番組リスト記録フィールドのサンプルフラグメントは以下のとおりである。SPNAMEフィールドホッケー|SPSプロフェショナル|SPENV屋内|SPTEAM|SPLIVE記録の終了LINEFEEDhex0Aおよび/またはCARRIAGERETURNhex0Dが記録の末端をマークする。ファイルの最後のデータ記録の後に、売主は、特別なエンド-オブ-ファイル記録を付けなければならず、この特別なエンド-オブ-ファイル記録は、テキストストリングZZZZZEOFで始まり、次に場合によっては売主に規定するフィールドが介在してEnd-of-Recordが続く記録として定義される。スターライトのソフトウエアは、コールサイン値を期待しているときにこのテキストストリングに遭遇することになる。その値の読みは、この保存された値と対照されて試験される。もしもそれらがマッチすれば、スターライトのソフトウエアはファイルの読み取りを停止させる。より重要なことは、このテキストストリングはファイル転写の完了の試験のためにも使用されることである。新しいファイルがデータ入力索引に現れた場合には、入力ソフトウエアは、このシンボルに対するファイルの最後の記録を検査する。もしも、そのシンボルが見つからなければ、データ転写は途中で中絶されてしまったか、或いは、まだ完了していないかのいずれかである。いずれのケースでも、データの装填を始めるのは未だ適当ではないということになる。この記録の定義は、この記録がZZZZZEOFで始まり、End-of-Recordで終了するということであることに注意されたい。記録の残りの部分は、売主の規定するフィールドに対する通常の制約の範囲内で、売主が規定することができる。ここで有用である補迫的な情報には、ファイルの記録の数のカウント、作成のデータ/時間、問題が発生したステーションのリスト、あるいは売主が関係のあると考えるその他のサマリ情報がある。特記:スターライト電子データベースを立ち上げるのに使用される番組リスト記録のフォーマットは我々のデータベースプログラムに高度に集積されており、これらのフォーマットは、スターライトテレキャストの書面による同意なくいかなる仕方でも変更してはならない。売主の規定するフィールドの使用は、使用されるフィールドのシンタックスおよび意味が使用前に明確に文書化されることを条件に許容される。番組リストファイル内で使用されるPO名称はスターサイトデータベースアプリケーションによって問い合わせが行われるので、PO名称は独特でかつ一定でなければならない。スターサイトとの正当な調整なしにPO名称を変更すると、スターサイトデータベースにおいてデータのミスマッチが起こることになる。本発明の前述の目的を達成することができる新規なテレビジョンスケジュール情報伝送システムおよび方法が提供されたことがいまや当業者には容易にわかるはずである。このシステムおよび方法は、バブスクライバデータ処理システムにおいて低コストのマイクロプロセッサにより実施できる。このシステムおよび方法では、テレビジョン番組スケジュールデータは、テレビジョン番組スケジュールデータのサブセットサーチを実行するため大量生産された消費者製品において使用されるのに適した低コストのマイクロプロセッサの使用を許容する仕方で伝送および記録される。テレビジョンプログラムスケジュール情報は、このシステムおよび方法において効率的な仕方でサブスクライバデータ処理システムに伝送され、このサブスクライバデータ処理システムによって獲得される。スケジューウ変更に順応する迅速スケジュール改訂版は、低バンド幅伝送システムおよび方法を備えることができる。このシステムおよび方法は、現在の放送スケジュール情報と記録された放送に関して含まれている古いスケジュール除法とを区別することができる。このシステムおよび方法はスケジュール改訂情報優先処理を与える。スケジュール情報伝送は、このシステムおよび方法において選択的に符号化される。このシステムおよび方法のスケジュール情報伝送部分では単一のシステム時間が採用され、サブスクライバユニットにおいてローカルタイムの補正が行われる。このシステムおよび方法では、サブスクライバユニットはテレビジョン放送信号の異なるロケーションに提供されたスケジュール情報を特定することができる。サブスクライバユニットによって既に獲得され、新しいスケジュール情報部分を複写したスケジュール情報の部分は、かかるスケジュール情報部分がサブスクライバユニットによって再び獲得する必要がないようにするように、このシステムおよび方法において保持される。このシステムおよび方法において得られたメモリの使用をより効率的にするためデータ圧縮が独特な仕方で採用される。示し、説明した本発明の形態および詳細の種々の変更を行うことができることが当業者にはさらに容易にわかるはずである。かかる変更は本明細書に添付した請求の範囲の精神および範囲内に含まれることを意図するものである。本発明の一態様を整理すると以下の通りである。付記1テレビジョンスケジュール情報伝送システムであって、中央データ処理システムと、所定の領域に対してスケジュール情報データ前記中央データ処理システムに提供するために前記中央データ処理システムに接続される手段とを備えており、前記中央データ処理システムは前記所定の領域に対するスケジュール情報をフォーマットして所定のスケジュール情報伝送フォーマットにする手段を備えており、さらに、前記所定のスケジュール情報伝送フォーマットで所定の領域に対してスケジュール情報データを送信するために前記中央データ処理システムに接続される手段と、前記所定の領域の1つの地域にそれぞれ所在する複数のリジョナルデータ処理システムを備えており、該複数の地域データ処理システムは所定の領域についてのスケジュール情報データを受信するための手段と、前記複数の各リジョナルデータ処理システムが所在している地域についてのスケジュール情報データを選択する手段と、前記領域についてのスケジュール情報データを伝送する手段とを備えており、さらに、前記地域における複数の加入者データ処理システムとを備えており、前記複数の各加入者データ処理システムは、前記地域のスケジュール情報データの少なくとも一部を受信する手段と、前記加入者データ処理システムによって受信されたスケジュール情報データを記憶する手段と、前記加入者データ処理システムのユーザーに見せるために加入者データ処理システムによって受信されたスケジュール情報データの部分をアセンブルする手段と、前記スケジュール情報データの部分をアセンブルする前記手段に接続され、前記スケジュール情報データの部分を見せるためのディスプレーとを備えたことを特徴とするテレビジョンスケジュール情報伝送システム。付記2テレビジョンスケジュール情報伝送システムにおいて、所定の領域についてのスケジュール情報データを該領域の地域にそれぞれ所在する複数の地域データ処理システム伝送システムに伝送し、その地域データ処理システムを用いて各地域についての前記スケジュール情報データを選択し、その地域データ処理システムを用いて各地域についてのスケジュール情報データを各地域の複数の加入者データ処理システムに伝送し、各加入者データ処理システムのユーザーに見せるために各加入者データ処理システムによって受信されたスケジュール情報データの部分をアセンブルし、前記スケジュール情報データの部分をユーザーに見せることからなる方法。"