以下、図面を参照しながら、この発明の実施の形態について説明する。図1は、実施の形態としての画像信号処理装置100の構成を示している。この画像信号処理装置100は、入力画像信号Saを出力画像信号Sbに変換するものである。ここでは、便宜上、画像信号Saが480i信号であり、画像信号Sbが1080i信号であるとして説明するが、これに限定されるものではない。なお、480i信号は、走査線数が525本、有効走査線数が480本、有効画素数が(横×縦)=(720×480)、サンプリング周波数が13.5MHzであるインタレース方式の画像信号である(図2A参照)。また、1080i信号は、走査線数が1125本、有効走査線数が1080本、有効画素数が(横×縦)=(1920×1080)、サンプリング周波数が74.25MHzであるインタレース方式の画像信号である(図2B参照)。
画像信号処理装置100は、マイクロコンピュータを備え、システム全体の動作を制御するためのシステムコントローラ101と、リモートコントロール信号を受信するリモコン信号受信回路102とを有している。リモコン信号受信回路102は、システムコントローラ101に接続され、リモコン送信機103よりユーザの操作に応じて出力されるリモートコントロール信号RMを受信し、その信号RMに対応する操作信号をシステムコントローラ101に供給する。
また、画像信号処理装置100は、画像信号Saが入力される入力端子104と、この入力端子104に入力された画像信号Saに基づいて、画像信号Sbを構成する画素データに対応した画素データを持つ、1080i信号である画像信号Scを得るレート変換回路105とを有している。
また、画像信号処理装置100は、レート変換回路105で得られた画像信号Scに基づいて、画像信号Sbを生成して出力する画像信号処理部106と、この画像信号処理部106で得られた画像信号を出力する出力端子107とを有している。
図1に示す画像信号処理装置100の動作を説明する。入力端子104には480i信号である画像信号Saが供給され、この画像信号Saはレート変換回路105に供給される。このレート変換回路105では、画像信号Saの水平、垂直の画素数が変換され、1080i信号である画像信号Scが生成される。
本実施の形態においては、ユーザのリモコン送信機103の操作による設定により、通常モードと、ズームモードとを切り換えることができる。通常モードの場合、画像信号Saの有効画素部分の全部がレート変換の変換対象となって、画像信号Scが生成される。ズームモードの場合、ユーザによって指定された画像の拡大率に応じて、画像信号Saの有効画素部分内の変換対象が変化し、この画像の拡大率に応じた画像信号Scが生成される。この場合、画像の拡大率が大きくなる程、画像信号Saの有効画素部分内の変換対象は狭くなっていく。
レート変換回路105で得られた画像信号Scは画像信号処理部106に供給される。この画像信号処理部106では、画像信号Scに基づいて、画像信号Sbが生成される。この画像信号Sbは、出力端子107に導出される。上述したレート変換回路105では、所定画素の繰り返し読み出し、所定ラインの繰り返し読みを行うことによって水平、垂直の画素数が変換される。この画像信号処理部106では、画像信号Scを構成する各画素データのそれぞれに対応して、画像信号Sbを構成する各画素データが、その画素データの位相情報に対応した係数データと、その画素データの周辺に位置する複数の画素データとを用い、推定式に基づいて算出される。
なお、ユーザは、リモコン送信機103の操作によって、画像信号Sbによる画像の解像度およびノイズ除去度を調整できる。画像信号処理部106では、上述したように、画像信号Sbを構成する各画素データが、推定式によって算出される。この推定式の係数データとして、解像度を定めるパラメータfおよびノイズ除去度を定めるパラメータgを含む生成式によって生成されたものが使用される。パラメータf,gは、ユーザのリモコン送信機103の操作によって調整される。これにより、画像信号処理部106で生成される画像信号Sbによる画像の解像度およびノイズ除去度は、調整されたパラメータf,gに対応したものとなる。
次に、レート変換回路105の詳細を説明する。図3は、レート変換回路105の構成を示している。
このレート変換回路105は、入力画像信号を一時的に格納する第1のメモリとしてのフレームメモリ201を有している。このフレームメモリ201は、バースト転送型の大容量メモリで構成される。バースト転送型の大容量メモリとしてSDRAM(Synchronous Dynamic RAM)、フラッシュメモリなどがあるが、本実施の形態においては、フレームメモリ201はSDRAMによって構成される。このフレームメモリ201は複数フィールド分の記憶容量を持っている。
また、レート変換回路105は、フレームメモリ(SDRAM)201の書き込み、読み出しを制御するSDRAMコントローラ202を有している。このSDRAMコントローラ202は、SDRAMバス(データバス)203等を介してフレームメモリ201と接続される。
このSDRAMコントローラ202は、書き込みバッファとしてのバッファ204Y,204Cを備えている。これらバッファ204Y,204CはSDRAMバス203に接続されている。これらバッファ204Y,204Cは、入力画像信号としての画像信号Sa(図1参照)を構成する輝度信号Ya、色差信号Ua/Vaをそれぞれ一時的に記憶する。
ここで、色差信号Ua/Vaは、青色差信号Uaと赤色差信号Vaとの点順次信号となっている。すなわち、輝度信号Yaのサンプリングレートは13.5MHzであるが、色差信号Ua,Vaのサンプリングレートは、それぞれ13.5/2MHzとなっている。バッファ204Y,204Cは、それぞれ2ライン分のSRAM(Static RAM)で構成されている。このように2ライン分のSRAMを用いるのは、以下の理由からである。
すなわち、書き込み側のバッファに関しては入力画像信号Saを連続的に受け入れる必要があるが、SDRAMバス203が読み出し動作で占有されている場合には、バッファ内容をフレームメモリ201に送り出しできず、バッファ204Y,204Cをそれぞれ1ライン分のSRAMで構成した場合には時間的矛盾が発生する。そこで、本実施の形態においては、バッファ204Y,204Cをそれぞれ2ライン分のSRAMで構成し、SDRAMバス203が読み出し動作で占有されている場合には、バッファ内容のフレームメモリ201への送り出しを待機可能とし、時間的矛盾の発生を回避している。
これらバッファ204Y,204Cには、13.5MHzの入力クロックCKiに同期して、それぞれ輝度信号Ya、色差信号Ua/Vaが順次書き込まれていく。この場合、有効画素の部分だけ書き込みが行われ、従って各1ライン(720画素)は、入力クロックCKiにおける720クロック期間で書き込みが行われる。
また、これらバッファ204Y,204Cに書き込まれた各1ライン分の輝度信号Ya、色差信号Ua/Vaは、108MHzのメモリクロックCKmに同期して時分割的に読み出されて、フレームメモリ201に書き込まれる。この場合、8ビットデータが32ビットデータに変換されて転送される。つまり、4画素並列で処理され、従って各1ライン(720画素)は、メモリクロックCKmの180クロック期間でバッファ204Y,204Cからフレームメモリ201に送り出されて書き込まれる。
また、SDRAMコントローラ202は、読み出しバッファとしてのバッファ205Y,205Cを備えている。これらバッファ205Y,205Cは、フレームメモリ201から読み出される画像信号、すなわち輝度信号および色差信号をそれぞれ一時的に記憶する。これらバッファ205Y,205CはSDRAMバス203に接続されている。
バッファ205Yは10ライン分のSRAMで構成される。このように10ライン分のSRAMを用いるのは、後述する読み出しリクエストRRQの一個に対応して、フレームメモリ201から読み出される輝度信号Yaが10ライン分であることによる。また、バッファ205Cは2ライン分のSRAMで構成される。このように2ライン分のSRAMを用いるのは、後述する読み出しリクエストRRQの一個に対応して、フレームメモリ201から読み出される色差信号Ua/Vaが2ライン分であることによる。
フレームメモリ201に書き込まれた各1ライン分の輝度信号Ya、色差信号Ua/Vaは、108MHzのメモリクロックCKmに同期して読み出され、バッファ205Y,205Cに書き込まれる。この場合、4画素並列で処理され、従って各1ライン(720画素)は、メモリクロックCKmの180クロック期間でフレームメモリ201からバッファ205Y,205Cに送り出されて書き込まれる。
そしてこの場合、バッファ205Yを構成する10ライン分のSRAMのそれぞれに書き込まれる各1ライン分の輝度信号Yaおよびバッファ205Cを構成する2ライン分のSRAMのそれぞれに書き込まれる各1ライン分の色差信号Ua/Vaは、フレームメモリ201からSDRAMバス203を通じて時分割的に転送される。
また、SDRAMコントローラ202は、制御部206を有している。この制御部206は、後述する入力タイミングジェネレータ(入力TG)207から供給される書き込みリクエストWRQに対応して、バッファ204Y,204Cに供給すべき読み出しアドレスRADiおよびフレームメモリ201に供給すべき書き込みアドレスWADmを発生する。さらに、この制御部206は、後述するメモリタイミングジェネレータ(メモリTG)211から供給される読み出しリクエストRRQに対応して、フレームメモリ201に供給すべき読み出しアドレスRADmおよびバッファ205Y,205Cに供給すべき書き込みアドレスWADoを発生する。
また、レート変換回路105は、入力タイミングジェネレータ(入力TG)207を有している。この入力TG207は、水平カウンタ208および垂直カウンタ209から構成されている。水平カウンタ208には、上述した輝度信号Ya,色差信号Ua/Vaに同期した入力クロックCKiおよび水平同期信号HDiが供給される。垂直カウンタ209には、上述した輝度信号Ya,色差信号Ua/Vaに同期した水平同期信号HDiおよび垂直同期信号VDiが供給される。
垂直カウンタ209は、垂直同期信号VDiによりカウント値を「0」にリセットし、水平同期信号HDiが供給される毎にそのカウント値をインクリメントし、そのカウント値を水平カウンタ208に供給する。
水平カウンタ208は、水平同期信号HDiによりカウント値を「0」にリセットし、入力クロックCKiが供給される毎にそのカウント値をインクリメントしていく。そして、水平カウンタ208は、垂直カウンタ209からのカウント値および自己のカウント値に基づいて、垂直方向の有効画素部分に該当する各ラインで、かつ水平方向の有効画素部分で、入力クロックCKiに同期して書き込みアドレスWADiを発生し、SDRAMコントローラ202内のバッファ204Y,204Cに供給する。
さらに、水平カウンタ208は、垂直方向の有効画素部分に該当する各ラインで、水平方向の有効画素部分の書き込みアドレスWADiを発生した後、水平同期信号HDiに同期して、書き込みリクエストWRQを発生し、SDRAMコントローラ202内の制御部206に供給する。
また、レート変換回路105は、メモリタイミングジェネレータ(メモリTG)211を有している。このメモリTG211は、リクエストカウンタ212および垂直カウンタ213とから構成されている。リクエストカウンタ212には、メモリクロックCKmが供給される。垂直カウンタ213には、後述する出力タイミングジェネレータ(出力TG)217から、出力画像信号Scにおける垂直方向の有効画素部分の開始タイミングで垂直リセット信号VRSが供給されると共に、リクエストカウンタ212より出力される読み出しリクエストRRQが供給される。
垂直カウンタ213は、垂直リセット信号VRSによりカウント値を「0」にリセットし、読み出しリクエストRRQが供給される毎にそのカウント値をインクリメントし、そのカウント値をリクエストカウンタ212に供給する。リクエストカウンタ212は、垂直カウンタ213からのカウント値に基づいて、そのカウント値が「0」〜「N−1」にあるとき、それぞれ読み出しリクエストRRQを発生し、SDRAMコントローラ202内の制御部206に供給すると共に、垂直カウンタ213に供給する。
この場合、リクエストカウンタ212は、最初は垂直カウンタ213からのカウント値が「0」となったとき読み出しリクエストRRQを発生するが、その後はメモリクロックCKmを、n個カウントする毎に、読み出しリクエストRRQを発生する。
ここで、図4に示すように、入力画像信号Saの有効画素部分内の一部または全部、すなわち垂直方向にavライン(av≦240)、水平方向にah画素(ah≦720)の部分(レート変換対象部分AT)から、出力画像信号Scの有効画素部分を得るレート変換を行う場合、上述したNはavとなる。なお、図4においては、1フィールド分を示しているので、入力画像信号Saおよび出力画像信号Scのそれぞれにおける有効画素部分の垂直方向の画素数(ライン数)は、図2における画素数(ライン数)の半分となっている。
読み出しリクエストRRQが発生される毎に、フレームメモリ201からは、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaが読み出されてバッファ205Y,205Cに供給される。この場合、10ライン分の輝度信号Yaは、後述するように、画像信号処理部106で、輝度信号Ybにおける注目位置の輝度データを得る際に、予測タップおよびクラスタップを取得するために用いられる。同様に、2ライン分の色差信号Ua/Vaは、後述するように、画像信号処理部106で、色差信号Ub/Vbにおける注目位置の色差データを得る際に、予測タップおよびクラスタップを取得するために用いられる。
図4に示すようにレート変換を行う場合、垂直カウンタ213のカウント値が「0」で発生される読み出しリクエストRRQに対しては、フレームメモリ201から、入力画像信号Saのレート変換対象部分ATに対応したavラインの第1ラインに係る10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaが読み出されてバッファ205Y,205Cに供給される。以下、垂直カウンタ213のカウント値が「1」〜「N−1」で発生される読み出しリクエストRRQに対しては、それぞれ、フレームメモリ201から、入力画像信号Saのレート変換対象部分ATに対応したavラインの第2ライン〜第Nラインに係る10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaが読み出されてバッファ205Y,205Cに供給される。
また、リクエストカウンタ212で発生される読み出しリクエストRRQの周期は、出力画像信号Scの1垂直有効期間を、入力画像信号Saのレート変換の対象となるライン数で均等割りして得られる時間とされる。すなわち、その周期をt、出力画像信号Scの画素周波数をfo、入力画像信号Saの変換対象のライン数をmi、出力画像信号Scの1垂直有効期間のライン数をmo、出力画像信号Scの1ライン当たりの画素数をnoとするとき、t=mo/mi/fo×noとされる。
上述したように、リクエストカウンタ212は、メモリクロックCKmをn個カウントする毎に、読み出しリクエストRRQを発生する。このnは、上述した周期tを、メモリクロックCKmの周期で割算することで得られる。すなわち、メモリクロックCKmの周期は1/108MHzであるので、n=mo/mi×108MHz/fo×noとされる。
図5は、理解が容易となるように、入力画像信号Saの変換対象のライン数miが5、出力画像信号Scの1垂直有効期間のライン数moが12であるとして、変換対象のラインがフレームメモリ201から一定時間毎に読み出される場合における、出力画像信号Scの1垂直有効期間のラインと入力画像信号Saの変換対象のラインとの対応を示している。この図5において、実線aは出力画像信号Scのラインを示し、一点鎖線bは入力画像信号Saの変換対象のラインを示している。
図6Aは、フレームメモリ201から読み出される、入力画像信号Saの変換対象の各ラインを示している。図6Bは、出力画像信号Scの1垂直有効期間の各ラインを示している。この場合、フレームメモリ201からバッファ205Y,205Cへのデータの転送周期に変動がないため、データ転送帯域の安定確保を図ることができる。
なお、図7は、本実施の形態とは異なり、変換対象のラインがフレームメモリ201から、出力画像信号Scのラインに同期して、読み出される場合における、出力画像信号Scの1垂直有効期間のラインと入力画像信号Saの変換対象のラインとの対応を示している。この図7において、実線aは出力画像信号Scのラインを示し、一点鎖線bは入力画像信号Saの変換対象のラインを示している。
図8Aは、フレームメモリ201から読み出される、入力画像信号Saの変換対象の各ラインを示している。図8Bは、出力画像信号Scの1垂直有効期間の各ラインを示している。この場合、フレームメモリ201からバッファ205Y,205Cへのデータの転送周期に疎密ができるため、データ転送帯域の使用効率は密の部分(転送周期の短い部分)で規定される。
また、メモリTG211のリクエストカウンタ211は、読み出しリクエストRRQに対応して、フレームメモリ201からバッファ205Y,205Cに輝度信号Ya、色差信号Ua/Vaが転送されて書き込まれた後に、バッファ205Y,205Cに供給すべき読み出しアドレスRADo、および後述する第2のメモリとしてのレート変換部215Y,215Cに供給すべき書き込みアドレスWADrを発生する。
また、レート変換回路105は、レート変換部215Y,215Cを有している。レート変換部215Yは、上述したバッファ205Yが10ライン分のSRAMで構成されているのに対応して、10系統のデュアルポートラインメモリ(SRAM)で構成されている。同様に、レート変換部215Cは、上述したバッファ205Cが2ライン分のSRAMで構成されているのに対応して、2系統のデュアルポートラインメモリ(SRAM)で構成されている。ここで、各系統のSRAMはリング構造とされており、レート変換処理で書き込みが読み出しを追い越すことがないように、所定以上の記憶容量をもっている。
上述したように、メモリTG211から、バッファ205Y,205Cに読み出しアドレスRADoが供給されると共に、レート変換部215Y,215Cに書き込みアドレスWADrが供給されることで、各読み出しリクエストRRQに対応して、フレームメモリ201からバッファ205Y,205Cに時分割的に転送されて書き込まれた10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaは、さらにレート変換部215Y,215Cに並行して転送されて書き込まれる。
また、レート変換回路105は、出力タイミングジェネレータ(出力TG)217を有している。この出力TG217は、アドレス発生部218および垂直カウンタ219から構成されている。アドレス発生部218には、出力画像信号Scに同期した74.25MHzの出力クロックCKoが供給される。アドレス発生部218は、この出力クロックCKoをカウントすることで、出力画像信号Scに同期した水平同期信号HDoを生成する。この水平同期信号HDoは垂直カウンタ219に供給される。
垂直カウンタ219には、さらに、出力画像信号Scに同期した垂直同期信号VDoが供給される。垂直カウンタ219は、垂直同期信号VDoによりカウント値を「0」にリセットし、水平同期信号HDoが供給される毎にそのカウント値をインクリメントする。そして、この垂直カウンタ219は、そのカウント値に基づいて、出力画像信号Scにおける垂直方向の有効画素部分の開始画素位置で、上述した垂直リセット信号VRSを発生し、この垂直リセット信号VRSをメモリTG211の垂直カウンタ213に供給する。
また、アドレス発生部218には、垂直カウンタ219のカウント値が供給される。アドレス発生部218は、出力画像信号Scにおける垂直方向の有効画素部分の各ラインで、その水平方向の有効部分に対応して読み出しアドレスRADrを発生し、レート変換部215Y,215Cに供給する。
この場合、アドレス発生部218は、出力画像信号Scの水平方向および垂直方向の有効画素部分の開始画素位置(図4のP点参照)で、基準アドレスRADr0を発生する。この基準アドレスRADr0は、レート変換部215Y,215Cにおける、入力画像信号Saのレート変換対象部分ATの開始位置(図4のQ点参照)に対応した画素データの記録位置を示すものである。
そして、アドレス発生部218は、水平方向の有効画素部分の開始画素位置の位相情報を0とし、その後出力クロックCKoが供給される画素位置毎に、水平拡大率の逆数Mhを加算し、加算値が4096より小さいときは、その加算値をその画素位置の水平方向の位相情報hとし、一方、加算値が4096以上となるときは、桁上がりが発生し、その加算値から4096を減算した値を、その画素位置の水平方向の位相情報hとする。なお、位相情報hは、小数点以下を、例えば四捨五入した値とする。以下の垂直方向の位相情報vについても同様である。
そして、アドレス発生部218は、加算値が4096より小さく、桁上がりが発生しないときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置と同じものを出力し、一方桁上がりが発生するときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置のアドレスから1進めたものを出力する。
このように、加算値が4096より小さく、桁上がりが発生しないときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置と同じものを出力し、その画素位置でレート変換部215Y,215Cから直前の画素位置と同じ画素データを読み出すものであり、これにより水平方向の画素数を増加させることができる。
ここで、拡大率の逆数Mhは、
Mh=(入力画像信号Saのレート変換対象部分ATの水平方向の画素数)/(出力画像信号Scの有効画素部分の水平方向の画素数)×正規化定数
の式により求められる。本実施の形態において、正規化定数は4096である。これは、入力画像信号Saの水平方向の画素間を4096等分して出力画像信号の各画素の水平方向の位相を定義していることによる。例えば、図4に示すようにレート変換を行う場合、Mh=ah/1920×4096となる。
また、アドレス発生部218は、垂直方向の有効画素部分の開始画素位置の位相情報を0とし、その後水平同期信号HDoが発生されるライン毎に、垂直拡大率の逆数Mvを加算し、加算値が4096より小さいときは、その加算値をそのラインの垂直方向の位相情報vとし、一方、加算値が4096以上となるときは、桁上がりが発生し、その加算値から4096を減算した値を、そのラインの垂直方向の位相情報vとする。
そして、アドレス発生部218は、加算値が4096より小さく、桁上がりが発生しないときは、そのラインに対応した読み出しアドレスRADrとして直前のラインと同じものを出力し、一方桁上がりが発生するときは、そのラインに対応した読み出しアドレスRADrとして、入力画像信号Saの次のラインの画素データを読み出すように変更したものを出力する。
ここで、拡大率の逆数Mvは、
Mv=(入力画像信号Saのレート変換対象部分ATの垂直方向の画素数)/(出力画像信号Scの有効画素部分の垂直方向の画素数)×正規化定数
の式により求められる。本実施の形態において、正規化定数は4096である。これは、入力画像信号Saの垂直方向の画素間を4096等分して出力画像信号の各画素の垂直方向の位相を定義していることによる。例えば、図4に示すようにレート変換を行う場合、Mv=av/540×4096となる。
このように、加算値が4096より小さく、桁上がりが発生しないときは、そのラインに対応した読み出しアドレスRADrとして直前のラインと同じものを出力し、そのラインでレート変換部215Y,215Cから直前のラインと同じ画素データを読み出すものであり、これにより垂直方向の画素数(ライン数)を増加させることができる。
図9は、入力画像信号Saの輝度信号Yaから出力画像信号Scの輝度信号Ycへのレート転換の一例を示している。この例は、輝度信号Yaの水平720画素、垂直240画素のレート変換対象部分ATから、輝度信号Ycの水平1920画素、垂直480画素の有効画素部分を得た場合の例である。
この場合、水平方向の拡大率の逆数Mhは、Mh=720/1920×4096=1536となり、輝度信号Ycの水平方向の各画素位置の位相情報phyは、0→1536→3072→512(=4608−4096)→2046→・・・のように推移していく。また、垂直方向の拡大率の逆数Mvは、Mv=240/540×4096≒1820となり、輝度信号Ycの垂直方向の各画素位置の位相情報pvyは、0→1820→3640→1364(=5460−4096)→3184→・・・のように推移していく。
図10は、入力画像信号Saの色差信号Ua(Va)から出力画像信号Scの色差信号Ucへのレート転換の一例を示している。この例は、色差信号Ua(Va)の水平360画素、垂直240画素のレート変換対象部分ATから、色差信号Uc(Vc)の水平1920画素、垂直480画素の有効画素部分を得た場合の例である。なお、上述したように、入力画像信号Saにおける青色差信号Uaおよび赤色差信号Vaは点順次信号となっており、それぞれの画素数は輝度信号Yaの半分である。そのため、色差信号Ua(Va)の水平360画素は、上述した輝度信号の水平720画素に対応している。
この場合、水平方向の拡大率の逆数Mhは、Mh=360/1920×4096=768となり、色差信号Uc(Vc)の水平方向の各画素位置の位相情報phcは、0→768→1536→2304→3072→3840→512(=4608−4096)→1280→・・・のように推移していく。また、垂直方向の拡大率の逆数Mvは、Mv=240/540×4096≒1820となり、色差信号Uc(Vc)の垂直方向の各画素位置の位相情報pvcは、0→1820→3640→1364(=5460−4096)→3184→・・・のように推移していく。
なお、上述したように、入力画像信号Saにおける青色差信号Uaおよび赤色差信号Vaは点順次信号となっており、レート変換部215Cには、2系統のSRAMにそれぞれその点順次信号が書き込まれた状態となっている。しかし、このレート変換部215Cから出力される際には、青色差信号Ucおよび赤色差信号Vcが別個独立して出力される。この場合、レート変換部215Cは青色差信号Ucの読み出しポートおよび赤色差信号Vcの読み出しポートをそれぞれ備えており、出力TG217のアドレス発生部218から出力される読み出しアドレスRADrとして、青色差信号Uc用のものと、赤色差信号Vc用のものとが別個独立に供給される。
図11は、図9の例に対応した輝度信号の水平方向の画素数変換におけるタイミングチャートを示している。図11Aは、輝度信号Yaに同期した水平同期信号HDiを示し、図11Bは、輝度信号Yaのあるラインを示しており、1、2、3、・・・は、レート変換対象部分ATを構成する第1の画素データ、第2の画素データ、第3の画素データ、・・・である。
また、図11Cは、メモリTG211より出力され、SDRAMコントローラ202内の制御部206に供給される読み出しリクエストRRQを示し、図11Dは、読み出しリクエストRRQに対応してフレームメモリ201から読み出され、バッファ205Yを介してレート変換部215Yに入力された輝度信号Yaを示している。
そして、図11Eは、輝度信号Ycに同期した水平同期信号HDoを示し、図11Fは、レート変換部215Yから出力される輝度信号Ycのあるラインを示しており、1、2、3、・・・は、レート変換対象部分ATを構成する輝度信号Yaの第1の画素データ、第2の画素データ、第3の画素データ、・・・にそれぞれ対応した画素データであることを示している。
図12は、図10の例に対応した色差信号の水平方向の画素数変換におけるタイミングチャートを示している。図12Aは、色差信号Ua/Vaに同期した水平同期信号HDiを示し、図12Bは、色差信号Ua/Vaのあるラインを示しており、1、2、・・・は、レート変換対象部分ATを構成する青色差信号Uaの第1の画素データ、第2の画素データ、・・・であり、1′、2′、・・・は、レート変換対象部分ATを構成する赤色差信号Vaの第1の画素データ、第2の画素データ、・・・である。
また、図12Cは、メモリTG211より出力され、SDRAMコントローラ202内の制御部206に供給される読み出しリクエストRRQを示し、図12Dは、読み出しリクエストRRQに対応してフレームメモリ201から読み出され、バッファ205Cを介してレート変換部215Cに入力された色差信号Ua/Vaを示している。
図12Eは、青色差信号Uc、赤色差信号Vcに同期した水平同期信号HDoを示している。そして、図12Fは、レート変換部215Cから出力される青色差信号Ucのあるラインを示しており、1、2、3、・・・は、レート変換対象部分ATを構成する青色差信号Uaの第1の画素データ、第2の画素データ、第3の画素データ、・・・にそれぞれ対応した画素データであることを示している。また、図12Gは、レート変換部215Cから出力される赤色差信号Vcのあるラインを示しており、1′、2′、3′、・・・は、レート変換対象部分ATを構成する赤色差信号Vaの第1の画素データ、第2の画素データ、第3の画素データ、・・・にそれぞれ対応した画素データであることを示している。
図13は、図9、図10の例に対応した画像信号(輝度信号、色差信号)の垂直方向のライン数変換(画素数変換)におけるタイミングチャートを示している。図13Aは、画像信号Sa(輝度信号Ya,色差信号Ua/Va)に同期した垂直同期信号VDiを示し、図13Bは、画像信号Saの連続したラインを示しており、1、2、3、・・・は、レート変換対象部分ATを構成する第1のライン、第2のライン、第3のライン、・・・である。
また、図13Cは、メモリTG211より出力され、SDRAMコントローラ202内の制御部206に供給される読み出しリクエストRRQを示し、図13Dは、読み出しリクエストRRQに対応してフレームメモリ201から読み出され、バッファ205Y,205Cを介してレート変換部215Y,215Cに入力された画像信号Saを示している。
そして、図13Eは、画像信号Sc(輝度信号Yc,青色差信号Uc,赤色差信号Vc)に同期した垂直同期信号VDoを示し、図13Fは、レート変換部215Y,215Cから出力される画像信号Scの連続したラインを示しており、1、2、3、・・・は、レート変換対象部分ATを構成する画像信号Saの第1のライン、第2のライン、第3のライン、・・・にそれぞれ対応したラインであることを示している。
図3に戻って、レート変換部215Yは、上述したように10系統のSRAMからなっており、出力TG217で発生される読み出しアドレスRADrに基づいて、10ライン分の輝度信号Ycを並列的に出力する。さらに、ライン遅延を持った8ライン分の輝度信号も並列的に出力する。この場合、レート変換部215Yの各系統のSRAMはそれぞれリング構造となっており、ある読み出しポートのアドレスから1ライン分の画素数だけ小さなアドレスを別のポートで読み出すことでライン遅延を持った輝度信号を得ることができる。
結局、レート変換部215Yからは、18ライン分の輝度信号Ycが並列的に得られる。18ライン分の輝度信号Ycは、後述する画像信号処理部106で、出力画像信号Sbを構成する輝度信号Ybにおける注目位置の輝度データを得る際の、予測タップおよびクラスタップを抽出するために用いられる。
図14Aは、輝度信号のタップ領域の一例を示しており、白丸で示す0〜9の10ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す10〜17の8ラインはライン遅延を持ったラインである。この場合、例えば13のラインが中心位置とされる。
また、図15Aは、輝度信号のタップ領域の他の例を示しており、白丸で示す0〜9の10ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す10〜17の8ラインはライン遅延を持ったラインである。この場合、例えば13のラインが中心位置とされる。
また、レート変換部215Cは、上述したように2系統のSRAMからなっており、出力TG217で発生される読み出しアドレスRADrに基づいて、青色差信号Ucおよび赤色差信号Vcのそれぞれにつき、2ライン分の色差信号を並列的に出力する。さらに、青色差信号Ucおよび赤色差信号Vcのそれぞれにつき、ライン遅延を持った2ライン分の色差信号も並列的に出力する。この場合、レート変換部215Cの各系統のSRAMはそれぞれリング構造となっており、ある読み出しポートのアドレスから1ライン分の画素数だけ小さなアドレスを別のポートで読み出すことでライン遅延を持った色差信号を得ることができる。
結局、レート変換部215Cからは、青色差信号Ucおよび赤色差信号Vcのそれぞれにつき、4ライン分の色差信号が並列的に得られる。4ライン分の色差信号は、後述する画像信号処理部106で、出力画像信号Sbを構成する色差信号における注目位置の色差データを得る際の、予測タップおよびクラスタップを抽出するために用いられる。
図14Bは、色差信号のタップ領域の一例を示しており、白丸で示す0,1の2ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す2,3の2ラインはライン遅延を持ったラインである。この場合、例えば2のラインが中心位置とされる。
また、図15Bは、色差信号のタップ領域の他の例を示しており、白丸で示す0,1の2ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す2,3の2ラインはライン遅延を持ったラインである。この場合、例えば2のラインが中心位置とされる。
なお、上述したように、レート変換部215Y,215Cが備える各系統のSRAMはそれぞれリング構造とされている。この場合、各系統のSRAMとしてどれだけのメモリ容量が必要かは、図16に示すような、動作モデルによる理論値と実使用条件でのエミュレーションで保証する。
図16Bは、レート変換部への入力ラインを示しており、図16Cはその出力ラインを示している。また、図16Aは、入力ラインに対応した書き込みアドレスの遷移(破線図示)と、出力ラインに対応した読み出しアドレスの遷移(実線図示)とを示している。この図16Aから、各系統のSRAMのメモリ容量として、W以上が必要であることがわかる。
図3に戻って、また、レート変換回路105は、タップ構築回路221Y,221Cを有している。タップ構築回路221Yは、レート変換部215Yで得られる18ライン分の輝度信号Ycのそれぞれにつき、後述する画像信号処理部106で、出力画像信号Sbを構成する輝度信号Ybにおける注目位置の輝度データを得る際に、予測タップおよびクラスタップとして用いられる水平方向のタップを構築する。
タップ構築回路221Cは、レート変換部215Cで得られる4ライン分の青色差信号Ucのそれぞれにつき、後述する画像信号処理部106で、出力画像信号Sbを構成する青色差信号Ubにおける注目位置の色差データを得る際に、予測タップおよびクラスタップとして用いられる水平方向のタップを構築する。
さらに、タップ構築回路221Cは、レート変換部215Cで得られる4ライン分の赤色差信号Vcのそれぞれにつき、後述する画像信号処理部106で、出力画像信号Sbを構成する赤色差信号Vbにおける注目位置の色差データを得る際に、予測タップおよびクラスタップとして用いられる水平方向のタップを構築する。
タップ構築回路221Yの詳細を説明する。
このタップ構築回路221Yは、図17に示すように、レート変換部215Yで得られる18ライン分の輝度信号Ycにそれぞれ対応して18個のシフトレジスタ222-1〜222-18を備えている。各シフトレジスタは、構築すべき水平方向のタップ数分のレジスタからなっている。本実施の形態においては、水平5タップを構築する。
ここで、シフトレジスタに、各ラインの有効画素部分に対応して、上述したように得られたレート変換後の輝度信号Ycの輝度データ列そのもの、つまり本来の輝度データ列が入力される場合を考える。なお、シフトレジスタには、輝度信号Ycの輝度データ列の輝度データの変化位置に対応したシフトトリガSTRが供給され、輝度信号Ycの輝度データ列の変化位置の輝度データが順次取り込まれていくものとする。
まず、レート変換部215Yで水平方向の画素数が整数倍、例えば2倍に変換された場合を説明する。この場合、図18に示すような状態となる。図18Bは、レート変換後の輝度信号Ycのあるラインを示し、1、2、3、・・・は、レート変換前の輝度信号Yaのレート変換対象部分ATを構成する第1の輝度データ、第2の輝度データ、第3の輝度データ、・・・にそれぞれ対応した輝度データであることを示している。図18Cは、輝度データの変化点に対応して発生されたシフトトリガSTRを示している。なお、図18Aは、レート変換前の輝度信号Yaの各輝度データを、輝度信号Ycの輝度データ列における輝度データの変化位置に対応して配置したものである。
タップ構築回路221Yで水平5タップのタップを構築する場合、センタータップは、図18Eに示すように変化する。なお、図18Dは、センタータップの変化タイミングを示している。
この場合、センタータップの変化が、レート変換後の輝度信号Ycの輝度データ列の並びと対応したものとなるため、レート変換前の輝度信号Yaにおける輝度データの並びで水平5タップを得ることができる。
なお、タップ構築部221Yに輝度信号Ycの入力が開始されてから、シフトレジスタに水平5タップの輝度データが取り込まれ、最初の水平5タップが出力されるまでの時間を出力開始ディレイと称し、その場合のセンタータップの輝度データがシフトレジスタに取り込まれてからセンタータップとして出力されるまでの時間をシステムディレイと称する。
出力開始ディレイは、画素数の変換倍率によって変動する。そのため、このタップ構築回路221Yで構築された輝度信号Ycの水平5タップを使用する場合、後述する画像信号処理部106で、他の系の信号との時間調整のために、画素数の変換倍率によって遅延時間を可変できる可変遅延回路が必要となる。
次に、レート変換部215Yで水平方向の画素数が任意倍率、例えば7/3倍に変換される場合を説明する。この場合には、図19に示すような状態となる。図19Bは、レート変換後の輝度信号Ycのあるラインを示し、1、2、3、・・・は、輝度信号Yaのレート変換対象部分ATを構成する第1の輝度データ、第2の輝度データ、第3の輝度データ、・・・にそれぞれ対応した輝度データであることを示している。図19Cは、輝度データの変化点に対応して発生されたシフトトリガSTRを示している。なお、図19Aは、レート変換前の輝度信号Yaの各輝度データを、輝度信号Ycの輝度データ列における輝度データの変化位置に対応して配置したものである。
タップ構築回路221Yで水平5タップを構築する場合、センタータップは、図19Eに示すように変化する。なお、図19Dは、センタータップの変化タイミングを示している。
この場合、センタータップの変化が、レート変換後の輝度信号Ycの輝度データ列の並びと対応しない部分が発生する。すなわち、時点tAではシフトレジスタの状態は図20Aに示す状態にあり、センタータップとして輝度データ「4」を出力する。そして、次の時点XではシフトトリガSTRが供給されるので、シフトレジスタの状態は、図20Bに示すように変化し、センタータップとして輝度データ「5」を出力する。さらに、次の時点tBでは、シフトトリガSTRが供給されないので、シフトレジスタの状態は時点Xにおける状態と同じく図20Cに示す状態にあり、センタータップとして輝度データ「5」を出力する。
図19Fに期待されるセンタータップの変化を示しているが、時点Xではセンタタップとして輝度データ「4」ではなく輝度データ「5」が出力される。したがってこの場合には、レート変換前の輝度信号Yaにおける輝度データの並びで水平5タップを得ることができなくなる。
そこで、シフトレジスタを構成するレジスタの個数を1個だけ増加して6個とし、当該シフトレジスタから選択的に水平5タップを構築することが考えられる。この場合、時点tAではシフトレジスタの状態は図21Aに示す状態にあり、センタータップが輝度データ「4」となるように、1〜5のレジスタの出力をタップとして出力する。そして、次の時点XではシフトトリガSTRが供給されるので、シフトレジスタの状態は、図21Bに示すように変化し、センタータップが輝度データ「4」となるように、2〜6のレジスタの出力をタップとして出力する。さらに、次の時点tBでは、シフトトリガSTRが供給されないので、シフトレジスタの状態は時点Xにおける状態と同じく図21Cに示す状態にあり、センタータップが輝度データ「5」となるように、1〜5のレジスタの出力をタップとして出力する。
このようにすることで、センタータップの変化が、レート変換後の輝度信号Ycの輝度データ列の並びと対応したものとなるため、レート変換前の輝度信号Yaにおける輝度データの並びで水平5タップを得ることができる。しかしこの場合、位相を計算し、センタータップ位置を特定する回路が必要となる。また、この場合においても、出力開始ディレイは、画素数の変換倍率によって変動する。
そこで、センタータップの変化がレート変換後の輝度信号Ycの輝度データ列の並びと対応したものとなるように、輝度信号Ycの輝度データ列における輝度データの変化位置を変更してなる変更輝度データ列をシフトレジスタに入力することが考えられる。
この場合、レート変換部215Yからタップ構築部221Yには、輝度信号Yc(図22Bに図示)を変更して得られた図22Eに示す輝度信号Yc′が供給される。またこの場合、レート変換部215Yからタップ構築部221Yのシフトレジスタには、シフトトリガSTR(図22Cに図示)に代わって、図22Dに示すように、輝度信号Yc′の輝度データ列における輝度データの変化位置に対応したシフトトリガSTR′が供給される。
ここで、シフトレジスタがセンタータップを出力するレジスタに対して、その出力側にno個、その入力側にni個のレジスタを備えるものとする。上述したように、水平5タップを構築する場合には、no=ni=2である。シフトトリガSTR′は、シフトトリガSTRの先頭に、ni個の先読み用トリガを付加したものとなる。なお、先読み用トリガのタイミングは、図22Dのタイミングに限定されるものではなく、要は輝度データ「1」,「2」がシフトレジスタに取り込まれればよい。
タップ構築回路221Yで水平5タップを構築する場合、センタータップは、図22Gに示すように変化する。図22Fは、センタータップの変化タイミングを示している。また、図22Aは、レート変換前の輝度信号Yaの各輝度データを、輝度信号Ycの輝度データ列における輝度データの変化位置に対応して配置したものである。
この場合、時点tAではシフトレジスタの状態は図23Aに示す状態にあり、センタータップとして輝度データ「4」を出力する。そして、次の時点XではシフトトリガSTR′が供給されないので、シフトレジスタの状態は時点tAにおける状態と同じく図23Bに示す状態にあり、センタータップとして輝度データ「4」を出力する。さらに、次の時点tBでは、シフトトリガSTR′が供給されるので、シフトレジスタの状態は、図23Bに示すように変化し、センタータップとして輝度データ「5」を出力する。
このようにレート変換部215Yからタップ構築回路221Yに、輝度信号Yc′(図22Eに図示)およびシフトトリガSTR′(図22Dに図示)を供給することで、センタータップの変化がレート変換後の輝度信号Ycの輝度データ列の並びと対応したものとなり、レート変換前の輝度信号Yaにおける輝度データの並びで水平5タップを得ることができる。
しかしこの場合、出力開始ディレイは、画素数の変換倍率によって変動する。そのため、このタップ構築回路221Yで構築された輝度信号Ycの水平5タップを使用する場合、画像信号処理部106で、他の信号、例えば後述する位相情報(phy,pvy),(phc,pvc)との時間調整のために、画素数の変換倍率によって遅延時間を可変できる可変遅延回路が必要となる。
そこで、さらに、本実施の形態においては、画素数の変換倍率に依らず、出力開始ディレイが一定となるようにする。
そのため、シフトレジスタがセンタータップを出力するレジスタに対して、その出力側にno個、その入力側にni個のレジスタを備えるとき、各ラインで、最初の(no+ni)個の輝度データが連続して変化した輝度データ列をシフトレジスタに入力することが考えられる。上述したように水平5タップを構築する場合には、no=ni=2であり、no+ni=4である。
この場合、レート変換部215Yからタップ構築部221Yには、輝度信号Yc(図24Bに図示)を変更して得られた図24Eに示す輝度信号Yc″が供給される。またこの場合、レート変換部215Yからタップ構築部221Yのシフトレジスタには、シフトトリガSTR(図24Cに図示)に代わって、図24Dに示すように、輝度信号Yc″の輝度データ列における輝度データの変化位置に対応したシフトトリガSTR″が供給される。
タップ構築回路221Yで水平5タップを構築する場合、センタータップは、図24Gに示すように変化する。図24Fは、センタータップの変化タイミングを示している。また、図24Aは、レート変換前の輝度信号Yaの各輝度データを、輝度信号Ycの輝度データ列における輝度データの変化位置に対応して配置したものである。
このように、各ラインで、最初の(no+ni)個の輝度データが連続して変化した輝度データ列をシフトレジスタに入力することで、出力開始ディレイを、出力クロックCKoの(no+ni)クロック時間に固定できる。
そして、この場合も、センタータップの変化がレート変換後の輝度信号Ycの輝度データ列の並びと対応したものとなり、レート変換前の輝度信号Yaにおける輝度データの並びで水平5タップを得ることができる。
なお、上述では、シフトトリガSTR′,STR″がレート変換部215Yより得られる旨説明したが、レート変換部215Y以外の部分、例えば出力TG217で得るようにすることもできる。この出力TG217は、レート変換部215Yに読み出しアドレスRADrを供給しており、輝度信号Yc′、Yc″の輝度データ列における輝度データの変化位置の情報を容易に得ることができる。
また、詳細説明は省略するが、タップ構築回路221Cも、上述したタップ構築回路221Yと同様に構成される。この場合、レート変換部215Cからタップ構築回路221Cには、上述した輝度信号Yc″、シフトトリガSTR″と同様に変更された、色差信号Uc″,Vc″およびシフトトリガSTR″が供給される。これにより、タップ構築回路221Cにおいては、レート変換前の色差信号Ua,Vaにおける色差データの並びで水平5タップを得ることができ、また出力開始ディレイも固定とできる。
次に、図3に示すレート変換回路105の動作を説明する。
入力端子104(図1参照)に入力される画像信号Saを構成する輝度信号Ya、色差信号Ua/Vaは、それぞれSDRAMコントローラ202内のバッファ204Y,204Cにそれぞれ供給される。これらバッファ204Y,204Cのそれぞれには、各ラインで、水平方向の有効画素部分に対応して、入力TG207から書き込みアドレスWADiが供給され、輝度信号Ya、色差信号Ua/Vaが順次書き込まれる。
また、各ラインで、水平方向の有効画素部分が終了した後に、入力TG207から書き込みリクエストWRQが発生される。この書き込みリクエストWRQは、SDRAMコントローラ202内の制御部206に供給される。制御部206は、この書き込みリクエストWRQに対応して、バッファ204Y,204Cに供給すべき読み出しアドレスRADiおよびフレームメモリ201に供給すべき書き込みアドレスWADmを発生する。
制御部206で発生された読み出しアドレスRADiは、バッファ204Y,204Cに供給される。また、制御部206で発生された書き込みアドレスWADは、フレームメモリ201に供給される。これにより、各ラインで、バッファ204Y,204Cに一時的に記憶された、輝度信号Ya、色差信号Ua/Vaの有効画素部分は、このバッファ204Y,204Cから時分割的に読み出され、SDRAMバス203を介してフレームメモリ201に転送され、このフレームメモリ201の所定アドレスに書き込まれる。
また、メモリTG211から読み出しリクエストRRQが発生される。この読み出しリクエストRRQは、一定時間毎に発生される(図5、図6参照)。メモリTG211の垂直カウンタ213は、出力TG217から、出力画像信号Scにおける垂直方向の有効画素部分の開始タイミングで供給される垂直リセット信号VRSで「0」にリセットされる。読み出しリクエストRRQは、最初は垂直カウンタ213のカウント値が「0」となったとき発生されるが、その後はメモリクロックCKm(108MHz)を、n個カウントする毎に、発生される。
この場合、読み出しリクエストRRQの周期tは、出力画像信号Scの1垂直有効期間を、入力画像信号Saのレート変換の対象となるライン数で均等割りして得られた時間である。すなわち、その周期をt、出力画像信号Scの画素周波数をfo、入力画像信号Saの変換対象のライン数をmi、出力画像信号Scの1垂直有効期間のライン数をmo、出力画像信号Scの1ライン当たりの画素数をnoとするとき、t=mo/mi/fo×noである。したがって、上述したnは、n=t×108MHzとなる。
このようにメモリTG211で発生される読み出しリクエストRRQは、SDRAMコントローラ201内の制御部206に供給される。この制御部206は、この読み出しリクエストRRQに対応して、フレームメモリ201に供給すべき読み出しアドレスRADmおよびバッファ205Y,205Cに供給すべき書き込みアドレスWADoを発生する。制御部206で発生される読み出しアドレスRADmは、フレームメモリ201に供給される。また、制御部206で発生される書き込みアドレスWADoは、バッファ205Y,205Yに供給される。
これにより、読み出しリクエストRRQが発生される毎に、フレームメモリ201からは、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/VaがメモリクロックCKm(108MHz)に同期して読み出され、SDRAMバス203を介して、それぞれバッファ205Yおよびバッファ205Cに供給される。この場合、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Va、つまり12ライン分の信号の転送は時分割的に行われる。
バッファ205Yに供給される10ライン分の輝度信号Yaのそれぞれは、当該バッファ205Yを構成する10ライン分のSRAMのそれぞれに書き込まれる。同様に、バッファ205Cに供給される2ライン分の色差信号Ua/Vaのそれぞれは、当該バッファ205Cを構成する2ライン分のSRAMのそれぞれに書き込まれる。
また、読み出しリクエストRRQに対応して、上述したようにフレームメモリ201からバッファ205Y,205Cに輝度信号Ya、色差信号Ua/Vaが転送されて書き込まれた後に、メモリTG211で、バッファ205Y,205Cに供給すべき読み出しアドレスRADoおよび後述するレート変換部215Y,215Cに供給すべき書き込みアドレスWADrが発生される。そして、読み出しアドレスRADoは、バッファ205Y,205Cに供給される。また、書き込みアドレスWADrは、レート変換部215Y,215Cに供給される。
これにより、読み出しリクエストRRQが発生される毎に、フレームメモリ201から転送されてバッファ205Y,205Cに一時的に記憶された、10ライン分の輝度信号Ya、2ライン分の色差信号Ua/Vaは、出力クロックCKm(108MHz)に同期してレート変換部215Y,215Cに転送され、このレート変換部215Y,215Cに書き込まれる。
レート変換部215Yは、バッファ205Yが10ライン分のSRAMで構成されているのに対応して、10系統のSRAMで構成されている。同様に、レート変換部215Cは、バッファ205Cが2ライン分のSRAMで構成されているのに対応して、2系統のSRAMで構成されている。そのため、バッファ205Y,205Cからレート変換部215Y,215Cには、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Va、つまり12ライン分の信号が並行して転送されて書き込まれる。
また、出力TG217のアドレス発生部218から、出力画像信号Scにおける垂直方向の有効画素部分の各ラインで、その水平方向の有効部分に対応して読み出しアドレスRADrが発生される。この読み出しアドレスRADrは、レート変換部215Y,215Cに供給される。
この場合、アドレス発生部218は、出力画像信号Scの水平方向および垂直方向の有効画素部分の開始画素位置(図4のP点参照)で、基準アドレスRADr0を発生する。この基準アドレスRADr0は、レート変換部215Y,215Cにおける、入力画像信号Saのレート変換対象部分ATの開始位置(図4のQ点参照)に対応した画素データの記録位置を示すものである。
ここで、アドレス発生部218は、水平方向の有効画素部分の開始画素位置の位相情報を0とし、その後出力クロックCKoが供給される画素位置毎に、水平拡大率の逆数Mhを加算し、加算値が4096より小さいときは、その加算値をその画素位置の水平方向の位相情報hとし、一方、加算値が4096以上となるときは、桁上がりが発生し、その加算値から4096を減算した値を、その画素位置の水平方向の位相情報hとする。そして、アドレス発生部218は、加算値が4096より小さく、桁上がりが発生しないときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置と同じものを出力し、一方桁上がりが発生するときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置のアドレスから1進めたものを出力する。
これにより、加算値が4096より小さく、桁上がりが発生しないときは、その画素位置に対応した読み出しアドレスRADrとして直前の画素位置と同じものが使用され、その画素位置でレート変換部215Y,215Cから直前の画素位置と同じ画素データが読み出される。したがって、レート変換部215Y,215Cでは、レート変換前の輝度信号Ya、色差信号Ua,Vaに対して、水平方向の拡大率に応じて当該水平方向の画素数が増やされた、レート変換後の輝度信号Yc、色差信号Uc,Vcが得られる(図9、図10参照)。
また、アドレス発生部218は、垂直方向の有効画素部分の開始画素位置の位相情報を0とし、その後水平同期信号HDoが発生されるライン毎に、垂直拡大率の逆数Mvを加算し、加算値が4096より小さいときは、その加算値をそのラインの垂直方向の位相情報vとし、一方、加算値が4096以上となるときは、桁上がりが発生し、その加算値から4096を減算した値を、そのラインの垂直方向の位相情報vとする。
そして、アドレス発生部218は、加算値が4096より小さく、桁上がりが発生しないときは、そのラインに対応した読み出しアドレスRADrとして直前のラインと同じものを出力し、一方桁上がりが発生するときは、そのラインに対応した読み出しアドレスRADrとして、入力画像信号Saの次のラインの画素データを読み出すように変更したものを出力する。
これにより、加算値が4096より小さく、桁上がりが発生しないときは、そのラインに対応した読み出しアドレスRADrとして直前のラインと同じものが使用され、そのラインでレート変換部215Y,215Cから直前のラインと同じ画素データが読み出される。したがって、レート変換部215Y,215Cでは、レート変換前の輝度信号Ya、色差信号Ua,Vaに対して、垂直方向の拡大率に応じて当該垂直方向の画素数が増やされた、レート変換後の輝度信号Yc、色差信号Uc,Vcが得られる(図9、図10参照)。
なお、レート変換部215Yからは、上述したように10系統のSRAMより、出力TG217で発生される読み出しアドレスRADrに基づく10ライン分の輝度信号Ycと、1ライン分の画素数だけ小さなアドレスに基づく8ライン分の輝度信号Ycとが得られる。すなわち、レート変換部215Yからは、18ライン分の輝度信号Ycが並列的に得られる(図14A、図15A参照)。この18ライン分の輝度信号Ycは、画像信号処理部106で、出力画像信号Sbを構成する輝度信号Ybにおける注目位置の輝度データを得る際の、予測タップおよびクラスタップを抽出するために用いられる。
同様に、レート変換部215Cからは、上述したように2系統のSRAMから、出力TG217で発生される読み出しアドレスRADrに基づく各2ライン分の色差信号Uc,Vcと、1ライン分の画素数だけ小さなアドレスに基づく各2ライン分の色差信号Uc,Vcとが得られる。すなわち、レート変換部215Cからは、各4ライン分の色差信号Uc,Vcが並列的に得られる(図14B、図15B参照)。この各4ライン分の色差信号Uc,Vcは、画像信号処理部106で、出力画像信号Sbを構成する色差信号Ub,Vbにおける注目位置の色差データを得る際の、予測タップおよびクラスタップを抽出するために用いられる。
このようにレート変換部215Y,215Cで得られる18ライン分の輝度信号Yc、各4ライン分の色差信号Uc,Vcは、垂直方向および時間方向に展開されており、画像信号処理部106で、当該垂直方向および時間方向のタップ(クラスタップ、予測タップ)を容易に抽出できるが、水平方向には展開されておらず、当該水平方向のタップを抽出することは困難である。
タップ構築回路221Y,221Cでは、レート変換部215Y,215Cで得られる10ライン分の輝度信号Yc、各2ライン分の色差信号Uc,Vcに基づいて、水平方向のタップの構築が行われる。タップ構築回路221Yは、18ライン分の輝度信号Ycにそれぞれ対応して18個のシフトレジスタ222-1〜222-18を備えている(図17参照)。同様に、タップ構築回路221Cは、各4ライン分の色差信号Uc,Vcにそれぞれ対応して8個のシフトレジスタを備えている。そして、各レジスタは、構築すべき水平方向のタップ数分のレジスタからなっている。
タップ構築回路221Yを構成するシフトレジスタには、レート変換後の輝度信号が入力される。また、このシフトレジスタには、その輝度信号に輝度データ列における輝度データの変化位置に対応したシフトトリガが供給される。このシフトレジスタには、シフトトリガが供給される毎に、輝度信号の輝度データ列の変換位置に対応した輝度データが順次取り込まれる。これは、タップ構築回路221Cに関しても同様である。
ここで、本実施の形態では、センタータップの変化がレート変換後の輝度信号Ycの輝度データ列の並びと対応するように、輝度信号Ycの輝度データ列における輝度データの変化位置を変更してなる変更輝度データ列がシフトレジスタに入力される。また、この変更輝度データ列は、センタータップを出力するレジスタに対して、その出力側にno個、その入力側にni個のレジスタを備えるとき、各ラインで、最初の(no+ni)個の輝度データが連続して変化したものとされ、シフトレジスタに当該(no+ni)個の輝度データが連続して取り込まれるようにされる。
すなわち、本実施の形態では、レート変換部215Yから、タップ構築部221Yには、輝度信号Ycの輝度データ列(本来の輝度データ列)を変更して得られた輝度信号Yc″が入力され、またこの輝度信号Yc″の輝度データ列における輝度データの変化位置に対応したシフトトリガSTR″が供給される(図24参照)。これは、レート変換部215C、タップ構築回路221Cに関しても同様である。
これにより、タップ構築回路221Y,221Cでは、センタータップの変化がレート変換後の輝度信号Yc、色差信号Uc,Vcの輝度データ列、色差データ列の並びと対応して変化するようになり、レート変換前の輝度信号Ya、色差信号Ua,Vaにおける輝度データ、色差データの並びで水平5タップを得ることができる。また、タップ構築回路221Y,221Cにおける出力開始ディレイを、出力クロックCKoの(no+ni)クロック時間に固定でき、画像信号処理部106で、他の信号、例えば位相情報(phy,pvy),(phc,pvc)との時間調整のために、画素数の変換倍率によって遅延時間を可変できる可変遅延回路を備える必要がなくなる。
図3に示すレート変換回路105においては、メモリTG211から読み出しリクエストRRQが発生され、この読み出しリクエストRRQに基づいてフレームメモリ201から、バッファ205Y,205Cを介し、レート変換部215Y,215Cに、輝度信号Yaおよび色差信号Ua/Vaがライン単位で転送されるものである。したがって、第1のメモリとしてのフレームメモリ201から第2のメモリとしてのレート変換部215Y,215Cへの輝度信号Yaおよび色差信号Ua/Vaの転送周期に変動がなく、各転送周期においてデータ転送帯域を安定確保を図ることができる。これにより、レート変換回路105では、フレームメモリ201からレート変換部215Y,215Cに、各転送周期で、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Va、つまり合わせて12ライン分の信号を安定して転送することができる。
次に、図25を参照して、SDRAMコントローラ202を、さらに詳しく説明する。この図25において、図3と対応する部分には同一符号を付し、適宜その説明を省略する。
SDRAMコントローラ202は、書き込みバッファとしてのバッファ204Y,204C、読み出しバッファとしてのバッファ205Y,205C、コマンドジェネレータ301、モードセット・リフレッシュジェネレータ302、ライトアドレス部303、リードアドレス部304、リードカウンタ305、ライトカウンタ306、リード・ライト制御部307とを備えている。ここで、コマンドジェネレータ301、モードセット・リフレッシュジェネレータ302、ライトアドレス部303、リードアドレス部304、リードカウンタ305、ライトカウンタ306、リード・ライト制御部307は、図3の制御部206に対応している。
また、このSDRAMコントローラ202には、入力画像信号Saに同期した垂直同期信号VDi が入力されると共に、外部パラメータとして、入力画像信号Saの水平方向の有効画素数、入力画像信号Saの垂直方向の有効画素数(有効ライン数)、出力チャネル数、中心位置のフィールドと開始ライン、各出力チャネルの中心位置からの差分が与えられる。
上述したように、1個の読み出しリクエストRRQに対応して、フレームメモリ201(SDRAM)から、10ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaの読み出しが行われるが、ここでは、各1ライン分のデータを、1チャネルのデータとして扱う。
また、中心位置のフィールドは、フレームメモリ201に書き込んでいるフィールドからの相対位置で何フィールド前か指定することになっている。また、その開始ラインは、レート変換対象部分ATに対応したavラインの第1ラインとされる(図4参照)。さらに、各チャネルの位置は、上述した中心位置からの差分、つまり±何フィールド、±何ラインとされる。
リード・ライト制御部307は、入力TG207(図1参照)から供給される書き込みリクエストWRQに対応して、チャネル情報を伴った書き込みフラグWFLを発生し、またメモリTG211(図3参照)から供給される読み出しリクエストRRQに対応して、チャネル情報を伴った読み出しフラグRFLを発生する。
リードカウンタ305は、リード・ライト制御部307からの書き込みフラグWFLの供給に対応して、書き込みバッファとしてのバッファ204Y,204Cに供給すべき読み出しアドレスRADiを発生する。この読み出しアドレスRADiは、バッファ204Y,204Cに供給される。ライトアドレス部303は、リード・ライト制御部307からの書き込みフラグWFLの供給に対応して、フレームメモリ201に供給すべき書き込みアドレスWADmを発生する。この書き込みアドレスWADmは、コマンドジェネレータ301を介してフレームメモリ201に供給される。
リードアドレス部304は、リード・ライト制御部307からの読み出しフラグRFLの供給に対応して、フレームメモリ201に供給すべき読み出しアドレスRADmを発生する。この読み出しアドレスRADmは、コマンドジェネレータ301を介してフレームメモリ201に供給される。ライトカウンタ306は、リード・ライト制御部307からの読み出しフラグRFLの供給に対応して、読み出しバッファとしてのバッファ205Y,205Cに供給すべき書き込みアドレスWADoを発生する。この書き込みアドレスWADoは、バッファ205Y,205Cに供給される。
ここで、リードアドレス発生部304は、各フィールドにおいて、1個目の読み出しフラグRFLに対応して、フレームメモリ201から、入力画像信号Saのレート変換対象部分ATに対応したavラインの第1ラインに係る12チャネルのデータを読み出すための読み出しアドレスRADmを発生する。この読み出しアドレスRADmは、各フィールドの垂直ブランキング期間に、上述したように外部パラメータとして与えられた中心位置のフィールドと開始ライン、各出力チャネルの中心位置からの差分に基づいて計算される。
また、リードアドレス発生部304は、各フィールドにおいて、2〜N個目の読み出しフラグRFLに対応して、それぞれ、フレームメモリ201から、入力画像信号Saのレート変換対象部分ATに対応したavラインの第2〜第Nラインに係る12チャネルのデータを読み出すための読み出しアドレスRADmを発生する。この場合、第1ライン用の読み出しアドレスRADmを順次インクリメントして、第2〜第Nライン用の読み出しアドレスRADmを得ることができる。
このSDRAMコントローラ202のパワーオンシーケンスについて説明する。フレームメモリ(SDRAM)201は、パワーオン時には状態がどのようになっているか分からないので、パワーオン時であって電源安定時間後に、全バンクのプリチャージ、モードセット、リフレッシュを行うように規定されている。しかし、SDRAMコントローラ202として、垂直同期信号VDiの入力があれば、モードセット、リフレッシュを行うようになっているので、垂直同期信号VDiをいくつか入力することによって、自動的にパワーオンシーケンスが実行される。
モードセット・リフレッシュジェネレータ302は、垂直同期信号VDiの入力に伴って、フレームメモリ201のモードセットとリフレッシュの制御フラグを発生する。コマンドジェネレータ301は、その制御フラグに基づいて、フレームメモリ201の制御に必要なコマンドを発生する。
ここで、SDRAMのリフレッシュ周期についてさらに説明する。SDRAMには、書かれたデータを保持するために、リフレッシュという動作が必要である。本実施の形態においては、例えば16Mbit×4bankのSDRAMが使用される。このSDRAMについては、どのメモリメーカでも、リフレッシュ周期は4096回/64msとなっている。入力画像信号Saの1フィールド周期は60Hzまたは50Hzであるので、本実施の形態においては、垂直同期信号VDiが入力される度にブランキング期間を利用して、まとめてリフレッシュを行う。
なお、上述では、便宜上、入力画像信号Saを480i(60Hz)信号、出力画像信号Sbを1080i(60Hz)信号として説明しているが、入力画像信号Saおよび出力画像信号Sbは、それらに限定されるものではない。この場合、入力画像信号Sa、出力画像信号Sbのフォーマットによりフィールド周期、ブランキング期間が異なるので、垂直同期信号VDiの2回または3回の入力でリフレッシュを分割していって4096回/64msの条件を満たすリフレッシュのモードも設けた。
図25に示すSDRAMコントローラ202の動作を説明する。
モードセット・リフレッシュジェネレータ302、ライトアドレス部303、リードアドレス部304およびリード・ライト制御部307は、垂直同期信号VDiの入力により、フレームメモリ201に対する書き込み、読み出しを始める前に、フレームメモリ201のモードセットおよびリフレッシュ、フレームメモリ201の書き込みアドレスWADm、フレームメモリ201の読み出しアドレスRADmの計算をする。なお、ライトアドレス部303とリードアドレス部304とを別個に設けてあるのは、フレームメモリ201に対する書き込みと、フレームメモリ201からの読み出しとを独立して行うためである。
垂直同期信号VDiの入力があると、モードセット・リフレッシュジェネレータ302では、フレームメモリ201のモードセットとリフレッシュを行うための制御フラグが立てられる。この制御フラグはコマンドジェネレータ301に供給される。コマンドジェネレータ301では、制御フラグに基づいて、フレームメモリ201の制御に必要なコマンドが発生される。このコマンドはフレームメモリ201に供給される。これにより、垂直同期信号VDiの入力がある毎に、フレームメモリ201のモードセットおよびリフレッシュが行われる。
また、バッファ204Y,204Cのそれぞれには、各ラインで、水平方向の有効画素部分に対応して、入力TG207(図3参照)から書き込みアドレスWADiが供給され、入力画像信号Saを構成する輝度信号Ya、色差信号Ua/Vaが順次書き込まれる。
また、各ラインで、水平方向の有効画素部分が終了した後に、入力TG207から書き込みリクエストWRQがリード・ライト制御部307に供給される。なお、バッファ204Y,204Cは、書き込みリクエストWRQを出した時点から読み出しが行われるまで、新たに入力された次のラインの輝度信号Ya、色差信号Ua/Vaを格納する必要がある。したがって、これらバッファ204Y,204Cとしては、デュアルポートSRAMが使用される。
リード・ライト制御部307は、フレームメモリ201の書き込み、読み出しを判定して、書き込み動作と判断するときは、リードカウンタ305およびライトアドレス部303にチャネル情報を伴った書き込みフラグWFLを供給する。これにより、リードカウンタ305から読み出しアドレスRADiが発生されてバッファ204Y,204Cに供給されると共に、ライトアドレス303から書き込みアドレスWADmが発生され、コマンドジェネレータ301を介してフレームメモリ201に供給される。
そのため、各ラインで、バッファ204Y,204Cに一時的に記憶された、輝度信号Ya、色差信号Ua/Vaの有効画素部分は、このバッファ204Y,204Cから読み出され、SDRAMバス203を介してフレームメモリ201に転送され、このフレームメモリ201の所定アドレスに書き込まれる。この場合、輝度信号Ya、色差信号Ua/Vaは、バッファ204Y,204Cに、8ビット、かつ入力クロックCKiのレートで入力されるが、このバッファ204Y,204Cからフレームメモリ201には、輝度信号Ya、色差信号Ua/Vaがそれぞれ32ビットのデータに変換され、メモリクロックCKm(108MHz)のレートで転送される。この場合、2チャネル分のデータ、つまり輝度信号Ya、色差信号Ua/Vaは、時分割的にSDRAMバス203を介してフレームメモリ201に転送されて書き込まれる。
また、メモリTG211からリード・ライト制御部307に読み出しリクエストRRQが供給される。リードライト・制御部307は、フレームメモリ201の書き込み、読み出しを判定して、読み出し動作と判断するときは、リードアドレス部304およびライトカウンタ306にチャネル情報を伴った読み出しフラグRFLを供給する。これにより、リードアドレス部304から読み出しアドレスRADmが発生され、コマンドジェネレータ301を介してフレームメモリ201に供給されると共に、ライトカウンタ306から書き込みアドレスWADoが発生されてバッファ205Y,205Cに供給される。
そのため、読み出しリクエストRRQに対応して、リード・ライト制御部307から読み出しフラグRFLが発生される毎に、フレームメモリ201からは、12チャネル分のデータが、メモリクロックCKm(108MHz)に同期して読み出され、SDRAMバス203を介して、それぞれバッファ205Yおよびバッファ205Cに転送されて書き込まれる。この場合、12チャネル分のデータは、時分割的に転送される。
また、読み出しリクエストRRQに対応して、上述したようにフレームメモリ201からバッファ205Y,205Cに12チャネル分のデータが転送されて書き込まれた後に、メモリTG211(図3参照)から、バッファ205Y,205Cに読み出しアドレスRADoが供給されると共に、レート変換部215Y,215C(図3参照)に書き込みアドレスWADrが供給される。
これにより、読み出しリクエストRRQが発生される毎に、フレームメモリ201から転送されてバッファ205Y,205Cに一時的に記憶された、12チャネル分のデータは、レート変換部215Y,215Cに転送されて格納される。
図26は、リード・ライト制御部307の構成を示している。このリード・ライト制御部307は、ライトチャネルカウンタ311、リードチャネルカウンタ312、読み出しリクエストホールド部313およびチャネルカウンタ314を備えている。入力TG207(図3参照)で発生される書き込みリクエストWRQは、ライトチャネルカウンタ311およびリードチャネルカウンタ312に供給される。また、メモリTG211(図3参照)で発生される読み出しリクエストRRQは、リードチャネルカウンタ312および読み出しリクエストホールド部313に供給される。
ライトチャネルカウンタ311は、書き込みリクエストWRQが供給されるとき、自己のカウント値として書き込みチャネル数をセットし、各チャネルの書き込みが始まるときにデクリメントする。このカウント値が0になったときに、書き込み動作が終了することになる。また、ライトチャネルカウンタ311は、上述したように自己のカウント値として書き込みチャネル数をセットするとき、チャネルカウンタ314にカウントスタートフラグCSFを送り、チャネルカウンタ314のカウントをスタートさせる。
ここで、ライトチャネルカウンタ311は、書き込みリクエストWRQが供給されるとき、自己のカウント値として2をセットする。このように2をセットするのは、輝度信号Ya、色差信号Ua/Vaを分けてフレームメモリ201に書き込んでおり、2チャネル分のデータの書き込みを必要としているからである。
リードチャネルカウンタ312は、読み出しリクエストRRQが供給されるとき、あるいはリクエストホールド部313に読み出しリクエストRRQがホールドされているとき、ライトチャネルカウンタ311のカウント値を見て、書き込み中でないときは、自己のカウント値として読み出しチャネル数をセットし、各チャネルの読み出しが始まるときにデクリメントする。このカウント値が0になったときに、読み出し動作が終了することになる。
また、リードチャネルカウンタ312は、上述したように自己のカウント値として読み出しチャネル数をセットするとき、チャネルカウンタ314にカウントスタートフラグCSFを送り、チャネルカウンタ314のカウントをスタートさせる。ただし、後述するように、書き込みリクエストWRQと読み出しリクエストRRQが同時に入力されるときは、カウント値として読み出しチャネル数をセットするが、チャネルカウンタ314にカウントスタートフラグCSFを供給することはしない。
チャネルカウンタ314は、カウントスタートフラグCSFが供給されるとき、カウント動作を開始する。この場合、チャネルカウンタ314は、メモリクロックCKm(108MHz)に同期して、カウント値を0から順次インクリメントしていき、そのカウント値が1チャネル分のデータ長に対応した最大値MAXとなったら、そのカウント値を0に戻し、カウントスタートフラグCSFの入力待ち状態に戻る。
ここで、最大値MAXは、バッファ204Y,204Cからフレームメモリ201への、あるいはフレームメモリ201からバッファ205Y,205Cへの1チャネル分のデータの転送時間に対応した、メモリクロックCKmのクロック数に相当する。上述したように、入力画像信号Saが480i信号であるとき、水平方向の有効画素数は720画素であり、8ビットデータが32ビットデータに変換された状態で転送されるので、MAX=720/4=180である。
また、このチャネルカウンタ314は、カウント値が1となるときスタートフラグSFLを発生してライトチャネルカウンタ311およびリードチャネルカウンタ312に供給する。さらに、このチャネルカウンタ314は、カウント値が最大値MAXとなるときエンドフラグEFLを発生してライトチャネルカウンタ311およびリードチャネルカウンタ312に供給する。
ライトチャネルカウンタ311は、チャネルカウンタ314からスタートフラグSFLが供給されるとき、自己のカウント値が0でないときは、そのカウント値に対応したチャネル情報を伴った書き込みフラグWFLを発生して、リードカウンタ305およびライトアドレス部303に供給し、さらに自己のカウント値をデクリメントする。
これにより、リードカウンタ305からそのチャネル情報に対応したチャネルのデータを読み出すための読み出しアドレスRADiが発生され、またライトアドレス部303からそのチャネル情報に対応したチャネルのデータを書き込むための書き込みアドレスWADmが発生され、バッファ204Y,204Cからフレームメモリ201に、チャネル情報に対応したチャネルのデータが転送されて書き込まれる。
ライトチャネルカウンタ311は、さらに、チャネルカウンタ314からエンドフラグEFLが供給されるとき、自己のカウント値が0でないときは、次のチャネルの書き込みのために、カウントスタートフラグCSFを発生して、チャネルカウンタ314に供給する。
また、リードチャネルカウンタ312は、チャネルカウンタ314からスタートフラグSFLが供給されるとき、ライトチャネルカウンタ311のカウント値が0であって、自己のカウント値が0でないときは、そのカウント値に対応したチャネル情報を伴った読み出しフラグRFLを発生して、リードアドレス部304およびライトカウンタ306に供給し、さらに自己のカウント値をデクリメントする。
これにより、リードアドレス部304からそのチャネル情報に対応したチャネルのデータを読み出すための読み出しアドレスRADmが発生され、またライトカウンタ306からそのチャネル情報に対応したチャネルのデータを書き込むための書き込みアドレスWADoが発生され、フレームメモリ201からバッファ205Y,205Cに、チャネル情報に対応したチャネルのデータが転送されて書き込まれる。
リードチャネルカウンタ312は、さらに、チャネルカウンタ314からエンドフラグEFLが供給されるとき、ライトチャネルカウンタ311のカウント値が0であって、自己のカウント値が0でないときは、次のチャネルの読み出しのために、カウントスタートフラグCSFを発生して、チャネルカウンタ314に供給する。
また、読み出しリクエストホールド部313は、読み出しリクエストRRQが供給された場合、ホールド数をインクリメントする。さらに、この読み出しリクエストホールド部313は、当該読み出しリクエストRRQに基づいて、リードチャネルカウンタ312に読み出しチャネル数がカウント値としてセットされ、それが0となるとき、そのホールド数をデクリメントする。
なお、書き込み側には、書き込みリクエストホールドがない。それは、読み出しよりも書き込みリクエストWRQを優先しており、またタイミング的に書き込み中に書き込みリクエストWRQが供給されることがないからである。
以上の構成において、まず、読み出しリクエストRRQまたは書き込みリクエストWRQの待機状態について説明する。読み出しも書き込みをされていない初期状態にあるとき、この状態になる。ライトチャネルカウンタ311、リードチャネルカウンタ312、読み出しリクエストホールド部313およびチャネルカウンタ314は、初期状態の0になっている。ライトチャネルカウンタ311は書き込みリクエストWRQの入力を待っており、リードチャネルカウンタ312は読み出しリクエストRRQの入力を待っている。読み出しリクエストホールド部313も、読み出しリクエストRRQを待っている。
次に、初期状態で書き込みリクエストWRQが単独で供給された場合の動作を、図27の「(1)書き込み・読み出し単独」の部分を用いて説明する。
ライトチャネルカウンタ311は、入力画像信号Saに係る水平同期信号HDiに同期して書き込みリクエストWRQが入力された場合(図27A,B)、自己のカウント値として書き込みチャネル数である2をセットし(図27E)、チャネルカウンタ314にカウントスタートフラグCSFを供給する。チャネルカウンタ314は、メモリクロックCKmに同期してカウント値をインクリメントし、そのカウント値が1となるとき、スタートフラグSFLを発生する。なお、図27Iは、チャネルカウンタ314のカウント値を示しており、0が付されていない部分は、1から最大値MAXまで順次変化していることを表している。
そのため、ライトチャネルカウンタ311は、チャネル情報を伴った書き込みフラグWFLを発生する(図27D)。これにより、1チャネル目の書き込みが開始される。このとき、ライトチャネルカウンタ311は、さらに自己のカウント値をデクリメントして1とする(図27E)。なお、図27Jは、SDRAMバス203のデータ転送状態を示している。
この1チャネル目の書き込みの終了に対応して、すなわちチャネルカウンタ314のカウント値が最大値MAXとなるとき、当該チャネルカウンタ314は、エンドフラグEFLを発生する。ライトチャネルカウンタ311は、自己のカウント値が0でなく1であるので(図27E)、チャネルカウンタ314に再度カウントスタートフラグCSFを供給する。チャネルカウンタ314は、メモリクロックCKmに同期してカウント値をインクリメントし、そのカウント値が1となるとき、スタートフラグSFLを発生する。
そのため、ライトチャネルカウンタ311は、チャネル情報を伴った書き込みフラグWFLを発生する(図27D)。これにより、2チャネル目の書き込みが開始される。このとき、ライトチャネルカウンタ311は、さらに自己のカウント値をデクリメントして0とする(図27E)。
この2チャネル目の書き込みの終了に対応して、すなわちチャネルカウンタ314のカウント値が最大値MAXとなるとき、当該チャネルカウンタ314は、エンドフラグEFLを発生する。ライトチャネルカウンタ311は、自己のカウント値が0であるので、カウントスタートフラグCSFの発生等は行わない。これにより、書き込みリクエストWRQの入力による2チャネル分の書き込みが終了する。
次に、初期状態で読み出しリクエストRRQが単独で供給された場合の動作を、図27の「(1)書き込み・読み出し単独」の部分を用いて説明する。
リードチャネルカウンタ312は、読み出しリクエストRRQが入力された場合(図27C)、ライトチャネルカウンタ311のカウント値が0となっているので(図27E)、自己のカウント値として読み出しチャネル数をセットする(図27G)。なお、読み出しチャネル数は実際には例えば12等であるが、図27の例では便宜上4としている。また、読み出しリクエストRRQが入力された場合(図27C)、読み出しリクエストホールド部313は、ホールド数をインクリメントして1とする(図27H)。
リードチャネルカウンタ312は読み出しチャネル数をセットした後、チャネルカウンタ314にカウントスタートフラグCSFを供給する。チャネルカウンタ314は、メモリクロックCKmに同期してカウント値をインクリメントし、そのカウント値が1となるとき、スタートフラグSFLを発生する。そのため、リードチャネルカウンタ312は、チャネル情報を伴った読み出しフラグRFLを発生する(図27F)。これにより、1チャネル目の読み出しが開始される。このとき、リードチャネルカウンタ312は、さらに自己のカウント値をデクリメントする(図27G)。
この1チャネル目の読み出しの終了に対応して、すなわちチャネルカウンタ314のカウント値が最大値MAXとなるとき、当該チャネルカウンタ314は、エンドフラグEFLを発生する。リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値が0であって、自己のカウント値が0でないので、チャネルカウンタ314にカウントスタートフラグCSFを再度供給する。チャネルカウンタ314は、メモリクロックCKmに同期してカウント値をインクリメントし、そのカウント値が1となるとき、スタートフラグSFLを発生する。
そのため、リードチャネルカウンタ312は、チャネル情報を伴った読み出しフラグRFLを発生する(図27F)。これにより、2チャネル目の読み出しが開始される。このとき、リードチャネルカウンタ312は、さらに自己のカウント値をデクリメントする(図27G)。
以下、同様にして、最後のチャネルまでの読み出しが行われる。最後のチャネルの読み出しの終了に対応して、すなわちチャネルカウンタ314のカウント値が最大値MAXとなるとき、当該チャネルカウンタ314は、エンドフラグEFLを発生する。リードチャネルカウンタ312は、自己のカウント値が0であるので、カウントスタートフラグCSFの発生等は行わない。これにより、読み出しリクエストRRQの入力による読み出しチャネル数分の読み出しが終了する。なお、読み出しリクエストホールド部313は、リードチャネルカウンタ312のカウント値が0となるとき、ホールド数をデクリメントして0とする(図27H)。
次に、初期状態で書き込みリクエストWRQと読み出しリクエストRRQとが同時に入力された場合の動作を説明する。
この場合、リードチャネルカウンタ312は、読み出しリクエストRRQと書き込みリクエストWRQの両方を見ているので、自己のカウント値として読み出しチャネル数をセットするが、チャネルカウンタ314にカウントスタートフラグCSFを供給することは行わない。
またこの場合、ライトチャネルカウンタ311は、自己のカウント値として書き込みチャネル数である2をセットし、チャネルカウンタ314にカウントスタートフラグCSFを供給する。そのため、書き込みに関しては、上述した書き込みリクエストWRQが単独で供給された場合の動作と同様に行われる。
また、2チャネル目の書き込みの終了に対応して、上述したように、チャネルカウンタ314でエンドフラグEFLが発生された場合、ライトチャネルカウンタ311は、自己のカウント値が0であるので、カウントスタートフラグCSFの発生等は行わず、これにより書き込み動作が終了する。
しかしこの場合、リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値が0であって、自己のカウント値が0でないので、チャネルカウンタ314にカウントスタートフラグCSFを供給する。これにより、書き込み動作が終了した後に、読み出し動作が開始される。この読み出し動作は、上述した読み出しリクエストRRQが単独で供給された場合の動作と同様に行われる。
次に、書き込みの動作中に、読み出しリクエストRRQが供給された場合の動作を、図27の「(2)書き込み中読み出し」の部分を用いて説明する。
リードチャネルカウンタ312は、書き込みの動作中に、読み出しリクエストRRQが入力された場合(図27C)、ライトチャネルカウンタ311のカウント値が0でないので、自己のカウント値として読み出しチャネル数をセットすることも、チャネルカウンタ314にカウントスタートフラグCSFを供給することも行わない。
この場合、読み出しリクエストホールド部313は、読み出しリクエストRRQのホールド数をインクリメントして1とする(図27H)。なお、リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値に基づいて書き込みの動作中であるか否かを判定する。すなわち、カウント値が0でないときは書き込みの動作中であると判断し、カウント値が0であるときは書き込みの動作中でないと判断する。
2チャネル目の書き込みの終了に対応して、上述したように、チャネルカウンタ314でエンドフラグEFLが発生された場合、ライトチャネルカウンタ311は、自己のカウント値が0であるので、カウントスタートフラグCSFの発生等を行わず、これにより書き込み動作が終了する。
またこの場合、リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値が0であるが、自己のカウント値も0であるので、自己のカウント値として読み出しチャネル数をセットすることも、チャネルカウンタ314にカウントスタートフラグCSFを供給することも行わない。
しかし、リードチャネルカウンタ312は、読み出しリクエストホールド部313に読み出しリクエストRRQがホールドされているので、自己のカウント値として読み出しチャネル数をセットし(図27G)、その後にチャネルカウンタ314にカウントスタートフラグCSFを供給する。これにより、書き込み動作が終了した後に、読み出し動作が開始される。この読み出し動作は、上述した読み出しリクエストRRQが単独で供給された場合の動作と同様に行われる。読み出しリクエストホールド部313は、読み出しの動作が終了し、リードチャネルカウンタ312のカウント値が0となるとき、ホールド数をデクリメントして0とする(図27H)。
なお、リードチャネルカウンタ312は、読み出しリクエストホールド部313のホールド数に基づいて読み出しリクエストRRQがホールドされているか否かを判定する。すなわち、ホールド数が0でないときはホールドされていると判断し、ホールド数が0であるときはホールドされていないと判断する。
次に、読み出しの動作中に、書き込みリクエストWRQが供給された場合の動作を、図27の「(3)読み出し中書き込み」の部分を用いて説明する。
ライトチャネルカウンタ311は、書き込みリクエストWRQが入力された場合(図27B)、自己のカウント値として書き込みチャネル数である2をセットし(図27E)、チャネルカウンタ314にカウントスタートフラグCSFを供給する。この場合、読み出しの動作中であるので、チャネルカウンタ314は、リードチャネルカウンタ312からのカウントスタートフラグCSFにより、既に、カウント動作が開始されている(図27I)。
この読み出し中のチャネルの終了に対応して、すなわちチャネルカウンタ314のカウント値が最大値MAXとなるとき、当該チャネルカウンタ314は、エンドフラグEFLを発生する。リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値が0でないので(図27E)、チャネルカウンタ314にカウントスタートフラグCSFを供給しない。
このとき、ライトチャネルカウンタ311は、自己のカウント値が0でないので、カウントスタートフラグCSFを発生して、チャネルカウンタ314に供給する。これにより、読み出しの動作が一時的に停止されて、書き込みの動作が開始される。
2チャネル目の書き込みの終了に対応して、上述したように、チャネルカウンタ314でエンドフラグEFLが発生された場合、ライトチャネルカウンタ311は、自己のカウント値が0であるので、カウントスタートフラグCSFの発生等を行わず、これにより書き込み動作が終了する。
またこの場合、リードチャネルカウンタ312は、ライトチャネルカウンタ311のカウント値が0であるが、自己のカウント値は0でないので(図27の例では、カウント値は2)、チャネルカウンタ314にカウントスタートフラグCSFを供給する。これにより、書き込み動作が終了した後に、読み出し動作が再開される。なお、読み出しの動作が終了し、リードチャネルカウンタ312のカウント値が0となるとき、ホールド数をデクリメントして0とする(図27H)。
図28、図29のフローチャートは、上述したリード・ライト制御部307の動作を、ソフトウェアで実現する際の処理手順を示している。
まず、ステップST11で処理を開始し、ステップST12で、W=0,R=0、RH=0、CH=0に設定する。ここで、Wはライトチャネルカウンタ311のカウント値に対応し、Rはリードチャネルカウンタ312のカウント値に対応し、RHは読み出しリクエストホールド部313のホールド数に対応し、CHはチャネルカウンタ314のカウント値に対応する。
次に、ステップST13で、リクエスト入力があるか否かを判定する。書き込みリクエストWRQおよび読み出しリクエストRRQの両方の入力があるときは、ステップST14で、読み出しリクエストRRQのホールド数RHをインクリメントする。そして、ステップST15で、カウント値Rとして、読み出しチャネル数、例えば12などをセットし、ステップST16で、カウント値Wとして、書き込みチャネル数である2をセットする。
ステップST13で、書き込みリクエストWRQのみ入力された場合は、直ちにステップST16に進み、カウント値Wとして、書き込みチャネル数である2をセットする。このステップST16の処理の後に、ステップST17に進む。このステップST17では、カウントスタートフラグCSFを出力する。そして、ステップST18で、カウント値CHのカウントアップを開始する。このカウントアップは、メモリクロックCKmに同期して行う。
次に、ステップST19で、CH=1であるか否かを判定する。CH=1であるときは、ステップST20で、カウント値Wに対応したチャネル情報を伴った書き込みフラグWFLを出力し、リードカウンタ305、ライトアドレス部303(図26参照)に供給する。また、このステップST20で、カウント値Wをデクリメントする。このステップST20の処理の後に、ステップST21に進む。
ステップST21では、CH=MAXであるか否かを判定する。CH=MAXであるときは、ステップST22で、CH=0として、そのカウントアップを停止する。そして、ステップST23で、カウント値Wが0であるか否かを判定する。W=0でないときは、ステップST17に戻り、次のチャネルについての書き込み処理に移行する。
上述したステップST21でCH=MAXでないときは、ステップST24で読み出しリクエストRRQの入力があるか否かを判定する。読み出しリクエストRRQの入力があるときは、ステップST25で、読み出しリクエストRRQのホールド数RHをインクリメントする。ステップST24で読み出しリクエストRRQの入力がないとき、あるいはステップST25の処理の後、ステップST21に戻る。これにより、書き込み動作中に読み出しリクエストRRQの入力があるときは、その読み出しリクエストRRQのホールドが行われる。
上述したステップST23でW=0であるときは、書き込みが終了したので、ステップST26で、カウント値Rが0であるか否かを判定する。R=0であるときは、ステップST27で、読み出しリクエストRRQのホールド数RHが0であるか否かを判定する。RH=0であるときは、読み出しの中断および読み出しリクエストRRQのホールドもないので、ステップST12に戻り、待機状態に移行する。
上述したステップST13で読み出しリクエストRRQのみ入力されたときは、ステップST28で、ホールド数RHをインクリメントし、その後にステップST29に進む。このステップST29では、カウント値Rとして、読み出しチャネル数、例えば12などをセットする。そして、ステップST30で、カウントスタートフラグCSFを出力する。上述したステップST26でR=0でないときも、ステップST30に進む。そして、ステップST31で、カウント値CHのカウントアップを開始する。このカウントアップは、メモリクロックCKmに同期して行う。
次に、ステップST32で、CH=1であるか否かを判定する。CH=1であるときは、ステップST33で、カウント値Rに対応したチャネル情報を伴った読み出しフラグRFLを出力し、リードアドレス部304、ライトカウンタ306(図26参照)に供給する。また、このステップST33で、カウント値Rをデクリメントする。このステップST33の処理の後に、ステップST34に進む。
ステップST34では、CH=MAXであるか否かを判定する。CH=MAXであるときは、ステップST35で、CH=0として、そのカウントアップを停止する。そして、ステップST36で、カウント値Wが0であるか否かを判定する。W=0でないときは、後述するように、読み出し動作中に書き込みリクエストWRQの入力があったことを意味し、ステップST17に戻り、書き込み処理に移行する。一方、ステップST36で、W=0であるときは、ステップST37に進む。
このステップST37では、カウント値Rが0であるか否かを判定する。R=0でないときは、ステップST30に戻り、次のチャネルついての読み出し処理に移行する。一方、R=0であるときは、読み出しチャネル数分の読み出しが終了したので、ステップST38で、読み出しリクエストRRQのホールド数RHをデクリメントする。
次に、ステップST39で、ホールド数RHが0であるか否かを判定する。RH=0でないときは、ステップST29に戻り、ホールドされている次の読み出しリクエストRRQに対応した読み出し処理に移行する。一方、RH=0であるときは、読み出しリクエストRRQのホールドがないので、ステップST12に戻り、待機状態に移行する。
上述したステップST34でCH=MAXでないときは、ステップST40で、読み出しリクエストRRQの入力があるか否かを判定する。読み出しリクエストRRQの入力があるときは、ステップST41で、読み出しリクエストRRQのホールド数RHをインクリメントし、その後にステップST42に進む。ステップST40で読み出しリクエストRRQの入力がないときは、直ちにステップST42に進む。これにより、読み出し動作中に読み出しリクエストRRQの入力があるときは、その読み出しリクエストRRQのホールドが行われる。
また、ステップST42では、書き込みリクエストWRQの入力があるか否かを判定する。書き込みリクエストWRQの入力があるときは、ステップST43で、カウント値Wとして、書き込みチャネル数である2をセットする。ステップST42で書き込みリクエストWRQの入力がないとき、あるいはステップST43の処理の後、ステップST34に戻る。これにより、読み出し動作中に書き込みリクエストWRQの入力があるときは、上述したステップST36で、読み出し処理を停止して、書き込み処理に移行できる。
また、ステップST26でR=0でないときは、ステップST30に進み、読み出し処理に移行する。これにより、書き込みリクエストWRQと同時に読み出しリクエストRRQの入力があったとき、および読み出し動作中に書き込みリクエストWRQの入力があって読み出し処理の停止があったとき、書き込み動作が終了した後に、読み出し処理に移行できる。
以上説明したように、図25に示すSDRAMコントローラ202では、書き込みリクエストWRQによる書き込みと読み出しリクエストRRQによる読み出しとが、リード・ライト制御部307によって制御される。この場合、読み出しリクエストRRQによる読み出しに対して、書き込みリクエストWRQによる書き込みが優先され、同一のSDRAMバス203を介して行われる書き込みと読み出しの調整が行われる。これにより、書き込みリクエストWRQによる書き込みのタイミングに拘わらず、上述したように読み出しリクエストRRQを一定時間毎に入力して読み出すことが可能になる。
なお、書き込みリクエストWRQが読み出しリクエストRRQに優先する代わりに、読み出しリクエストRRQが書き込みリクエストWRQに優先するようにしてもよい。その場合にも、同一のSDRAMバス203を介して行われる書き込みと読み出しの調整が行われるため、書き込みリクエストWRQによる書き込みのタイミングに拘わらず、読み出しリクエストRRQを一定時間毎に入力して読み出すことが可能になる。
ただし、上述したように書き込みチャネル数は2であり、読み出しチャネル数は例えば12である。そのため、上述したように書き込みリクエストWRQが読み出しリクエストRRQに優先するようにした場合、読み出しリクエストRRQによる読み出しの待ち時間は最大でも2チャネル分である。しかし、逆に、書き込みリクエストWRQが読み出しリクエストRRQに優先するようにした場合、書き込みリクエストWRQによる書き込みの待ち時間は、最大で読み出しチャネル数分、例えば12チャネル分となる。
書き込みリクエストWRQは入力画像信号Saの水平同期信号HDiに同期して発生される。この入力画像信号Saが、例えばVTR(Video Tape Recorder)の再生信号である場合、その水平周期に揺らぎが発生する。しかし、上述したように、図25に示すSDRAMコントローラ202では、書き込みリクエストWRQによる書き込みのタイミングに拘わらず、読み出しリクエストRRQを一定時間毎に入力して読み出すことが可能である。したがって、図25に示すSDRAMコントローラ202を用いることで、入力画像信号Saの水平周期の揺らぎを吸収でき、その揺らぎを吸収するTBC(Time Base Corrector)等の回路を省略できる。
図30は、入力画像信号SaのタイミングとSDRAMバス203のデータ転送状態の一例を示すものとする。図30Aは、入力画像信号Saを示しているが、その水平期間の変動を強調して示している。図30Bは、SDRAMバス203のデータ転送状態を示している。この例では、書き込みチャネル数は2、読み出しチャネル数は8である。また、WDは書き込みの1チャネル分のデータを示し、RDは読み出しの1チャネル分のデータを示している。
次に、図1に戻って、画像信号処理部106の詳細を説明する。
上述したように、レート変換回路105からは、水平方向および垂直方向の画素数が変換された画像信号Scが出力される。この画像信号Scは、輝度信号Ycおよび色差信号Uc,Vcからなっている。この場合、輝度信号Ycとして、時間方向、垂直方向および水平方向に展開された18ライン×水平5タップの信号が並行して出力される。同様に、色差信号Uc,Vcのそれぞれとして、時間方向、垂直方向および水平方向に展開された4ライン×水平5タップの信号が並行して出力される。
画像信号処理部106では、輝度信号Ycおよび色差信号Uc,Vcに対する処理がそれぞれ独立して行われる。しかし、それらの処理は同様の処理である。そのため、ここでは、輝度信号Ycおよび色差信号Uc,Vcに対する処理をまとめて、画像信号Scに対する処理として説明する。
画像信号処理部106は、レート変換回路105より出力される画像信号Scに基づいて、画像信号Sbにおける注目位置の周辺に位置する複数の画素データをクラスタップとして抽出する、第2のデータ抽出手段としてのクラスタップ抽出回路121を有している。なお、本実施の形態において、画像信号Sbにおける注目位置は、ラスタースキャン順に順次移動していく。そして、レート変換回路105からは、各注目位置に対応して、その注目位置の周辺に位置する複数の画素データが出力される。
この場合、輝度信号Ycに対する処理では、画像信号Sbにおける各注目位置に対応して、レート変換回路105から並行して出力される18×5=90個の輝度データのなかから所定の複数個の輝度データをクラスタップとして抽出する。同様に、色差信号Uc,Vcのそれぞれに対する処理では、画像信号Sbにおける各注目位置に対応して、レート変換回路105から並行して出力される4×5=20個の色差データのなかから所定の複数個の色差データをクラスタップとして抽出する。
また、画像信号処理部106は、クラスタップ抽出回路121で抽出されたクラスタップに基づいて、画像信号Sbにおける注目位置の画素データが属するクラスを表すクラスコードCLを得るクラス分類回路122を有している。このクラス分類は、例えば、ADRC(Adaptive Dynamic Range Coding)、DPCM(予測符号化)、VQ(ベクトル量子化)等の、何らかの圧縮処理を利用して行われる。
KビットでADRCを行う場合の説明を行う。KビットADRCにおいては、クラスタップに含まれる画素データの最大値MAXと最小値MINの差分であるダイナミックレンジDR=MAX−MINが検出され、このダイナミックレンジDRに基づいて、クラスタップに含まれるそれぞれの画素データがKビットに再量子化される。
すなわち、クラスタップに含まれるそれぞれの画素データについて、その画素データから最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。これにより、クラスタップを構成するそれぞれの画素データがKビットに再量子化され、それを所定の順番で並べたビット列がクラスコードCLとして出力される。
したがって、1ビットADRCにおいては、このクラスタップに含まれるそれぞれの画素データについて、その画素データから最小値MINが減算され、その減算値がDR/2で除算される。これにより、クラスタップに含まれるそれぞれの画素データは1ビットに再量子化され、それを所定の順番で並べたビット列がクラスコードCLとして出力される。
また、画像信号処理部106は、ROM(read only memory)123を有している。このROM123には、各クラスの係数種データが記憶されている。後述する推定予測演算回路126では、予測タップとしての画素データxiと、係数データWiとから、(1)式の推定式によって、画像信号Sbにおける注目位置の画素データyが求められる。この(1)式において、nは、予測タップとしての画素データxiの個数である。
ROM123に記憶される係数種データは、上述した推定式の係数データWi(i=1〜n)を生成するための、位相情報h,vおよび画質調整情報f,gをパラメータとする生成式の係数データである。(2)式は、その生成式の一例を示している。ここで、位相情報hは水平方向の位相情報であり、位相情報vは垂直方向の位相情報である。また、画質調整情報fは解像度を調整するための画質調整情報であり、画質調整情報gはノイズ抑圧度を調整するための画質調整情報である。ROM123には、例えば、(2)式の生成式における係数データである係数種データwi0〜wi30(i=1〜n)が、クラス毎に、記憶されている。この係数種データの生成方法については後述する。
また、画像信号処理部106は、画像信号Sbにおける注目位置の画素データを求めるための係数データWiを生成する係数生成回路124を有している。この係数生成回路124は、クラス分類回路122で得られたクラスコードCLが表すクラスの係数種データwi0〜wi30をROM123から読み出し、さらにレート変換回路105より出力される画像信号Sbにおける注目位置の位相情報h,v、システムコントローラ101から供給される画質調整情報f,gの値を用い、(2)式の生成式によって、係数データWiを生成する。
ここで、位相情報h,vは、輝度信号Ycに対する処理では、レート変換回路105の出力TG217(図3参照)で得られる位相情報phy,pvyであり、一方色差信号Uc,Vcに対する処理では、レート変換回路105の出力TG217(図3参照)で得られる位相情報phc,pvcである(図3参照)。なお、レート変換回路105から出力される位相情報h,vと画像信号Scとの間には、画像信号Scの系にタップ構築回路221Y,221Cが存在することから、時間ずれが発生している。
そのため、図示せずも、実際には、例えば位相情報h,vの系に、時間調整用の遅延回路を配置することになる。この場合、本実施の形態では、上述したようにタップ構築回路221Y,221Cにおける出力開始ディレイが画素数の変換倍率によらず一定となるので、固定遅延回路でよい。
また、画像信号処理部106は、レート変換回路105より出力される画像信号Scに基づいて、画像信号Sbにおける注目位置の周辺に位置する複数の画素データを予測タップとして抽出する、第1のデータ抽出手段としての予測タップ抽出回路125を有している。
この場合、輝度信号Ycに対する処理では、画像信号Sbにおける各注目位置に対応して、レート変換回路105から並行して出力される18×5=90個の輝度データのなかから所定の複数個の輝度データを予測タップとして抽出する。同様に、色差信号Uc,Vcのそれぞれに対する処理では、画像信号Sbにおける各注目位置に対応して、レート変換回路105から並行して出力される4×5=20個の色差データのなかから所定の複数個の色差データを予測タップとして抽出する。
また、画像信号処理部106は、推定予測演算回路126を有している。この推定予測演算回路126は、予測タップ抽出回路125で抽出された予測タップとしての画素データxi(i=1〜n)と、係数生成回路124で生成された係数データWi(i=1〜n)とを用い、(1)式の推定式に基づいて、画像信号Sbにおける注目位置の画素データyを算出する。この推定予測演算回路126で順次算出される、画像信号Sbにおける各注目位置の画素データyは、出力端子107に出力される。
次に、画像信号処理部106の動作を説明する。
レート変換回路105より出力される画像信号Scはクラスタップ抽出回路121に供給される。このクラスタップ抽出回路121では、画像信号Scに基づいて、画像信号Sbにおける注目位置の周辺に位置する複数の画素データがクラスタップとして抽出される。
クラスタップ抽出回路121で抽出されたクラスタップはクラス分類回路122に供給される。このクラス分類回路122では、クラスタップとしての複数の画素データに、例えばADRC等の圧縮処理が施されて、画像信号Sbにおける注目位置の画素データが属するクラスを表すクラスコードCLが得られる。このクラスコードCLは係数生成回路124に供給される。
この係数生成回路124には、レート変換回路105から、画像信号Scにおける注目位置の位相情報h,vが供給され、またシステムコントローラ101から画質調整情報f,gが供給される。これにより、係数生成回路124では、画像信号Scにおける各注目位置に対応して、ROM123からクラスコードCLが表すクラスの係数種データwi0〜wi30(i=1〜n)が読み出され、位相情報h,vおよび画質調整情報f,gの値を用いて、(2)式の生成式により、係数データWi(i=1〜n)が生成される。
また、レート変換回路105より出力される画像信号Scは予測タップ抽出回路125に供給される。この予測タップ抽出回路125では、画像信号Scに基づいて、画像信号Sbにおける注目位置の周辺に位置する複数の画素データが予測タップとして抽出される。この予測タップとしての画素データxiは推定予測演算回路126に供給される。この推定予測演算回路126には、係数生成回路124で生成される係数データWiも供給される。
この推定予測演算回路126では、画像信号Sbにおける各注目位置に対応して、予測タップ抽出回路125で抽出された予測タップとしての画素データxi(i=1〜n)と、係数生成回路124で生成された係数データWi(i=1〜n)とを用い、(1)式の推定式に基づいて、画像信号Sbにおける注目位置の画素データyが算出される。この推定予測演算回路126で順次算出される、画像信号Sbにおける各注目位置の画素データyは、出力端子107に出力される。
この画像信号処理部106は、レート変換回路105より出力される、画像信号Sbのレートと同じレートに変換された画像信号Scに基づいて、画像信号Sbにおける各注目位置の画素データyを求めていくものであり、レート変換の処理を伴うものではないので、容易に構成できる。
また、この画像信号処理部106は、画像信号Sbにおける各注目位置に対応して、レート変換回路105から並行して出力される、当該注目位置の周辺に位置する複数個の画素データを使用するものであり、クラスタップ抽出回路121、予測タップ抽出回路125を例えばラッチ回路のみで構成でき、時間方向、垂直方向および水平方向に展開するための遅延回路等を不要とできる。
また、画像信号処理部106は、画像信号Sbにおける注目位置の位相情報h,vとして、レート変換回路105の出力TG217で得られる位相情報h,vを用いるものであり、この位相情報h,vを発生する回路を不要とできる。
上述したように、ROM123には、係数種データwi0〜wi30(i=1〜n)が、クラス毎に、記憶されている。この係数種データは、予め学習によって生成されたものである。
まず、この生成方法の一例について説明する。(2)式の生成式における係数データである係数種データwi0〜wi30を求める例を示すものとする。
ここで、以下の説明のため、(3)式のように、tj(j=0〜30)を定義する。
t0=1,t1=f,t2=g,t3=f2,t4=fg,t5=g2,t6=f3,
t7=f2g,t8=fg2,t9=g3,t10=v,t11=vf,t12=vg,
t13=vf2,t14=vfg,t15=vg2,t16=h,t17=hf,
t18=hg,t19=hf2,t20=hfg,t21=hg2,t22=v2,
t23=v2f,t24=v2g,t25=vh,t26=vhf,t27=vhg,
t28=h2,t29=h2f,t30=h2g
・・・(3)
この(3)式を用いると、(2)式は、(4)式のように書き換えられる。
最終的に、学習によって未定係数wijを求める。すなわち、クラス毎に、生徒信号の画素データと教師信号の画素データとを用いて、二乗誤差を最小にする係数値を決定する。いわゆる最小二乗法による解法である。学習数をm、k(1≦k≦m)番目の学習データにおける残差をek、二乗誤差の総和をEとすると、(1)式および(2)式を用いて、Eは(5)式で表される。ここで、xikは生徒画像のi番目の予測タップ位置におけるk番目の画素データ、ykはそれに対応する教師画像のk番目の画素データを表している。
最小二乗法による解法では、(5)式のwijによる偏微分が0になるようなwijを求める。これは、(6)式で示される。
以下、(7)式、(8)式のように、Xipjq、Yipを定義すると、(6)式は、行列を用いて(9)式のように書き換えられる。
この(9)式は、一般に正規方程式と呼ばれている。この正規方程式は、掃き出し法(Gauss-Jordanの消去法)等を用いて、wijについて解かれ、係数種データが算出される。
図31は、上述した係数種データの生成方法の概念を示している。教師信号としてのHD信号(1050i信号)から生徒信号としてのSD信号(525i信号)を生成する。525i信号は、ライン数が525本でインタレース方式の画像信号を意味している。1050i信号は、ライン数が1050本でインタレース方式の画像信号を意味している。
図32は、525i信号と1050i信号の画素位置関係を示している。ここで、大きなドットが525i信号の画素であり、小さなドットが1050i信号の画素である。また、奇数フィールドの画素位置を実線で示し、偶数フィールドの画素位置を破線で示している。
このSD信号の位相を、例えば垂直方向に8段階、水平方向に8段階にシフトさせて、8×8=64種類のSD信号SD1〜SD64を生成する。図33は、垂直方向への8段階の位相シフト状態V1〜V8を示している。ここでは、SD信号の垂直方向の画素間隔は4096である。また、「o」は奇数フィールドを、「e」は偶数フィールドを表している。
V1の状態はSD信号のシフト量が0とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、0,1024,2048,3072の位相を持つようになる。V2の状態はSD信号のシフト量が1とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、768,1792,2816,3840の位相を持つようになる。V3の状態はSD信号のシフト量が2とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、512,1536,2560,3584の位相を持つようになる。V4の状態はSD信号のシフト量が3とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、256,1280,2304,3328の位相を持つようになる。
V5の状態はSD信号のシフト量が4とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、0,1024,2048,3072の位相を持つようになる。V6の状態はSD信号のシフト量が5とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、768,1792,2816,3840の位相を持つようになる。V7の状態はSD信号のシフト量が6とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、512,1536,2560,3584の位相を持つようになる。V8の状態はSD信号のシフト量が7とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、256,1280,2304,3328の位相を持つようになる。
図34は、水平方向への8段階の位相シフト状態H1〜H8を示している。ここではSD信号の水平方向の画素間隔は4096である。
H1の状態はSD信号のシフト量が0とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、0,2048の位相を持つようになる。H2の状態はSD信号のシフト量が1とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、1792,3840の位相を持つようになる。H3の状態はSD信号のシフト量が2とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、1536,3584の位相を持つようになる。H4の状態はSD信号のシフト量が3とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、1280,3328の位相を持つようになる。
H5の状態はSD信号のシフト量が4とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、1024,3072の位相を持つようになる。H6の状態はSD信号のシフト量が5とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、768,2816の位相を持つようになる。H7の状態はSD信号のシフト量が6とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、512,2560の位相を持つようになる。H8の状態はSD信号のシフト量が7とされたものであり、この場合、HD信号の画素は、SD信号の画素に対して、256,2304の位相を持つようになる。
図35は、上述したように垂直方向に8段階、水平方向に8段階にシフトさせて得られた64種類のSD信号に関し、SD信号の画素を中心とした場合のHD信号の位相を示している。すなわち、SD信号の画素に対して、HD信号の画素は図中のハッチングが施された○で示す位相を持つようになる。
ここでは、位相シフトの方法の例として、オーバーサンプリングフィルタから欲しい位相だけを抜き出す方法をあげる。上述した画質調整として、ここでは解像度調整、ノイズ抑圧度調整を例にあげると、このオーバーサンプリングフィルタの周波数特性を変えることにより解像度の異なる生徒画像を作成することができる。そして、解像度の異なる生徒画像によって、解像度を上げる効果の異なる係数を作成できる。例えばボケ具合の大きい生徒画像とボケ具合の小さい生徒画像があった場合、ボケ具合の大きい生徒画像による学習で、解像度を上げる効果の強い係数が生成され、ボケ具合の小さい生徒画像による学習で、解像度を上げる効果の弱い係数が生成される。
さらに、解像度の異なる生徒画像の各々に対してノイズを加えることでノイズの加わった生徒画像を作成することができる。ノイズを加える量を可変することでノイズの量が異なる生徒画像が生成され、それによってノイズ抑圧効果の異なる係数が生成される。例えばノイズをたくさん加えた生徒画像とノイズを少し加えた生徒画像があった場合、ノイズをたくさん加えた生徒画像による学習でノイズ抑圧効果の強い係数が作成され、ノイズを少し加えた生徒画像による学習でノイズ抑圧効果の弱い係数が作成される。
ノイズを加える量としては、例えば(10)式のように、生徒画像の画素値xに対して、ノイズnを加えてノイズの加わった生徒画像の画素値x′を生成する場合、Gを可変することでノイズ量を調整する。
x′=x+G・n ・・・(10)
図36は、最終的な学習対の概念を示している。ここでは例として、異なるオーバーサンプリングフィルタの周波数特性を8段階とし、ノイズ加算量も8段階とする。個々の周波数特性による生徒画像での学習により、解像度調整に対応する係数データが作成され、さらに個々のノイズ加算された生徒画像での学習により、ノイズ抑圧度調整に対応する係数データが作成される。さらに個別の周波数特性、ノイズ加算量に対し、位相の異なる生徒画像で学習することで、異なる位相に対応する画素を生成する係数種データが作成される。
図37は、上述した概念で係数種データを生成する係数種データ生成装置150の構成を示している。
この係数種データ生成装置150は、教師信号としてのHD信号(1050i)が入力される入力端子151と、このHD信号に対して、水平および垂直方向にオーバーサンプリングフィルタをかけ、欲しい位相を抜き出してSD信号(525i)を得る位相シフト回路152Aと、このSD信号に対し、ノイズを加算するノイズ加算回路152Bとを有している。
位相シフト回路152Aにはオーバーサンプリングフィルタの周波数特性を指定するパラメータf、および水平方向、垂直方向への位相シフト量を指定するパラメータh,vが入力される。ノイズ加算回路152Bにはノイズの加算割合を指定するパラメータgが入力される。ここで、パラメータfは図1の画像信号処理部106における解像度調整情報fに対応し、パラメータh,vは図1の画像信号処理部106における位相情報h,vに対応し、パラメータgは図1の画像信号処理部106におけるノイズ抑圧度調整情報gに対応するものである。
また、係数種データ生成装置150は、ノイズ加算回路152Bより出力されるSD信号に基づいて、HD信号おける注目位置の周辺に位置する複数の画素データをクラスタップとして抽出するクラスタップ抽出回路154と、このクラスタップに基づいて、HD信号における注目位置の画素データが属するクラスを表すクラスコードCLを得るクラス分類回路157とを有している。
また、係数種データ生成装置150は、ノイズ加算回路152Bより出力されるSD信号に基づいて、HD信号おける注目位置の周辺に位置する複数の画素データを予測タップとして抽出する予測タップ抽出回路153を有している。
また、係数種データ生成装置150は、係数種データwi0〜wi30(i=1〜n)を得るための正規方程式((9)式参照)をクラス毎に生成する正規方程式生成部160を有している。この正規方程式生成部160は、入力端子151に入力されるHD信号より抽出された、当該HD信号の各注目位置の画素データyと、この各注目位置の画素データyにそれぞれ対応して予測タップ抽出回路153で抽出される予測タップとしての画素データxiと、各注目位置の画素データyにそれぞれ対応してクラス分類回路157で得られるクラスコードCLと、オーバーサンプリングフィルタの周波数特性を指定するパラメータf、および水平方向、垂直方向への位相シフト量を指定するパラメータh,v、ノイズの加算割合を指定するパラメータgとから、クラス毎に、係数種データwi0〜wi30(i=1〜n)を得るための正規方程式を生成する。
この場合、一個の画素データyとそれに対応する予測タップとしてのn個の画素データxiとの組み合わせで一個の学習データが生成される。位相シフト回路152Aへのパラメータf,h,v、およびノイズ加算回路152Bへのパラメータgが順次変更されていき、それに応じたSD信号が順次生成され、これにより正規方程式生成部160では多くの学習データが登録された正規方程式が生成される。このようにSD信号を順次作成して学習データを登録することで、任意の解像度調整、ノイズ抑圧度調整、および水平、垂直の位相の画素データを得るための係数種データを求めることが可能となる。
また、係数種データ生成装置150は、正規方程式生成部160でクラス毎に生成された正規方程式のデータが供給され、クラス毎に正規方程式を解いて、各クラスの係数種データwi0〜wi30を求める係数種データ決定部161と、この求められた係数種データwi0〜wi30を記憶する係数種メモリ162とを有している。
図37に示す係数種データ生成装置150の動作を説明する。入力端子151には教師信号としてのHD信号(1050i信号)が入力される。このHD信号に対して、位相シフト回路152Aでは、水平および垂直方向にオーバーサンプリングフィルタがかけられ、欲しい位相が抜き出されてSD信号が得られる。この場合、SD信号として垂直方向に8段階、水平方向に8段階にシフトされたものが順次生成される。
また、各位相のSD信号に対して、位相シフト回路152Aに入力されるパラメータfおよびノイズ加算回路152Bに入力されるパラメータgが順次変更されていき、それに応じたSD信号が順次生成される。
ノイズ加算回路152Bより出力される各SD信号より、クラスタップ抽出回路154で、HD信号における注目位置の周辺に位置する複数の画素データがクラスタップとして抽出される。このクラスタップはクラス分類回路157に供給される。このクラス分類回路157では、クラスタップとしての複数の画素データに、例えばADRC等の圧縮処理が施されて、画像信号Sbにおける注目位置の画素データが属するクラスを表すクラスコードCLが得られる。このクラスコードCLは正規方程式生成部160に供給される。
また、ノイズ加算回路152Bより出力される各SD信号より、予測タップ抽出回路153で、HD信号における注目位置の周辺に位置する複数の画素データが予測タップとして抽出される。この予測タップとしての画素データxiは正規方程式生成部160に供給される。
なお、入力端子151に入力されたHD信号は正規方程式生成部160に供給される。この生成方程式生成部160では、HD信号より抽出される、当該HD信号における各注目位置の画素データyと、この各注目位置の画素データyにそれぞれ対応して予測タップ抽出回路153で抽出された予測タップとしての複数の画素データxiと、各注目位置の画素データyにそれぞれ対応してクラス分類回路157で得られたクラスコードCLと、パラメータf,h,v,gとから、クラス毎に、係数種データwi0〜wi30(i=1〜n)を得るための正規方程式が生成される。
そして、係数種データ決定部161でその正規方程式が解かれ、各クラスの係数種データwi0〜wi30が求められる。この係数種データwi0〜wi30はクラス別にアドレス分割された係数種メモリ162に記憶される。
このように、図37に示す係数種データ生成装置150においては、図1の画像信号処理部106のROM123に記憶される、各クラスの係数種データwi0〜wi30を生成することができる。
なお、上述した図1の画像信号処理装置100における処理を、例えば図38に示すような画像信号処理装置(コンピュータ)500によって、ソフトウェアにより行うこともできる。
まず、図38に示す画像信号処理装置500について説明する。この画像信号処理装置500は、装置全体の動作を制御するCPU501と、このCPU501の制御プログラム、係数種データ等が格納されたROM(Read Only Memory)502と、CPU501の作業領域を構成するRAM(Random Access Memory)503とを有している。これらCPU501、ROM502およびRAM503は、それぞれバス504に接続されている。
また、画像信号処理装置500は、外部記憶装置としてのハードディスクドライブ(HDD)505と、フレキシブルディスク、CD−ROM(Compact Disc Read only Memory)、MO(Magneto Optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体を取り扱うドライブ506とを有している。これらドライブ505,506は、それぞれバス504に接続されている。
また、画像信号処理装置500は、インターネット等の通信網507に有線または無線で接続する通信部508を有している。この通信部508は、インタフェース509を介してバス504に接続されている。
また、画像信号処理装置500は、ユーザインタフェース部を備えている。このユーザインタフェース部は、リモコン送信機510からのリモコン信号RMを受信するリモコン信号受信回路511と、CRT(Cathode-Ray Tube)、LCD(liquid Crystal Display)等からなるディスプレイ513とを有している。受信回路511はインタフェース512を介してバス504に接続され、同様にディスプレイ513はインタフェース514を介してバス504に接続されている。
また、画像信号処理装置500は、画像信号Saを入力するための入力端子515と、画像信号Sbを出力するための出力端子517とを有している。入力端子515はインタフェース516を介してバス504に接続され、同様に出力端子517はインタフェース518を介してバス504に接続される。
ここで、上述したようにROM502に制御プログラム等を予め格納しておく代わりに、例えばインターネットなどの通信網507より通信部508を介してダウンロードし、ハードディスクドライブ505やRAM303に格納して使用することもできる。また、これら制御プログラム等をリムーバブル記録媒体で提供するようにしてもよい。
また、処理すべき画像信号Saを入力端子515より入力する代わりに、リムーバブル記録媒体で供給し、あるいはインターネットなどの通信網507より通信部508を介してダウンロードしてもよい。また、処理後の画像信号Sbを出力端子517に出力する代わり、あるいはそれと並行してディスプレイ513に供給して画像表示をしたり、さらにはハードディスクドライブ505に格納したり、通信部508を介してインターネットなどの通信網507に送出するようにしてもよい。
図39のフローチャートを参照して、図38に示す画像信号処理装置500における、画像信号Saより画像信号Sbを得るため処理手順を説明する。
まず、ステップST51で、処理を開始し、ステップST52で、画像信号Saを所定フレーム分または所定フィールド分入力する。この画像信号Saが入力端子515より入力される場合には、この画像信号Sa をRAM503に一時的に格納する。また、この画像信号Sa がハードディスクドライブ505に記録されている場合には、このハードディスクドライブ505から画像信号Saを読み出し、この画像信号SaをRAM503に一時的に格納する。そして、ステップST53で、画像信号Saの全フレームまたは全フィールドの処理が終わっているか否かを判定する。処理が終わっているときは、ステップST54で、処理を終了する。一方、処理が終わっていないときは、ステップST55に進む。
このステップST55では、ステップST52で入力された画像信号Saに対してレート変換処理を行って画像信号Scを生成する。また、このステップ52では、画像信号Scの各画素データに対応して位相情報h,vも取得する。そして、ステップST56で、ユーザの操作に基づく、画質調整情報f,gを取得する。
次に、ステップST57で、ステップST55で生成された画像信号Scに基づいて、画像信号Sbにおける注目位置に対応したクラスタップおよび予測タップの画素データを取得する。そして、ステップST58で、ステップST57で抽出されたクラスタップに基づいて、画像信号Sbにおける注目位置の画素データが属するクラスを表すクラスコードCLを生成する。
そして、ステップST59で、ステップST58で生成されたクラスコードCLが表すクラスの係数種データを使用し、またステップST55で取得された画像信号Sbにおける注目位置に対応した位相情報h,v、およびステップST56で取得された画質調整情報f,gを用い、上述した(2)式の生成式によって、画像信号Sbにおける注目位置の画素データを求めるための推定式の係数データWiを生成する。
次に、ステップST60で、ステップST59で生成された係数データWiと、ステップST57で抽出された予測タップとしての画素データxiとを用い、(1)式の推定式に基づいて、画像信号Sbにおける注目位置の画素データyを生成する。
次に、ステップST61で、ステップST52で入力された画像信号Saの各フィールドに関する処理が終了したか否かを判定する。終了しているときは、ステップST52に戻り、次の所定フレームまたは所定フィールドの画像信号Saの入力処理に移る。一方、終了していないときは、ステップST57に戻り、画像信号Sbにおける次の注目位置の画素データyを得る処理に移る。
このように、図39に示すフローチャートに沿って処理をすることで、入力された画像信号Saを処理して画像信号Sbを得ることができる。
また、処理装置の図示は省略するが、図37の係数種データ生成装置150における処理も、ソフトウェアで実現できる。
図40のフローチャートを参照して、係数種データを生成するための処理手順を説明する。
まず、ステップST71で、処理を開始し、ステップST72で、学習に使われる、SD信号の位相シフト値(例えば、パラメータh,vで特定される)および画質調整値(例えば、パラメータf,gで特定される)を選択する。そして、ステップST73で、位相シフト値および画質調整値の全ての組み合わせに対して学習が終わったか否かを判定する。全ての組み合わせに対して学習が終わっていないときは、ステップST74に進む。
このステップST74では、既知のHD信号を1フレーム分または1フィールド分入力する。そして、ステップST75で、全てのフレームまたはフィールドのHD信号について処理が終了したか否かを判定する。終了したときは、ステップST72に戻って、次の位相シフト値および画質調整値を選択して、上述したと同様の処理を繰り返す。一方、終了していないときは、ステップST76に進む。
このステップST76では、ステップST74で入力されたHD信号より、ステップST72で選択された位相シフト値だけ位相シフトされ、また画質調整値に対応して画質調整(解像度、ノイズの調整)されたSD信号を生成する。そして、ステップST77で、ステップST76で生成されたSD信号から、HD信号の注目位置に対応して、クラスタップおよび予測タップの画素データを取得する。
次に、ステップST78で、ステップST77で取得されたクラスタップに基づいて、HD信号における注目位置の画素データが属するクラスを表すクラスコードCLを生成する。そして、ステップST79で、HD信号における注目位置の画素データとステップST77で取得された予測タップとしての画素データとを一個の学習データとして、正規方程式((9)式参照)を得るための足し込みを行う。この足し込みは、クラスコードCLに基づいて、クラス毎に行う。
次に、ステップST80で、ステップST74で入力されたHD信号の全領域において学習処理を終了しているか否かを判定する。学習処理を終了しているときは、ステップST74に戻って、次の1フレーム分または1フィールド分のHD信号の入力を行って、上述したと同様の処理を繰り返す。一方、学習処理を終了していないときは、ステップ77に戻って、HD信号における次の注目位置についての処理に移る。
また、ステップST73で、位相シフト値および画質調整値の全ての組み合わせに対して学習が終わったときは、ステップST81に進む。このステップST81では、正規方程式を掃き出し法等で解くことによって各クラスの係数種データを算出し、ステップST82で、その係数種データをメモリに保存し、その後にステップST83で、処理を終了する。
このように、図40に示すフローチャートに沿って処理をすることで、図37に示す係数種データ生成装置150と同様の手法によって、各クラスの係数種データを得ることができる。
なお、上述実施の形態において、レート変換回路105では、一個の読み出しリクエストRRQに対応して、フレームメモリ201から10ライン分の輝度信号Yaを読み出し、レート変換部215Yから最終的に18ライン分の輝度信号Ycを並列的に出力すると共に、フレームメモリ201から2ライン分の色差信号Ua/Vaを読み出し、レート変換部215Cから最終的に4ライン分の青色差信号Ucおよび4ライン分の赤色差信号Vcを出力する。
しかし、一個の読み出しリクエストRRQに対応して、フレームメモリ201から読み出すべき輝度信号Ya、色差信号Ua/Vaのライン数はこれに限定されるものではない。
例えば、一個の読み出しリクエストRRQに対応して、フレームメモリ201から、5ライン分の輝度信号Yaおよび1ライン分の色差信号Ua/Vaを読み出すことも考えられる。この場合も、レート変換部215Y,215Cで、ライン遅延の処理を行うことで、最終的に、18ライン分の輝度信号Yc、各4ライン分の青色差信号Ucおよび赤色差信号Vcを得ることができる。
図41Aは、輝度信号のタップ領域の一例を示しており、白丸で示す0〜4の5ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す5〜17の13ラインはライン遅延を持ったラインである。この場合、例えば10のラインが中心位置とされる。また、図41Bは、色差信号のタップ領域の一例を示しており、白丸で示す0の1ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す1〜3の3ラインはライン遅延を持ったラインである。この場合、例えば1のラインが中心位置とされる。
また例えば、一個の読み出しリクエストRRQに対応して、フレームメモリ201から、4ライン分の輝度信号Yaおよび2ライン分の色差信号Ua/Vaを読み出すことも考えられる。この場合、例えば、レート変換部215Y,215Cで、ライン遅延の処理を行うことで、最終的に、14ライン分の輝度信号Yc、各8ライン分の青色差信号Ucおよび赤色差信号Vcを得ることができる。
図42Aは、輝度信号のタップ領域の一例を示しており、白丸で示す0〜3の4ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す4〜13の10ラインはライン遅延を持ったラインである。この場合、例えば8のラインが中心位置とされる。また、図42Bは、色差信号のタップ領域の一例を示しており、白丸で示す0,1の2ラインはライン遅延を持たないラインであり、ハッチングされた丸で示す2〜7の6ラインはライン遅延を持ったラインである。この場合、例えば3のラインが中心位置とされる。
また、上述実施の形態においては、レート変換回路105のタップ構築回路221Y,221Cでは、水平方向に5タップが構築されるものを示したが、タップ数はこれに限定されるものではない。また、輝度信号と色差信号とでタップ数が異なるようにすることもできる。
また、上述実施の形態においては、ROM123に係数種データを記憶しておき、係数生成回路124では、クラスコードCLが表すクラスの係数種データを用いて、(2)式の生成式に基づき、位相情報h,vおよび画質調整情報f,gに対応した係数データWiを生成して使用するものを示した。しかし、ROM123に、クラス毎に、位相情報h,vおよび画質調整情報f,gの全ての組み合わせについての係数データWiを記憶しておき、クラスコードCLが表すクラスにおける、位相情報h,vおよび画質調整情報f,gに対応した係数データWiを読み出して使用するようにしてもよい。
この場合、情報メモリバンク135に記憶される位相情報h,vおよび画質調整情報f,gの各組み合わせの係数データWiは、パラメータf,g,h,vの各組み合わせで得られるSD信号のそれぞれについて学習を行うことで求めることができる。
また、上述実施の形態としては、画像信号Saより画像信号Scを得る際に画素数が増加するものを示し、レート変換部215Y,215Cでは二度読みによって画素数の増加が図られている。しかし、画像信号Saおよび画像信号Scのフォーマットによっては、レート変換時に画素数が減少することになる。その場合、レート変換部215Y,215Cでは、間引きによって画素数の減少が図られる。
また、上述実施の形態においては、レート変換回路105より出力される時間方向、垂直方向および水平方向に展開された画像信号Scから、画像信号処理部106でさらにクラスタップおよび予測タップを抽出して使用するものを示した。しかし、レート変換回路105のタップ構築回路221Y,221Cのそれぞれとして、クラスタップを得るためのタップ構築回路、予測タップを得るためのタップ構築回路を備え、レート変換回路105から画像信号処理部106で使用するクラスタップおよび予測タップが直接出力されるようにしてもよい。その場合、画像信号処理部106には、クラスタップ抽出回路121および予測タップ抽出回路125は不要となる。
また、上述実施の形態においては、画像信号Sbの画素データを生成する際の推定式として線形一次方程式を使用したものを挙げたが、これに限定されるものではなく、例えば推定式として高次方程式を使用するものであってもよい。
また、上述実施の形態においては、クラスコードCLを検出し、推定予測演算ではこのクラスコードに応じた係数データWiを使用するものを示したが、クラスコードCLの検出部分を省略したものも考えられる。その場合には、ROM123に格納される係数種データは1種類のみとなる。
100・・・画像信号処理装置、101・・・システムコントローラ、102・・・リモコン信号受信回路、103・・・送信機、104・・・入力端子、105・・・レート変換回路、106・・・画像信号処理部、107・・・出力端子、121・・・クラスタップ抽出回路、122・・・クラス分類回路、123・・・ROM、124・・・係数生成回路、125・・・予測タップ抽出回路、126・・・推定予測演算回路、150・・・係数種データ生成装置、201・・・フレームメモリ、202・・・SDRAMコントローラ、203・・・SDRAMバス、204Y,204C,205Y,205C・・・バッファ、206・・・制御部、207・・・入力タイミングジェネレータ(入力TG)、208・・・水平カウンタ、209・・・垂直カウンタ、211・・・メモリタイミングジェネレータ(メモリTG)、212・・・リクエストカウンタ、213・・・垂直カウンタ、215Y,215C・・・レート変換部、217・・・出力タイミングジェネレータ(出力TG)、218・・・アドレス発生部、219・・・垂直カウンタ、221Y,221C・・・タップ構築回路、222-1〜222-18・・・シフトレジスタ、301・・・コマンドジェネレータ、302・・・モードセット・リフレッシュジェネレータ、303・・・ライトアドレス部、304・・・リードアドレス部、305・・・リードカウンタ、306・・・ライトカウンタ、307・・・リード・ライト制御部、311・・・ライトチャネルカウンタ、312・・・リードチャネルカウンタ、313・・・読み出しリクエストホールド部、314・・・チャネルカウンタ、500・・・画像信号処理装置