IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヒロテック株式会社の特許一覧

特開2024-58380ISDB-T変調器およびその時間インターリーブ処理方法
<>
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図1
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図2
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図3
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図4
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図5
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図6
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図7
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図8
  • 特開-ISDB-T変調器およびその時間インターリーブ処理方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024058380
(43)【公開日】2024-04-25
(54)【発明の名称】ISDB-T変調器およびその時間インターリーブ処理方法
(51)【国際特許分類】
   H04J 3/04 20060101AFI20240418BHJP
【FI】
H04J3/04
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022165701
(22)【出願日】2022-10-14
(71)【出願人】
【識別番号】502340756
【氏名又は名称】ヒロテック株式会社
(74)【代理人】
【識別番号】100098350
【弁理士】
【氏名又は名称】山野 睦彦
(72)【発明者】
【氏名】栗須 基弘
(72)【発明者】
【氏名】栗須 顕人
【テーマコード(参考)】
5K028
【Fターム(参考)】
5K028AA06
5K028EE03
5K028JJ05
5K028KK02
5K028RR02
(57)【要約】
【課題】比較的簡単な構成でメモリ制御を簡略化するとともに時間インターリーブ処理を高速に行う。
【解決手段】ISDB-T変調器は、入力データに対してキャリア変調を行うキャリア変調部15と、時間インターリーブのためのメモリ19と、メモリ制御部18と、メモリ19から読み出されたキャリアデータに周波数インターリーブ処理およびOFDMフレーム構成処理理およびIFFT処理を施しISDB-Tの信号として出力する処理部21,22,23を備える。メモリ制御部18は、キャリア変調部15で変調された、シンボルごとの複数本のキャリアデータを当該キャリアの時間インターリーブの遅延数だけシンボル軸方向にシフトして書き込む非連続書き込み処理部18bと、1シンボルのキャリアデータの書き込み終了後に当該シンボル位置の複数本のキャリアデータをキャリア軸方向にキャリア番号順に連続して読み出す連続読み出し処理部18dを有する。
【選択図】図1
【特許請求の範囲】
【請求項1】
入力データに対してキャリア変調を行うキャリア変調部と、
時間インターリーブのためのメモリと、
前記メモリへのデータの書き込みおよび読み出しを制御するメモリ制御部と、
前記メモリから読み出されたキャリアデータに周波数インターリーブ処理およびOFDMフレーム構成処理およびIFFT処理を施しISDB-Tの信号として出力する処理部とを備え、
前記メモリ制御部は、
前記キャリア変調部で変調された、シンボルごとの複数本のキャリアデータを当該キャリアの時間インターリーブの遅延数だけシンボル軸方向にシフトして前記メモリに書き込む非連続書き込み処理部と、1シンボルのキャリアデータの書き込み終了後に当該シンボル位置の複数本のキャリアデータをキャリア軸方向にキャリア番号順に連続して前記メモリから読み出す連続読み出し処理部とを有する
ISDB-T変調器。
【請求項2】
前記キャリア変調部により変調されたキャリアデータを保存する受信キャリアバッファと、
前記メモリから読み出されたキャリアデータを保存する送信キャリアバッファとを備え、
前記メモリ制御部は、前記受信キャリアバッファから読み出したキャリアデータを前記メモリに書き込むとともに、前記メモリから読み出したキャリアデータを前記送信キャリアバッファに書き込む
請求項1に記載のISDB-T変調器。
【請求項3】
前記受信キャリアバッファと前記送信キャリアバッファは各々、少なくとも1シンボルに対応する本数のキャリアデータを保存する請求項2に記載のISDB-T変調器。
【請求項4】
前記メモリの上位アドレスにシンボル軸対応のコラムアドレスが割り当てられ、下位アドレスにキャリア軸対応のロウアドレスが割り当てられる請求項1に記載のISDB-T変調器。
【請求項5】
前記コラムアドレスは8ビット、前記ロウアドレスは13ビットである請求項4に記載のISDB-T変調器。
【請求項6】
前記メモリはSDRAM(Synchronous DRAM)である請求項1、4または5に記載のISDB-T変調器。
【請求項7】
前記メモリを除くISDB-T変調器は集積回路として構成される請求項1に記載のISDB-T変調器。
【請求項8】
ISDB-T変調器の時間インターリーブ処理方法であって、
下位アドレスにシンボル軸対応のコラムアドレスが割り当てられ、上位アドレスにキャリア軸対応のロウアドレスが割り当てられたメモリに対して、
キャリア変調された、シンボルごとの複数本のキャリアデータを当該シンボルの時間インターリーブの遅延数だけシンボル軸方向にオフセットして書き込み、1シンボルのキャリアデータの書き込み終了後、当該シンボル位置の複数本のキャリアデータをキャリア軸方向に連続して読み出す
ISDB-T変調器の時間インターリーブ処理方法。
【請求項9】
前記メモリはSDRAM(Synchronous DRAM)である請求項8に記載のISDB-T変調器の時間インターリーブ処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ISDB-T変調器およびその時間インターリーブ処理方法に関する。
【背景技術】
【0002】
近年、地上デジタル放送用統合デジタル放送サービス(ISDB-T)のためのISDB-T方式の変調器ICが市場に投入されている。
【0003】
この変調器ICは、USBインタフェース等の入出力インタフェースを介して、複数のTS、すなわち、ビデオ・オーディオデータおよびSI情報(PATやPMTなど)を一時的なメモリ(バッファ)に蓄え、各々に再生レートを付加して時間的なTSストリームとして再生し最終的に多重化して一つのストリームにしたのち、ISDB-T変調を施し、DAC(デジタルアナログ変換器)を用いてIQ信号を生成する。その際、時間インターリーブに対応するために1Mバイト程度のSRAM(Static Random Access Memory)を用いるのが一般的であった。しかし、SRAMは単位容量当たりのコストが高いという問題があった。
【0004】
これに対して、比較的低コストのSDRAM(Synchronous DRAM)、例えばDDR3(Double Data Rate 3)等を使用することも考えられる(例えば、特許文献1参照)。
【0005】
特許文献2にも時間インターリーブ用外部メモリを用いて時間インターリーブを行う方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008-244807号公報
【特許文献2】特開2003-60610号公報
【非特許文献】
【0007】
【非特許文献1】社団法人電波産業会「地上デジタルテレビジョン方式の伝送方式」の標準規格ARIB STD-B31 2.0版
【発明の概要】
【発明が解決しようとする課題】
【0008】
日本方式の場合、変調キャリアに対して非常に長い時間インターリーブを用いることにより、米国やヨーロッパ方式に比べて高い信号品質を維持している。すなわち、耐ノイズ特性を格段に改善している。しかし、この機能を実現するには、大容量の遅延メモリが必要になる。例えば1CH変調あたり最低474キロバイトが必要であり、多チャンネルになるとその倍数でメモリが必要となるため、なおさらである。
【0009】
「地上デジタルテレビジョン方式の伝送方式」の標準規格はARIB STD-B31(非特許文献1)にまとめられている。変調器ICはこの規格に準拠するとメモリ付のICとなるが、上記のとおり、そのメモリは大容量のものとなる。そのため、外部メモリとしては、単位容量当たりの価格が高いSRAM(Static Random Access Memory)よりはDRAMを用いることが好ましく、アクセス速度の点では特にDDR SDRAM(Synchronous DRAM)を用いることが好ましい。
【0010】
しかし、外部メモリとしてSDRAMを用いた特許文献1の時間インターリーブ回路においては、その先行技術として、データのメモリ(S D R A M) への書き込み動作では、下位アドレスをキャリア番号、上位アドレスをシンボル番号とし、キャリア番号順にメモリにデータを書き込んで行き、1シンボル分のデータが書き終わったら、次のシンボルのメモリ領域にデータを書き込む。この書き込み動作では、8ワード(キャリア分)まとめて、即ちバースト長を8ワードとして一括して書き込み、読み出し動作に移る。次に、メモリからのデータを読み出す場合は、下位アドレスをキャリア番号とし、上位アドレスを演算式〔(書き込んだシンボル番号)-(遅延シンボル数)〕により読み出す。読み出し動作では、1回のアクセスで8ワードを出力し、そのうち1ワードのみが求めるキャリアデータなので、残り7ワードは捨てる。メモリから8ワード(=8キャリア分でアクセス8回)を読み出したら、次の書き込み動作に移る。メモリには、以上の繰り返して書き込みと読み出しの動作を実行することが記載されている。
【0011】
この先行技術では伝送システムとしてのSDRAMへのアクセスが間に合わないという問題点が指摘されたうえで、所定変調方式で変調されたキャリア信号を遅延シンボル数が等しいキャリア番号の信号を一つのセットとし、そのセット毎にそのセットの中で番号が小さいキャリア番号の順序に出力する書込順序変更手段と、該書込順序変更手段の出力をメモリ素子に書き込み、かつ前記メモリ素子から前記所定シンボル数だけ遅延して読み出しを制御するメモリ制御手段と、前記メモリ制御手段の出力を前記キャリア番号順に並べ変えて出力する出力順序変更手段とを備えた時間インターリーブ回路が提案されている。
【0012】
しかしながら、この構成では、所定シンボル数だけ遅延して読み出しを制御するメモリ制御手段に加えて、メモリ制御手段の前段に書き込み順序変更手段を設けるとともに、メモリ制御手段の後段に出力順序変更手段を設ける必要があり、複雑な回路構成および動作となっている。
【0013】
特許文献2に記載の構成では、時間インターリーブ用外部メモリのメモリ規模を最小限にするために、メモリの複雑な書き込み制御および読み出し制御を行っている。
【0014】
本発明はこのような背景においてなされたものであり、本発明では比較的安価なメモリを用いることによりメモリ規模は犠牲にしても、比較的簡単な構成でメモリ制御を簡略化するとともに時間インターリーブ処理を高速に行えるようにするものである。
【課題を解決するための手段】
【0015】
本発明によるISDB-T変調器は、入力データに対してキャリア変調を行うキャリア変調部と、時間インターリーブのためのメモリと、前記メモリへのデータの書き込みおよび読み出しを制御するメモリ制御部と、前記メモリから読み出されたキャリアデータに周波数インターリーブ処理およびOFDMフレーム構成処理理およびIFFT処理を施しISDB-Tの信号として出力する処理部とを備え、前記メモリ制御部は、前記キャリア変調部で変調された、シンボルごとの複数本のキャリアデータを当該キャリアの時間インターリーブの遅延数だけシンボル軸方向にシフトして前記メモリに書き込む非連続書き込み処理部と、1シンボルのキャリアデータの書き込み終了後に当該シンボル位置の複数本のキャリアデータをキャリア軸方向にキャリア番号順に連続して前記メモリから読み出す連続読み出し処理部とを有する。
【0016】
この構成では、時間インターリーブ処理に用いるメモリの制御において、キャリアデータの書き込み時に書き込み位置をオフセットしながら非連続書き込みを行うとともに、読み出し時に連続読み出しを行うことにより、総体的にメモリアクセスの高速化を図ることができる。
【0017】
本発明の一態様において、前記キャリア変調部により変調されたキャリアデータを保存する受信キャリアバッファと、前記メモリから読み出されたキャリアデータを保存する送信キャリアバッファとを備え、前記メモリ制御部は、前記受信キャリアバッファから読み出したキャリアデータを前記メモリに書き込むとともに、前記メモリから読み出したキャリアデータを前記送信キャリアバッファに書き込む。
【0018】
この態様において、好ましくは、前記受信キャリアバッファと前記送信キャリアバッファは各々、少なくとも1シンボルに対応する本数のキャリアデータを保存する。
【0019】
本発明の他の態様において、前記メモリの上位アドレスにシンボル軸対応のコラムアドレスが割り当てられ、下位アドレスにキャリア軸対応のロウアドレスが割り当てられる。
【0020】
この態様において、例えば、前記コラムアドレスは8ビット、前記ロウアドレスは13ビットである。
【0021】
前記メモリは例えばSDRAM(Synchronous DRAM)である。
【0022】
本発明の他の態様として、前記メモリを除くISDB-T変調器は集積回路として構成してもよい。
【0023】
本発明によるISDB-T変調器の時間インターリーブ処理方法は、下位アドレスにシンボル軸対応のコラムアドレスが割り当てられ、上位アドレスにキャリア軸対応のロウアドレスが割り当てられたメモリに対して、キャリア変調された、シンボルごとの複数本のキャリアデータを当該シンボルの時間インターリーブの遅延数だけシンボル軸方向にオフセットして書き込み、1シンボルのキャリアデータの書き込み終了後、当該シンボル位置の複数本のキャリアデータをキャリア軸方向に連続して読み出すものである。
【発明の効果】
【0024】
本発明のISDB-T変調器およびその時間インターリーブ処理方法によれば、比較的簡単な構成および動作で時間インターリーブを行うことができる。
【図面の簡単な説明】
【0025】
図1】本発明の実施形態によるISDB-T変調器の構成例を表したブロック図である。
図2】本発明の実施形態における受信キャリアバッファおよび送信キャリアバッファの必要なサイズのメモリ空間を模式的に示すフォーマット図である。
図3】本発明の実施形態のISDB-T変調器の応用例2例を示すブロック図である。
図4】規格上での時間インターリーブ処理の説明図である。
図5】遅延数10の場合の書き込みと読み出しの遷移状態を示した図である。
図6】本発明の実施形態による時間インターリーブ処理の説明図である。
図7】本発明の実施形態におけるメモリの2次元の行列構造を説明するための図である。
図8】本発明の実施形態におけるメモリ制御部による時間インターリーブ処理のための制御フローを模式的に示したフローチャートである。
図9】本発明の実施形態における時間インターリーブの遅延数を表したテーブルの一例を示す図である。
【発明を実施するための形態】
【0026】
以下、本発明の実施の形態について詳細に説明する。
【0027】
図1は、本実施形態によるISDB-T変調器の構成例を表したブロック図である。このISDB-T変調器は、入出力処理部(IO処理部)11、TSバッファ12a,12b、多重化部(MUX)13a,13b、ISDB-T再多重化部14、時間インターリーブの前処理部15、受信キャリアバッファ16、送信キャリアバッファ17、メモリ制御部18、メモリ(外部メモリ)19、周波数インターリーブ処理部21、OFDMフレーム構成部22、IFFT部(+GI付加部)23、およびDAC部24を備えている。
【0028】
メモリ制御部18は、メモリ19への書き込みアドレスを生成する書き込みアドレス生成部18a、この書き込みアドレスに基いてメモリ19への書き込みを非連続に行う非連続書き込み処理部18b、読み出しアドレスを生成する読み出しアドレス生成部18c、この読み出しアドレスに基いてメモリ19の連続読み出しを行う連続読み出し処理部18dを有する。より具体的には、非連続書き込み処理部18bは、キャリア変調部15で変調された、シンボルごとの複数本のキャリアデータを当該キャリアの時間インターリーブの遅延数だけシンボル軸方向にシフトしてメモリ19に書き込む。連続読み出し処理部18dは、連続書き込み処理部18bによる1シンボルのキャリアデータの書き込み終了後に当該シンボル位置の複数本のキャリアデータをキャリア軸方向にキャリア番号順に連続してメモリ19から読み出す。
【0029】
図1においてメモリ19を除いた部分30は、単一のICチップへの適用が可能なISDB-T変調装置である。
【0030】
この構成は、基本的には従来の構成とほぼ同じであり、周知の構成要素についての詳細な説明は省略する。
【0031】
TS0バッファ12a,12bは例えばマルチファンクションTSバッファであり、全体を一つのバッファにして用いることもできるし、分割して複数TSを生成することにも利用できる。複数TSを生成する場合は、多重化部(MUX)13a,13bで多重化する。
【0032】
多重化されたTSは時分割形式でISDB-T再多重化部14にて再多重化された後、放送TSとなる。すなわち、前処理部15にて、IIPパケット(ISDB-T Information Packet)の挿入と188バイト後に16バイトのリードソロモンコード(外符号)の追加がなされる。さらに階層分割、エネルギー拡散、遅延補正、バイトインターリーブ、畳み込み符号化、キャリア変調(ビットインターリーブおよびマッピング)、階層合成が行われる。
【0033】
キャリア変調後のマッピングされたデータは1CHの場合1バイトになる。2CHの場合2バイト、4CHの場合4バイトになる。
【0034】
そのキャリアデータを1シンボル期間4992ワード単位でまとめ、受信キャリアバッファ16に格納した後、メモリ制御部18が書き込み動作を開始する。また、所定の遅延後に読み出し動作が並行して行われる。
【0035】
本実施形態は従来構成と異なる点は、メモリ制御部18の制御の態様にある。
【0036】
ISDB-T変調器が生成したキャリアデータは受信キャリアバッファ16に一時的に蓄積され、1シンボル分たまるとメモリ19に対するメモリ制御部18の書き込み動作が開始される。
【0037】
メモリ制御部18は、書き込み動作後にメモリ19の読み出し動作を開始し、メモリ19から読み出されたデータは送信キャリアバッファ17へ転送される。すなわち、時間インターリーブ処理後のキャリアデータは複数シンボルの遅延の後、送信キャリアバッファ17へ格納される。その際、読みだされたキャリアデータには当該読み出しシンボル番号の情報も付加されている。そのシンボル番号は後続のOFDMフレーム同期に必要となるものである。送信キャリアバッファ17のデータは周波数インターリーブとOFDMフレーム構成処理理およびIFFT処理が施され、最終的にISDB-Tの信号として出力される。
【0038】
図2は、本実施形態における受信キャリアバッファ16および送信キャリアバッファ17の必要なサイズのメモリ空間を模式的に示すフォーマット図である。図2内の左側に1CH時、右側に2CH時のサイズのメモリ空間を示している。必要なサイズは、1CH時には約5Kバイト、2CH時には約10Kバイトである。1CH時には、シンボル番号(SYMBOL_NUM[7:0])のエリアが用意され、2CH時にはシンボル番号(SYMBOL_NUM[7:0])のエリアが用意される。迅速な書き込みおよび読み出しのために、同サイズのメモリエリアを複数面設けてもよい。例えば、32Kバイトのメモリエリアを用意すれば、2CHの場合に3面構成とすることができる。
【0039】
図3に、本実施形態のISDB-T変調器の応用例を2例示す。図3(a)はIP-RF変換装置への応用例のブロック図であり、図3(b)はブラウザISDB-T変換装置(ブラウザ-RF変換装置)への応用例のブロック図である。
【0040】
図3(a)に示したIP-RF変換装置のホスト装置31はいわゆるSOM(SystemOnModule)であり、CPU、メインメモリ(例えばDRR3)、フラッシュROM等の不揮発性メモリ、ネットワークに接続される通信部、入出力処理部、等により構成され、入力としてIPストリーム、より具体的にはRTP(UDP+FEC)入力を受け、入出力処理部を介して後続のISDB-T変調器30へTSストリームを出力する。ISDB-T変調器30から出力されるI+Qアナログ信号はRFアップコンバータ33でRF信号に変換されて出力される。
【0041】
なお、ホスト装置31から出力されるTSには時間情報がないので、ISDB-T変調器30にアクセレレータ(図示せず)を付加し、これによりレート生成を行う。すなわち、ISDB-T変調器30にTS入力されるときに、RTPのタイムスタンプから再生レートを計算し、それをアクセレレータに設定することで時間を再生する。
【0042】
図3(b)に示したブラウザISDB-T変換装置のホスト装置32は基本的には図3(a)に示したホスト装置31と同様に、CPU、メインメモリ(例えばDRR3)、フラッシュROM等の不揮発性メモリ、ネットワークに接続される通信部、入出力処理部、等により構成されるが、HTMLブラウザおよびMPEG2エンコード機能を有し、CPUの能力がより高いものを要する。ホスト装置32はその入力としてHTMLコンテンツ(HLSなどで記述したもの)を受けて、これをデコード(MP4/H264)して、最終的にMPEG2に変換(トランスコード)し、TSとしてISDB-T変調器へ出力する。ISDB-T変調器30から出力されるI+Qアナログ信号はRFアップコンバータ33でRF信号に変換されて出力される。
【0043】
ここで、本実施形態の時間インターリーブ処理を説明する前に、規格上での時間インターリーブ処理について図4を参照しながら簡単に説明する。
【0044】
図4内の左側はインターリーブ処理前のキャリアデータの、時間インターリーブメモリへの書き込みをイメージし、右側は処理後のキャリアデータの読み出しをイメージしたものである。縦軸はキャリア番号で1シンボル期間に4992本のキャリアデータが発生する。各キャリアのごとの箱の中に示した番号は遅延数である。ここでの遅延とは、図の左側の書き込みが発生しても、右側での読み出しにおいては遅延分のキャリアデータを書き込んだ後でないと読み出せないことを意味する。各キャリアごとに遅延数が違うので、時間インターリーブ全体を規格の仕様書どおりに処理すると時間がかかることになる。
【0045】
図5は遅延数10の場合の書き込みと読み出しの遷移状態を示したものである。書き込みにおける遅延数が満たされるまで(状態0から状態8まで)はキャリアデータの読み出し出力ができない。初期状態0から状態8までは書き込みのみが行われ、読み出しは抑止されている。状態9で遅延数が満たされる。実際には書きこみポインターと読み出しポインターで書き込み位置と読み出し位置が管理される。書きこみポインターは初期値"0"、読み出しポインターも初期値"0"(相対アドレス)で、書きこみポインターが"9"をこえて、"10"になったとき、出力開始となる。このとき出力されるのは読み出しポインター"0"の位置である。この出力後、読み出しポインターはインクリメント(+1)され、次に書きこみが発生すると読み出しポインター"1"のデータを出力し、再度読み出しポインターをインクリメントする。ポインターは"9"までいくと、"0"に戻る。このように、状態9で遅延数が満たされたあとはシフトレジスタのような機構となる。読み出しポインターの位置の最終位置は常に把握しておく必要がある。このような処理をそのまま具現化しようとすると制御がかなり複雑になる。
【0046】
次に、本実施形態における、メモリ制御部18(図1)による時間インターリーブ処理の具体例について説明する。
【0047】
図6は本実施形態による時間インターリーブ処理の説明図である。
【0048】
この図は、横軸に0から203までの計204個のシンボルを設定し、縦軸に0から4991までの計4992本のキャリアを設定した2次元の配列(行列)を想定している。ここでは行列の横軸はcolumn、縦軸はrowで管理している。各シンボルごとの4992本のキャリアのデータはキャリア番号0から順次キャリア番号4991まで順に書き込みが行われる。その際、後述するように、キャリアごとの遅延数に応じてシンボル軸方向に書き込み位置がオフセットされる。この書き込み終了後にシンボル番号がインクリメント(+1)される。キャリアデータを保存するメモリとしては1CHの場合は1ワードあたり1バイト、2CHの場合は2バイト、4CHの場合は4バイト単位のものを用意する。このような時間インターリーブ処理に用いられるメモリ領域はメモリ19(図1)に確保される。
【0049】
図6の縦軸の右端にはキャリア番号で0から4991までの各キャリアに対して順に遅延数が定義されている。枠内の数字がキャリアごとの遅延数を示している。遅延数が0であれば、キャリアデータを書き込んだのち、直ちに読み出せるが、遅延数が非0値であれば、その分の遅延後に読み出せることになる。縦軸に沿ったキャリア番号iに基いて場所により遅延数が異なる。遅延数は規格に基づき次式で計算できる。Iはインターリーブの長さに関わるパラメータ(この例では2)である。
i=0 >> I x m0 = 2 x ((ix 5) mod 96) = 0
i=1 >> I x m1 = 2 x ((ix 5) mod 96) = 10
i=2 >> I x m2 = 2 x ((i x 5) mod 96) = 20
・・・
【0050】
図6の行列領域内の黒印は本実施形態におけるキャリアごとのキャリアデータの書き込み位置を示している。すなわち、この図は、シンボル番号0の4992本のキャリアデータが、キャリアごとの遅延数を横軸オフセットにして書き込み位置が変更(図の左側へシフト)されていく様子を示している。4992本分のキャリアデータすべてを書き込むと、1シンボル期間の書き込みが完了する。このようにして書き込まれたキャリアデータは、書き込み完了後、読み出し対象のシンボル番号に対応する縦軸方向に連続した位置から、すなわち縦軸のキャリア位置0から始めて、4991まで連続的に読み出される。この読み出されるキャリアデータは、書き込み時に遅延数に応じてシンボル軸方向にシフトされているので、読み出し時には時間インターリーブ処理が反映されたものとなっている。
【0051】
読み出し時には、シンボルごとの読み出し処理ごとにシンボル番号をインクリメント(+1)して横軸方向に移動し、同じ処理を繰り返す。最終的にシンボル番号が203まで到達すると0に戻る。そのために、オフセットとシンボル番号の加算値が204以上になった場合、演算結果から204を減じて右側に戻す。
【0052】
このように、書き込み時に位置を移動して書き込みを行うとともに、読み出し時に連続読み出しを行う手法を用いると、時間インターリーブ処理を高速化できる。すなわち、個々の遅延に対する位置の記録、出力タイミングなどを考慮することなく、一律に処理が可能となる。
【0053】
より具体的には、1シンボルあたりの書き込むための4992キャリアデータは1ms程度で準備され、読み出しも1ms程度の周期ではあるが、高速で読み出される。1シンボルの書き込みが終了すると、時間インターリーブ処理されたデータは直ちに読み出される。ただし、遅延数の最大が190シンボルなので、時間インターリーブ効果が表れるには、その程度の時間がかかる。
【0054】
図7により、本実施形態におけるメモリ19の2次元の行列構造を説明する。
【0055】
メモリ19はこの例ではDDR3 SDRAMであり、その上位アドレス[7:0]にシンボル軸対応のコラムアドレスが割り当てられ、下位アドレス[12:0]にキャリア軸対応のロウアドレスが割り当てられる。コラムアドレスは8ビット、ロウアドレスは13ビットの少なくとも計21ビットである。キャリア軸のロウアドレスに下位アドレスを割り当てることにより、個々のシンボル位置においてキャリア番号のインクリメントにしたがってメモリ19の連続したアドレスからキャリアデータの読み出しが行われることになる。
【0056】
一般に、SRAMの場合、シングル書き込みとシングル読み出しが高速で実現できる。他方、コストの観点から使用するSDRAMでは、シングル書き込みは比較的早い反面、シングル読み出しはきわめて低速であり、また、連続したアドレスからの連続読み出しはシングル読み出しに比べて高速であることが知られている。例えば、SDRAMにおいて、Nバイトのメモリアクセス(書き込みまたは読み出し)を行う場合、アクセス時間が短い順に、(1)単一アクセスの書き込み、(2)連続アクセスの書き込み、(3)連続アクセスの読み出し、(4)単一アクセスの読み出し、となる。すなわち、単一アクセスの読み出しを繰り返すのが最も遅くなる。その理由は、単一アクセスのたびにいわゆるレイテンシーが加算されるからである。
【0057】
そこで、本実施形態は、書き込み時に不連続の単一アクセスを行うとともに、読み出し時に連続アクセスを行えるようにすることにより、時間インターリーブ処理における総合的なメモリのアクセス時間を短縮できるようにしたものである。
【0058】
図8は、メモリ制御部18による時間インターリーブ処理のための制御フローを模式的にフローチャートで示したものである。
【0059】
このメモリ制御部18による時間インターリーブ処理は非連続書き込み処理部18bの動作と連続読み出し処理部18dの動作を包含する。
【0060】
非連続書き込み処理部18bは、まず、シンボル番号に相当する変数wr_symbol_regを0にリセットするとともに(S11)、書き込みロウアドレスwr_row_addrを0にリセットする(S12)。その後、当該シンボルの複数本のキャリアデータを取り込む(S13)。ついで、このキャリアデータを書き込むメモリの書き込みアドレスを生成する(S14)。具体的には、wr_column_addr=wr_symbol_reg + table[wr_row_addr MOD 96]を計算し、この書き込みコラムアドレスと当該wr_row_addrで特定されるメモリ位置にキャリアデータを格納する。ここに、tableは予めキャリアごとの遅延数を設定したデータテーブルである。このテーブルは96個の値(オフセット値)を有し、0から4991までのwr_row_addrは [wr_row_addr MOD 96]で96内の値に変換される。
【0061】
ついで、生成された書き込みアドレスにキャリアデータを書き込む(S15)。具体的には、書き込みロウアドレスwr_row_addrのキャリアデータを、書き込みコラムアドレスwr_column_addrおよび書き込みロウアドレスwr_row_addrのメモリ位置に書き込む。すなわち、
mem[wr_column_addr][wr_row_addr] = carrier_data[wr_row_addr]とされる。
【0062】
その後、書き込みロウアドレスwr_row_addrをインクリメント(+1)し(S16)、その値が4992に達したか否かをチェックする(S17)。4992未満であれば、ステップS13に戻って、次のキャリアデータの取り込みおよび書き込みを行う。
【0063】
書き込みロウアドレスwr_row_addrが4992に達したら、連続読み出し処理部を起動することにより当該シンボル位置のキャリアデータの読み出し処理を行わせる(S18)。その後、変数wr_symbol_regをインクリメント(+1)し(S19)、その値が204に達したか否かをチェックする(S20)。204未満であればステップS12へ戻り、書き込みロウアドレスを0にリセットして後続の処理を行う。
【0064】
変数wr_symbol_regが204に達したら、ステップS11へ戻り、変数wr_symbol_regを0にリセットして、以降の処理を行う。
【0065】
連続読み出し処理部18dは、非連続書き込み処理部18bから起動されたとき、変数wr_symbol_regの値をrd_symbol_regに代入する(S31)。ついで、読み出しアドレスを生成する(S32)。具体的には、読み出しコラムアドレスrd_column_addrに変数rd_symbol_regの値をセットするとともに(rd_column_addr=rd_symbol_reg)、読み出しロウアドレスrd_row_addrを0にリセットする。
【0066】
ついで、キャリアデータの読み出しを行う(S33)。具体的には、現在の読み出しコラムアドレスと読み出しロウアドレスのメモリ値を、現在の読み出しロウアドレスのキャリアデータとする。すなわち、
(carrier_data[rd_row_addr] =mem[rd_column_addr][rd_row_addr])
とする。
【0067】
その後、読み出しロウアドレスrd_row_addrをインクリメント(+1)し(S34)、その値が4992に達したかをチェックする(S35)。4992未満であれば、ステップS33へ戻り、次の読み出しロウアドレスのキャリアデータを読み出す。読み出しロウアドレスrd_row_addrの値が4992に達するまで、ステップS33,S34の動作を反復する。
【0068】
読み出しロウアドレスrd_row_addrの値が4992に達したら、この読み出し処理を終了する。
【0069】
図9に、時間インターリーブの遅延数を表したテーブルの一例を示す。ここでは図示の都合上、一部省略して1セグメント分を示す。この図中、Iはインターリーブの長さに関わるパラメータ(この例では2)、iはキャリア番号、SBはシンボルの遅延数を表す。i=0、SB=0から始まり、i=95でSB=182となる。次のi=96でSB=0に戻る。1セグメント内でこれを4回繰り返して、最後はi=383、SB=182まで進む。384キャリアで1セグメントであり、13セグメントで384x13=4992キャリアとなる。
【0070】
上記図8の制御の中で参照される時間インターリーブテーブル(table [96])のデータ列は本実施形態においては次のとおりである。
table [96] = {
0,10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,
8,18,28,38,48,58,68,78,88,98,108,118,128,138,148,158,168,178,188,
6,16,26,36,46,56,66,76,86,96,106,116,126,136,146,156,166,176,186,
4,14,24,34,44,54,64,74,84,94,104,114,124,134,144,154,164,174,184,
2,12,22,32,42,52,62,72,82,92,102,112,122,132,142,152,162,172,182 }
【0071】
以上、本発明の好適な実施形態について説明したが、上述した以外にも特許請求の範囲内で種々の変形、変更を行うことが可能である。例えば、本発明は変調器ICへの適用が好ましいものとして説明したが、必ずしも変調器ICへの適用を前提とするものではない。また、使用する部品、要素、個数、サイズ、手順、変数、数値、応用例等、必ずしも提示したものに限定されるものではない。
【符号の説明】
【0072】
11 入出力処理部
12a,12b TSバッファ
13a,13b 多重化部(MUX)
14 再多重化部
15 前処理部
16 受信キャリアバッファ
17 送信キャリアバッファ
18 メモリ制御部
18a 書き込みアドレス生成部
18b 非連続書き込み処理部
18c 読み出しアドレス生成部
18d 連続読み出し処理部
19 メモリ(外部メモリ)
21 周波数インターリーブ処理部
22 フレーム構成部
23 IFFT部(+GI付加部)
24 DAC部
29 部分
30 ISDB-T変調器
31,32 ホスト装置
33 RFアップコンバータ
図1
図2
図3
図4
図5
図6
図7
図8
図9