JP3025750B2 - 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ - Google Patents

離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ

Info

Publication number
JP3025750B2
JP3025750B2 JP28092695A JP28092695A JP3025750B2 JP 3025750 B2 JP3025750 B2 JP 3025750B2 JP 28092695 A JP28092695 A JP 28092695A JP 28092695 A JP28092695 A JP 28092695A JP 3025750 B2 JP3025750 B2 JP 3025750B2
Authority
JP
Japan
Prior art keywords
group
discrete cosine
circuit
input data
result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP28092695A
Other languages
English (en)
Other versions
JPH08329047A (ja
Inventor
茂之 岡田
直樹 棚橋
勇人 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP28092695A priority Critical patent/JP3025750B2/ja
Priority to KR1019950043215A priority patent/KR100377084B1/ko
Priority to US08/564,480 priority patent/US5748514A/en
Publication of JPH08329047A publication Critical patent/JPH08329047A/ja
Application granted granted Critical
Publication of JP3025750B2 publication Critical patent/JP3025750B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Multimedia (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は離散コサイン変換回
路,離散コサイン逆変換回路,MPEG(MovingPictur
e Expert Group )ビデオエンコーダ,MPEGビデオ
デコーダに関するものである。
【0002】
【従来の技術】マルチメディアで扱われる情報は、膨大
な量で且つ多種多様であり、これらの情報を高速に処理
することがマルチメディアの実用化を図る上で必要とな
ってくる。情報を高速に処理するためには、データの圧
縮・伸長技術が不可欠となる。そのようなデータの圧縮
・伸長技術として「MPEG(Moving Picture ExpertG
roup )」方式が挙げられる。このMPEG方式は、I
SO(International Organization for Standardizati
on)/IEC(Intarnational ElectrotechnicalCommis
sion )傘下のMPEG委員会(ISO/IEC JTC1/SC29/WG1
1)によって標準化されつつある。MPEGは3つのパ
ートから構成されている。パート1の「MPEGシステ
ムパート」(ISO/IEC IS 11172 Part1:Systems)では、
ビデオデータとオーディオデータの多重化構造(マルチ
プレクス・ストラクチャ)および同期方式が規定され
る。パート2の「MPEGビデオパート」(ISO/IEC IS
11172Part2:Video)では、ビデオデータの高能率符号
化方式およびビデオデータのフォーマットが規定され
る。パート3の「MPEGオーディオパート」(ISO/IE
CIS 11172 Part3:Audio)では、オーディオデータの高
能率符号化方式およびオーディオデータのフォーマット
が規定される。
【0003】尚、MPEGには主にエンコードレートの
違いにより、現在のところ、MPEG−1,MPEG−
2の2つの方式がある。MPEG−1は主にCD−RO
M(CD-Read Only Memory )ファミリーなどの蓄積メデ
ィアに対応しており、MPEG−2はMPEG−1をも
含む幅広い範囲のアプリケーションに対応している。
【0004】MPEGビデオパートで用いられる技術の
核となるのが、動き補償付予測(MC;Motion Compens
ated prediction )と離散コサイン変換(DCT;Disc
reteCosine Transform )である。MCとDCTを併用
した符号化技術は、ハイブリッド符号化技術と呼ばれ
る。
【0005】MPEGビデオパートで扱われる実際の画
面では、水平方向および垂直方向のいずれにも相関があ
る。そのため、まず、画面を水平方向および垂直方向に
それぞれN画素からなる小ブロックに分割し、次に、こ
のN×N個の小ブロックに対して2次元のDCTを施
す。ここで、1画素はDCTにおける1要素に対応す
る。また、Nが大きいほど符号化効率は良くなるが、演
算量は増えることになる。つまり、符号化効率と演算量
はトレードオフの関係にある。そのため、MPEGビデ
オパートでは、通常、N=8程度がよく用いられる。D
CTは、基本的にはフーリエ変換のように時間信号を周
波数成分に分解する変換である。すなわち、フーリエ変
換は複素数演算を有し、実数部と虚数部に分解するのに
対し、DCTはその実数部のみを取り出したものと考え
ることができる。
【0006】MPEGビデオパートではエンコード時に
DCT(別名FDCT;Forward DCT)を用い、画面
(画像信号)を周波数成分に分解して処理する。そし
て、デコード時にDCTの逆変換(IDCT;Inverse
DCT)を用い、周波数成分を再び画面(画像信号)に
戻す。
【0007】2次元のDCTの演算において、変換式を
そのまま単純に実行すると、演算回数が膨大になるため
大規模なハードウェアが必要となる。例えば、N=8の
N×N要素(画素)の2次元のDCT演算を施すには、
乗算;4096回、加算;4096回の演算が必要であ
る。そこで、2次元のDCTを1次元のDCTで簡約化
することで、演算回数を減らすことが考えられている。
すなわち、まず、N要素の1次元のDCTを水平方向に
Nライン分施し、次に、N要素の1次元のDCTを垂直
方向にNライン分施す。このようにすれば、N×N要素
の2次元のDCTを施したのと等価になる。この場合、
N=8とすると、1次元のDCTについて、1要素につ
き乗算;8回、加算;8回の演算が必要であり、1ライ
ンにつき乗算;64回、加算;64回の演算が必要であ
る。従って、1次元のDCTを2回施すとなると、乗算
および加算の回数はそれぞれ1回当たりの16倍とな
り、乗算;1024回、加算;1026回の演算が必要
である。これは、FDCTだけでなく、IDCTにおい
ても同様である。
【0008】ところで、2次元のDCTの演算をさらに
高速で行うには、2次元のDCTを1次元のDCTで簡
約化するだけでなく、1次元のDCTの演算回数それ自
体についても減らす必要がある。そこで、「高速アルゴ
リズム」と呼ばれる演算の簡略手法が考えられている。
すなわち、DCTの変換式をそのまま展開すると、乗数
となるコサイン係数が等しくなる乗算項が存在する。そ
れを利用し、共通のコサイン係数をもつ乗算をまとめる
ことにより、乗算回数を減らすようにしたのが高速アル
ゴリズムである。中でも、一般に「バタフライ演算」と
呼ばれる高速アルゴリズムはその草分けであり、従来の
MPEGビデオエンコーダおよびデコーダでは、通常、
このバタフライ演算が用いられている。バタフライ演算
を用いた場合、N=8とすると、1次元のDCTについ
て、1ラインにつき乗算;16回、加算;26回の演算
が必要である。従って、前記したように、2次元のDC
Tを1次元のDCTで簡約化するために1次元のDCT
を2回施すとなると、乗算および加算の回数はそれぞれ
1回当たりの16倍となり、乗算;256回、加算;4
16回の演算で済むことになる。これは、FDCTだけ
でなく、IDCTにおいても同様である。
【0009】ちなみに、高速アルゴリズムついては、
(K.r.Rao/P.Yip 共著,安田/藤原共訳「画像符号化技
術−DCTとその国際基準−」,オーム社,1992年)に
詳しい。
【0010】ところで、高速アルゴリズムを用いて演算
の簡略化を図った場合でも、単純に2次元のDCTの演
算を行うと、演算回数が多いため大規模なハードウェア
が必要となる。例えば、前記したN=8のバタフライ演
算を単純に行う場合、乗算器;256個、加算器;41
6個が必要となる。従って、この演算回路をLSI化す
る場合、1チップでの実現はほぼ不可能である。仮に、
乗算器を1つ当たり1000ゲートとした場合でも、演
算回路全体では20万ゲート以上になってしまう。これ
は、FDCTだけでなく、IDCTにおいても同様であ
る。
【0011】そこで、図11または図12に示すよう
に、2次元のDCTの演算を単純に行う場合よりも小さ
な単位の機能ブロックをもち、その機能ブロックを繰り
返し用いる構成が考えられる。
【0012】図11に、1次元のFDCT回路(または
IDCT回路)1組で2次元のFDCT回路100(ま
たはIDCT回路105)を構成した例を示す。入力デ
ータDinは、制御部101を介してN要素の1次元のF
DCT回路102へ転送される。FDCT回路102
は、バタフライ演算を用い、入力データDinに対して1
次元のFDCT演算を水平方向にNライン分施す。その
演算結果は、制御部101を介してレジスタ103へ転
送される。レジスタ103は、その演算結果を格納す
る。
【0013】次に、レジスタ103に格納された演算結
果が、制御部101を介して1次元のFDCT回路10
2へ転送される。FDCT回路102は、前記演算結果
に対して1次元のFDCT演算を垂直方向にNライン分
施す。その結果、N×N要素の2次元のFDCTの演算
結果である出力データDout が得られ、その出力データ
Dout は制御部101を介して出力される。
【0014】尚、水平方向および垂直方向の各FDCT
演算における中間値についても、レジスタ103に格納
される。ここで、N要素の1次元のFDCT回路102
は、N=8とすると、16個の乗算器と26個の加算器
で構成することができる。
【0015】2次元のFDCT回路100では、N=8
とすると、水平方向および垂直方向にそれぞれ8回ず
つ、合計16回、FDCT回路102を動作させること
になる。FDCT回路102はバタフライ演算を用いる
ため、1回の動作に要する時間(8要素の1次元のFD
CT演算に要する時間)は6クロックである。従って、
8×8要素の2次元のFDCT演算に要する時間は96
(=16×6)クロックとなる。
【0016】尚、2次元のIDCT回路105を構成す
る場合は、FDCT回路102をIDCT回路104に
置き代えればよい。N要素の2次元のIDCT回路10
4もバタフライ演算を用いる。この場合、N=8とする
と、IDCT回路104は、FDCT回路102と同様
に、16個の乗算器と26個の加算器で構成することが
でき、1回の動作に要する時間(8要素の1次元のID
CT演算に要する時間)は6クロックである。また、8
×8要素の2次元のIDCT演算に要する時間は、FD
CT演算の場合と同様に96クロックとなる。
【0017】図12に、1次元のFDCT回路(または
IDCT回路)2組で2次元のFDCT回路110(ま
たはIDCT回路133)を構成した例を示す。入力デ
ータDinは、制御部111を介してN要素の1次元のF
DCT回路112へ転送される。FDCT回路112
は、バタフライ演算を用い、入力データDinに対して1
次元のFDCT演算を水平方向にNライン分施す。その
演算結果は、制御部111を介してレジスタ114へ転
送される。レジスタ114は、その演算結果を格納す
る。尚、このFDCT演算における中間値はレジスタ1
13に格納される。
【0018】次に、レジスタ114に格納された演算結
果が、制御部121を介してN要素の1次元のFDCT
回路122へ転送される。FDCT回路122は、バタ
フライ演算を用い、前記演算結果に対して1次元のFD
CT演算を垂直方向にNライン分施す。その結果、N×
N要素の2次元のFDCTの演算結果である出力データ
Dout が得られ、その出力データDout は制御部121
を介して出力される。尚、このFDCT演算における中
間値はレジスタ123に格納される。
【0019】このように、2次元のFDCT回路110
は、図11に示した2次元のFDCT回路100と同じ
構成の2次元のFDCT回路を、2段シリーズに接続し
た構成になっている。
【0020】ここで、N要素の1次元のFDCT回路1
12,122はそれぞれ、N=8とすると、16個の乗
算器と26個の加算器で構成することができる。2次元
のFDCT回路110では、N=8とすると、水平方向
および垂直方向にそれぞれ8回ずつ、つまり、各FDC
T回路112,122をそれぞれ単独で8回ずつ動作さ
せることになる。FDCT回路112,122はバタフ
ライ演算を用いるため、1回の動作に要する時間(8要
素の1次元のFDCT演算に要する時間)は6クロック
である。従って、8×8要素の2次元のFDCT演算に
要する時間は48(=8×6)クロックとなる。
【0021】尚、2次元のIDCT回路133を構成す
る場合は、FDCT回路112,122をIDCT回路
131,132に置き代えればよい。N要素の2次元の
IDCT回路131,132もバタフライ演算を用い
る。この場合、N=8とすると、IDCT回路131,
132は、FDCT回路112,122と同様に、16
個の乗算器と26個の加算器で構成することができ、1
回の動作に要する時間(8要素の1次元のIDCT演算
に要する時間)は6クロックである。また、8×8要素
の2次元のIDCT演算に要する時間は、FDCT演算
の場合と同様に48クロックとなる。
【0022】ところで、2次元のFDCT回路110
(IDCT回路133)では、FDCT回路112,1
22(IDCT回路131,132)をそれぞれ独立で
動作させることが可能なため、パイプライン化に有利で
ある。
【0023】
【発明が解決しようとする課題】近年、MPEGビデオ
エンコーダおよびデコーダにおいて、動作速度をさらに
高速化した上で、ハードウェアをさらに縮小化すること
が求められている。これを実現するためには、2次元の
FDCT(またはIDCT)回路について、動作速度を
さらに高速化した上で、ハードウェアをさらに縮小化す
る必要がある。
【0024】本発明は上記要求を満足するためになされ
たものであって、以下の目的を有するものである。 1〕高速動作が可能で且つハードウェアが小さなFDC
T(離散コサイン変換)回路を提供する。
【0025】2〕高速動作が可能で且つハードウェアが
小さなIDCT(離散コサイン逆変換)回路を提供す
る。 3〕高速動作が可能で且つハードウェアが小さなMPE
Gビデオエンコーダを提供する。
【0026】4〕高速動作が可能で且つハードウェアが
小さなMPEGビデオデコーダを提供する。
【0027】
【課題を解決するための手段】請求項1に記載の発明
は、パラレルに入力された各入力データ(F(X1)〜
F(X8))にそれぞれコサイン係数を乗算する定数乗
算器群(11〜18)と、定数乗算器群の乗算結果を加
減算することで、入力データの離散コサイン逆変換結果
である出力データ(f(y1),f(y2))を生成す
る加減算器群(21〜28)とを備えたことをその要旨
とする。
【0028】請求項2に記載の発明は、パラレルに入力
された各入力データにそれぞれコサイン係数を乗算する
定数乗算器群と、定数乗算器群の各定数乗算器の乗算結
果の正負を設定する設定手段と、設定手段によって正負
が設定された定数乗算器群の乗算結果を加減算すること
で、入力データの離散コサイン逆変換結果である出力デ
ータを生成する加減算器群とを備えたことをその要旨と
する。
【0029】請求項3に記載の発明は、パラレルに入力
された8つの入力データにそれぞれコサイン係数を乗算
する定数乗算器群と、定数乗算器群の各定数乗算器の乗
算結果の正負を設定する設定手段と、設定手段によって
正負が設定された定数乗算器群の乗算結果を加減算する
ことで、入力データの離散コサイン逆変換結果である出
力データを2ピクセルずつ生成する加減算器群とを備え
たことをその要旨とする。
【0030】請求項4に記載の発明は、パラレルに入力
された各入力データ(f(0)〜f(7))を加減算す
る加減算器群(32〜43)と、加減算器群からパラレ
ルに出力された加減算結果にそれぞれコサイン係数を乗
算する定数乗算器群(11〜18)と、定数乗算器群の
乗算結果を加算することで、入力データの離散コサイン
変換結果である出力データ(F(y1),F(y2))
を生成する加算器群(21〜26)とを備えたことをそ
の要旨とする。
【0031】請求項5に記載の発明は、パラレルに入力
された各入力データを加減算する加減算器群と、加減算
器群からパラレルに出力された加減算結果にそれぞれ
サイン係数を乗算する定数乗算器群と、定数乗算器群の
各定数乗算器の乗算結果の正負を設定する設定手段と、
設定手段によって正負が設定された定数乗算器群の乗算
結果を加算することで、入力データの離散コサイン変換
結果である出力データを生成する加算器群とを備えたこ
とをその要旨とする。
【0032】請求項6に記載の発明は、パラレルに入力
された8つの各入力データを加減算する加減算器群と、
加減算器群からパラレルに出力された加減算結果にそれ
ぞれコサイン係数を乗算する定数乗算器群と、定数乗算
器群の各定数乗算器の乗算結果の正負を設定する設定手
段と、設定手段によって正負が設定された定数乗算器群
の乗算結果を加算することで、入力データの離散コサイ
ン変換結果である出力データを2ピクセルずつ生成する
加算器群とを備えたことをその要旨とする。
【0033】請求項7に記載の発明は、パラレルに入力
された第1の入力データ群(f(0)〜f(7))を加
減算する第1の加減算器群(32〜43)と、パラレル
に入力された第2の入力データ群(F(x1)〜F(x
8))と第1の加減算器群の加減算結果とのいずれか一
方を選択する切換手段(62)と、切換手段の出力にコ
サイン係数を乗算する定数乗算器群(11〜18)と、
定数乗算器群の乗算結果を加減算することで、第1の入
力データ群の離散コサイン変換結果(F(y1),F
(y2))または第2の入力データ群の離散コサイン逆
変換結果(f(y1),f(y2))である出力データ
を生成する第2の加減算器群(21〜28)とを備えた
ことをその要旨とする。
【0034】請求項8に記載の発明は、パラレルに入力
された第1の入力データ群を加減算する第1の加減算器
群と、パラレルに入力された第2の入力データ群と第1
の加減算器群の加減算結果とのいずれか一方を選択する
切換手段と、切換手段の出力にコサイン係数を乗算する
定数乗算器群と、定数乗算器群の各定数乗算器の乗算結
果の正負を設定する設定手段と、設定手段によって正負
が設定された定数乗算器群の乗算結果を加減算すること
で、第1の入力データ群の離散コサイン変換結果または
第2の入力データ群の離散コサイン逆変換結果である出
力データを生成する第2の加減算器群とを備えたことを
その要旨とする。
【0035】請求項9に記載の発明は、パラレルに入力
された8つのデータから成る第1の入力データ群を加減
算する第1の加減算器群と、パラレルに入力された第2
の入力データ群と第1の加減算器群の加減算結果とのい
ずれか一方を選択する切換手段と、切換手段の出力にコ
サイン係数を乗算する定数乗算器群と、定数乗算器群の
各定数乗算器の乗算結果の正負を設定する設定手段と、
設定手段によって正負が設定された定数乗算器群の乗算
結果を加減算することで、第1の入力データ群の離散コ
サイン変換結果または第2の入力データ群の離散コサイ
ン逆変換結果である出力データを2ピクセルずつ生成す
る第2の加減算器群とを備えたことをその要旨とする。
【0036】請求項10に記載の発明は、請求項4〜9
のいずれか1項に記載の離散コサイン変換回路(31,
61)と、その離散コサイン変換回路の出力データを格
納するレジスタ(72)と、そのレジスタに格納された
出力データを、入力データとして再び前記離散コサイン
変換回路へ転送する制御手段(71)とを備えたことを
その要旨とする。
【0037】請求項11に記載の発明は、請求項4〜9
のいずれか1項に記載の第1および第2の離散コサイン
変換回路(31a,31b)と、第1の離散コサイン変
換回路の出力データを格納するレジスタ(83)と、そ
のレジスタに格納された出力データを、入力データとし
て第2の離散コサイン変換回路へ転送する制御手段(8
2)とを備えたことをその要旨とする。
【0038】請求項12に記載の発明は、請求項1〜3
のいずれか1項に記載の離散コサイン逆変換回路(1)
と、その離散コサイン逆変換回路の出力データを格納す
るレジスタ(72)と、そのレジスタに格納された出力
データを、入力データとして再び前記離散コサイン逆変
換回路へ転送する制御手段(71)とを備えたことをそ
の要旨とする。
【0039】請求項13に記載の発明は、請求項1〜3
のいずれか1項に記載の第1および第2の離散コサイン
逆変換回路と、第1の離散コサイン逆変換回路の出力デ
ータを格納するレジスタと、そのレジスタに格納された
出力データを、入力データとして第2の離散コサイン逆
変換回路へ転送する制御手段とを備えたことをその要旨
とする。
【0040】請求項14に記載の発明は、請求項10ま
たは請求項11に記載の2次元の離散コサイン変換回路
を用いたことをその要旨とする。請求項15に記載の発
明は、請求項12または請求項13に記載の2次元の離
散コサイン逆変換回路を用いたことをその要旨とする。
請求項16に記載の発明は、請求項1〜3のいずれか1
項に記載の1次元の離散コサイン逆変換回路において、
前記定数乗算器群が、パラレルに入力された各入力デー
タに対し、それぞれ1つずつのコサイン定数を乗算する
よう構成されていることをその要旨とする。 請求項17
に記載の発明は、請求項4〜6のいずれか1項に記載の
1次元の離散コサイン変換回路において、前記定数乗算
器群が、前記加減算器からパラレルに出力された加減算
結果に対し、それぞれ1つずつのコサイン定数を乗算す
るよう構成されていることをその要旨とする。
【0041】請求項1〜3のいずれか1項に記載の発明
によれば、バタフライ演算を用いることなく、計算式に
従った演算アルゴリズムによって離散コサイン逆変換を
行うことができる。その結果、バタフライ演算を用いた
場合に比べ、高速動作が可能になる上に、ハードウェア
の縮小化が可能になる。
【0042】請求項4〜9のいずれか1項に記載の発明
によれば、バタフライ演算を用いることなく、計算式に
従った演算アルゴリズムによって離散コサイン変換を行
うことができる。その結果、バタフライ演算を用いた場
合に比べ、高速動作が可能になる上に、ハードウェアの
縮小化が可能になる。
【0043】請求項7〜9に記載の発明によれば、切換
手段によって第1の加減算器群の加減算結果と第2の入
力データ群とのいずれか一方を選択することで、定数乗
算器群は第1の加減算器群の加減算結果または第2の入
力データ群にコサイン係数を乗算することができる。従
って、1つの回路で、離散コサイン変換と離散コサイン
逆変換とを切り換えて実行することができる。
【0044】請求項10に記載の発明によれば、請求項
4〜9のいずれか1項に記載の離散コサイン変換回路に
よる演算処理を2回行うことで2次元の離散コサイン変
換を行うことができる。その結果、ハードウェアの縮小
化が可能になる。
【0045】請求項11に記載の発明によれば、請求項
4〜9のいずれか1項に記載の離散コサイン変換回路を
2組用いることで2次元の離散コサイン変換を行うこと
ができる。その結果、高速動作が可能になる。
【0046】請求項12に記載の発明によれば、請求項
1〜3のいずれか1項に記載の離散コサイン逆変換回路
による演算処理を2回行うことで2次元の離散コサイン
逆変換を行うことができる。その結果、ハードウェアの
縮小化が可能になる。
【0047】請求項13に記載の発明によれば、請求項
1〜3のいずれか1項に記載の離散コサイン逆変換回路
を2組用いることで2次元の離散コサイン逆変換を行う
ことができる。その結果、高速動作が可能になる。
【0048】請求項14に記載の発明によれば、請求項
10または請求項11に記載の2次元の離散コサイン変
換回路の利点を有したMPEGビデオエンコーダを得る
ことができる。
【0049】請求項15に記載の発明によれば、請求項
12または請求項13に記載の2次元の離散コサイン逆
変換回路の利点を有したMPEGビデオデコーダを得る
ことができる。
【0050】
【発明の実施の形態】
(第1実施形態)以下、本発明を1次元のIDCT回路
に具体化した第1実施形態を図面に従って説明する。
【0051】図1に、本実施形態のブロック回路図を示
す。8要素の1次元のIDCT回路1は、定数乗算器1
1〜18と加算器21〜28から構成される。定数乗算
器11,14は正の出力だけをもち、その他の定数乗算
器12,13,15〜18は正負の出力をもっている。
また、加算器28は減算器として働く。そして、IDC
T回路1は、入力データF(x1)〜F(x8)のID
CT演算結果である出力データf(y1),f(y2)
を生成する。
【0052】図2に、IDCT回路1における入力デー
タF(x1)〜F(x8)と出力データf(y1),f
(y2)の関係を示す。各定数乗算器11〜18はそれ
ぞれ、各入力データF(x1)〜F(x8)に対して各
定数C0 〜C7 を乗算する。各定数C0 〜C7 の値は、
式(1)によって求められる。
【0053】 Ci=cos(i×π/16)〔i=0〜7〕 ……(1) また、各定数乗算器12,13,15〜18の出力の正
負は、図2(a)に示す入力データF(x1)〜F(x
8)の組み合わせに従い、図2(b)に示すように選択
される。そして、図2(a)に示す入力データF(x
1)〜F(x8)の組み合わせに対して、図2(c)に
示す出力データf(y1),f(y2)の組み合わせが
得られる。
【0054】例えば、図2(a)〜(c)の組み合わせ
「1」では、F(x1)=F(0)、F(x2)=F
(1)、F(x3)=F(2)、F(x4)=F
(3)、F(x5)=F(4)、F(x6)=F
(5)、F(x7)=F(6)、F(x8)=F(7)
に対して、各定数乗算器11〜18の出力は全て正にな
り、f(y1)=f(0),f(y2)=f(7)が得
られる。
【0055】すなわち、IDCT回路1は、式(2)〜
(5)に示す演算を行う。 f(0)=F(0)C0 +F(2)C2 +F(4)C4 +F(6)C6 +F( 1)C1 +F(3)C3 +F(5)C5 +F(7)C7 f(7)=F(0)C0 +F(2)C2 +F(4)C4 +F(6)C6 −F( 1)C1 −F(3)C3 −F(5)C5 −F(7)C7 ……(2) f(1)=F(0)C0 +F(2)C6 −F(4)C4 −F(6)C2 +F( 1)C3 −F(3)C7 −F(5)C1 −F(7)C5 f(6)=F(0)C0 +F(2)C6 −F(4)C4 −F(6)C2 −F( 1)C3 +F(3)C7 +F(5)C1 +F(7)C5 ……(3) f(2)=F(0)C0 −F(2)C6 −F(4)C4 +F(6)C2 +F( 1)C5 −F(3)C1 +F(5)C7 +F(7)C3 f(5)=F(0)C0 −F(2)C6 −F(4)C4 +F(6)C2 −F( 1)C5 +F(3)C1 −F(5)C7 −F(7)C3 ……(4) f(3)=F(0)C0 −F(2)C2 +F(4)C4 −F(6)C6 +F( 1)C7 −F(3)C5 +F(5)C3 −F(7)C1 f(4)=F(0)C0 −F(2)C2 +F(4)C4 −F(6)C6 −F( 1)C7 +F(3)C5 −F(5)C3 +F(7)C1 ……(5) このように、本実施形態によれば、以下の作用および効
果を得ることができる。
【0056】図2および式(2)〜(5)に示すよう
な組み合わせで、8要素の入力データF(x1)〜F
(x8)が入力される度に、出力データf(y1),f
(y2)が2要素ずつ得られる。すなわち、8要素の1
次元のIDCT演算処理の1サイクルに対して、2ピク
セルの出力データが得られる。従って、4サイクルのI
DCT演算処理によって、8ピクセルの出力データが得
られる。
【0057】IDCT回路1は、8個の定数乗算器1
1〜18と8個の加算器21〜28で構成することがで
きる。ここで、定数乗算器11〜18は44個の加算器
で構成することが可能である。すなわち、IDCT回路
1は52個の加算器だけで構成することができる。
【0058】バタフライ演算では乗算を繰り返すた
め、バタフライ演算を用いる従来のIDCT回路104
において必要な演算精度を確保するには、乗算器と加算
器の間のビット幅(中間演算ビット数)を大きくする必
要がある。それに対して、IDCT回路1では、各定数
乗算器11〜18がそれぞれ1回の定数乗算を行うだけ
であるため、中間演算ビット数が小さくて済む。具体的
には、従来のIDCT回路104では18ビットの中間
演算ビット数が必要であるのに対し、IDCT回路1で
は16ビットの中間演算ビット数で済む。そのため、I
DCT回路1を構成する加算器一つ一つの回路規模(ハ
ードウェア)を小さくすることができる。
【0059】上記〜により、従来のIDCT回路
104に比べ、IDCT回路1の回路規模は大幅に縮小
化される。特に、LSI化する場合、加算器の回路規模
(チップ上の専有面積)は乗算器に比べて小さいため、
加算器だけで構成することが可能なIDCT回路1は、
従来のIDCT回路104に比べてチップ上の専有面積
を大幅に小さくすることができる。
【0060】IDCT回路1の1回(1サイクル)の
動作に要する時間(8要素の1次元のIDCT演算に要
する時間)は、各定数乗算器11〜18の動作に要する
1クロック、各加算器21〜24の動作に要する1クロ
ック、各加算器25,26の動作に要する1クロック、
各加算器27,28の動作に要する1クロックを合計し
た4クロックである。従って、従来のIDCT回路10
4に比べ、IDCT回路1では高速動作が可能となる。
【0061】(第2実施形態)以下、本発明を1次元の
FDCT回路に具体化した第2実施形態を図面に従って
説明する。尚、本実施形態において、第1実施形態と同
じ構成部材については符号を等しくしてその詳細な説明
を省略する。
【0062】図3に、本実施形態のブロック回路図を示
す。8要素の1次元のFDCT回路31は、定数乗算器
11〜18と加算器21〜26,32〜43と切換回路
44とから構成される。各加算器38〜43は減算器と
して働く。定数乗算器11,13,14は正の出力だけ
をもち、その他の定数乗算器12,15〜18は正負の
出力をもっている。そして、FDCT回路31は、入力
データf(0)〜f(7)のFDCT演算結果である出
力データF(y1),F(y2)を生成する。
【0063】図4に、FDCT回路31における入力デ
ータf(0)〜f(7)と出力データF(y1),F
(y2)の関係を示す。切換回路44は、図4(a)に
示すように、加算器36〜43の出力を切り換えて各定
数乗算器11〜18へ出力する。
【0064】各定数乗算器11〜18は、切換回路44
の出力に対して各定数C0 〜C7 を乗算する。各定数C
0 〜C7 の値は、前記式(1)によって求められる。そ
して、各定数乗算器12,15〜18の出力の正負は、
図4(a)に示す切換回路44の切り換え結果に対し
て、図4(b)に示すように選択される。その結果、図
4(a)に示す切換回路44の切り換え結果に対して、
図4(c)に示す出力データF(y1),F(y2)の
組み合わせが得られる。
【0065】例えば、図4(a)〜(c)の組み合わせ
「1」では、入力データf(0)〜f(7)に対して、
各定数乗算器11〜18の出力は全て正になり、F(y
1)=F(0),F(y2)=F(1)が得られる。
【0066】すなわち、FDCT回路31は、式(6)
〜(9)に示す演算を行う。 F(0)=f(0)C4 +f(1)C0 +f(2)C0 +f(3)C4 +f( 4)C4 +f(5)C0 +f(6)C0 +f(7)C4 F(1)=f(0)C1 +f(1)C3 +f(2)C5 +f(3)C7 −f( 4)C7 −f(5)C5 −f(6)C3 −f(7)C1 ……(6) F(2)=f(0)C2 +f(1)C6 −f(2)C6 −f(3)C2 −f( 4)C2 −f(5)C6 +f(6)C6 +f(7)C2 F(3)=f(0)C3 −f(1)C7 −f(2)C1 −f(3)C5 +f( 4)C5 +f(5)C1 +f(6)C7 −f(7)C3 ……(7) F(4)=f(0)C0 −f(1)C4 −f(2)C4 +f(3)C0 +f( 4)C0 −f(5)C4 −f(6)C4 +f(7)C0 F(5)=f(0)C5 −f(1)C1 +f(2)C7 +f(3)C3 −f( 4)C3 −f(5)C7 +f(6)C1 −f(7)C5 ……(8) F(6)=f(0)C6 −f(1)C2 +f(2)C2 −f(3)C6 −f( 4)C6 +f(5)C2 −f(6)C2 +f(7)C6 F(7)=f(0)C7 −f(1)C5 +f(2)C3 −f(3)C1 +f( 4)C1 −f(5)C3 +f(6)C5 −f(7)C7 ……(9) このように、本実施形態によれば、以下の作用および効
果を得ることができる。
【0067】図4および式(6)〜(9)に示すよう
な組み合わせで、8要素の入力データf(0)〜f
(7)が入力されると、出力データF(y1),F(y
2)が2要素ずつ得られる。すなわち、8要素の1次元
のFDCT演算処理の1サイクルに対して、2ピクセル
の出力データが得られる。
【0068】FDCT回路31は、8個の定数乗算器
11〜18と18個の加算器21〜26,32〜43と
切り換え回路44とで構成することができる。すなわ
ち、FDCT回路31は62個の加算器と切り換え回路
44とで構成することができる。ここで、切り換え回路
44は単純なトランスファーゲートの組み合わせだけで
構成することができるため、その回路規模は各加算器2
1〜26,32〜43に比べてはるかに小さい。従っ
て、FDCT回路31の回路規模(ハードウェア)は、
IDCT回路1に10個の加算器を加えたものとほぼ同
等になる。
【0069】バタフライ演算では乗算を繰り返すた
め、バタフライ演算を用いる従来のFDCT回路102
において必要な演算精度を確保するには、乗算器と加算
器の間のビット幅(中間演算ビット数)を大きくする必
要がある。それに対して、FDCT回路31では、各定
数乗算器11〜18がそれぞれ1回の定数乗算を行うだ
けであるため、中間演算ビット数が小さくて済む。その
ため、FDCT回路31を構成する加算器一つ一つの回
路規模を小さくすることができる。
【0070】上記〜により、従来のFDCT回路
102に比べ、FDCT回路31の回路規模は大幅に縮
小化される。特に、LSI化する場合、加算器の回路規
模(チップ上の専有面積)は乗算器に比べて小さいた
め、加算器だけで構成することが可能なFDCT回路3
1は、従来のFDCT回路102に比べてチップ上の専
有面積を大幅に小さくすることができる。
【0071】FDCT回路31の1回(1サイクル)
の動作に要する時間(8要素の1次元のFDCT演算に
要する時間)は、各加算器32〜35の動作に要する1
クロック、各加算器36〜43の動作に要する1クロッ
ク、各定数乗算器11〜18の動作に要する1クロッ
ク、各加算器21〜24の動作に要する1クロック、各
加算器25,26の動作に要する1クロックを合計した
5クロックである。従って、従来のFDCT回路102
に比べ、FDCT回路31では高速動作が可能となる。
【0072】(第3実施形態)以下、本発明を1次元の
IDCTおよびFDCTの共用回路に具体化した第3実
施形態を図面に従って説明する。尚、本実施形態におい
て、第1実施形態および第2実施形態と同じ構成部材に
ついては符号を等しくしてその詳細な説明を省略する。
【0073】図5に、本実施形態のブロック回路図を示
す。8要素の1次元のIDCTおよびFDCTの共用回
路61は、定数乗算器11〜18と加算器21〜28,
32〜43と切換回路44,62とから構成される。各
加算器28,38〜43は減算器として働く。定数乗算
器11,14は正の出力だけをもち、その他の定数乗算
器12,13,15〜18は正負の出力をもっている。
そして、IDCTおよびFDCTの共用回路61は、入
力データF(x1)〜F(x8)のIDCT演算結果で
ある出力データf(y1),f(y2)を生成すると共
に、入力データf(0)〜f(7)のFDCT演算結果
である出力データF(y1),F(y2)を生成する。
【0074】このように、IDCTおよびFDCTの共
用回路61は、IDCT回路1に、、FDCT回路31
と同様の加算器32〜43および切換回路44と、切換
回路62とを加えて構成される。ここで、切換回路62
は、IDCT演算を行う際には入力データF(x1)〜
F(x8)を定数乗算器11〜18へ出力し、FDCT
演算を行う際には切換回路44の出力を定数乗算器11
〜18へ出力する。また、各定数乗算器11〜18の出
力の正負は、IDCT演算を行う際には図2(b)に示
すように、FDCT演算を行う際には図4(b)に示す
ように、それぞれ選択される。そして、各出力データf
(y1),f(y2)は各加算器27,28から出力さ
れ、各出力データF(y1),F(y2)は各加算器2
5,26から出力される。つまり、IDCTおよびFD
CTの共用回路61は、切換回路62によって入力デー
タを切り換えると共に、各定数乗算器11〜18の出力
の正負を切り換えることで、IDCT演算とFDCT演
算とを切り換えて行うことができる。
【0075】すなわち、IDCTおよびFDCTの共用
回路61における入力データF(x1)〜F(x8)と
出力データf(y1),f(y2)の関係は、IDCT
回路1と同様に、図2および式(2)〜(5)に示すよ
うになる。また、IDCTおよびFDCTの共用回路6
1における入力データf(0)〜f(7)と出力データ
F(y1),F(y2)の関係は、FDCT回路31と
同様に、図4および式(6)〜(9)に示すようにな
る。つまり、IDCTおよびFDCTの共用回路61
は、IDCT回路1とFDCT回路31の両機能を備え
ている。
【0076】IDCTおよびFDCTの共用回路61
は、8個の定数乗算器11〜18と20個の加算器21
〜28,32〜43と各切り換え回路44,62とで構
成することができる。すなわち、IDCTおよびFDC
Tの共用回路61は、64個の加算器と各切り換え回路
44,62とで構成することができる。ここで、各切り
換え回路44,62はそれぞれ、単純なトランスファー
ゲートの組み合わせだけで構成することができるため、
その回路規模は各加算器21〜28,32〜43に比べ
てはるかに小さい。従って、IDCTおよびFDCTの
共用回路61の回路規模(ハードウェア)は、FDCT
回路31に2個の加算器を加えたものとほぼ同等にな
る。
【0077】尚、本実施形態におけるその他の作用およ
び効果については、IDCT演算を行う場合は第1実施
形態と、FDCT演算を行う場合は第2実施形態とそれ
ぞれ同じである。
【0078】(第4実施形態)以下、本発明を2次元の
FDCT回路(またはIDCT回路)に具体化した第4
実施形態を図面に従って説明する。尚、本実施形態にお
いて、第1〜3実施形態と同じ構成部材については符号
を等しくしてその詳細な説明を省略する。
【0079】図6に、本実施形態のブロック回路図を示
す。8×8要素の2次元のFDCT回路70は、制御部
71とFDCT回路31とレジスタ72とから構成され
る。入力データDinは、制御部71を介してFDCT回
路31へ転送される。FDCT回路31は、入力データ
Dinに対して1次元のFDCT演算を水平方向に8ライ
ン分施す。その演算結果は、制御部71を介してレジス
タ72へ転送される。レジスタ72は、その演算結果を
格納する。
【0080】次に、レジスタ72に格納された演算結果
が、制御部71を介してFDCT回路31へ転送され
る。FDCT回路31は、前記演算結果に対して1次元
のFDCT演算を垂直方向に8ライン分施す。その結
果、8×8要素の2次元のFDCTの演算結果である出
力データDout が得られ、その出力データDout は制御
部71を介して出力される。
【0081】2次元のFDCT回路70では、水平方向
および垂直方向にそれぞれ8回ずつ、合計16回、FD
CT回路31を動作させることになる。FDCT回路3
1の1回の動作に要する時間(8要素の1次元のFDC
T演算に要する時間)は、前記したように、5クロック
である。そのため、8×8要素の2次元のFDCT演算
に要する時間は80(=16×5)クロックとなる。従
って、従来の2次元のFDCT回路100に比べ、本実
施形態の2次元のFDCT回路70では高速動作が可能
となる。
【0082】尚、8×8要素の2次元のIDCT回路7
3を構成する場合は、第4実施形態におけるFDCT回
路31をIDCT回路1に置き代えればよい。IDCT
回路1の1回の動作に要する時間(8要素の1次元のI
DCT演算に要する時間)は、前記したように、4クロ
ックである。そのため、8×8要素の2次元のIDCT
演算に要する時間は64(=16×4)クロックとな
る。従って、従来の2次元のIDCT回路105に比
べ、本実施形態の2次元のIDCT回路73では高速動
作が可能となる。
【0083】また、第4実施形態におけるFDCT回路
31を、IDCTおよびFDCTの共用回路61に置き
代えた場合も、第4実施形態と同様の作用および効果を
得ることができる。
【0084】(第5実施形態)以下、本発明を2次元の
FDCT回路(またはIDCT回路)に具体化した第5
実施形態を図面に従って説明する。尚、本実施形態にお
いて、第1〜3実施形態と同じ構成部材については符号
を等しくしてその詳細な説明を省略する。
【0085】図7に、本実施形態のブロック回路図を示
す。8×8要素の2次元のFDCT回路80は、制御部
81,82と2つのFDCT回路31(以下、2つを区
別するためFDCT回路31a,31bと表記する)と
レジスタ83とから構成される。
【0086】入力データDinは、制御部81を介してF
DCT回路31aへ転送される。FDCT回路31a
は、入力データDinに対して1次元のFDCT演算を水
平方向に8ライン分施す。その演算結果は、制御部81
を介してレジスタ83へ転送される。レジスタ83は、
その演算結果を格納する。
【0087】次に、レジスタ83に格納された演算結果
が、制御部82を介してFDCT回路31bへ転送され
る。FDCT回路31bは、前記演算結果に対して1次
元のFDCT演算を垂直方向に8ライン分施す。その結
果、8×8要素の2次元のFDCTの演算結果である出
力データDout が得られ、その出力データDout は制御
部82を介して出力される。
【0088】このように、2次元のFDCT回路80
は、第4実施形態の2次元のFDCT回路70と同じ構
成の2次元のFDCT回路を、2段シリーズに接続した
構成になっている。
【0089】2次元のFDCT回路80では、水平方向
および垂直方向にそれぞれ8回ずつ、つまり、各FDC
T回路31a,31bをそれぞれ単独で8回ずつ動作さ
せる。FDCT回路31a,31bの1回の動作に要す
る時間は5クロックである。そのため、8×8要素の2
次元のFDCT演算に要する時間は40(=8×5)ク
ロックとなる。従って、従来の2次元のFDCT回路1
10に比べ、本実施形態の2次元のFDCT回路80で
は高速動作が可能となる。
【0090】また、従来の2次元のFDCT回路110
では、バタフライ演算の中間値を格納するためのレジス
タ113,123が設けられている。それに対して、本
実施形態の2次元のFDCT回路80では、そのような
レジスタを設ける必要がないため、従来の2次元のFD
CT回路110に比べて回路規模(ハードウェア)を縮
小化することができる。
【0091】尚、8×8要素の2次元のIDCT回路8
4を構成する場合は、第5実施形態におけるFDCT回
路31a,31bをそれぞれIDCT回路1に置き代え
ればよい。IDCT回路1の1回の動作に要する時間は
4クロックである。そのため、8×8要素の2次元のI
DCT演算に要する時間は32(=8×4)クロックと
なる。従って、従来の2次元のIDCT回路133に比
べ、本実施形態の2次元のIDCT回路84では高速動
作が可能となる。この場合にも、第5実施形態と同様
に、バタフライ演算の中間値を格納するためのレジスタ
113,123を設ける必要がないため、従来の2次元
のIDCT回路133に比べて回路規模を縮小化するこ
とができる。
【0092】また、第5実施形態におけるFDCT回路
31を、IDCTおよびFDCTの共用回路61に置き
代えた場合も、第5実施形態と同様の作用および効果を
得ることができる。
【0093】ところで、2次元のFDCT回路80(I
DCT回路84)では、FDCT回路31a,31b
(IDCT回路1,IDCTおよびFDCTの共用回路
61)をそれぞれ独立で動作させることが可能なため、
パイプライン化に有利である。
【0094】(第6実施形態)以下、本発明を2次元の
FDCT回路(またはIDCT回路)に具体化した第6
実施形態を図面に従って説明する。尚、本実施形態にお
いて、第1〜3実施形態と同じ構成部材については符号
を等しくしてその詳細な説明を省略する。
【0095】図8に、本実施形態のブロック回路図を示
す。8×8要素の2次元のFDCT回路90は、直列−
並列変換回路91,92、並べ替え回路93,94、丸
め回路95、転置用RAM(Random Access Memory)9
6、FDCT回路31から構成される。
【0096】12ビットの入力データDinは、直列−並
列変換回路91で8画素分のデータを揃えてから、並べ
替え回路93に入力される。並べ替え回路93における
並べ替えは4通りあり、それぞれに対してFDCT回路
31の出力データが2ピクセルずつ得られる。そして、
4通りの処理が終わって8ピクセルの出力データが得ら
れたら、その8ピクセルの出力データを転置用RAM9
6に蓄える。
【0097】この8ピクセルの出力データが得られた時
点で、直列−並列変換回路91には次の8画素分のデー
タが入力される。そして、上記と同様に1次元のFDC
T演算を行い、その8ピクセルの出力データを転置用R
AM96に蓄える。
【0098】以上の処理を8回繰り返して64画素分の
出力データが転置用RAM96に蓄えられたら、並べ替
え回路93の入力を切り替えて、転置用RAM96に蓄
えられたデータを読み出す。そのデータに対して、直列
−並列変換回路92と並べ替え回路93およびFDCT
回路31によって上記と同様の処理を行う。その結果を
丸め回路95で丸める。
【0099】以後、同様の処理を順次8回繰り返し、最
後に得られたデータを並べ替え回路94によって並べ替
えることで、8×8要素の2次元のFDCTの演算結果
である出力データDout が得られる。
【0100】このように、本実施形態の2次元のFDC
T回路90は、第4実施形態の2次元のFDCT回路7
0の制御部71を各回路91〜95に置き代え、レジス
タ72を転置用RAM96に置き代えたものである。従
って、第4実施形態の2次元のFDCT回路70と同様
に、本実施形態の2次元のFDCT回路90では高速動
作が可能となる。
【0101】尚、8×8要素の2次元のIDCT回路9
7を構成する場合は、第6実施形態におけるFDCT回
路31をIDCT回路1に置き代えればよい。また、第
6実施形態におけるFDCT回路31を、IDCTおよ
びFDCTの共用回路61に置き代えた場合も、第6実
施形態と同様の作用および効果を得ることができる。
【0102】(第7実施形態)以下、本発明をMPEG
ビデオデコーダに具体化した第7実施形態を図面に従っ
て説明する。尚、本実施形態において、第4〜6実施形
態と同じ構成部材については符号を等しくしてその詳細
な説明を省略する。
【0103】図9に、本実施形態のブロック回路図を示
す。MPEGビデオデコーダ200は、可変長デコード
回路201、逆量子化回路202、IDCT回路73、
動きベクトル復元回路203から構成されている。
【0104】可変長デコード回路201は、伝達メディ
ア204から圧縮データであるビデオストリーム(ビデ
オデータのデータ列(ビットストリーム))を入力す
る。そして、可変長デコード回路201は、その内部に
設けられたハフマンテーブルに格納されているハフマン
符号に基づいた可変長デコードを行う。尚、伝達メディ
ア204には、LAN(Local Area Network)などの通
信メディア、DVD(Digital Video Disk)やVTR
(Video Tape Recoder)などの蓄積メディア、地上波放
送や衛星放送およびCATV(Community Antenna Tele
vision)などの放送メディアが含まれる。
【0105】逆量子化回路202は、可変長デコード回
路201のデコード結果に対して、その内部に設けられ
た量子化テーブルに格納されている量子化閾値に基づい
た逆量子化を行いDCT係数を求める。
【0106】IDCT回路73は、逆量子化回路202
が求めたDCT係数に対してIDCTを行う。動きベク
トル復元回路203は、IDCT回路73の処理結果に
対して動きベクトルの復元を行い、ビデオストリームの
伸長データであるビデオ出力を生成する。そのビデオ出
力はディスプレイ205へ出力され、画像が表示され
る。
【0107】本実施形態によれば、高速動作が可能で且
つハードウェアが小さな2次元のIDCT回路73を用
いてMPEGビデオデコーダ200を構成しているた
め、高速動作が可能で且つハードウェアが小さなMPE
Gビデオデコーダを得ることができる。尚、本実施形態
において、IDCT回路73をIDCT回路84,97
に置き代えた場合も、本実施形態と同様の作用および効
果を得ることができる。
【0108】(第8実施形態)以下、本発明をMPEG
ビデオエンコーダに具体化した第8実施形態を図面に従
って説明する。尚、本実施形態において、第4〜6実施
形態と同じ構成部材については符号を等しくしてその詳
細な説明を省略する。
【0109】図10に、本実施形態のブロック回路図を
示す。MPEGビデオエンコーダ300は、動き補償回
路301、FDCT回路70、量子化回路302、可変
長エンコード回路303から構成されている。
【0110】ビデオカメラ304は、画像を撮影して伸
張データである画像入力を生成する。動き補償回路30
1は、ビデオカメラ304からの画像入力を入力し、動
きベクトルを生成する。
【0111】FDCT回路70は、ビデオカメラ304
からの画像入力に対してFDCTを行う。量子化回路3
02は、FDCT回路70の処理結果に対して、その内
部に設けられた量子化テーブルに格納されている量子化
閾値に基づいた量子化を行う。
【0112】可変長エンコード回路303は、量子化回
路302の処理結果に対して可変長エンコードを行い、
画像入力の圧縮データであるビデオストリームを生成す
る。そのビデオストリームは伝達メディア204を介し
て、第7実施形態で説明したように、MPEGビデオデ
コーダ200へ送られる。
【0113】本実施形態によれば、高速動作が可能で且
つハードウェアが小さな2次元のFDCT回路70を用
いてMPEGビデオエンコーダ300を構成しているた
め、高速動作が可能で且つハードウェアが小さなMPE
Gビデオエンコーダを得ることができる。尚、本実施形
態において、FDCT回路70をFDCT回路80,9
0に置き代えた場合も、本実施形態と同様の作用および
効果を得ることができる。
【0114】尚、上記各実施形態は以下のように変更し
てもよく、その場合でも同様の作用および効果を得るこ
とができる。 〔1〕第1実施形態および第3実施形態において、8要
素の1次元のIDCT回路ではなく、N要素の1次元の
IDCT回路に適用する。また、第2実施形態および第
3実施形態において、8要素の1次元のFDCT回路で
はなく、N要素の1次元のFDCT回路に適用する。そ
して、第4実施形態および第5実施形態において、8×
8要素の2次元のFDCT回路(IDCT回路)ではな
く、N×N要素の2次元のFDCT回路(IDCT回
路)に適用する。ここで、Nが大きいほど符号化効率は
良くなるが、演算量は増えることになる。つまり、符号
化効率と演算量はトレードオフの関係にある。
【0115】〔2〕第1〜6実施形態をCPUを用いた
ソフトウェア的な処理に置き代える。すなわち、各回路
(1〜97)における信号処理をCPUを用いたソフト
ウェア的な信号処理に置き代える。
【0116】〔3〕MPEGビデオデコーダだけでな
く、DCTを利用するデータ処理装置に適用する。ま
た、MPEG方式から派生したデータ処理方式やMPE
G方式を包含するデータ処理方式に対して適用する。
【0117】以上、各実施形態について説明したが、各
実施形態から把握できる請求項以外の技術的思想につい
て、以下にそれらの効果と共に記載する。 (イ)画像入力から動きベクトルを生成する動き補償回
路と、画像入力に対してFDCTを行う請求項10また
は請求項11に記載の離散コサイン変換回路と、そのF
DCT結果に対して量子化を行う量子化回路と、量子化
回路の処理結果に対して可変長エンコードを行う可変長
エンコード回路とを備えたMPEGビデオエンコーダ。
【0118】このようにすれば、請求項10または請求
項11に記載の2次元の離散コサイン変換回路の利点を
有したMPEGビデオエンコーダを得ることができる。 (ロ)ビデオストリームに対して可変長デコードを行う
可変長デコード回路と、可変長デコード回路のデコード
結果に対して逆量子化を行いDCT係数を求める逆量子
化回路と、逆量子化回路が求めたDCT係数に対してI
DCTを行う請求項12または請求項13に記載の離散
コサイン逆変換回路と、そのIDCT結果に対して動き
ベクトルの復元を行う動きベクトル復元回路とを備えた
MPEGビデオデコーダ。
【0119】このようにすれば、請求項12または請求
項13に記載の2次元の離散コサイン逆変換回路の利点
を有したMPEGビデオデコーダを得ることができる。
ところで、本明細書において、発明の構成に係る部材は
以下のように定義されるものとする。
【0120】(a)定数乗算器群は各定数乗算器11〜
18から構成される。 (b)加減算器群は各加算器21〜28,32〜43か
ら構成される。 (c)設定手段は各定数乗算器11〜18内に含まれ
る。
【0121】(d)切換手段は切換回路62から構成さ
れる。 (e)制御手段は制御部71,82から構成される。 (f)MPEG方式とは、現行のMPEG−1,2だけ
でなく、MPEG方式から派生した方式やMPEG方式
を包含する方式についても含むものとする。
【0122】
【発明の効果】
1〕高速動作が可能で且つハードウェアが小さなFDC
T(離散コサイン変換)回路を提供することができる。
【0123】2〕高速動作が可能で且つハードウェアが
小さなIDCT(離散コサイン逆変換)回路を提供する
ことができる。 3〕高速動作が可能で且つハードウェアが小さなMPE
Gビデオエンコーダを提供することができる。
【0124】4〕高速動作が可能で且つハードウェアが
小さなMPEGビデオデコーダを提供することができ
る。
【図面の簡単な説明】
【図1】第1実施形態のブロック回路図。
【図2】第1実施形態の動作を説明するためのブロック
構成図。
【図3】第2実施形態のブロック回路図。
【図4】第2実施形態の動作を説明するためのブロック
構成図。
【図5】第3実施形態のブロック回路図。
【図6】第4実施形態のブロック回路図。
【図7】第5実施形態のブロック回路図。
【図8】第6実施形態のブロック回路図。
【図9】第7実施形態のブロック回路図。
【図10】第8実施形態のブロック回路図。
【図11】従来例のブロック回路図。
【図12】従来例のブロック回路図。
【符号の説明】
1…IDCT回路 11〜18…定数乗算器 21〜28,32〜43…加算器 31…FDCT回路 44,62…切換回路 61…IDCTおよびFDCTの共用回路 71,82…制御部 72,83…レジスタ
フロントページの続き (56)参考文献 特開 平4−360423(JP,A) 特開 平4−341016(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 17/14 H04N 1/41 H04N 7/30 INSPEC(DIALOG) JICSTファイル(JOIS) WPI(DIALOG)

Claims (17)

    (57)【特許請求の範囲】
  1. 【請求項1】 パラレルに入力された各入力データ(F
    (X1)〜F(X8))にそれぞれコサイン係数を乗算
    する定数乗算器群(11〜18)と、 定数乗算器群の乗算結果を加減算することで、入力デー
    タの離散コサイン逆変換結果である出力データ(f(y
    1),f(y2))を生成する加減算器群(21〜2
    8)とを備えた1次元の離散コサイン逆変換回路。
  2. 【請求項2】 パラレルに入力された各入力データにそ
    れぞれコサイン係数を乗算する定数乗算器群と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加減算することで、入力データの離散コサイン逆
    変換結果である出力データを生成する加減算器群とを備
    えた1次元の離散コサイン逆変換回路。
  3. 【請求項3】 パラレルに入力された8つの入力データ
    にそれぞれコサイン係数を乗算する定数乗算器群と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加減算することで、入力データの離散コサイン逆
    変換結果である出力データを2ピクセルずつ生成する加
    減算器群とを備えた1次元の離散コサイン逆変換回路。
  4. 【請求項4】 パラレルに入力された各入力データ(f
    (0)〜f(7))を加減算する加減算器群(32〜4
    3)と、 加減算器群からパラレルに出力された加減算結果にそれ
    ぞれコサイン係数を乗算する定数乗算器群(11〜1
    8)と、 定数乗算器群の乗算結果を加算することで、入力データ
    の離散コサイン変換結果である出力データ(F(y
    1),F(y2))を生成する加算器群(21〜26)
    とを備えた1次元の離散コサイン変換回路。
  5. 【請求項5】 パラレルに入力された各入力データを加
    減算する加減算器群と、 加減算器群からパラレルに出力された加減算結果にそれ
    ぞれコサイン係数を乗算する定数乗算器群と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加算することで、入力データの離散コサイン変換
    結果である出力データを生成する加算器群とを備えた1
    次元の離散コサイン変換回路。
  6. 【請求項6】 パラレルに入力された8つの各入力デー
    タを加減算する加減算器群と、 加減算器群からパラレルに出力された加減算結果にそれ
    ぞれコサイン係数を乗算する定数乗算器群と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加算することで、入力データの離散コサイン変換
    結果である出力データを2ピクセルずつ生成する加算器
    群とを備えた1次元の離散コサイン変換回路。
  7. 【請求項7】 パラレルに入力された第1の入力データ
    群(f(0)〜f(7))を加減算する第1の加減算器
    群(32〜43)と、 パラレルに入力された第2の入力データ群(F(x1)
    〜F(x8))と第1の加減算器群の加減算結果とのい
    ずれか一方を選択する切換手段(62)と、 切換手段の出力にコサイン係数を乗算する定数乗算器群
    (11〜18)と、 定数乗算器群の乗算結果を加減算することで、第1の入
    力データ群の離散コサイン変換結果(F(y1),F
    (y2))または第2の入力データ群の離散コサイン逆
    変換結果(f(y1),f(y2))である出力データ
    を生成する第2の加減算器群(21〜28)とを備えた
    1次元の離散コサイン変換回路。
  8. 【請求項8】 パラレルに入力された第1の入力データ
    群を加減算する第1の加減算器群と、 パラレルに入力された第2の入力データ群と第1の加減
    算器群の加減算結果とのいずれか一方を選択する切換手
    段と、 切換手段の出力にコサイン係数を乗算する定数乗算器群
    と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加減算することで、第1の入力データ群の離散コ
    サイン変換結果または第2の入力データ群の離散コサイ
    ン逆変換結果である出力データを生成する第2の加減算
    器群とを備えた1次元の離散コサイン変換回路。
  9. 【請求項9】 パラレルに入力された8つのデータから
    成る第1の入力データ群を加減算する第1の加減算器群
    と、 パラレルに入力された第2の入力データ群と第1の加減
    算器群の加減算結果とのいずれか一方を選択する切換手
    段と、 切換手段の出力にコサイン係数を乗算する定数乗算器群
    と、 定数乗算器群の各定数乗算器の乗算結果の正負を設定す
    る設定手段と、 設定手段によって正負が設定された定数乗算器群の乗算
    結果を加減算することで、第1の入力データ群の離散コ
    サイン変換結果または第2の入力データ群の離散コサイ
    ン逆変換結果である出力データを2ピクセルずつ生成す
    る第2の加減算器群とを備えた1次元の離散コサイン変
    換回路。
  10. 【請求項10】 請求項4〜9のいずれか1項に記載の
    離散コサイン変換回路(31,61)と、 その離散コサイン変換回路の出力データを格納するレジ
    スタ(72)と、そのレジスタに格納された出力データ
    を、入力データとして再び前記離散コサイン変換回路へ
    転送する制御手段(71)とを備えた2次元の離散コサ
    イン変換回路。
  11. 【請求項11】 請求項4〜9のいずれか1項に記載の
    第1および第2の離散コサイン変換回路(31a,31
    b)と、 第1の離散コサイン変換回路の出力データを格納するレ
    ジスタ(83)と、 そのレジスタに格納された出力データを、入力データと
    して第2の離散コサイン変換回路へ転送する制御手段
    (82)とを備えた2次元の離散コサイン変換回路。
  12. 【請求項12】 請求項1〜3のいずれか1項に記載の
    離散コサイン逆変換回路(1)と、 その離散コサイン逆変換回路の出力データを格納するレ
    ジスタ(72)と、 そのレジスタに格納された出力データを、入力データと
    して再び前記離散コサイン逆変換回路へ転送する制御手
    段(71)とを備えた2次元の離散コサイン逆変換回
    路。
  13. 【請求項13】 請求項1〜3のいずれか1項に記載の
    第1および第2の離散コサイン逆変換回路と、 第1の離散コサイン逆変換回路の出力データを格納する
    レジスタと、 そのレジスタに格納された出力データを、入力データと
    して第2の離散コサイン逆変換回路へ転送する制御手段
    とを備えた2次元の離散コサイン逆変換回路。
  14. 【請求項14】 請求項10または請求項11に記載の
    2次元の離散コサイン変換回路を用いたMPEGビデオ
    エンコーダ。
  15. 【請求項15】 請求項12または請求項13に記載の
    2次元の離散コサイン逆変換回路を用いたMPEGビデ
    オデコーダ。
  16. 【請求項16】 定数乗算器群が、パラレルに入力され
    た各入力データに対し、それぞれ1つずつのコサイン定
    数を乗算するよう構成されている請求項1〜3のいずれ
    か1項に記載の1次元の離散コサイン逆変換回路。
  17. 【請求項17】 定数乗算器群が、加減算器からパラレ
    ルに出力された加減算結果に対し、それぞれ1つずつの
    コサイン定数を乗算するよう構成されている請求項4〜
    6のいずれか1項に記載の1次元の離散コサイン変換回
    路。
JP28092695A 1994-11-30 1995-10-27 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ Expired - Lifetime JP3025750B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP28092695A JP3025750B2 (ja) 1994-11-30 1995-10-27 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ
KR1019950043215A KR100377084B1 (ko) 1994-11-30 1995-11-23 이산코사인변환회로,이산코사인역변환회로,mpeg비디오인코더및mpeg비디오디코더
US08/564,480 US5748514A (en) 1994-11-30 1995-11-29 Forward and inverse discrete cosine transform circuits

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP29735094 1994-11-30
JP6647495 1995-03-24
JP7-66474 1995-03-24
JP6-297350 1995-03-24
JP28092695A JP3025750B2 (ja) 1994-11-30 1995-10-27 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ

Publications (2)

Publication Number Publication Date
JPH08329047A JPH08329047A (ja) 1996-12-13
JP3025750B2 true JP3025750B2 (ja) 2000-03-27

Family

ID=27299145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28092695A Expired - Lifetime JP3025750B2 (ja) 1994-11-30 1995-10-27 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ

Country Status (3)

Country Link
US (1) US5748514A (ja)
JP (1) JP3025750B2 (ja)
KR (1) KR100377084B1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327601B1 (en) * 1997-01-06 2001-12-04 Texas Instruments Incorporated Linear transform system for decoding video data
US6374280B1 (en) * 1998-05-07 2002-04-16 Sarnoff Corporation Computationally efficient inverse discrete cosine transform method and apparatus
US6052703A (en) * 1998-05-12 2000-04-18 Oak Technology, Inc. Method and apparatus for determining discrete cosine transforms using matrix multiplication and modified booth encoding
KR100563493B1 (ko) 1999-09-16 2006-03-27 브이케이 주식회사 입출력 데이터의 위치가 동일한 고속 이산 여현 변환 연산 장치 및 그 방법
US6675185B1 (en) * 2000-06-07 2004-01-06 International Business Machines Corporation Hybrid domain processing of multi-dimensional transformed data
EP2250581B1 (en) * 2008-01-31 2015-09-02 Qualcomm Incorporated Device for dft calculation
JP2009258786A (ja) * 2008-04-11 2009-11-05 Mitsubishi Electric Corp 動画像符号化装置
US9848188B1 (en) 2013-06-12 2017-12-19 Apple Inc. Video coding transform systems and methods
CN105791871A (zh) * 2014-12-25 2016-07-20 炬芯(珠海)科技有限公司 一种离散余弦变换dct装置及应用方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216516A (en) * 1990-04-27 1993-06-01 Ricoh Company, Inc. Orthogonal transformation arithmetic unit
US5394349A (en) * 1992-07-10 1995-02-28 Xing Technology Corporation Fast inverse discrete transform using subwords for decompression of information
JP3697717B2 (ja) * 1993-09-24 2005-09-21 ソニー株式会社 2次元離散コサイン変換装置および2次元逆離散コサイン変換装置

Also Published As

Publication number Publication date
KR960020541A (ko) 1996-06-17
US5748514A (en) 1998-05-05
KR100377084B1 (ko) 2003-05-09
JPH08329047A (ja) 1996-12-13

Similar Documents

Publication Publication Date Title
EP0673171B1 (en) Video decoder
EP0794674B1 (en) Fast DCT inverse motion compensation
US5649077A (en) Modularized architecture for rendering scaled discrete cosine transform coefficients and inverse thereof for rapid implementation
US6157740A (en) Compression/decompression engine for enhanced memory storage in MPEG decoder
US7730116B2 (en) Method and system for fast implementation of an approximation of a discrete cosine transform
US5659362A (en) VLSI circuit structure for implementing JPEG image compression standard
EP1679658A2 (en) Image signal transforming method, image signal inversely-transforming method, image encoding apparatus, image encoding method, image encoding program, image decoding apparatus, image decoding method, and image decoding program
JP3025750B2 (ja) 離散コサイン変換回路,離散コサイン逆変換回路,mpegビデオエンコーダ,mpegビデオデコーダ
JP4688988B2 (ja) ビデオデータの圧縮方法並びに装置、及び伸張方法並びに装置
US5777679A (en) Video decoder including polyphase fir horizontal filter
JPH09212484A (ja) 離散コサイン変換方法
US6181831B1 (en) Spatial frequency-domain video signal processing
JPH07143488A (ja) 画像データ復号化方法および装置
KR20030057425A (ko) 역 변환 디바이스 및 역 변환 방법 및 변환 디바이스 및변환 방법
US7756351B2 (en) Low power, high performance transform coprocessor for video compression
US6038345A (en) Apparatus for encoding/decoding image data
KR20030026898A (ko) 코드된 비디오 데이터 변환방법
JPH08180194A (ja) 符号化装置及び方法
JPH08307868A (ja) 動画像復号装置
Fatemi et al. Fractal engine: An affine video processor core for multimedia applications
KR970003806B1 (ko) 이산 및 역이산 코사인 변환 장치
Konstantinides Key Components in the design of image and video compression ICs
Fan Fast Algorithm Designs of Multiple-Mode Discrete Integer Transforms with Cost-Effective and Hardware-Sharing Architectures for Multistandard Video Coding Applications
JPH08307865A (ja) 画像処理方法
Neogi et al. Embedded parallel divide-and-conquer video decompression algorithm and architecture for HDTV applications

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090121

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100121

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100121

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110121

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110121

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120121

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130121

Year of fee payment: 13

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term