JP4487385B2 - デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 - Google Patents
デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 Download PDFInfo
- Publication number
- JP4487385B2 JP4487385B2 JP2000149112A JP2000149112A JP4487385B2 JP 4487385 B2 JP4487385 B2 JP 4487385B2 JP 2000149112 A JP2000149112 A JP 2000149112A JP 2000149112 A JP2000149112 A JP 2000149112A JP 4487385 B2 JP4487385 B2 JP 4487385B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- slot
- interleave
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Detection And Correction Of Errors (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Error Detection And Correction (AREA)
Description
【発明の属する技術分野】
本発明は、デジタル衛星放送を受信するデジタル衛星放送受信装置、デジタル衛星放送に用いるデインタリーブ方法及び逆エネルギー拡散処理方法に関するものである。
【0002】
【従来の技術】
デジタル衛星放送のシステム構成
まず、BS(放送衛星)を用いたデジタル衛星放送の伝送系について説明をする。
【0003】
図35に、デジタル衛星放送の送信装置及び受信装置の構成を示す。
【0004】
日本におけるデジタル衛星放送(以下、BSデジタル放送という。)では、複数のMPEG−2システムのトランスポートストリーム(TS)を多重化して、1つの搬送波に変調して送信することが規定されている。
【0005】
BSデジタル放送の送信装置1001は、RS(Reed-Solomon)符号化部1002と、フレーム構成部1003と、エネルギー拡散部1004と、インタリーバ1005と、ダミースロット除去部1006と、畳み込み符号化部1007と、変調部1008と、送信部1009とを備えている。
【0006】
RS符号化部1002は、入力されたトランスポートストリームにRS符号を付加する。フレーム構成部1003は、RS符号が付加されたデータからスーパフレームを構成する。このスーパーフレームは、BSデジタル放送規格で予め定められたデータの伝送単位である。エネルギー拡散部1004は、フレーム構成されたデータに対して疑似ランダム信号を加算して、データのエネルギー拡散処理を行う。インタリーバ1005は、エネルギー拡散された後のデータを、スーパーフレーム単位でブロックインタリーブを行う。ダミースロット除去部1006は、インタリーブされたデータから、ダミーデータを除去する。畳み込み符号化部1007は、ダミーデータが除去されたデータに対して、畳み込み符号化を行う。変調部1008は、畳み込み符号化されたデータに対してスロット単位で変調処理を行う。送信部1009は、変調された信号を所定の搬送波に周波数変換して、アンテナから衛星に向け電波を送信する。
【0007】
また、BSデジタル放送の受信装置1011は、受信部1012と、復調部1013と、ビタビ復号部1014と、デインタリーバ1015と、逆エネルギー拡散部1016と、RS(Reed-Solomon)復号部1017とを備えている。
【0008】
受信部1012は、パラボラアンテナにより検出された電波を受信し、所定のIF周波数に周波数変換をする。復調部1013は、IF信号を復調してデジタルデータに変換する。ビタビ復号部1014は、受信したデジタルデータに対してビタビ復号をして、誤り訂正を行う。デインタリーバ1015は、ビタビ復号されたデータに対して、送信側で行われたインタリーブと逆のインタリーブ規則により、スーパーフレーム単位でブロックインタリーブを行う。逆エネルギー拡散部1016は、送信側で行われたエネルギー拡散処理の逆処理を行う。RS復号部1017は、付加されているRS符号に基づきデータの誤り訂正処理を行う。誤り訂正を行った結果MPEG−2システムのトランスポートストリームが出力される。
【0009】
BSデジタル放送の伝送データ構造
次に、BSデジタル放送で定められている伝送データのデータ構造について説明する。
【0010】
BSデジタル放送では、スーパーフレームと呼ばれるデータ構造が定められている。
【0011】
図36に、スーパーフレームの構成を示す。
【0012】
スーパーフレームは、8個のフレーム(フレーム#0〜フレーム#7)から構成されている。各フレームは、制御信号部(TMCC及び同期信号)と、主信号部とから構成されている。主信号部は、48個のスロット(スロット#0〜スロット#47)により構成されている。1スロットは、188バイトのTSパケットにRSパリティが付加し、同期バイトを除去した203バイトのデータ系列である。
【0013】
また、BSデジタル放送では、主信号の変調方式及び畳み込み符号の符号化方式をスロット単位で選択することが可能となっている。具体的には、図37に示すように、主信号の変調方式としては、8PSK(TC8PSK)、QPSK、BPSKのいずれかの変調方式を選択することができる。また、内符号の符号化方式としては、8PSKに対してトレリス符号化、QPSK及びBPSK対して畳み込み符号化を選択することができる。トレリス符号化の符号化率は2/3を、QPSKに対する畳み込み符号の符号化率は1/2,2/3,3/4,5/6,7/8(2/3〜7/8はパンクチャード符号)を、BPSKに対する符号化率は1/2を選択することができる。
【0014】
ここで、スロット単位で変調方式及び符号化方式(変調/符号化方式)を変更することができるとなると、異なる伝送レートが混在したスーパーフレームの構成となり、各スーパーフレーム毎のクロックを一定にすることができない。そこで、BSデジタル放送では、ダミースロットという概念を用いてスーパーフレーム毎の時間関係が保持されている。
【0015】
まず、BSデジタル放送では、各変調/符号化方式毎に、最小割当単位というものが定められている。この最小割当単位は、ある変調/符号化方式を用いる場合、その変調/符号化方式に対して割り当てる最低のスロット数である。
【0016】
具体的に各変調/符号化方式の最小割当単位のスロット数は、図37に示すようになる。この図37に示すように、トレリス符号化8PSK(TC8PSK)であれば最小割当単位は、1スロットとなる。QPSKの符号化率7/8(QPSK7/8)の場合であれば最小割当単位は、8スロットとなる。QPSKの符号化率5/6(QPSK5/6)の場合であれば最小割当単位は、6スロットとなる。QPSKの符号化率3/4(QPSK3/4)の場合であれば最小割当単位は、4スロットとなる。QPSKの符号化率2/3(QPSK2/3)の場合であれば最小割当単位は、3スロットとなる。QPSKの符号化率1/2(QPSK1/2)の場合であれば最小割当単位は、2スロットとなる。BPSKであれば最小割当単位は、4スロットとなる、といったように定められている。各変調/符号化方式を割り当てる場合には、これらの最小割当単位の倍数単位でスロットが割り当てていかなければならない。
【0017】
さらに、各最小割当単位内における、実際のデータが含まれる有効スロット数、及び、ダミーデータが含まれるダミースロット数も、各変調方式/符号化方式毎に定められている。
【0018】
例えば、TC8PSKであれば有効スロット数が1(ダミースロットが0)、QPSK7/8の場合であれば有効スロット数が7(ダミースロット数が1)、QPSK5/6の場合であれば有効スロット数が5(ダミースロット数が1)、QPSK3/4の場合であれば有効スロット数が3(ダミースロット数が1)、QPSK2/3の場合であれば有効スロット数が2(ダミースロット数が1)、QPSK1/2の場合であれば有効スロット数が1(ダミースロット数1)、BPSKであれば有効スロット数が1(ダミースロット数が3)といったように定められている。
【0019】
ダミースロットのデータは、送信時に削除され実際には伝送がされない。そのため、最小割当単位毎にみると結果的に同じ伝送レートとなる。
【0020】
例えば、QPSK3/4はTC8PSKに対して3/4倍の伝送速度であり、QPSK 1/2はTC8PSKに対して1/2倍の伝送速度である。QPSK3/4の最小割当単位4スロットのうち、3スロットが有効スロットで、1スロットがダミースロットである。そのため、TC8PSKの4スロット分の時間を使ってQPSK3/4の3スロット分のデータを送ることになる。同様に,QPSK1/2の最小割当単位2スロットのうち、1スロットが有効スロットで、1スロットがダミースロットであるから、TC8PSKの2スロット分の時間を使ってQPSK1/2の1スロット分のデータを送ることになる。この結果、最小割当単位ごとに一定の速度でデータを送信することができる。
【0021】
このように各変調/符号化方式毎に最小割当単位を定め、有効スロット数及びダミースロット数をそれぞれ変えていくことによって、全てのフレームのクロックが一致するとももに、入力されるMPEG−2のトランスポートストリーム(TS)と、伝送するスーパーフレームとの同期をとることができる。
【0022】
また、BSデジタル放送では、フレーム同期信号及びTMCC(192シンボル)を、64バイトのTMCC情報を8バイトずつ分割して、符号化後の128シンボルとTMCCシンボルとは別の系列で生成される同期シンボルとを、フレームの先頭に配置して送信する。そして、複数の変調/符号化方式を各フレーム内に割り当てる場合には、TC8PSK、QPSK、BPSKというように位相数の多い変調方式順にフレームの先頭から配置して送信する。また、QPSKで符号化率が異なるスロットを各フレーム内に割り当てる場合には、符号化率の高い順(7/8,5/6,3/4,2/3,1/2といった順)でフレームの先頭から配置して送信する。
【0023】
また、BSデジタル放送では、ダミースロットが割り当てられる変調/符号化方式(QPSK,BPSK)でデータを送信する場合には、図38に示すように、最小割当単位内で、有効スロットをまず先頭に配置し、続いてダミースロットを配置するように割り付けを行うものとしている。
【0024】
BSデジタル放送では、以上のようなスロット配置やスーパーフレーム構成の情報をTMCCに記述して送信を行う。受信側では、このTMCCの情報を復号してスーパーフレームの構成を解析し、それぞれの変調方式、符号化方式に対応した復調及び復号を行う。
【0025】
インタリーバ/デインタリーバ
(一般的なインタリーバ/デインタリーバ)
つぎに、インタリーバ及びデインタリーバについて説明をする。
【0026】
まず、一般的なインタリーバ/デインタリーバについて説明をする。
【0027】
デジタル信号を伝送する場合、Bit Error Rate(以下BER)特性を確保するため、通常、送信する信号に対して誤り訂正符号化処理がされる。このような誤り訂正処理の手法として、複数の誤り訂正符号を組み合わせて使う連接符号と呼ばれる手法が知られている。
【0028】
この連接符号について説明するための概念図を、図39に示す。
【0029】
この連接符号は、送信側では、情報系列に対してある符号化方式Aにより符号化し、さらにそれに対して別の符号化方式Bで符号化して送信する。そして受信側では、受信系列を、まず符号化方式Bに対応する復号方式で復号し、さらにそれに対して符号化方式Aに対応する復号方式で復号することで情報系列を得るものである。このような連接符号を用いることにより、いずれか一つの誤り訂正方式を用いる場合よりも、優れたBER特性を得ることができる。
【0030】
例えば、BSデジタル放送の場合、図40に示すように、送信側では、情報系列に対して、まずReed-Solomon符号化器で符号化し、さらにそれに対して畳み込み符号化器で符号化する。そして受信側では、受信系列を、まず例えばビタビ復号器により畳み込み符号の復号を行い、されにそれに対してReed-Solomon復号器で復号することで情報系列を得る。
【0031】
ところで、畳み込み符号に対してビタビ復号を行った場合、符号雑音比(以下CNR)の低いデータ系列に連続的に誤訂正(以下バースト誤り)が発生しやすい。
【0032】
そのため、BSデジタル放送では、図41に示すように、RS符号化器と畳み込み符号化器との間にインタリーバを設け、さらに、ビタビ復号器とRS復号器との間にデインタリーバを設けている。
【0033】
ここで、インタリーバとは入力系列をある規則に従って並べ換える装置であり、デインタリーバとはインタリーバとは逆の規則に従って入力系列を並べ換える装置である。このように、インタリーバ及びデインタリーバを設けることによって、図42に示すように、ビタビ復号を行うことによって発生するバースト誤りを分散させて、誤り訂正能力を向上させている。
【0034】
一般的なインタリーバ、デインタリーバの論理的な動作を説明する。なお、インタリーバとデインタリーバは、データの並び替えの規則が逆であるだけで、入力系列をある規則に従って並べ替えるという動作は同一であるため、ここでは、インタリーバの動作に関してのみ説明を行う。また、インタリーバは、データの並び替え規則によってブロックインタリーバと畳み込みインタリーバとの大きく2つの種類に分けられるが、ここでは、一定数のデータ群からなるブロックにデータストリームを分割し、そのブロック内でインタリーブ処理が完結されているブロックインタリーバについての動作に関してのみ説明を行う。また、以下、単にインタリーバと称した場合には、ブロックインタリーバのことを表すものとする。
【0035】
インタリーバは、m行×n列で構成されるデータ配列を用い、このデータ配列に対するデータの書き込み順序と読み出し順序とを換えることによって、データの並べ替えを行うもの、と説明することができる。このm×nのデータ配列のことを、以下インタリーブブロック或いは単にブロックと呼ぶ。
【0036】
インタリーバは、まず、図43(a)に示すように、1次元のデータ入力系列を、行方向に順番に配列していき、m×nの2次元のデータ配列をメモリ上に構成する。続いて、図43(b)に示すように、このデータ配列からデータを列方向に順番にメモリ上から読み出していき、1次元のデータ出力系列を送出する。
【0037】
例えば、2×3のブロックを用いるインタリーバに対して、0,1,2,3,4,5・・・という入力系列を与えると、図44(a)に示すように、行方向に各データがメモリ上に書き込まれる。これに対して、インタリーバは、読み出し時には、図44(b)に示すように、2×3で構成されるデータ配列から列方向にデータをメモリ上から読み出し、0,3,1,4,2,5・・・という出力系列を送出する。
【0038】
以上がインタリーバの論理的な動作である。このようなインタリーバを用いることにより、BSデジタル放送では、ビタビ復号等によって生じたバースト誤りを、ランダム誤りに変換することができる。
【0039】
以上説明したインタリーバは、1ブロック分のデータの出力が全て完了した後に、次のブロックのデータの入力が行われており、ブロック毎に完結した動作を行っている。従って、このインタリーバに対して入出力されるデータは、ブロック単位で間欠的にメモリ上から入出力される。しかしながら、アプリケーションによっては、インタリーバに対して連続的にデータの入出力を行わなければならない場合がある。
【0040】
このような要求に応えることができるインタリーバとして、いわゆるダブルバッファ方式を採用したインタリーバが知られている。ダブルバッファ方式のインタリーバの回路構成の概略を図45に示す。
【0041】
ダブルバッファ方式のインタリーバは、1ブロック分のデータ容量を有する2つのメモリと、これら2つのメモリに対する入出力信号(例えば、書き込みデータ、書き込みアドレス、読み出しデータ、読み出しアドレス、制御信号)を切り替える入力セレクタ及び出力セレクタとを備えて構成される。
【0042】
入力セレクタ及び出力セレクタは、1ブロック処理するごとに選択するメモリを切り換える。また入力セレクタと出力セレクタは、常に互いに異なるメモリを選択する。例えば、インタリーバに入力された順序で第k番目のブロックを処理する場合、入力セレクタがメモリAを選択していれば、出力セレクタはメモリBを選択する。また、第(k+1)番目のブロックを処理するときには、選択するメモリが切り換えられ、入力セレクタはメモリBを選択し、出力セレクタはメモリAを選択する。入力データは、入力セレクタによって選択されたメモリに書き込まれ、出力データは出力セレクタによって選択されたメモリから読み出される。このため、常にいずれか一方のメモリに対してデータが入力され、また、常に他方のメモリからデータが出力される。従って、このダブルバッファ方式のインタリーバでは、連続的にデータの入出力を行いながらインタリーブ処理をすることができる。
【0043】
(BSデジタル放送のインタリーバ/デインタリーバ)
ところで、BSデジタル放送では、上述したスーパーフレーム単位でブロックインタリーブが行われる。BSデジタル放送のインタリーブ/デインタリーブは、TMCCや同期信号を除いた、主信号に対してのみ行われる。
【0044】
BSデジタル放送における具体的なインタリーバの動作(送信側)について説明をする。
【0045】
まず、インタリーバは、図46に示すように、スーパーフレーム内の先頭フレーム(第1フレーム:フレーム#0)をメモリに書き込む。この先頭フレーム(フレーム#0)は、スロット#0、スロット#1、スロット#2・・・スロット#46、スロット#47といったように、スロット番号順にメモリに書き込まれる。続いて、インタリーバは、次のフレーム(フレーム#1)をメモリに書き込む。この次のフレーム(フレーム#1)も、同様にスロット#0からスロット#47までメモリに書き込む。インタリーバは、以上の処理を最終フレーム(第8フレーム:フレーム#7)まで行う。
【0046】
続いて、インタリーバは、このように書き込んだスーパーフレームに対して、全フレームのi番目(スロット#0〜スロット#47)のスロット面を順番に切り出し、各スロット面をインタリーブブロックとしデータをフレーム方向に読み出していく。
【0047】
まず、インタリーバは、図47に示すように、第1スロット面(スロット#0)に対する読み出しを行う。第1スロット面(スロット#0)に対する読み出しは、第1フレーム(フレーム#0)の先頭バイトから行われ、続いて、第2フレーム(フレーム#1)の先頭バイト、第3フレーム(フレーム#2)の先頭バイト・・・といった順にフレーム方向に1バイトずつ読み出されていき、第8フレーム(フレーム#7)まで読み出すと第1フレーム(フレーム#0)に戻り、この第1フレームの2バイト目からフレーム方向に読み出しが繰り返されていく。そして、インタリーバは、この第1スロット面(スロット#0)に対して、1スロット分のデータ(203バイト:図47中A点)を読み出すと、一旦第1スロット面(スロット#0)に対する読み出しを停止する。
【0048】
続いて、インタリーバは、第2スロット面(スロット#1)に対する読み出しを行う。この第2スロット面(スロット#1)に対する読み出しも、第1スロット面(スロット#0)と同様に、フレーム方向に1バイトずつ読み出しを行う。そして、インタリーバは、この第2スロット面(スロット#1)に対して、1スロット分のデータ(203バイト)を読み出すと、一旦第2スロット面(スロット#1)に対する読み出しを一旦停止する。
【0049】
インタリーバは、以後、同様に第3スロット面(スロット#2)から第48スロット面(スロット#47)まで、フレーム方向に1バイトずつ1スロット分のデータ(203バイト)の読み出しを行う。
【0050】
続いて、インタリーバは、第1スロット面(スロット#0)に戻り、第1スロット面の204バイト目(図47中A点)から、フレーム方向に1バイトずつデータの読み出しを行う。やはり、この場合も、1スロット分のデータ(203バイト)を読み出すと、一旦第1スロット面に対する読み出しを停止して、第2スロット面(スロット#1)に移る。そして、インタリーバは、以後、同様に第3スロット面(スロット#2)から第48スロット面(スロット#47)まで、フレーム方向に1バイトずつ1スロット分のデータの読み出しを行う。
【0051】
インタリーバは、以上のように、各スロット面に対してフレーム方向にデータを1バイトずつ読み出していき、1スロット分のデータを読み出すと、次のスロット面に移るといったように処理を繰り返し、最終的に、第8フレーム(フレーム#7)の最終バイトまでの読み出しを行い、インタリーブ処理を終了する。
【0052】
すなわち、BSデジタル放送のインタリーバは、各フレームの第iスロット(スロット#(i−1))を切り出して形成されるスロット面を1つのインタリーブブロックとし、このインタリーブブロックを48個並列に用いたブロックインタリーブを行っている。各インタリーブブロックは、m=8、n=203のデータ配列となる。
【0053】
なお、BSデジタル放送では、スーパーフレームにダミースロットが含まれている場合には、このダミースロットも有効スロットと同様に、インタリーブ/デインタリーブが行われる。
【0054】
【発明が解決しようとする課題】
ところで、BSデジタル放送に、上述したようにダブルバッファ方式のインタリーバを適用すると、1つのインタリーブブロックが1スーパーフレームに対応するため、インタリーブ用のメモリ容量が非常に大きくなる。そのため、インタリーバを集積化した場合、インタリーブ用のメモリにかかるコストが非常に大きくなってしまっていた。
【0055】
本発明は、このような実情を鑑みてなされたものであり、デインタリーブのために用いられるメモリの容量を削減したデジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法を提供することを目的とする。
【0056】
【課題を解決するための手段】
本発明にかかるデジタル衛星放送受信装置は、符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成する再構成部と、1つのスーパーフレーム分のデータを格納可能なインタリーブメモリと、上記再構成部により再構成されたデータを上記インタリーブメモリに書き込み、上記インタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すメモリ制御部とを備え、上記メモリ制御部は、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込むことを特徴とする。
【0057】
また、本発明にかかるデジタル衛星放送受信装置は、上記スーパーフレームは、m×n個のデータからなるインタリーブブロックから構成され、上記インタリーブメモリには、0〜(m×n−1)までの論理アドレスが設定され、上記メモリ制御部は、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスを関数fk(i)=f(fk-1(i))に基づき算出し、この論理アドレスと同一のアドレスにk+1番目のインタリーブブロックのi番目に入力されるデータを書き込むことを特徴とする。
【0058】
ここで、f(i)=n×(i%m)+(i/m)とし、このf(i)に対してfk(i)は以下のような関係を有する。
f2(i)=f(f(i))
f3(i)=f(f2(i))
f4(i)=f(f3(i))
・
・
・
fk-1(i)=f(fk-2(i))
fk(i)=f(fk-1(i))
また、m,nは、1以上の整数であり、(x%y)とはxをyで割った余りを表し、(x/y)とは、xをyで割った商の整数部分を表す。
【0059】
また、本発明にかかるデジタル衛星放送受信装置は、上記インタリーブメモリから出力されたデータに対して疑似ランダム信号を加算することによって、送信側でエネルギー拡散されたデータを復元するエネルギー拡散処理部を備え、上記メモリ制御部は、逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付け、上記エネルギー拡散有効フラグは、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるように各スロットに対して付けられており、エネルギー拡散処理部は、エネルギー拡散有効フラグが付けられたスロットに対してのみ疑似ランダム信号を加算することを特徴とする。
【0060】
本発明にかかるデインタリーブ方法は、デジタル衛星放送の受信データをデインタリーブする際のデインタリーブ方法であって、符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成し、上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込むことを特徴とする。
【0061】
また、本発明にかかるデインタリーブ方法は、上記スーパーフレームは、m×n個のデータからなるインタリーブブロックから構成され、上記インタリーブメモリには、0〜(m×n−1)までの論理アドレスが設定され、上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスを関数fk(i)=f(fk-1(i))に基づき算出し、この論理アドレスと同一のアドレスにk+1番目のインタリーブブロックのi番目に入力されるデータを書き込むことを特徴とする。
【0062】
ここで、f(i)=n×(i%m)+(i/m)とし、このf(i)に対してfk(i)は以下のような関係を有する。
f2(i)=f(f(i))
f3(i)=f(f2(i))
f4(i)=f(f3(i))
・
・
・
fk-1(i)=f(fk-2(i))
fk(i)=f(fk-1(i))
また、m,nは、1以上の整数であり、(x%y)とはxをyで割った余りを表し、(x/y)とは、xをyで割った商の整数部分を表す。
【0063】
本発明にかかる逆エネルギー拡散処理方法は、デジタル衛星放送の受信データに対して疑似ランダム信号を加算して逆エネルギー拡散を行う逆エネルギー拡散処理方法であって、符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成し、上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込んでデインタリーブを行い、逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付け、エネルギー拡散有効フラグが付けられたスロットに対してのみ疑似ランダム信号を加算して逆エネルギー拡散処理を行うことを特徴とする。
【0064】
【発明の実施の形態】
以下、本発明の実施の形態として、本発明を適用したデジタル衛星放送(BSデジタル放送)の受信装置について説明を行う。
【0065】
デインタリーバの動作原理
まず最初に、具体的なBSデジタル放送の受信装置(BS受信装置)の具体例を説明する前に、この受信装置に用いられるデインタリーバの動作原理を、m×nのインタリーブブロックに対するインタリーバの動作に対応させて、一般的に説明をする。
【0066】
まず、m×nのブロックインタリーバに対する入力ブロックと出力ブロックとの間にある規則を一般化する。入力ブロックを{DI0,DI1,DI2,・・・DIi,・・・DImn-2,DImn-1}とし、出力ブロックを{DO0,DO1,DO2,・・・DOi,・・・DOmn-2,DOmn-1}とすると、入力ブロックと出力ブロックとの間の規則は、図1に示すように、DOi=DIf(i)で表される。
【0067】
ここで、iは、任意のデータのブロック内における位置を示す。このiは、0≦i≦(m×n−1)の範囲の整数値である。なお、ブロック内におけるデータ位置のことを、以下インデックスと呼ぶ。また、f(i)=n×(i%m)+(i/m) である。m,nは、それぞれ自然数を示す。mは、インタリーブの深さを示す。a%bは、aをbで割った余りを示す。a/bは、aをbで割った商(整数部分)を示す。
【0068】
本発明の実施の形態のBS受信装置に用いられるデインタリーバは、このように示される入力ブロックと出力ブロックとの関係(すなわち、インタリーブ規則)に基づき以下のような動作を行う。
【0069】
デインタリーバは、図2に示すような、m×n個のデータが格納可能なインタリーブメモリを有する。インタリーブメモリには、各セルに対して、#0〜#(n×m−1)の論理アドレスが付けられている。
【0070】
このようなデインタリーバには、インデックス順にデータが連続的に入力される。インタリーバは、その入力されたデータをメモリに連続的に格納し、上述したインタリーブ規則に従ってデータを入れ替えながらデータをメモリから連続的に出力していく。
【0071】
ここで、デインタリーバは、ある任意のデータを読み出す際に、一つの論理アドレスを指定し、指定した論理アドレスからそのデータを読み出す。そのとき、デインタリーバは、読み出した論理アドレスに、同時に、次のデータの書き込みも行う。すなわち、デインタリーバは、同一アドレスを指定することによって、読み出し及び書き込みを同時に行う。そして、このとき書き込まれるデータは、読み出しているブロックの次のブロックのデータであって、読み出しているデータのインデックスと同一のインデックスのデータである。
【0072】
具体的には、デインタリーバは、図3に示すように、論理アドレスxに対して、k番目のインタリーブブロックのインデックスiのデータを読み出すとともに、k+1番目のインタリーブブロックのインデックスiのデータを書き込むようにする。ここで、kは、自然数であり、インタリーバに入力された(或いは出力される)ブロックの入力番号(或いは出力順番)を示している。
【0073】
そして、任意のインタリーブブロックの任意のインデックスiのデータに対する論理アドレスは、以下の式に基づき算出される。
fk(i)=f(fk-1(i))
ここで、f(i)は、n×(i%m)+(i/m) となる。このf(i)は、上述したブロックインタリーバの入出力ブロックの関係を示す際に用いた関数である。また、fk(i)は、このf(i)に対して以下のような関係を有する。
f2(i)=f(f(i))
f3(i)=f(f2(i))
f4(i)=f(f3(i))
・
・
・
fk-1(i)=f(fk-2(i))
fk(i)=f(fk-1(i))
【0074】
以上のように本発明を適用したBS受信装置に用いられるデインタリーバは、入出力ブロックのインタリーブ規則を表す関数f(i)と、過去に求めたインタリーブメモリに対する論理アドレスとに基づき、k番目のブロックのi番目に出力すべきデータが格納されている論理アドレスを求める。そして、このデインタリーバは、この論理アドレスに対してアクセスを行い、格納されているk番目のブロックのi番目に出力すべきデータを読み出すとともに、k+1番目のブロックのi番目に入力されるデータを格納する。
【0075】
このようなデインタリーバの動作をブロック順に具体的に説明をしていくと以下のようになる。
【0076】
インタリーブメモリには論理アドレスが#0〜#(mn−1)まで付けられており、初期状態では、各アドレスに有効なデータは存在していないものとする。また、インタリーブブロックのデータ数は、m×nである。
【0077】
最初の1ブロック分のデータはインデックス順に入力される。デインタリーバは、インデックス順に入力されたデータを、インタリーブメモリの論理アドレス順に書き込んでいく。すなわち,i番目の入力データは、論理アドレス#iに書き込まれる。
【0078】
続いて、デインタリーバは、最初のブロックのデータを読み出しながら、2ブロック目のデータをインタリーブメモリに書き込む動作を行う。最初のブロックのi番目に出力すべきデータは、f(i)=n×(i%m)+(i/m)番目に入力されたデータである。最初のブロックのf(i)=n×(i%m)+(i/m)番目に入力されたデータは、論理アドレス#f(i)に書き込まれている。従って、デインタリーバは、最初のブロックのインデックスiのデータを論理アドレス#f(i)から読み出す。また、デインタリーバは、これと同時に2ブロック目のi番目に入力されたデータをこの論理アドレス#f(i)に書き込む。
【0079】
次に、デインタリーバは、2ブロック目のデータを読み出しながら、3ブロック目のデータをインタリーブメモリに書き込む動作を行う。前の場合と同様に2ブロック目のi番目に出力すべきデータは、f(i)=n×(i%m)+(i/m)番目に入力されたデータである。ここで、2ブロック目でi番目に入力されたデータは、前の動作で論理アドレス#f(i)に書き込まれている。従って、デインタリーバは、2ブロック目のインデックスiのデータを論理アドレス#f(f(i))から読み出す。また、デインタリーバは、これと同時に3ブロック目のi番目に入力されたデータをこの論理アドレス#f(f(i))に書き込む。なお、このf(f(i))は、以下f2(i)と表記する。
【0080】
以下同様に、デインタリーバは、3ブロック目のデータを読み出しながら、4ブロック目のデータをインタリーブメモリに書き込む場合には、3ブロック目のインデックスiのデータを論理アドレス#f(f(f(i)))から読み出し、これと同時に4ブロック目のi番目に入力されたデータをこの論理アドレス#f(f(f(i)))に書き込む。なお、このf(f(f(i)))は、以下f3(i)と表記する。
【0081】
そして、一般化して、kブロック目のデータを読み出しながら、(k+1)ブロック目のデータをメモリに書き込む場合には、kブロック目のインデックスiのデータを論理アドレス#fk(i)から読み出し、これと同時に(k+1)ブロック目のi番目に入力されたデータをこの論理アドレス#fk(i)に書き込む。
【0082】
さらに具体的に、2×3のブロックインタリーブを行うデインタリーバに、0,1,2,3,4,5,6,7,・・・といったデータを入力する場合について図4を用いて説明をする。
【0083】
インタリーブメモリには、図4(a)に示すように、#0から#5までの論理アドレスが付けられているものとする。
【0084】
まず、デインタリーバは、図4(b)に示すように、第1ブロック(0,1,2,3,4,5)を、論理アドレス順に書き込んでいく。
【0085】
続いて、デインタリーバは、図4(c)に示すように、第1ブロックの読み出し、及び、第2ブロック(6,7,8,9,10,11)の書き込みを行う。このとき第1ブロックの読み出し順序は、f(i)=3×(i%2)+(i/2)に従うので、インタリーブメモリに対するアクセス順序は、図中点線で示すように、#0→#3→#1→#4→#2→#5といった順序になる。従って、アドレス#0のデータ1が読み出されるとこのアドレス#0に対してデータ6が書き込まれ、アドレス#3のデータ3が読み出されるとこのアドレス#3に対してデータ7が書き込まれ、アドレス#1のデータ1が読み出されるとこのアドレス#1に対してデータ8が書き込まれ、アドレス#4のデータ4が読み出されるとこのアドレス#4に対してデータ9が書き込まれ、アドレス#2のデータ2が読み出されるとこのアドレス#2に対してデータ10が書き込まれ、アドレス#6のデータ5が読み出されるとこのアドレス#6に対してデータ11が書き込まれる。
【0086】
続いて、デインタリーバは、図4(d)に示すように、第2ブロックの読み出し、及び、第3ブロック(12,13,14,15,16,17)の書き込みを行う。このとき第2ブロックの読み出し順序は、f2(i)に従うので、インタリーブメモリに対するアクセス順序は、図中点線で示すように、#0→#4→#3→#2→#1→#5といった順序になる。従って、アドレス#0のデータ6が読み出されるとこのアドレス#0に対してデータ12が書き込まれ、アドレス#4のデータ9が読み出されるとこのアドレス#4に対してデータ13が書き込まれ、アドレス#3のデータ7が読み出されるとこのアドレス#3に対してデータ14が書き込まれ、アドレス#2のデータ10が読み出されるとこのアドレス#2に対してデータ15が書き込まれ、アドレス#1のデータ8が読み出されるとこのアドレス#1に対してデータ16が書き込まれ、アドレス#6のデータ11が読み出されるとこのアドレス#6に対してデータ17書き込まれる。
【0087】
なお、以上用いたf(i)及びf2(i)の具体的な値を、図5に示す。
【0088】
以上のように、本発明の実施の形態のBS受信装置に適用されるデインタリーバでは、kブロック目のi番目のデータの読み出しを行う際に、その読み出しアドレスをfk(i)に基づき算出するので、1インタリーブブロック分のデータ容量を有するメモリにより、連続的にデータの入出力をしながらデインタリーブを行うことができる。
【0089】
BSデジタル放送の受信装置でのフレーム構成
また、以上のような1インタリーブブロック分のデータ容量のインタリーブメモリを用いてインタリーブを実現するデインタリーバをBS受信装置にそのまま適用した場合、以下のような問題が生じる。
【0090】
BSデジタル放送では、QPSKやBPSKといったダミースロットが割り当てられる変調方式を用いる場合には、図38に示したように、最小割当単位内で、有効スロットをまず先頭に配置し、続いてダミースロットを配置するように割り付けを行うものとしている。しかしながら、このダミースロットはフレームクロックを一定にするために擬似的に挿入しているデータであり実際には伝送されない。そのため、低速の転送レートのスロットが含まれるスーパーフレームから、高速の転送レートのみのスロットから構成されるスーパーフレームへ切り替わった場合などでは、最小割当単位の先頭に有効スロットを配置し、続いてダミースロットを配置するような構成では、上述したような読み出されたアドレスに次のデータの書き込みを行うようなインタリーブ処理に破綻が生じてしまう。例えば、48スロット全てQPSK1/2で構成されるスーパーフレームから48スロット全てTC8PSKで構成されるスーパーフレームに切り換わった場合は、有効データのデータ数が2倍となる。そのため、同一のアドレスに読み出しと書き込みを行うようにする上述したデインタリーバでは、TC8PSKのみで構成されるスーパーフレームの書き込みが半分しかできなくなってしまう。
【0091】
従って、本発明の実施の形態のBS受信装置に用いられるデインタリーバでは、受信側において、図6に示すように、最小割当単位毎に、ダミースロットを先に配置して有効スロットを後に配置するようにフレームを再構成したのち、デインタリーブ処理を行っている。
【0092】
また、BSデジタル放送の受信装置の構成は、デインタリーブ処理を行った後に、逆エネルギー拡散処理が行われる。しかしながら、本発明の実施の形態のデインタリーバによりフレーム構造を再構成しているので、デインタリーバからの出力をそのまま逆エネルギー拡散部に供給すると、出力値が誤ってしまう。
【0093】
従って、本発明の実施の形態のBS受信装置に用いられるデインタリーバでは、出力する各スロットに対して、エネルギー拡散有効フラグを付けて出力している。このエネルギー拡散有効フラグは、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるように各スロットに対して付けられている。そして、デインタリーバの後段に設けられた逆エネルギー拡散部が、このフラグが付けられたスロットに対してのみ逆エネルギー拡散をするように処理を行っていく。このことにより、正しい逆エネルギー拡散処理を行うことができるようになる。
【0094】
具体的な実施の形態
つぎに、本発明の実施の形態のBS受信装置について説明をする。
【0095】
(受信装置の全体構成)
まず、BS受信装置の全体構成について、図7を用いて説明する。
【0096】
BS受信装置1は、受信部2と、復調部3と、ビタビ復号部4と、デインタリーバ5と、逆エネルギー拡散部6と、RS(Reed-Solomon)復号部7とを備えている。
【0097】
受信部2は、パラボラアンテナにより検出された電波を受信し、所定のIF周波数に周波数変換をする。復調部3は、IF信号を復調してデジタルデータに変換する。ビタビ復号部4は、受信したデジタルデータに対してビタビ復号をして、誤り訂正を行う。デインタリーバ5は、ビタビ復号されたデータに対して、送信側で行われたインタリーブと逆のインタリーブ規則により、スーパーフレーム単位でブロックインタリーブを行う。逆エネルギー拡散部6は、送信側で行われたエネルギー拡散処理の逆処理を行う。RS復号部7は、付加されているRS符号に基づきデータの誤り訂正処理を行う。誤り訂正を行った結果MPEG−2システムのトランスポートストリームが出力される。
【0098】
(デインタリーバの構成及び動作)
つぎに、BS受信装置1に用いられるデインタリーバ5の具体的な構成について説明する。
【0099】
デインタリーバ5は、図8に示すように、アドレス生成回路11と、入力バッファ12と、ダミーデータセレクタ13と、インタリーブメモリ14と、OR回路15とから構成される。
【0100】
アドレス生成回路11は、インタリーブメモリ14に対する読み書き用アドレス(実アドレス)を発生する。このアドレス生成回路11では、上述したインタリーブブロックに対するインタリーブ規則を表す関数f(i)と、過去に求めたインタリーブメモリに対する論理アドレスとに基づき、k番目のブロックのi番目に出力すべきデータが格納されている読み書き用アドレスを算出している。
【0101】
ここで、このデインタリーバ5では、第iスロット(スロット#(i−1))を切り出して形成される8×203のブロックを1つのインタリーブブロックとして、送信側で行われたインタリーブ処理と逆のインタリーブ処理を行う。そのため、このデインタリーバ5は、48個のインタリーブブロックに対して、並列にブロックインタリーブを行うことになる。
【0102】
そのため、アドレス生成回路11では、まず、2組の変数(r,s)で表した2次元のアドレスを算出し、その論理アドレスをインタリーブメモリ14に対して実際にアクセスするための一次元のアドレスに変換している。rは、1つのインタリーブブロック内に連続的に付けられた論理アドレス(0≦r≦203−1:整数)であり、sは、スロット番号(0≦s≦7)である。以下rを、ブロックアドレスと呼び、sをスロットアドレスと呼ぶ。また、(r,s)を論理アドレスと呼ぶ。また、2次元の論理アドレスを1次元のアドレス空間に変換する場合には、例えばr+s×48といったような演算を行えばよい。インタリーブメモリ14に実際のアクセスを行うための1次元のアドレス(読み書きアドレス)を実アドレスとも呼ぶ。
【0103】
また、アドレス生成回路11は、入力バッファ12に対して、TMCC読み出し要求及び主信号読み出し要求を発生する。
【0104】
入力バッファ12には、ビタビ復号部4からの入力データが入力される。入力バッファ12は、入力データを主信号部とTMCCとを分離し、分離した状態で入力データを一時的に格納する。そして、入力バッファ12は、アドレス生成回路11からTMCC読み出し要求があると、一時的に格納しているTMCCをセレクタ13を介してインタリーブメモリ14に供給する。また、入力バッファ12は、アドレス生成回路11から主信号読み出し要求があると、一時的に格納している主信号をセレクタ13を介してインタリーブメモリ14に供給する。入力バッファ12は、要求されたデータをインタリーブメモリ14に転送すると、ACK信号をアドレス生成回路11に返信する。
【0105】
ダミーデータセレクタ13は、アドレス生成回路11からTMCC読み出し要求及び主信号読み出し要求のいずれの要求も発生されていないときには、0データをインタリーブメモリ14に供給し、アドレス生成回路11からTMCC読み出し要求及び主信号読み出し要求のいずれかが発生されているときには、入力バッファ12から出力されるデータをインタリーブメモリ13に転送する。
【0106】
インタリーブメモリ14は、アドレス生成回路11から発生された読み書き用アドレスにより指定されたアドレスに格納されているデータを出力データとして出力するとともに、この読み書きアドレスに指定されたアドレスにセレクタ13から出力されたデータを格納する。
【0107】
OR回路15は、TMCC読み出し要求と主信号読み出し要求とのORを取って、セレクタ13の切り換え動作を制御する。
【0108】
このような構成のデインタリーバ5の全体動作を説明する。
【0109】
デインタリーバ5は、アドレス生成回路11の内部で生成するタイミングパルスに基づき動作する。アドレス生成回路11は、内部で生成したタイミング毎にインタリーブメモリ14をアクセスするための読み書き用アドレスを生成する。
【0110】
それと同時に、アドレス生成回路11は、TMCC信号をインタリーブメモリ14に書き込むならば、TMCC読み出し要求を発行し、セレクタ13を入力バッファ12の出力をセレクトするように制御する。或いは、主信号(有効スロット)をインタリーブメモリ14に書き込むならば、主信号読み出し要求を発行し、セレクタ13が入力バッファ12の出力をセレクトするように制御する。また、或いは、主信号(有効スロット)及びTMCC信号ともに書き込まないならば、すなわち、ダミースロットを書き込むならば、入力バッファ12には読み出し要求を発行せず、セレクタ13が0を出力するように制御する。
【0111】
また、入力バッファ12は、読み出し要求を受けると、バッファ内に要求されたデータが存在すれば、ACK信号をアドレス生成回路11にアサートし、アドレス生成回路11から要求されたデータを出力する。入力バッファ12は、要求されたデータがバッファ内に存在しなければ、ACK信号をアサートせず、データも出力しない。
【0112】
アドレス生成回路11は、読み出し要求を発行して、ACK信号がアサートされない場合、そのタイミングではインタリーブメモリ14から何も出力させないように制御する。そして、アドレス生成回路11は、次のタイミングで再び同じ動作をする( 同じアドレスを出力し、同じ読み出し要求を発行する。)。
【0113】
インタリーブメモリ14は、ダミースロットを処理している場合又は入力バッファ12が読み出し要求に対してACK信号をアサートした場合には、読み書き用アドレスにより指定されたアドレスに格納されているデータを読み出して出力し、それと同時に出力イネーブル信号を発生する。また、インタリーブメモリ14は、この読み書きアドレスにより指定されたアドレスに対して、セレクタ13から出力されたデータを書き込むようにする。
【0114】
(アドレス生成回路の構成及び動作)
つぎに、アドレス生成回路11について、さらに詳細に説明をする。
【0115】
アドレス生成回路11では、インタリーブメモリ14に対する論理アドレスであるfk(i)の算出を、fk(i)=fk-1(f(i))という関係を利用して行っている。
【0116】
具体的には、配列A{fk(i){0≦i<m×n}}を記憶するメモリテーブルと、配列B{fk-1(i)}を記憶するメモリテーブルと、f(i)を演算する演算回路とを用いて、fk(i)を算出する。この2つのメモリテーブルは、0〜(m×n−1)までのアドレスが設定されている。このアドレスは、配列内を構成する各データの配置順序を指定するものである。配列A及び配列Bを構成するデータ群は、i{0≦i<m×n}で初期化されている。
【0117】
(k)ブロック目のi番目のデータに対する論理アドレスを出力する場合、まず、f(i)が算出され、このf(i)が配列Bを記憶するメモリテーブルのアドレスとして供給され、この配列Bから値が読み出される。そして、この配列Bから読み出された値が、配列Aを記憶するメモリテーブルのアドレスiに書き込まれる。そして、この配列Aのアドレスiに格納される値が(k)ブロック目のi番目の論理アドレスとなる。続いて、次のブロックに対する処理を行う場合には、配列Aの値を配列Bにそのまま代入して更新すればよい。例えば、配列Bを記憶するメモリテーブルと、配列Aを記憶するメモリテーブルと1ブロック毎に交代すればよい。
【0118】
なお、配列Bに対するアクセス順序をインデックス順序に従う方が回路規模が簡単になるという観点から、配列Aの値を配列Bにそのまま代入して更新するのではなく、配列A{fk(f-1(i))}を配列Bに代入して更新するようにしてもよい。f-1(i)は、f(i)の逆関数である。
【0119】
具体的に、このような演算を行うことができるアドレス生成回路11の回路構成を図9に示す。
【0120】
アドレス生成回路11は、この図9に示すように、制御部21と、フラグD発生回路22と、フラグE発生回路23と、インデックスカウンタ24と、第1のアドレス用テーブル25と、第2のアドレス用テーブル26と、f′(i)発生回路27と、第1のセレクタ28と、第2のセレクタ29と、第3のセレクタ30と、第4のセレクタ31と、第5のセレクタ32と、比較回路33と、論理アドレス/実アドレス変換回路34とを有している。
【0121】
制御部21は、内部に、タイミング生成回路21aと、バイトカウンタ21bと、スロットカウンタ21cと、フレームカウンタ21dと、TMCCデコーダ21eと、制御信号発生回路21fとを有している。
【0122】
タイミング生成回路21aは、アドレス生成回路11全体の動作クロックとなるタイミングパルスを生成する。
【0123】
このタイミングパルスの1周期は、「1スーパフレーム分の時間内でTMCC信号と主信号との両者をインタリーブメモリ14から出力することができる周期」に設定される。例えば、シンボルクロックを4分周したもの等を用いてもよいし、それよりも速いものでも使用可能である。さらに、バースト信号を考慮して、より遅くしたり、TMCC信号と主信号との出力ポートを別にするなどしてさらに遅いタイミングで動作させてもよい。
【0124】
バイトカウンタ21bは、タイミング生成回路21aにより生成されたタイミングパルスを、1スロット周期(203バイト周期)分カウントするカウンタ回路である。このバイトカウンタ21bは、1スロット分(203バイト)分のカウントが完了すると、スロットの先頭を示すパルスを発生する。このバイトカウンタ21bは、インタリーブメモリ14に対して有効スロットの書き込みを行っている場合と、インタリーブメモリ14に対してダミースロットの書き込みを行っている場合とで、そのカウント動作が異なる。有効スロットの書き込みを行っている場合には、入力バッファ12からACK信号がアサートされればカウンタ値をインクリメントし、ACK信号がアサートされなければカウンタ値をインクリメントしないように動作をする。また、ダミースロットの書き込みを行っている場合には、ACK信号がアサートされるかされないかに関わらず、カウンタ値をインクリメントするように動作をする。このように動作することにより、バイトカウンタ21bは、1スロット分(203バイト)のアドレス発生処理が、確実に完了する毎に発生するパルスを出力することができる。
【0125】
スロットカウンタ21cは、バイトカウンタ21bから発生されたパルスを、1フレーム周期(48スロット)分カウントしするカウンタ回路である。このスロットカウンタ21cによりカウントされたカウント値は、スロット番号を示すこととなる。スロットカウンタ21は、カウント値をスロットアドレスsとして論理アドレス/実アドレス変換回路34に供給する。また、これとともにスロットカウンタ21cは、1フレーム分(48スロット)のカウントが完了する毎に、フレームの開始位置を示すパルスを発生する。
【0126】
フレームカウンタ21dは、スロットカウンタ21cから発生されたパルスを、1スーパーフレーム周期(8フレーム周期)分カウントするカウンタ回路である。このフレームカウンタ21dは、1スーパーフレーム分(8フレーム)のカウントが完了すると、スーパーフレームの開始位置を示すパルスを発生する。
【0127】
TMCCデコーダ21eは、Reed-Solomon復号されたのちのTMCC信号が供給され、現在処理中のスロットが有効スロットであるか、或いは、ダミースロットであるか、或いは、そのスロットの変調/符号化率は何か等のデコード情報を算出する。
【0128】
制御信号生成回路21fは、TMCCデコーダ21eのデコード情報やシンクコード等に基づき、現在処理中のデータが有効スロットであるか或いはTMCC信号であるかを判断し、有効スロットであれば主信号読みだし要求を出力し、TMCC信号であればTMCC読み出し要求を出力する。ダミースロットであれば、いずれの要求も出力しない。
【0129】
また、制御信号生成回路21fは、TMCCデコーダ21eのデコード情報等に基づき、現在出力しているスロットに対するエネルギー拡散有効フラグ(EDENフラグ)を発生する。なお、このEDENフラグの発生アルゴリズムは、その詳細を後述する。
【0130】
フラグD発生回路22は、0又は1を示すフラグであるフラグDを発生する回路である。フラグD発生回路22には、スタート信号が供給される。スタート信号は、アドレス生成回路11に対する動作開始或いはアドレス生成回路11を再起動する場合に発行される命令であり、外部のシステムコントローラ等から発行される。フラグD発生回路22は、このスタート信号によりフラグDが0に初期化され、リセット後の最初の1スーパーフレーム分のデータの処理が完了した時点(すなわち、リセット信号の後、フレームカウンタ21dからのスーパーフレームの開始位置を示すパルスを2回受けた時点)で、フラグDが1にセットされる。そして、以後、処理が停止するまで、このフラグDを1に保持したままにしておく。
【0131】
フラグE発生回路23は、0又は1を示すフラグであるフラグEを発生する回路である。フラグE発生回路23には、スタート信号が供給される。フラグE発生回路26は、このスタート信号によりフラグEが0に初期化される。また、フラグE発生回路26は、フレームカウンタ21dからのスーパーフレームの開始位置を示すパルスを受け取る毎に、フラグEの値を反転させる。
【0132】
インデックスカウンタ24は、インデックス値iを発生するインクリメントカウンタ24aと、インデックス値iを一時的に記憶するラッチ24bとを備えている。このインデックスカウンタ24は、以下の(1)〜(5)の規則に従い動作する。
【0133】
(1)スタート信号が与えられるとインクリメントカウンタ24a及びラッチ24bがともに0にリセットされる。(2)フレームカウンタ21dからのスーパーフレームの開始位置を示すパルスの発生タイミングで、インクリメントカウンタ24a及びラッチ24bがともに0にリセットされる。(3)フレームカウンタ21dからパルスが発生されずスロットカウンタ21cからパルスが発生されたタイミング(スーパーフレーム開始位置ではないフレーム開始位置)で、インクリメントカウンタ24aが保持しているインデックス値iを、ラッチ24bにセットする。(4)スロットカウンタ21cからパルスが発生されずバイトカウンタ21bからパルスが発生されたタイミング(フレーム開始位置ではないスロットの先頭)で、ラッチ24bに格納されているインデックス値iを、インクリメントカウンタ24aにセットする。(5)フレームの開始位置ではなく且つスロットの先頭ではなければ、バイトカウンタ21aによるカウントタイミングに応じて、インクリメントカウンタ24aが保持しているインデックス値iを1インクリメントする。
【0134】
インデックスカウンタ24は、このような動作を行うことによって、8×203のインタリーブブロックが48スロット分あるBSデジタル放送のデインタリーブ処理に対応したインデックス値iを、f′(i)発生回路27及び第1及び第2のアドレス用テーブル25、26に供給することができる。
【0135】
第1のアドレス用テーブル25及び第2のアドレス用テーブル26は、1インタリーブブロック分のブロックアドレスのデータを格納することができるテーブルである。第1のアドレス用テーブル25及び第2のアドレス用テーブル26には、内部セルに、それぞれ#0から#(8×203−1)までのテーブルアドレスが設定されている。第1のアドレス用テーブル25及び第2のアドレス用テーブル26に対して、このアドレスを指定することにより、そのテーブルアドレスに対してのデータの書き込み及び読み出しをすることができる。また、第1のアドレス用テーブル25及び第2のアドレス用テーブル26には、アウトプット端子ODT、インプット端子IDT、アドレス端子ADR、ライトイネーブル端子WEが設けられている。ライトイネーブル端子WEは、書き込みを許可する端子である。
【0136】
f′(i)発生回路27は、インデックスカウンタ24から出力されたインデックス値iが入力される。f′(i)は、入力されたインデックスiに対して、上述したf′(i)を演算する回路である。具体的な回路構成は、図10に示すように、入力されたインデックスiに対するmの剰余を演算する剰余回路41と、剰余回路41の出力にnを乗算する乗算回路42と、入力されたインデックスiをmで割ったときの商(整数値)を演算する除算回路43と、乗算回路42の出力と除算回路43の出力とを加算する加算回路44とから構成される。なお、ここで、mは8、nは203である。
【0137】
第1のセレクタ28は、フラグEに応じて、第1のアドレス用テーブル25からの出力と第2のアドレス用テーブル26からの出力とを切り換えて、いずれか一方の出力データを選択して第2のセレクタ29に出力する。第1のセレクタ28は、フラグEが0であれば第1のアドレス用テーブル25を選択し、フラグEが1であれば第2のアドレス用テーブル26を選択する。
【0138】
第2のセレクタ29は、フラグDに応じて、インデックスカウンタ24からの出力と第1のセレクタ28からの出力とを切り換えて、いずれか一方の出力データを選択して論理アドレス/実アドレス変換回路34に出力する。第2のセレクタ29は、フラグDが0であればインデックスカウンタ24を選択し、フラグDが1であれば第1のセレクタ28を選択する。
【0139】
第3のセレクタ30は、フラグEに応じて、f′(i)発生回路27の出力とインクリメントカウンタ23の出力とを切り換えて、いずれか一方からの出力データを選択して、第1のアドレス用テーブル25のアドレス端子に出力する。第3のセレクタ30は、フラグEが0であればインデックスカウンタ24を選択し、フラグEが1であればf′(i)発生回路27を選択する。
【0140】
第4のセレクタ31は、フラグEに応じて、f′(i)発生回路27の出力とインクリメントカウンタ23の出力とを切り換えて、いずれか一方からの出力データを選択して、第2のアドレス用テーブル26のアドレス端子に出力する。第4のセレクタ31は、フラグEが0であればf′(i)発生回路27を選択し、フラグEが1であればインデックスカウンタ24を選択する。
【0141】
第5のセレクタ32は、フラグEに応じて、第1のアドレス用テーブル25又は第2のアドレス用テーブル26を切り換えて、いずれか一方のインプット端子IDTに、第2のセレクタ29からの出力を入力する。第5のセレクタ32は、フラグEが0の場合には第2のアドレス用テーブル26を選択し、フラグEが1の場合には第1のアドレス用テーブル25を選択する。
【0142】
比較回路33は、スロットカウンタ21cの値を参照し、このスロットカウンタ21cの値が47となったときにライトイネーブル信号を第1のアドレス用テーブル25及び第2のアドレス用テーブル26に供給する。すなわち、比較回路33は、最終スロットとなったときに、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に対する書き込みを許可する回路である。
【0143】
論理アドレス/実アドレス変換回路34は、スロットカウンタ21eの値をスロットアドレスsとし、第2のセレクタ29から出力される値をブロックアドレスrとしたときの論理アドレス(r,s)を、インタリーブメモリ14に供給する1次元の実アドレスに変換する。
【0144】
次に、このような構成のアドレス生成回路11のブロックアドレスの出力動作及びアドレス用テーブルの更新動作について説明をする。
【0145】
フラグDが0の場合(最初のスーパーフレームに対する処理の場合)、第2のセレクタ29がインデックスカウンタ24を選択し、インデックスカウンタ24から出力されるインデックス値iがそのままブロックアドレスとして出力される。
【0146】
フラグDが1で且つフラグEが0の場合(2番目以降のスーパーフレームに対する処理の場合)、第3のセレクタ30がインデックスカウンタ24を選択して、インデックスカウンタ24から出力されるインデックス値iが第1のアドレス用テーブル25のテーブルアドレスとして与えられる。そして、第1のセレクタ28が第1のアドレス用テーブル25を選択し、インデックスカウンタ24から与えられたテーブルアドレス(インデックス値i)により指定されたアドレスに格納されているデータが、ブロックアドレスとして出力される。
【0147】
フラグDが1で且つフラグEが1の場合(2番目以降のスーパーフレームに対する処理の場合)、第4のセレクタ31がインデックスカウンタ24を選択して、インデックスカウンタ24から出力されるインデックス値iが第2のアドレス用テーブル26のテーブルアドレスとして与えられる。そして、第1のセレクタ28が第2のアドレス用テーブル26を選択し、インデックスカウンタ24から与えられたテーブルアドレス(インデックス値i)により指定されたアドレスに格納されているデータが、ブロックアドレスとして出力される。
【0148】
また、フラグEが0の場合、第5のセレクタ32が第2のアドレス用テーブル26を選択し、第2のセレクタ29から出力されるブロックアドレスが第2のアドレス用テーブル26に格納される。すなわち、第1のアドレス用テーブル25から出力されたブロックアドレス値が、第2のアドレス用テーブル26に格納される。このとき、入力データされるデータの格納アドレスは、第4のセレクタ31がf′(i)発生回路27を選択することから、このf′(i)発生回路27から出力される値により指定される。
【0149】
フラグEが1の場合、第5のセレクタ32が第1のアドレス用テーブル25を選択し、第2のセレクタ29から出力されるブロックアドレスが第1のアドレス用テーブル25に格納される。すなわち、第2のアドレス用テーブル26から出力されたブロックアドレス値が、第1のアドレス用テーブル25に格納される。このとき、入力データされるデータの格納アドレスは、第3のセレクタ30がf′(i)発生回路27を選択することから、このf′(i)発生回路27から出力される値により指定される。
【0150】
なお、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に対する書き込みは、比較回路33から出力されるライトイネーブル信号により制御される。ライトイネーブル信号は、スロットカウンタ21cのカウント値が47となったときに与えられ、このときに各アドレス用テーブルに対する書き込みが許可される。すなわち、スロット#0〜スロット#46に対する処理を行っている場合には、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に格納されているデータの更新がされず、スロット#47に対する処理を行っている場合のみに、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に格納されているデータの更新がされる。
【0151】
このような動作が行われることによりアドレス生成回路11では、配列A{fk(i){0≦i<m×n}}を記憶するアドレス用テーブルと、配列B{fk-1(i)}を記憶するアドレス用テーブルと、関数f′(i)を発生する演算回路を用意して、fk-1(f(i))を演算し、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出することができる。
【0152】
つぎに、アドレス生成回路11の動作を図11及び図12のタイミングチャートを用いて説明をする。
【0153】
図11は、バイトカウンタ21b及びスロットカウンタ21cのカウント値の変遷について説明するためのタイミングチャートである。
【0154】
図11中、(a)はスタート信号、(b)はタイミング生成回路21aから出力されるタイミングパルス、(c)は主信号読み出し要求、(d)はACK信号、(e)はバイトカウンタのカウント値、(f)はスロットカウンタのカウント値をそれぞれ示している。
【0155】
アドレス生成回路11は、スタート信号によって動作を開始し、タイミングパルスを基準に処理を行っていく。タイミングパルスが1つ発生すると、制御信号生成回路21fは、現在処理中のデータがTMCCデータか主信号かダミーデータかを調べ、主信号を処理中ならば、入力バッファ12に対して主信号読み出し要求を発行する。すると、入力バッファ12は、有効データを格納しているかどうかに応じてACK信号を返信する。入力バッファ12がACK信号を返信してきた場合には、バイトカウンタ21bは、カウンタ値をインクリメントし、ACK信号が返信されてこなかった場合にはバイトカウンタ21bは、カウンタ値をインクリメントしない。
【0156】
一方、ダミースロットを処理中ならば、バイトカウンタ21bは、入力バッファ12に対して読み出し要求が返信されてこなくても、タイミングパルスに従ってカウンタ値をインクリメントしていく。
【0157】
図12は、インデックスカウンタ24のインデックス値の更新タイミング及びアドレス用テーブルの更新タイミングについて説明するためのタイミングチャートである。
【0158】
図12中、(a)はバイトカウンタ21bのカウント値、(b)はスロットカウンタ21cのカウント値、(c)はフレームカウンタ21dのカウント値、(d)はインデックスカウンタ24のインクリメントカウンタ24aから出力されるインデックス値、(e)はインデックスカウンタ24のラッチ24bに格納されているレジスタ値、(f)はアドレス用テーブルに対するライトイネーブル信号、(g)は出力されるブロックアドレスをそれぞれ示している。なお、この図12では簡単のため全てACK信号が返信され、バイトカウンタ21bのカウント値が一定タイミングでインクリメントされている場合について示しているが、ACK信号が返信がされない場合も、信号の変化間隔が均等にならないだけで、動作は本質的に変わらない。
【0159】
インデックスカウンタ24は、スロットカウンタ21cのカウント値が変化するタイミングで、ラッチ24bに格納されているレジスタ値を、インクリメントカウンタ24aに取り込み、インデックス値を更新する。また、インデックスカウンタ24は、バイトカウンタ21bのカウント値が変化するタイミングで、インデックス値をインクリメントする。また、インデックスカウンタ24は、フレームカウンタ21dのカウント値が変化するタイミングで、インデックス値をラッチ24bにコピーする。
【0160】
このようなタイミングで動作させることで、1フレーム(48スロット)に対して全て同じパターンでアクセスできる。
【0161】
また、アドレス用テーブル25,26の書き換えは、スロット#47の処理中に行なう。この書き換えは、これはライトイネーブル信号が発行されているタイミングに、ブロックアドレスがアドレス用テーブル25,26に入力されることにより、更新される。
【0162】
(入力バッファの構成及び動作)
つぎに、入力バッファ12について、図13を用いてさらに詳細に説明をする。
【0163】
入力バッファ12は、制御回路51と、主信号用バッファ52と、TMCC用バッファ53と、入力セレクタ54と、出力セレクタ55とを有している。
【0164】
制御回路51には、入力データが有効なデータであるかを示す入力データ有効ビットと、主信号読み出し要求と、TMCC読み出し要求が入力される。制御回路51は、入力セレクタ54及び出力セレクタ55の切り換え制御を行う。
【0165】
主信号用バッファ52は、FIFO(ファーストインファーストアウト)メモリからなり、主信号を格納するメモリである。
【0166】
TMCC用バッファ53は、FIFO(ファーストインファーストアウト)メモリからなり、TMCC信号を格納するメモリである。
【0167】
入力セレクタ54は、制御回路51の制御に応じて主信号用バッファ52とTMCC用バッファ53とを切り換えて、いずれか一方のバッファに入力データを書き込む。
【0168】
出力セレクタ55は、制御回路51の制御に応じて主信号用バッファ52とTMCC用バッファ53とを切り換えて、いずれか一方のバッファから出力データを読み出す。
【0169】
制御回路51は、入力されたデータが主信号であるかTMCC信号であるかを、例えばSync信号等を参照して判断する。制御回路51は、入力データが主信号であれば入力セレクタ54に0を与え、主信号用バッファ52に格納する。制御回路51は、入力データがTMCC信号であれば入力セレクタ54に1を与え、TMCC信号をTMCCバッファ53に格納する。また、制御回路51は、入力データ有効ビットを参照して、入力データが例えばバースト信号といった必要のないデータであれば、入力セレクタ54を機能させず、入力データをいずれのバッファにも格納しない。
【0170】
また、制御回路51は、主信号読み出し要求があると、出力セレクタ55に0を与え、主信号用バッファ52に格納されている主信号を出力する。制御回路51は、TMCC読み出し要求があると、出力セレクタ55に1を与え、TMCC用バッファ53に格納されているTMCC信号を出力する。また、制御回路51は、主信号読み出し要求及びTMCC信号読み出し要求のいずれの要求もない場合には、出力セレクタ55を機能させず、データの出力をしない。なお、TMCC読み出し要求及び主信号読み出し要求のいずれの要求も発生されていないときには、後段のダミーデータセレクタ13が、0データをインタリーブメモリ14に供給している。
【0171】
ここで、このような入力バッファ12に与えられる主信号読み出し要求の発生タイミングは、図6に示したように、最小割当単位内にダミースロットが含まれている場合には、最小割当単位内の初めにダミースロットを配置し、後ろ部分に有効スロットを配置するように与えられる。この入力バッファ21は、このように有効スロットをインタリーブメモリ13に供給するタイミングを遅らせ、本デインタリーバ5の処理に適するようにフレームを再構成している。
【0172】
具体的に、QPSK7/8の場合には、図14に示すように、最小割当単位の最初の1つのスロットにダミースロット配置し、続く7つのスロットに有効スロットを配置させる。QPSK5/6の場合には、図15に示すように、最小割当単位の最初の1つのスロットにダミースロット配置し、続く5つのスロットに有効スロットを配置させる。QPSK3/4の場合には、図16に示すように、最小割当単位の最初の1つのスロットにダミースロット配置し、続く3つのスロットに有効スロットを配置させる。QPSK2/3の場合には、図17に示すように、最小割当単位の最初の1つのスロットにダミースロット配置し、続く2つのスロットに有効スロットを配置させる。QPSK1/2の場合には、図18に示すように、最小割当単位の最初の1つのスロットにダミースロット配置し、続く1つのスロットに有効スロットを配置させる。BPSK1/2の場合には、図19に示すように、最小割当単位の最初の3つのスロットにダミースロット配置し、続く1つのスロットに有効スロットを配置させる。
【0173】
なお、このように主信号を遅延させるため、主信号用バッファ52は、QPSK7/8の有効スロットを7/8スロット分遅延させる必要があるため、最低7/8スロット分の容量が必要となる。
【0174】
以上のように入力バッファ12では、最小割当単位毎に、ダミースロットを先に配置して有効スロットを後に配置するようにフレームを再構成しているので、読み出されたアドレスに次のデータの書き込みを行うようなインタリーブ処理を行っても破綻を生じさせないようにすることができる。
【0175】
(逆エネルギー拡散部)
つぎに、本発明の実施の形態のBS受信装置に用いられる逆エネルギー拡散部6の具体的な構成について説明する。
【0176】
BSデジタル放送では、連続する同一符号の期間が長くならないように、伝送データに対してエネルギー拡散処理が行われる。このエネルギー拡散処理は、15次M系列(X15+X14+1)の疑似ランダム信号を加算することにより行われている。この15次M系列の疑似ランダム信号は、スーパーフレームの先頭で初期化される。その初期値は、低次から「100101010000000」となっている。この疑似ランダム信号は、ダミースロットを含んだスーパーフレーム構成の各データに対して、1ビットずつ加算されていく。そのため、受信側では、逆エネルギー拡散部を設け、エネルギー拡散がされた伝送データに対して、送信側で加算した疑似ランダム信号と同一の信号を各ビットに加算して、元の伝送データを復号している。
【0177】
ところが、本発明の実施の形態のBS受信装置では、この逆エネルギー拡散処理を行う前のデインタリーブ処理時において、最小割当単位毎に、ダミースロットが有効スロットの前に配置されるように、フレームを再構成している。再構成されたままのフレーム構成の状態で逆エネルギー拡散部にデータを入力すると、有効スロットが本来のスロット位置と異なる位置に配置されていることから、そのスロットに加算される疑似ランダム信号の値が送信時と異なってしまう。
【0178】
そのため、本発明の実施の形態のBS受信装置に適用されるデインタリーバ5では、出力する各スロットに対して、逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを付けている。このエネルギー拡散有効フラグは、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるように付けられている。そして、逆エネルギー拡散部6は、エネルギー拡散有効フラグが付けられていないスロットが入力された場合には、疑似ランダム信号の更新を停止し、エネルギー拡散有効フラグが付けられているスロットに対してのみ疑似ランダム信号を加算するようにしている。
【0179】
このことにより、送信時に加算された値と同一の値を、有効スロットに対して加算することができ、デインタリーバ5でフレームを再構成していても、正しくデータの復元をすることができる。
【0180】
以上のような処理を行うことができる逆エネルギー拡散部6の構成例を図20に示す。
【0181】
逆エネルギー拡散部6は、15段シフトレジスタ61と、第1の加算器62と、NOR回路63と、AND回路64と、第2の加算器65と、カウンタ66と、初期値テーブル67とを有している。
【0182】
15段シフトレジスタ61は、1ビットのデータを格納するレジスタが15段シリアルに接続された構成となっている。この15段シフトレジスト61は、入力データ1ビット分に対応したクロックが入力され、1クロックサイクル毎に、下位ビットから上位ビットにデータを1ビットずつ転送していく。最下位ビットのレジスタには、第1の加算器62の出力がフィードバックして入力される。
【0183】
また、15段シフトレジスタ61の各レジスタには、イネーブル端子が設けられている。このイネーブル端子には、上述したデインタリーバ5から発行されるエネルギー拡散有効フラグ(EDENフラグ)が入力される。各レジスタは、このEDENフラグがhighとされているときには、データ転送動作を行う。一方、このエネルギー拡散フラグがlowとされているときには、クロックが入力されても、データ転送動作を行わず、現在のデータをホールドしたままとしている。
【0184】
また、15段シフトレジスタ61は、15ビットの初期値データが初期値テーブル67から供給されると、現在保持している値をクリアして、供給された初期値データを新たに各レジスタにロードする。初期値データは、フレームの開始タイミングを示すフレームスタート信号のタイミングでロードされる。
【0185】
第1の加算器62は、15段シフトレジスタの14ビット目及び15ビット目のデータを加算して、加算結果の下位1ビットを出力する。この第1の加算器62から出力される信号が、15次M系列(X15+X14+1)の疑似ランダム信号となる。
【0186】
NOR回路63には、入力データがTMCC信号であることを示すTMCC識別信号と、入力データがBSデジタル放送の信号ではなく例えばデジタル衛星通信用の信号であることを示すCS信号が入力される。NOR回路63は、TMCC識別信号或いはCS信号が入力されるとlowとなり、いずれの信号も入力されていないとhighとなるイネーブル信号を出力する。
【0187】
AND回路64は、NOR回路63からのイネーブル信号がhighのときに、疑似ランダム信号を第2の加算器65に供給し、NOR回路63からのイネーブル信号がlowのときに、疑似ランダム信号の供給を停止してlowを第2の加算器65に供給する。
【0188】
第2の加算器65は、AND回路64から出力された疑似ランダム信号と入力データとを1ビット毎に加算し、加算結果の下位1ビットを出力する。また、TMCC識別信号或いはCS信号が入力されているときには、AND回路64からはlowデータが出力され続けるので、入力データをそのまま出力する。
【0189】
カウンタ66は、フレームスタート信号が供給されると、内部レジスタに格納している値を1インクリメントするものである。また、このカウンタ66は、スーパーフレームスタート信号が供給されると、内部レジスタの値を0にリセットする。このため、このカウンタ66から出力される値は、入力データのフレーム番号と対応することとなる。このカウンタ66からの出力は、初期値テーブル67にアドレスとして供給される。
【0190】
初期値テーブル67は、各フレームの先頭における疑似ランダム信号の初期値データ(15ビット)を格納している。スーパーフレーム内にはフレーム数は8個あるため、初期値テーブル67は、8個の初期値データを格納している。初期値テーブル67は、0〜7までのフレーム番号をアドレスとして、各フレームの初期値データを格納している。カウンタ66からアドレスが与えられると、そのアドレスで格納されている初期値データを15段シフトレジスタ61に出力する。
【0191】
つぎに、EDENフラグの発生アルゴリズムについて説明する。
【0192】
このEDENフラグは、前段のデインタリーバ5から出力される。デインタリーバ5は、出力するスロットに割り当てられた変調/符号化方式を判断しながら図21に示すステートマシーンに従い、EDENフラグを発行していく。
【0193】
このステートマシーンは、フレームスタートタイミングで状態S0からの動作を開始し、1スロット進む毎に1つずつ状態が遷移していくものである。
【0194】
まず、状態S0では、出力するスロットの変調方式に8PSKが割り当てられているかどうかを判断し、フレームの最初のスロットが8PSKであれば状態S1に遷移し、8PSKでなければ状態S2に遷移する。
【0195】
状態S1では、エネルギー拡散フラグを発行し、次のスロットに8PSKが割り当てられているかどうかを判断する。次のスロットに8PSKが割り当てられていれば、再度この状態S1を繰り返す。次のスロットに8PSKが割り当てられていなければ、状態S2に遷移する。
【0196】
状態S2では、次のスロットにQPSKが割り当てられているか、BPSKが割り当てられているかを判断する。次のスロットにQPSKが割れ当てられいれば、状態S3に遷移する。次のスロットにBPSKが割り当てられていれば、状態S4に遷移する。
【0197】
状態S3では、エネルギー拡散フラグを発行し、次のスロットにQPSKが割り当てられいるか或いはBPSKが割り当てられているかを判断する。次のスロットにQPSKが割り当てられていれば、状態S3を繰り返し、次のスロットにBPSKが割り当てられていれば状態S4に進む。
【0198】
状態S4では、何ら処理を行わず、状態S5に遷移する。
【0199】
状態S5では、何ら処理を行わず、状態S6に遷移する。
【0200】
状態S6では、EDENフラグを発行し、状態S6を繰り返す。
【0201】
そして、このようなステートマシーンでは、フレームスタート信号が与えられると必ず状態S0に戻ることとなる。
【0202】
以上のようなステートマシーンに従いEDENフラグを発行することによって、デインタリーバ5では、例えば図2に示すように、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるようにフラグを付けていくことができる。
【0203】
次に、逆エネルギー拡散部6の動作について説明する。
【0204】
例えば、図22(a)に示すようなフレームが逆エネルギー拡散部6に入力されてくるとする。この場合、まず、第1スロットの先頭ビットがフレームスタートのタイミングであるので、15段シフトレジスタ61に、第1スロット(#0)の先頭ビットが入力されたタイミングで、フレーム初期値がロードされる。続いて、変調/符号化方式がTC8PSKである第1スロット(#0)から第46スロット(#45)までは、EDENフラグがhighとされており、上記初期値を1ビットずつ更新しながら連続して疑似ランダム信号を生成していく。続く第47スロット(#46)では、EDENフラグがlowとされている。そのため、15段シフトレジスタ61は、疑似ランダム信号の更新を停止して、値をホールドする。続いて第48スロット(#47)では、EDENフラグがhighとされている。そのため、15段シフトレジスタ61は、疑似ランダム信号の更新を再開して、ホールドしていた値から1ビットずつ更新しながら、フレームの最後まで疑似ランダム信号を発生する。そして、この第48スロット(#47)に対する疑似ランダム信号の発生を終えると、次のフレームに対する処理が開始するため、新たな初期値が15段シフトレジスタ61にロードされることとなる。
【0205】
この図22(a)に示したフレームは、第47スロット(#46)のダミースロットに対しての疑似ランダム信号の更新がされないことにより、再構成されることによって第48スロット(#47)に配置されたQPSK1/2のデータが、スロット順序で47番目に与えられるはずの値とされた疑似ランダム信号が加算されることとなる。従って、この再構成されることによって、第48スロット(#47)に配置されたQPSK1/2のデータは、正しく逆エネルギー拡散処理がされることとなる。
【0206】
同様に、図22(b)に示すようなフレーム場合は、第39スロット(#38)のダミースロットで疑似ランダム信号の更新がされないことにより、再構成されることによって第40スロット(#39)以降の配置された全ての有効スロットに対して、本来の値の疑似ランダム信号が加算され、正しく逆エネルギー拡散処理がされることとなる。
【0207】
また、同様に、図22(c)に示すようなフレームの場合は、第36スロット(#35),第41スロット(#40),第42スロット(#41)の各ダミースロットで疑似ランダム信号の更新がされないことにより、再構成されることによって第37スロット(#36)以降の配置された全ての有効スロットに対して、本来の値の疑似ランダム信号が加算され、正しく逆エネルギー拡散処理がされることとなる。
【0208】
なお、最終スロットに対する処理を終えた後は、初期値データが新たに15段シフトレジスタ61にロードされるので、次のフレームに対しても正しい値の疑似ランダム信号が与えられ、正しく逆エネルギー拡散処理がされることとなる。また、ダミースロットに対しては、正しい疑似ランダム信号が加算されているわけではないが、結局後段のRS復号部でダミースロットが除去されるデータであるので、どのような値となっていても、出力されるMPEG−TSに影響は与えない。
【0209】
以上のように逆エネルギー拡散部6では、デインタリーブ処理時において、最小割当単位毎に、ダミースロットが有効スロットの前に配置されるように、フレームを再構成していたとしても、各スロットに与える疑似ランダム信号の値を送信時と同一とすることができ、正しく逆エネルギー拡散処理を行うことができる。
【0210】
(バイト単位で演算を行う逆エネルギー拡散部)
また、逆エネルギー拡散部6では、以上のような図20に示した回路構成に代えて、図23に示すような入力データ1バイト(8ビット)分のデータタイミングを示すクロックに基づき動作する回路を用いることができる。
【0211】
この図23に示す逆エネルギー拡散部6は、8ビット単位の疑似ランダム信号{r[0]〜r[7]}を発生する演算回路71と、8ビットの各入力データ線に設けられた加算器72a〜72hとを有している。この逆エネルギー拡散部6では、入力データ{DT[0]〜DT[7]}が、1バイト(8ビット)単位で入力される。そして、この1バイト単位の疑似ランダム信号{r[0]〜r[7]}が、8値同時に入力データに加算される。カウンタ66及び初期値テーブル67の機能は、図20に示した回路と同様である。
【0212】
疑似ランダム信号を演算する演算回路71の構成は、図24に示すようになる。
【0213】
演算回路71は、第1〜第15のレジスタ73a〜73oと、第1〜第8の加算回路74a〜74hとから構成される。
【0214】
各レジスタ73a〜73oには、第1のレジスタ73a側に15次M系列(X15+X14+1)の低次のビットが格納され、第15のレジスタ73o側に15次M系列の高次のビットが格納される。各レジスタ73a〜73oは、1バイトのデータタイミングを示すクロックに基づき動作をする。また、各レジスタ73a〜73oには、イネーブル端子にEDENフラグが入力される。各レジスタは、EDENフラグがhighとされているときには、データ転送動作を行う。一方、このエネルギー拡散フラグがlowとされているときには、クロックが入力されても、データ転送動作を行わず、現在のデータをホールドしたままとしている。
【0215】
第1の加算回路74aは、第14のレジスタ73n及び第15のレジスタ73oの出力を加算する。第1の加算回路74aにより加算されたデータは、その演算結果の下位1ビットが第8のレジスタ73hに格納される。
【0216】
第2の加算回路74bは、第13のレジスタ73m及び第14のレジスタ73nの出力を加算する。第2の加算回路74bにより加算されたデータは、その演算結果の下位1ビットが第7のレジスタ74gに格納される。
【0217】
第3の加算回路74cは、第12のレジスタ73l及び第13のレジスタ73mの出力を加算する。第3の加算回路74cにより加算されたデータは、その演算結果の下位1ビットが第6のレジスタ74fに格納される。
【0218】
第4の加算回路74dは、第11のレジスタ73k及び第12のレジスタ73lの出力を加算する。第4の加算回路74dにより加算されたデータは、その演算結果の下位1ビットが第5のレジスタ74eに格納される。
【0219】
第5の加算回路74eは、第10のレジスタ73j及び第11のレジスタ73kの出力を加算する。第5の加算回路74eにより加算されたデータは、その演算結果の下位1ビットが第4のレジスタ73dに格納される。
【0220】
第6の加算回路74fは、第9のレジスタ73i及び第10のレジスタ73jの出力を加算する。第6の加算回路74fにより加算されたデータは、その演算結果の下位1ビットが第3のレジスタ74cに格納される。
【0221】
第7の加算回路74gは、第8のレジスタ73h及び第9のレジスタ73iの出力を加算する。第7の加算回路74gにより加算されたデータは、その演算結果の下位1ビットが第2のレジスタ74bに格納される。
【0222】
第8の加算回路74hは、第7のレジスタ73g及び第8のレジスタ73hの出力を加算する。第8の加算回路74hにより加算されたデータは、その演算結果の下位1ビットが第1のレジスタ74aに格納される。
【0223】
さらに、第1の加算回路74aは、入力データの最下位ビット(LSB)のDT[0]に加算される疑似ランダム信号r[0]を出力する。このr[0]は、第8のレジスタ73hに格納される。
【0224】
第1のレジスタ73aは、入力データの最下位から2ビット目のDT[1]に加算される疑似ランダム信号r[1]を出力する。そして、このr[1]は、第9のレジスタ73iに格納される。
【0225】
第2のレジスタ73bは、入力データの最下位から3ビット目のDT[2]に加算される疑似ランダム信号r[2]を出力する。そして、このr[2]は、第10のレジスタ73jに格納される。
【0226】
第3のレジスタ73cは、入力データの最下位から4ビット目のDT[3]に加算される疑似ランダム信号r[3]を出力する。そして、このr[3]は、第11のレジスタ73kに格納される。
【0227】
第4のレジスタ73dは、入力データの最下位から5ビット目のDT[4]に加算される疑似ランダム信号r[4]を出力する。そして、このr[4]は、第12のレジスタ73lに格納される。
【0228】
第5のレジスタ73eは、入力データの最下位から6ビット目のDT[5]に加算される疑似ランダム信号r[5]を出力する。そして、このr[5]は、第13のレジスタ73mに格納される。
【0229】
第6のレジスタ73fは、入力データの最下位から7ビット目のDT[6]に加算される疑似ランダム信号r[6]を出力する。そして、このr[6]は、第14のレジスタ73nに格納される。
【0230】
第7のレジスタ73gは、入力データの最上位ビット(MSB)のDT[7]に加算される疑似ランダム信号r[7]を出力する。そして、このr[7]は、第15のレジスタ73oに格納される。
【0231】
以上のような構成により、演算回路71は、バイト単位で動作をすることができる。
【0232】
なお、このようなバイト単位で演算を行う逆エネルギー拡散部では、8値同時に疑似ランダム信号を演算するため、各フレームの先頭でロードされる初期値が、1バイト(8ビット)分更新された値とされている。具体的にその値は、図25に示すような値となる。
【0233】
このようなバイト単位で動作を行う逆エネルギー拡散部によれば、動作クロックの周波数を1/8にすることができ、そのため応答速度が遅い素子を用いて回路を構成することができ、コストを安くすることができる。
【0234】
アドレス生成回路の変形例
つぎに、上述したデインタリーバ5内のアドレス生成回路11の変形例について説明する。なお、以下の説明する第1から第3の変形例の説明において、図9に示したアドレス生成回路11に用いられている同一の構成要素には、図面に同一の符号を付け、その詳細な説明を省略する。
【0235】
(第1の変形例)
第1の変形例では、インタリーブメモリ14に対する論理アドレスであるfk(i)の算出を、fk(i)=f(fk-1(i))という関係を利用して行っている。
【0236】
具体的には、配列C{fk-1(i) {0≦i<m×n}}を記憶するメモリテーブルと、f(i)を演算する演算回路とを用いて、fk(i)を算出する。このメモリテーブルは、0〜(m×n−1)までのアドレスが設定されている。このアドレスは、配列内を構成する各データの配置順序を指定するものである。配列A及び配列Bを構成するデータ群は、i{0≦i<m×n}で初期化されている。
【0237】
kブロック目のi番目のデータに対する論理アドレスを出力する場合、インデックスiが配列Cを記憶するメモリテーブルのアドレスとして供給され、この配列Cから値が読み出される。そして、読み出された値が演算回路に供給されf(fk-1(i))が算出される。この演算回路により算出された値が論理アドレスとして出力される。そして、この演算回路により算出された値が、メモリテーブルのアドレスiに格納され、次のブロックの処理に用いられる。
【0238】
このような演算を行うことができる第1の変形例のアドレス生成回路80を図26に示す。
【0239】
アドレス生成回路80は、この図26に示すように、制御部21と、フラグD発生回路22と、インデックスカウンタ24と、アドレス用テーブル81と、f(i)発生回路82と、第2のセレクタ29と、比較回路33と、論理アドレス/実アドレス変換回路34とを有している。
【0240】
制御部21は、内部に、タイミング生成回路21aと、バイトカウンタ21bと、スロットカウンタ21cと、フレームカウンタ21dと、TMCCデコーダ21eと、制御信号発生回路21fとを有している。
【0241】
アドレス用テーブル81は、1インタリーブブロック分のブロックアドレスのデータを格納することができるテーブルである。アドレス用テーブル81には、内部セルに、それぞれ#0から#(8×203−1)までのテーブルアドレスが設定されており、このアドレスを指定することにより、所定のテーブルアドレスに対してのデータの書き込み及び読み出しをすることができる。また、アドレス用テーブル81には、アウトプット端子ODT、インプット端子IDT、アドレス端子ADR、ライトイネーブル端子WEが設けられている。インプット端子IDTには、インデックスカウンタ24からのインデックス値iが入力される。インプット端子IDTには、f(i)発生回路82から出力される値が入力される。アウトプット端子ODTは、第2のセレクタ29に接続される。
【0242】
f(i)発生回路82は、インデックスカウンタ24から出力されたインデックス値iに対して、上述したf(i)を演算する回路である。具体的な回路構成は、図27に示すように、入力されたインデックスiに対するnの剰余を演算する剰余回路83と、剰余回路83の出力にmを乗算する乗算回路84と、入力されたインデックスiをmで割ったときの商(整数値)を演算する除算回路85と、乗算回路84の出力と除算回路85の出力とを加算する加算回路86とから構成される。なお、ここで、mは8、nは203である。
【0243】
第2のセレクタ29は、フラグDに応じて、インデックスカウンタ24からの出力とアドレス用テーブル81からの出力とを切り換えて、いずれか一方の出力データを選択して論理アドレス/実アドレス変換回路34に出力する。第2のセレクタ29は、フラグDが0であればインデックスカウンタ24を選択し、フラグDが1であればアドレス用テーブル81を選択する。
【0244】
比較回路33は、スロットカウンタ21cの値を参照し、このスロットカウンタ21cの値が47となったときにライトイネーブル信号をアドレス用テーブル81に供給する。すなわち、比較回路33は、最終スロットとなったときに、アドレス用テーブル81に対する書き込みを許可する回路である。
【0245】
次に、このような構成の第1の変形例のアドレス生成回路80のブロックアドレスの出力動作及びアドレス用テーブルの更新動作について説明をする。
【0246】
フラグDが0の場合(最初のスーパーフレームに対する処理の場合)、第2のセレクタ29がインデックスカウンタ24を選択し、インデックスカウンタ24から出力されるインデックス値iがそのままブロックアドレスとして出力される。インデックスカウンタ24から与えられたテーブルアドレス(インデックス値i)により指定されたアドレスに、f(i)発生回路82から出力される値が格納されていく。
【0247】
また、フラグDが0の場合(2番目以降のスーパーフレームに対する処理の場合)、第2のセレクタ29がアドレス用テーブル81を選択する。そして、インデックスカウンタ24から与えられたテーブルアドレス(インデックス値i)により指定されたアドレスに格納されているデータが、ブロックアドレスとして出力される。それとともに、データが出力されるテーブルアドレスにf(i)発生回路82から出力される値が格納されていく。
【0248】
なお、アドレス用テーブル81に対する書き込みは、比較回路33から出力されるライトイネーブル信号により制御される。ライトイネーブル信号は、スロットカウンタ21cのカウント値が47となったときに与えられ、このときに各アドレス用テーブルに対する書き込みが許可される。すなわち、スロット#0〜スロット#46に対する処理を行っている場合には、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に格納されているデータの更新がされず、スロット#47に対する処理を行っている場合のみに、第1のアドレス用テーブル25及び第2のアドレス用テーブル26に格納されているデータの更新がされる。
【0249】
以上のような動作が行われることにより第1の変形例のアドレス生成回路80では、メモリ用テーブル81に配列C{fk-1(i)}を記憶させ、kブロック目のi番目のデータの処理をする場合、この配列Cを論理アドレスとして出力していくとともに、この配列Cをf(C{fk-1(i)})で更新していくようにすることができる。
【0250】
つぎに、第1の変形例のアドレス生成回路80の動作を図28のタイミングチャートを用いて説明をする。
【0251】
図28は、インデックスカウンタ24のインデックス値の更新タイミング及びアドレス用テーブルの更新タイミングについて説明するためのタイミングチャートである。
【0252】
図28中、(a)はバイトカウンタ21bのカウント値、(b)はスロットカウンタ21cのカウント値、(c)はフレームカウンタ21dのカウント値、(d)はインデックスカウンタ24のインクリメントカウンタ24aから出力されるインデックス値、(e)はインデックスカウンタ24のラッチ24bに格納されているレジスタ値、(f)はアドレス用テーブルに対するライトイネーブル信号、(g)は出力されるブロックアドレスをそれぞれ示している。
【0253】
インデックスカウンタ24は、スロットカウンタ21cのカウント値が変化するタイミングで、ラッチ24bに格納されているレジスタ値を、インクリメントカウンタ24aに取り込み、インデックス値を更新する。また、インデックスカウンタ24は、バイトカウンタ21bのカウント値が変化するタイミングで、インデックス値をインクリメントする。また、インデックスカウンタ24は、フレームカウンタ21dのカウント値が変化するタイミングで、インデックス値をラッチ24bにコピーする。
【0254】
このようなタイミングで動作させることで、1フレーム(48スロット)に対して全て同じパターンでアクセスできる。
【0255】
また、アドレス用テーブル81の書き換えは、スロット#47の処理中に行う。この書き換えは、これはライトイネーブル信号が発行されているタイミングに、ブロックアドレスがアドレス用テーブル81に入力されることにより、更新される。
【0256】
(第2の変形例)
第2の変形例では、fk(i)とfk(i−1)との間にある“fk(i)=g(fk(i−1)+fk(1)”という関係を利用して、インタリーブメモリ14に対する論理アドレスであるfk(i)の算出を行っている。ここで、g(i)=i%(m・n)+i(m・n) である。また、fk(0)=0である。
【0257】
具体的には、fk(i−1)の値を格納するアドレスレジスタ(cur)と、fk(1)を格納するオフセットレジスタ(offset)と、g(i)を演算する回路と、f(i)を演算する回路とを用いて、fk(i)の算出を行う。その動作アルゴリズムは、以下のようになる。
【0258】
if(初期状態) then
cur←0;
offset←1
else if(ブロックの先頭) then
cur←0;
offset←f(offset)
else if(データが入力) then
cur←g(cur+offset)
なお、Y←Xは、Yレジスタに、Xレジスタの値を代入することを示している。
【0259】
さらに、BSデジタル放送では、第iスロット(スロット#(i−1))を切り出して形成される8×203のブロックを1つのインタリーブブロックとし、48個のインタリーブブロックに対して、並列にブロックインタリーブを行うことになる。そのため、BSデジタル受信装置に適用されるデインタリーバでは、同じパターンをブロックアドレスとして繰り返し利用するので、このことに対処するため、さらにベースレジスタ(base)を用意して、論理アドレスの演算を行っている。このようなベースレジスタを用いたBSデジタル受信装置に適用される場合の動作アルゴリズムは、以下のようになる。
【0260】
if(リセット)then
offset←203;
cur←0;
base←0;
else if(スーパーフレームの先頭)then
offset←f(offset);
cur←0;
base←0;
else if(フレームの先頭)then
base←g(cur+offset);
cur←g(cur+offset);
else if(スロットの先頭)then
cur←base;
else if(有効なデータが入力)then
cur←g(cur+offset);
なお、リセット時においてoffsetレジスタの値を203としているのは、リセットの最初のスーパーフレームの処理時にoffsetレジスタの値を1とするためである。すなわち、1=f(203)であるため、203に設定している。
【0261】
具体的に、このようなアルゴリズムを実現できる第2の変形例のアドレス生成回路90を図29に示す。
【0262】
アドレス生成回路90は、この図29に示すように、制御部21と、ベースレジスタ91と、アドレスレジスタ92と、オフセットレジスタ93と、加算回路94と、g(i)発生回路95と、f(i)発生回路96と、第1のセレクタ97と、第2のセレクタ98と、第3のセレクタ99と、論理アドレス/実アドレス変換回路34とを有している。
【0263】
ベースレジスタ91には、入力端子D、出力端子Q、イネーブル端子EN、リセット端子RSTが設けられている。ベースレジスタ91は、入力端子Dに入力されたデータを保持して、その保持しているデータを出力端子Qから出力する。入力データは、第1のセレクタ97から供給される。出力データは、第2のセレクタ98に供給される。また、ベースレジスタ91は、制御部21からイネーブル信号が供給されているときに、入力データを受け付けて内部メモリに格納する。
【0264】
アドレスレジスタ92には、入力端子D、出力端子Q、イネーブル端子EN、リセット端子RSTが設けられている。アドレスレジスタ92は、タイミング生成回路21eにより生成されたタイミングクロックに基づき動作をし、入力端子Dに入力されたデータを1クロック分保持して、その保持しているデータを出力端子Qから出力する。入力データは、第2のセレクタ98から供給される。出力データは、ブロックアドレスとして論理アドレス/実アドレス変換回路34及び加算回路94に供給される。また、アドレスレジスタ92は、制御部21からイネーブル信号が供給されているときに、入力データを受け付けて内部メモリに格納する。
【0265】
オフセットレジスタ93には、入力端子D、出力端子Q、イネーブル端子EN、リセット端子RSTが設けられている。オフセットレジスタ93は、タイミング生成回路21eにより生成されたタイミングクロックに基づき動作をし、入力端子Dに入力されたデータを1クロック分保持して、その保持しているデータを出力端子Qから出力する。入力データは、第3のセレクタ99から供給される。出力データは、加算回路94及びf(i)発生回路96に供給される。また、オフセットレジスタ93は、制御部21からイネーブル信号が供給されているときに、入力データを受け付けて内部メモリに格納する。
【0266】
加算回路94は、アドレスレジスタ92の出力とオフセットレジスタ93の出力とを加算する。
【0267】
g(i)発生回路95は、加算回路94の加算結果iに対して、上述したg(i)=i%(m・n)+i(m・n)を演算する回路である。具体的な回路構成は、図30に示すように、入力された加算値iに対する(m・m)の剰余を演算する剰余回路101と、入力された加算値iを(n・m)で割ったときの商(整数値)を演算する除算回路102と、剰余回路101の出力と除算回路102の出力とを加算する加算回路103とから構成される。なお、ここで、mは8、nは203であり、(m・n)は1624である。このg(i)発生回路95により演算された値は、第1のセレクタ91及び第2のセレクタ98に供給される。
【0268】
f(i)発生回路96は、オフセットカウンタ93から出力された値iに対して、上述したf(i)を演算する回路である。具体的な回路構成は、図27に示した回路構成と同一である。このf(i)発生回路96により演算された値は、第3のセレクタ99に供給される。
【0269】
第1のセレクタ97には、値0と、g(i)発生回路94からの出力値とが入力される。第1のセレクタ97は、制御部21の制御に応じて、値0又はg(i)発生回路95からの出力値のいずれか一方を、ベースレジスタ91に対する入力データとして供給する。
【0270】
第2のセレクタ98には、ベースセレクタ91の出力値と、値0と、g(i)発生回路95からの出力値とが入力される。第2のセレクタ98は、制御部21の制御に応じて、ベースセレクタ91の出力値、値0、又はg(i)発生回路95からの出力値のいずれか一つを、アドレスレジスタ92の入力データとして供給する。
【0271】
第3のセレクタ99には、値1と、f(i)発生回路96の出力値とが入力される。第3のセレクタ99は、制御部21の制御に応じて、値1又はf(i)発生回路96の出力値のいずれか一方を、オフセットレジスタ93の入力データとして供給する。
【0272】
以下、各レジスタの動作について説明をする。
【0273】
ベースレジスタ91は、以下のように動作を行う。
(1)リセット信号が供給されると、内部に格納している値を必ず0にクリア
(2)スーパーフレームの先頭タイミングで、内部に格納している値を0にクリア
(3)スーパーフレームの先頭以外のフレームの先頭のタイミングで、g(i)発生回路94からの出力値が入力され、内部に格納している値を更新
(4)上記以外の場合は、データを保持し続ける
【0274】
アドレスレジスタ92は、以下のように動作をする。
(1)リセット信号が供給されると、内部に格納している値を必ず0にクリア
(2)スーパーフレームの先頭タイミングで、内部に格納している値を0にクリア
(3)スーパーフレームの先頭以外のフレームの先頭のタイミングで、g(i)発生回路94からの出力値が入力され、内部に格納している値を更新
(4)フレームの先頭以外のスロットの先頭のタイミングで、ベースレジスタ91の出力値が入力され、内部に格納されている値を更新
(5)バイトカウンタ21bがカウントされたタイミング(有効なデータがインタリーブメモリ14に対して入力されたタイミング)で、g(i)発生回路94からの出力値が入力され、内部に格納している値を更新
オフセットレジスタ93は、以下のように動作をする。
(1)リセット信号が供給されると、内部に格納している値を1にセットする
(2)スーパーフレームの先頭タイミングで、f(i)発生回路96からの出力値が入力され、内部に格納している値を更新
【0275】
図31に、この第2の変形例のアドレス生成回路90の動作を示すタイミングチャートを示す。
【0276】
(a)はリセット信号を示している。(b)はスーパーフレームの開始パルスを示している。(c)はフレームの開始パルスを示している。(d)はスロットの先頭位置のパルスを示している。(e)はインタリーブメモリ14に対して有効なデータが入力されたタイミングを示すフラグを示している。(f)はアドレスカウンタ92のカウント値を示している。(g)はベースカウンタのカウント値を示している。(h)はオフセットカウンタのカウント値を示している。
【0277】
以上のような動作を行うことによって第2の変形例のアドレス生成回路90では、fk(i−1)の値を格納するアドレスレジスタ(cur)と、fk(1)を格納するオフセットレジスタ(offset)と、g(i)を演算する回路と、f(i)を演算する回路と用いて、インタリーブメモリ14に対する論理アドレスfk(i)の算出を行うことができる。
【0278】
(第3の変形例)
第3の変形例は、発生する論理アドレスの値を、一定のブロック周期毎にリセットするリセット機能を設けたアドレス生成回路である。
【0279】
図9に示したアドレス生成回路11、図26に示した第1の変形例のアドレス生成回路80、及び、図31に示した第2の変形例のアドレス生成回路90では、動作開始時後の最初のインタリーブロック(最初のスーパーフレーム)をインタリーブメモリ14に書き込む場合、インデックスiをそのまま論理アドレスとして出力している。すなわち、論理アドレスの初期値としてiを与えている。ここで、各アドレス生成回路は、k番目のインタリーブブロックに対する論理アドレスとして、fk(i)を出力するが、このfk(i)は、一定の周期性を有している。すなわち、fk(i)=iとなる場合が周期的に現れる。この第3の変形例は、処理を行ったインタリーブブロック(スーパーフレーム)の数をカウントし、そのカウント値が一定の値となったときに、強制的に論理アドレスを初期値にリセットする。このように一定の周期毎に強制的に発生する論理アドレスを初期値にリセットすることによって、例えば、信号処理を行っている最中に何らかの原因でエラーが発生し、正確な論理アドレスが算出できなくなった場合であっても、そのエラー伝搬がその周期以上は続かないようにすることができる。
【0280】
関数fk(i)が周期性を持つことの証明の概要を示す。
【0281】
まず、関数fk(i)は、次の2つの性質を持つ。
(1)fk(i)=fk(j) (i≠j)となるi、j、kは存在しない。
【0282】
存在するとインタリーブ処理においてデータを書き潰してしまうことから明らかである。
(2)fk(i)=fl(i)となるk、l、iが存在する。
fk、flの定義域、値域は有限のため、必ずfk(i)=fl(i)となるk、l、iが存在する。
【0283】
(1)により0≦i,j<m×nをnodeとして、j←i(j=fk(i)が成立するとき )を有向branchとする有向graphにおいて、合流するpathが存在しないことが言える。
また(2)により先の有向graphにおける有向branchは必ず有限個の閉loopを形成することが分かる。
【0284】
以上によりfk(i)は、各々の閉loopの要素数の最小公倍数を周期とする周期性を持つことが言える。
【0285】
次に、周期pを求めるためのアルゴリズム例を示す。
(ステップS1)サイズm×nのテーブルTを用意し、T[i]=iとなるようにリセットする。
(ステップS2)k← 1
(ステップS3)for(i=0;i<m;i++)T[i]=f(T[i]);
(ステップS4)全てのiについてT[i]=iならばkが求める周期pになっていなければ、k←k+1をして、(ステップS3)に戻る。
【0286】
以上のようなステップS1〜ステップS4までの処理を行うことによって周期pが求められる。また、周期pを求めるための他のアルゴリズム例を示す。
(ステップS11)サイズm×nのテーブルTを用意し、全てのエントリを0にリセットする。
(ステップS12)サイズm×nテーブルLを用意し、全てのエントリを1にリセットする。
(ステップS13)k←0;
(ステップS14)T[i]==0となる最小のi(0≦i<m×n)に対して、以下の処理を行う。
(ステップS15)T[i]←1
(ステップS16)i←f(i)
(ステップS17)k++
(ステップS18)T[i]==0ならばステップS15へ戻り、T[i]==1ならばL[i]==kとしてステップS13に戻る。
(ステップS19)全てのi(0≦i<m×n)に対してT[i]==1となったときのL[i]最小公倍数を求める。この最小公倍数が周期pとなる。
【0287】
以上のアルゴリズムによりBSデジタル放送のインタリーブの周期を算出すると、180スーパーフレームとなる。
【0288】
このようなリセット機能を具体的に適用した回路構成例を図32〜図34に示す。
【0289】
図32は、図9に示したアドレス生成回路11にリセット機能を設けた回路例である
この場合、制御部21内に、フレームカウンタ21dから出力されるパルス(スーパーフレームの開始位置を示すパルス)を180カウントする周期カウンタ21gを設ける。そして、この周期カウンタ21gから出力されるパルスを、フラグD生成回路22に供給する。フラグD生成回路22は、周期カウンタ21gからパルスが供給されると、フラグDを1とする。このように動作することにって、180スーパーフレーム周期毎に、第2のセレクタ29がインデックスカウンタ24から出力されたインデックス値iがそのまま論理アドレスとして出力される。インデックス値iがそのまま論理アドレスとして出力されることによって、各回路に以後起動時と同様の動作を行わせることができる。
【0290】
図33は、図26に示した第1の変形例のアドレス生成回路80にリセット機能を設けた回路例である。
【0291】
この場合も同様に、制御部21内に、フレームカウンタ21dから出力されるパルス(スーパーフレームの開始位置を示すパルス)を180カウントする周期カウンタ21gを設ける。そして、この周期カウンタ21gから出力されるパルスを、フラグD生成回路22に供給する。フラグD生成回路22は、周期カウンタ21gからパルスが供給されると、フラグDを1とする。このようにすることによって、180スーパーフレーム周期毎に、第2のセレクタ29がインデックスカウンタ24から出力されたインデックス値iがそのまま論理アドレスとして出力される。インデックス値iがそのまま論理アドレスとして出力されることによって、各回路に以後起動時と同様の動作を行わせることができる。
【0292】
図34は、図29に示した第2の変形例のアドレス生成回路90にリセット機能を設けた回路例である。
【0293】
この場合、制御部21内に、フレームカウンタ21dから出力されるパルス(スーパーフレームの開始位置を示すパルス)を180カウントする周期カウンタ21gを設ける。そして、この周期カウンタ21gからパルスが出力されたタイミングで、ベースレジスタ91、アドレスレジスタ92及びオフセットレジスタ93を以下のように制御する。
【0294】
if(180スーパーフレーム)then
offset←203;
cur←0;
base←0;
このようにすることによって、180スーパーフレーム周期毎に、第2のセレクタ29がインデックスカウンタ24から出力されたインデックス値iがそのまま論理アドレスとして出力される。インデックス値iがそのまま論理アドレスとして出力されることによって、各回路に以後起動時と同様の動作を行わせることができる。
【0295】
【発明の効果】
本発明にかかるデジタル衛星放送受信装置では、ダミースロットを有効割当単位の先頭に配置してフレームを再構成し、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込む。
【0296】
このことにより、本発明にかかるデジタル衛星放送受信装置では、デインタリーブを行う際に用いられるインタリーブメモリを削減することができる。
【0297】
また、本発明にかかるデジタル衛星放送受信装置では、逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付ける。
【0298】
このことにより、本発明にかかるデジタル衛星放送受信装置では、フレームを再構成してインタリーブを行っても、正しい疑似ランダム信号をデータに加算することができる。
【0299】
本発明にかかるインタリーブ方法では、ダミースロットを有効割当単位の先頭に配置してフレームを再構成し、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込む。
【0300】
このことにより、本発明にかかるデインタリーブ方法では、デインタリーブを行う際に用いられるインタリーブメモリを削減することができる。
【0301】
また、本発明にかかる逆エネルギー拡散処理方法では、逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付ける。
【0302】
このことにより、本発明にかかる逆エネルギー拡散処理方法では、フレームを再構成してインタリーブを行っても、正しい疑似ランダム信号をデータに加算することができる。
【図面の簡単な説明】
【図1】ブロックインタリーバにおけるインタリーブ規則について説明をする図である。
【図2】m×n個のデータが格納可能なインタリーブメモリに付けられた論理アドレスについて説明をするための図である
【図3】1つの論理アドレスに対して、データの読み出し及び書き込みを同時に行うことを説明するための図である。
【図4】2×3のブロックインタリーブを行うデインタリーバの動作を説明するための図である
【図5】上記2×3のブロックインタリーブを行ったときに用いられるアドレスを示す図である。
【図6】最小割当単位毎に、ダミースロットを先に配置して有効スロットを後に配置するように再構成したフレームを示す図である。
【図7】本発明の実施の形態のデジタル衛星放送の受信装置の構成図である。
【図8】デインタリーバの構成図である。
【図9】アドレス生成回路の構成図である。
【図10】f-1(i)発生回路の構成図である。
【図11】バイトカウンタ及びスロットカウンタのカウント値の変遷等を示すタイミングチャートである。
【図12】インデックスカウンタのインデックス値の更新タイミング及びアドレス用テーブルの更新タイミングについて説明するためのタイミングチャートである。
【図13】入力バッファの構成図である。
【図14】QPSK7/8のスロットを再構成したフレームを示す図である。
【図15】QPSK5/6のスロットを再構成したフレームを示す図である。
【図16】QPSK3/4のスロットを再構成したフレームを示す図である。
【図17】QPSK2/3のスロットを再構成したフレームを示す図である。
【図18】QPSK1/2のスロットを再構成したフレームを示す図である。
【図19】BPSK1/2のスロットを再構成したフレームを示す図である。
【図20】逆エネルギー拡散部の構成図である。
【図21】エネルギー拡散有効フラグを発生するステートマシーンを示す図である。
【図22】エネルギー拡散有効フラグが付けられるスロットについて説明をする図である。
【図23】バイト単位で演算を行う逆エネルギー拡散部の構成図である。
【図24】1バイト単位で疑似ランダム信号を発生する演算回路の構成図である。
【図25】バイト単位で演算を行う演算回路にロードされる疑似ランダム信号の初期値を示す図である。
【図26】第1の変形例のアドレス生成回路の構成図である。
【図27】f(i)発生回路の構成図である。
【図28】上記第1の変形例のアドレス生成回路の動作を示すタイミングチャートである。
【図29】第2の変形例のアドレス生成回路の構成図である。
【図30】g(i)発生回路の構成図である。
【図31】上記第2の変形例のアドレス生成回路の動作を示すタイミングチャートである。
【図32】図9で示したアドレス生成回路にリセット機能を設けた第3の変形例のアドレス生成回路の構成図である。
【図33】図26で示した第1の変形例のアドレス生成回路にリセット機能を設けた第3の変形例のアドレス生成回路の構成図である。
【図34】図29で示した第2の変形例のアドレス生成回路にリセット機能を設けた第3の変形例のアドレス生成回路の構成図である。
【図35】デジタル衛星放送の送信装置及び受信装置の構成図である
【図36】スーパーフレームのデータ構成を示す図である。
【図37】各変調/符号化方式の最小割当単位、有効スロット数、ダミースロット数を示す図である
【図38】フレーム内の有効スロットとダミースロットの配置を説明するための図である。
【図39】連接符号について説明するための概念図である。
【図40】デジタル衛星放送で用いられるエラー訂正処理を説明するための図である。
【図41】デジタル衛星放送で用いられるインタリーバについて説明するための図である。
【図42】インタリーバによるバースエラーの分散について説明するための図である。
【図43】インタリーブメモリに対するアクセス順序について説明をするための図である。
【図44】2×3のブロックを用いるインタリーバのインタリーブメモリに対するアクセス順序について説明をするための図である。
【図45】ダブルバッファ方式のインタリーバの構成図である。
【図46】BSデジタル放送におけるインタリーバの動作(書き込み時)を説明するための図である
【図47】BSデジタル放送におけるインタリーバの動作(読み出し時)を説明するための図である。
【符号の説明】
1 受信装置、5 デインタリーバ、6 逆エネルギー拡散部、11,80,90 アドレス生成回路、12 入力バッファ、13 ダミーデータセレクタ、14 インタリーブメモリ
Claims (25)
- デジタル衛星放送を受信するデジタル衛星放送受信装置において、
符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成する再構成部と、
1つのスーパーフレーム分のデータを格納可能なインタリーブメモリと、
上記再構成部により再構成されたデータを上記インタリーブメモリに書き込み、上記インタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すメモリ制御部とを備え、
上記メモリ制御部は、
k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込むことを特徴とするデジタル衛星放送受信装置。 - 上記スーパーフレームは、m×n個のデータからなるインタリーブブロックから構成され、
上記インタリーブメモリには、0〜(m×n−1)までの論理アドレスが設定され、
上記メモリ制御部は、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスを関数fk(i)=f(fk−1(i))に基づき算出し、この論理アドレスと同一のアドレスにk+1番目のインタリーブブロックのi番目に入力されるデータを書き込むこと
を特徴とする請求項1記載のデジタル衛星放送受信装置。
ここで、f(i)=n×(i%m)+(i/m)とし、このf(i)に対してfk(i)は以下のような関係を有する。
f2(i)=f(f(i))
f3(i)=f(f2(i))
f4(i)=f(f3(i))
・
・
・
fk−1(i)=f(fk−2(i))
fk(i)=f(fk−1(i))
また、m,nは、1以上の整数であり、(x%y)とはxをyで割った余りを表し、(x/y)とは、xをyで割った商の整数部分を表す。 - 上記メモリ制御部は、
f(i)を演算するf(i)発生回路と、
0〜(m×n−1)までのテーブルアドレスが設定され、上記テーブルアドレス順に配列{fk−1(i)}を格納する第1のテーブルと、
0〜(m×n−1)までのテーブルアドレスが設定され、上記テーブルアドレス順に配列{fk(i)}を格納する第2のテーブルとを有し、
fk−1(f(i))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項2記載のデジタル衛星放送受信装置。 - 上記メモリ制御部は、
f(i)を演算するf(i)発生回路と、
0〜(m×n−1)までのテーブルアドレスが設定され、上記テーブルアドレス順に配列{fk−1(i)}を格納する第3のテーブルとを有し、
f(fk−1(i))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項2記載のデジタル衛星放送受信装置。 - 上記メモリ制御部は、
f(i)を演算するf(i)発生回路と、
g(i)=i%(m・n)+i/(m・n)を算出するg(i)発生回路と、
fk(i−1)を格納する第1のレジスタと、
fk(1)を格納する第2のレジスタとを有し、
g(fk(i−1)+fk(1))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項2記載のデジタル衛星放送受信装置。 - 1番目のインタリーブブロックのi番目にインタリーブメモリに入力される論理アドレスの初期値を設定しておくこと
を特徴とする請求項2記載のデジタル衛星放送受信装置。 - 1番目のインタリーブブロックのi番目にインタリーブメモリに入力される論理アドレスをiとすること
を特徴とする請求項6記載のデジタル衛星放送受信装置。 - 一定数のインタリーブブロック毎に、論理アドレスを上記初期値にリセットすること
を特徴とする請求項6記載のデジタル衛星放送受信装置。 - 上記インタリーブメモリから出力されたデータに対して疑似ランダム信号を加算することによって、送信側でエネルギー拡散されたデータを復元するエネルギー拡散処理部を備え、
上記メモリ制御部は、
逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付け、
上記エネルギー拡散有効フラグは、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるように各スロットに対して付けられており、
エネルギー拡散処理部は、エネルギー拡散有効フラグが付けられたスロットに対してのみ疑似ランダム信号を加算すること
を特徴とする請求項1記載のデジタル衛星放送受信装置。 - 上記エネルギー拡散処理部は、各フレームの最初に与えられる疑似ランダム信号の値を記憶しておき、
フレームが切り替わったときには、記憶してある疑似ランダム信号を読み出して、疑似ランダム信号を更新すること
を特徴とする請求項9記載のデジタル衛星放送受信装置。 - 上記エネルギー拡散処理部は、バイト単位の疑似ランダム信号を発生すること
を特徴とする請求項9記載のデジタル衛星放送受信装置。 - 上記エネルギー拡散処理部は、エネルギー拡散処理の停止命令に応じて、上記インタリーブメモリから出力されたデータに対して疑似ランダム信号の加算を停止する停止制御回路を有すること
を特徴とする請求項9記載のデジタル衛星放送受信装置。 - デジタル衛星放送の受信データをデインタリーブする際のデインタリーブ方法であって、
符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成し、
上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、
k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込むこと
を特徴とするデインタリーブ方法。 - 上記スーパーフレームは、m×n個のデータからなるインタリーブブロックから構成され、
上記インタリーブメモリには、0〜(m×n−1)までの論理アドレスが設定され、
上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、
k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスを関数fk(i)=f(fk−1(i))に基づき算出し、この論理アドレスと同一のアドレスにk+1番目のインタリーブブロックのi番目に入力されるデータを書き込むことを特徴とする請求項13記載のデインタリーブ方法。
ここで、f(i)=n×(i%m)+(i/m)とし、このf(i)に対してfk(i)は以下のような関係を有する。
f2(i)=f(f(i))
f3(i)=f(f2(i))
f4(i)=f(f3(i))
・
・
・
fk−1(i)=f(fk−2(i))
fk(i)=f(fk−1(i))
また、m,nは、1以上の整数であり、(x%y)とはxをyで割った余りを表し、(x/y)とは、xをyで割った商の整数部分を表す。 - fk−1(f(i))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項14記載のデインタリーブ方法。 - f(fk−1(i))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項14記載のデインタリーブ方法。 - g(fk(i−1)+fk(1))を演算することにより、k番目のインタリーブブロックのi番目に出力されるデータの論理アドレスであるfk(i)を算出すること
を特徴とする請求項14記載のデインタリーブ方法。 - 1番目のインタリーブブロックのi番目にインタリーブメモリに入力されるデータ対する論理アドレスの初期値を設定しておくこと
を特徴とする請求項14記載のデインタリーブ方法。 - 1番目のインタリーブブロックのi番目にインタリーブメモリに入力される論理アドレスをiとすること
を特徴とする請求項18記載のデインタリーブ方法。 - 一定数のインタリーブブロック毎に、論理アドレスを上記初期値にリセットすること
を特徴とする請求項18記載のデインタリーブ方法。 - デジタル衛星放送の受信データに対して疑似ランダム信号を加算して逆エネルギー拡散を行う逆エネルギー拡散処理方法であって、
符号化/変調方式が割り当てられる最小のスロット単位である最小割当単位内に、有効スロットとともにダミースロットが含まれている場合には、そのダミースロットを有効割当単位の先頭に配置してフレームを再構成し、
上記再構成されたデータをインタリーブメモリに書き込み、このインタリーブメモリに書き込まれているデータを所定のインタリーブ規則に従い読み出すときに、k−1番目以前のスーパーフレームのi番目に配置されたデータが格納されていたアドレスに基づき、k番目のインタリーブブロックのi番目に読み出されるデータのアドレスを算出し、算出したこのアドレスからk番目に出力されるスーパーフレームのi番目のデータを読み出すとともに、k+1番目に入力されるスーパーフレームのi番目のデータを算出した上記アドレスに書き込んでデインタリーブを行い、
逆エネルギー拡散処理を行うかどうかを示すエネルギー拡散有効フラグを、上記インタリーブメモリから出力される各スロットに対して付け、
エネルギー拡散有効フラグが付けられたスロットに対してのみ疑似ランダム信号を加算して逆エネルギー拡散処理を行うこと
を特徴とする逆エネルギー拡散処理方法。 - 上記エネルギー拡散有効フラグは、当該フラグが付けられたスロットをフレーム内で時系列に選択していくと本来のスロット順序となるように各スロットに対して付けられていること
を特徴とする請求項21記載の逆エネルギー拡散処理方法。 - フレームの最初に与えられる疑似ランダム信号の値を記憶しておき、フレームが切り替わったときには、記憶してある疑似ランダム信号を読み出して、疑似ランダム信号を更新すること
を特徴とする請求項21記載の逆エネルギー拡散処理方法。 - バイト単位の疑似ランダム信号を発生すること
を特徴とする請求項21記載の逆エネルギー拡散処理方法。 - エネルギー拡散処理の停止命令に応じて、上記インタリーブメモリから出力されたデータに対して疑似ランダム信号の加算を停止すること
を特徴とする請求項21記載の逆エネルギー拡散処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000149112A JP4487385B2 (ja) | 2000-05-19 | 2000-05-19 | デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000149112A JP4487385B2 (ja) | 2000-05-19 | 2000-05-19 | デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001332979A JP2001332979A (ja) | 2001-11-30 |
JP4487385B2 true JP4487385B2 (ja) | 2010-06-23 |
Family
ID=18655018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000149112A Expired - Fee Related JP4487385B2 (ja) | 2000-05-19 | 2000-05-19 | デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4487385B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100920723B1 (ko) * | 2002-10-08 | 2009-10-07 | 삼성전자주식회사 | 동적환경변화에 적응가능한 단일반송파 전송시스템 및 그방법 |
-
2000
- 2000-05-19 JP JP2000149112A patent/JP4487385B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001332979A (ja) | 2001-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5764649A (en) | Efficient address generation for convolutional interleaving using a minimal amount of memory | |
EP0981218B1 (en) | Error-correcting encoding apparatus | |
US5912898A (en) | Convolutional interleaver/de-interleaver | |
US6678843B2 (en) | Method and apparatus for interleaving, deinterleaving and combined interleaving-deinterleaving | |
US6064664A (en) | Base-band interleaver for code division multiple access mobile telecommunication system | |
CA2519588C (en) | Error-correcting code interleaver | |
JPH11177537A (ja) | 送信装置および受信装置 | |
PT2165445T (pt) | Codificação convolucional computacionalmente eficiente com correspondência de taxas | |
US7127004B1 (en) | Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information | |
KR20100068293A (ko) | 멀티플렉싱되는 출력을 가진 병렬 터보 디코더 | |
JP2000138596A (ja) | インタリーブ方法及びデインタリーブ方法並びにインタリーブ装置及びデインタリーブ装置並びにインタリーブ/デインタリーブシステム並びにインタリーブ/デインタリーブ装置 | |
JP2000031838A (ja) | インターリーブ解除装置 | |
JP3358195B2 (ja) | データエレメントのインタリーブ/デインタリーブ | |
US7065696B1 (en) | Method and system for providing high-speed forward error correction for multi-stream data | |
JP4487385B2 (ja) | デジタル衛星放送受信装置、デインタリーブ方法及び逆エネルギー拡散処理方法 | |
KR100215566B1 (ko) | 정적 램을 이용한 길쌈 인터리버/디인터리버 및정적 램의 주소 생성 방법 | |
JP4045664B2 (ja) | データ並び換え装置とその方法および受信装置 | |
JP2001332980A (ja) | インタリーブ装置及びインタリーブ方法 | |
JP4419278B2 (ja) | デジタル衛星放送信号の復調装置及び方法 | |
US7433429B2 (en) | De-interleaver method and system | |
KR19990076387A (ko) | 격자복호기의 역추적장치 | |
JP2001103386A (ja) | デジタル放送受信装置 | |
EP1267511B1 (en) | A method and apparatus for interleaving, deinterleaving | |
JP2008263470A (ja) | デジタル放送復調装置 | |
JP2002026743A (ja) | Bsデジタル放送受信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090714 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090902 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100309 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100322 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |