JP4170173B2 - ブロックマッチング演算装置 - Google Patents

ブロックマッチング演算装置 Download PDF

Info

Publication number
JP4170173B2
JP4170173B2 JP2003297805A JP2003297805A JP4170173B2 JP 4170173 B2 JP4170173 B2 JP 4170173B2 JP 2003297805 A JP2003297805 A JP 2003297805A JP 2003297805 A JP2003297805 A JP 2003297805A JP 4170173 B2 JP4170173 B2 JP 4170173B2
Authority
JP
Japan
Prior art keywords
reference image
pixel data
image
current image
sad
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
Application number
JP2003297805A
Other languages
English (en)
Other versions
JP2005072800A5 (ja
JP2005072800A (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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2003297805A priority Critical patent/JP4170173B2/ja
Publication of JP2005072800A publication Critical patent/JP2005072800A/ja
Publication of JP2005072800A5 publication Critical patent/JP2005072800A5/ja
Application granted granted Critical
Publication of JP4170173B2 publication Critical patent/JP4170173B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、動画圧縮伸長システムに適用されるブロックマッチング演算処理に関するものであり、特に、ブロック演算処理を高速に実現するためにブロックマッチング演算装置に関するものである。
MPEGなどを用いた動画像圧縮伸張システムにおいて、ブロックマッチングによる動きベクトルの検出をハードウエアで実現する場合、ブロックマッチング処理を高速に、かつ少ない回路で実現する種々の技術が提案されている。
従来技術では、参照画素を保持するシフトレジスタを備え、参照画素の読み出し順序を制御することで複数の画素列に対する演算を並列して行うことを可能にし、従来よりも早い段階で評価値演算が完結するようにしている(たとえば、特許文献1参照)。
特開平10−304370号公報
しかしながら、上記従来技術は、参照画素を1/k(kは自然数)に減らし、かつ参照画素を保持するシフトレジスタを備えることでM(Mは参照画素の垂直画素数)/k列分の参照画素を同時に別の演算ユニットに与えることで複数の画素列に対する演算を並列に行うようにしているため、たとえば、フレームでのブロックマッチング処理を参照画素を間引くことなく(k=1)行う場合、8個のPE(プロセッシング・エレメント)を内部に有する演算ユニットPEUが8個必要となり、回路規模が大きくなってしまうという問題があった。
本発明は、上記に鑑みてなされたものであって、消費電力を抑制し、かつ少ない回路で高速に全ての参照画素に対してブロックマッチング処理を行うブロックマッチング演算装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかるブロックマッチング演算装置は、動画圧縮伸長システムに適用され、現画像と参照画像とのブロックマッチングを行い差分絶対値和を算出するブロックマッチング演算処理装置において、入力された参照画像の画素データを保持するレジスタと、このレジスタに保持された参照画像の画素データと入力された現画像の画素データとの差分絶対値和演算を行う第1の演算部を有するプロセッシング・エレメントをN(1<N,Nは自然数)個備えるとともに、これらN個のプロセッシング・エレメントのレジスタを接続して前記参照画像の画素データを順次シフトするシフトレジスタを構成する第1の差分絶対値和演算手段と、入力された参照画像の画素データを保持するレジスタと、このレジスタに保持された参照画像の画素データと入力された現画像の画素データとの差分絶対値和演算を行う第2の演算部を有するプロセッシング・エレメントをN−1個備えるとともに、これらN−1個のプロセッシング・エレメントのレジスタを接続して前記参照画像の画素データを順次シフトするシフトレジスタを構成する第2の差分絶対値和演算手段と、前記第1の差分絶対値和演算手段内のN個のプロセッシング・エレメントが構成するシフトレジスタの初段および第2の差分絶対値和演算手段内のN−1個のプロセッシング・エレメントが構成するシフトレジスタの初段に参照画像の画素データを入力するメモリインタフェース部とを備え、前記メモリインタフェース部は、参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、前記第2の差分絶対値和演算手段への出力を前記第1の差分絶対和演算手段への出力より1サイクル遅延させることを特徴とする。
この発明によれば、現画像の画素データと参照画像の画素データとの差分絶対値和演算を行う2N−1個のプロセッシング・エレメントをN個とN−1個に分割して、それぞれ第1の差分絶対値和演算手段と第2の差分絶対値和演算手段とし、第1の差分絶対値和演算手段内のN個のプロセッシング・エレメントが構成するシフトレジスタの初段および第2の差分絶対値和演算手段内のN−1個のプロセッシング・エレメントが構成するシフトレジスタの初段に参照画像の画素データを入力するメモリインタフェース部が、参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、第2の差分絶対値和演算手段への出力を第1の差分絶対和演算手段への出力より1サイクル遅延させることにより、プロセッシング・エレメントが1個少ない第2の差分絶対値和演算手段が、第1の差分絶対値和演算手段より1サイクル遅延して並列に現画像の画素データと参照画像の画素データとの差分絶対値和演算を行うようにしている。
この発明にかかるブロックマッチング装置によれば、現画像の画素データと参照画像の画素データとの差分絶対値和演算を行う2N−1個のプロセッシング・エレメントをN個とN−1個に分割して、それぞれ第1の差分絶対値和演算手段と第2の差分絶対値和演算手段とし、第1の差分絶対値和演算手段内のN個のプロセッシング・エレメントが構成するシフトレジスタの初段および第2の差分絶対値和演算手段内のN−1個のプロセッシング・エレメントが構成するシフトレジスタの初段に参照画像の画素データを入力するメモリインタフェース部が、参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、第2の差分絶対値和演算手段への出力を第1の差分絶対和演算手段への出力より1サイクル遅延させることにより、プロセッシング・エレメントが1個少ない第2の差分絶対値和演算手段が、第1の差分絶対値和演算手段より1サイクル遅延して並列に現画像の画素データと参照画像の画素データとの差分絶対値和演算を行うようにしているため、高速にブロックマッチング演算を実行することができる。
以下に、本発明にかかるブロックマッチング演算装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1〜図9−2を用いて、本発明の実施の形態1を説明する。図1は、この発明における実施の形態1のブロックマッチング演算装置の構成を示すブロック図である。この発明における実施の形態1のブロックマッチング演算装置は、メモリ104と、メモリインタフェース部103と、第1の差分絶対値和演算手段である第1の差分絶対値和演算部(以下、第1のSAD演算部とする)101と、第2の差分絶対値和演算手段である第2の差分絶対値和演算部(以下、第2のSAD演算部とする)102とを備えている。なお、メモリ104は、ブロックマッチング演算装置の外部に備えるようにしてもよい。
メモリ104は、ブロックマッチング演算の参照画像のデータを記憶する。たとえば、図2に示すように現画像がc(0,0),c(0,1),…,c(0,7),c(1,0),c(1,1),…c(1,7),…,c(7,0),c(7,1),…,c(7,7)の8×8pixelであり、現画像の探索範囲である参照画像は現画像を中心とした垂直方向および水平方向にそれぞれ±7の範囲とした場合、メモリ104は、図3に示すようにr(0,0),r(0,1),…,r(0,21),r(1,0),r(1,1),…r(1,21),…,r(21,0),r(21,1),…,r(21,21)の484個の画素データを参照画像として記憶する。
メモリインタフェース部103は、メモリ104とのインタフェース機能を備えており、制御信号110に基づいてメモリ104から参照画像の画素データを読み出し、読み出した画素データを第1のSAD演算部101と第2のSAD演算部102とに出力する。
図4は、図1に示したメモリインタフェース部103の構成の一例を示すブロック図である。図4に示したメモリインタフェース部103は、画素データが8ビットであり、メモリ104が1アドレスに4つの画素データ(32bit)を記憶する場合の構成を示している。メモリインタフェース部103は、アドレス生成回路500と、セレクタ501,502と、レジスタ503〜506とを備えている。なお、アドレス生成回路500は、メモリインタフェース部103の外部に備えるようにしてもよい。
アドレス生成回路500は、メモリ104へのアクセスの開始および停止を制御する制御信号110に基づいてメモリ104に記憶されている参照画像の画素データを読み出すためのチップセレクトやリードイネーブルなどの制御信号およびアドレス信号をメモリ104に出力する。
セレクタ501は、制御信号110に基づいてメモリ104から読み出した参照画像の各画素データをレジスタ503〜506の何れか1つに出力する。レジスタ503〜506は、それぞれメモリ104へのアクセスビット数(ここでは、32bit)のデータを保持する。
セレクタ502は、制御信号110に基づいてレジスタ503〜506に保持されている参照画像の画素データの中から2つの画素データを選択して、選択した2つの画素データの一方を第1のSAD演算部101に、もう一方の画素データを第2のSAD演算部102に出力する。ただし、各水平ラインの最初の参照画像データr(0,0),r(1,0),r(2,0),…,r(21,0)については、第1のSAD演算部101のみに出力し、第2のSAD演算部102への参照画像データの出力を行なわない。
第1のSAD演算部101は、N(1<N,Nは自然数)個のProcessing Element部(以下、PE部)を備え、参照画像の画素データと現画像の画素データとの差分絶対値和の演算処理を行う。PE部の数Nは、現画像を中心とした水平方向の検索範囲の画素データ数により決定する。具体的には、水平方向の検索範囲の画素データ数をmとすると、第1のSAD演算部101のPE部の個数Nは、N=m/2(ただし、小数点以下は四捨五入とする)となる。図5は、現画像の探索範囲である参照画像を現画像を中心とした垂直方向および水平方向にそれぞれ±7の範囲とした場合(検索範囲となる画素数mが15の場合)の第1のSAD演算部101の構成を示すブロック図である。図5に示した第1のSAD演算部101は、8つのPE部PE0a〜PE7aを備えている。PE部PE0a〜PE7aは、それぞれ現画像と参照画像の画素データとの差分絶対値和の演算処理を行うとともに、PE部PE7a,PE6a,PE5a,PE4a,PE3a,PE2a,PE1a,PE0aの順に参照画像の画素データをシフトする。
第2のSAD演算部102は、N−1個のPE部を備え、参照画像の画素データと現画像の画素データとの差分絶対値和の演算処理を行う。図6は、N=8の場合の第2のSAD演算部102の構成を示すブロック図である。図6に示した第2のSAD演算部102は、7つのPE部PE0b〜PE6bを備えている。PE部PE0b〜PE6bは、それぞれ現画像と参照画像の画素データとの差分絶対値和の演算処理を行うとともに、PE部PE6b,PE5b,PE4b,PE3b,PE2b,PE1b,PE0bの順に参照画像の画素データをシフトする。
第1のSAD演算部101のPE部PE0a〜PE7aおよび第2のSAD演算部102のPE部PE0b〜PE6bは全て同じ機能を備えている。図7に示したPE0aの構成を示すブロック図を参照して、PE部の機能を説明する。PE部は、フリップフロップ400,401と、減算器402と、絶対値演算器403と、加算器404とを備えている。なお、第1のSAD演算部101のPE部PE0a〜PE7a内の減算器402と、絶対値演算器403と、加算器404とで特許請求の範囲でいうところの第1の演算部を、第2のSAD演算部102のPE部PE0b〜PE6b内の減算器402と、絶対値演算器403と、加算器404とで特許請求の範囲でいうところの第2の演算部を構成している。
フリップフロップ400は、参照画像の1画素分の画素データをクロック信号に同期して保持するとともに、次段のPE部のフリップフロップ400に参照画像の画素データを出力する。すなわち、各PE部のフリップフロップ400が接続されて参照画像の1画素分の画像データをシフトするシフトレジスタを構成する。
減算器402は、現画像の1画素分の画素データとフリップフロップ400に保持されている参照画像の1画素分の画素データとの減算を行なう。絶対値演算器403は、減算器402の出力の絶対値を算出する。すなわち、減算器402と絶対値演算器403とで、フリップフロップ400に保持された参照画像の1画素分の画素データと現画像の1画素分の画素データとの差分絶対値を算出する。加算器404は、差分絶対値とフリップフロップ401に保持されている1クロック前に演算したSAD出力とを加算して、SAD演算を行なう。なお、クロック信号およびリセット信号が、図1における制御信号111,112に相当する。また、フリップフロップ400,401のリセットは同期リセットでもよいし、非同期リセットでもよい。
つぎに、この発明における実施の形態1のブロックマッチング演算装置の動作を説明する。メモリ104へのアクセスの開始および停止を制御する制御信号110に基づいてメモリ104に記憶されている参照画像の画素データを読み出すためのチップセレクトやリードイネーブルなどの制御信号およびアドレス信号をメモリ104に出力する。メモリ104は、アドレス信号で指定されたアドレスの参照画像の画素データをセレクタ501に出力する。セレクタ501は、制御信号110に基づいてメモリ104から入力された画素データをレジスタ503〜506の何れか1つに出力し、レジスタ503〜506は、入力された画素データを保持する。たとえば、図8に示すように、アドレス「8’h00」に格納されている参照画像r(0,0),r(0,1),r(0,2),r(0,3)の各画素データをレジスタ503に、アドレス「8’h01」に格納されている参照画像r(0,4),r(0,5),r(0,6),r(0,7)の各画素データをレジスタ504に、アドレス「8’h02」に格納されている参照画像r(0,8),r(0,9),r(0,10),r(0,11)の各画素データをレジスタ505に、アドレス「8’h03」に格納されている参照画像r(0,12),r(0,13),r(0,14),r(0,15)の各画素データをレジスタ506に、それぞれ格納する。
セレクタ502は、制御信号110に基づいてレジスタ503〜506に保持されている参照画像の画素データの中から2つの画素データを選択して、選択した2つの画素データの一方を第1のSAD演算部101に、もう一方の画素データを第2のSAD演算部102に出力する。具体的には、セレクタ502は、最初に、レジスタ503に格納されている参照画像r(0,0)の画素データを第1のSAD演算部101に出力する。つぎに、セレクタ502は、参照画像r(0,1),r(0,8)、r(0,2),r(0,9)、r(0,3),r(0,10)、…、r(0,7),r(0,14)の組でそれぞれの画素データを順次第1のSAD演算部101のPE部PE7aと第2のSAD演算部102のPE部PE6bとに同一サイクルで出力する。
第1のSAD演算部101のPE部PE7a〜PE0aおよび第2のSAD演算部102のPE部PE6b〜PE0bは、それぞれシフト動作を行なって順次参照画像の画素データをシフトする。図9−1に示すように第1のSAD演算部101のPE部PE0a〜PE7に参照画像r(0,0)〜r(0,7)の8つの画素データが、図9−2に示すように第2のSAD演算部102のPE部PE0b〜PE6bに参照画像r(0,8)〜r(0,14)の7つの画素データが設定されると、現画像c(0,0)の画素データを入力する。これにより、PE部PE0a〜PE7a,PE0b〜PE6bは、それぞれ参照画像r(0,0)〜r(0,14)の画素データと現画像c(0,0)の画素データとのSAD演算を行なって、それぞれのSAD出力値を出力する。ここでは、参照画像r(0,0)〜r(0,14)の画素データと現画像c(0,0)の画素データとの15個のSAD出力値を出力する。
つぎのサイクルでセレクタ502は、レジスタ505に保持されている参照画像r(0,8)の画素データを第1のSAD演算部101のPE部PE7aに、レジスタ506に保持されている参照画像r(0,15)を第2のSAD演算部102のPE部6bにそれぞれ出力する。第1のSAD演算部101のPE部PE7a〜PE0aと第2のSAD演算部102のPE部PE6b〜PE0bはそれぞれシフト動作により、保持している参照画像の画素データをシフトする。これにより、図10−1に示すように第1のSAD演算部101のPE部PE0a〜PE7aには参照画像r(0,1)〜r(0,8)が、図10−2の示すように第2のSAD演算部102のPE部PE0b〜PE6bには参照画像r(0,9)〜r(0,15)が設定される。そして、現画像c(0,1)の画素データが入力され、PE部PE0a〜PE7a,PE0b〜PE6bは、それぞれ参照画像r(0,1)〜r(0,15)と現画像の画像データc(0,1)とのSAD演算を行なって、それぞれのSAD出力値を出力する。
つぎのサイクルでは、参照画像r(0,2)〜r(0,16)の画素データと現画像c(0,2)の画素データとのSAD演算を行なうが、アドレス生成回路500およびセレクタ501は、制御信号110によりセレクタ502が選択しているレジスタとは異なるレジスタに、メモリ104に格納されている参照画像r(0,16),r(0,17),r(0,18),r(0,19)を読み込んでおく。たとえば、セレクタ502がレジスタ503のr(0,3)の画素データを選択して第1のSAD演算部101のPE7aに出力した後に、アドレス生成回路500はチップセレクト、リードイネーブルおよびアドレス「8’h04」をメモリ104に出力して、参照画像r(0,16),r(0,17),r(0,18),r(0,19)を読み出して、セレクタ501は、読み出した参照画像をレジスタ503に出力し、レジスタ503に格納する。すなわち、メモリインタフェース部103は、レジスタ503〜506に格納されている有効な参照画像の画素データがなくなる前に、第1のSAD演算部101および第2のSAD演算部102に参照画像の画素データを出力しながら、つぎに必要な参照画像の画素データをメモリ104から読み出しておく。これにより、メモリ104から参照画像の画素データを読み出しと、第1のSAD演算部101および第2のSAD演算部102に参照画像の画素データを出力する処理とを並列に行なうことができる。
メモリインタフェース部103は、参照画像r(0,9),r(0,16)、r(0,10),r(0,17)、…、r(0,14)、r(0,21)の組で順次第1のSAD演算部101のPE7aと第2のSAD演算部102のPE6bとに出力し、第1のSAD演算部101および第2のSAD演算部102は、現画像1画素分の画像データと参照画像の15画素分の画像データとのSAD演算を行なう。
このようにして図2に示した8×8画素の現画像と図3に示した22×22画素の参照画像とのブロックマッチング処理手順を以下に示す。
参照画像水平方向1ライン目と現画像水平方向1ライン目の処理の場合、第1のSAD演算部101は、
現画像c(0,0)と参照画像のr(0,0)〜r(0,7)とのマッチング
現画像c(0,1)と参照画像のr(0,1)〜r(0,8)とのマッチング
現画像c(0,2)と参照画像のr(0,2)〜r(0,9)とのマッチング
現画像c(0,3)と参照画像のr(0,3)〜r(0,10)とのマッチング
現画像c(0,4)と参照画像のr(0,4)〜r(0,11)とのマッチング
現画像c(0,5)と参照画像のr(0,5)〜r(0,12)とのマッチング
現画像c(0,6)と参照画像のr(0,6)〜r(0,13)とのマッチング
現画像c(0,7)と参照画像のr(0,7)〜r(0,14)とのマッチング
を行なう。
参照画像水平方向1ライン目と現画像水平方向2ライン目の処理の場合、第1のSAD演算部101は、
現画像c(1,0)と参照画像のr(1,0)〜r(1,7)とのマッチング
現画像c(1,1)と参照画像のr(1,1)〜r(1,8)とのマッチング
現画像c(1,2)と参照画像のr(1,2)〜r(1,9)とのマッチング
現画像c(1,3)と参照画像のr(1,3)〜r(1,10)とのマッチング
現画像c(1,4)と参照画像のr(1,4)〜r(1,11)とのマッチング
現画像c(1,5)と参照画像のr(1,5)〜r(1,12)とのマッチング
現画像c(1,6)と参照画像のr(1,6)〜r(1,13)とのマッチング
現画像c(1,7)と参照画像のr(1,7)〜r(1,14)とのマッチング
を行なう。
参照画像水平方向1ライン目と現画像水平方向3ライン目の処理の場合、第1のSAD演算部101は、
現画像c(2,0)と参照画像のr(2,0)〜r(2,7)とのマッチング
現画像c(2,1)と参照画像のr(2,1)〜r(2,8)とのマッチング
現画像c(2,2)と参照画像のr(2,2)〜r(2,9)とのマッチング
現画像c(2,3)と参照画像のr(2,3)〜r(2,10)とのマッチング
現画像c(2,4)と参照画像のr(2,4)〜r(2,11)とのマッチング
現画像c(2,5)と参照画像のr(2,5)〜r(2,12)とのマッチング
現画像c(2,6)と参照画像のr(2,6)〜r(2,13)とのマッチング
現画像c(2,7)と参照画像のr(2,7)〜r(2,14)とのマッチング
を行なう。
すなわち、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第1のSAD演算部101は、
現画像c(i,0)と参照画像のr(i,0)〜r(i,7)とのマッチング
現画像c(i,1)と参照画像のr(i,1)〜r(i,8)とのマッチング
現画像c(i,2)と参照画像のr(i,2)〜r(i,9)とのマッチング
現画像c(i,3)と参照画像のr(i,3)〜r(i,10)とのマッチング
現画像c(i,4)と参照画像のr(i,4)〜r(i,11)とのマッチング
現画像c(i,5)と参照画像のr(i,5)〜r(i,12)とのマッチング
現画像c(i,6)と参照画像のr(i,6)〜r(i,13)とのマッチング
現画像c(i,7)と参照画像のr(i,7)〜r(i,14)とのマッチング
を行なう。
これにより、PE部PE0aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,0)、右下角をr(7,7)とする各画素との64個分のSAD出力値を、PE部PE1aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,1)、右下角をr(7,8)とする各画素との64個分のSAD出力値を、PE部PE2aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,2)、右下角をr(7,9)とする各画素との64個分のSAD出力値を、PE部PE3aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,3)、右下角をr(7,10)とする各画素との64個分のSAD出力値を、PE部PE4aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,4)、右下角をr(7,11)とする各画素との64個分のSAD出力値を、PE部PE5aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,5)、右下角をr(7,12)とする各画素との64個分のSAD出力値を、PE部PE6aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,6)、右下角をr(7,13)とする各画素との64個分のSAD出力値を、PE部PE7aは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,7)、右下角をr(7,14)とする各画素との64個分のSAD出力値を出力する。すなわち、第1のSAD演算部101は、8種類のSAD出力値を同時に出力する。
一方、参照画像水平方向1ライン目と現画像水平方向1ライン目の処理の場合、第2のSAD演算部102は、
現画像c(0,0)と参照画像のr(0,8)〜r(0,14)とのマッチング
現画像c(0,1)と参照画像のr(0,9)〜r(0,15)とのマッチング
現画像c(0,2)と参照画像のr(0,10)〜r(0,16)とのマッチング
現画像c(0,3)と参照画像のr(0,11)〜r(0,17)とのマッチング
現画像c(0,4)と参照画像のr(0,12)〜r(0,18)とのマッチング
現画像c(0,5)と参照画像のr(0,13)〜r(0,19)とのマッチング
現画像c(0,6)と参照画像のr(0,14)〜r(0,20)とのマッチング
現画像c(0,7)と参照画像のr(0,15)〜r(0,21)とのマッチング
を行なう。
参照画像水平方向1ライン目と現画像水平方向2ライン目の処理の場合、第2のSAD演算部102は、
現画像c(1,0)と参照画像のr(1,8)〜r(1,14)とのマッチング
現画像c(1,1)と参照画像のr(1,9)〜r(1,15)とのマッチング
現画像c(1,2)と参照画像のr(1,10)〜r(1,16)とのマッチング
現画像c(1,3)と参照画像のr(1,11)〜r(1,17)とのマッチング
現画像c(1,4)と参照画像のr(1,12)〜r(1,18)とのマッチング
現画像c(1,5)と参照画像のr(1,13)〜r(1,19)とのマッチング
現画像c(1,6)と参照画像のr(1,14)〜r(1,20)とのマッチング
現画像c(1,7)と参照画像のr(1,15)〜r(1,21)とのマッチング
を行なう。
すなわち、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第2のSAD演算部102は、
現画像c(i,0)と参照画像のr(i,8)〜r(i,14)とのマッチング
現画像c(i,1)と参照画像のr(i,9)〜r(i,15)とのマッチング
現画像c(i,2)と参照画像のr(i,10)〜r(i,16)とのマッチング
現画像c(i,3)と参照画像のr(i,11)〜r(i,17)とのマッチング
現画像c(i,4)と参照画像のr(i,12)〜r(i,18)とのマッチング
現画像c(i,5)と参照画像のr(i,13)〜r(i,19)とのマッチング
現画像c(i,6)と参照画像のr(i,14)〜r(i,20)とのマッチング
現画像c(i,7)と参照画像のr(i,15)〜r(i,21)とのマッチング
を行なう。
これにより、PE部PE0bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,8)、右下角をr(7,15)とする各画素との64個分のSAD出力値を、PE部PE1bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,9)、右下角をr(7,16)とする各画素との64個分のSAD出力値を、PE部PE2bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,10)、右下角をr(7,17)とする各画素との64個分のSAD出力値を、PE部PE3bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,11)、右下角をr(7,18)とする各画素との64個分のSAD出力値を、PE部PE4bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,12)、右下角をr(7,19)とする各画素との64個分のSAD出力値を、PE部PE5bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,13)、右下角をr(7,20)とする各画素との64個分のSAD出力値を、PE部PE6bは図2に示した現画像8×8画素c(0,0)〜c(7,7)と図3に示した参照画像の左上角をr(0,14)、右下角をr(7,21)とする各画素との64個分のSAD出力値を出力する。すなわち、第2のSAD演算部102は、7種類のSAD出力値を同時に出力する。
このようにして、図3に示した参照画像内の左上角をr(0,0)、右下角をr(7,21)とする15並列処理範囲8×22画素分の画素データと、図2に示した現画像c(0,0)〜c(7,7)の画素データとのブロックマッチング、すなわち、参照画像の水平方向1ライン目と現画像とのブロックマッチングが完了する。
参照画像の水平方向1ライン目の処理が完了すると、参照画像内での15並列処理範囲を垂直方向に1ラインずつずらして、上述した水平方向1ライン目の処理と同様の処理を行うが、メモリインタフェース部103は、水平成分が0の参照画像r(1,0),r(2,0),…,r(21,0)については、第1のSAD演算部101のみに出力し、第2のSAD演算部102への参照画像データの出力を行なわない。すなわち、参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、第2のSAD演算部102に出力するデータを第1のSAD演算部101に出力するデータより1サイクル遅延させて出力する。
参照画像の水平方向2ライン目の処理の15並列処理範囲は、図3に示した参照画像の左上角をr(1,0)、右下角をr(8,21)とする8×22画素の画素データとなる。
参照画像水平方向2ライン目と現画像水平方向1ライン目の処理の場合、第1のSAD演算部101は、
現画像c(0,0)と参照画像のr(1,0)〜r(1,7)とのマッチング
現画像c(0,1)と参照画像のr(1,1)〜r(1,8)とのマッチング
現画像c(0,2)と参照画像のr(1,2)〜r(1,9)とのマッチング
現画像c(0,3)と参照画像のr(1,3)〜r(1,10)とのマッチング
現画像c(0,4)と参照画像のr(1,4)〜r(1,11)とのマッチング
現画像c(0,5)と参照画像のr(1,5)〜r(1,12)とのマッチング
現画像c(0,6)と参照画像のr(1,6)〜r(1,13)とのマッチング
現画像c(0,7)と参照画像のr(1,7)〜r(1,14)とのマッチング
を行なう。
参照画像水平方向2ライン目と現画像水平方向2ライン目の処理の場合、第1のSAD演算部101は、
現画像c(1,0)と参照画像のr(2,0)〜r(2,7)とのマッチング
現画像c(1,1)と参照画像のr(2,1)〜r(2,8)とのマッチング
現画像c(1,2)と参照画像のr(2,2)〜r(2,9)とのマッチング
現画像c(1,3)と参照画像のr(2,3)〜r(2,10)とのマッチング
現画像c(1,4)と参照画像のr(2,4)〜r(2,11)とのマッチング
現画像c(1,5)と参照画像のr(2,5)〜r(2,12)とのマッチング
現画像c(1,6)と参照画像のr(2,6)〜r(2,13)とのマッチング
現画像c(1,7)と参照画像のr(2,7)〜r(2,14)とのマッチング
を行なう。
すなわち、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第1のSAD演算部101は、
現画像c(i,0)と参照画像のr(i+1,0)〜r(i+1,7)とのマッチング
現画像c(i,1)と参照画像のr(i+1,1)〜r(i+1,8)とのマッチング
現画像c(i,2)と参照画像のr(i+1,2)〜r(i+1,9)とのマッチング
現画像c(i,3)と参照画像のr(i+1,3)〜r(i+1,10)とのマッチング
現画像c(i,4)と参照画像のr(i+1,4)〜r(i+1,11)とのマッチング
現画像c(i,5)と参照画像のr(i+1,5)〜r(i+1,12)とのマッチング
現画像c(i,6)と参照画像のr(i+1,6)〜r(i+1,13)とのマッチング
現画像c(i,7)と参照画像のr(i+1,7)〜r(i+1,14)とのマッチング
を行なう。
参照画像水平方向3ライン目と現画像の処理の場合、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第1のSAD演算部101は、
現画像c(i,0)と参照画像のr(i+2,0)〜r(i+2,7)とのマッチング
現画像c(i,1)と参照画像のr(i+2,1)〜r(i+2,8)とのマッチング
現画像c(i,2)と参照画像のr(i+2,2)〜r(i+2,9)とのマッチング
現画像c(i,3)と参照画像のr(i+2,3)〜r(i+2,10)とのマッチング
現画像c(i,4)と参照画像のr(i+2,4)〜r(i+2,11)とのマッチング
現画像c(i,5)と参照画像のr(i+2,5)〜r(i+2,12)とのマッチング
現画像c(i,6)と参照画像のr(i+2,6)〜r(i+2,13)とのマッチング
現画像c(i,7)と参照画像のr(i+2,7)〜r(i+2,14)とのマッチング
を行なう。
参照画像内での15並列処理範囲を垂直方向に1ラインずつずらしていき、参照画像水平方向15ライン目と現画像の処理の場合、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第1のSAD演算部101は、
現画像c(i,0)と参照画像のr(i+14,0)〜r(i+14,7)とのマッチング
現画像c(i,1)と参照画像のr(i+14,1)〜r(i+14,8)とのマッチング
現画像c(i,2)と参照画像のr(i+14,2)〜r(i+14,9)とのマッチング
現画像c(i,3)と参照画像のr(i+14,3)〜r(i+14,10)とのマッチング
現画像c(i,4)と参照画像のr(i+14,4)〜r(i+14,11)とのマッチング
現画像c(i,5)と参照画像のr(i+14,5)〜r(i+14,12)とのマッチング
現画像c(i,6)と参照画像のr(i+14,6)〜r(i+14,13)とのマッチング
現画像c(i,7)と参照画像のr(i+14,7)〜r(i+14,14)とのマッチング
を行なう。
一方、参照画像水平方向2ライン目と現画像水平方向1ライン目の処理の場合、第2のSAD演算部102は、
現画像c(0,0)と参照画像のr(1,8)〜r(1,14)とのマッチング
現画像c(0,1)と参照画像のr(1,9)〜r(1,15)とのマッチング
現画像c(0,2)と参照画像のr(1,10)〜r(1,16)とのマッチング
現画像c(0,3)と参照画像のr(1,11)〜r(1,17)とのマッチング
現画像c(0,4)と参照画像のr(1,12)〜r(1,18)とのマッチング
現画像c(0,5)と参照画像のr(1,13)〜r(1,19)とのマッチング
現画像c(0,6)と参照画像のr(1,14)〜r(1,20)とのマッチング
現画像c(0,7)と参照画像のr(1,15)〜r(1,21)とのマッチング
を行なう。
参照画像水平方向2ライン目と現画像水平方向2ライン目の処理の場合、第2のSAD演算部102は、
現画像c(1,0)と参照画像のr(2,8)〜r(2,14)とのマッチング
現画像c(1,1)と参照画像のr(2,9)〜r(2,15)とのマッチング
現画像c(1,2)と参照画像のr(2,10)〜r(2,16)とのマッチング
現画像c(1,3)と参照画像のr(2,11)〜r(2,17)とのマッチング
現画像c(1,4)と参照画像のr(2,12)〜r(2,18)とのマッチング
現画像c(1,5)と参照画像のr(2,13)〜r(2,19)とのマッチング
現画像c(1,6)と参照画像のr(2,14)〜r(2,20)とのマッチング
現画像c(1,7)と参照画像のr(2,15)〜r(2,21)とのマッチング
を行なう。
すなわち、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第2のSAD演算部102は、
現画像c(i,0)と参照画像のr(i+1,8)〜r(i+1,14)とのマッチング
現画像c(i,1)と参照画像のr(i+1,9)〜r(i+1,15)とのマッチング
現画像c(i,2)と参照画像のr(i+1,10)〜r(i+1,16)とのマッチング
現画像c(i,3)と参照画像のr(i+1,11)〜r(i+1,17)とのマッチング
現画像c(i,4)と参照画像のr(i+1,12)〜r(i+1,18)とのマッチング
現画像c(i,5)と参照画像のr(i+1,13)〜r(i+1,19)とのマッチング
現画像c(i,6)と参照画像のr(i+1,14)〜r(i+1,20)とのマッチング
現画像c(i,7)と参照画像のr(i+1,15)〜r(i+1,21)とのマッチング
を行なう。
参照画像水平方向3ライン目と現画像の処理の場合、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第2のSAD演算部102は、
現画像c(i,0)と参照画像のr(i+2,8)〜r(i+2,14)とのマッチング
現画像c(i,1)と参照画像のr(i+2,9)〜r(i+2,15)とのマッチング
現画像c(i,2)と参照画像のr(i+2,10)〜r(i+2,16)とのマッチング
現画像c(i,3)と参照画像のr(i+2,11)〜r(i+2,17)とのマッチング
現画像c(i,4)と参照画像のr(i+2,12)〜r(i+2,18)とのマッチング
現画像c(i,5)と参照画像のr(i+2,13)〜r(i+2,19)とのマッチング
現画像c(i,6)と参照画像のr(i+2,14)〜r(i+2,20)とのマッチング
現画像c(i,7)と参照画像のr(i+2,15)〜r(i+2,21)とのマッチング
を行なう。
参照画像内での15並列処理範囲を垂直方向に1ラインずつずらしていき、参照画像水平方向15ライン目と現画像の処理の場合、現画像の垂直成分をi(0≦i≦7,iは整数)とすると、第2のSAD演算部102は、
現画像c(i,0)と参照画像のr(i+14,8)〜r(i+14,14)とのマッチング
現画像c(i,1)と参照画像のr(i+14,9)〜r(i+14,15)とのマッチング
現画像c(i,2)と参照画像のr(i+14,10)〜r(i+14,16)とのマッチング
現画像c(i,3)と参照画像のr(i+14,11)〜r(i+14,17)とのマッチング
現画像c(i,4)と参照画像のr(i+14,12)〜r(i+14,18)とのマッチング
現画像c(i,5)と参照画像のr(i+14,13)〜r(i+14,19)とのマッチング
現画像c(i,6)と参照画像のr(i+14,14)〜r(i+14,20)とのマッチング
現画像c(i,7)と参照画像のr(i+14,15)〜r(i+14,21)とのマッチング
を行なう。
このようにして、第1のSAD演算部101および第2のSAD演算部102は、図2に示した8×8画素の現画像の画素データと、図3に示した22×22画素の参照画像の画素データとのブロックマッチング処理がすべて完了する。この実施の形態1のブロックマッチング演算装置は、第1のSAD演算部101および第2のSAD演算部102で15並列のブロックマッチング処理を行っている。そのため、第1のSAD演算部101は8つSAD出力値を、第2のSAD演算部102は7つのSAD出力値をそれぞれ同時に出力する。ブロックマッチング処理は、これらのSAD出力値の最小値に相当する位置をベクトルで表示するのが一般的である。したがって、ブロックマッチング演算装置は、第1のSAD演算部101および第2のSAD演算部102から出力される15のSAD出力値の最小値を求めて出力してもよいし、15のSAD出力値を出力し、これらの最小値の算出は、他の装置で行うようにしてもよい。
以上説明したように、この実施の形態1では、現画像の画素データと参照画像の画素データとの差分絶対値和演算を行う2N−1個のPE部をN個とN−1個に分割して、それぞれ第1のSAD演算部と第2のSAD演算部とし、第1のSAD演算部内のN個のPE部が構成するシフトレジスタの初段および第2のSAD演算部内のN−1個のPE部が構成するシフトレジスタの初段に参照画像の画素データを入力するメモリインタフェース部が、参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、第2のSAD演算部への出力を1サイクル遅延させることにより、PE部が1個少ない第2のSAD演算部が、第1のSAD演算部より1サイクル遅延して並列に現画像の画素データと参照画像の画素データとの差分絶対値和演算を行うようにしているため、参照画像の2N−1個の画素データを全てのPE部に格納するサイクルが少なくなり、高速にブロックマッチング演算を実行することができる。
また、メモリインタフェース部に複数のレジスタを備えているため、参照画像の画素データを第1および第2のSAD演算部が差分絶対値和演算を実行中に、つぎに必要な参照画像の画素データをメモリから読み出すことができ、高速にブロックマッチング演算を実行することができる。
なお、この実施の形態1では、メモリインタフェース部に4つのレジスタを備え、1つのレジスタが4個の画素データを保持して、合計16個の画素データを保持する例をあげて説明した。しかし、画素データを保持するレジスタの構成はこれに限るものではなく、1若しくは複数のレジスタを用いて、4つ以上の画素データを保持するようにしてもよい。これにより、参照画像の画素データを第1および第2のSAD演算部が差分絶対値和演算を実行中に、つぎに必要な参照画像の画素データをメモリから読み出すことができ、高速にブロックマッチング演算を実行することができる。
実施の形態2.
図11〜図13を用いて本発明の実施の形態2を説明する。なお、この実施の形態2は、実施の形態1と同様に、PE部の数を示すNの値は8、現画像は8×8画素、参照画像は22×22画素とする。
図11は、この発明における実施の形態2のブロックマッチング演算装置の構成を示すブロック図である。この発明における実施の形態2のブロックマッチング演算装置は、図1に示した実施の形態1のブロックマッチング演算装置のメモリ104の代わりに、4つのメモリ120〜123を、メモリインタフェース部103の代わりにメモリインタフェース部130を備えている。実施の形態1のブロックマッチング演算装置と同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。この例では、メモリを4分割(メモリ120〜123)としているが、4分割に限るものではなく、いくつに分割してもよい。また、メモリ120〜123は、ブロックマッチング演算装置の外部に備えるようにしてもよい。
4つのメモリ120〜123は、参照画像のデータを記憶する。図12に示すように、メモリ120〜メモリ123は、それぞれ1アドレスに1つの参照画像の画素データを記憶する。
メモリインタフェース部130は、メモリ120〜123とのインタフェース機能を備えており、制御信号110に基づいてメモリ120〜123から参照画像の画素データを読み出し、読み出した画素データを第1のSAD演算部101と第2のSAD演算部102とに出力する。
図13は、図11に示したメモリインタフェース部130の構成の一例を示すブロック図である。図13に示したメモリインタフェース部130は、4つのアドレス生成回路510〜513と、セレクタ514とを備えている。
制御信号110に基づいて、アドレス生成回路510はメモリ120のチップセレクト、リードイネーブルおよびアドレス信号を、アドレス生成回路511はメモリ121のチップセレクト、リードイネーブルおよびアドレス信号を、アドレス生成回路512はメモリ122のチップセレクト、リードイネーブルおよびアドレス信号を、アドレス生成回路513はメモリ123のチップセレクト、リードイネーブルおよびアドレス信号を生成して、それぞれのメモリに出力する。なお、アドレス生成回路510〜513は、メモリインタフェース部130の外部に備えるようにしてもよい。
セレクタ514は、制御信号110に基づいてメモリ120〜123から読み出された画素データの中から2つの画素データを選択して、選択した2つの画素データの一方を第1のSAD演算部101に、もう一方の画素データを第2のSAD演算部102に出力する。ただし、各水平ラインの最初の参照画像データr(0,0),r(1,0),r(2,0),…,r(21,0)については、第1のSAD演算部101のみに出力し、第2のSAD演算部102への参照画像データの出力を行なわない。
つぎに、この発明における実施の形態2のブロックマッチング演算装置の動作を説明する。この実施の形態2のブロックマッチング演算装置と実施の形態1のブロックマッチング演算装置との違いは、メモリ構成およびメモリインタフェース部であり、第1のSAD演算部101および第2のSAD演算部102が入力された参照画素と現画像とのマッチング処理を行う動作は実施の形態1と同様のものとなるので、ここでは第1のSAD演算部101および第2のSAD演算部102に参照画像の画素データを読み出す動作のみを説明する。
アドレス生成回路510〜513は、制御信号110に基づいてメモリ120〜123のチップセレクト、リードイネーブルおよびアドレス信号を生成して、メモリ120〜123に出力する。第1のSAD演算部101に、r(0,0),r(0,1),…,r(0,7)の順に参照画像の画素データを出力する場合、アドレス生成回路510、511,512,513の順にアドレス「8’h00」を出力し、つぎに、アドレス生成回路510、511,512,513の順にアドレス「8’h01」を出力する。これにより、参照画像r(0,0),r(0,1),…,r(0,7)の画素データが順にセレクタ514に入力され、セレクタ514は、これらのデータを第1のSAD演算部101に出力する。
第2のSAD演算部102に、r(0,8),r(0,9),…,r(0,14)の順に参照画像の画素データを出力する場合、アドレス生成回路510、511,512,513の順にアドレス「8’h02」を出力し、つぎに、アドレス生成回路510、511,512の順にアドレス「8’h03」を出力する。ここで、参照画像r(0,0)の画素データと参照画像r(0,8)は同一のメモリ120に格納されているため、同時にアクセスした場合、競合が発生する。このような場合は、第1のSAD演算部101にメモリ121に格納されている参照画像r(0,1)の画素データを出力するタイミングでメモリ120に格納されている参照画像r(0,8)の画素データを読み出して、第2のSAD演算部102に出力するようにすればよい。このタイミングを維持してアドレス生成回路510〜513を制御して、メモリ120〜123から参照画像の画素データを読み出すようにすれば、競合が発生することはない。
以上説明したように、この実施の形態2では、参照画像の画像データを複数のメモリに分割して格納するようにしたため、第1および第2のSAD演算部に出力する参照画像の画素データを異なるメモリから読み出すことが可能となり、メモリアクセスの競合を発生させることなく、高速でかつ消費電力を抑えたブロックマッチング処理を実行することができる。
以上のように、本発明にかかるブロックマッチング演算装置は、動画圧縮伸長システムに有用であり、特に、高速かつ回路規模を抑えたブロックマッチング処理に適している。
この発明における実施の形態1のブロックマッチング演算装置の構成を示すブロック図である。 現画像のデータ配置の概念図である。 参照画像のデータ配置の概念図である。 図1に示したメモリインタフェース部の構成の一例を示すブロック図である。 図1に示した第1のSAD演算部の構成を示すブロック図である。 図1に示した第2のSAD演算部の構成を示すブロック図である。 PE部の構成を示すブロック図である。 メモリ構成と参照画素格納の概念図である。 参照画像の画素データが設定された第1のSAD演算部の一例を示すブロック図である。 参照画像の画素データが設定された第2のSAD演算部の一例を示すブロック図である。 参照画像の画素データが設定された第1のSAD演算部の一例を示すブロック図である。 参照画像の画素データが設定された第2のSAD演算部の一例を示すブロック図である。 この発明における実施の形態2のブロックマッチング演算装置の構成を示すブロック図である。 メモリ構成と参照画素格納の概念図である。 図11に示したメモリインタフェース部の構成を一例を示すブロック図である。
符号の説明
101 第1のSAD演算部
102 第2のSAD演算部
103,130 メモリインタフェース部
104,120,121,122,123 メモリ
110,111,112 制御信号
400,401 フリップフロップ
402 減算器
403 絶対値演算器
404 加算器
500,510,511,512,513 アドレス生成回路
501,502,514 セレクタ
503,504,505,506 レジスタ
PE0a,PE1a,PE2a,PE3a,PE4a,PE5a,PE6a,PE7a,PE0b,PE1b,PE2b,PE3b,PE4b,PE5b,PE6b PE部

Claims (4)

  1. 動画圧縮伸長システムに適用され、現画像と参照画像とのブロックマッチングを行い差分絶対値和を算出するブロックマッチング演算処理装置において、
    入力された参照画像の画素データを保持するレジスタと、このレジスタに保持された参照画像の画素データと入力された現画像の画素データとの差分絶対値和演算を行う第1の演算部を有するプロセッシング・エレメントをN(1<N,Nは自然数)個備えるとともに、これらN個のプロセッシング・エレメントのレジスタを接続して前記参照画像の画素データを順次シフトするシフトレジスタを構成する第1の差分絶対値和演算手段と、
    入力された参照画像の画素データを保持するレジスタと、このレジスタに保持された参照画像の画素データと入力された現画像の画素データとの差分絶対値和演算を行う第2の演算部を有するプロセッシング・エレメントをN−1個備えるとともに、これらN−1個のプロセッシング・エレメントのレジスタを接続して前記参照画像の画素データを順次シフトするシフトレジスタを構成する第2の差分絶対値和演算手段と、
    前記第1の差分絶対値和演算手段内のN個のプロセッシング・エレメントが構成するシフトレジスタの初段および第2の差分絶対値和演算手段内のN−1個のプロセッシング・エレメントが構成するシフトレジスタの初段に参照画像の画素データを入力するメモリインタフェース部と、
    を備え、
    前記メモリインタフェース部は、
    参照画像の水平方向1ライン分のブロックマッチング処理が開始されるたびに、前記第2の差分絶対値和演算手段への出力を前記第1の差分絶対和演算手段への出力より1サイクル遅延させることを特徴とするブロックマッチング演算装置。
  2. 前記参照画像の画素データを記憶するメモリ、
    をさらに備え、
    前記メモリインタフェース部は、
    前記メモリから読み出した参照画像の画素データを保持する複数のレジスタと、
    前記レジスタに保持されている参照画像の画素データを前記第1および第2の差分絶対値和演算手段に出力するセレクタと、
    を備えることを特徴とする請求項1に記載のブロックマッチング演算装置。
  3. 前記参照画像の画素データを記憶するメモリ、
    をさらに備え、
    前記メモリインタフェース部は、
    前記メモリから読み出した参照画像の画素データを4つ以上保持するレジスタと、
    前記レジスタに保持されている参照画像の画素データを前記第1および第2の差分絶対値和演算手段に出力するセレクタと、
    を備えることを特徴とする請求項1に記載のブロックマッチング演算装置。
  4. 前記参照画像の画素データを記憶する複数のメモリ、
    をさらに備え、
    前記メモリインタフェース部は、
    前記第1および第2の差分絶対値和演算手段に出力する参照画像の画素データを前記複数のメモリから同時に読み出すことを特徴とする請求項1に記載のブロックマッチング演算装置。
JP2003297805A 2003-08-21 2003-08-21 ブロックマッチング演算装置 Expired - Fee Related JP4170173B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003297805A JP4170173B2 (ja) 2003-08-21 2003-08-21 ブロックマッチング演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003297805A JP4170173B2 (ja) 2003-08-21 2003-08-21 ブロックマッチング演算装置

Publications (3)

Publication Number Publication Date
JP2005072800A JP2005072800A (ja) 2005-03-17
JP2005072800A5 JP2005072800A5 (ja) 2006-09-28
JP4170173B2 true JP4170173B2 (ja) 2008-10-22

Family

ID=34403528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003297805A Expired - Fee Related JP4170173B2 (ja) 2003-08-21 2003-08-21 ブロックマッチング演算装置

Country Status (1)

Country Link
JP (1) JP4170173B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8290044B2 (en) * 2006-05-10 2012-10-16 Qualcomm Incorporation Instruction for producing two independent sums of absolute differences
CN103079074B (zh) * 2013-01-17 2016-08-03 深圳市中瀛鑫科技股份有限公司 块匹配方法、运动估计方法及模块、装置

Also Published As

Publication number Publication date
JP2005072800A (ja) 2005-03-17

Similar Documents

Publication Publication Date Title
US4635292A (en) Image processor
US7352494B2 (en) Pixel block data generating device and pixel block data generating method
JPH04354287A (ja) 画像補間回路
US5659364A (en) Motion vector detection circuit
JP4113098B2 (ja) ラスタスキャン順序の画像データとブロックスキャン順序の画像データとの間の変換のための画像処理装置及び方法
JP4170173B2 (ja) ブロックマッチング演算装置
JP4547321B2 (ja) 動きベクトル検出装置及び撮像装置
US6990149B2 (en) Circuit and method for full search block matching
JP2009071569A (ja) 動画像符号化における動き探索装置
JP2960328B2 (ja) シストリックアーキテクチャ内に配置される「n+1」個の演算子にオペランドを供給するための装置
US6732131B1 (en) Discrete cosine transformation apparatus, inverse discrete cosine transformation apparatus, and orthogonal transformation apparatus
JP2006094225A (ja) 画像処理装置、画像処理方法、およびそのプログラム
JP2006284849A (ja) 信号処理装置及び画像出力装置
JP2790911B2 (ja) 直交変換演算装置
JP4155102B2 (ja) 画素値演算装置、動画像符号化装置及び動画像復号化装置
JP2006141001A (ja) 電力消耗が減少した画像処理装置及び方法
KR970057917A (ko) 매크로블럭의 반픽셀처리장치
JP2002159006A (ja) 演算補助回路
JPH0676051A (ja) 並列画像処理装置
JP2618146B2 (ja) 動きベクトル検出回路
KR100189876B1 (ko) 후보블럭 데이타공급 장치
JPH06230768A (ja) 画像メモリ装置
JPH0444306B2 (ja)
JP2000020705A (ja) 並列画像処理プロセッサ
JP3526511B2 (ja) 演算装置及び演算方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060811

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060811

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080714

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080805

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080806

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

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110815

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees