JP3673989B2 - Interleave circuit - Google Patents

Interleave circuit Download PDF

Info

Publication number
JP3673989B2
JP3673989B2 JP7143399A JP7143399A JP3673989B2 JP 3673989 B2 JP3673989 B2 JP 3673989B2 JP 7143399 A JP7143399 A JP 7143399A JP 7143399 A JP7143399 A JP 7143399A JP 3673989 B2 JP3673989 B2 JP 3673989B2
Authority
JP
Japan
Prior art keywords
address
data
slot
interleave
counter
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
Application number
JP7143399A
Other languages
Japanese (ja)
Other versions
JP2000269829A (en
Inventor
壮一 新城
昭浩 堀井
憲一 白石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kenwood KK
Original Assignee
Kenwood KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kenwood KK filed Critical Kenwood KK
Priority to JP7143399A priority Critical patent/JP3673989B2/en
Publication of JP2000269829A publication Critical patent/JP2000269829A/en
Application granted granted Critical
Publication of JP3673989B2 publication Critical patent/JP3673989B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Error Detection And Correction (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はBSデジタル放送に用いられるインターリーブ回路に関する。
【0002】
【従来の技術】
BSデジタル放送に用いられるインターリーブ方式は(イ)スーパーフレーム単位でのブロックインターリーブであり、(ロ)インターリーブはフレーム方向で深さ8であり、(ハ)同一スロット毎の処理となり、フレーム構成に依存しないという特徴がある。
【0003】
次に、インターリーブ回路におけるデータのインターリーブメモリへの書き込み、読み出しに関して、その手順について説明する。図12はインターリーブメモリへの書き込み手順を示す。フレーム#1におけるスロット#1の1バイト目を先頭に、スロット方向に順に書きこむ。ここで、メモリアドレスを配列表示し、(フレーム番号、スロット番号、バイト番号)とすると、先頭は(0,0,0)である。1スロット目の最終アドレスは(0,0,202)となり、次はスロット#2の先頭に進む。同様にしてフレーム最終値(0,47,202)まで到達した場合は次のフレームとなり(1,0,0)からスタートする。このように、8フレーム(スーパーフレーム)全ての書き込みが終了すると、後記するように、書き込みメモリが切り替わり、再び次のスーパーフレームのインターリーブ書き込みをスタートする。
【0004】
アドレスを絶対アドレスで表示した場合は次のようになる。1スロットは203バイト、1フレームは48スロット、1スーパーフレームは8フレームであるから、「絶対アドレス=フレーム番号×9744+スロット番号×203+バイト番号」となる。ここで、9744は1フレーム分のバイト数であり、203バイト×48スロットである。アドレス0番地から入力されるバイトデータを順次書き込むことになる。
【0005】
次に、インターリーブの読み出し手順を図13に示す。読み出し手順は書き込み手順と異なり、フレーム方向に沿って読み出す。先頭は(0,0,0)である。次はフレーム#2の先頭バイト(1,0,0)となり、フレーム#7の(7,0、0)まで読み出した後、フレーム#1の2バイト目に移る。フレーム方向への読み出しは1スロット分の203バイトを読み出し終えるまで繰り返される。これまでがインターリーブ後のスロット#1となる。従って、インターリーブ後の多重化フレーム構成も、インターリーブ前の構成と変わることはない。
【0006】
次に、スロット#2に移り、同様にフレーム方向への読み出しを始める。1スロット目の最終アドレスは(2,0,25)、また、1フレーム目の最終アドレスは(2,47,25)となる。2フレーム目は図に示すようにスロット#1上に戻り、1フレーム目の1スロット目の最終アドレス(2,0,25)の次である(3,0,25)からスタートする。
【0007】
このように、メモリを利用してインターリーブを行う場合、そのアドレス発生器が重要となる。図14は従来のインターリーブ回路の構成を示す模式ブロック図である。ここでは、伝送モードの一例として、46スロットをTC(トレリス符号)8PSKで伝送し、1スロットをQPSK,符号化率r=1/2で伝送し、ダミーを1スロットとした場合を例示している。
【0008】
インターリーブメモリには実際には、連続的にデータが入力されることから、1スーパーフレーム分の記憶容量を有するインターリーブメモリ1およびインターリーブメモリ2の2スーパーフレーム分のメモリ、書き込みアドレス発生器3および読み出しアドレス発生器4を用いて、インターリーブメモリ1に書き込みを行っている場合にはインターリーブメモリ2からダミースロットを除いて読み出し、インターリーブメモリ2に書き込みを行っている場合にはインターリーブメモリ1からダミースロットを除いて読み出すように制御している。これにより、1つのインターリーブメモリに同時に書き込み読み出しをすることはなく、読み出すように制御している。
【0009】
この結果、1つのインターリーブメモリに同時に書き込み、読み出しをすることはなく、読み出しが終了していないデータへの上書きが防止できる。インターリーブメモリへの書き込みデータは、先頭1バイトを除いた203バイト区間で、ダミースロットも含めて書き込む。書き込みアドレスは書き込みアドレス発生器3にて生成され、同様に読み出しアドレスは読み出しアドレス発生器4にて発生される。これらアドレス発生器3および4は入力されているスーパーフレームタイミング信号によってタイミングを一致させられて動作するようになっている。
【0010】
一方、読み出しデータはインターリーブされた203バイト区間のデータとなるが、ダミースロットは伝送しないため出力しない。これは、読み出しアドレス発生器4にて、ダミースロット部のアドレスは飛ばすように制御することで可能となる。ただし、伝送方式によって内符号化速度が異なることから、図14の例ではQPSK、r=1/2のスロットの読み出し速度は、TC8PSKのスロットに比べ半分の速度で読み出すことになる。
【0011】
【発明が解決しようとする課題】
しかしながら、従来のインターリーブ回路によるときは、インターリーブを行うために2スーパーフレーム分の記憶容量を有するインターリーブメモリを必要とする。その容量は、「203(バイト)×48(スロット)×8(フレーム)×2=155904バイト」にも及びLSI化等に対して大きな負担になるという問題点があった。
【0012】
本発明はインターリーブメモリの記憶容量が少なくてすむインターリーブ回路を提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明にかかるインターリーブ回路は、BSデジタル放送におけるインターリーブ回路であって、インターリーブメモリと、該インターリーブメモリからデータを読み出すアドレス指定をし、データが読み出されたアドレスに、順次入力されてくるデータを格納するべくアドレス指定をし、かつ該格納されたデータをインターリーブして読み出すアドレス指定をするアドレス発生手段とを備え
アドレス発生手段は、SをBSデジタル放送における1フレームを構成するスロット数とし、mをBSデジタル放送における1スロットを構成する主信号数とし、nをBSデジタル放送の1スーパーフレームを構成するフレーム数であるインターリーブの深さとしたとき、
入力される主信号の数を計数するm進カウンタと、
m進カウンタのキャリを計数するS進カウンタと、
S進カウンタの計数値に(n×m)を乗算する乗算器と、
計数主信号値が(m―1)に達したときインターリーブの深さをインクリメントしてスロット方向に主信号を計数し、同様に順次繰り返して計数値が(n×m)に達するまで計数するオフセット値計数手段と、
乗算器の出力とオフセット値計数手段の計数値とを加算する加算手段と、
を備え、加算手段の出力をアドレスデータAとすることを特徴とする。
【0014】
本発明にかかるインターリーブ回路によれば、アドレス発生手段により指定されたインターリーブメモリのアドレスからデータが読み出され、データが読み出されたアドレスに順次入力されてくるデータを格納するべくアドレス指定がされ、かつ該格納されたデータをインターリーブして読み出すアドレス指定がなされる。したがってインターリーブメモリの記憶容量は少なくて済むことになる。
【0015】
【発明の実施の形態】
次に、本発明にかかるインターリーブ回路を実施の形態によって説明する。
【0016】
図1は本発明の実施の一形態にかかるインターリーブ回路の構成を示す模式ブロック図である。本発明の実施の一形態にかかるインターリーブ回路はトレリス符号方式(TC)8PSKが46スロット、QPSK(符号化率r=1/2)が1スロット、ダミーが1スロットの場合を例示している。
【0017】
本発明の実施の一形態にかかるインターリーブ回路は、スーパーフレームタイミング信号および伝送モード信号を受けてアドレスデータ、読み書き信号(R/W)および書き込みゲート信号を送出するアドレス発生器5と、データ、アドレスデータおよび読み書き信号を受けて、読み書き信号による書き込み指示に基づいて指示されたアドレス位置にデータを書き込み、読み出し指示に基づいて指示されたアドレス位置からデータを読み出すインターリーブメモリ6と、スーパーフレームタイミング信号を1スロット期間遅延させてバッファ読み出しスタート信号を発生するタイマー7と、書き込みゲート信号とバッファ読み出しスタート信号を受けてインターリーブメモリ6から読み出されたデータを書き込み、読み出すバッファメモリ8とを備えている。
【0018】
ここで、アドレス発生器5において、伝送モード信号に基づいてダミースロットを判別し、伝送モード信号に基づいて決まるダミースロットの位置を抜かした書き込みゲート信号を生成してバッファメモリ8においてダミースロットを削除する。
【0019】
上記のように本発明の実施の一形態にかかるインターリーブ回路では、従来2スーパーフレームのインターリーブメモリを使用して交互に書き込み、読み出しを行っていたのに代わって、読み出し終えたアドレスに、次の入力されたデータを書き込むことでアドレス発生器5を1つとし、また、インターリーブメモリ6も1スーパーフレーム分の記憶容量としている。さらに、インターリーブメモリ6からの出力はダミースロットも含めた203バイト区間の多重化フレーム構成となるため、1スロット長程度のFIFOからなるバッファメモリ8によりダミースロットの削除、速度変換を行う。
【0020】
本発明の実施の一形態にかかるインターリーブ回路における各信号のタイミングチャートを図2に示す。図2は1フレーム分のタイミングチャートを示している。46スロットをTC8PSKで、1スロットをQPSK(r=1/2)で伝送する場合を例示し、アドレス(図2(b))以外の動作はフレーム単位での繰り返しとなる。
【0021】
スーパーフレームタイミング信号であるスーパーフレームパルス(図2(a))によってアドレス発生器5およびタイマー7は初期化され、インターリーブメモリ6への書き込みがスタートされる。R/W信号(図2(d))は高電位で読み出し動作となり、低電位で書き込み動作となる。アドレス発生器5から出力されたアドレス(図2(b))に対して、まずインターリーブ後のデータ(図2(e))を読み出し、続いて同じアドレスにインターリーブ前のデータ(図2(c))の書き込みを行う。図2のタイミングチャートの斜線部分はダミーデータである。
【0022】
インターリーブされて読み出されたデータはバッファメモリ8に入力され、ダミーデータのある伝送モードについては、符号化速度の変換が行われる。ダミーデータはバッファメモリ8に書き込まれないように、伝送モードに応じてアドレス発生器5からバッファメモリ書き込みゲート信号(図2(f))が出力される。バッファメモリ書き込みゲート信号が低電位の場合にはバッファメモリ8への書き込みは行われない。バッファメモリ8の記憶容量は高々1スロット分あれば十分である。
【0023】
したがって、バッファメモリ8からデータの読み出しは、スーパーフレームパルスを1スロット遅延してタイマー7にて生成したバッファ読み出しスタート信号(図2(g))から読み出しを開始させ、バッファメモリ8からデータ(図2(h))を読み出させる。本例では、伝送効率1.0のQPSK(r=1/2)が1スロット分あるので、その1スロットは1/2の速度で出力する(図2(h)のスロット#47)。
【0024】
次に、アドレス発生器5について説明する。アドレス発生器5の詳細な説明をする前に、インターリーブの深さn×ブロック長m=4×5のインターリーブを例にアドレッシングについて説明する。
【0025】
図3および図4はインターリーブの深さn×ブロック長m=4×5のインターリーブを説明する模式図である。図3ではメモリマトリックスのセルの上段にはアドレスが記載され、下段にはデータ番号が記載され、図4ではアドレスの一覧表が示してある。図3(a)に示すメモリマトリクス上にまずデータを書き込む。アドレス発生器5からは順次、A[0]、A[1]、A[2]、A[3]、A[4]、A[5]…、A[18]、A[19]が出力され、データが書き込まれる。この書き込まれるデータストリームは常にD[0]、D[1]、D[2]、D[3]、D[4]、D[5]…、D[18]、D[19]の順番である。アドレス発生器5からのアドレスが単にインクリメントであることから、これを基本アドレスセットとする。
【0026】
次に、インターリーブメモリ6からの読み出しは深さ方向にすればよいから、読み出しアドレス順はA[0]、A[5]、A[10]、A[15]、A[1]、A[6]…、A[14]、A[19]となり、インターリーブメモリ6から出力されるデータ順番はD[0]、D[5]、D[10]、D[15]、D[1]、D[6]…、D[14]、D[19]である。このアドレス順をアドレスセット(番号)1とする。読み出されたアドレス上には、図3(b)の様に次組のデータがD[0]、D[1]、D[2]、D[3]、D[4]、D[5]…、D[18]、D[19]の順番で書き込まれる。
【0027】
アドレスセット1によって書き込まれたデータをインターリーブして読み出すには、アドレスをA[0]、A[6]、A[12]、A[18]、A[5]、A[11]…、A[13]、A[19]のように発生させれば、読み出されたデータは、D[0]、D[5]、D[10]、D[15]、D[1]、D[6]…、D[14]、D[19]となり、正しくインターリーブされていることが判る。これが、アドレスセット(番号)2となる。この読み出されたアドレス上に、図3(c)のように次組のデータがD[0]、D[1]、D[2]、D[3]、D[4]、D[5]…、D[18]、D[19]の順番で書き込まれる。
【0028】
このアドレッシングについて一覧表にまとめたのが図4である。最上行にアドレスセット番号x、最左列にアドレス番号yを表示している。アドレスセット番号“0”は基本アドレスセットである。また、アドレスはアドレス番号順に発生していくものとする。基本アドレスセット順に書き込まれたデータはアドレスセット番号1の順で読み出され、同アドレスセット番号1によって書き込まれたデータはアドレスセット番号2の順に読み出されることによってインターリーブされることが判る。
【0029】
図4によりインターリーブを行う手順について説明する。
(1)アドレスセット番号x=0から読み出し、
(2)アドレスセット番号x=0に書き込み、
(3)アドレスセット番号x=1から読み出し、
(4)アドレスセット番号x=1に書き込み、
(5)アドレスセット番号x=2から読み出し、
(6)アドレスセット番号x=2に書き込み、

(17)アドレスセット番号x=8から読み出し、
(18)アドレスセット番号x=8に書き込み、
(19)アドレスセット番号x=9(=0)から読み出し、
となって、データが読み出されたアドレスに、入力されたデータが順次書き込まれる。このようにm×n=5×4でのインターリーブにおけるアドレス指定は、アドレスセット番号xが9の周期で巡回する。アドレスセット番号の周期が9でこれを周期Xと記す。周期X=0は意味がなく、X=0は除く。アドレスセット番号xの周期Xについては後記する
【0030】
次に、このアドレッシングを一般式化する。インターリーブの深さをn、書き込み方向のデータ数(ブロック長)をm、アドレスセット番号をx、アドレス番号をy、アドレスをAとすると、以下の関係式が得られる。
A=(Abase(x)×y)mod(n×m−1) …(1)
これは、(y≠n×m−1)の場合であり、
Abase(x+1)=(Abase(x)×m)mod(n×m−1)
Abase(0)=1
ただし、a mod bとは整数aを整数bで除算した剰余である。
A=y …(2)
これは、(y=n×m−1)の場合である。
【0031】
上記の(1)式、(2)式に基づいたアドレス生成のフローチャートを図5に示す。アドレス生成が開始されると、x=0、Abase(0)=1の初期化が行われ(ステップS1)、y=0に設定される(ステップS2)。ステップS2に続いて、y=0か否かチェックされ(ステップS3)、y=0と判別されないときはy=(m×n+1)か否かがチェックされる(ステップS4)。
【0032】
ステップS4においてy=(m×n−1)でないと判別されると、A=A+Abase(x)の演算がなされ(ステップS5)、次いでA>(m×n−1)か否かがチェックされる(ステップS6)。ステップS6においてA>(m×n−1)でないと判別されたときは、Aがアドレスとして確定し、アドレスAが出力される(ステップS7)。
【0033】
ステップS3においてy=0であると判別されたときは、A=0とされて(ステップS8)、ステップS7が実行されアドレスがA=0に確定されて、出力される。ステップS4においてy=(m×n−1)であると判別されたときは、A=(m×n−1)が演算されて(ステップS9)、ステップS7が実行されアドレスがA=(m×n−1)に確定されて、出力される。ステップS6においてA>(m×n−1)であると判別されたときは、A=A−(m×n−1)が演算されて(ステップS10)、ステップS7が実行されアドレスがA=A−(m×n−1)に確定されて、出力される。
【0034】
ステップS7に続いて、y=mか否かがチェックされ(ステップS11)、y=mでないと判別されたときはy=(m×n−1)か否かがチェックされる(ステップS12)。ステップS11においてy=mであると判別されたときはステップS11に続いてAbase(x+1)=Aの演算がなされて(ステップS13)、ステップS12が実行される。
【0035】
ステップS12においてy=(m×n+1)であると判別されたときはステップS12に続いてx=x+1が演算され(ステップS14)、次いでステップS2から再び実行される。ステップS12においてy=(m×n−1)でないと判別されたときはステップS12に続いてy=y+1が演算され(ステップS15)、次いでステップS3から再び実行される。以上のステップの実行によりアドレスが得られる。
【0036】
また上記の(1)式、(2)式は、下記の(3)式、(4)式のように書き表すこともできる。
A=y×mmod(n×m−1) …(3)
これは(y≠n×m−1)の場合であり、
A=y …(4)
これは(y=n×m−1)の場合である。
【0037】
ここで、アドレスセット番号xおよび周期Xは(3)式において、y=1のときA=1となる0以外のxを求めることにより得られる。例えばm=5、n=4の場合は前記の如く、周期X=9となる。(y×m)の値が(n×m−1)の値未満のときはA=(y×m)とするアドレスデータを発生する。
【0038】
上記(3)式、(4)式および図5は、2次元マトリックス上でのインターリーブに関して一般化したものであるが、BSデジタル放送方式のインターリーブにも適用できる。このBSデジタル放送方式におけるインターリーブメモリ空間を図11に示す。BSデジタル放送方式では同一のスロット内でフレーム方向に深さ8のインターリーブであるため、203(バイト)×8(フレーム)の2次元マトリックスが48(スロット)集まったものとして扱うことができる。つまり、1スーパーフレーム分のメモリ空間を48分割し、それぞれのエリア内で203×8のインターリーブを行うこととなる。ただ、203バイト毎にスロットを移動する必要がある点に注意する必要がある。
【0039】
本発明の実施の一形態にかかるインターリーブ回路では、1スーパーフレームのメモリマトリクスを図11のように定める。m(=203(バイト))×n(=8(フレーム))×S(=48(スロット))とし、アドレスは203×8の2次元マトリクスでアドレス0からm方向にインクリメントし、続いてn方向に一段シフトしてまたm方向にインクリメントし、…というように定めると、1スロットの最終アドレスは1623となる。また、スロット方向へは、第1スロットから第48スロットの方向へ、n×m=1624ずつオフセットが加えられて行くものとする。
【0040】
この場合も、アドレスセット番号xの周期Xは(3)式においてy=1のときにA=1となるxから求められて、アドレスセット番号xの周期X=180である。
【0041】
次に、アドレス発生器5におけるアドレスデータ発生について詳細に説明する。図6にアドレス発生器5におけるアドレスデータ発生部の実施例を示し、図7および図8にその作用に供するフローチャートを示す。
【0042】
アドレス発生器5におけるアドレスデータ発生部は図6に示すように、ストローブパルス発生部50、ストローブパルス発生部50と協働してスロットの番号を指定するスロット番号検出部51、ストローブパルス発生部50とスロット番号検出部51と協働してモデュロ演算を行なってアドレスデータを送出するモデュロ演算部52とを備えている。ここで、m=203(1スロットにおける主信号のバイト数)、n=8(インターリーブの深さ)、S=48(1フレームにおけるスロット数)、F=8(1スーパーフレームを構成するフレーム数であって、F=n=8)、X=180(アドレスセット回数xの周期)である。ここで、後記する加算器70を除くモデュロ演算部52がオフセット値計数手段に対応する。
【0043】
ストローブパルス発生部50はアドレス発生器5に設けられている図示しないタイミング信号発生器から出力されるインターリーブ書き込み、読み出しゲートパルスが供給されて、該インターリーブ書き込み、読み出しゲートパルスが高電位の期間出力されるクロックパルスを受けてクロックパルスを計数するm進カウンタ53と、m進カウンタ53のキャリ出力の計数を行なうS進カウンタ54と、S進カウンタ54のキャリ出力の計数を行なうF進カウンタ55と、F進カウンタ55のキャリ出力の計数を行なうX進カウンタ56と、m進カウンタ53の計数値mcntとS進カウンタ54の計数値ScntとF進カウンタ55の計数値FcntとX進カウンタ56の計数値xcntとを受けてストローブパルスを発生するデコーダ57とを備えている。
【0044】
S進カウンタ54の計数値はm進カウンタ53がクロックパルスを0から203回計数する毎にインクリメントされるために、S進カウンタ54でスロット番号を検出していることになる。スロット番号検出部51ではS進カウンタ54の計数値を受けて(n×m)倍する乗算器58とからなり、S進カウンタ54の計数値に基づいてスロット番号の開始アドレスデータ0、1624、3248、…、76328を発生することになる。スロット番号検出部51からのこの出力に後記のデータA0が加算されて、アドレスデータAが得られる。
【0045】
モデュロ演算部52はAオフセットレジスタ60を設定値1に初期化する設定器59、ストローブパルスsaを受けてRオフセットレジスタ61の置数値が置数されるAオフセットレジスタ60、ストローブパルスsbを受けてアドレスデータA0を置数するRオフセットレジスタ61、アドレスデータA0とAオフセットレジスタ60の置数値を加算する加算器62と、加算器62の加算出力と設定器63の設定値(n×m)とを比較する比較器64と、(加算器62の加算出力≧設定器63の設定値(n×m))のときの比較器64の出力に基づき加算器62の加算出力から設定器65の設定値(n×m−1)を減算した値をアドレスデータA〃として出力し、かつ(加算器62の加算出力≧設定器63の設定値(n×m))でないとき比較器64の出力に基づき加算器62の加算出力をアドレスデータA〃として出力する減算器66とを備えている。
【0046】
モデュロ演算部52はさらに、減算器66から出力されるアドレスデータA〃をストローブパルスscを受けて置数値とするAmcntレジスタ67と、減算器66から出力されるアドレスデータA〃とAmcntレジスタ67の置数値との一方をセレクトパルスspにより選択するセレクタ68と、セレクタ68から出力されるアドレスデータA´を1クロックパルスの期間遅延させるDF/Fからなるラッチ69と、ラッチされたアドレスデータA0と乗算器58の出力とを加算する加算器70とを備え、加算器70の出力をアドレスデータAとする。
【0047】
Aオフセットレジスタ60へのストローブパルスsaはF進カウンタ55のキャリ出力に同期して出力される。ただし、xcnt=X−1の場合は1が置数され、xcnt≠X−1の場合はRオフセットレジスタ61の置数値Rofsetが置数される。Rオフセットレジスタ61へのストローブパルスsbはF進カウンタ53の計数値Fcntが0、S進カウンタ52の計数値Scntが0、かつm進カウンタ53の計数値mcntがnになったときに出力される。
【0048】
Amcntレジスタ67へのストローブパルスscはS進カウンタ52の計数値Scntが0で、かつm進カウンタ53の計数値mcntが0になったときに出力される。セレクタ68へのセレクトパルスspはm進カウンタ53の計数値mcnt=m−1、かつS進カウンタ52の計数値Scnt≠S−1となったときに出力されて、Amcntレジスタ67の置数値が選択される。
【0049】
加算器62にてAオフセットレジスタに置数された値とアドレスデータA0とが加算され、加算結果が比較器64と減算器66に送出される。アドレスデータA0は203×8の2次元マトリクス上でのアドレスデータであり、スロット数をカウントするS進カウンタ54の計数値Scntを乗算器58によってn×m倍された(つまりスロット方向へのオフセット)値とアドレスデータA0との加算結果が、アドレスデータAとなる。
【0050】
比較器64は加算器62の加算出力が(n×m(=1624))以上となった場合に減算器66に対して減算指示を出力し、減算器66は減算指示を受けて加算器62からの加算出力から設定器65に設定されている(n×m−1)を減算する。また、加算器62の加算出力が(n×m(=1624))以上でない場合は減算されず、加算器62の加算出力がそのまま減算器66から出力される。
【0051】
Amcntレジスタ67にはストローブパルスscの発生時点でのアドレスデータA〃が置数されおり、セレクタ68がセレクト信号spを受けた場合にAmcntレジスタ67の置数値A〃がセレクトされて出力される。セレクタ68からの出力をアドレスデータA´とする。アドレスデータA´がラッチ69によってラッチされ、ラッチ出力をアドレスデータA0とする。また、Rオフセットレジスタ61はストローブパルスsaを受けて、その時点でのデータA0が置数される。また、Rオフセットレジスタ61の置数値はAオフセットレジスタ60に出力され、ストローブパルスsaを受けてAオフセットレジスタ60に置数される。
【0052】
m進カウンタ53、S進カウンタ54、F進カウンタ55、X進カウンタ56およびラッチ69は共通のクロックパルスで動作しているが、インターリーブメモリ書き込み、読み出しゲートパルスが低電位の場合には動作を停止する。
【0053】
および図のフローチャートに基づいてアドレス発生器5におけるアドレスデータ発生器の作用を説明する。
【0054】
インターリーブが開始されるとAオフセットレジスタ60の置数値Aofsetが1に初期化され、かつX進カウンタ56の計数値xcntすなわちアドレスセット番号xは0に初期化される(ステップS21)。また、m進カウンタ53の計数値mcnt、S進カウンタ54の計数値ScntおよびカウンタF54の計数値Fcntが0に初期化され、ラッチ69も初期化されてアドレスデータA0も初期化される(ステップS22)。
【0055】
この時のデータA〃がAmcntレジスタ67に置数されるがこの場合は0が置数されることになる(ステップS23)。また、ストローブパルスscはm進カウンタ53の計数値mcntが0、S進カウンタ52の計数値Scntが0になったとき高電位になるためAmcntレジスタ67への置数はF進カウンタ55のインクリメント毎に行なわれることになる。
【0056】
セレクタ68を介して出力されたAmcntレジスタ67への置数値はラッチ69にてラッチされて、アドレスデータA0が確定する(ステップS24)。デコーダ57からF進カウンタ55の計数値Fcnt=0、S進カウンタ54の計数値Scnt=1、m進カウンタ53の計数値mcnt=0、すなわちScnt×203+mcnt=203か否かがチェックされる(ステップS25)。
【0057】
ステップS25において、F進カウンタ55の計数値Fcnt=0、S進カウンタ54の計数値Scnt=1、m進カウンタ53の計数値mcnt=0、すなわちアドレス番号y=203と判別されたときにストローブパルスsbが出力され、Rオフセットレジスタ61にアドレスデータA0が置数され(ステップS26)、ステップS27が実行される。しかるに、この時点ではm進カウンタ53の計数値mcnt=0であるためステップS25からステップS27が実行される。
【0058】
ステップS27においてm進カウンタ53の計数値mcntが、計数値mcnt=m−1(=202)になるまでは、ステップS27に続いて図7において図示していないがm進カウンタ53の計数値mcnがインクリメントされて、次いでステップS28が実行される。ステップS28において加算器62によってアドレスデータA0とAオフセットレジスタ60に置数されている置数値とが加算される(ステップS28)。加算器62の加算出力A〃´が(n×m(=1624))以上である場合には(ステップS29)、加算出力A〃´から(n×m−1(=1623))が減算され、ステップS24から実行される(ステップS30)。加算器62の加算出力A〃´が(n×m(=1624))以上でない場合にステップS29に続いてステップS24から実行される。
【0059】
ここまでの動作を前記アドレッシングの一般式に照らし合わせると、Aオフセットレジスタ60の置数値はnのx乗に等しく(nのx乗が(n×m−1)を超えた場合には(n×m−1)を繰り返して減算したときの剰余に等しい)、y×nのx乗はnのx乗の累積加算に等しい。また、(n×m−1)のモデュロ演算は、データA〃´が(n×m−1)の2倍を超えることがないことから、(n×m−1)を超えた場合に(n×m−1)を減算することで構成が簡略化できる。データA〃´が(n×m−1)と等しくなる最終アドレスでは、(n×m−1)を減算すると0となってしまい不具合を来す。
【0060】
しかるに、A〃´が(n×m−1)と等しくなるのは最終アドレスのみであることから、減算の条件を、(n×m)を超えた場合に(n×m−1)を減算すると変更することによりこれを回避できる。これは、前記アドレッシングの一般式におけるy=n×m−1の場合に、A=yとする条件を簡単化したことと同等である。
【0061】
m進カウンタ53の計数値mcntがm−1(=202)となった場合にはS進カウンタ54の計数値Scntに基づく条件分岐のステップが実行される(ステップS31)。S進カウンタ54の計数値ScntがS−1(=47)となるまではステップS32が実行され、ステップS32に続いてステップS24から繰り返して実行される。ステップS32ではS進カウンタ54の計数値Scntがインクリメントされ、またm進カウンタ53の計数値mcntがリセットされ、そしてアドレスデータA´としてAmcntレジスタ67の置数値が出力される(ステップS32)。つまり、セレクタ68によってAmcntレジスタ67の置数値が選択される。この動作は、各スロットのアドレスデータAの初期値を、フレーム内で等しくするためである。
【0062】
例えば1フレーム目では各スロットのアドレスデータA0は0で始まり、また2フレーム目では203から始まる。したがって、2フレーム目ではスロットが代わる毎にアドレスデータA0に203をロードする必要がある。現時点ではF進カウンタ55の計数値Fcnt=0、つまり1フレーム目なので、スロットのインクリメント毎にAmcntレジスタ67に置数されていた0がロードされることになる。上記の動作はS進カウンタ54の計数値ScntがS−1(=47)となるまで繰り返される。
【0063】
S進カウンタ54の計数値ScntがS−1(=47)となった場合には、F進カウンタ55の計数値Fcntに基づく条件分岐ステップが実行される(ステップS35)。ステップS35においてF進カウンタ55の計数値Fcnt=F−1に満たない場合は、ステップS36が実行されてF進カウンタ55の計数値Fcntがインクリメントされ、S進カウンタ54の計数値Scntおよびm進カウンタ53の計数値mcntのリセットが行なわれる(ステップS36)。続いてAオフセットレジスタ60へA0が累算される(ステップS37)。これは、フレーム変更時のアドレスデータA0の初期値は、前フレームの最終値のデータA0の次の値になるからである。
【0064】
つまり、アドレスセット番号xが0のときは、1フレーム目の最終のアドレスデータA0は202であり、2フレームの先頭は、Aオフセットレジスタ60の置数値は1であるから、202+1=203となる。また、ステップS35での結果、ステップS38が実行され、データA´≧(n×m)がチェックされ、ステップS38の結果、選択的にステップS39が実行され、次いでステップS23が実行される。データA´が(n×m)を超えた場合に(n×m−1)が減算される(ステップS39)ことは、前記の場合と同様である。さらに、この結果はステップS23によってAmcntレジスタ67に置数され、スロットが変更されるごとにロードされる値となる。
【0065】
ステップS35においてF進カウンタ55の計数値FcntがF−1(=7)となった場合にはこの時点で、1スーパーフレーム分のインターリーブは完了している。X進カウンタ56の計数値xcntに基づく条件分岐(ステップS40)により、アドレスセット番号xがx=X−1(=179)に達していない場合には、ステップS41が実行され、ステップS26において置数されたRオフセットレジスタ61の置数値がAオフセットレジスタ60に置数される(ステップS41)。さらに、アドレスセット番号xがインクリメントされる(ステップS42)。
【0066】
この動作を前記したアドレシングの一般式、(3)式および(4)式により説明する。
【0067】
Aオフセットレジスタ60の置数値は、mのx乗、つまりy=1の場合のアドレスデータA((A=1×mのx乗の値)に等しいが(前記の如く、mのx乗の値が(n×m−1)を超えた場合には(n×m−1)で減算を繰り返したときの剰余に等しい)、次のアドレスセットのAオフセットレジスタ60の置数値Aofset´は同様に1×mの(x+1)乗=1×mのx乗×mとなり、これはy=203の場合のアドレスデータAに等しい。
【0068】
言い換えれば、現在のy=203のアドレスデータAを記憶しておけば、これは次のアドレスセット番号xのAオフセットレジスタ60の置数値であるAofset´となり、計算回路が省略できることになる。ステップS25、ステップS26によりy=203のときのアドレスデータAをRオフセットレジスタ61に記憶していたので、次のアドレスセットに進む前にこれをAオフセットレジスタ60に書き込むのである。また、X進カウンタ56の計数値xcntがX−1(=179)となった場合には、全て初期化される。
【0069】
本実施の一形態によって生成されたアドレスデータAの一部を図9および図10に示す。紙面の関係から、アドレスセット番号xは18まで、またアドレス番号yは55までを示した。
【0070】
以上のように本実施の一形態にかかるインターリーブ回路によれば、アドレスデータ発生器によって発生させたインターリーブメモリへのアドレスデータAに対してリード(R)、ライト(W)、リード(R)、ライト(W)、……のようにライトよりもリードが先行して行なわれ、データが読み出されたことによって空きとなったアドレスにデータを書き込むことによって、メモリの使用効率を向上させている。
【0071】
【発明の効果】
本発明のインターリーブ回路によれば、1スーパーフレーム分の記憶容量のインターリーブメモリでインターリーブが行えるようになり、部品点数、回路規模を大幅に削減することが可能となる。特に集積回路化した場合、ゲート数を大きく削減することができて、チップ面積が縮小し、コストダウンが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の一形態にかかるインターリーブ回路の構成を示す模式ブロック図である。
【図2】本発明の実施の一形態にかかるインターリーブ回路における各信号のタイミング図である。
【図3】本発明の実施の一形態にかかるインターリーブ回路におけるインターリーブの原理の説明に供する模式図である。
【図4】本発明の実施の一形態にかかるインターリーブ回路におけるインターリーブの原理の説明に供する模式図である。
【図5】本発明の実施の一形態にかかるインターリーブ回路によるアドレス生成のためのフローチャートである。
【図6】本発明の実施の一形態にかかるインターリーブ回路におけるアドレス発生器に備えたアドレスデータ発生部の構成を示すブロック図である。
【図7】本発明の実施の一形態にかかるインターリーブ回路におけるアドレス発生作用の説明に供するフローチャートである。
【図8】本発明の実施の一形態にかかるインターリーブ回路におけるアドレス発生作用の説明に供するフローチャートである。
【図9】本発明の実施の一形態にかかるインターリーブ回路における発生アドレスの一部を示す模式図である。
【図10】本発明の実施の一形態にかかるインターリーブ回路における発生アドレスの一部を示す模式図である。
【図11】BSデジタル放送におけるインターリーブメモリ空間の説明に供する模式図である。
【図12】BSデジタル放送におけるインターリーブの書き込み動作の説明の供する模式図である。
【図13】BSデジタル放送におけるインターリーブの読み出し動作の説明の供する模式図である。
【図14】従来のインターリーブ回路の構成を示す模式ブロック図である。
【符号の説明】
5 アドレス発生器
6 インターリーブメモリ
7 タイマー
8 バッファメモリ
50 ストローブパルス発生部
51 スロット番号検出部
52 モデュロ演算部
53、54 m進カウンタ、S進カウンタ
55、56 F進カウンタ、X進カウンタ
57 デコーダ
58 乗算器
59、63、65 設定器
60、61 Aオフセットレジスタ、Rオフセットレジスタ
62、70 加算器
64 比較器
66 減算器
67 Amcntレジスタ
68 セレクタ
69 ラッチ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an interleave circuit used for BS digital broadcasting.
[0002]
[Prior art]
The interleaving method used in BS digital broadcasting is (a) block interleaving in units of superframes, (b) interleaving is 8 in the frame direction, and (c) processing is performed for each slot, depending on the frame configuration. There is a feature that does not.
[0003]
Next, a procedure for writing / reading data to / from the interleave memory in the interleave circuit will be described. FIG. 12 shows a writing procedure to the interleave memory. The first byte of slot # 1 in frame # 1 is written sequentially in the slot direction. Here, when the memory addresses are displayed in an array and (frame number, slot number, byte number), the top is (0, 0, 0). The final address of the first slot is (0, 0, 202), and the process proceeds to the beginning of slot # 2. Similarly, when the frame reaches the final value (0, 47, 202), it becomes the next frame and starts from (1, 0, 0). As described above, when all the 8 frames (superframes) are written, the writing memory is switched as described later, and the next superframe interleave writing is started again.
[0004]
When the address is displayed as an absolute address, it is as follows. Since one slot is 203 bytes, one frame is 48 slots, and one super frame is eight frames, “absolute address = frame number × 9744 + slot number × 203 + byte number”. Here, 9744 is the number of bytes for one frame, which is 203 bytes × 48 slots. Byte data input from address 0 is sequentially written.
[0005]
Next, the interleave reading procedure is shown in FIG. The reading procedure is different from the writing procedure, and reading is performed along the frame direction. The head is (0, 0, 0). Next is the first byte (1, 0, 0) of frame # 2, and after reading up to (7, 0, 0) of frame # 7, it moves to the second byte of frame # 1. Reading in the frame direction is repeated until reading of 203 bytes for one slot is completed. Up to this point, slot # 1 has been interleaved. Therefore, the multiplexed frame configuration after interleaving is not different from the configuration before interleaving.
[0006]
Next, the process proceeds to slot # 2 and similarly starts reading in the frame direction. The final address of the first slot is (2, 0, 25), and the final address of the first frame is (2, 47, 25). As shown in the figure, the second frame returns to the slot # 1 and starts from (3, 0, 25) next to the last address (2, 0, 25) of the first slot of the first frame.
[0007]
Thus, when performing interleaving using a memory, the address generator becomes important. FIG. 14 is a schematic block diagram showing the configuration of a conventional interleave circuit. Here, as an example of the transmission mode, 46 slots are transmitted with TC (trellis code) 8PSK, 1 slot is transmitted with QPSK, coding rate r = 1/2, and a dummy is 1 slot. Yes.
[0008]
Actually, since data is continuously input to the interleave memory, the memory for two superframes of the interleave memory 1 and the interleave memory 2 having a storage capacity for one superframe, the write address generator 3 and the read When writing to the interleave memory 1 using the address generator 4, the dummy slot is read from the interleave memory 2, and when writing to the interleave memory 2, the dummy slot is read from the interleave memory 1. It is controlled to read out. As a result, control is performed so that one interleave memory is not simultaneously read and written.
[0009]
As a result, writing and reading to one interleave memory are not performed simultaneously, and overwriting of data that has not been read can be prevented. Write data to the interleave memory is written in a 203-byte section excluding the first 1 byte, including a dummy slot. The write address is generated by the write address generator 3, and similarly the read address is generated by the read address generator 4. These address generators 3 and 4 operate with their timings matched by the input superframe timing signal.
[0010]
On the other hand, the read data is interleaved 203-byte data, but is not output because the dummy slot is not transmitted. This can be achieved by controlling the address of the dummy slot portion to be skipped by the read address generator 4. However, since the inner coding speed differs depending on the transmission method, in the example of FIG. 14, the reading speed of the slot of QPSK, r = 1/2 is read at half the speed of the slot of TC8PSK.
[0011]
[Problems to be solved by the invention]
However, when using a conventional interleave circuit, an interleave memory having a storage capacity of two superframes is required to perform the interleave. The capacity is “203 (bytes) × 48 (slots) × 8 (frames) × 2 = 155904 bytes”, and there is a problem that it becomes a heavy burden for LSI implementation.
[0012]
It is an object of the present invention to provide an interleave circuit that requires less storage capacity of an interleave memory.
[0013]
[Means for Solving the Problems]
  An interleave circuit according to the present invention is an interleave circuit in BS digital broadcasting, which specifies an interleave memory and an address for reading data from the interleave memory, and sequentially inputs data to the address from which the data is read. Address generating means for addressing to store and addressing to read out the stored data by interleaving,
The address generating means sets S as the number of slots constituting one frame in BS digital broadcasting, m as the number of main signals constituting one slot in BS digital broadcasting, and n as the number of frames constituting one super frame of BS digital broadcasting. When the depth of interleaving is
  An m-ary counter that counts the number of input main signals;
  an S-adic counter that counts the carry of the m-adic counter;
  A multiplier for multiplying the count value of the S-adic counter by (n × m);
  When the count main signal value reaches (m-1), increment the interleave depth.An offset value counting means that counts the main signal in the slot direction and repeats in a similar manner until the count value reaches (n × m);
  Adding means for adding the output of the multiplier and the count value of the offset value counting means;
  And the output of the adding means is address data A.
[0014]
According to the interleave circuit of the present invention, data is read from the address of the interleave memory specified by the address generating means, and the address is specified to store the sequentially input data at the address from which the data is read. In addition, an address is designated to read out the stored data by interleaving. Therefore, the storage capacity of the interleave memory is small.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Next, an interleave circuit according to the present invention will be described with reference to an embodiment.
[0016]
FIG. 1 is a schematic block diagram showing a configuration of an interleave circuit according to an embodiment of the present invention. The interleave circuit according to the embodiment of the present invention exemplifies a case where trellis coding (TC) 8PSK has 46 slots, QPSK (coding rate r = 1/2) has 1 slot, and a dummy has 1 slot.
[0017]
An interleaving circuit according to an embodiment of the present invention includes an address generator 5 that receives address data, a read / write signal (R / W), and a write gate signal in response to a superframe timing signal and a transmission mode signal, and data and address The interleave memory 6 that receives the data and the read / write signal, writes the data to the address position designated based on the write instruction by the read / write signal, reads the data from the address position designated based on the read instruction, and the superframe timing signal A timer 7 for generating a buffer read start signal delayed by one slot period, and a buffer memory 8 for writing and reading data read from the interleave memory 6 in response to a write gate signal and a buffer read start signal It is equipped with a.
[0018]
Here, the address generator 5 discriminates the dummy slot based on the transmission mode signal, generates a write gate signal in which the position of the dummy slot determined based on the transmission mode signal is removed, and deletes the dummy slot in the buffer memory 8. To do.
[0019]
As described above, in the interleave circuit according to the embodiment of the present invention, instead of using the conventional 2-superframe interleave memory to alternately perform writing and reading, the following address is read at the address where the reading has been completed. By writing the input data, one address generator 5 is provided, and the interleave memory 6 has a storage capacity for one superframe. Further, since the output from the interleave memory 6 has a multiplexed frame structure of 203 bytes including the dummy slot, the dummy slot is deleted and the speed is converted by the buffer memory 8 composed of a FIFO of about 1 slot length.
[0020]
FIG. 2 shows a timing chart of each signal in the interleave circuit according to the embodiment of the present invention. FIG. 2 shows a timing chart for one frame. For example, 46 slots are transmitted in TC8PSK and 1 slot is transmitted in QPSK (r = 1/2), and operations other than the address (FIG. 2B) are repeated in units of frames.
[0021]
The address generator 5 and the timer 7 are initialized by a super frame pulse (FIG. 2A) which is a super frame timing signal, and writing to the interleave memory 6 is started. The R / W signal (FIG. 2D) is a read operation at a high potential and a write operation at a low potential. For the address output from the address generator 5 (FIG. 2 (b)), first the data after interleaving (FIG. 2 (e)) is read, and then the data before interleaving (FIG. 2 (c)) to the same address. ). The hatched portion in the timing chart of FIG. 2 is dummy data.
[0022]
The interleaved and read data is input to the buffer memory 8, and the coding rate is converted for the transmission mode with dummy data. A buffer memory write gate signal (FIG. 2 (f)) is output from the address generator 5 in accordance with the transmission mode so that the dummy data is not written to the buffer memory 8. When the buffer memory write gate signal is at a low potential, writing to the buffer memory 8 is not performed. The storage capacity of the buffer memory 8 is sufficient for at most one slot.
[0023]
Therefore, data is read from the buffer memory 8 by starting the reading from the buffer read start signal (FIG. 2 (g)) generated by the timer 7 after delaying the super frame pulse by one slot, 2 (h)) is read out. In this example, there is one slot of QPSK (r = 1/2) with a transmission efficiency of 1.0, so that one slot is output at a speed of 1/2 (slot # 47 in FIG. 2 (h)).
[0024]
Next, the address generator 5 will be described. Before the address generator 5 is described in detail, addressing will be described by taking interleaving depth n × block length m = 4 × 5 as an example.
[0025]
3 and 4 are schematic diagrams illustrating interleaving of interleaving depth n × block length m = 4 × 5. In FIG. 3, the addresses are described in the upper part of the cells of the memory matrix, the data numbers are described in the lower part, and the list of addresses is shown in FIG. Data is first written on the memory matrix shown in FIG. The address generator 5 sequentially outputs A [0], A [1], A [2], A [3], A [4], A [5]... A [18], A [19]. And data is written. This written data stream is always in the order of D [0], D [1], D [2], D [3], D [4], D [5]..., D [18], D [19]. is there. Since the address from the address generator 5 is simply an increment, this is set as a basic address set.
[0026]
Next, since reading from the interleave memory 6 may be performed in the depth direction, the read address order is A [0], A [5], A [10], A [15], A [1], A [ 6]... A [14] and A [19], and the data order output from the interleave memory 6 is D [0], D [5], D [10], D [15], D [1], D [6] ..., D [14], D [19]. This address order is address set (number) 1. On the read address, the next set of data is D [0], D [1], D [2], D [3], D [4], D [5 as shown in FIG. ], D [18] and D [19] are written in this order.
[0027]
To interleave and read the data written by the address set 1, the addresses are A [0], A [6], A [12], A [18], A [5], A [11]. If generated as [13], A [19], the read data is D [0], D [5], D [10], D [15], D [1], D [ 6]..., D [14], D [19], and it can be seen that they are correctly interleaved. This is address set (number) 2. On the read address, the next set of data is D [0], D [1], D [2], D [3], D [4], D [5, as shown in FIG. ], D [18] and D [19] are written in this order.
[0028]
FIG. 4 summarizes this addressing in a list. The address set number x is displayed in the top row, and the address number y is displayed in the leftmost column. The address set number “0” is a basic address set. Addresses are generated in the order of address numbers. It can be seen that the data written in the basic address set order is read in the order of the address set number 1, and the data written by the address set number 1 is read out in the order of the address set number 2 to be interleaved.
[0029]
The procedure for performing interleaving will be described with reference to FIG.
(1) Read from address set number x = 0,
(2) Write to address set number x = 0,
(3) Read from address set number x = 1,
(4) Write to address set number x = 1,
(5) Read from address set number x = 2,
(6) Write to address set number x = 2,

(17) Read from address set number x = 8,
(18) Write to address set number x = 8,
(19) Read from address set number x = 9 (= 0),
Thus, the input data is sequentially written at the address from which the data is read. As described above, the addressing in the interleaving with m × n = 5 × 4 circulates in a cycle in which the address set number x is 9. The cycle of the address set number is 9, which is denoted as cycle X. The period X = 0 has no meaning and X = 0 is excluded. The period X of the address set number x will be described later.
[0030]
Next, this addressing is generalized. When the depth of interleaving is n, the number of data in the writing direction (block length) is m, the address set number is x, the address number is y, and the address is A, the following relational expression is obtained.
A = (Abase (x) × y) mod (n × m−1) (1)
This is the case of (y ≠ n × m−1)
Abase (x + 1) = (Abase (x) × m) mod (n × m−1)
Abase (0) = 1
However, a mod b is a remainder obtained by dividing the integer a by the integer b.
A = y (2)
This is the case of (y = n × m−1).
[0031]
FIG. 5 shows a flowchart of address generation based on the above equations (1) and (2). When address generation is started, initialization of x = 0 and Abase (0) = 1 is performed (step S1), and y = 0 is set (step S2). Following step S2, it is checked whether y = 0 (step S3). If y = 0 is not determined, it is checked whether y = (m × n + 1) (step S4).
[0032]
If it is determined in step S4 that y = (m × n−1) is not satisfied, an operation of A = A + Abase (x) is performed (step S5), and then whether A> (m × n−1) is checked. (Step S6). When it is determined in step S6 that A> (m × n−1) is not satisfied, A is determined as an address, and address A is output (step S7).
[0033]
If it is determined in step S3 that y = 0, A = 0 is set (step S8), step S7 is executed, the address is fixed at A = 0, and the data is output. When it is determined in step S4 that y = (m × n−1), A = (m × n−1) is calculated (step S9), step S7 is executed, and the address is A = (m Xn-1) is determined and output. If it is determined in step S6 that A> (m × n−1), A = A− (m × n−1) is calculated (step S10), step S7 is executed, and the address is A = A− (m × n−1) is determined and output.
[0034]
Following step S7, it is checked whether y = m (step S11). If it is determined that y = m is not satisfied, it is checked whether y = (m × n−1) (step S12). . When it is determined in step S11 that y = m, calculation of Abase (x + 1) = A is performed following step S11 (step S13), and step S12 is executed.
[0035]
When it is determined in step S12 that y = (m × n + 1), x = x + 1 is calculated subsequent to step S12 (step S14), and then executed again from step S2. When it is determined in step S12 that y = (m × n−1) is not satisfied, y = y + 1 is calculated following step S12 (step S15), and then executed again from step S3. An address is obtained by executing the above steps.
[0036]
Moreover, said (1) Formula and (2) Formula can also be written like the following (3) Formula and (4) Formula.
A = y × mxmod (n × m−1) (3)
This is the case of (y ≠ n × m−1)
A = y (4)
This is the case of (y = n × m−1).
[0037]
Here, the address set number x and the period X are obtained by obtaining x other than 0 that satisfies A = 1 when y = 1 in the equation (3). For example, when m = 5 and n = 4, the period X = 9 as described above. (Y × mx) Is less than (n × m−1), A = (y × mx) Is generated.
[0038]
The above equations (3), (4) and FIG. 5 are generalized for interleaving on a two-dimensional matrix, but can also be applied to BS digital broadcasting interleaving. FIG. 11 shows an interleave memory space in this BS digital broadcasting system. In the BS digital broadcasting system, since interleaving is 8 depths in the frame direction within the same slot, it can be treated as a collection of 48 (slots) of a two-dimensional matrix of 203 (bytes) × 8 (frames). That is, the memory space for one superframe is divided into 48, and 203 × 8 interleaving is performed in each area. However, it should be noted that the slot needs to be moved every 203 bytes.
[0039]
In the interleave circuit according to the embodiment of the present invention, a memory matrix of one superframe is defined as shown in FIG. m (= 203 (bytes)) × n (= 8 (frame)) × S (= 48 (slot)), the address is a 203 × 8 two-dimensional matrix, incremented from address 0 to the m direction, and then n If it is shifted by one step in the direction and incremented again in the m direction, and so on, the final address of one slot is 1623. In the slot direction, an offset is added by n × m = 1624 in the direction from the first slot to the 48th slot.
[0040]
Also in this case, the period X of the address set number x is obtained from x in which A = 1 when y = 1 in the equation (3), and the period X of the address set number x is 180.
[0041]
Next, address data generation in the address generator 5 will be described in detail. FIG. 6 shows an embodiment of the address data generator in the address generator 5, and FIGS. 7 and 8 show flowcharts for its operation.
[0042]
  As shown in FIG. 6, the address data generator in the address generator 5 includes a strobe pulse generator 50, a strobepulseA slot number detecting unit 51 for designating a slot number in cooperation with the generating unit 50, and a modulo calculating unit 52 for performing a modulo operation and sending out address data in cooperation with the strobe pulse generating unit 50 and the slot number detecting unit 51. And. Here, m = 203 (number of bytes of main signal in one slot), n = 8 (depth of interleaving), S = 48 (number of slots in one frame), F = 8 (number of frames constituting one super frame) Where F = n = 8) and X = 180 (cycle of address set count x). Here, the modulo arithmetic unit 52 excluding the adder 70 described later corresponds to the offset value counting means.
[0043]
The strobe pulse generator 50 is supplied with interleave write and read gate pulses output from a timing signal generator (not shown) provided in the address generator 5 and outputs the interleave write and read gate pulses during a high potential period. An m-adic counter 53 that counts clock pulses in response to a clock pulse, an S-adic counter 54 that counts the carry output of the m-adic counter 53, and an F-adic counter 55 that counts the carry output of the S-adic counter 54; An X-ary counter 56 that counts the carry output of the F-adic counter 55, a count value mcnt of the m-ary counter 53, a count value Scnt of the S-adic counter 54, a count value Fcnt of the F-adic counter 55, and the X-adic counter 56 A decoder 57 that receives the count value xcnt and generates a strobe pulse is provided.
[0044]
Since the count value of the S-adic counter 54 is incremented every time the m-ary counter 53 counts the clock pulse from 0 to 203 times, the S-adic counter 54 detects the slot number. The slot number detection unit 51 includes a multiplier 58 that receives the count value of the S-adic counter 54 and multiplies (n × m), and based on the count value of the S-adic counter 54, the slot number start address data 0, 1624, 3248,..., 76328 are generated. Data A0, which will be described later, is added to this output from the slot number detector 51 to obtain address data A.
[0045]
The modulo operation unit 52 receives a setter 59 that initializes the A offset register 60 to a set value 1, a strobe pulse sa, and receives an A offset register 60 and a strobe pulse sb in which the value of the R offset register 61 is entered. R offset register 61 for storing the address data A0, adder 62 for adding the numerical values of the address data A0 and the A offset register 60, the addition output of the adder 62 and the set value (n × m) of the setter 63 And the setting of the setting device 65 from the addition output of the adding device 62 based on the output of the comparing device 64 when (added output of the adding device ≧ setting value of the setting device 63 (n × m)). The value obtained by subtracting the value (n × m−1) is output as the address data A〃, and the ratio is obtained when (addition output of adder 62 ≧ set value of setter 63 (n × m)) is not satisfied The addition output of the adder 62 based on the output of the vessel 64 and a subtracter 66 to output as address data A〃.
[0046]
The modulo arithmetic unit 52 further includes an Amcnt register 67 that receives the strobe pulse sc as address value A〃 output from the subtractor 66, and an address data A〃 output from the subtractor 66 and the Amcnt register 67. A selector 68 for selecting one of the numerical values by a select pulse sp, a latch 69 composed of DF / F for delaying the address data A ′ output from the selector 68 for a period of one clock pulse, and latched address data A0 An adder 70 for adding the output of the multiplier 58 is provided, and the output of the adder 70 is address data A.
[0047]
The strobe pulse sa to the A offset register 60 is output in synchronization with the carry output of the F-adic counter 55. However, when xcnt = X−1, 1 is set, and when xcnt ≠ X−1, the set value Rofset of the R offset register 61 is set. The strobe pulse sb to the R offset register 61 is output when the count value Fcnt of the F base counter 53 is 0, the count value Scnt of the S base counter 52 is 0, and the count value mcnt of the m base counter 53 is n. The
[0048]
The strobe pulse sc to the Amcnt register 67 is output when the count value Scnt of the S-adic counter 52 is 0 and the count value mcnt of the m-ary counter 53 is 0. The select pulse sp to the selector 68 is output when the count value mcnt of the m-ary counter 53 = m−1 and the count value Scnt ≠ S−1 of the S-ary counter 52, and the numerical value of the Amcnt register 67 is set. Selected.
[0049]
The value placed in the A offset register and the address data A0 are added by the adder 62, and the addition result is sent to the comparator 64 and the subtractor 66. The address data A0 is address data on a two-dimensional matrix of 203 × 8, and the count value Scnt of the S-adic counter 54 that counts the number of slots is multiplied by n × m by the multiplier 58 (that is, offset in the slot direction). ) The addition result of the value and the address data A0 becomes the address data A.
[0050]
The comparator 64 outputs a subtraction instruction to the subtractor 66 when the addition output of the adder 62 becomes (n × m (= 1624)) or more, and the subtractor 66 receives the subtraction instruction and receives the subtraction instruction. (N × m−1) set in the setting device 65 is subtracted from the addition output from If the addition output of the adder 62 is not equal to or greater than (n × m (= 1624)), no subtraction is performed, and the addition output of the adder 62 is output from the subtractor 66 as it is.
[0051]
The Amcnt register 67 stores the address data A〃 at the time when the strobe pulse sc is generated. When the selector 68 receives the select signal sp, the value A〃 of the Amcnt register 67 is selected and output. The output from the selector 68 is taken as address data A ′. The address data A ′ is latched by the latch 69, and the latch output is address data A0. Further, the R offset register 61 receives the strobe pulse sa, and the data A0 at that time is entered. Further, the numerical value of the R offset register 61 is output to the A offset register 60, and is stored in the A offset register 60 in response to the strobe pulse sa.
[0052]
The m-adic counter 53, the S-adic counter 54, the F-adic counter 55, the X-adic counter 56, and the latch 69 operate with a common clock pulse. However, the operation is performed when the interleave memory write / read gate pulse is at a low potential. Stop.
[0053]
  Figure7And figure8The operation of the address data generator in the address generator 5 will be described based on the flowchart of FIG.
[0054]
When the interleaving is started, the value Aofset of the A offset register 60 is initialized to 1, and the count value xcnt of the X-ary counter 56, that is, the address set number x is initialized to 0 (step S21). Also, the count value mcnt of the m-ary counter 53, the count value Scnt of the S-ary counter 54, and the count value Fcnt of the counter F54 are initialized to 0, the latch 69 is also initialized, and the address data A0 is also initialized (step). S22).
[0055]
The data A の at this time is placed in the Amcnt register 67, but in this case, 0 is placed (step S23). Further, since the strobe pulse sc becomes high potential when the count value mcnt of the m-ary counter 53 is 0 and the count value Scnt of the S-ary counter 52 is 0, the number in the Amcnt register 67 is incremented by the F-ary counter 55. Will be done every time.
[0056]
The value entered in the Amcnt register 67 output via the selector 68 is latched by the latch 69, and the address data A0 is determined (step S24). The decoder 57 checks whether the count value Fcnt = 0 of the F-adic counter 55, the count value Scnt = 1 of the S-adic counter 54, and the count value mcnt = 0 of the m-ary counter 53, that is, Scnt × 203 + mcnt = 203 ( Step S25).
[0057]
When it is determined in step S25 that the count value Fcnt = 0 of the F-adic counter 55, the count value Scnt = 1 of the S-adic counter 54, and the count value mcnt = 0 of the m-adic counter 53, that is, the address number y = 203 are determined. The pulse sb is output, the address data A0 is entered in the R offset register 61 (step S26), and step S27 is executed. However, since the count value mcnt of the m-ary counter 53 is 0 at this time, steps S25 to S27 are executed.
[0058]
Until the count value mcnt of the m-ary counter 53 reaches the count value mcnt = m−1 (= 202) in step S27, the count value mcn of the m-ary counter 53 is not shown in FIG. Is incremented, and then step S28 is executed. In step S28, the adder 62 adds the address data A0 and the numerical value stored in the A offset register 60 (step S28). When the addition output A ′ ′ of the adder 62 is equal to or greater than (n × m (= 1624)) (step S29), (n × m−1 (= 1623)) is subtracted from the addition output A ′ ′. The process is executed from step S24 (step S30). When the addition output A ′ ′ of the adder 62 is not (n × m (= 1624)) or more, the process is executed from step S24 following step S29.
[0059]
When the above operation is compared with the above general formula of addressing, the value set in the A offset register 60 is equal to n to the power of x (when n raised to the power of (n × m−1), (n Xm-1) is equal to the remainder when the subtraction is repeated), and the x power of y × n is equal to the cumulative addition of x power of n. Also, the (n × m−1) modulo operation is performed when the data A ′ ′ does not exceed twice (n × m−1), and therefore when (n × m−1) is exceeded ( By subtracting n × m−1), the configuration can be simplified. At the final address where the data A ′ ′ is equal to (n × m−1), subtracting (n × m−1) becomes 0, causing a problem.
[0060]
However, since A〃 ′ is equal to (n × m−1) only at the final address, the subtraction condition is subtracted (n × m−1) when (n × m) is exceeded. Then, this can be avoided by changing. This is equivalent to simplifying the condition of A = y when y = n × m−1 in the general formula of addressing.
[0061]
When the count value mcnt of the m-adic counter 53 becomes m−1 (= 202), a conditional branching step based on the count value Scnt of the S-adic counter 54 is executed (step S31). Step S32 is executed until the count value Scnt of the S-adic counter 54 reaches S-1 (= 47), and step S32 and step S24 are repeatedly executed. In step S32, the count value Scnt of the S-adic counter 54 is incremented, the count value mcnt of the m-ary counter 53 is reset, and the numeric value of the Amcnt register 67 is output as the address data A '(step S32). That is, the value of the Amcnt register 67 is selected by the selector 68. This operation is for making the initial value of the address data A of each slot equal within the frame.
[0062]
For example, the address data A0 of each slot starts from 0 in the first frame, and starts from 203 in the second frame. Therefore, in the second frame, it is necessary to load 203 to the address data A0 every time the slot is changed. At this time, the count value Fcnt of the F-adic counter 55 is 0, that is, the first frame, so that 0 that is set in the Amcnt register 67 is loaded every time the slot is incremented. The above operation is repeated until the count value Scnt of the S-adic counter 54 becomes S-1 (= 47).
[0063]
When the count value Scnt of the S-adic counter 54 becomes S-1 (= 47), a conditional branch step based on the count value Fcnt of the F-adic counter 55 is executed (step S35). In step S35, if the count value Fcnt of the F-adic counter 55 is less than F-1, step S36 is executed, the count value Fcnt of the F-adic counter 55 is incremented, and the count value Scnt and m-adic of the S-adic counter 54 are incremented. The count value mcnt of the counter 53 is reset (step S36). Subsequently, A0 is accumulated in the A offset register 60 (step S37). This is because the initial value of the address data A0 when the frame is changed is the next value of the final value data A0 of the previous frame.
[0064]
That is, when the address set number x is 0, the final address data A0 of the first frame is 202, and the value of the A offset register 60 is 1 at the beginning of the second frame, so 202 + 1 = 203. . As a result of step S35, step S38 is executed, and data A ′ ≧ (n × m) is checked. As a result of step S38, step S39 is selectively executed, and then step S23 is executed. When the data A ′ exceeds (n × m), (n × m−1) is subtracted (step S39) as in the case described above. Further, this result is entered in the Amcnt register 67 in step S23 and becomes a value loaded every time the slot is changed.
[0065]
If the count value Fcnt of the F-adic counter 55 becomes F-1 (= 7) in step S35, interleaving for one superframe is completed at this point. If the address set number x has not reached x = X-1 (= 179) by the conditional branch (step S40) based on the count value xcnt of the X-ary counter 56, step S41 is executed, and in step S26. The counted value of the R offset register 61 is stored in the A offset register 60 (step S41). Further, the address set number x is incremented (step S42).
[0066]
This operation will be described with reference to the general addressing formulas (3) and (4).
[0067]
The numerical value of the A offset register 60 is equal to the mth power of x, that is, the address data A in the case of y = 1 ((A = 1 × m to the power of x)) (as described above, m When the value exceeds (n × m−1), it is equal to the remainder when the subtraction is repeated at (n × m−1)). The value Aofset ′ of the A offset register 60 of the next address set is the same. 1 × m raised to the (x + 1) th power = 1 × m raised to the xth power × m, which is equal to the address data A when y = 203
[0068]
In other words, if the address data A of the current y = 203 is stored, this becomes Aofset ′ which is the value of the A offset register 60 of the next address set number x, and the calculation circuit can be omitted. Since the address data A when y = 203 is stored in the R offset register 61 in steps S25 and S26, it is written in the A offset register 60 before proceeding to the next address set. When the count value xcnt of the X-ary counter 56 becomes X-1 (= 179), all are initialized.
[0069]
A part of the address data A generated according to the present embodiment is shown in FIGS. From the relationship of space, the address set number x is up to 18 and the address number y is up to 55.
[0070]
As described above, according to the interleave circuit according to the present embodiment, read (R), write (W), read (R), address data A to the interleave memory generated by the address data generator, Reading is performed prior to writing, such as writing (W),..., And data is written to an address that is vacant as a result of reading data, thereby improving the memory usage efficiency. .
[0071]
【The invention's effect】
According to the interleave circuit of the present invention, interleaving can be performed with an interleave memory having a storage capacity for one superframe, and the number of parts and the circuit scale can be greatly reduced. In particular, when an integrated circuit is formed, the number of gates can be greatly reduced, the chip area can be reduced, and the cost can be reduced.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram showing a configuration of an interleave circuit according to an embodiment of the present invention.
FIG. 2 is a timing diagram of each signal in the interleave circuit according to the embodiment of the present invention.
FIG. 3 is a schematic diagram for explaining the principle of interleaving in the interleaving circuit according to the embodiment of the present invention.
FIG. 4 is a schematic diagram for explaining the principle of interleaving in the interleaving circuit according to the embodiment of the present invention.
FIG. 5 is a flowchart for address generation by an interleave circuit according to an embodiment of the present invention;
FIG. 6 is a block diagram showing a configuration of an address data generator provided in the address generator in the interleave circuit according to the embodiment of the present invention.
FIG. 7 is a flowchart for explaining an address generation operation in the interleave circuit according to the embodiment of the present invention;
FIG. 8 is a flowchart for explaining an address generation operation in the interleave circuit according to the embodiment of the present invention;
FIG. 9 is a schematic diagram showing a part of generated addresses in the interleave circuit according to the embodiment of the present invention;
FIG. 10 is a schematic diagram showing a part of a generated address in the interleave circuit according to the embodiment of the present invention.
FIG. 11 is a schematic diagram for explaining an interleave memory space in BS digital broadcasting.
FIG. 12 is a schematic diagram for explaining an interleave writing operation in BS digital broadcasting;
FIG. 13 is a schematic diagram for explaining an interleave reading operation in BS digital broadcasting.
FIG. 14 is a schematic block diagram showing a configuration of a conventional interleave circuit.
[Explanation of symbols]
5 Address generator
6 Interleaved memory
7 Timer
8 Buffer memory
50 Strobe pulse generator
51 Slot number detector
52 Modulo operation unit
53, 54 m base counter, S base counter
55, 56 F base counter, X base counter
57 Decoder
58 multiplier
59, 63, 65 Setting device
60, 61 A offset register, R offset register
62, 70 Adder
64 comparator
66 Subtractor
67 Amcnt register
68 selector
69 Latch

Claims (1)

BSデジタル放送におけるインターリーブ回路であって、インターリーブメモリと、該インターリーブメモリからデータを読み出すアドレス指定をし、データが読み出されたアドレスに、順次入力されてくるデータを格納するべくアドレス指定をし、かつ該格納されたデータをインターリーブして読み出すアドレス指定をするアドレス発生手段とを備え
アドレス発生手段は、SをBSデジタル放送における1フレームを構成するスロット数とし、mをBSデジタル放送における1スロットを構成する主信号数とし、nをBSデジタル放送の1スーパーフレームを構成するフレーム数であるインターリーブの深さとしたとき、
入力される主信号の数を計数するm進カウンタと、
m進カウンタのキャリを計数するS進カウンタと、
S進カウンタの計数値に(n×m)を乗算する乗算器と、
計数主信号値が(m―1)に達したときインターリーブの深さをインクリメントしてスロット方向に主信号を計数し、同様に順次繰り返して計数値が(n×m)に達するまで計数するオフセット値計数手段と、
乗算器の出力とオフセット値計数手段の計数値とを加算する加算手段と、
を備え、加算手段の出力をアドレスデータAとすることを特徴とするインターリーブ回路。
An interleave circuit in BS digital broadcasting, which specifies an interleave memory, an address for reading data from the interleave memory, and an address for storing sequentially inputted data at the address from which the data is read, And address generating means for performing address designation for reading the stored data by interleaving ,
The address generating means sets S as the number of slots constituting one frame in BS digital broadcasting, m as the number of main signals constituting one slot in BS digital broadcasting, and n as the number of frames constituting one super frame of BS digital broadcasting. When the depth of interleaving is
An m-ary counter that counts the number of input main signals;
an S-adic counter that counts the carry of the m-adic counter;
A multiplier for multiplying the count value of the S-adic counter by (n × m);
When the count main signal value reaches (m-1), the interleaving depth is incremented and the main signal is counted in the slot direction. Similarly, the count is repeated until the count value reaches (n × m). Value counting means;
Adding means for adding the output of the multiplier and the count value of the offset value counting means;
And an interleave circuit characterized in that the output of the adding means is address data A.
JP7143399A 1999-03-17 1999-03-17 Interleave circuit Expired - Fee Related JP3673989B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7143399A JP3673989B2 (en) 1999-03-17 1999-03-17 Interleave circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7143399A JP3673989B2 (en) 1999-03-17 1999-03-17 Interleave circuit

Publications (2)

Publication Number Publication Date
JP2000269829A JP2000269829A (en) 2000-09-29
JP3673989B2 true JP3673989B2 (en) 2005-07-20

Family

ID=13460406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7143399A Expired - Fee Related JP3673989B2 (en) 1999-03-17 1999-03-17 Interleave circuit

Country Status (1)

Country Link
JP (1) JP3673989B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100699491B1 (en) 2005-07-19 2007-03-26 삼성전자주식회사 Interleaving Method and System therof
JP5434304B2 (en) * 2009-06-30 2014-03-05 ソニー株式会社 Data processing apparatus, data processing method, and program

Also Published As

Publication number Publication date
JP2000269829A (en) 2000-09-29

Similar Documents

Publication Publication Date Title
RU2189629C2 (en) Data end-around shift interleaving and re- interleaving device
KR970005412B1 (en) First-in first-out memory device
KR100196599B1 (en) Device for buffering data for the duration of cyclically recurrent buffer periods
US5293596A (en) Multidimensional address generator and a system for controlling the generator
JP3359291B2 (en) Deinterleave circuit
KR20000063041A (en) Memory control circuit
JP2001245218A (en) Timing signal generator
JP3673989B2 (en) Interleave circuit
WO2001005040A1 (en) Address generating device for use in multi-stage channel interleaver/deinterleaver
US7999868B2 (en) Configurable timing generator
JP4042841B2 (en) Matrix arithmetic processing unit
JP2004282745A (en) Deinterleaving unit for digital communication system and its deinterleaving method
JP2004040317A (en) Timing signal generating apparatus, system, and imaging apparatus
JP2000278617A (en) Timing pulse generator
KR960003397A (en) Address generator for image motion compensation
JP4424174B2 (en) Imaging apparatus and imaging method
JPH04218847A (en) Multidimensional address generator and its control system
JP4278317B2 (en) Arithmetic device and receiving device
JP3626070B2 (en) Product code encoding apparatus and decoding apparatus
JP5146188B2 (en) Music signal generator
KR19990033240A (en) Channel encoder design method for digital communication
KR0133508B1 (en) Interleaving and channel dividing circuit for digital data i/o
JPH06324935A (en) Address generator and address generation system
JPH0516740Y2 (en)
KR100293712B1 (en) Address Generator Used for Digital Filtering

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040817

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20040820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041014

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: 20050329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050415

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080513

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130513

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees