(57)【特許請求の範囲】
【請求項１】
それぞれ第一及び第二巡一次元ＤＣＴ演算が６段階演算のＤＣＴ速算法を使って、８×８データブロックの連続入力データを処理して連続的に変換データを生じ、該ＤＣＴ速算法が複数のバタフライ演算を具えた第１、第３及び第５段階演算、複数の加算後相乗演算を具えた第２及び第４段階演算、及び複数の内部乗法演算を具えた第６段階演算を含んでなり、
（ａ）入力ユニットにより入力データを受け、
（ｂ）該入力ユニットを制御して該入力データをバタフライ演算ユニットに提供し、該バタフライ演算ユニットが該第一巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第１段階演算を行い、
（ｃ）データレジスタユニットを制御してバタフライ演算ユニットからの第１段階出力データを記憶させ、
（ｄ）該データレジスタユニットを制御して、所定の第１段階出力データを乗法演算ユニットに提供させ、該所定の第１段階出力データが該データレジスタユニット内に記憶された際に該乗法演算ユニットが該ＤＣＴ速算法の第２段階演算を行い、
（ｅ）該データレジスタユニットを制御して該乗法演算ユニットからの第２段階出力データを記憶させ、
（ｆ）該データレジスタユニットを制御して所定順序で第１段階及び第２段階出力データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが該ＤＣＴ速算法の第１段階演算を行った後に、該ＤＣＴ速算法の第３段階演算を行い、
（ｇ）該データレジスタユニットを制御して、該バタフライ演算ユニットの第３段階出力データを記憶させ、
（ｈ）該データレジスタユニットを制御して、所定の第３段階出力データを乗法演算ユニットに提供させ、該所定の第３段階出力データが該データレジスタユニット内に記憶された際に該乗法演算ユニットが該ＤＣＴ速算法の第４段階演算を行い、
（ｉ）該データレジスタユニットを制御して、該乗法演算ユニットからの第４段階出力データを記憶させ、
（ｊ）該データレジスタユニットを制御して所定順序で第３段階及び第４段階出力データを該バタフライ演算ユニットに提供し、該バタフライ演算ユニットが該ＤＣＴ速算法の第３段階演算を行った後に、該ＤＣＴ速算法の第５段階演算を行い、
（ｋ）該データレジスタユニットを制御して、該バタフライ演算ユニットから作用が基準化一次元変換データと同様な第５段階出力データを記憶させ、
（ｌ）該データレジスタユニットを制御してもう一つの方向から該基準化一次元変換データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第１段階演算を行い、
（ｍ）段階（ｃ）から段階（ｊ）を反復して、第二巡一次元演算のＤＣＴ速算法の第２乃至第５段階演算を行い、
（ｎ）該データレジスタユニットを制御して、該バタフライ演算ユニットから作用が基準化二次元変換データと同じである第５段階出力データを記憶させ、
（ｏ）該データレジスタユニットを制御して該基準化二次元変換データを該乗法演算ユニットに提供し、該乗法演算ユニットは、該乗法演算ユニットに記憶された係数ＲＯＭに記憶された第ｉ（ｉ＝０〜７）行の基準化重み係数をｃi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｃjとしたとき、該第一及び第二巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第６段階の重み係数をｃi*ｃjとして、該第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第６段階演算を行い、これにより該入力データと対応する二次元変換データを得、
（ｐ）出力ユニットを制御して乗法演算ユニットから該二次元変換データを受ける、
各段階を具えてなる、連続する第一及び第二巡一次元離散コサイン変換（ＤＣＴ）演算を含んだ二次元ＤＣＴ方法。
【請求項２】
６段階演算ＤＣＴ速算法が複数のバタフライ演算を具えた第１、第３及び第５段階演算、複数の加算後相乗演算を具えた第２及び第４段階演算、及び複数の内部乗法演算を具えた第６段階演算を含んでなり、
（ａ）第ｉ（０〜７）行の基準化重み係数をｃi、及び、第ｊ（０〜７）列の基準化重み係数をｃjとしたとき、第一巡一次元変換と第二巡一次元変換中のＤＣＴ速算法の第６段階重み係数をｃi*ｃjとし、乗法演算ユニットの係数ＲＯＭ内に記憶させ、
（ｂ）バタフライ演算ユニット及び該乗法演算ユニットを制御して、入力データに対してＤＣＴ速算法の第１から第５段階演算を行わせて基準化一次元変換データを得、
（ｃ）バタフライ演算ユニット及び該乗法演算ユニットを制御して、該基準化一次元変換データに対してＤＣＴ速算法の第１から第５段階演算を行わせて基準化二次元変換データを得、
（ｄ）該乗法演算ユニットを制御して、該係数ＲＯＭ内の基準化重み係数に基づいて該基準化二次元変換データに対して該ＤＣＴ速算法の第６段階演算を行い、これにより該入力データに対応する二次元変換データを得る各段階を含んでなる、６段階演算離散コサイン変換（ＤＣＴ）速算法による二次元ＤＣＴ方法。
【請求項３】
連続的に第一及び第二巡一次元ＤＣＴ演算を行い、各第一及び第二巡一次元ＤＣＴ演算が８×８データブロックの連続入力データを処理して連続の変換データを生じさせる６段階演算のＤＣＴ速算法を含み、該ＤＣＴ速算法が複数の二次元ＤＣＴ装置のバタフライ演算ユニットが行うバタフライ演算の第１、第３及び第５段階演算、複数の該二次元ＤＣＴ装置の乗法演算ユニットが行う加算後相乗演算の第２及び第４段階演算、及び複数の該乗法演算ユニットが行う内部乗法演算の第６段階演算を含んでなり、
（ａ）第ｉ（０〜７）行の基準化重み係数をｃi、及び、第ｊ（０〜７）列の基準化重み係数をｃjとしたとき、第一巡一次元変換と第二巡一次元変換中のＤＣＴ速算法の第６段階重み係数をｃi*ｃjとして、乗法演算ユニットの係数ＲＯＭ内に記憶させ、
（ｂ）バタフライ演算ユニットが該第一巡一次元ＤＣＴ演算のＤＣＴ速算法の第５段階演算を行って基準化一次元変換データを得た後、該バタフライ演算ユニットを制御してもう一つの方向から該基準化一次元変換データに対して第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第１段階演算を行わせ、
（ｃ）該バタフライ演算ユニットが該第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第５段階演算を行って基準化二次元ＤＣＴ変換データを得た後、該乗法演算ユニットを制御して、該係数ＲＯＭ内の基準化重み係数に基づいて該基準化二次元ＤＣＴ変換データに対して第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第６段階演算を行い、これにより入力データに対応する二次元変換データを得る各段階を含んでなる、二次元離散コサイン変換（ＤＣＴ）装置の乗法演算の減少方法。
【請求項４】
それぞれ第一及び第二巡一次元ＩＤＣＴ演算が６段階演算のＩＤＣＴ速算法を使って、８×８データブロックの連続入力データを処理して連続的に変換データを生じ、該ＩＤＣＴ速算法が複数の内部乗法演算を具えた第１段階演算、複数のバタフライ演算を具えた第２、第４及び第６段階演算、及び複数の相乗後減算演算を具えた第３及び第５段階演算を含んでなり、
（ａ）入力ユニットにより入力データを受け、
（ｂ）該入力ユニットを制御して該入力データを乗法演算ユニットに提供し、該乗法演算ユニットは、該乗法演算ユニットに記憶された係数ＲＯＭ内の第ｉ（０〜７）行の基準化重み係数をｐi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｐjとしたとき、該第一及び第二巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法での重み係数をｐi*ｐjとして、該第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算を行い、
（ｃ）データレジスタユニットを制御して乗法演算ユニットからの基準化第１段階出力データを記憶させ、
（ｄ）該データレジスタユニットを制御して、該基準化第１段階出力データをバタフライ演算ユニットに提供し、該バタフライ演算ユニットが該第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行い、
（ｅ）該データレジスタユニットを制御して該バタフライ演算ユニットからの第２段階出力データを記憶させ、
（ｆ）該データレジスタユニットを制御して所定の第２段階出力データを該乗法演算ユニットに提供させ、該所定の第２段階出力データが該データレジスタユニットに記憶された際に、該乗法演算ユニットが該ＩＤＣＴ速算法の第３段階演算を行い、
（ｇ）該データレジスタユニットを制御して、該乗法演算ユニットからの第３階出力データを記憶させ、
（ｈ）該データレジスタユニットを制御して、所定順序に第２段階及び第３段階出力データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが該ＩＤＣＴ速算法の第２段階演算を行った後に、該ＩＤＣＴ速算法の第４段階演算を行い、
（ｉ）該データレジスタユニットを制御して、該バタフライ演算ユニットからの第４段階出力データを記憶させ、
（ｊ）該データレジスタユニットを制御して所定の第４段階出力データを該乗法演算ユニットに提供し、該所定の第４段階出力データが該データレジスタユニット内に記憶された際に、該乗法演算ユニットが該ＩＤＣＴ速算法の第５段階演算を行い、
（ｋ）該データレジスタユニットを制御して、該乗法演算ユニットからの第５段階出力データを記憶させ、
（ｌ）該データレジスタユニットを制御して、所定順序で第４段階及び第５段階出力データを該バタフライ演算ユニットに提供し、該バタフライ演算ユニットが該ＩＤＣＴ速算法の第４段階演算を行った後に、該ＩＤＣＴ速算法の第６段階演算を行い、
（ｍ）該データレジスタユニットを制御して、該バタフライ演算ユニットがステップ（ｌ）で生じた基準化一次元データを記憶させ、
（ｎ）該データレジスタユニットを制御してもう一つの方向から該基準化一次元変換データを該バタフライ演算ユニットに提供し、該バタフライ演算ユニットが第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行い、
（ｏ）段階（ｅ）から段階（ｌ）を反復して、第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第３乃至第６段階演算を行い、
（ｐ）段階（ｏ）の後に、出力ユニットを制御して該バタフライ演算ユニットから第６段階出力データを受け、該入力データと対応する二次元変換データとする各段階を具えてなる、連続する第一及び第二巡一次元逆離散コサイン変換（ＩＤＣＴ）演算を含んだ二次元ＩＤＣＴ方法。
【請求項５】
ＩＤＣＴ速算法が複数の内部乗法演算を具えた第１段階演算、複数のバタフライ演算を具えた第２、第４及び第６段階演算、及び複数の相乗後減算演算を具えた第３及び第５段階演算を含んでなり、
（ａ）第一巡一次元変換と第二巡一次元変換中のＩＤＣＴ速算法の第１段階の第ｉ（ｉ＝０〜７）行の基準化重み係数をｐi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｐjとしたとき、該第一及び第二巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法での第１段階重み係数をｐi*ｐjとして、乗法演算ユニットの係数ＲＯＭ内に記憶させ、
（ｂ）乗法演算ユニットを制御して、該係数ＲＯＭ内の基準化重み係数を利用して、入力データに対してＩＤＣＴ速算法の第１段階演算を行わせて基準化第１段階出力データを得、
（ｃ）バタフライ演算ユニット及び該乗法演算ユニットを制御して、該基準化第１段階出力データに対してＩＤＣＴ速算法の第２から第６段階演算を行わせて基準化一次元変換データを得、
（ｄ）該バタフライ演算ユニット及び該乗法演算ユニットを制御して、該基準化一次元変換データに対して該ＩＤＣＴ速算法の第２から第６段階演算を行い、これにより該入力データに対応する二次元変換データを得る各段階を含んでなる、６段階演算逆離散コサイン変換（ＩＤＣＴ）速算法による二次元ＩＤＣＴ方法。
【請求項６】
二次元ＩＤＣＴ装置が連続的に第一及び第二巡一次元ＩＤＣＴ演算を行い、各第一及び第二巡一次元ＩＤＣＴ演算が６段階演算のＩＤＣＴ速算法を使って８×８データブロックの連続入力データを処理して連続の変換データを生じ、該ＩＤＣＴ速算法が複数の二次元ＩＤＣＴ装置の乗法演算ユニットが行う内部乗法演算の第１段階演算、複数の該二次元ＩＤＣＴ装置のバタフライ演算ユニットが行うバタフライ演算の第２、第４及び第６段階演算、及び複数の該乗法演算ユニットが行う相乗後減算演算の第３及び第５段階演算を含んでなり、（ａ）第一及び第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階の第ｉ（ｉ＝０〜７）行の基準化重み係数をｐi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｐjとしたとき、該第一及び第二巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法での第１段階重み係数をｐi*ｐjとして、乗法演算ユニットの係数ＲＯＭ内に記憶させ、
（ｂ）乗法演算ユニットを制御して、該係数ＲＯＭ内の基準化重み係数により入力データに対して第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算を行わせて基準化第１段階出力データを得、
（ｃ）バタフライ演算ユニットを制御して、該基準化第１段階出力データに対して第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行わせ、
（ｄ）該バタフライ演算ユニットが第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第６段階演算を終え基準化一次元変換データを得た後、該バタフライ演算ユニットを制御して、該基準化一次元変換データに対して第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行わせる各段階を含んでなる、二次元逆離散コサイン変換（ＩＤＣＴ）装置の乗法演算の減少方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は離散コサイン変換（ＤＣＴ）及びその逆変換（ＩＤＣＴ）の実行方法に関し、特に乗法演算節減可能な二次元ＤＣＴ／ＩＤＣＴの実行方法に関する。
【０００２】
【従来の技術】
本出願人にかかる米国特許第５，４７１，４１２号は、６段階演算ＤＣＴ／ＩＤＣＴ速算法を使って８×８データブロックの連続入力データを処理する離散コサイン変換及び逆離散コサイン変換の方法と装置を開示しており、該ＤＣＴ／ＩＤＣＴ速算法の６段階演算は通常交互に挿入されるバタフライ演算段階と乗法演算段階を具えて、該乗法演算段階は内部乗法演算、加算後相乗演算、及び相乗後減算演算を含む。上記米国特許において、単一バタフライ演算ユニットがそれらバタフライ演算段階を行い、単一乗法演算ユニットがそれら乗法演算段階を行う。該バタフライ演算ユニットと該乗法演算ユニットは循環的な平行処理方式で運用され、したがってＤＣＴ及びＩＤＣＴはかなり低廉なハードウェアコストで有効に達成することができる。
【０００３】
図９及び図１１はそれぞれ上記米国特許で使用されている６段階演算ＤＣＴ及びＩＤＣＴ速算法のフローグラフである。該ＤＣＴ速算法は図１０（Ａ）乃至（Ｃ）に示すように、バタフライ、内部乗法、及び加算後相乗の３種の算術演算を使い、ＩＤＣＴ速算法は図１０（Ａ），（Ｂ）と（Ｄ）に示すように、バタフライ、内部乗法、相乗後減算の３種の算術演算を使う。
【０００４】
図９に示す如く、ＤＣＴ速算法の６段階演算は４回のバタフライ演算をする第１段階演算、２回の加算後相乗演算をする第２段階演算、４回のバタフライ演算をする第３段階演算、３回の加算後相乗演算をする第４段階演算、４回のバタフライ演算をする第５段階演算、及び８回の内部乗法演算をする第６段階演算を含む。
【０００５】
図１１に示す如く、ＩＤＣＴ速算法の６段階演算は８回の内部乗法演算をする第１段階演算、４回のバタフライ演算をする第２段階演算、３回の相乗後減算演算をする第３段階演算、４回のバタフライ演算をする第４段階演算、及び２回の相乗後減算演算をする第５段階演算、及び４回のバタフライ演算をする第６段階演算を含む。
【０００６】
通常、ＤＣＴ／ＩＤＣＴの乗法演算はかなり時間を費やして相当複雑なハードウエアを要する。上記米国特許は一次元変換として僅かに１３個の乗法演算を含んで、８×８データブロックの二次元変換として僅かに総数２０８個（２×８×１３）の乗法演算を含む速算法を利用しているが、より高い処理速度を実現するには、より乗法演算の数を減らすことが望ましい。
【特許文献１】
特開平７−２３９８４２号公報
【特許文献２】
特開平１０−４９５１７号公報
【０００７】
【発明が解決しようとする課題】
即ち、本発明の目的は一種の乗法演算節減が可能な二次元ＤＣＴ／ＩＤＣＴの実行方法を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するため、本発明の一つの特徴は、一種の連続する第一及び第二巡一次元離散コサイン変換演算を含んだ二次元ＤＣＴ方法を提供する。各第一及び第二巡一次元ＤＣＴ演算は６段階演算ＤＣＴ速算法を使って、８×８データブロックの連続入力データを処理して連続的に変換データを生ずる。該ＤＣＴ速算法は複数のバタフライ演算を具えた第１、第３及び第５段階演算、複数の加算後相乗演算を具えた第２及び第４段階演算、及び複数の内部乗法演算を具えた第６段階演算を含む。二次元ＤＣＴ方法は下記の段階を含む、（ａ）入力ユニットにより入力データを受け、（ｂ）該入力ユニットを制御して該入力データをバタフライ演算ユニットに提供し、該バタフライ演算ユニットが該第一巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第１段階演算を行い、
（ｃ）データレジスタユニットを制御してバタフライ演算ユニットからの第１段階出力データを記憶させ、（ｄ）該データレジスタユニットを制御して、所定の第１段階出力データを乗法演算ユニットに提供させ、該所定の第１段階出力データが該データレジスタユニット内に記憶された際に該乗法演算ユニットが該ＤＣＴ速算法の第２段階演算を行い、（ｅ）該データレジスタユニットを制御して該乗法演算ユニットからの第２段階出力データを記憶させ、（ｆ）該データレジスタユニットを制御して所定順序で第１段階及び第２段階出力データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが該ＤＣＴ速算法の第１段階演算を行った後に、該ＤＣＴ速算法の第３段階演算を行い、（ｇ）該データレジスタユニットを制御して、該バタフライ演算ユニットの第３段階出力データを記憶させ、（ｈ）該データレジスタユニットを制御して、所定の第３段階出力データを乗法演算ユニットに提供させ、該所定の第３段階出力データが該データレジスタユニット内に記憶された際に該乗法演算ユニットが該ＤＣＴ速算法の第４段階演算を行い、（ｉ）該データレジスタユニットを制御して、該乗法演算ユニットからの第４段階出力データを記憶させ、（ｊ）該データレジスタユニットを制御して所定順序で第３段階及び第４段階出力データを該バタフライ演算ユニットに提供し、該バタフライ演算ユニットが該ＤＣＴ速算法の第３段階演算を行った後に、該ＤＣＴ速算法の第５段階演算を行い、（ｋ）該データレジスタユニットを制御して、該バタフライ演算ユニットから作用が基準化一次元変換データと同様な第５段階出力データを記憶させ、（ｌ）該データレジスタユニットを制御してもう一つの方向から該基準化一次元変換データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第１段階演算を行い、（ｍ）段階（ｃ）から段階（ｊ）を反復して、第二巡一次元演算のＤＣＴ速算法の第２乃至第５段階演算を行い、（ｎ）該データレジスタユニットを制御して、該バタフライ演算ユニットから作用が基準化二次元変換データと同じである第５段階出力データを記憶させ、（ｏ）該データレジスタユニットを制御して該基準化二次元変換データを該乗法演算ユニットに提供し、該乗法演算ユニットは、該乗法演算ユニットに記憶された係数ＲＯＭに記憶された第ｉ（ｉ＝０〜７）行の基準化重み係数をｃi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｃjとしたとき、該第一及び第二巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第６段階の重み係数をｃi*ｃjとして、該第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第６段階演算を行い、これにより該入力データと対応する二次元変換データを得、（ｐ）出力ユニットを制御して乗法演算ユニットから該二次元変換データを受ける。
【０００９】
本発明のもう一つの特徴は、一種の連続する第一及び第二巡一次元逆離散コサイン変換演算を含んだ二次元ＩＤＣＴ方法を提供する。各第一及び第二巡一次元ＩＤＣＴ演算は６段階演算ＩＤＣＴ速算法を使って、８×８データブロックの連続入力データを処理して連続的に変換データを生ずる。該ＩＤＣＴ速算法は複数の内部乗法演算をする第１段階、複数のバタフライ演算をする第２、第４及び第６段階演算、及び複数の相乗後減算演算を具えた第３及び第５段階演算を含む。二次元ＩＤＣＴ方法は下記の段階を含む。（ａ）入力ユニットにより入力データを受け、（ｂ）該入力ユニットを制御して該入力データを乗法演算ユニットに提供し、該乗法演算ユニットは、該乗法演算ユニットに記憶された係数ＲＯＭ内の第ｉ（０〜７）行の基準化重み係数をｐi、及び、第ｊ（ｊ＝０〜７）列の基準化重み係数をｐjとしたとき、該第一及び第二巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法での重み係数をｐi*ｐjとして、該第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算を行い、（ｃ）データレジスタユニットを制御して乗法演算ユニットからの基準化第１段階出力データを記憶させ、（ｄ）該データレジスタユニットを制御して、該基準化第１段階出力データをバタフライ演算ユニットに提供し、該バタフライ演算ユニットが該第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行い、（ｅ）該データレジスタユニットを制御して該バタフライ演算ユニットからの第２段階出力データを記憶させ、（ｆ）該データレジスタユニットを制御して所定の第２段階出力データを該乗法演算ユニットに提供させ、該所定の第２段階出力データが該データレジスタユニットに記憶された際に、該乗法演算ユニットが該ＩＤＣＴ速算法の第３段階演算を行い、（ｇ）該データレジスタユニットを制御して、該乗法演算ユニットからの第３階出力データを記憶させ、（ｈ）該データレジスタユニットを制御して、所定順序に第２段階及び第３段階出力データを該バタフライ演算ユニットに提供させ、該バタフライ演算ユニットが該ＩＤＣＴ速算法の第２段階演算を行った後に、該ＩＤＣＴ速算法の第４段階演算を行い、（ｉ）該データレジスタユニットを制御して、該バタフライ演算ユニットからの第４段階出力データを記憶させ、（ｊ）該データレジスタユニットを制御して所定の第４段階出力データを該乗法演算ユニットに提供し、該所定の第４段階出力データが該データレジスタユニット内に記憶された際に、該乗法演算ユニットが該ＩＤＣＴ速算法の第５段階演算を行い、（ｋ）該データレジスタユニットを制御して、該乗法演算ユニットからの第５段階出力データを記憶させ、（ｌ）該データレジスタユニットを制御して、所定順序で第４段階及び第５段階出力データを該バタフライ演算ユニットに提供し、該バタフライ演算ユニットが該ＩＤＣＴ速算法の第４段階演算を行った後に、該ＩＤＣＴ速算法の第６段階演算を行い、（ｍ）該データレジスタユニットを制御して、該バタフライ演算ユニットがステップ（ｌ）で生じた基準化一次元データを記憶させ、（ｎ）該データレジスタユニットを制御してもう一つの方向から該基準化一次元変換データを該バタフライ演算ユニットに提供し、該バタフライ演算ユ��ットが第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行い、（ｏ）段階（ｅ）から段階（ｌ）を反復して、第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第３乃至第６段階演算を行い、（ｐ）段階（ｏ）の後に、出力ユニットを制御して該バタフライ演算ユニットから第６段階出力データを受け、該入力データと対応する二次元変換データとする。
【００１０】
本発明のその他特徴及び優点は添付した図面を参照しながら下記の実施例の詳細な説明から明らかとなろう。
【００１１】
【発明の実施の形態】
以下、本発明を実施の形態に基づいて具体的に説明するが、本発明はこの例だけに限定されない。
図１に示す如く、本発明の二次元ＤＣＴ方法の比較的好ましい実施例は連続する第一及び第二巡一次元ＤＣＴ演算を含むように表示される。第一巡一次元ＤＣＴ演算は図９に示したＤＣＴ速算法の始めの５段階演算を含み、入力原始ブロックデータから基準化一次元ＤＣＴブロックデータを得るように行われる。第二巡一次元ＤＣＴ演算は図９で示したＤＣＴ速算法の第６段階演算を含み、基準化一次元ＤＣＴブロックデータから二次元ＤＣＴブロックデータを得るように行われる。
【００１２】
各第一及び第二巡一次元ＤＣＴ演算の第２及び第４段階演算の加算後相乗演算で使用される係数は、図９に示すように、それぞれａ１、ａ２、ｂ１、ｂ２及びｂ３である。しかし乍ら、ＤＣＴ速算法の第６段階演算は本発明のＤＣＴ方法の第一巡一次元ＤＣＴ演算では省略されており、一組の基準化重み係数が第二巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第６段階演算の内部乗法演算に使われる。図３（Ａ）は第二巡一次元ＤＣＴ演算に使用され且つデータブロックと対応する８×８マトリックスの処理中に使用される基準化重み係数ｃｉ，ｊを表示している。図示のように、第二巡一次元ＤＣＴ演算におけるＤＣＴ速算法の第６段階演算の内部乗法演算中で使用される原始重み係数は一個の各行（或いは各列）が異なるスケーラ（Ｓｃａｌｅｒ）により基準化される。若しもｃｊ（ｊ＝０から７）が図９に示したＤＣＴ速算法の内部乗法演算中で使用される原始重み係数であると、第１から第８行（或いは列）のスケーラ（ｃｉ）はそれぞれｃ０、ｃ１、ｃ２、ｃ３、ｃ４、ｃ５、ｃ６、及びｃ７である。即ち、第ｉ行（或いは列）の内部乗法演算の原始重み係数（ｃｊ）はｃｉ、ｊに基準化されて、それがｃｉとｃｊの乗積に等しく、そのうち、ｉとｊ＝０〜７で、各行（或いは列）の第ｊ個の一次元変換データは例えば図９に示すＦ（ｊ）である。
【００１３】
図２に示す如く、本発明の二次元ＩＤＣＴ方法の比較的好ましい実施例は連続する第一及び第二巡一次元ＩＤＣＴ演算を含むように表示される。第一巡一次元ＩＤＣＴ演算は図１１で示したＩＤＣＴ速算法の６段階演算を含み、入力原始ブロックデータから基準化一次元ＩＤＣＴブロックデータを得るように行われる。第二巡一次元ＩＤＣＴ演算は図１１で示したＩＤＣＴ速算法の後の５段階演算を含み、基準化一次元ＩＤＣＴブロックデータから二次元ＩＤＣＴブロックデータを得るように行われる。
【００１４】
各第一及び第二巡一次元ＩＤＣＴ演算の第３及び第５段階演算の相乗後減算演算で使用される係数は、図１１に示すように、それぞれｑ１、ｑ２、ｑ３、ｒ１及びｒ２である。しかし乍ら、ＩＤＣＴ速算法の第１段階演算は本発明のＩＤＣＴ方法の第二巡一次元ＩＤＣＴ演算で省略されており、一組の基準化重み係数が第一巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法の第１段階演算の内部乗法演算に使われる。図３（Ｂ）は第一巡一次元ＩＤＣＴ演算に使用され且つデータブロックと対応する８×８マトリックスの処理中に使用される基準化重み係数ｐｉ，ｊを表示している。図示のように、第一巡一次元ＩＤＣＴ演算におけるＩＤＣＴ速算法の第１段階演算の内部乗法演算中で使用される原始重み係数は一個の各行（或いは各列）が異なるスケーラ（Ｓｃａｌｅｒ）により基準化される。若しもｐｊ（ｊ＝０から７）が図１１に示したＩＤＣＴ速算法の内部乗法演算中で使用される原始重み係数であれば、第１から第８行（或いは列）のスケーラ（ｐｉ）はそれぞれｐ０、ｐ１、ｐ２、ｐ３、ｐ４、ｐ５、ｐ６、及びｐ７である。即ち、第ｉ行（或いは列）の内部乗法演算の原始重み係数ｐ（ｊ）はｐｉ、ｊに基準化されて、それはｐｉとｐｊの乗積に等しく、そのうち、ｉとｊ＝０〜７で、各行（或いは列）の第ｊ個の一次元変換データは例えば図１１で示すＦ（ｊ）である。
【００１５】
図４は本発明の比較的好ましい実施例のＤＣＴ／ＩＤＣＴ方法を行うのに用いられるＤＣＴ／ＩＤＣＴ装置の表示図で、ＤＣＴ／ＩＤＣＴ装置の構造は大方米国特許第５，４７１，４１２号で記述したものと同じく、入力ユニット１、バタフライ演算ユニット２、乗法演算ユニット３、データレジスタユニット４、出力ユニット５及び制御ユニット６を含む。
【００１６】
入力ユニット１はデマルチプレクサであり、外部装置（図示せず）から８×８データブロックの連続直列入力データ（Ｄｉｎ）を受ける。入力ユニット１は必要な変換演算に応じて入力データ（Ｄｉｎ）をバタフライ演算ユニット２或いは乗法演算ユニット３へ発送するに運用される。
バタフライ演算ユニット２はマルチプレクサ２１とバタフライ形回路２２を含み、バタフライ形回路２２は二つの入力データの和と差を生じる。マルチプレクサ２１は制御ユニット６に連接する選択入力端部と入力ユニット１及びデータレジスタユニット４に連接するデータ入力端部を具えている。制御ユニット６がマルチプレクサ２１を制御して入力ユニット１からの入力データ（Ｄｉｎ）或いはデータレジスタユニット４からのデータを選択させ、且つその選択データをバタフライ形回路２２に提供して、バタフライ形回路２２にバタフライ演算を行わせる。バタフライ形回路２２の出力はデータレジスタユニット４に記憶され、或いは出力ユニット５に発送される。
【００１７】
乗法演算ユニット３は入力選択マルチプレクサ３１、加算／減算回路３２、乗法器回路３３、係数ＲＯＭ３４、及び出力選択マルチプレクサ３５を含み、係数ＲＯＭ３４は、乗法器回路３３に入力されてそのうちの一つの演算数入力として作用し、図３（Ａ）及び（Ｂ）で示す基準化重み係数を含む多数の重み係数を具えている。乗法演算ユニット３は内部乗法演算、加算後相乗演算及び相乗後減算演算を行うことができる。入力ユニット１からの入力データ（Ｄｉｎ）或いはデータレジスタユニット４からのデータが加算／減算回路３２或いは入力選択マルチプレクサ３１に発送されると、乗法演算ユニット３をして望む算術演算を行うことができる。加算／減算回路３２と乗法器回路３３の出力が出力選択マルチプレクサ３５に発送されるとデータレジスタユニット４に記憶することができる。また乗法器回路３３の出力も直接出力ユニット５に送る。
【００１８】
そして、乗法演算ユニット３が如何にして内部乗法演算、加算後相乗演算、或いは相乗後減算演算を行うかは、すでに上記米国特許で述べているので、ここでは説明を省略する。
データレジスタユニット４は一個の両書込みポート（ＷＰ１、ＷＰ２）及び両読取りポート（ＲＰ１、ＲＰ２）を具えた４ポートレジスタであり、第一セットの読取り及び書込みポート（ＲＰ１、ＷＰ２）がバタフライ演算ユニット２に連接されて、第二セットの読取り及び書込みポート（ＲＰ２、ＷＰ２）が乗法演算ユニット３に連接される。データレジスタユニット４はバタフライ演算ユニット２及び乗法演算ユニット３からのデータを記憶する作用を有して、進んでそれらにデータを提供する作用をも有する。
【００１９】
出力ユニット５はマルチプレクサであり、ＤＣＴ実行かＩＤＣＴ実行かの違いによりバタフライ形回路２２或いは乗法器回路３３の出力を選択する。
最後に、制御ユニット６が係数ＲＯＭ３４及びデータレジスタユニット４の読取り／書込み操作を制御して、異なるマルチプレクサ２１、３１、３５をも制御し、制御ユニット６は更にＤＣＴ／ＩＤＣＴ装置のその他部材の操作タイミングを制御する。
【００２０】
図５及び図６は装置が本発明の比較的好ましい実施例のＤＣＴとＩＤＣＴ方法を行っている時の操作タイムチャートである。本発明において、一個のデータブロック（Ｎ）が二次元ＤＣＴ／ＩＤＣＴを受けると、基準化一次元変換データは第一巡一次元ＤＣＴ／ＩＤＣＴ演算後に得られて、基準化一次元データは然る後に第二巡一次元ＤＣＴ／ＩＤＣＴ演算を経て二次元ＤＣＴ／ＩＤＣＴデータを得ることができる。図４のＤＣＴ／ＩＤＣＴ装置において、第一巡一次元ＤＣＴ／ＩＤＣＴ演算の第１段階演算は入力データブロック（Ｎ）を受取った際に直ちに行われ、二次元ＤＣＴ／ＩＤＣＴデータは第二巡一次元ＤＣＴ／ＩＤＣＴ演算の第６段階演算の出力から得られる。二次元ＤＣＴ／ＩＤＣＴ期間中、データブロック（Ｎ）の第一巡一次元ＤＣＴ／ＩＤＣＴ演算の結果はデータレジスタユニット４に記憶される。若しも原始データブロックが行の方式で入力されると、第一巡一次元ＤＣＴ／ＩＤＣＴ演算で獲得した変換データブロックは必ず列の方式で処理できるように置換されなければならず、データブロック（Ｎ）の第一巡一次元ＤＣＴ／ＩＤＣＴ演算の結果がデータレジスタユニット４内に記憶される。データレジスタユニット４はバタフライ演算ユニット２と乗法演算ユニット３が同時にデータを読取り及び書込めるように構成されて、これによりバタフライ演算ユニット２と乗法演算ユニット３は循環及び平行パイプライン方式処理を達成することができる。
【００２１】
次に、図４の装置が如何にして本発明の比較的好ましい実施例のＤＣＴ及びＩＤＣＴ方法を行うかを詳細に記述する。
図４，図５に示すように、第一巡一次元ＤＣＴ演算の期間中、一個の８×８画素ブロックの６４個の画素データは行の方式（或いは列の方式）で順に入力ユニット１に供給される。制御ユニット６は入力ユニット１を制御して入力画素データ（Ｄｉｎ）をバタフライ演算ユニット２に発送し、バタフライ演算ユニット２が各行（或いは列）の四つのバタフライ演算を含むＤＣＴ速算法の第１段階演算を行う。制御ユニット６は然る後にデータレジスタユニット４を制御して、バタフライ演算ユニット２からの第１段階出力データを書込みポート（ＷＰ１）を経てデータレジスタユニット４内に記憶させる。そして、所定の第１段階出力データがデータレジスタユニット４に記憶されると、制御ユニット６がデータレジスタユニット４を制御して読取りポート（ＲＰ２）を経て所定の第１段階出力データを乗法演算ユニット３に供給し、乗法演算ユニット３が各行（或いは各列）の二つの加算後相乗演算を含むＤＣＴ速算法の第２段階演算を行い、バタフライ演算ユニット２は持続的にＤＣＴ速算法の第１段階演算を行う。制御ユニット６は再びデータレジスタユニット４を制御して書込みポート（ＷＰ２）を経て乗法演算ユニット３からの第２段階出力データをデータレジスタユニット４内に記憶させる。バタフライ演算ユニット２がＤＣＴ速算法の第１段階演算を完成した後、制御ユニット６はデータレジスタユニット４を制御して、所定の順序で読取りポート（ＲＰ１）を経て第１段階及び第２段階出力データをバタフライ演算ユニット２に提供し、バタフライ演算ユニット２が各行（或いは各列）の他の四つのバタフライ演算を含むＤＣＴ速算法の第３段階演算を行う。制御ユニット６は再びデータレジスタユニット４を制御して、書込みポート（ＷＰ１）を通じてバタフライ演算ユニット２からの第３段階出力データをデータレジスタユニット４内に記憶させる。所定の第３段階出力データがすでにデータレジスタユニット４内に記憶されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ２）を通じてそれら所定の第３段階出力データを乗法演算ユニット３に供給し、乗法演算ユニット３が各行（或いは各列）の三つの加算後相乗演算を含むＤＣＴ速算法の第４段階演算を行い始め、バタフライ演算ユニット２は持続的にＤＣＴ速算法の第３段階演算を行う。制御ユニット６がデータレジスタユニット４を制御して、書込みポート（ＷＰ２）を通じて乗法演算ユニット３からの第４段階出力データをデータレジスタユニット４に記憶させる。バタフライ演算ユニット２がＤＣＴ速算法の第３段階演算を行った後、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じて第３段階及び第４段階出力データを所定の順序でバタフライ演算ユニット２に供給し、バタフライ演算ユニット２に各行（或いは各列）の更に他の四つのバタフライ演算を含んだＤＣＴ速算法の第５段階演算を行わせる。制御ユニット６が更にデータレジスタユニット４を制御して、書込みポート（ＷＰ１）を通じてバタフライ演算ユニット２からの第５段階出力データをデータレジスタユニット４に記憶させる。第５段階出力データは第一巡一次元ＤＣＴ演算の基準化一次元変換データ���して作用する。
【００２２】
上記米国特許で開示された二次元ＤＣＴ方法と異なる所は、ＤＣＴ速算法の第６段階演算が第一巡一次元ＤＣＴ演算中で省略されている。したがって、基準化一次元変換データがデータレジスタユニット４内に記憶された際、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じて順に他の方向から基準化一次元変換データをバタフライ演算ユニット２に出力し、例えば列（或いは行）の方式で、これによりバタフライ演算ユニット２が第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第１段階演算を行う。第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第２から第５段階演算はしかる後に第一巡一次元ＤＣＴ演算のＤＣＴ速算法の第２から第５段階演算と同じ形式で行う。次に、制御ユニット６がデータレジスタユニット４を制御して、書込みポート（ＷＰ１）を通じてバタフライ演算ユニット２の第５段階出力データをデータレジスタユニット４に記憶させる。第５段階出力データは第二巡一次元ＤＣＴ演算の基準化二次元変換データとして作用する。
【００２３】
続いて、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ２）を通じて基準化二次元変換データを乗法演算ユニット３に提供し、乗法演算ユニット３が、図３（Ａ）で示した且つ係数ＲＯＭ３４内の記憶される一組の重み係数により、各列（或いは各行）の八つの内部乗法演算を含む第二巡一次元ＤＣＴ演算のＤＣＴ速算法の第６段階演算を行って、これにより入力画素データ（Ｄｉｎ）に対応する二次元変換データを得る。最後に、制御ユニット６が出力ユニット５を制御して、乗法演算ユニット３の乗法器回路３３から二次元変換データを受け、二次元変換データを外部装置（図示せず）に提供するのである。
【００２４】
図４及び図６に示す如く、第一巡一次元ＩＤＣＴ演算の期間中、一個の８×８データブロックの６４個の変換データは列の方式（或いは行の方式）で順に入力ユニット１に供給される。制御ユニット６は入力ユニット１を制御して入力変換データ（Ｄｉｎ）を乗法演算ユニット３に発送し、乗法演算ユニット３が各列（或いは行）の八つの内部乗法演算を含むＩＤＣＴ速算法の第１段階演算を行う。上記米国特許で開示した二次元ＩＤＣＴ方法と異なるのは、第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算を、図３（Ｂ）で示した且つ係数ＲＯＭ３４内に記憶される一組の重み係数により行うことで、第二巡一次元ＩＤＣＴ演算にＩＤＣＴ速算法の第１段階演算を省略することができる。乗法演算ユニット３はこの際基準化第１段階出力データを出力する。
【００２５】
制御ユニット６はデータレジスタユニット４を制御して、乗法演算ユニット３からの基準化第１段階出力データを書込みポート（ＷＰ２）を通じてデータレジスタユニット４内に記憶させる。基準化第１段階出力データがデータレジスタユニット４に記憶されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じてその得られた基準化第１段階出力データをバタフライ演算ユニット２に供給し、バタフライ演算ユニット２が各列（或いは行）の四つバタフライ演算を含むＩＤＣＴ速算法の第２段階演算を行う。制御ユニット６が又もデータレジスタユニット４を制御して、書込みポート（ＷＰ１）を通じてバタフライ演算ユニット２からの第２段階出力データをデータレジスタユニット４に記憶させる。その所定の第２段階出力データがデータレジスタユニット４に記憶されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ２）を通じてそれら所定の第２段階出力データを乗法演算ユニット３に供給し、乗法演算ユニット３が各列（或いは行）の三つ相乗後減算を含むＩＤＣＴ速算法の第３段階演算を行い、バタフライ演算ユニット２は持続的にＩＤＣＴ速算法の第２段階演算を行う。制御ユニット６は更にデータレジスタユニット４を制御して、書込みポート（ＷＰ２）を通じて乗法演算ユニット３からの第３段階出力データをデータレジスタユニット４に記憶させる。バタフライ演算ユニット２においてＩＤＣＴ速算法の第２段階演算を完成されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じて所定の順で第２段階及び第３段階出力データをバタフライ演算ユニット２に送り、バタフライ演算ユニット２が各列（或いは各行）の他の四つバタフライ演算を含むＩＤＣＴ速算法の第４段階演算を行う。制御ユニット６が又もデータレジスタユニット４を制御して、書込みポート（ＷＰ１）を通じてバタフライ演算ユニット２からの第４段階出力データをデータレジスタユニット４内に記憶させる。所定の第４段階出力データがデータレジスタユニット４に記憶されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ２）を通じてそれら所定の第４段階出力データを乗法演算ユニット３に供給し、乗法演算ユニット３が各列（或いは各行）の二つの相乗後減算演算を含むＩＤＣＴ速算法の第５段階演算を行い、バタフライ演算ユニット２は持続的にＩＤＣＴ速算法の第４段階演算を行う。制御ユニット６が又もデータレジスタユニット４を制御して、書込みポート（ＷＰ２）を通じて乗法演算ユニット３からの第５段階出力データをデータレジスタユニット４に記憶させる。バタフライ演算ユニット２がＩＤＣＴ速算法の第４段階演算を行えば、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じて所定順に第４段階及び第５段階出力データをバタフライ演算ユニット２に供給し、バタフライ演算ユニット２が各列（或いは各行）の外の四つバタフライ演算を含むＩＤＣＴ速算法の第６段階演算を行う。制御ユニット６がデータレジスタユニット４を制御して第６段階出力データを記憶させ、第６段階出力データは第一巡一次元ＩＤＣＴ演算の基準化一次元変換データとして作用する。
【００２６】
上述したように、第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算は本発明の比較的好ましい実施例のＩＤＣＴ方法では省略している。したがって、基準化一次元データがデータレジスタユニット４内に記憶されると、制御ユニット６がデータレジスタユニット４を制御して、読取りポート（ＲＰ１）を通じて順にもう一つの方向、例えば行（或いは列）の方式で基準化一次元変換データをバタフライ演算ユニット２に出力し、これによりバタフライ演算ユニット２は第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第２段階演算を行える。第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第３から第６段階演算は、しかる後に第一巡一次元演算のＩＤＣＴ速算法の第３から第６段階演算と同じ形式で行われる。次に、制御ユニット６が出力ユニット５を制御して、バタフライ演算ユニット２のバタフライ形回路２２から第６段階出力データを受けて二次元変換データとし、６段階出力データを外部装置（図示せず）へ提供することができる。
【００２７】
図７に示すのは、本発明の比較的好ましい実施例の二次元ＤＣＴ／ＩＤＣＴ方法を行うのに用いられるもう一種のＤＣＴ／ＩＤＣＴ装置である。ＤＣＴ／ＩＤＣＴ装置の構造は米国特許第５，４７１，４１２号で述べたものを基本としている。図７のＤＣＴ／ＩＤＣＴ装置は８×８データブロックの二次元ＤＣＴ／ＩＤＣＴ循環と平行パイプライン方式処理を行い、二つの第一巡及び第二巡一次元ＤＣＴ／ＩＤＣＴ処理ユニット１０１，１０２及び制御ユニット１０３とを含み表示される。第一巡一次元ＤＣＴ／ＩＤＣＴ処理ユニット１０１は、デマルチプレクサのような入力ユニット１０１１、マルチプレクサ１０１２１とバタフライ形回路１０１２２を具えたバタフライ演算ユニット１０１２、入力選択マルチプレクサ１０１３１と加算／減算回路１０１３２と乗法器回路１０１３３と係数ＲＯＭ１０１３４と出力セレクトマルチプレクサ１０１３５を具えた乗法演算ユニット１０１３、及び第一巡一次元ＤＣＴ／ＩＤＣＴ演算の各段階の演算結果を記憶して且つ入力データを第二巡一次元ＤＣＴ／ＩＤＣＴ処理ユニット１０２に供給するに用いられる転置メモリの作用をするデータレジスタユニット（Ａ）１０１４を含む。第二巡一次元ＤＣＴ／ＩＤＣＴ処理ユニット１０２は、マルチプレクサ１０２１１とバタフライ形回路１０２１２を具えたバタフライ演算ユニット１０２１、入力セレクタマルチプレクサ１０２２１と加算／減算回路１０２２２と乗法器回路１０２２３と係数ＲＯＭ１０２２４と出力セレクタマルチプレクサ１０２２５を具えた乗法演算ユニット１０２２、データレジスタユニット（Ｂ）１０２３、及びマルチプレクサのような出力ユニット１０２４を含む。ＤＣＴ速算法の第６段階演算が第一巡一次元ＤＣＴ演算で省略されて、ＩＤＣＴ速算法の第１段階演算が第二巡一次元ＩＤＣＴ演算で省略されていることから、乗法器回路１０１３３，１０２２３はそれぞれの係数ＲＯＭ１０１３４，１０２２４が必要であり、特に係数ＲＯＭ１０１３４はＤＣＴ処理期間にａ１、ａ２、ｂ１、ｂ２とｂ３を含んで、ＩＤＣＴ処理期間にｑ１、ｑ２、ｑ３、ｒ１、ｒ２とＰｉ、ｊ（ｉ、ｊ＝０から７）を含む。係数ＲＯＭ１０２２４はＤＣＴ処理期間にａ１、ａ２、ｂ１、ｂ２、ｂ３とＣｉ、ｊ（ｉ、ｊ＝０から７）を含んで、ＩＤＣＴ処理期間にｑ１、ｑ２、ｑ３、ｒ１とｒ２を含む。制御ユニット１０３は係数ＲＯＭ１０１３４，１０２２４及びデータレジスタユニット１０１４，１０２３の読取り／書込み操作を制御して、異なる各マルチプレクサ１０１２１，１０１３１，１０１３５，１０２１１，１０２２１，１０２２５をも制御する。制御ユニット１０３は更に第一及び第二巡一次元ＤＣＴ／ＩＤＣＴ処理ユニット１０１，１０２の残りの部材の操作タイミングを制御する。
【００２８】
図７及び図８に示すように、装置が二次元ＤＣＴ処理をする際、第一処理ユニット１０１が図９のＤＣＴ速算法の前の５段階演算を行って、第二処理ユニット１０２に供給する基準化一次元変換データを得る。第二処理ユニット１０２がしかる後に図９のＤＣＴ速算法の第６段階演算を行って、出力ユニット１０２４から外部装置（図示せず）へ伝送される二次元変換データを得る。そして、装置が二次元ＩＤＣＴ処理をする時は、第一処理ユニット１０１が図１１のＩＤＣＴ速算法の全て６段階演算を行って、第二処理ユニット１０２に供給される基準化一次元変換データを得る。第二処理ユニット１０２がしかる後に図１１のＩＤＣＴ速算法の後の五段階演算を行って、出力ユニット１０２４が外部装置（図示せず）へ伝送する二次元変換データを得る。
【００２９】
図７の装置は図４の装置の二倍の処理速度を具えており、これにより高い出力ビット転送速度を許される。したがって、第二巡一次元ＤＣＴ演算のＤＣＴ速算法の内部乗法演算中、即ち、第６段階演算で一組の基準化重み係数を使用することにより、第一巡一次元ＤＣＴ演算のＤＣＴ速算法の第６段階演算を省略することができる。同様に、第一巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の内部乗法演算中、即ち、第１段階演算でセットの基準化重み係数を使用することにより、第二巡一次元ＩＤＣＴ演算のＩＤＣＴ速算法の第１段階演算を省略することができる。それ故、二次元ＤＣＴ／ＩＤＣＴ処理は一個の速算法の６段階演算を具えた一次元ＤＣＴ／ＩＤＣＴ演算、及びもう一個の速算法の５段階演算を具えた一次元ＤＣＴ／ＩＤＣＴ演算を利用して行われる。これにより、そのうちの一個の一次元ＤＣＴ／ＩＤＣＴ演算が１３個の乗法演算を含んで、もう一個の一次元ＤＣＴ／ＩＤＣＴ演算が僅かに５個の乗法演算を含み、したがって、一個の８×８データブロックから言うと、本発明の二次元ＤＥＣＴ／ＩＤＣＴ方法中の乗法演算の総数を１４４個（８×１３＋８×５）までに減少でき、上記米国特許に比べて乗法演算総数を３１％も減少でき、明らかに処理速度を向上させ得る。
【００３０】
【発明の効果】
上記のように構成された本発明は、二つの一次元ＤＣＴ／ＩＤＣＴ演算中のうち、一方の６段階演算ＤＣＴ／ＩＤＣＴ速算法の内部乗法演算に一組の基準化重み係数を使用したことから、他方の一次元ＤＣＴ／ＩＤＣＴ演算のＤＣＴ／ＩＤＣＴ速算法におけるそれと対応する演算を省略できて、二次元ＤＣＴ／ＩＤＣＴ処理の乗法演算の数を減らしてより高い処理速度を実現することができる。
【図面の簡単な説明】
【図１】本発明のＤＣＴ方法の比較的好ましい実施例のフローチャートである。
【図２】本発明のＩＤＣＴ方法の比較的好ましい実施例のフローチャートである。
【図３】（Ａ）は上記実施例のＤＣＴ方法で使用される一組の基準化重み係数表示図、
（Ｂ）は上記実施例のＩＤＣＴ方法で使用される一組の基準化重み係数表示図である。
【図４】上記実施例のＤＣＴ／ＩＤＣＴ方法を行うのに使われるＤＣＴ／ＩＤＣＴ装置例の電気回路ブロック図である。
【図５】図４の装置が二次元ＤＣＴを行う際の演算タイミング図である。
【図６】図４の装置が二次元ＩＤＣＴを行う際の演算タイミング図である。
【図７】上記実施例のＤＣＴ／ＩＤＣＴ方法に使われるもう一つのＤＣＴ／ＩＤＣＴ装置例の電気回路ブロック図である。
【図８】図７の装置の操作タイミング図である。
【図９】従来例のＤＣＴ装置の一次元変換演算中で使用されるＤＣＴ迅速演算法のフローグラフである。
【図１０】（Ａ）は図９のフローグラフにおけるバタフライ演算を説明する図、（Ｂ）は図９のフローグラフにおける内部乗法演算を説明する図、（Ｃ）は図９のフローグラフにおける加算後相乗演算を説明する図、（Ｄ）は図９のフローグラフにおける相乗後減算演算を説明する図である。
【図１１】従来例のＩＤＣＴ装置の一次元変換演算中で使用されるＩＤＣＴ速算法のフローグラフである。
【符号の説明】
１  入力ユニット
２  バタフライ演算ユニット
３  乗法演算ユニット
４  データレジスタユニット
２１  マルチプレクサ
２２  バタフライ形回路
３１  入力選択マルチプレクサ
３２  加算／減算回路
３３  乗法器回路
３４  係数ＲＯＭ
３５  出力選択マルチプレクサ
Ｄｉｎ  入力データ
ＷＰ１  書込みポート
ＷＰ２  書込みポート
ＲＰ１  読取りポート
ＲＰ２  読取りポート
１０１  ＤＣＴ／ＩＤＣＴ処理ユニット
１０２  ＤＣＴ／ＩＤＣＴ処理ユニット
１０３  制御ユニット
【図１】
0003852895.tif 000002
【図２】
0003852895.tif 000003
【図３】
0003852895.tif 000004
【図４】
0003852895.tif 000005
【図５】
0003852895.tif 000006
【図６】
0003852895.tif 000007
【図７】
0003852895.tif 000008
【図８】
0003852895.tif 000009
【図９】
0003852895.tif 000010
【図１０】
0003852895.tif 000011
【図１１】
0003852895.tif 000012