[現行BSの説明]
以下、本発明の実施の形態について説明するが、その前段階の準備として、現行BSについて説明する。
図1は、現行BSの受信装置の構成例を示すブロック図である。
現行BSの送信装置(図示せず)からは、ディジタル変調によって得られる変調信号が送信される。
アンテナ11は、送信装置から(図示せぬBSを経由して)送信されてくる変調信号を受信し、チューナ12に供給する。
チューナ12は、所定の周波数帯域の変調信号を抽出(検波)し、復調部13に供給する。
復調部13は、チューナ12からの変調信号を復調し、その結果得られる復調信号を、FEC(Forward Error Correction)部14に供給する。
FEC部14は、復調部13からの復調信号に誤り訂正処理を施し(復調信号に含まれる誤り訂正符号を復号し)、その結果得られる複数のスロットから構成されるフレームを、TS再生部15に供給する。
TS再生部15は、フレームを構成する複数のスロットのうちの少なくとも一部のスロット、すなわち、例えば、フレームにおいて、所望の番組のデータが含まれる(1以上の)スロットを、フレームからの抽出の対象のスロットである抽出対象スロットとして、FEC部14からのフレームから、抽出対象スロット(となっているスロット)を抽出し、その抽出対象スロットを、レートの調整を行いながら、デコーダ16に供給する。
デコーダ16は、TS再生部15からのスロット(抽出対象スロット)に含まれるTSパケットの中の符号化データを、MPEGデコードし、その結果得られる画像データ及び音声データを出力する。
図2は、図1のFEC部14からTS再生部15に供給されるフレーム(現行BSのフレーム)を示す図である。
現行BSの1フレームは、前述したように、最大で48スロットから構成される。
現行BSの1スロット(のサイズ)は、204バイトであり、したがって、48スロットで構成される1フレームは、78336ビット=48スロット×204バイト×8ビットである。
なお、スロットには、画像データ等をMPEGエンコードして得られる符号化データを含むTSパケットが含まれる。
図3は、図1のTS再生部15が行う、フレームからのスロットの抽出を説明する図である。
上述したように、TS再生部15は、FEC部14からのフレームから、所望の番組のデータが含まれるスロットを、抽出対象スロットとして抽出する。
図3では、1フレームを構成する48スロットのうちの、所定の24スロットに、所望の番組のデータ(符号化データ)が含まれており、その24スロットが抽出されている。
図4は、図1のTS再生部15が行う、スロットのレートの調整を説明する図である。
TS再生部15は、フレームから抽出したスロットを、レートの調整を行いながら出力する(デコーダ16に供給する)。
すなわち、TS再生部15は、1フレームの時間を単位時間として、1フレームから抽出されたスロットを、単位時間内に出力する、スロットの時間(軸)伸張を、スロットのレートの調整として行う。
図4では、1フレームを構成する48スロットのうちの所定の24スロットを、抽出対象スロット#1ないし#24として、その24個の抽出対象スロット#1ないし#24が抽出され、単位時間内のデータに、時間軸伸張されている。
ところで、現行BSでは、フレームを構成するスロットのうちの、どのスロットを、抽出対象スロットとするかは、任意になっている。
すなわち、現行BSでは、送信装置において、1フレームを構成する48スロットのうちの、任意の数の、任意の位置のスロットに、番組のデータを含めることができる。
また、現行BSでは、番組のデータを含めるスロットは、16フレームごとに変更することができる。
したがって、ユーザが、番組を視聴するチャンネルを変更する場合は勿論、あるチャンネルの番組を視聴し続ける場合(チャンネルを変更しない場合)であっても、TS再生部15において、抽出対象スロットが変更され,それに追従しなければならないことがある。
図5は、抽出対象スロットの変更を説明する図である。
図5では、抽出対象スロットが、1フレームを構成する48スロットのうちの最後の1個のスロット#48から、1フレームを構成する48スロット#1ないし#48のすべてに変更されている。あるいは、図5では、抽出対象スロットが、1フレームを構成する48スロット#1ないし#48のすべてから、1フレームを構成する48スロットのうちの最後の1個のスロット#48に変更されている。
図6は、ユーザが、番組を視聴するチャンネルを変更することに起因して、TS再生部15において、抽出対象スロットが変更される場合を説明する図である。
図6では、1フレームを構成する48スロット#1ないし#48のうちの、スロット#1ないし#8の8スロットに、あるチャンネルCh#Aの番組Aのデータが含まれ、スロット#21ないし#42の22スロットに、他のチャンネルCh#Bの番組Bのデータが含まれている。
受信装置(図1)において、チャンネルCh#Aが選択されている場合、TS再生部15(図1)は、1フレームから、チャンネルCh#Aの番組Aのデータが含まれるスロット#1ないし#8の8スロットを、抽出対象スロットとして抽出する。
そして、ユーザが、チャンネルCh#Aから、チャンネルCh#Bに、チャンネルを変更する操作(チャンネル操作)を行った場合、TS再生部15では、抽出対象スロットが、スロット#1ないし#8の8スロットから、チャンネルCh#Bの番組Bのデータが含まれるスロット#21ないし#42の22スロットに変更される。
なお、受信装置において、チャンネルCh#Bが選択されており、その後、ユーザが、チャンネルCh#Bから、チャンネルCh#Aに、チャンネルを変更するチャンネル操作を行った場合には、TS再生部15では、抽出対象スロットが、チャンネルCh#Bの番組Bのデータが含まれるスロット#21ないし#42の22スロットから、チャンネルCh#Aの番組Aのデータが含まれるスロット#1ないし#8の8スロットに変更される。
すなわち、この場合、TS再生部15は、チャンネル操作の前には、1フレームから、スロット#21ないし#42を抽出し、チャンネル操作の後には、1フレームから、スロット#1ないし#8を抽出する。
ここで、図6では、抽出対象スロットになっているスロットの位置と数の両方が変化している。
図7は、送信装置(放送局)(放送事業者)において、あるチャンネルCh#Aの番組のデータを含めるスロットが変更されることに起因して、TS再生部15において、抽出対象スロットが変更される場合を説明する図である。
図7では、チャンネルCh#Aで、ある時間帯TD1に放送される番組A1の番組データが、1フレームを構成する48スロット#1ないし#48のうちの、スロット#21ないし#42の22スロットに含まれ、チャンネルCh#Aで、次の時間帯TD2に放送される番組A2のデータが、スロット#21ないし#40、並びに、スロット#47及び#48の22スロットに含まれている。
受信装置(図1)において、時間帯TD1に、チャンネルCh#Aが選択されている場合、TS再生部15(図1)は、1フレームから、チャンネルCh#Aの番組A1のデータが含まれるスロット#21ないし#42の22スロットを、抽出対象スロットとして抽出する。
その後、受信装置において、チャンネルCh#Aが選択されたままの状態で、次の時間帯TD2となると、TS再生部15では、抽出対象スロットが、スロット#21ないし#42の22スロットから、チャンネルCh#Aの番組A2のデータが含まれるスロット#21ないし#40並びにスロット#47及び#48の22スロットに変更される。
ここで、図7では、抽出対象スロットになっているスロットの位置と数のうちの位置だけが変化している。
なお、図7において、番組A2のデータが含まれるスロット#21ないし#40と、スロット#47及び#48とには、同一の内容の画像等のデータが含まれているが、スロット#21ないし#40と、スロット#47及び#48とでは、変調方式等が異なる。このように、同一の内容の画像等のデータを、異なる変調方式等で送信する方式は、階層伝送(階層変調)と呼ばれる。
図8は、図1のTS再生部15の構成例を示す図である。
TS再生部15は、2つの、1フレーム分の記憶容量をそれぞれ有するフレームバッファ21及び22から構成される。
TS再生部15では、FEC部14から供給されるフレームから、抽出対象スロットが抽出され、フレームバッファ21及び22のうちの一方である、例えば、フレームバッファ21に書き込まれる。
そして、フレームバッファ21に、抽出対象スロットが書き込まれているときに、フレームバッファ22からは、1フレーム前のフレームから抽出されて書き込まれた抽出対象スロットが、レートの調整(時間軸伸張)をしながら読み出される。
その後、FEC部14からTS再生部15に対して、次のフレームが供給されると、TS再生部15では、FEC部14から供給されるフレームから、抽出対象スロットが抽出され、フレームバッファ21及び22のうちの他方である、フレームバッファ22に書き込まれる。
そして、フレームバッファ22に、抽出対象スロットが書き込まれているときに、フレームバッファ22からは、1フレーム前のフレームから抽出されて書き込まれた抽出対象スロットが、レートの調整をしながら読み出される。
以下、TS再生部15では、FEC部14からフレームが供給されるごとに、フレームバッファ21への抽出対象スロットの書き込み、及び、フレームバッファ22からの抽出対象スロットの読み出しと、フレームバッファ21からの抽出対象スロットの読み出し、及び、フレームバッファ22への抽出対象スロットの書き込みとを、交互に行う、いわば、バンク切り替えによる抽出対象スロットの読み書きが行われる。
以上のように、TS再生部15を、2つのフレームバッファ21及び22で構成し、その2つのフレームバッファ21及び22を用いて、バンク切り替えによる抽出対象スロットの読み書きを行うことで、抽出対象スロットが、どのように変更されても、TS再生部15から、デコーダ16(図1)に対して、フレームから抽出した抽出対象スロットを、レートを調整した調整データとして、切れ目なしに供給することができる。
ここで、TS再生部15を構成するフレームバッファ21及び22のうちの一方であるフレームバッファ21を、バンク#1ともいい、他方であるフレームバッファ22を、バンク#2ともいう。
図9は、抽出対象スロットが変更される場合の、TS再生部15の動作を説明するタイミングチャートである。
現行BSの送信装置からは、番組のデータを含めるスロットの変更を知らせる変更予告情報が、TMCC情報に含めて、その変更のタイミングから、2スーパーフレーム(SF)だけ前に送信されるようになっており、受信装置のTS再生部15では、変更予告情報を受信することで、番組のデータが含まれているスロットが変更されることを認識することができる。ここで、現行BSにおいて、1個のスーパーフレームは、例えば、8個のフレームから構成される。
図9では、フレーム#tにおいて、番組のデータを含めるスロットが変更されている。
すなわち、図9では、フレーム#t-1までのフレームについては、1フレームを構成する48スロット#1ないし#48のうちの、最後のスロット#48が、番組のデータを含むスロットになっており、フレーム#t以降のフレームについては、1フレームを構成する48スロット#1ないし#48すべてが、番組のデータを含むスロットになっている。
この場合、例えば、フレーム#t-3については、TS再生部15は、フレーム(入力フレーム)#t-3から、番組のデータを含むスロット#48を、抽出対象スロットとして抽出し、バンク#1及び#2のうちの一方であるバンク#1(フレームバッファ21(図8))に書き込む(write)。
バンク#1に書き込まれたフレーム#t-3のスロット#48は、次のフレーム#t-2の間に、バンク#1から読み出される(read)ことで、レートの調整が行われ、調整データとして出力される(デコーダ16(図1)に供給される)。
次のフレーム#t-2については、TS再生部15は、フレーム#t-2から、番組のデータを含むスロット#48を、抽出対象スロットとして抽出し、バンク#1及び#2のうちの他方であるバンク#2(フレームバッファ22(図8))に書き込む。
バンク#2に書き込まれたフレーム#t-2のスロット#48は、次のフレーム#t-1の間に、バンク#2から読み出されることで、レートの調整が行われ、調整データとして出力される。
その次のフレーム#t-1は、フレーム#t-3や#t-2と同様に処理される。
すなわち、フレーム#t-1については、TS再生部15は、フレーム#t-1から、番組のデータを含むスロット#48を、抽出対象スロットとして抽出し、一方のバンク#1に書き込む。
バンク#1に書き込まれたフレーム#t-1のスロット#48は、次のフレーム#tの間に、一方のバンク#1から読み出されることで、レートの調整が行われ、調整データとして出力される。
その後のフレーム#tについては、TS再生部15は、抽出対象スロットを、スロット#48から、番組のデータを含む48スロット#1ないし#48すべてに変更し、同様の処理を行う。
すなわち、TS再生部15は、フレーム#tについては、フレーム#tから、抽出対象スロットであるスロット#1ないし#48を抽出し、他方のバンク#2に書き込む。
バンク#2に書き込まれたフレーム#tのスロット#1ないし#48は、次のフレーム#t+1の間に、バンク#2から読み出されることで、レートの調整が行われ、調整データとして出力される。
次のフレーム#t+1については、TS再生部15は、フレーム#t+1から、抽出対象スロットであるスロット#1ないし#48を抽出し、一方のバンク#1に書き込む。
バンク#1に書き込まれたフレーム#t+1のスロット#1ないし#48は、次のフレーム#t+2の間に、一方のバンク#1から読み出されることで、レートの調整が行われ、調整データとして出力される。
フレーム#t+2以降のフレームについては、同様の処理が行われる。
TS再生部15は、図8で説明したように、それぞれが、1フレーム分の記憶容量を有する2つのフレームバッファ21及び22(バンク#1及び#2)を有し、バンク切り替えによる抽出対象スロットの読み書きを行うことで、抽出対象スロットが、どのように変更されても、TS再生部15から、デコーダ16(図1)に対して、フレームから抽出した抽出対象スロットのレートを調整したデータを、調整データとして、切れ目なしに供給することができる。
なお、現行BSにおいて、1フレームは、図2で説明したように、78336ビット=48スロット×204バイト×8ビットであるため、2つのフレームバッファ21及び22の全体としては、約0.15Mビット(≒78336ビット×2)のメモリが必要となる。
[高度BSの説明]
図10は、高度BSの受信装置の一実施の形態の構成例を示すブロック図である。
高度BSの送信装置(図示せず)からは、ディジタル変調によって得られる変調信号が送信される。
アンテナ31は、送信装置から(図示せぬBSを経由して)送信されてくる変調信号を受信し、チューナ32に供給する。
チューナ32は、所定の周波数帯域の変調信号を抽出(検波)し、復調部33に供給する。
復調部33は、チューナ32からの変調信号を復調し、その結果得られる復調信号を、FEC部34に供給する。
FEC部34は、復調部33からの復調信号に誤り訂正処理を施し(復調信号に含まれる誤り訂正符号を復号し)、その結果得られる複数のスロットから構成されるフレームを、TS再生部35に供給する。
TS再生部35は、フレームにおいて、所望の番組のデータが含まれるスロットを、抽出対象スロットとして、FEC部34からのフレームから、抽出対象スロットを抽出し、その抽出対象スロットを、レートの調整を行いながら、デコーダ36に供給する。
デコーダ36は、TS再生部35からのスロット(抽出対象スロット)に含まれるTSパケットの中の符号化データを、MPEGデコードし、その結果得られる画像データ及び音声データを出力する。
図11は、図10のFEC部34からTS再生部35に供給されるフレーム(高度BSのフレーム)を示す図である。
高度BSの1フレームは、前述したように、最大で120スロットから構成される。
高度BSの1スロット(のサイズ)は、最大で187バイト×27であり、したがって、120スロットで構成される1フレーム(のサイズ)は、約4Mビット≒4847040ビット=120スロット×187バイト×27×8ビットである。
なお、高度BSのスロットには、現行BSのスロットと同様に、画像データ等をMPEGエンコードして得られる符号化データを含むTSパケットが含まれる。
図12は、図10のTS再生部35が行う、フレームからのスロット(抽出対象スロット)の抽出を説明する図である。
上述したように、TS再生部35は、FEC部34からのフレームから、所望の番組のデータが含まれるスロットを、抽出対象スロットとして抽出する。
高度BSでは、5スロットを単位として、5の倍数の数のスロットに、番組のデータ(ダミーのデータを含む)が含められる。
このため、TS再生部35では、フレームからのスロット(抽出対象スロット)の抽出が、5スロットを単位として行われる。
ここで、フレームからのスロットの抽出の単位となる5スロットを、スロットグループともいう。
高度BSの1フレームは、120スロットで構成されるので、24(=120スロット/5スロット)個のスロットグループを有する。TS再生部35は、その24個のスロットグループのうちの、1個以上の個数のスロットグループのスロットを、抽出対象スロットとして、スロット(スロットグループ)の抽出を行う。
図13は、図10のTS再生部35が行う、スロットのレートの調整を説明する図である。
TS再生部35は、フレームから抽出したスロット(抽出対象スロット)を、レートの調整を行いながら出力する(デコーダ36に供給する)。
すなわち、TS再生部35は、1フレームの時間を単位時間として、1フレームから抽出された抽出対象スロットを、単位時間内に出力する、スロットの時間軸伸張を、スロットのレートの調整として行う。
図13では、1フレームを構成する120スロットのうちの、1個のスロットグループを構成する5スロットが、抽出対象スロット#1ないし#5として抽出され、その5個の抽出対象スロット#1ないし#5が、単位時間内のデータに、時間軸伸張されている。
なお、高度BSでは、抽出対象スロットを、スロットグループを構成する5個のスロット単位にしなければならないことを除き、フレームを構成するスロットのうちの、どのスロットを、抽出対象スロットとするかは、任意である。
すなわち、高度BSでは、送信装置において、1フレームを構成する24スロットグループのうちの、任意の数の、任意の位置のスロットグループに、番組のデータを含めることができる。
高度BSでも、上述した現行BSの場合と同様に、チャンネル操作や、送信装置において、番組のデータを含めるスロット(スロットグループ)が変更されること等に起因して、TS再生部35において、抽出対象スロットを変更しなければならないことがある。
TS再生部35において、フレームから抽出したスロット(抽出対象スロット)のレートを調整し、その調整によって得られる調整データとして、切れ目なしに出力する方法としては、図8で説明したTS再生部15(図1)と同様に、TS再生部35を、それぞれが、1フレーム分の記憶容量を有する2つのフレームバッファで構成し、バンク切り替えによる抽出対象スロットの読み書きを行う方法がある。
[TS再生部35の第1の構成例]
図14は、そのようなTS再生部35の構成例(第1の構成例)を示すブロック図である。
図14では、TS再生部35は、2つの、1フレーム分の記憶容量をそれぞれ有するフレームバッファ41及び42から構成される。
TS再生部35では、FEC部34から供給されるフレーム(入力フレーム)から、スロットグループ単位のスロットが、抽出対象スロットとして抽出され、フレームバッファ41及び42のうちの一方である、例えば、フレームバッファ41に書き込まれる。
そして、フレームバッファ41に、抽出対象スロットが書き込まれているときに、フレームバッファ42からは、1フレーム前のフレームから抽出されて書き込まれた抽出対象スロットが、レートの調整(時間軸伸張)をしながら読み出される。
その後、FEC部34(図10)からTS再生部35に対して、次のフレームが供給されると、TS再生部35では、FEC部34から供給されるフレームから、抽出対象スロットが抽出され、フレームバッファ41及び42のうちの他方である、フレームバッファ42に書き込まれる。
そして、フレームバッファ42に、抽出対象スロットが書き込まれているときに、フレームバッファ42からは、1フレーム前のフレームから抽出されて書き込まれた抽出対象スロットが、レートの調整をしながら読み出される。
以下、TS再生部35では、FEC部34からフレームが供給されるごとに、フレームバッファ41への抽出対象スロットの書き込み、及び、フレームバッファ42からの抽出対象スロットの読み出しと、フレームバッファ41からの抽出対象スロットの読み出し、及び、フレームバッファ42への抽出対象スロットの書き込みとを、交互に行う、いわば、バンク切り替えによる抽出対象スロットの読み書きが行われる。
以上のように、TS再生部35を、2つのフレームバッファ41及び42で構成し、その2つのフレームバッファ41及び42を用いて、バンク切り替えによる抽出対象スロットの読み書きを行うことで、スロットグループ単位の抽出対象スロットが、どのように変更されても、TS再生部35から、デコーダ36(図10)に対して、フレームから抽出したスロット(抽出対象スロット)を、レートを調整した調整データとして、切れ目なしに供給することができる。
[TS再生部35の第2の構成例]
ところで、高度BSにおいて、1フレームは、図11で説明したように、4847040ビット=120スロット×187バイト×27×8ビットである。
したがって、2つのフレームバッファ41及び42の全体としては、約9.6Mビット(≒4847040ビット×2)という、現行BSの場合(約0.15Mビット)に比較して膨大な容量のメモリが必要となり、受信装置(図10)の大型化、及び、高コスト化を招くことになる。
そこで、図15は、図10のTS再生部35の第2の構成例を示すブロック図である。
図15において、TS再生部35は、リングバッファ51、抽出対象スロット指示部52、及び、読み書き制御部53を含む。
リングバッファ51には、FEC部34(図19)からフレーム(入力フレーム)が供給される。
リングバッファ51は、読み書き制御部53の制御に従い、書き込みアドレスであるライトポイントWP(Write Point)に、TS再生部35からのフレームのスロットのうちの抽出対象スロットを書き込む(記憶する)。
また、リングバッファ51は、読み書き制御部53の制御に従い、読み出しアドレスであるリードポイントRP(Read Point)から、そこに書き込まれたスロット(抽出対象スロット)を読み出し、調整データとして、デコーダ36(図10)に供給する。
抽出対象スロット指示部52は、フレームにおいて、抽出対象スロット(とするスロット)を指示する指示情報を、読み書き制御部53に供給する。
読み書き制御部53は、抽出対象スロット指示部52からの指示情報に基づいて、抽出対象スロットを認識する。
さらに、読み書き制御部53は、FEC部34からの1フレームのスロットのうちの抽出対象スロット(となっているスロット)を、ライトポイントWPを制御することで、リングバッファ51に書き込み(このライトポイントWPの制御による書き込みによって、抽出対象スロットがフレームから抽出される)、リングバッファ51に書き込まれた、1フレームから抽出された抽出対象スロットを、リードポイントRPを制御することで、あらかじめ設定された単位時間である1フレームの時間で読み出す読み書き制御を行う。
以上のように構成されるTS再生部35では、読み書き制御部53は、抽出対象スロット指示部52から供給される指示情報に基づいて、抽出対象スロットを認識する。
そして、読み書き制御部53は、FEC部34からの1フレームのスロットのうちの抽出対象スロットの読み書きを行うように、ライトポイントWP及びリードポイントRPを制御する、リングバッファ51の読み書き制御を行う。
リングバッファ51は、読み書き制御部53からの読み書き制御に従い、FEC部34からの1フレームのスロットのうちの抽出対象スロット(となっているスロット)を、リングバッファ51のライトポイントWP(が指示する記憶領域)に書き込み、リングバッファ51のリードポイントRP(が指示する記憶領域)から、1フレームから抽出された抽出対象スロットを読み出すことにより、抽出対象スロットのレートを調整した調整データを出力する。
図16は、図15のリングバッファ51に対するスロットの読み書きを説明する図である。
すなわち、図16は、図15のリングバッファ51を模式的に示している。
図16では、リングバッファ51のアドレス空間が、円周で表されており、ライトポイントWP及びリードポイントRPは、アドレス空間としての円周上を、時計回りに移動する。
ライトポイントWPが、リードポイントRPを追い越すことは、オーバーフローを意味し、逆に、リードポイントRPが、ライトポイントWPを追い越すことは、アンダーフローを意味する。
また、リードポイントRPから、時計回りに、ライトポイントWPまでの範囲のデータが、リングバッファ51から、まだ読み出されていないデータであり、そのデータ量を、データ残量という。
リングバッファ51のデータ残量は、図16に示すように、抽出対象スロットが変更された直後に、急激に増加することがあり、したがって、リングバッファ51の容量としては、そのようにデータ残量が急激に増加したときに、オーバーフローが生じない容量を採用する必要がある。
なお、リングバッファのデータ残量が最も急激に増加するのは、抽出対象スロットが、フレームを構成する24個のスロットグループ#1ないし#24のうちの最後のスロットグループ#24のスロットから、24個のスロットグループ#1ないし#24すべてのスロットに変更される場合である。
すなわち、リングバッファ51には、FEC部34(図10)から、フレームが、所定のレートで供給され、その所定のレートのフレームのうちの抽出対象スロットだけが、リングバッファ51に書き込まれる。
この、リングバッファ51への抽出対象スロットの書き込みは、一定の書き込みレートで行われる。
したがって、1フレームの間に、リングバッファ51に書き込まれるスロットが、最も多い場合とは、高度BSでは、1フレームを構成する24個のスロットグループ、すなわち、120個のスロットすべてが、抽出対象スロットになっている場合である。
一方、リングバッファ51からは、1フレームから抽出され(て書き込まれ)た抽出対象スロットが、1フレームの時間で読み出され、調整データとして出力される。
したがって、リングバッファ51からの抽出対象スロットの読み出しは、1フレームから抽出された抽出対象スロットの数に比例するレートを読み出しレートとして行われる。
よって、読み出しレートが最小になる(最も遅くなる)のは、1フレームの抽出対象スロットの数が最も少ない数である場合である。
ここで、高度BSでは、スロットグループ単位のスロットが、抽出対象スロットとなるので、抽出対象スロットの数が最も少ない場合とは、抽出対象スロットが、1個のスロットグループを構成する5個のスロットである場合である。
上述したように、リングバッファ51に書き込まれるスロットの数は、1フレームを構成する24個のスロットグループ(の120個のスロット)すべてが、抽出対象スロットになっている場合に、最も多くなり、リングバッファ51の読み出しレートは、抽出対象スロットが、1個のスロットグループ(の5個のスロット)である場合に、最小となる(抽出対象スロットが、最小の1個のスロットグループである場合に、リングバッファ51からのデータの読み出しは、最も遅いクロックに従って行われる)。
したがって、抽出対象スロットが1個のスロットグループになっているフレームから抽出された1個のスロットグループを、リングバッファ51から読み出しているときに、1フレームを構成する24個のスロットグループすべてが抽出対象スロットになっているフレームから抽出された24個のスロットグループを、リングバッファ51に書き込むことが行われるケースで、リングバッファ51のデータ残量が最も増加する。
すなわち、抽出対象スロットが、1フレームの24個のスロットグループのうちの、1個のスロットグループ(を構成する5個のスロット)から、24個のスロットグループ(を構成する120個のスロット)のすべてに変更されるときに、リングバッファ51のデータ残量が最も増加する。
なお、リングバッファ51において、リングバッファ51に書き込まれたスロットの読み出しを、可能な限り早期に開始することとすると、リングバッファ51のデータ残量が最も増加するのは、抽出対象スロットが、1フレームの24個のスロットグループのうちの、最後の1個のスロットグループ#24から、24個のスロットグループ#1ないし#24のすべてに変更されるときとなる。
すなわち、フレーム#t-1と#tとの間で、抽出対象スロットが、1フレームの24個のスロットグループ#1ないし#24のうちの、最後の1個のスロットグループ#24から、24個のスロットグループ#1ないし#24のすべてに変更されたときには、フレーム#t-1から抽出されたスロットグループ#24の、リングバッファ51からの読み出しが終了するのは、フレーム#tから抽出されたスロットグループ#1ないし#24の書き込みが終了する直前となるため、それまで、フレーム#tから抽出され、リングバッファ15に書き込まれたスロットグループ#1ないし#24については、リングバッファ51からの読み出しを開始することができない。
以上のように、フレーム#t-1と#tとの間で、抽出対象スロットが、1フレームの24個のスロットグループ#1ないし#24のうちの、最後の1個のスロットグループ#24から、24個のスロットグループ#1ないし#24のすべてに変更されたときには、フレーム#tから抽出され、リングバッファ15に書き込まれたスロットグループ#1ないし#24の読み出しを開始することができるタイミングが最も遅くなり、かつ、その読み出しが開始されるまでに、リングバッファ15に書き込まれるスロットグループが、最も多いため、リングバッファ51のデータ残量が最大となる。
図17は、抽出対象スロットが変更される場合の、図15のTS再生部35の動作を説明するタイミングチャートである。
ここで、例えば、高度BSの送信装置からは、番組のデータを含むスロットの変更を知らせる変更予告情報が、TMCC情報に含めて、その変更のタイミングから、2フレームだけ前に送信される。受信装置(図10)のTS再生部35では、変更予告情報を受信することで、番組のデータが含まれるスロットが変更されることを認識することができる。
図17では、リングバッファ51のデータ残量が最も増加するように、フレーム#tにおいて、番組のデータを含むスロットが変更されている。
すなわち、図17では、フレーム#t-1までのフレームについては、1フレームを構成する24スロットグループ#1ないし#24のうちの、最後のスロットグループ#24(の5個のスロット)が、番組のデータを含むスロットになっており、フレーム#t以降のフレームについては、1フレームを構成する24スロットグループ#1ないし#24(の120個のスロット)すべてが、番組のデータを含むスロットになっている。
この場合、例えば、フレーム#t-3については、TS再生部35は、フレーム#t-3から、抽出対象スロットとして、最後のスロットグループ#24(の5個スロット)を抽出し、リングバッファ51に書き込む。
リングバッファ51に書き込まれたフレーム#t-3のスロットグループ#24については、その書き込みの開始直後から、リングバッファ51からの読み出しが開始される。リングバッファ51に書き込まれたフレーム#t-3のスロットグループ(Slot Gp)#24の読み出しは、1フレームの時間の間に行われ、これにより、レートの調整が行われた調整データが出力される。
次のフレーム#t-2、さらに、その次のフレーム#t-1についても、フレーム#t-3と同様の処理が行われる。
すなわち、フレーム#t-2については、TS再生部35は、フレーム#t-2から、抽出対象スロットである最後のスロットグループ#24を抽出し、リングバッファ51に書き込む。
フレーム#t-2の最後の1個のスロットグループ#24の、リングバッファ51への書き込みが開始されるとき、直前のフレーム#t-3のスロットグループ#24の、フレームメモリ51からの、1フレームの時間をかけての読み出しが終了している。
このため、リングバッファ51に書き込まれたフレーム#t-2のスロットグループ#24については、その書き込みの開始直後から、リングバッファ51からの読み出しが開始される。リングバッファ51に書き込まれたフレーム#t-2のスロットグループ#24の読み出しは、1フレームの時間の間に行われ、これにより、レートの調整が行われた調整データが出力される。
フレーム#t-1については、TS再生部35は、フレーム#t-1から、抽出対象スロットである最後のスロットグループ#24を抽出し、リングバッファ51に書き込む。
フレーム#t-1の最後の1個のスロットグループ#24の、リングバッファ51への書き込みが開始されるとき、直前のフレーム#t-2のスロットグループ#24の、フレームメモリ51からの、1フレームの時間をかけての読み出しが終了している。
このため、リングバッファ51に書き込まれたフレーム#t-1のスロットグループ#24については、その書き込みの開始直後から、リングバッファ51からの読み出しが開始される。リングバッファ51に書き込まれたフレーム#t-1のスロットグループ#24の読み出しは、1フレームの時間の間に行われ、これにより、レートの調整が行われた調整データが出力される。
その後のフレーム#tについては、TS再生部35は、抽出対象スロットを、1個のスロットグループ#24から、24個のスロットグループ#1ないし#24すべてに変更し、同様の処理を行う。
すなわち、TS再生部35は、フレーム#tについては、フレーム#tから、抽出対象スロットであるスロットグループ#1ないし#24を抽出し、リングバッファ51に書き込む。
フレーム#tのスロットグループ#1ないし#24の、リングバッファ51への書き込みが開始されるとき、直前のフレーム#t-1のスロットグループ#24の、リングバッファ51からの、1フレームの時間をかけての読み出しは、開始されたばかりである。
そして、リングバッファ51に書き込まれたフレーム#tのスロットグループ#1ないし#24の、リングバッファ51からの読み出しは、直前のフレーム#t-1のスロットグループ#24の、リングバッファ51からの読み出しが終了するまで開始されない。
直前のフレーム#t-1のスロットグループ#24の、リングバッファ51からの、1フレームの時間をかけての読み出しは、フレーム#t-1のスロットグループ#24の、リングバッファ51への書き込み(及び読み出し)が開始されてから、1フレームの時間で終了する。
直前のフレーム#t-1のスロットグループ#24の、リングバッファ51からの読み出しが終了すると、リングバッファ51に書き込まれたフレーム#tのスロットグループ#1ないし#24の、リングバッファ51からの読み出しが開始される。リングバッファ51に書き込まれたフレーム#tのスロットグループ#1ないし#24の読み出しは、1フレームの時間の間に行われ、これにより、レートの調整が行われた調整データが出力される。
ここで、上述のように、直前のフレーム#t-1の1個のスロットグループ#24の、リングバッファ51からの、1フレームの時間をかけての読み出しが行われている間、フレーム#tの24個のスロットグループ#1ないし#24については、リングバッファ51への書き込みが行われるが、リングバッファ51からの読み出しは開始されない。
このため、図17に示すように、リングバッファ51のデータ残量が、急激に増加する。
その後のフレーム#t+1については、TS再生部35は、フレーム#t+1から、抽出対象スロットであるスロットグループ#1ないし#24を抽出し、リングバッファ51に書き込む。
フレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51への書き込みが開始されるとき、直前のフレーム#tのスロットグループ#1ないし#24の、フレームメモリ51からの、1フレームの時間をかけての読み出しは、開始されたばかりである。
そして、リングバッファ51に書き込まれたフレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51からの読み出しは、直前のフレーム#tのスロットグループ#1ないし#24の、リングバッファ51からの読み出しが終了するまで開始されない。
直前のフレーム#tのスロットグループ#1ないし#24の、リングバッファ51からの読み出しが終了すると、リングバッファ51に書き込まれたフレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51からの読み出しが開始される。リングバッファ51に書き込まれたフレーム#tのスロットグループ#1ないし#24の読み出しは、1フレームの時間の間に行われ、これにより、レートの調整が行われた調整データが出力される。
ここで、上述したように、フレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51への書き込みが開始されるとき、直前のフレーム#tのスロットグループ#1ないし#24の、フレームメモリ51からの、1フレームの時間をかけての読み出しは、開始されたばかりであり、そのため、フレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51への書き込みが開始された直後は、そのフレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51からの読み出しは、開始することができない。
しかしながら、フレーム#t及び#t+1の抽出対象スロットは、いずれも、1フレームを構成するすべてのスロットグループ#1ないし#24であるため、フレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51への書き込みのレートと、直前のフレーム#tのスロットグループ#1ないし#24の、フレームメモリ51からの、1フレームの時間をかけての読み出しのレートとは、(ほぼ)同一となる。
したがって、フレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51への書き込みが開始された後、そのフレーム#t+1のスロットグループ#1ないし#24の、リングバッファ51からの読み出しが開始されるまでは、リングバッファ51への書き込みのレートと、リングバッファ51からの読み出しのレートが同一であるので、リングバッファ51のデータ残量は、増加しない。
フレーム#t+2以降のフレームについては、フレーム#t+1の場合と同様の処理が行われる。
以上のように、リングバッファ51のデータ残量は、抽出対象スロットが、最後の1個のスロットグループ#24から、1フレームのすべてのスロットグループ#1ないし#24に変更されるフレーム#tの抽出対象スロットであるスロットグループ#1ないし#24の書き込み時に、急激に上昇し、最大になる。
したがって、リングバッファ51の容量としては、オーバーフローを防止するために、上述のような、最大のデータ残量以上の値を採用する必要がある
図18は、抽出対象スロットが、最後の1個のスロットグループ#24から、1フレームのすべてのスロットグループ#1ないし#24に変更された場合の、リングバッファ51のデータ残量のシミュレーション結果を示す図である。
ここで、図18において、横軸は、周波数が82MHzのパルスの1パルスを1時刻とする時間を表し、縦軸は、データ残量を、バイトで表す。
また、図18では、参考として、抽出対象スロットが、1フレームのスロットグループ#1ないし#24のうちの、最後の12個のスロットグループ#13ないし#24から、24個のスロットグループ#1ないし#24すべてに変更された場合のデータ残量、及び、抽出対象スロットが、1フレームのスロットグループ#1ないし#24のうちの、最後の12個のスロットグループ#13ないし#24から、最初の12個のスロットグループ#1ないし#12に変更された場合のデータ残量のシミュレーション結果も示してある。
シミュレーションによれば、最大のデータ残量は、580024バイトであり、リングバッファ51の容量としては、580024バイト以上の値である、例えば、581000バイトを採用することができる。
以上のように、TS再生部35(図10)において、リングバッファ51(図15)を採用することにより、リングバッファ51としては、約4.6Mビット≒581000バイト×8ビットのメモリを採用することができる。
したがって、TS再生部35(図10)において、リングバッファ51(図15)を採用する場合には、約9.6Mビットのメモリを必要とする、フレームバッファ41及び42(図14)を採用する場合に比較して、受信装置(図10)の大型化、及び、高コスト化を防止(低減)することができる。
[TS再生部35の第3の構成例]
上述したように、TS再生部35(図10)において、リングバッファ51(図15)を採用する場合には、リングバッファ51としては、約4.6Mビット≒581000バイト×8ビットのメモリを採用することができる。
ところで、高度BSにおいて、1フレームは、図11で説明したように、4847040ビット=120スロット×187バイト×27×8ビットである。
したがって、TS再生部35において、リングバッファ51を採用する場合であっても、リングバッファ51としては、高度BSの1フレーム分程度の容量のメモリが必要である。
そこで、図19は、より小さい容量のメモリを採用することができる図10のTS再生装置の構成例(第3の構成例)を示すブロック図である。
図15において、TS再生部35は、リングバッファ71、抽出対象スロット指示部72、読み書き制御部73、変更イベント検出部74、ダミーデータ出力部75、及び、出力部76を含む。
リングバッファ71には、FEC部34(図19)からフレームが供給される。
リングバッファ71は、読み書き制御部73の制御に従い、書き込みアドレスであるライトポイントWPに、TS再生部35からのフレームの抽出対象スロットを書き込む(記憶する)。
また、リングバッファ71は、読み書き制御部73の制御に従い、読み出しアドレスであるリードポイントRPから、そこに書き込まれた、1フレームから抽出されたスロット(抽出対象スロット)を、1フレームの時間に読み出し、出力部76に供給する。
抽出対象スロット指示部72は、フレームにおいて、抽出対象スロット(とするスロット)を指示する指示情報を、読み書き制御部73に供給する。
読み書き制御部73は、抽出対象スロット指示部72からの指示情報に基づいて、抽出対象スロットを認識する。
そして、読み書き制御部73は、FEC部34からの1フレームのスロットのうちの抽出対象スロット(となっているスロット)を、ライトポイントWPを制御することで、リングバッファ71に書き込み、リングバッファ71に書き込まれた抽出対象スロットを、リードポイントRPを制御することで、あらかじめ設定された単位時間である1フレームの時間で読み出す読み書き制御を行う。
また、読み書き制御部73には、変更イベント検出部74から、変更予告情報の検出や、ユーザによるチャンネル操作の検出を知らせる検出情報が供給される。
読み書き制御部73は、変更イベント検出部74から検出情報が供給されると、その検出情報に従い、リングバッファ71から読み出された抽出対象スロット、又は、ダミーデータ出力部75が出力するNullパケットの選択を指示する選択情報を、出力部76に供給する。
変更イベント検出部74は、抽出対象スロットの変更を知らせるイベント(変更イベント)である、変更予告情報や、チャンネル操作を検出し、変更予告情報や、チャンネル操作を検出すると、その検出を知らせる検出情報を、読み書き制御部73に供給する。
すなわち、高度BSの送信装置は、番組のデータを含むスロットを変更する場合、その変更を行うフレームの所定のフレーム数としての2フレームだけ前のフレームにおいて、番組のデータを含むスロットの変更を知らせる変更予告情報を、TMCC情報に含めて送信する。
したがって、例えば、あるチャンネルにおいて、番組の切り替わりのタイミングで、番組のデータを含ませるスロットが変更される場合には、送信装置からは、番組の切り替わりの2フレーム前のタイミングで、変更予告情報が送信されてくる。
変更イベント検出部74は、このようにして送信装置から送信されてくる変更予告情報を検出し、変更予告情報を検出した場合には、その検出を知らせる検出情報を、読み書き制御部73に供給する。
また、変更イベント検出部74は、ユーザによる受信装置(図10)のチャンネル操作を検出し、チャンネル操作を検出した場合には、その検出を知らせる検出情報を、読み書き制御部73に供給する。
ダミーデータ出力部75は、ダミーのデータであるダミーデータとして、例えば、MPEGのNullパケットを出力する。ダミーデータ出力部75が出力するNullパケットは、出力部76に供給される。
ここで、MPEGで規定されているNullパケットは、TSパケットの先頭の4バイトが、0x47,0x1F,0xFF,0x1Fになっているパケットであり、ペイロードのビットとしては、例えば、すべて、1が採用される。
出力部76は、読み書き制御部73から供給される選択情報に従い、リングバッファ71から供給されるスロット(抽出対象スロット)、又は、ダミーデータ出力部75から供給されるNullパケットを選択し、調整データとして出力する(デコーダ36(図10)に供給する)出力処理を行う。
ここで、出力部76は、デフォルトでは、リングバッファ71から供給されるスロットを選択して出力する。そして、出力部76は、読み書き制御部73から選択情報が供給された場合には、選択情報に従い、リングバッファ71から供給されるスロット、又は、ダミーデータ出力部75から供給されるNullパケットを選択して出力する出力処理を行う。
上述したように、読み書き制御部73は、変更イベント検出部74から、抽出対象スロットの変更を知らせる変更イベントである変更予告情報やチャンネル操作の検出を知らせる検出情報が供給されると、その検出情報に従い、選択情報を、出力部76に供給する。
したがって、読み書き制御部73から、出力部76に対して、選択情報が供給される場合とは、抽出対象スロットが変更される場合であり、出力部76は、抽出対象スロットが変更される場合に、選択情報に従った出力処理を行う。
そして、選択情報に従った出力処理では、出力部76は、抽出対象スロットの変更が開始されるフレームである変更開始フレームの直前のフレームのタイミングでは、ダミーデータ出力部75が出力するNullパケットを選択して、調整データとして出力し、変更開始フレーム以降のフレームについては、リングバッファ71から読み出される抽出対象スロットを選択して、調整データとして出力する。
なお、出力部76において、Nullパケットが調整データとして出力される場合、デコーダ36から出力される画像データ及び音声データは、例えば、無模様で単一色(例えば、黒や青等)の画面の表示、及び、無音の出力(ミュート)が行われるデータ(以下、ブランキングデータともいう)となる。
したがって、出力部76において、Nullパケットが調整データとして出力される場合には、画面(に表示される画像)は、例えば、黒画面となり、音声は、例えば、ミュートの状態(以下、ブランキング状態ともいう)となる。
図20は、抽出対象スロットの変更が行われない場合の、リングバッファ71(図19)のデータ残量のシミュレーション結果を示す図である。
ここで、図20においては、図18と同様に、横軸は、周波数が82MHzのパルスの1パルスを1時刻とする時間を表し、縦軸は、データ残量を、バイトで表す。
フレームの抽出対象スロットは、リングバッファ71に、一定の書き込みレートで書き込まれる。そして、リングバッファ71に書き込まれた、1フレームの抽出対象スロットは、1フレームの時間で読み出すことができる読み出しレートで、リングバッファ71から読み出される。
いま、リングバッファ71に書き込まれた抽出対象スロットの読み出しを、可能な限り早期に開始することとすると、フレーム内の飛び飛びの位置のスロットが抽出対象スロットである場合よりも、フレーム内の連続する位置のスロットが抽出対象スロットである場合の方が、データ残量が大になる。
図20は、1フレームにおいて連続する位置にある1個のスロットグループ、11個のスロットグループ、12個のスロットグループ、13個のスロットグループ、20個のスロットグループ、及び、24個のスロットグループのそれぞれが抽出対象スロットである場合の、リングバッファ71のデータ残量を示している。
抽出対象スロットの数が大であるほど、リングバッファ71に書き込まれる抽出対象スロットは、多くなるが、リングバッファ71に書き込まれる抽出対象スロットが多いほど、リングバッファ71に書き込まれた抽出対象スロットは、速い読み出しレートで読み出される。
したがって、抽出対象スロットの数が小である場合には、リングバッファ71に書き込まれる抽出対象スロットが少ないので、リングバッファ71のデータ残量は、大きくならない。
一方、抽出対象スロットの数が大である場合には、リングバッファ71からの読み出しレートが大になるので、リングバッファ71のデータ残量は、やはり、大きくならない。
リングバッファ71のデータ残量は、抽出対象スロット、つまり、リングバッファ71に書き込まれる抽出対象スロットの数が、中間の値(1フレームのスロットの数の1/2の数)である12個のスロットグループである場合に、最も多い147149バイトとなる。
したがって、抽出対象スロットの変更が行われない場合には、TS再生部35(図10)において、リングバッファ71としては、約1.2Mビット≒147149バイト×8ビットのメモリを採用することができる。
この場合、約4.6Mビットのメモリを、リングバッファ51として採用する必要がある図15の場合と比較して、受信装置(図10)の大型化、及び、高コスト化を、より防止(低減)することができる。
ところで、TS再生部35(図10)において、リングバッファ51(図15)を採用する場合には、図17で説明したように、抽出対象スロットが、1フレームの最後の1個のスロットグループ#24から、24個のスロットグループ#1ないし#24すべてに変更されても(データ残量が急激に上昇して最大になるときであっても)、図17で説明したように、抽出対象スロットの変更の前後で、フレーム#t-1の最後の1個のスロットグループ#24と、フレーム#tの24個のスロットグループ#1ないし#24すべてとを切れ目なく接続した調整データを出力することができる。
一方、TS再生部35(図10)において、リングバッファ71(図19)を採用する場合、リングバッファ71の容量には、抽出対象スロットの変更が考慮されていないため、抽出対象スロットの変更前のスロットグループと、変更後のスロットグループとを切れ目なく接続した調整データを出力しようとすると、リングバッファ71のオーバーフローが生じることがある。
ところで、TS再生部35において、抽出対象スロットの変更は、チャンネルを変更するチャンネル操作が行われた場合と、受信装置(図10)で同一のチャンネルを受信し続けているが、そのチャンネルの送信装置において、番組のデータを含めるスロットが変更された場合とに、行う必要がある。
チャンネル操作が行われることによって、抽出対象スロットを変更する必要がある場合に、TS再生部35において、抽出対象スロットの変更前のスロットグループと、変更後のスロットグループとの間に、短い時間の切れ目が生じた調整データが出力され、その切れ目の部分において、画面及び音声が、ブランキング状態となっても、ユーザは、(それほど)違和感を感じない。
また、送信装置において、例えば、番組の切り替わりで、番組のデータを含めるスロットが変更されることによって、抽出対象スロットを変更する必要がある場合に、TS再生部35において、抽出対象スロットの変更前のスロットグループと、変更後のスロットグループとの間に、短い時間の切れ目が生じた調整データが出力され、その切れ目の部分において、画面及び音声が、ブランキング状態となっても、ユーザは、違和感を感じない。
そこで、図19では、抽出対象スロットの変更時に、抽出対象スロットの変更前のスロットグループと、変更後のスロットグループとの間に、短い時間の切れ目が生じた調整データが出力され、その切れ目の部分において、画面及び音声が、ブランキング状態となることを許容することで、リングバッファ71として、図20で説明した約1.2Mビットという小さい容量のメモリの採用を可能とする。
なお、高度BSでは、送信装置において、番組の切り替わりではないタイミングで、番組のデータを含めるスロット(スロットグループ)を変更することができる。
しかしながら、送信装置において、番組の切り替わりではないタイミングで、番組のデータを含めるスロットが変更され、図19のTS再生部35において、抽出対象スロットを変更すると、抽出対象スロットの変更前のスロットグループと、変更後のスロットグループとの間に、短い時間の切れ目が生じた調整データが出力される。
この場合、番組の途中である、調整データの切れ目の部分において、画面及び音声が、ブランキング状態となって、ユーザに違和感を感じさせるおそれがある。
そこで、送信装置において、番組の切り替わりではないタイミングで、番組のデータを含めるスロットを変更することは、運用上、行わないように制限することが望ましい。
このような運用上の制限を設けることで、リングバッファ71として、約1.2Mビット≒147149バイト×8ビットの小容量のメモリを採用することができ、約4.6Mビットのメモリを、リングバッファ51として採用する必要がある図15の場合と比較して、受信装置(図10)の大型化、及び、高コスト化を、より低減することができる。
図21は、送信装置において、番組の切り替わりで、番組のデータを含めるスロットが変更されることによって、抽出対象スロットが変更される場合の、図19のTS再生部35の動作を説明するタイミングチャートである。
図21では、高度BSの送信装置において、番組の切り替わりで、番組のデータを含めるスロットが変更されることによって、フレーム#tにおいて、抽出対象スロットが変更されている。
すなわち、図21では、フレーム#t-1までのフレームについては、1フレームを構成する24スロットグループ#1ないし#24のうちの、最後のスロットグループ#24(の5個のスロット)が、番組のデータを含むスロットになっており、フレーム#t以降のフレームについては、1フレームを構成する24スロットグループ#1ないし#24(の120個のスロット)すべてが、番組のデータを含むスロットになっている。
この場合、例えば、フレーム#t-3については、TS再生部35は、フレーム#t-3から、抽出対象スロットであるスロットグループ#24(の5個スロット)を抽出し、リングバッファ71に書き込む。
リングバッファ71に書き込まれたフレーム#t-3のスロットグループ#24については、その書き込みの開始直後から、リングバッファ71からの読み出しが開始される。リングバッファ71に書き込まれたフレーム#t-3のスロットグループ(Slot Gp)#24の読み出しは、1フレームの時間の間に行われ、出力部76に供給される。
出力部76は、デフォルトの状態になっており、リングバッファ71の出力を選択している。したがって、出力部76は、リングバッファ71から供給されるフレーム#t-3のスロットグループ#24を、調整データとして出力する(デコーダ36(図10)に供給する)。
図21では、高度BSの送信装置において、番組の切り替わりであるフレーム#tにおいて、番組のデータを含めるスロットの変更が行われる。このため、高度BSの送信装置は、変更予告情報が、TMCC情報に含めて、フレーム#tから、2フレームだけ前のフレーム#t-2において送信される。
受信装置(図10)のTS再生部35では、変更イベント検出部74において、高度BSの送信装置から送信されてくる変更予告情報が検出され、変更予告情報が検出されたことを表す検出情報が、読み書き制御部73に供給される。
読み書き制御部73は、変更イベント検出部74からの検出情報が、変更予告情報が検出されたことを表す場合、その変更予告情報から、抽出対象スロットの変更を開始するフレーム(以下、変更開始フレームともいう)が、変更予告情報が検出されたフレームであるフレーム#t-2の2フレームだけ後のフレーム#tであることを特定する。
さらに、読み書き制御部73は、変更予告情報が検出されたフレーム#t-2から、変更開始フレームであるフレーム#tの直前のフレームであるフレーム#t-1までのフレーム#t-2及び#t-1については、リングバッファ71へのスロットの書き込みを停止する。
そして、読み書き制御部73は、リングバッファ71からの、フレーム#t-3のスロットグループ#24の読み出しの終了後、リングバッファ71(の記憶内容)をクリアするとともに、ダミーデータ出力部75が出力するNullパケットの選択を指示する選択情報を、出力部76に出力する。
これにより、出力部76では、リングバッファ71からの、フレーム#t-3のスロットグループ#24の読み出しの終了後に、ダミーデータ出力部75が出力するNullパケットが、調整データとして出力される。
ここで、図21では、フレーム#t-3のスロットグループ#24の読み出しは、フレーム#t-2のタイミングから、時間的に先行する方向に少しだけずれた1フレームの時間の間に行われており、その後に、リングバッファ71のクリアと、Nullパケットの出力とが行われている。
リングバッファ71のクリアと、Nullパケットの出力の後、変更開始フレームであるフレーム#tのタイミングとなると、読み書き制御部73は、リングバッファへ71へのスロットの書き込みを再開する(書き込みの停止を解除する)。
すなわち、TS再生部35は、フレーム#tについては、フレーム#tから、抽出対象スロットであるスロットグループ#1ないし#24を抽出し、リングバッファ71に書き込む。
フレーム#tの抽出対象スロットであるスロットグループ#1ないし#24の書き込みが開始される直前においては、リングバッファ71はクリアされ、リングバッファ71からの読み出しは、行われていない。
そのため、読み書き制御部73は、フレーム#tの抽出対象スロットであるスロットグループ#1ないし#24のリングバッファ71への書き込みの開始後、そのスロットグループ#1ないし#24のリングバッファ71からの(1フレームの時間をかけての)読み出しを、即座に開始する。
さらに、読み書き制御部73は、リングバッファ71の出力の選択を指示する選択情報を、出力部76に供給する。
4
その結果、出力部76は、デフォルトの状態になり、リングバッファ71から読み出された、フレーム#tのスロットグループ#1ないし#24を、調整データとして選択して出力する。
以上のように、TS再生部35では、変更イベント検出部74において、高度BSの送信装置からの変更予告情報が検出されると、その変更予告情報から、変更開始フレームであるフレーム#tが特定される。
さらに、TS再生部35では、変更開始フレーム#tの直前のフレーム#t-1、さらには、その直前のフレーム#t-2のタイミングでは、リングバッファ71に対する抽出対象スロットの書き込みが停止される。
また、TS再生部35では、それまでにリングバッファ71に書き込まれたスロット(スロットグループ)、すなわち、フレーム#t-3の抽出対象スロットであるスロットグループ#24の読み出しの終了後に、リングバッファ71がクリアされるとともに、出力部76において、ダミーデータ出力部75が出力するNullパケットが、調整データとして選択されて出力される。
これにより、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、リングバッファ71は、クリアされた状態となり、出力部76において、ダミーデータ出力部75が出力するNullパケットが、調整データとして選択されて出力される。
そして、TS再生部35では、変更開始フレーム#tから、リングバッファ71に対する抽出対象スロットの書き込みが再開される。さらに、出力部76は、変更開始フレーム#t以降のフレームについては、デフォルトの状態となり、リングバッファ71から読み出される抽出対象スロットであるスロットグループ#1ないし#24を、調整データとして選択して出力する。
以上のように、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、出力部76は、ダミーデータ出力部75が出力するNullパケットを、調整データとして選択して出力するので、リングバッファ71に対する抽出対象スロットの書き込みを停止することができる。その結果、図21に示すように、抽出対象スロットの変更時に、リングバッファ71のデータ残量が、急激に上昇することを防止することができる。
なお、上述したように、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、出力部76は、ダミーデータ出力部75が出力するNullパケットを、調整データとして選択して出力する。
出力部76が、Nullパケットを、調整データとして出力する間、画面及び音声は、ブランキング状態となる。
但し、出力部76が、Nullパケットを、調整データとして出力するのは、1フレームの時間程度の短い時間であり、さらに、そのような短い時間のブランキング状態が生じるのは、番組の切り替わり(新たな番組の開始直前)のタイミングであるため、ユーザは、違和感を感じない。
図22は、送信装置において、ユーザによるチャンネル操作が行われることによって、抽出対象スロットが変更される場合の、図19のTS再生部35の動作を説明するタイミングチャートである。
図22では、フレーム#t-1のタイミングで、ユーザによるチャンネル操作が行われることによって、フレーム#tにおいて、抽出対象スロットが変更されている。
すなわち、図22では、フレーム#t-1までのフレームについては、1フレームを構成する24スロットグループ#1ないし#24のうちの、最後のスロットグループ#24(の5個のスロット)が、抽出対象スロットになっており、フレーム#t以降のフレームについては、1フレームを構成する24スロットグループ#1ないし#24(の120個のスロット)すべてが、抽出対象スロットになっている。
この場合、例えば、フレーム#t-3については、TS再生部35は、フレーム#t-3から、抽出対象スロットであるスロットグループ#24(の5個スロット)を抽出し、リングバッファ71に書き込む。
リングバッファ71に書き込まれたフレーム#t-3のスロットグループ#24については、その書き込みの開始直後から、リングバッファ71からの読み出しが開始される。リングバッファ71に書き込まれたフレーム#t-3のスロットグループ(Slot Gp)#24の読み出しは、1フレームの時間の間に行われ、出力部76に供給される。
フレーム#t-2も、フレーム#t-3と同様に処理される。
すなわち、フレーム#t-2については、TS再生部35は、フレーム#t-2から、抽出対象スロットであるスロットグループ#24を抽出し、リングバッファ71に書き込む。
リングバッファ71に書き込まれたフレーム#t-2のスロットグループ#24については、その書き込みの開始直後から、リングバッファ71からの読み出しが開始される。リングバッファ71から読み出されたフレーム#t-2のスロットグループ#24は、出力部76に供給される。
出力部76は、リングバッファ71の出力を選択しており、リングバッファ71から供給されるフレーム#t-2のスロットグループ#24を、調整データとして出力する。
ここで、リングバッファ71からのフレーム#t-2のスロットグループ#24の読み出しは、そのフレーム#t-2のスロットグループ#24の書き込みの開始直後から、ほぼ、フレーム#t-1の時間にかけて行われるが、図22では、フレーム#t-1の途中で、チャンネル操作が行われている。
受信装置(図10)のTS再生部35では、変更イベント検出部74において、チャンネル操作が検出され、チャンネル操作が検出されたことを表す検出情報が、読み書き制御部73に供給される。
読み書き制御部73は、変更イベント検出部74からの検出情報が、チャンネル操作が検出されたことを表す場合、そのチャンネル操作が検出されたフレーム#t-1の直後のフレーム#tを、抽出対象スロットの変更を開始する変更開始フレームとして特定する。
さらに、読み書き制御部73は、チャンネル操作の検出後、変更開始フレームであるフレーム#tの直前まで、つまり、フレーム#t-1の、チャンネル操作の検出後から最後までの間については、リングバッファ71へのスロットの書き込みを停止する。
そして、読み書き制御部73は、チャンネル操作の検出後、リングバッファ71からの、フレーム#t-2のスロットグループ#24のうちの、正常なTSパケットが得られる(時間的に)最先の部分までの読み出しが終了すると、リングバッファ71をクリアするとともに、ダミーデータ出力部75が出力するNullパケットの選択を指示する選択情報を、出力部76に出力する。
これにより、出力部76では、フレーム#t-2のスロットグループ#24のうちの、正常なTSパケットが得られる最先の部分までの読み出しの終了後に、Nullパケットが、調整データとして出力される。
ここで、図22では、チャンネル操作の検出のタイミングでリングバッファ71から読み出された部分が、正常なTSパケットが得られる最先の部分になっており、そのため、チャンネル操作の検出後、即座に、リングバッファ71のクリアと、Nullパケットの出力とが行われている。
その後、変更開始フレームであるフレーム#tのタイミングとなると、読み書き制御部73は、リングバッファへ71へのスロットの書き込みを再開する(書き込みの停止を解除する)。
すなわち、TS再生部35は、フレーム#tについては、フレーム#tから、抽出対象スロットであるスロットグループ#1ないし#24を抽出し、リングバッファ71に書き込む。
フレーム#tの抽出対象スロットであるスロットグループ#1ないし#24の書き込みが開始される直前においては、リングバッファ71はクリアされ、リングバッファ71からの読み出しは、行われていない。
そのため、読み書き制御部73は、フレーム#tの抽出対象スロットであるスロットグループ#1ないし#24のリングバッファ71への書き込みの開始後、そのスロットグループ#1ないし#24のリングバッファ71からの(1フレームの時間をかけての)読み出しを、即座に開始する。
さらに、読み書き制御部73は、リングバッファ71の出力の選択を指示する選択情報を、出力部76に供給する。
4
その結果、出力部76は、デフォルトの状態になり(戻り)、リングバッファ71から読み出された、フレーム#tのスロットグループ#1ないし#24を、調整データとして選択して出力する。
以上のように、TS再生部35では、変更イベント検出部74において、チャンネル操作が検出されると、そのチャンネル操作が検出されたフレーム#t-1の次のフレーム#tが、変更開始フレームとして特定される。
さらに、TS再生部35では、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、チャンネル操作の検出後の、リングバッファ71に対する抽出対象スロットの書き込みが、途中で停止されるとともに、それまでにリングバッファ71に書き込まれたスロット(スロットグループ)のうちの、正常なTSパケットが得られる最先の部分までの読み出しの終了後に、リングバッファ71がクリアされる。
また、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、チャンネル操作の検出後、リングバッファ71に書き込まれたフレーム#t-2のスロットグループ#24のデータのうちの、正常なTSパケットが得られる最先の部分までの読み出しが行われた後、出力部76において、ダミーデータ出力部75が出力するNullパケットを、調整データとして選択して出力する。
そして、TS再生部35では、変更開始フレーム#tから、リングバッファ71に対する抽出対象スロットであるスロットグループ#1ないし#24の書き込みが再開され、さらに、リングバッファ71からのスロットの読み出しが開始される。また、出力部76は、変更開始フレーム#t以降のフレームについては、デフォルトの状態となり、リングバッファ71から読み出される抽出対象スロットであるスロットグループ#1ないし#24を、調整データとして選択して出力する。
以上のように、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、出力部76がNullパケットを調整データとして出力するので、チャンネル操作の検出後に、リングバッファ71に対する抽出対象スロットの書き込みを停止することができる。その結果、図22に示すように、抽出対象スロットの変更時に、リングバッファ71のデータ残量が、急激に上昇することを防止することができる。
なお、上述したように、変更開始フレーム#tの直前のフレーム#t-1のタイミングでは、チャンネル操作の検出後(に、正常なTSパケットが得られる最先の部分までの読み出しが終了した後)に、出力部76は、ダミーデータ出力部75が出力するNullパケットを、調整データとして選択して出力する。
出力部76が、Nullパケットを、調整データとして出力する間、画面及び音声は、ブランキング状態となる。
但し、出力部76が、Nullパケットを、調整データとして出力するのは、1フレームの時間以下の短い時間であり、さらに、そのような短い時間のブランキング状態が生じるのは、チャンネル操作が行われた直後のタイミングであるため、ユーザは、違和感を感じない。
[TS再生部35の処理]
図23は、本発明を適用したデータ処理装置である、図19のTS再生部35が行う処理(データ処理)を説明するフローチャートである。
TS再生部35では、ステップS11において、読み書き制御部73が、抽出対象スロット指示部72から供給される指示情報に基づいて、抽出対象スロットを認識する。
そして、読み書き制御部73は、FEC部34(図10)からの1フレームのスロットのうちの抽出対象スロットの読み書きを行うように、ライトポイントWP及びリードポイントRPを制御する、リングバッファ51の読み書き制御を行う。
リングバッファ71は、読み書き制御部73からの読み書き制御に従い、FEC部34からの1フレームのスロットのうちの抽出対象スロット(となっているスロット)を、リングバッファ71のライトポイントWPに書き込み、リングバッファ71のリードポイントから、1フレームから抽出された抽出対象スロットを、1フレームの時間で読み出すことにより、抽出対象スロットのレートを調整し、出力部76に供給する。
出力部76は、リングバッファ71から供給される、レートの調整がされた抽出対象スロットを、調整データとして選択して出力する。
その後、ステップS12において、変更イベント検出部74は、抽出対象スロットを変更する変更イベントが検出されたかどうかを判定する。
ステップS12において、変更イベントが検出されていないと判定された場合、すなわち、変更イベント検出部74において、変更予告情報、及び、チャンネル操作のいずれも検出されていない場合、処理は、ステップS11に戻る。
また、ステップS12において、変更イベントが検出されたと判定された場合、すなわち、変更イベント検出部74において、変更予告情報が検出されるか、又は、チャンネル操作が検出された場合、変更イベント検出部74は、検出情報を、読み書き制御部73に供給して、処理は、ステップS13に進む。
ステップS13では、読み書き制御部73は、変更イベント検出部74からの検出情報に従い、図21又は図22で説明したように、リングバッファ71へのスロットの書き込みを停止し、さらに、適切なタイミングで、リングバッファ71をクリアする。
さらに、読み書き制御部73は、変更イベント検出部74からの検出情報から、変更開始フレームを特定する。
その後、ステップS14において、読み書き制御部73は、Nullパケットの選択を指示する選択情報を、出力部76に供給し、これにより、出力部76は、ダミーデータ出力部75が出力するNullパケットを、調整データとして選択して出力することを開始する。
そして、ステップS15において、読み書き制御部73は、FEC部34(図10)からリングバッファ71に供給されるフレームが、変更開始フレームであるかどうかを判定する。
ステップS15において、リングバッファ71に供給されるフレームが、変更開始フレームでないと判定された場合、処理は、ステップS15に戻る。
また、ステップS15において、リングバッファ71に供給されるフレームが、変更開始フレームであると判定された場合、処理は、ステップS16に進み、読み書き制御部73は、リングバッファ71へのスロットの書き込みを再開する。
さらに、ステップS17において、読み書き制御部73は、リングバッファ71の出力の選択を指示する選択情報を、出力部76に供給し、これにより、出力部76は、Nullパケットの出力(選択)を停止し、リングバッファ71から読み出されたスロットを、調整データとして選択して出力することを開始する。
その後、処理は、ステップS17からステップS11に戻り、以下、同様の処理が繰り返される。
図23のデータ処理によれば、読み書き制御部73において、誤り訂正符号化の単位であるスロットの複数の集まりであるフレームを構成する複数のスロットのうちの少なくとも一部のスロットを、抽出の対象である抽出対象スロットとして記憶するリングバッファ71に、1フレームの複数のスロットのうちの抽出対象スロットを書き込み、リングバッファ71に書き込まれた1フレームの抽出対象スロットを、あらかじめ設定された単位時間である1フレームの時間で読み出す読み書き制御が行われる。
また、出力部76において、リングバッファ71から読み出される抽出対象スロット、又は、ダミーデータ出力部75が出力するダミーデータとしてのNullパケットを、レートを調整した調整データとして出力する出力処理が行われる。
そして、出力処理では、抽出対象スロットが変更されるとき、抽出対象スロットの変更が開始されるフレームである変更開始フレームの直前のフレームのタイミングでは、Nullパケットが、調整データとして出力され、変更開始フレーム以降のフレームについては、リングバッファ71から読み出される抽出対象スロットが、調整データとして出力される。
具体的には、変更イベント検出部74において、番組のデータを含むスロットの変更を知らせる変更予告情報が検出された場合には、読み書き制御部73は、その変更予告情報から、変更開始フレームを特定する。
そして、読み書き制御部73は、図21で説明したように、送信装置において、番組のデータを含めるスロットが変更されることによって、抽出対象スロットが変更されるときに、変更開始フレームの直前のフレームのタイミングでは、リングバッファ71に対する抽出対象スロットの書き込みを停止するとともに、リングバッファ71をクリアし、変更開始フレームから、リングバッファ71に対する抽出対象スロットの書き込みを再開する。
さらに、出力部76は、図21で説明したように、Nullパケット、又は、リングバッファ71から読み出される抽出対象スロットを、調整データとして出力する。
また、変更イベント検出部74において、チャンネル操作が検出された場合には、読み書き制御部73は、そのチャンネル操作が行われたフレームの直後のフレームを、変更開始フレームとして特定する。
そして、読み書き制御部73は、図22で説明したように、チャンネル操作によって、抽出対象スロットが変更されるときに、変更開始フレームの直前のフレームのタイミングでは、リングバッファ71に対する抽出対象スロットの書き込みを停止するとともに、リングバッファ71をクリアし、変更開始フレームから、リングバッファ71に対する抽出対象スロットの書き込みを再開する。
さらに、出力部76は、図22で説明したように、Nullパケット、又は、リングバッファ71から読み出される抽出対象スロットを、調整データとして出力する。
その結果、1フレーム程度の短い時間において、画面及び音声が、ブランキング状態となるが、リングバッファ71として、小さな容量のメモリを採用することができ、受信装置(図10)の大型化、及び、高コスト化を、効果的に低減することができる。
[リングバッファ71の容量]
図24は、図19のリングバッファ71に必要な容量を説明する図である。
すなわち、図24Aは、高度BSの1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合に、リングバッファ71へのスロット(抽出対象スロット)の書き込みと、リングバッファ71からのスロットの読み出しとを説明するタイミングチャートである。
高度BSにおいて、1フレーム(の時間)は、約34.2ms(ミリ秒)であり、1スロット(の時間)は、約0.285ms(=32.4ms/120スロット)である。
いま、TS再生部35の動作クロックが、82MHzのクロックであるとして、その82MHzのクロックの1パルスの時間を、1サイクルということとすると、1フレームは、約2804400サイクル(=32.4ms×82MHz)となり、1スロットは、約23370サイクル(=0.285ms×82MHz)となる。
スロットにおいて、そのスロットの5049バイトのデータ(図11)は、例えば、スロットの先頭側(時間的に先行する側)に詰めて、FEC部34(図10)からTS再生部35のリングバッファ71(図19)に供給される。
いま、リングバッファ71への1バイトのデータの書き込みのサイクルを、書き込みサイクルwということとし、書き込みサイクルwを、1サイクルとすると、1スロットのデータは、5049サイクルで、リングバッファ71に書き込まれる。
リングバッファ71に書き込まれた1フレームのスロット(1フレームから抽出されたスロット)のデータは、1フレームの時間で、リングバッファ71から読み出される。
したがって、1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、リングバッファ71に書き込まれた1スロットのデータは、1スロットの時間で、リングバッファ71から読み出される。
いま、リングバッファ71からの1バイトのデータの読み出しのサイクルを、読み出しサイクルrということとする。
1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、1スロットのデータである5049バイトのデータを、1スロットのサイクルである約23370サイクルで読み出すことになるので、読み出しサイクルrは、約4.63サイクル(=23370サイクル/5049バイト)となる。
ここで、1フレームを構成するスロットグループのすべてが抽出対象スロットである場合の読み出しサイクルrを、標準読み出しサイクルaともいう。
図24Bは、1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合の、リングバッファ71のデータ残量を示している。
いま、説明を簡単にするために、1フレームから抽出されたスロットのデータのリングバッファ71への書き込みの開始と同時に、リングバッファ71からのスロットのデータの読み出しが開始されることとする。
1スロットについては、リングバッファ71へのデータの書き込みは、1サイクルである書き込みサイクルwで、1スロットの(先頭の)1サイクル目から5049サイクル目まで行われ、これにより、1スロットの5049バイトのデータが、リングバッファ71に書き込まれる。
また、1スロットについては、リングバッファ71からのデータの読み出しは、書き込みサイクルw以上のサイクルである読み出しサイクルrで、1スロット全体に亘って行われ、これにより、1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、リングバッファ71に書き込まれた1スロットの5049バイトのデータが、1スロットの時間で読み出される。
この場合、1スロットのデータのリングバッファ71への書き込みが完了する、1スロットの5049サイクル目で、リングバッファ71のデータ残量は、最大になる。
すなわち、1スロットの5049サイクル目では、1スロットの5049バイトのデータの書き込みが完了し、また、1スロットの1サイクル目から5049サイクル目までの間には、読み出しサイクルr(いまの場合、標準読み出しサイクルa)で、リングバッファ71からのデータの読み出しが行われる。
したがって、1スロットの5049サイクル目では、5049バイトのデータが、リングバッファ71に書き込まれ、5049/rバイトのデータが、リングバッファ71から読み出された状態となっているので、リングバッファ71のデータ残量は、5049-5049/rバイトとなり、1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、この5049-5049/rバイトが、リングバッファ71のデータ残量の最大値(以下、最大データ残量ともいう)となる。
なお、1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、読み出しサイクルrは、上述したように、約4.63サイクルであり、リングバッファ71のデータ残量の最大値は、約3959バイト≒5049-5049/4.63となる。
ここで、1スロットのデータの書き込みが終了する、スロットの5049サイクル目の次の5050サイクル目から、スロットの最後までの期間では、スロットのデータの書き込みは行われないので、この期間を、非書き込み期間ともいう。
また、1スロットの非書き込み期間以外の期間、すなわち、スロットの5049バイトのデータが書き込まれる、スロットの1サイクル目から5049サイクル目までの期間を、書き込み期間ともいう。
1フレームを構成する24個のスロットグループ#1ないし#24のすべてが、抽出対象スロットである場合には、1スロットの書き込み期間に、スロットの5049バイトのデータが、リングバッファ71に書き込まれるとともに、リングバッファ71からのデータの読み出しが、標準読み出しサイクルaで行われる。
その結果、1スロットの書き込み期間の終了時のリングバッファ71のデータ残量は、5049-5049/aバイトになる。
そして、1スロットの非書き込み期間では、リングバッファ71のデータ残量である5049-5049/aバイトのデータが、標準読み出しサイクルaで読み出される。
なお、スロットに、書き込み期間と非書き込み期間が存在するのは、スロットが、抽出対象スロットである場合であり、抽出対象スロットではないスロットには、非書き込み期間しか存在しない(抽出対象スロットではないスロットの全期間は、非書き込み期間となる)。
ここでは、リングバッファ71(図19)に必要な容量を説明するため、特に断らない限り、スロットとしては、書き込み期間と非書き込み期間との両方が存在するスロット、すなわち、抽出対象スロットとなっているスロットを考えることとする。
図24Cは、1フレームを構成する24個のスロットグループ#1ないし#24のうちの、最初の1個のスロットグループ#1が、抽出対象スロットである場合の、リングバッファ71のデータ残量を示している。
ここで、例えば、抽出対象スロットが、1フレームを構成する24個のスロットグループ#1ないし#24の1/2倍の12個のスロットグループである場合、TS再生部35では、その12個のスロットグループのデータが、リングバッファ71に書き込まれ、1フレームの時間で読み出される。
したがって、抽出対象スロットが、1フレームを構成する24個のスロットグループ#1ないし#24の1/2倍の12個のスロットグループである場合、抽出対象スロットが、1フレームを構成するスロットグループのすべてである場合(以下、全スロットグループを処理する場合ともいう)の1/2倍のデータ量のデータが、全スロットグループを処理する場合と同一の時間である1フレームの時間で読み出されるので、1バイトのデータが、全スロットグループを処理する場合の2倍の時間をかけて読み出されることになり、読み出しサイクルrは、全スロットグループを処理する場合の標準読み出しサイクルaの2倍の2aとなる。
よって、抽出対象スロットが、全スロットグループを処理する場合の1/2倍の12個のスロットグループである場合、1スロットの書き込み期間に、スロットの5049バイトのデータが、リングバッファ71に書き込まれるとともに、リングバッファ71からのデータの読み出しが、読み出しサイクルr=2aで行われる。
その結果、1スロットの書き込み期間の終了時のリングバッファ71のデータ残量は、5049-5049/(2a)バイトになる。
そして、1スロットの非書き込み期間では、読み出しサイクルr=2aで、リングバッファ71からのデータの読み出しが行われる。
ここで、全スロットグループを処理する場合には、図24Bで説明したように、1スロットの非書き込み期間に、リングバッファ71のデータ残量である5049-5049/aバイトのデータのすべてが、標準読み出しサイクルaで読み出される。
読み出しサイクルrが、標準読み出しサイクルaの2倍の2aサイクルである場合、その読み出しサイクルr=2aで非書き込み期間に読み出されるデータ量は、標準読み出しサイクルaで非書き込み期間に読み出されるデータ量5049-5049/aバイトの1/2倍の(5049-5049/a)×(1/2)バイトとなる。
したがって、抽出対象スロットが、全スロットグループを処理する場合の1/2倍の12個のスロットグループである場合には、1スロットのうちの、書き込み期間の終了時のリングバッファ71のデータ残量(但し、書き込み期間の開始時のデータ残量を0とする)は、5049-5049/(2a)バイトであり、その後の非書き込み期間に読み出されるデータ量が、(5049-5049/a)×(1/2)バイトであるから、1スロットの間に、リングバッファ71に蓄積されるデータ量は、(5049-5049/(2a))-((5049-5049/a)×(1/2))バイトとなる。
以上のように、抽出対象スロットが、全スロットグループを処理する場合の1/2倍の12個のスロットグループである場合には、1スロットの間に、(5049-5049/(2a))-((5049-5049/a)×(1/2))バイトのデータが、リングバッファ71に蓄積される。
そして、そのように、リングバッファ71にデータが蓄積されるスロット(抽出対象スロット)が、60スロット=12スロットグループ×5スロットだけ存在するので、リングバッファ71には、最大で、{(5049-5049/(2a))-((5049-5049/a)×(1/2))}バイト×60スロットだけのデータが蓄積される。
すなわち、抽出対象スロットが、全スロットグループを処理する場合の1/2倍の12個のスロットグループである場合には、リングバッファ71の最大データ残量は、{(5049-5049/(2a))-((5049-5049/a)×(1/2))}×60バイトになる。
したがって、リングバッファ71に必要な容量は、{(5049-5049/(2a))-((5049-5049/a)×(1/2))}×60バイト以上になる。
同様に、抽出対象スロットが、全スロットグループを処理する場合のh倍の個数24×hのスロットグループである場合(0<h<1)、抽出対象スロットが、全スロットグループを処理する場合のh倍のデータ量のデータが、全スロットグループを処理する場合と同一の時間である1フレームの時間で読み出されるので、読み出しサイクルrは、全スロットグループを処理する場合の1/h倍のa/hとなる。
よって、抽出対象スロットが、全スロットグループを処理する場合のh倍の24h個のスロットグループである場合、1スロットの書き込み期間に、スロットの5049バイトのデータが、リングバッファ71に書き込まれるとともに、リングバッファ71からのデータの読み出しが、読み出しサイクルr=a/hで行われる。
その結果、1スロットの書き込み期間の終了時のリングバッファ71のデータ残量は、5049-5049/(a/h)バイトになる。
そして、1スロットの非書き込み期間では、読み出しサイクルr=a/hで、リングバッファ71からの読み出しが行われる。
ここで、全スロットグループを処理する場合には、図24Bで説明したように、1スロットの非書き込み期間に、リングバッファ71のデータ残量である5049-5049/aバイトのデータのすべてが、標準読み出しサイクルaで読み出される。
読み出しサイクルrが、標準読み出しサイクルaの1/h倍のa/hサイクルである場合、その読み出しサイクルr=a/hで非書き込み期間に読み出されるデータ量は、標準読み出しサイクルaで非書き込み期間に読み出されるデータ量5049-5049/aバイトのh倍の(5049-5049/a)×hバイトとなる。
したがって、抽出対象スロットが、全スロットグループを処理する場合のh倍の24h個のスロットグループである場合には、1スロットのうちの、書き込み期間の終了時のリングバッファ71のデータ残量(但し、書き込み期間の開始時のデータ残量を0とする)は、5049-5049/(a/h)バイトであり、その後の非書き込み期間に読み出されるデータ量が、(5049-5049/a)×hバイトであるから、1スロットの間に、リングバッファ71に蓄積されるデータ量は、(5049-5049/(a/h))-((5049-5049/a)×h)バイトとなる。
以上のように、抽出対象スロットが、全スロットグループを処理する場合のh倍の24h個のスロットグループである場合には、1スロットの間に、(5049-5049/(a/h))-((5049-5049/a)×h)バイトのデータが、リングバッファ71に蓄積される。
そして、そのように、リングバッファ71にデータが蓄積されるスロット(抽出対象スロット)が、24hスロットグループ×5スロットだけ存在するので、リングバッファ71には、最大で、{(5049-5049/(a/h))-((5049-5049/a)×h)}バイト×120hスロットだけのデータが蓄積される。
すなわち、抽出対象スロットが、全スロットグループを処理する場合のh倍の24h個のスロットグループである場合には、リングバッファ71の最大データ残量は、{(5049-5049/(a/h))-((5049-5049/a)×h)}×120hバイトになる。
したがって、リングバッファ71に必要な容量は、{(5049-5049/(a/h))-((5049-5049/a)×h)}×120hバイト以上になる。
図24Cに示したように、1フレームを構成する24個のスロットグループ#1ないし#24のうちの、最初の1個のスロットグループ#1が、抽出対象スロットである場合とは、抽出対象スロットが、全スロットグループを処理する場合のh=1/24倍の1=24×(1/24)個のスロットグループである場合である。
したがって、リングバッファ71の最大データ残量は、{(5049-5049/(a/(1/24)))-((5049-5049/a)×(1/24))}×120×(1/24)バイトになり、リングバッファ71の最大データ残量は、{(5049-5049/(a/(1/24)))-((5049-5049/a)×(1/24))}×120×(1/24)バイト以上となる。
なお、上述の{(5049-5049/(a/(1/24)))-((5049-5049/a)×(1/24))}×120×(1/24)バイトにおいて、中かっこ{}内の前半部分の(5049-5049/(a/(1/24)))バイトは、1スロットの書き込み期間の終了時のリングバッファ71のデータ残量(但し、書き込み期間の開始時のデータ残量を0とする)である。
また、中かっこ{}内の後半部分の((5049-5049/a)×(1/24))バイトは、1スロットの、その後の非書き込み期間に、リングバッファ71から読み出されるデータ量である。
例えば、上述したように、標準読み出しサイクルaが、4.63サイクルであるとすると、1フレームを構成する24個のスロットグループ#1ないし#24のうちの、最初の1個のスロットグループ#1が、抽出対象スロットである場合のリングバッファ71の最大データ残量は、約24420バイト≒{(5049-5049/(4.63/(1/24)))-((5049-5049/4.63)×(1/24))}×120×(1/24)バイトとなる。
以上から、リングバッファ71の最大データ残量は、以下のように表すことができる。
すなわち、n及びmを、式n<mを満たす正の整数として、倍数hを、式h=n/mで表すこととする。
また、1フレームのスロットグループの数を、Nで表すこととすると、抽出対象スロットになっているスロットグループの数kは、式k=Nh=N(n/m)(=N/(m/n))で表すことができる。
さらに、1スロットのデータのデータ量を、Bバイトとし、1個のスロットグループを構成するスロットの数をS個とする。
この場合、1フレームを構成するN個のスロットグループのうちの、(最初の)k=N/(m/n)個のスロットグループが、抽出対象スロットであるとき、リングバッファ71の最大データ残量Rは、式R=(B-B/((m/n)a)-(B-B/a)/(m/n))×S×(N/(m/n))で表される。
なお、式R=(B-B/((m/n)a)-(B-B/a)/(m/n))×S×(N/(m/n))において、B-B/((m/n)a)は、1スロットの書き込み期間の終了時のリングバッファ71のデータ残量(但し、書き込み期間の開始時のデータ残量を0とする)を表し、(B-B/a)/(m/n)は、1スロットの、その後の非書き込み期間に、リングバッファ71から読み出されるデータ量を表す。
式R=(B-B/((m/n)a)-(B-B/a)/(m/n))×S×(N/(m/n))を整理することにより、リングバッファ71の最大データ残量Rは、式R=SN(B-B(n/m))(n/m)で表される。
なお、1フレームを構成するN個のスロットグループの、そのN個のスロットグループのすべてが、抽出対象スロットであるときは、すなわち、m=nであるときは、リングバッファ71の最大データ残量Rは、式R=B-B/aで表される。
上述したように、倍数hは、式h=n/mで表されるので、式R=SN(B-B(n/m))(n/m)を、hを用いて表すと、式R=SN(B-Bh)hとなる。
式SN(B-Bh)h>B-B/aが成立することとすると、リングバッファ71の最大データ残量Rが最大になる場合とは、式R=SN(B-Bh)hが最大になる場合であり、h=1/2の場合(n=1,m=2の場合)、すなわち、抽出対象スロットが、1フレームのスロット(スロットグループ)の数Nのh=1/2倍の数のスロット(スロットグループ)である場合に、式R=SN(B-Bh)hは、R=BSN/4で最大となる。
リングバッファ71に必要な容量は、理論上は、リングバッファ71の最大データ残量Rが最大になる場合の、その最大の最大データ残量R(又は、最大データ残量R以上)であり、したがって、BSN/4バイトとなる。
ここで、SNは、1フレームのスロットの数(1フレームのスロットグループの数Nに、1スロットグループを構成するスロットの数Sを乗算した値)であり、Bは、1スロットのデータ量であるから、BSNは、1フレームのデータ量となる。したがって、リングバッファ71の最大データ残量Rの最大値Rmaxは、1フレームのデータ量BSNの1/4倍となる。
以上から、理論上、リングバッファ71に必要な容量は、1フレームのデータ量BSNの1/4倍であるBSN/4バイト(以上)の値となる。
高度BSでは、1スロットのデータ量Bが、(最大で)5049バイトであり、1フレームのスロットの数SNが、120スロットであるから、リングバッファ71の最大データ残量Rの最大値Rmaxは、Rmax=BSN/4=5049バイト×120スロット/4=151470バイトとなり、図20に示した、抽出対象スロットが、1フレームのスロットグループの数である24個のh=1/2倍の12個のスロットグループである場合、つまり、1フレームのスロットの数である120個のh=1/2倍の60個のスロットである場合に、リングバッファ71のデータ残量が、最大の147149バイトとなるシミュレーション結果に、ほぼ一致している。
なお、スロットグループが存在しない場合には、1スロットを、1個のスロットグループとみなし、1個のスロットグループを構成するスロットの数Sを、1とすることにより、リングバッファ71の最大データ残量Rを計算することができる。
[本発明を適用したコンピュータの説明]
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図25は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
あるいはまた、プログラムは、リムーバブル記録媒体111に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体111としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク105にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
コンピュータは、CPU(Central Processing Unit)102を内蔵しており、CPU102には、バス101を介して、入出力インタフェース110が接続されている。
CPU102は、入出力インタフェース110を介して、ユーザによって、入力部107が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、CPU102は、ハードディスク105に格納されたプログラムを、RAM(Random Access Memory)104にロードして実行する。
これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
なお、入力部107は、キーボードや、マウス、マイク等で構成される。また、出力部106は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。
また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
すなわち、本発明は、高度BSに準拠したフレームの他、任意の数のスロットから構成されるフレームを対象として、そのフレームの少なくとも一部のスロットを、リングバッファに書き込み、リングバッファに書き込まれたスロット(1フレームのスロットのうちの、リングバッファに書き込まれたスロット)を、1フレームの時間等の、あらかじめ設定された単位時間内で読み出す場合に適用可能である。
また、出力部76(図19)では、上述した場合の他、リングバッファ71がアンダーフローする場合に、ダミーデータ出力部75が出力するNullパケットを選択し、調整データとして出力することができる。