JP2910124B2 - Dct処理装置 - Google Patents
Dct処理装置Info
- Publication number
- JP2910124B2 JP2910124B2 JP2034310A JP3431090A JP2910124B2 JP 2910124 B2 JP2910124 B2 JP 2910124B2 JP 2034310 A JP2034310 A JP 2034310A JP 3431090 A JP3431090 A JP 3431090A JP 2910124 B2 JP2910124 B2 JP 2910124B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- data
- dct processing
- processing
- dct
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Description
【発明の詳細な説明】 産業上の利用分野 本発明は、テレビ会議システム、テレビ電話の動画像
帯域圧縮でCCITTにより標準化作業がなされている64kビ
ット/秒の画像コーデック処理で用いられるDCT(Discr
ete Cosine Transform、離散コサイン変換)処理装置に
関する。
帯域圧縮でCCITTにより標準化作業がなされている64kビ
ット/秒の画像コーデック処理で用いられるDCT(Discr
ete Cosine Transform、離散コサイン変換)処理装置に
関する。
従来の技術 1画素データがMビット長であるM×N画素ブロック
に対して、DCTを行なう場合、フィルター処理等の場合
と異なり、N画素のデータアクセス期間中に、一次元方
向の処理が完結していれば良いという利点がある。この
利点を活用して、ビットシリアルに演算処理をおこなう
方法が、分散型演算手法として、例えば、アイ・イー・
イー・イー・トランザクション・アコースティックス、
スピーチ、シグナル、プロセッシング第22巻(1974年12
月)第456頁から第462頁(IEEE Trans.Acoustic.,Speec
h,Signal Processing vol.ASSP=22,pp.456−462,Dec.1
974,“A new hardware realization of digital filter
s,"by A.Peled and B.Liou)に発表されている。この処
理手法は、Mビット長のデータに関する演算を、iビッ
ト目の演算というサブセットに着目して算出し、その結
果に対して2(i-1)の桁補正を施して加算することにより
最終結果を求めるというものである。DCT処理につい
て、この手法を適用すると、以下のようになる。今、M
ビット長で負の数を2の補数で表わすN個の整数データ
列 aM-1(n)=[0,−1],(ai(n)=[0,1],0≦i
≦M−2,0≦n≦N−1)}に対する一次元のDCTは、式
(1−1)〜(1−3)と表現することが出来る。
に対して、DCTを行なう場合、フィルター処理等の場合
と異なり、N画素のデータアクセス期間中に、一次元方
向の処理が完結していれば良いという利点がある。この
利点を活用して、ビットシリアルに演算処理をおこなう
方法が、分散型演算手法として、例えば、アイ・イー・
イー・イー・トランザクション・アコースティックス、
スピーチ、シグナル、プロセッシング第22巻(1974年12
月)第456頁から第462頁(IEEE Trans.Acoustic.,Speec
h,Signal Processing vol.ASSP=22,pp.456−462,Dec.1
974,“A new hardware realization of digital filter
s,"by A.Peled and B.Liou)に発表されている。この処
理手法は、Mビット長のデータに関する演算を、iビッ
ト目の演算というサブセットに着目して算出し、その結
果に対して2(i-1)の桁補正を施して加算することにより
最終結果を求めるというものである。DCT処理につい
て、この手法を適用すると、以下のようになる。今、M
ビット長で負の数を2の補数で表わすN個の整数データ
列 aM-1(n)=[0,−1],(ai(n)=[0,1],0≦i
≦M−2,0≦n≦N−1)}に対する一次元のDCTは、式
(1−1)〜(1−3)と表現することが出来る。
上式(1−1)に、u(n)の指数表現を代入する
と、式(1−4)のように書ける。
と、式(1−4)のように書ける。
この式で、iに関する加算でまとめると、次式のよう
になる。
になる。
式(1−5)で、大括弧{ }の中のデータで、a
i(n)は0か1あるいは0か−1の1ビットのデータ
であり はデータu(n)の値そのものには依存しないので、N
の値が決まれば事前に準備することが可能である。故
に、大括弧{ }の中の演算は、 の値をROM(Read Only Memory)等で準備しておけば、
乗算を用いることなく加減算のみで実行することが出
来、集積回路で実現する場合に、並列乗算器を用いる場
合に比べてチップサイズを小さくすることが出来る利点
を有している。さらにDCTの場合、変換核の がnにたいして周期(π)で対称性を有することを利用
すると、Nが偶数の場合、N=2N′として式(1−5)
は以下のようにあらわすことが出来る。
i(n)は0か1あるいは0か−1の1ビットのデータ
であり はデータu(n)の値そのものには依存しないので、N
の値が決まれば事前に準備することが可能である。故
に、大括弧{ }の中の演算は、 の値をROM(Read Only Memory)等で準備しておけば、
乗算を用いることなく加減算のみで実行することが出
来、集積回路で実現する場合に、並列乗算器を用いる場
合に比べてチップサイズを小さくすることが出来る利点
を有している。さらにDCTの場合、変換核の がnにたいして周期(π)で対称性を有することを利用
すると、Nが偶数の場合、N=2N′として式(1−5)
は以下のようにあらわすことが出来る。
上式の第二項のcos(・)の項を変形すると、 となり、K=2K′,0≦k′≦N′−1の時 同様に、K=2K′+1,0≦k′≦N′−1の時 となる。式(1−8),(1−9)を用いて、kについ
て偶数項と奇数項で式(1−7)を変形すると、次式の
ようになる。
て偶数項と奇数項で式(1−7)を変形すると、次式の
ようになる。
k=2K′,0≦k′≦N′−1の時 k=2K′+1,0≦k′≦N′−1の時 となる。
式(1−10)と(1−11)により、DCTの変換核 の対称性を利用すると、 として準備しておくべきROMの容量は、1つのkに対し
て2Nワードから2(N/2)に節約することが出来ること
がわかる。しかし、(ai(n)+ai(2N′−1−n))
や(ai(n)−ai(2N′−1−n))項から、キャリー
およびボロー発生があるので、iに関する加算回数は
(M+1)回となる。このように、この演算方式は、大
括弧{ }の中の演算を、DCTの変換核 の値をROM化すると同時にDCTの変換核の対称性を利用し
てROM容量を節約することができ、演算そのものは乗算
を用いることなく加減算のみで実行することが出来る。
これらの特徴は、集積回路で実現する場合に、並列乗算
器を用いる場合に比べてチップサイズを小さくすること
が出来るという利点を有している。
て2Nワードから2(N/2)に節約することが出来ること
がわかる。しかし、(ai(n)+ai(2N′−1−n))
や(ai(n)−ai(2N′−1−n))項から、キャリー
およびボロー発生があるので、iに関する加算回数は
(M+1)回となる。このように、この演算方式は、大
括弧{ }の中の演算を、DCTの変換核 の値をROM化すると同時にDCTの変換核の対称性を利用し
てROM容量を節約することができ、演算そのものは乗算
を用いることなく加減算のみで実行することが出来る。
これらの特徴は、集積回路で実現する場合に、並列乗算
器を用いる場合に比べてチップサイズを小さくすること
が出来るという利点を有している。
発明が解決しようとする課題 しかしながら、1画素のサンプリング時間が1基本ク
ロック期間であるとして、この1クロック期間に一回の
加算処理や一回のROMアクセスが可能な同期系を想定す
ると、ビット長Mが、DCTの処理単位Nよりも大きい場
合、そのままでは、処理が完結しないことを意味する。
これは、N=16以上の場合には問題にならないが、CCIT
Tにより標準化作業がなされている64kビット/秒の画像
コーデック処理で用いられるN=8のDCTの場合には、
M≦8ビットで制限されることになるため、中間処理部
で十分な精度を得られないという問題点があった。本発
明はかかる点に鑑み、M>Nビットの精度でNサンプリ
ングクロックの期間でN×1の一次元のDCT処理を完結
するN×NのDCT処理装置を安価に提供することを目的
とする。
ロック期間であるとして、この1クロック期間に一回の
加算処理や一回のROMアクセスが可能な同期系を想定す
ると、ビット長Mが、DCTの処理単位Nよりも大きい場
合、そのままでは、処理が完結しないことを意味する。
これは、N=16以上の場合には問題にならないが、CCIT
Tにより標準化作業がなされている64kビット/秒の画像
コーデック処理で用いられるN=8のDCTの場合には、
M≦8ビットで制限されることになるため、中間処理部
で十分な精度を得られないという問題点があった。本発
明はかかる点に鑑み、M>Nビットの精度でNサンプリ
ングクロックの期間でN×1の一次元のDCT処理を完結
するN×NのDCT処理装置を安価に提供することを目的
とする。
課題を解決するための手段 上記の問題点を解決するため、本発明のDCT処理装置
は、Mビット長をL<Nを満足するLビット長に分割
し、Lビット長で部分積の演算を並列的に実行し、最後
にそれらの中間結果の加算を実行するという構成を備え
たものである。
は、Mビット長をL<Nを満足するLビット長に分割
し、Lビット長で部分積の演算を並列的に実行し、最後
にそれらの中間結果の加算を実行するという構成を備え
たものである。
作用 本発明は前記した構成により、Lビット長で部分積の
演算が並列に実行されると、中間和が並列に生成される
ために、演算が高速に実行されることとなり、ビット長
MがDCTの処理単位Nよりも大きい場合においてもNサ
ンプリングクロックの期間で処理が完結する。
演算が並列に実行されると、中間和が並列に生成される
ために、演算が高速に実行されることとなり、ビット長
MがDCTの処理単位Nよりも大きい場合においてもNサ
ンプリングクロックの期間で処理が完結する。
実施例 以下、本発明のDCT処理装置の一実施例を図面と共に
説明する。第1図は本発明の一実施例における14ビット
の画像信号入力u(j)に対する8×1の一次元のDCT
処理装置のブロック図である。図において、2は14ビッ
トの画像信号入力u(j),3〜10は14ビットのデータレ
ジスタ、11〜18は14ビットの画像信号{u(n=mod
(j)8),m=0〜7}である。19〜22はビットシリア
ル演算部であり、シフトレジスタを用いて、ビットシリ
アルに加算および減算を行なう。23〜38はビットシリア
ル演算部19〜22のビットシリアル演算の結果である各1
ビットの信号で、39〜42は1ビットの演算結果23〜38を
各4ビットごとにまとめたデータ線である。43〜46はデ
ータ線39〜42の4ビットのデータをアドレス情報とし、
ROMにより係数とデータの乗算の部分積を生成し、その
値に左方シフトを施し累積加算を行なうROMと加算器に
よる係数乗算部である。47〜54は8×1のDCT処理結果
の33ビットの出力信号{ν(k),k=0〜7}である。
55〜62は33ビットトライステートドライバであり、出力
データの並列/直列変換を行なう。63は33ビットトライ
ステートドライバの55〜62の動作により時系列化された
33ビット信号出力である。第2図は第1図のビットシリ
アル演算部19〜22の回路構成図である。65は14ビットの
画像信号u(n)、66は14ビットの画像信号u(7−
n)である。67,68は上位7ビットと下位7ビットが独
立な14ビットのデータロード機能付き右方シフターであ
り、ビットシリアル演算に必要なビット単位での処理を
行なう。69,70は1ビット全加算器、71,72は1ビット全
減算器である。73〜76は1ビットのデータラッチで、1
ビット全加算器69,70での演算で発生するキャリーおよ
び1ビット全減算器71,72での演算で発生するボローを
保持する。77〜80は各1ビットの演算結果の信号であ
り、係数との乗算の部分積をROMから読み出す時のアド
レス情報として用いられる。第3図は第1図のROMと加
算器による係数乗算部43〜46の回路構成図である。82〜
85は係数との乗算の部分積をROMから読み出す時のアド
レス情報である各4ビットのデータである。86〜89は16
ワード×18ビット容量で、係数との乗算の部分積を生成
するROM、90〜93は26ビット全加算器、94〜97は26ビッ
トのデータロード機能付き右方シフター、98,99は33ビ
ット全加算器、100,101は33ビットレジスタ、102は33ビ
ット出力信号ν(2k′)、103は33ビット出力信号ν(2
k′+1)である。第1図と第2図と第3図を用いて、
8×1の一次元DCT処理の動作について説明する。本発
明においては、M>8ビット長の1画素データをLビッ
ト長のデータに分割して、処理を実行する。例えば、M
ビット長のデータをJ個のLビット長データに分割する
と、式(1−5)は次のように変形できる。
説明する。第1図は本発明の一実施例における14ビット
の画像信号入力u(j)に対する8×1の一次元のDCT
処理装置のブロック図である。図において、2は14ビッ
トの画像信号入力u(j),3〜10は14ビットのデータレ
ジスタ、11〜18は14ビットの画像信号{u(n=mod
(j)8),m=0〜7}である。19〜22はビットシリア
ル演算部であり、シフトレジスタを用いて、ビットシリ
アルに加算および減算を行なう。23〜38はビットシリア
ル演算部19〜22のビットシリアル演算の結果である各1
ビットの信号で、39〜42は1ビットの演算結果23〜38を
各4ビットごとにまとめたデータ線である。43〜46はデ
ータ線39〜42の4ビットのデータをアドレス情報とし、
ROMにより係数とデータの乗算の部分積を生成し、その
値に左方シフトを施し累積加算を行なうROMと加算器に
よる係数乗算部である。47〜54は8×1のDCT処理結果
の33ビットの出力信号{ν(k),k=0〜7}である。
55〜62は33ビットトライステートドライバであり、出力
データの並列/直列変換を行なう。63は33ビットトライ
ステートドライバの55〜62の動作により時系列化された
33ビット信号出力である。第2図は第1図のビットシリ
アル演算部19〜22の回路構成図である。65は14ビットの
画像信号u(n)、66は14ビットの画像信号u(7−
n)である。67,68は上位7ビットと下位7ビットが独
立な14ビットのデータロード機能付き右方シフターであ
り、ビットシリアル演算に必要なビット単位での処理を
行なう。69,70は1ビット全加算器、71,72は1ビット全
減算器である。73〜76は1ビットのデータラッチで、1
ビット全加算器69,70での演算で発生するキャリーおよ
び1ビット全減算器71,72での演算で発生するボローを
保持する。77〜80は各1ビットの演算結果の信号であ
り、係数との乗算の部分積をROMから読み出す時のアド
レス情報として用いられる。第3図は第1図のROMと加
算器による係数乗算部43〜46の回路構成図である。82〜
85は係数との乗算の部分積をROMから読み出す時のアド
レス情報である各4ビットのデータである。86〜89は16
ワード×18ビット容量で、係数との乗算の部分積を生成
するROM、90〜93は26ビット全加算器、94〜97は26ビッ
トのデータロード機能付き右方シフター、98,99は33ビ
ット全加算器、100,101は33ビットレジスタ、102は33ビ
ット出力信号ν(2k′)、103は33ビット出力信号ν(2
k′+1)である。第1図と第2図と第3図を用いて、
8×1の一次元DCT処理の動作について説明する。本発
明においては、M>8ビット長の1画素データをLビッ
ト長のデータに分割して、処理を実行する。例えば、M
ビット長のデータをJ個のLビット長データに分割する
と、式(1−5)は次のように変形できる。
上式はJ個の部分項の和によって成り立ち、各部分項
はL回の加算により実行されることを意味している。L
回の加算時間とJ個の項を加算する時間の総和が、N個
のデータのサンプリング時間よりも短ければ、目的とす
る高速処理が実現出来る。一例として、N=8、J=2
の場合を考える。この時以下の式を満足するMビット長
のデータまで高速処理が可能である。
はL回の加算により実行されることを意味している。L
回の加算時間とJ個の項を加算する時間の総和が、N個
のデータのサンプリング時間よりも短ければ、目的とす
る高速処理が実現出来る。一例として、N=8、J=2
の場合を考える。この時以下の式を満足するMビット長
のデータまで高速処理が可能である。
8≧trune(M/2+0.5)+1;trune(・)切り捨て(1
−13)故にM≦14となる。また、ROM容量削減のため、
従来例と同様に、式(1−12)に対し式(1−10),
(1−11)を適用すると式(1−14),(1−15)が得
られる。
−13)故にM≦14となる。また、ROM容量削減のため、
従来例と同様に、式(1−12)に対し式(1−10),
(1−11)を適用すると式(1−14),(1−15)が得
られる。
k=2k′,0≦K′≦3の時 k=2k′+1,0≦K′≦3の時 Mについて1回の加算が増加するが、パイプライン構
成を適用することにより、M=14ビットの精度で8画素
のサンプリングクロックの期間で8×1の一次元のDCT
処理を実現することができる。第1図において、8×1
の一次元DCT処理の動作を説明する。14ビットの画像信
号入力u(j)2は8画素のサブセットに対してDCT処
理を施されるため、14ビットレジスタ3〜10に、それぞ
れ{u(n),n=mod(j)8,0≦n≦7}と分割されて
保持される。14ビットレジスタ3〜10では、この8個の
サプセットデータ列{u(n),0≦n≦7}が完全に更
新されるまで、1回のデータサンプリングに対して1回
のシフト動作を行ない、データを順次送っていく。つま
り、8回のデータサンプリング毎に、新しいサブセット
データが、14ビットレジスタ3〜10にu(7)、‥‥、
u(0)としてセットされる。次に、このデータは、14
ビットの信号線11〜18を介して、それぞれビットシリア
ル演算部19〜22に供給される。このビットシリアル演算
部19〜22における処理を、第2図を用いて説明する。14
ビットの画像入力65〜66は、第1図の14ビットレジスタ
3〜10のいずれかからのデータで、2の補数表現を用い
て現わすと、 ai(n)∈[0,1],0≦i≦12,0≦n≦3)と、 ai(7−n)∈[0,1],0≦i≦12,0≦n≦3)であ
る。これらのデータが、上位7ビットと下位7ビットが
独立した14ビットのデータロード機能付き右方シフター
67,68に入力され、それぞれ、 として上位7ビットと下位7ビットが分離した形で処理
され、1クロック期間毎に1回のLSB側への右方シフト
が実行される。データロード機能付き右方シフター67,6
8より出力される信号は、u(n)およびu(7−n)
の上位7ビットと下位7ビットに関して2i桁の各1ビッ
トの値で、ai(n)とai+7(n)とai(7−n)とai+7
(7−n)である。これらの信号により、1ビット全加
算器69,70と1ビット全減算器71,72において、式(1−
14)、(1−15)の右辺の(ai+7(n)+ai+7(7−
n))、(ai(n)+ai(7−n))、((ai+7(n)
−ai+7(7−n))、(ai(n)−ai(7−n))の演
算を実行する。これらの演算により発生するキャリーお
よびボローは1ビットラッチ73〜76に保持され、1クロ
ック後の演算に用いられるために、元の1ビット全加算
器69,70と1ビット全減算器71,72に再帰的に入力され
る。1ビット全加算器69,70の演算結果は、1ビットデ
ータ線77,78に各々出力され、1ビット全減算器71,72の
演算結果は、1ビットデータ線79,80に各々出力され
る。
成を適用することにより、M=14ビットの精度で8画素
のサンプリングクロックの期間で8×1の一次元のDCT
処理を実現することができる。第1図において、8×1
の一次元DCT処理の動作を説明する。14ビットの画像信
号入力u(j)2は8画素のサブセットに対してDCT処
理を施されるため、14ビットレジスタ3〜10に、それぞ
れ{u(n),n=mod(j)8,0≦n≦7}と分割されて
保持される。14ビットレジスタ3〜10では、この8個の
サプセットデータ列{u(n),0≦n≦7}が完全に更
新されるまで、1回のデータサンプリングに対して1回
のシフト動作を行ない、データを順次送っていく。つま
り、8回のデータサンプリング毎に、新しいサブセット
データが、14ビットレジスタ3〜10にu(7)、‥‥、
u(0)としてセットされる。次に、このデータは、14
ビットの信号線11〜18を介して、それぞれビットシリア
ル演算部19〜22に供給される。このビットシリアル演算
部19〜22における処理を、第2図を用いて説明する。14
ビットの画像入力65〜66は、第1図の14ビットレジスタ
3〜10のいずれかからのデータで、2の補数表現を用い
て現わすと、 ai(n)∈[0,1],0≦i≦12,0≦n≦3)と、 ai(7−n)∈[0,1],0≦i≦12,0≦n≦3)であ
る。これらのデータが、上位7ビットと下位7ビットが
独立した14ビットのデータロード機能付き右方シフター
67,68に入力され、それぞれ、 として上位7ビットと下位7ビットが分離した形で処理
され、1クロック期間毎に1回のLSB側への右方シフト
が実行される。データロード機能付き右方シフター67,6
8より出力される信号は、u(n)およびu(7−n)
の上位7ビットと下位7ビットに関して2i桁の各1ビッ
トの値で、ai(n)とai+7(n)とai(7−n)とai+7
(7−n)である。これらの信号により、1ビット全加
算器69,70と1ビット全減算器71,72において、式(1−
14)、(1−15)の右辺の(ai+7(n)+ai+7(7−
n))、(ai(n)+ai(7−n))、((ai+7(n)
−ai+7(7−n))、(ai(n)−ai(7−n))の演
算を実行する。これらの演算により発生するキャリーお
よびボローは1ビットラッチ73〜76に保持され、1クロ
ック後の演算に用いられるために、元の1ビット全加算
器69,70と1ビット全減算器71,72に再帰的に入力され
る。1ビット全加算器69,70の演算結果は、1ビットデ
ータ線77,78に各々出力され、1ビット全減算器71,72の
演算結果は、1ビットデータ線79,80に各々出力され
る。
第2図で説明したのと同様に、ビットシリアル演算部
19,22では、式(1−4)、(1−5)の右辺の(ai+7
(n)+ai+7(7−n))、(ai(n)+ai(7−
n))、((ai+7(n)−ai+7(7−n))、(a
i(n)−ai(7−n))の演算が実行され、ビットシ
リアル演算部19ではu(0)とu(7)について、ビッ
トシリアル演算部20ではu(1)とu(6)について、
ビットシリアル演算部21ではu(2)とu(5)につい
て、ビットシリアル演算部22ではu(3)とu(4)に
ついて、この演算を実行する。この結果、各ビットシリ
アル演算部19〜22より出力される4ビットデータ線39〜
42は、4ビットデータ線39が{(ai+7(n)+ai+7(7
−n))、n=0,1,2,3}を示し、4ビットデータ線40
が{(ai(n)+ai(7−n))、n=0,1,2,3}を示
し、4ビットデータ線41が{(ai+7(n)−ai+7(7−
n))、n=0,1,2,3}を示し、4ビットデータ線42が
{(ai(n)−ai(7−n))、n=0,1,2,3}をそれ
ぞれ示している。これらの4ビットの信号の意味を、も
う少し詳しく説明するために、式(1−14)、(1−1
5)に戻って説明する。式(1−14)および式(1−1
5)のnに関する和の部分を展開すると、次式のように
表現することが出来る。
19,22では、式(1−4)、(1−5)の右辺の(ai+7
(n)+ai+7(7−n))、(ai(n)+ai(7−
n))、((ai+7(n)−ai+7(7−n))、(a
i(n)−ai(7−n))の演算が実行され、ビットシ
リアル演算部19ではu(0)とu(7)について、ビッ
トシリアル演算部20ではu(1)とu(6)について、
ビットシリアル演算部21ではu(2)とu(5)につい
て、ビットシリアル演算部22ではu(3)とu(4)に
ついて、この演算を実行する。この結果、各ビットシリ
アル演算部19〜22より出力される4ビットデータ線39〜
42は、4ビットデータ線39が{(ai+7(n)+ai+7(7
−n))、n=0,1,2,3}を示し、4ビットデータ線40
が{(ai(n)+ai(7−n))、n=0,1,2,3}を示
し、4ビットデータ線41が{(ai+7(n)−ai+7(7−
n))、n=0,1,2,3}を示し、4ビットデータ線42が
{(ai(n)−ai(7−n))、n=0,1,2,3}をそれ
ぞれ示している。これらの4ビットの信号の意味を、も
う少し詳しく説明するために、式(1−14)、(1−1
5)に戻って説明する。式(1−14)および式(1−1
5)のnに関する和の部分を展開すると、次式のように
表現することが出来る。
k=2k′,0≦K′≦3の時 k=2k′+1,0≦K′≦3の時 このように、上式(1−16)における各2i桁に関する
演算は、K′を固定すれば、{(ai+7(n)+ai+7(7
−n))、n=0,1,2,3}の4ビットのデータと{(ai
(n)+ai(7−n))、n=0,1,2,3}の4ビットの
データによって一意的に決定することが出来る。又、式
(1−17)についても同様のことが成立する。故にこれ
らの4ビット信号をアドレス情報とし、そのアドレス情
報に従い を出力するようにROM化することは容易である。このよ
うに、4ビットデータ線39の4ビットデータは、式(1
−14)における2i+7桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。同様に、4ビット
データ線40の4ビットデータは、式(1−14)における
2i桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。同様に、4ビット
データ線41の4ビットデータは、式(1−15)における
2i+7桁での を求めるドレス情報として用いられ、ROMと加算器によ
る係数乗算部43〜46に入力される。同様に、4ビットデ
ータ線42の4ビットデータは、式(1−15)における2i
桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。次に、ROMと加算
器による係数乗算部43〜46の中での処理について、第3
図を用いて説明する。第3図において、4ビット信号82
は、式(1−14)における2i+7桁での を求めるアドレス情報で、4ビットデータ線39を介して
入力される。同様に、4ビット信号線83は、式(1−1
4)における2i桁での を求めるアドレス情報で、4ビットデータ線40を介して
入力される。同様に、4ビット信号84は、式(1−15)
における2i+7桁での を求めるアドレス情報で、4ビットデータ線41を介して
入力される。同様に、4ビット信号85は、式(1−15)
における2i桁での を求めるアドレス情報で、4ビットデータ線42を介して
入力される。次に、16ワード×18ビット容量のROM86で
は、4ビット信号82をアドレス情報として受け 値を18ビットのデータとして出力する。同様に、16ワー
ド×18ビット容量のROM87では、4ビット信号83をアド
レス情報として受け の値を18ビットのデータとして出力する。同様に、16ワ
ード×18ビット容量のROM88では、4ビット信号84をア
ドレス情報として受け の値を18ビットのデータとして出力する。同様に、16ワ
ード×18ビット容量のROM89では、4ビット信号85をア
ドレス情報として受け の値を18ビットのデータとし出力する。次に26ビット全
加算器90〜93と、26ビットのデータロード機能付き右方
シフター94〜97は、4組の26ビット累積加算器として働
き、前記ROM86〜89からの18ビットの出力データは、26
ビット全加算器90〜93の一方の入力のMSB側18ビットに
入力される。26ビット全加算器90〜93での加算結果は、
それぞれ26ビットのデータロード機能付き右方シフター
94〜97でLSB側に(右方に)1ビットシフトされ、次の
クロック期間で、前記ROM86〜89の出力と加算される。
但し、この動作で、i=0の時には、26ビットのデータ
ロード機能付きシフター94〜97から26ビット全加算器90
〜93に入力されるデータは“0"に初期化される。この操
作により、8回のクロック期間で、式(1−14)、(1
−15)のそれぞれ4つの項が算出される。33ビット全加
算器98〜99では、26ビットシフター94〜97の出力を加算
する。ここで、26ビットシフター94と96の出力は加算時
に27で桁補正が行なわれ、式(1−14)、(1−15)の
ν(2k′)、(2k′+1)の値を算出する。そして、33
ビットレジスター100、101に、その演算結果をセットす
る。33ビットレジスター100、101は次の8クロックの期
間、新しいサブセットに対してν(2k′)、(2k′+
1)の値が算出されるまで、現在の値を保持する。ここ
で第1図に戻って、説明を続ける。第3図における前記
33ビットレジスター100、101からのデータ102、103は、
第1図の47〜54に対応し、他の3つのブロックの信号の
出力信号と合わせて、DCT処理された信号列{ν(k),
0≦k≦7}となる。この33ビット出力信号列{ν
(k),0≦k≦7}がそれぞれトライステートドライバ
ー55〜62により、時系列化されて出力端子63より出力さ
れる。第4図は本発明の一実施例によるアダプティブDC
T処理装置の概略構成を示すものである。104は制御信号
入力端子、105はデータストローブ信号入力端子、106は
14ビットの画像信号入力端子、107は14ビットの参照画
像信号入力端子、108は差分器、109はクリッピング回
路、110は8×1の一次元のDCT処理回路111に対するタ
イミング信号生成回路、112はクリッピング・丸め込み
処理回路、113は128ワード×16ビットのデュアルポート
メモリ114への書き込み制御回路、115はデュアルポート
メモリ114からの読み出し制御回路、116は8×1の一次
元のDCT処理回路117に対するタイミング信号生成回路、
118はクリッピング・丸め込み処理回路、119は4ビット
の画像出力端子である。第4図は第1図の8×1のDCT
処理回路ブロックを利用した8×8のアダプティブDCT
処理装置の一例である。制御信号104によりアダプティ
ブ処理を行なう場合は、差分器108において、14ビット
画像信号入力106と、14ビット参照画像信号入力107の差
分をとる。その結果の信号が前提とされている最大・最
小のしきい値を越える場合は、クリッピング回路109で
クリップされ、8×1の一次元のDCT処理回路111に入力
される。クリップを行なわない場合は、差分器108から
の信号がスルーされ、8×1の一次元のDCT処理回路111
に入力され、8×1のDCT処理が施される。8×1の一
次元のDCT処理回路111における処理タイミングは、デー
タストローブ信号入力端子105より入力される14ビット
画像信号入力106から入力される一組64個のデジタル画
像信号の先頭の信号を示すストローブ信号をトリガーと
して、タイミング信号生成回路110により制御される。
次に、クリッピング・丸め込み処理回路112では、8×
1の一次元のDCT処理回路111からの処理出力に対しクリ
ッピング・丸め込み処理を行ない、その結果を128ワー
ド×16ビットのデュアルポートメモリ114に入力する。1
28ワード×16ビットのデュアルポートメモリ114の書き
込み、読みだしは、書き込み制御回路113、読みだし制
御回路115により制御される。次に、8×1の一次元のD
CT処理回路117では、128ワード×16ビットのデュアルポ
ートメモリ114からの入力信号をDCT処理し、ここでの処
理タイミングはタイミング信号生成回路116により制御
される。8×1の一次元のDCT処理回路117からの出力デ
ータは、クリッピング・丸め込み処理回路118を通じ
て、14ビットの画像出力端子119に出力され、二次元の
8×のDCT処理が完結する。なお本実施例では1画素デ
ータが14ビット長の時、7ビット長の信号の2分割した
が、M>Nを満たすMビット長をLビット長の信号に分
割しても(ただしL1ビット長の信号に分割する場合を除
く)同様の効果を有する。
演算は、K′を固定すれば、{(ai+7(n)+ai+7(7
−n))、n=0,1,2,3}の4ビットのデータと{(ai
(n)+ai(7−n))、n=0,1,2,3}の4ビットの
データによって一意的に決定することが出来る。又、式
(1−17)についても同様のことが成立する。故にこれ
らの4ビット信号をアドレス情報とし、そのアドレス情
報に従い を出力するようにROM化することは容易である。このよ
うに、4ビットデータ線39の4ビットデータは、式(1
−14)における2i+7桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。同様に、4ビット
データ線40の4ビットデータは、式(1−14)における
2i桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。同様に、4ビット
データ線41の4ビットデータは、式(1−15)における
2i+7桁での を求めるドレス情報として用いられ、ROMと加算器によ
る係数乗算部43〜46に入力される。同様に、4ビットデ
ータ線42の4ビットデータは、式(1−15)における2i
桁での を求めるアドレス情報として用いられ、ROMと加算器に
よる係数乗算部43〜46に入力される。次に、ROMと加算
器による係数乗算部43〜46の中での処理について、第3
図を用いて説明する。第3図において、4ビット信号82
は、式(1−14)における2i+7桁での を求めるアドレス情報で、4ビットデータ線39を介して
入力される。同様に、4ビット信号線83は、式(1−1
4)における2i桁での を求めるアドレス情報で、4ビットデータ線40を介して
入力される。同様に、4ビット信号84は、式(1−15)
における2i+7桁での を求めるアドレス情報で、4ビットデータ線41を介して
入力される。同様に、4ビット信号85は、式(1−15)
における2i桁での を求めるアドレス情報で、4ビットデータ線42を介して
入力される。次に、16ワード×18ビット容量のROM86で
は、4ビット信号82をアドレス情報として受け 値を18ビットのデータとして出力する。同様に、16ワー
ド×18ビット容量のROM87では、4ビット信号83をアド
レス情報として受け の値を18ビットのデータとして出力する。同様に、16ワ
ード×18ビット容量のROM88では、4ビット信号84をア
ドレス情報として受け の値を18ビットのデータとして出力する。同様に、16ワ
ード×18ビット容量のROM89では、4ビット信号85をア
ドレス情報として受け の値を18ビットのデータとし出力する。次に26ビット全
加算器90〜93と、26ビットのデータロード機能付き右方
シフター94〜97は、4組の26ビット累積加算器として働
き、前記ROM86〜89からの18ビットの出力データは、26
ビット全加算器90〜93の一方の入力のMSB側18ビットに
入力される。26ビット全加算器90〜93での加算結果は、
それぞれ26ビットのデータロード機能付き右方シフター
94〜97でLSB側に(右方に)1ビットシフトされ、次の
クロック期間で、前記ROM86〜89の出力と加算される。
但し、この動作で、i=0の時には、26ビットのデータ
ロード機能付きシフター94〜97から26ビット全加算器90
〜93に入力されるデータは“0"に初期化される。この操
作により、8回のクロック期間で、式(1−14)、(1
−15)のそれぞれ4つの項が算出される。33ビット全加
算器98〜99では、26ビットシフター94〜97の出力を加算
する。ここで、26ビットシフター94と96の出力は加算時
に27で桁補正が行なわれ、式(1−14)、(1−15)の
ν(2k′)、(2k′+1)の値を算出する。そして、33
ビットレジスター100、101に、その演算結果をセットす
る。33ビットレジスター100、101は次の8クロックの期
間、新しいサブセットに対してν(2k′)、(2k′+
1)の値が算出されるまで、現在の値を保持する。ここ
で第1図に戻って、説明を続ける。第3図における前記
33ビットレジスター100、101からのデータ102、103は、
第1図の47〜54に対応し、他の3つのブロックの信号の
出力信号と合わせて、DCT処理された信号列{ν(k),
0≦k≦7}となる。この33ビット出力信号列{ν
(k),0≦k≦7}がそれぞれトライステートドライバ
ー55〜62により、時系列化されて出力端子63より出力さ
れる。第4図は本発明の一実施例によるアダプティブDC
T処理装置の概略構成を示すものである。104は制御信号
入力端子、105はデータストローブ信号入力端子、106は
14ビットの画像信号入力端子、107は14ビットの参照画
像信号入力端子、108は差分器、109はクリッピング回
路、110は8×1の一次元のDCT処理回路111に対するタ
イミング信号生成回路、112はクリッピング・丸め込み
処理回路、113は128ワード×16ビットのデュアルポート
メモリ114への書き込み制御回路、115はデュアルポート
メモリ114からの読み出し制御回路、116は8×1の一次
元のDCT処理回路117に対するタイミング信号生成回路、
118はクリッピング・丸め込み処理回路、119は4ビット
の画像出力端子である。第4図は第1図の8×1のDCT
処理回路ブロックを利用した8×8のアダプティブDCT
処理装置の一例である。制御信号104によりアダプティ
ブ処理を行なう場合は、差分器108において、14ビット
画像信号入力106と、14ビット参照画像信号入力107の差
分をとる。その結果の信号が前提とされている最大・最
小のしきい値を越える場合は、クリッピング回路109で
クリップされ、8×1の一次元のDCT処理回路111に入力
される。クリップを行なわない場合は、差分器108から
の信号がスルーされ、8×1の一次元のDCT処理回路111
に入力され、8×1のDCT処理が施される。8×1の一
次元のDCT処理回路111における処理タイミングは、デー
タストローブ信号入力端子105より入力される14ビット
画像信号入力106から入力される一組64個のデジタル画
像信号の先頭の信号を示すストローブ信号をトリガーと
して、タイミング信号生成回路110により制御される。
次に、クリッピング・丸め込み処理回路112では、8×
1の一次元のDCT処理回路111からの処理出力に対しクリ
ッピング・丸め込み処理を行ない、その結果を128ワー
ド×16ビットのデュアルポートメモリ114に入力する。1
28ワード×16ビットのデュアルポートメモリ114の書き
込み、読みだしは、書き込み制御回路113、読みだし制
御回路115により制御される。次に、8×1の一次元のD
CT処理回路117では、128ワード×16ビットのデュアルポ
ートメモリ114からの入力信号をDCT処理し、ここでの処
理タイミングはタイミング信号生成回路116により制御
される。8×1の一次元のDCT処理回路117からの出力デ
ータは、クリッピング・丸め込み処理回路118を通じ
て、14ビットの画像出力端子119に出力され、二次元の
8×のDCT処理が完結する。なお本実施例では1画素デ
ータが14ビット長の時、7ビット長の信号の2分割した
が、M>Nを満たすMビット長をLビット長の信号に分
割しても(ただしL1ビット長の信号に分割する場合を除
く)同様の効果を有する。
発明の効果 以上、説明したごとく本発明によれば、Mビット長を
L<Nを満足するLビット長に分割し、Lビット長で部
分積の演算を並列的に実行し、最後にそれらの中間結果
の加算を実行する方式により、N=8,J=2の時に、8
つのサンプリングクロックの期間で8×1の一次元のDC
T処理を実現することができ、かつ内部演算精度をM=1
4ビットの精度まで乗算器を用いずに確保することがで
き、その実用的効果は大きい。
L<Nを満足するLビット長に分割し、Lビット長で部
分積の演算を並列的に実行し、最後にそれらの中間結果
の加算を実行する方式により、N=8,J=2の時に、8
つのサンプリングクロックの期間で8×1の一次元のDC
T処理を実現することができ、かつ内部演算精度をM=1
4ビットの精度まで乗算器を用いずに確保することがで
き、その実用的効果は大きい。
第1図は本発明の一実施例における8×1の一次元のDC
T処理回路のブロック図、第2図はビットシリアル演算
部の回路構成図、第3図はROMと加算器による係数乗算
部の回路構成図、第4図は本発明の一実施例によるアダ
プティブDCT処理回路の概略構成図である。 2……画像信号入力、3〜10……データレジスタ、19〜
22……ビットシリアル演算部、43〜46……ROMと加算器
による係数乗算部、111,117……8×1の一次元DCT処理
回路、114……デュアルポートメモリ。
T処理回路のブロック図、第2図はビットシリアル演算
部の回路構成図、第3図はROMと加算器による係数乗算
部の回路構成図、第4図は本発明の一実施例によるアダ
プティブDCT処理回路の概略構成図である。 2……画像信号入力、3〜10……データレジスタ、19〜
22……ビットシリアル演算部、43〜46……ROMと加算器
による係数乗算部、111,117……8×1の一次元DCT処理
回路、114……デュアルポートメモリ。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) H04N 7/24 - 7/68 H04N 1/41 - 1/419 G06F 17/00 - 17/17
Claims (2)
- 【請求項1】画像信号の帯域圧縮で用いられるDCT処理
において、Mビット長の信号をN×N画素の処理単位で
DCT処理を行なう場合に、M>Nの関係が成立する時、
Mビット長をL<Nを満足するLビット長の信号に分割
し、各Lビット長の部分積の演算をビットシリアルに加
算器とROMを用いて演算を実行し、最後にそれらの演算
結果を加算することにより、N回のサンプリングクロッ
ク期間で、Mビット長のN×1の一次元DCT処理を完結
することを特徴とするDCT処理装置。 - 【請求項2】上記Mビット長のN×1の一次元DCT処理
装置2個とデータ列のスキャン方向を変換するデュアル
ポートメモリを用いることを特徴とするMビット長のN
×Nの二次元DCT処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2034310A JP2910124B2 (ja) | 1990-02-14 | 1990-02-14 | Dct処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2034310A JP2910124B2 (ja) | 1990-02-14 | 1990-02-14 | Dct処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03237887A JPH03237887A (ja) | 1991-10-23 |
JP2910124B2 true JP2910124B2 (ja) | 1999-06-23 |
Family
ID=12410590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2034310A Expired - Fee Related JP2910124B2 (ja) | 1990-02-14 | 1990-02-14 | Dct処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2910124B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999044368A1 (en) * | 1998-02-27 | 1999-09-02 | Kanebo Limited | Image data processing device and processing method |
US20090034623A1 (en) * | 2005-07-15 | 2009-02-05 | Matsushita Electric Industrial Co., Ltd. | Image encoding device and image encoding method |
-
1990
- 1990-02-14 JP JP2034310A patent/JP2910124B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH03237887A (ja) | 1991-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8793299B2 (en) | Processor for performing multiply-add operations on packed data | |
US5721892A (en) | Method and apparatus for performing multiply-subtract operations on packed data | |
US6014684A (en) | Method and apparatus for performing N bit by 2*N-1 bit signed multiplication | |
US3800130A (en) | Fast fourier transform stage using floating point numbers | |
JP4064989B2 (ja) | パック・データの乗加算演算を実行する装置 | |
US7085795B2 (en) | Apparatus and method for efficient filtering and convolution of content data | |
US7395298B2 (en) | Method and apparatus for performing multiply-add operations on packed data | |
US5862067A (en) | Method and apparatus for providing high numerical accuracy with packed multiply-add or multiply-subtract operations | |
JP2585649B2 (ja) | 除算回路 | |
US5208770A (en) | Accumulation circuit having a round-off function | |
JP2910124B2 (ja) | Dct処理装置 | |
JP2946612B2 (ja) | Idct処理装置 | |
US5400271A (en) | Apparatus for and method of calculating sum of products | |
JPH06149861A (ja) | Dct及び逆dct演算装置並びにその演算方法 | |
JPH0535867A (ja) | 画像処理装置 | |
JP2973220B2 (ja) | ディジタルデータの直交変換方法及びその装置 | |
KR960014196B1 (ko) | 이차원 역 이산 코사인 변환(idct) 프로세서 | |
JP2958966B2 (ja) | ディスクリートコサイン変換装置 | |
Manoj et al. | An Efficient Implementation of Radix 3 Multiplier Less Stream Processor Using Verilog HDL | |
JPS60218144A (ja) | アドレス生成回路 | |
JPH05108693A (ja) | Iirデジタルフイルタ装置 | |
JPH05225224A (ja) | 離散コサイン変換器 | |
JPH05176312A (ja) | 符号化データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080409 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090409 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |