JP2010028241A - ビット選択回路 - Google Patents

ビット選択回路 Download PDF

Info

Publication number
JP2010028241A
JP2010028241A JP2008184205A JP2008184205A JP2010028241A JP 2010028241 A JP2010028241 A JP 2010028241A JP 2008184205 A JP2008184205 A JP 2008184205A JP 2008184205 A JP2008184205 A JP 2008184205A JP 2010028241 A JP2010028241 A JP 2010028241A
Authority
JP
Japan
Prior art keywords
input
bit
bits
stage
output
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.)
Granted
Application number
JP2008184205A
Other languages
English (en)
Other versions
JP5071282B2 (ja
Inventor
Hiroshi Kobayashi
浩 小林
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2008184205A priority Critical patent/JP5071282B2/ja
Priority to US12/457,315 priority patent/US8386579B2/en
Publication of JP2010028241A publication Critical patent/JP2010028241A/ja
Application granted granted Critical
Publication of JP5071282B2 publication Critical patent/JP5071282B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • G06F5/015Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】ビット選択回路の、入力ビット数に対する回路規模をより低減する。
【解決手段】入力ビットI[2n-1..0]から、入力ビット配列で連続する出力ビットO[2n−1-1..0]を任意に選択するビット選択回路(但し、n≧3)が、最上位と最下位の2入力ビットを除く力ビットから、第1制御信号に応じてS1、{(2−2)−(2+2+…+2n−3)}個のビットを選択する第1マルチプレクサ11と、第1マルチプレクサ11から出力されるビット群と、最上位および最下位の2ビットとの中から、第2制御信号S2に応じて、(2n−1)個の出力ビットO[2n−1-1..0]を選択する第2マルチプレクサ12と、を有する。
【選択図】図1

Description

本発明は、2のn乗ビットから、任意の連続した2の(n−1)乗ビットを選択するビット選択回路に関する。
2のn乗ビットから、任意の連続した2の(n−1)乗ビットを選択する回路は、例えば、画像処理や通信における処理において用いられる。
例えば、画像処理において、画像領域の一部分の切り出しを行う際に、連続した2のn乗個の画素から任意の連続した2の(n−1)乗個の画素を選択する処理を行うことがある。この処理を実行するハードウエアを実現するために、2のn乗のビットから任意の連続した2の(n−1)乗のビットを選択する回路を画素のビット数だけ並べる必要がある。この回路の数の多さによって、ビット選択回路全体の規模が増大するため、少しでも小規模な回路を実現できる技術が求められている。
具体的な例では、動き検出を行う回路において、MPEG(Motion Picture Experts Group)の規格で定められた16×16画素構成のブロックから、輝度や色差の情報をもつ8×8画素構成のマクロブロックを抽出するために、バレルシフタを利用する技術が知られている(例えば、特許文献1参照)。
特許文献1では、メモリからのデータをワード(8ビット)単位で蓄積するレジスタ(REG)と、バレルシフタとを組み合わせて、より大きな規模の画像ブロックから、より小さい範囲の画像ブロック(マクロブロック)を、探索範囲をシフトさせながら抽出し、連続したビットの配列として後段のパイプライン処理部へ入力し、その結果として、マクロブロックの抽出が可能な回路を実現している。
特開平10−164596号公報
特許文献1には詳細な回路構成は記載されていないが、バレルシフタなど、連続した入力ビットの配列から、当該配列内で連続したビットをシフトさせる機能と、シフト後の連続ビットを選択するための機能とを併せもつビット選択回路では、入力ビット数が大きくなればなるほど回路規模が増大し、消費電力も増える。
本発明は、入力ビット数が同じ場合でも、回路規模や消費電力をより低減可能な構成を有し、入力ビットから、よりビット幅(ビット数)が小さい連続ビットを選択するビット選択回路を実現するものである。
本発明の他の形態(第1形態)に関わるビット選択回路は、(2)個の入力ビットから、入力ビット配列で連続する(2n−1)個の出力ビットを任意に選択するビット選択回路(但し、n≧3)であって、前記入力ビット配列において第1番目と第(2)番目に位置する両端の2つの入力ビットを除く(2−2)個の入力ビットから、入力される第1制御信号に応じて、前記入力ビット配列で連続する{(2−2)−(2+2+…+2n−3)}個のビットを選択する第1マルチプレクサと、前記第1マルチプレクサで選択された前記{(2−2)−(2+2+…+2n−3)}個のビットと、前記第1番目の入力ビットと、前記第(2)番目の入力ビットとの中から、入力される第2制御信号に応じて、前記入力ビット配列で連続する前記(2n−1)個の出力ビットを選択する第2マルチプレクサと、を有する。
本発明の他の形態(第2形態)に関わるビット選択回路は、上記第1形態において、前記第1マルチプレクサは、前記入力ビット内の2ビット、または、前段から出力される2ビットから、前記第1制御信号に応じて1ビットを選択し当該1ビットを後段に出力する2:1選択回路を(2−2−1)個並べて第i段(但し、i=1,2,,n-2)が構成された、少なくとも1段のバレルシフト選択回路であり、前記第2マルチプレクサは、前記第1マルチプレクサから出力される全てのビットと前記第1番目の入力ビットと前記第(2)番目の入力ビットとの中から、前記第2制御信号に応じて1ビットを選択し当該1ビットを出力する前記2:1選択回路を(2−2n−1+1)個並べて構成された入力段と、前記入力段内で隣り合う2つの前記2:1選択回路から出力される2ビットから、前記第2制御信号に応じて1ビットを選択し当該1ビットを前記出力ビットとして出力する前記2:1選択回路を(2n−1)個並べて構成された出力段と、からなる。
本発明の他の形態(第3形態)に関わるビット選択回路は、上記第2形態において、前記第1マルチプレクサは、前記第i段を構成する前記(2−2−1)個の2:1選択回路の列において、一方端から数えて(2)番目の2:1選択回路から、他方端から数えて(2)番目の2:1選択回路までの各々の2:1選択回路が、隣り合う2つの前記入力ビット、または、前段内で(2i−1)ピッチ離れた2つの前記2:1選択回路から出力される2ビットをそれぞれ入力可能な2つの入力配線と、選択した1ビットを、後段内で(2)ピッチ離れた2つの前記2:1選択回路に同時に出力可能な2方向シフト構成を有し当該後段内のシフト先の2:1選択回路にとって前記入力配線として機能する出力配線と、によって段間接続がなされ、前記第i段における両端部の{(2−1)×2}個の前記2:1選択回路が、前記2つの入力配線と、選択した1ビットを、後段内の1方向に存在する1つの前記2:1選択回路に出力可能な1方向シフト構成を有し前記出力配線と同様に入力配線としても機能する出力配線と、によって段間接続がなされている。
本発明の他の形態(第4,5形態)に関わるビット選択回路は、上記第2,3形態の前記第2マルチプレクサにおいて、前記第1番目の入力ビットと、前記第1マルチプレクサの最終段から出力される(2−2)個のビットと、前記第(2)番目の入力ビットとを、この順で配列したときに、当該配列内で4ビットのピッチで離れた2つのビットを入力可能に、前記入力段を構成する(2−2n−1+1)個の前記2:1選択回路の各入力配線が形成され、前記出力段を構成する(2n−1)個の前記2:1選択回路の各入力配線が、前記入力段の隣り合う2つの前記2:1選択回路から出力される2ビットを入力可能に形成されている。
以上の第1〜第5形態においては、ビット選択回路が、第1マルチプレクサと第2マルチプレクサから構成されている。このうち第1マルチプレクサは、(2)個の入力ビットにおいて両端の2ビットを除く入力ビット群から、所定数のビットを選択して出力する。ここで所定数のビットは「n」の大きさによって異なる。つまり、第1マルチプレクサは、入力ビット配列で連続する{(2−2)−(2+2+…+2n−3)}個のビットを選択する(但し、n≧3)。
このような構成のマルチプレクサでは、入力ビット数が大きいほど、回路規模が増大する。とくにnが大きくなるにしたがって、回路規模の増加量も急激に増える。
しかし、本発明の形態では入力ビットが2つ削減されているため、第1マルチプレクサの回路規模は、より低減され、その低減効果もnが大きいほど大きくなる。とくにnが比較的大きい場合は、入力ビットを2つ削減しただけでも回路規模はかなり小さくなる。
一方、本発明の形態では、第1マルチプレクサの選択結果に、その入力時には省かれていた2ビットを加えて入力する第2マルチプレクサが付加されている。しかしながら、その回路規模は、第1マルチプレクサで入力ビットを2つ減らしたことによる回路規模の低減量を超えないため、第1および第2マルチプレクサのトータルの回路規模は低減されている。
ビット選択回路を、例えば2:1選択回路の多段構成とした場合にn=4とすると、初段から(2)個の入力ビットの全部を用いて2:1の選択を繰り返す場合の2:1選択回路の個数が全部で60である。
これに対し、第2〜第5のようにビット選択回路を第1マルチプレクサと第2マルチプレクサに分けた場合、n=4で必要な2:1選択回路の総数は45となる。
本発明によれば、入力ビット数が同じ場合でも、回路規模や消費電力をより低減可能な構成を有し、入力ビットから、よりビット幅が小さい連続ビットを選択するビット選択回路を実現することができる。
以下、本発明の実施形態を、図面を参照して説明する。
《第1実施形態》
図1に、本実施形態の概念的なブロック図を示す。
図1に図解するビット選択回路10は、(2)個の入力ビットI[2n-1..0]から、入力ビット配列で連続する(2n−1)個の出力ビットO[2n-1-1..0]を任意に選択する回路である。ここで“n”は3以上の自然数であり、当該回路の用途に応じて任意に設定される。
ビット選択回路10は、それぞれバレルシフトの機能とビット選択の機能を有する第1マルチプレクサ(MPX1)11と第2マルチプレクサ(MPX2)12とを有する。
入力ビットI[2n-1..0]の配列において、第1番目の入力ビットI[0]と第(2)番目に位置する入力ビットI[2n-1]とは、第2マルチプレクサ12に入力されている。
この両端の2つの入力ビットI[0],I[2n-1]を除く(2−2)個の入力ビットI[1..2n-2]は、第1マルチプレクサ11に入力されている。
第1マルチプレクサ11は、(2−2)個の入力ビットI[1..2n-2]から、入力される第1制御信号S1に応じて、入力ビット配列で連続する{(2−2)−(2+2+…+2n−3)}個のビットを選択する回路である。
第2マルチプレクサ12は、第1マルチプレクサ11で選択された{(2−2)−(2+2+…+2n−3)}個のビットと、第1番目の入力ビットI[0]と、第(2)番目の入力ビットI[2n-1]との中から、入力される第2制御信号S2に応じて、入力ビット配列で連続する(2n−1)個の出力ビットO[2n-1-1..0]を選択する回路である。
第1マルチプレクサ11と第2マルチプレクサ12の具体的な構成に応じて、回路内の動作が規定される。ここでは、上述した2つのマルチプレクサでビット選択回路を構成したことに特徴がある。
つぎに、図1に示すビット選択回路10の作用・効果を説明する。
図1に示すビット選択回路10と同じ機能を、(2)個のビットを入力して、入力ビット配列で連続する(2n−1)個の出力ビットを任意に選択するために、バレルシフタとビット選択の機能を有する1つのマルチプレクサで実現した場合を考える。この回路を、以下、便宜的に「第1比較例の回路」と呼ぶ。第1比較例の回路は、図1に示す第1マルチプレクサ11において入力ビットを2ビット増やし、出力ビット数を(2−2)個とした場合と等価である。
このような構成のマルチプレクサ(第1比較例の回路)ならびに第1マルチプレクサ11では、入力ビット数が大きいほど、回路規模が増大する。とくにnが大きくなるにしたがって、回路規模の増加量も急激に増える。
しかし、本実施形態では、第1マルチプレクサ11において入力ビットが2つ削減されているため、第1マルチプレクサ11の回路規模は、第1比較例の回路より低減され、その低減効果もnが大きいほど大きくなる。とくにnが比較的大きい場合は、入力ビットを2つ削減しただけでも回路規模はかなり小さくなる。
その代わりに、本実施形態では、第1マルチプレクサ11の選択結果に、その入力時には省かれていた2ビットを加えて入力する第2マルチプレクサ12が付加されている。しかしながら、第2マルチプレクサ12の回路規模は、第1マルチプレクサ11で入力ビットを2つ減らしたことによる回路規模の低減量を超えないため、第1および第2マルチプレクサ11,12のトータルの回路規模は第1比較例の回路よりも低減されている。
その結果、本実施形態のビット選択回路10は、入力ビット数の割に回路規模が小さく、かつ、消費電力も低減されているという利点を有する。
本実施形態に示すビット選択回路は、画像処理や通信の受信または送信処理において、連続ビットを選択する用途に応用できる。その他、当該ビット選択回路の用途に制限はない。
《第2実施形態》
第2実施形態は、動画の動き検出のためのブロックマッチング回路に、第1実施形態のビット選択回路を適用した例を示す。
最初に、ブロックマッチングの概要について説明する。
動き検出の用途は、動画圧縮や手振れ補正など任意である。
例えば動画圧縮の場合は、圧縮対象の画像(ターゲット画像)のデータを参照画像データと高速で比較し、その比較結果から動きベクトルが発生される。発生した動きベクトルにより指し示された参照画像データは、ターゲット画像データから引き算される。この差分データが、DCT(離散コサイン変換)、量子化、RL(ランレングス符号化)、VLC(可変長符号化)等を用いた所定の画像圧縮処理に用いられ、これによりターゲット画像の圧縮データが発生する。
一方、手振れ補正の場合は、上記と同様に発生した動きベクトルが、対象画像を含む画面全体の手振れベクトルの推定に利用される。
いずれの場合でも動きベクトルの発生手法は共通し、この手法は以下の<動き検出>のようにして実行される。
<動き検出>
例えばMPEG規格に従うと、動き検出の対象となる画像(ターゲット画像)のデータは、8×8画素(1ワード×8ライン)からなる1ブロック分の画素データが、さらに2×2ブロック分、含まれることによって、合計16×16の画素データを1単位として与えられる。このX方向(ワード方向)とY方向(ライン方向)にそれぞれ連続した16×16の画素データに対応した画像範囲を、MPEG規格では「マクロブロック」と呼ぶ。
ブロックマッチング方式では、ターゲット画像がマクロブロック単位に分割されて、マクロブロックごとにブロックマッチングのための回路に与えられる。
この回路内で、ターゲット画像は、時間的に1フレーム前(2フレーム以上前でも可)の画像を参照画像として、その参照画像と比較される。この比較のための処理は、マクロブロック単位で行われる。つまり、ターゲット画像内のどのマクロブロックが、参照画像内のどのマクロブロックと似ているかが求められる。この似ている度合を示す値として、一般的にSAD(Sum of Absolute Difference:差分絶対値和)や、SSD(Sum of Squared Difference:誤差の2乗和)などの評価値を求め、より小さな評価値を持つブロックが選ばれる。そして、選ばれたブロックに対応するベクトルを、そのターゲット画像ブロックにおける動きベクトルとする。
上記比較のための処理は、例えば以下のように実行される。ここで評価値はSADである場合を例示する。
ターゲット画像内のブロック(ターゲット画像ブロック)は、参照画像内のブロック(例えば、16×16画素の参照画像ブロック)とアドレスが同じマクロブロックを中心に、その周囲の範囲で参照画像ブロックと比較される。この参照画像内の比較範囲を「探索範囲」と呼ぶ。探索範囲は、マクロブロックが16×16画素の場合、X方向とY方向のそれぞれで、マイナス方向に16画素分(“−16”と表記)、プラス方向に16画素分(単に“16”と表記)シフト可能な範囲を持つため、「−16〜16画素の探索範囲」とも呼ばれる。
上記探索範囲の規定の仕方は、1つのターゲット画像ブロックに対し、例えば−16〜16画素の探索範囲で対象画像ブロックを変化させて画像比較を行う場合である。しかし、これとは逆に、1つの参照画像ブロックに対し、例えば−16〜16画素の探索範囲でターゲット画像ブロックを変化させて画像比較を行ってもよい。
いずれにしても、参照画像ブロック、ターゲット画像ブロックの一方を探索範囲内でシフトして他方との比較を繰り返す。この比較のたびに評価値が求められる。このシフト、比較、評価値算出の一連の処理を「探索」と称している。
評価値の算出に関し、例えば評価値がSADの場合、画像比較を画素値の差分(絶対値)の累積和を評価値とし、最も小さい評価値(以下、ミニマム値という)が求められる。ミニマム値が得られたときのターゲット画像ブロックと参照画像ブロック間のベクトルを、動きベクトルと認定する。
ここでSAD等のミニマム値はマクロブロック単位で求めるのであるが、比較対象のマクロブロックの選択(シフトしてサンプリングする動作)は、マクロブロック単位とする必要はなく、最小で1画素ごとに行うことができる。動きベクトルの検出精度を高くするには、ターゲット画像のマクロブロックを、最小の1画素単位でシフトしてサンプリングし、そのサンプリングされたブロックごとに、最小の評価値を求める。また、詳細は省略するが、演算により0.5画素単位で最小の評価値を求めることができる。
但し、画像サイズが大きいと、この方法では演算量が膨大になる。このため、粗粒度探索と呼ばれる粗い探索を行って範囲を絞った後に、より高精度な細粒度探索(1画素シフトを伴う探索)を行う階層探索を行うことが望ましい。
階層探索では、最初の粗粒度探索では2のべき乗(2、4、8、…)個の画素ごとなど、1画素より大きい所定の画素ステップで探索を行う。例えば、2、4、8、…画素ごとのシフト量で探索を行うと、最小の評価値を求めるときの演算量は、評価値の算出数に比例するため、大まかに言って、それぞれ、1/4、1/16、1/64となる。よって、粗粒度探索で求めた最小の評価値は、圧縮画像に対して探索した場合に得られた最小の評価値と等価になる。
細粒度探索では、粗粒度探索で求めた最小の評価値が得られた、より小さい範囲に対して1画素単位のシフトで探索を行う。この探索では、より高い精度で最小の評価値が求められる。
この手法により演算量の削減が可能である。また、別の観点では、この手法の適用によって、ブロックマッチングの範囲を回路規模縮小のため小さくし、その範囲より大きい広域に対して動きベクトルの検出を可能とする。
なお、階層探索は、上記した2回の探索に限らない。
<回路ブロック構成例>
ブロックマッチングの手法では、動き検出範囲が、上述したように、例えば−16〜16画素の探索範囲と限られる。このため、−16〜16画素よりも広域な画像範囲に対して、ブロック圧縮回路を用いて大まかな動きベクトルを求め、その後、より狭い範囲で高精度な動きベクトルを求めるとよい。この場合も基本的には階層探索の手法が採られる。すなわち、圧縮画像に対して探索して最小の評価値(ミニマム値)が存在する範囲を狭め(粗粒度探索)、最後に、その狭められた範囲の非圧縮画像に対して探索を行う(細粒度探索)。
図2は、ブロック圧縮回路を用いた画像処理装置の要部構成例を示すブロック図である。図3は、画像圧縮の範囲を例示する図である。
図2に図解する画像処理装置は、ブロックマッチング回路1と、ブロックマッチング回路1の入力側に配置された2つの回路、すなわち、ブロック圧縮回路(CMP)11およびマルチプレクサ(MUX)12とを有する。また、図2に図解する画像処理装置は、例えばCPUやマイクロコンピュータ等のメイン制御回路(M_CONT)20を有する。
メイン制御回路20は、ブロックマッチング回路1、ブロック圧縮回路11およびマルチプレクサ12を統括し制御する。数フレーム分の画像を蓄積可能な画像メモリ(不図示)を有する構成では、メイン制御回路20は、当該画像メモリに対するデータ入出力や読み出すデータのアドレス発生等も制御する。
ブロック圧縮回路11は、不図示の画像メモリ等から入力される画像データを所定の圧縮率で圧縮する回路である。圧縮する目的は、ブロックマッチングのビット数を減らしてブロックマッチング回路1の回路的な負担を軽くするためである。
ブロック圧縮回路11は、図3に示す例では、64×64画素の領域を32×32画素の領域に圧縮し、32×32画素の画像領域を16×16画素の画像領域に圧縮する。64×64画素から32×32画素へ圧縮された領域を検索範囲とすると、その検索範囲内の中心の32×32画素の領域が16×16画素の画像領域に圧縮されている。16×16画素の画像領域は、検索範囲内でX方向とY方向のそれぞれに探索のために1画素単位でシフト可能である。なお、圧縮では、例えば2×2画素加算を用い、下位2ビットは切り捨てによる量子化を行う。
マルチプレクサ12は、メイン制御回路20の制御により、ブロック圧縮回路11を通して圧縮された画像データと、ブロック圧縮回路11を通さない非圧縮の画像データとを切り替えてブロックマッチング回路1に出力する回路である。
ブロックマッチング回路1は、<動き検出>の項で前述した手法により、動きベクトルを発生する回路である。
以下、図2に示す画像処理装置の動き検出動作を概略的に説明する。
ブロックマッチング回路1は、メイン制御回路20の制御により、最初に、ブロック圧縮回路11を通して圧縮された画像データから粗い精度で動きベクトルを求める。
より詳細には、32×32画素から16×16画素へ圧縮したターゲット画像データ(図3参照)をブロック圧縮回路11から入力して、このターゲット画像データを、64×64画素から32×32画素へ圧縮された検索範囲内で所定の参照画像データと比較する。この圧縮画像のデータ入力は、メイン制御回路20の制御により、マルチプレクサ12が、ブロック圧縮回路11を経由したデータ入力経路を選択することにより実行される。ブロックマッチング回路1は、決められたシーケンスに従って、32×32画素へ圧縮された検索範囲内でターゲット画像データをシフトしながら、画像データの比較を繰り返す。この探索では、32×32画素の画像領域で1画素単位の探索を行っても、元の64×64画素の画像領域では2画素単位となるため、1画素単位の精密な探索はできない。ここでは、例えば圧縮後の1画素、2画素または4画素といった、予め任意に決められている単位で大まかな探索(粗粒度探索)を行う。
ブロックマッチング回路1は、その探索の結果得られた複数の評価値からミニマム値を求める。これによりミニマム値に対応するターゲット画像データ(16×16画像のマクロブロックのデータ)が特定される。
その後、この特定された16×16画像のマクロブロック(±8画素の領域)に対応するデータを、ブロック圧縮回路11を経由することなく、再度、ブロックマッチング回路1が入力する。このことは、メイン制御回路20の制御により、マルチプレクサ12が、ブロック圧縮回路11を経由しないデータの入力経路を予め選択することにより実行される。
次に、特定された16×16画像のマクロブロック内で、例えば1画素単位の高い精度で動きベクトルを求める。上記と同様に、与えられた範囲で可能な回数の探索を行い、その結果から最小の評価値(ミニマム値)を求め、求めたミニマム値に対応する参照画像とターゲット画像間のベクトルを動きベクトルと認定する。
ここで「評価値」がSADの場合、設定されたある評価ブロックと、これと比較するブロックとの間で輝度値の差分を画素ごとに求め、その輝度値の差分のブロック内における累積値をとる。マクロブロック内でターゲット画像の範囲を、例えば1画素単位で可能な限り変更して、当該変更のたびに上記累積値の算出を繰り返す。このようにして得られた複数の累積値のうち、最小のものをミニマム値とする。
ミニマム値から動きベクトルを求め、動きベクトルが大きいとき「動画」と判断し、小さいとき「静止画」と判断する。よって、以後、「動画」「静止画」のそれぞれに適した画像処理が可能となる。
図4に、動き検出のためのブロックマッチング回路のブロック構成を示す。
図4に図解するブロックマッチング回路1は、ターゲット画像を、所定の範囲ごとに更新可能に蓄積するターゲットブロックメモリ(T_MB)2と、参照画像ブロックを更新可能に蓄積する参照ブロックメモリ(R_MB)3と、探索制御部(CONT)4とを有する。ブロックマッチング回路1は、さらに、Y画素切り出し部(YPIX_SEL)5、パイプライン演算器(PL_CAL)6およびミニマム値保持部(REG.)7を有する。
図3に示すブロック構成を例とするならば、ターゲットブロックメモリ2が一度に蓄積可能なビット容量は、Y方向がマクロブロックの検索範囲の画素数(32画素)に対応した32ビットである。具体的にターゲットブロックメモリ2は、Y方向(ビット方向とも言う)において、選択すべきY画素数(ターゲット画像ブロックの画素数「16」)と、Y方向の検索幅(−8〜8画素)の画素数「16」とを加算した32ビット分の容量を有している。
検索範囲のY方向のデータ(ビット)サンプリングは、後述するようにY画素切り出し部5によって行われる。このため、ターゲットブロックメモリ2のY方向の出力ビット数は検索範囲の最大値に対応したビット数(本例(図3の例)では32ビット)とする必要がある。
これに対し、X方向のデータサンプリングは、後述するように、ミニマム値保持部7に蓄積するデータの初期化で制御可能である。よって、ターゲットブロックメモリ2のX方向のビット容量は、1画素の階調ビット数(例えば8ビット)の自然数X(X≧1)倍でよい。この要件を満たす限り、ターゲットブロックメモリ2で蓄積可能なX方向のビット容量の大きさは任意である。
なお、マクロブロックの検索範囲に対応してターゲットブロックメモリ2のX方向のビット容量を決めてもよい。参考までに、ターゲットブロックメモリ2のX方向(ワード方向)ビット容量の一例を挙げると、このビット容量は任意の画素階調値、例えば8階調の32画素分のビット数「256」)となる。
参照ブロックメモリ3は、参照画像ブロックを更新可能に保存するため、ビット方向とワード方向それぞれで、ターゲットブロックメモリ2より小さいビット容量を有する。参考までに、リファレンスブロックメモリ3のビット容量の一例を挙げると、このビット容量は、Y方向が16ビット、X方向が任意の画像階調値、例えば8階調の16画素分のビット数「128」となる。
Y画素切り出し部5は、図1に示す構成のビット選択回路10が適用される部分である。Y画素切り出し部5は、ターゲットブロックメモリ2から32ビット幅の入力ビットを読み出して、32ビット幅の入力ビットから、与えられる制御信号により特定される、連続した16ビット幅の出力ビットを得る回路である。
パイプライン演算器6は、特に図示しないが所定数のプロセッサエレメント(PE)を有する。各プロセッサエレメント(PE)は、Y画素切り出し部5から得られる1ビットの出力ビットと、参照ブロックメモリ3から得られる1ビットの参照ビットとを同時に入力する。各プロセッサエレメント(PE)は、1対の出力ビットと参照ビットの入力を連続して8回行うことで、画素ごとの8階調ビットを2組入力し、この2組の8階調ビットから画素ごとに階調の差分絶対値を演算する。プロセッサエレメント(PE)は、差分絶対値を求める画素ごとの演算を並列に行えるように、マクロブロックのY方向の画素数と同じ数、例えば16個だけ設けられている。
このようにして、16個のプロセッサエレメント(PE)により差分絶対値を画素ごとに求める演算が、マクロブロックのY方向の16画素で並列に実行される。そして、16画素で並列に実行される差分絶対値を求める演算が、マクロブロックのX方向の画素数(ワード数)だけ、即ち16回連続して実行される。
これにより16×16画素の1つのマクロブロックに対して、差分絶対値を求める演算が終了する。
1つのマクロブロックに対して、ブロックを構成する画素数分(256画素分)の差分絶対値が積算され、ブロックごとの差分絶対値の総和(差分絶対値和SAD)が求められる。
具体的には、例えばY方向の画素ライン(16画素)を単位として差分絶対値が積算され、1画素ライン分の差分絶対値の総和が、さらに16画素ライン分積算されて、1ブロックの差分絶対値の総和(差分絶対値和SAD)が求められる。
以上の動作、即ち16×16画素のマクロブロックごとの差分絶対値和SADの演算は、ターゲットブロックメモリ2が32×32画素の検索範囲内で、16×16画素のマクロブロックの切り出し位置を変更するごとに実行される。検索範囲内で切り出し可能なマクロブロック数(マクロブロックの位置ベクトル数)は、Y方向とX方向それぞれで+8ビット、−8ビットの16通りであるから初期位置を含めると、合計289{=(16+1)×(16+1)}である。
よって、差分絶対値和SADも289個得られる。
このようにして、1つのブロックに対して差分絶対値和SADが289個、順次求められる。
ミニマム値保持部7は、この動作の最中で、差分絶対値和SADが得られるたびに、得られた差分絶対値和SADが最小かどうかを判断し、最小なら保持する。具体的には、最初に差分絶対値和SADを入力したときは、その最初の差分絶対値和SADのみは無条件で保持するが、2番目以降では差分絶対値和SADが新たに入力されるたびに、入力される差分絶対値和SAD(in)をミニマム値保持部7が保持している差分絶対値和SAD(hold)と比較し、入力される差分絶対値和SAD(in)が差分絶対値和SAD(hold)より小さいときのみ、保持している差分絶対値和を入力した差分絶対値和で置き換える処理を実行する。
なお、差分絶対値和SADの比較と値の置き換え自体は、探索制御部4がミニマム値保持部7を制御することにより実行してもよい。
以上の動作が1つの検索動作に相当する。この検索動作が、検索範囲内で評価すべきマクロブロックの位置を所定の画素ずつシフトして、必要な回数だけ繰り返される。
検索動作ごとにミニマム値保持部7の保持内容は初期化(リセット)される。このため、1回の検索動作終了時にミニマム値保持部7に保持されている差分絶対値和SAD(hold)が、その検索動作における最小の評価値(ミニマム値)である。
以上の動作の基本は、粗粒度探索時、最粒度探索時で共通する。最粒度探索は、粗粒度探索により絞り込んだ範囲をさらに細かく探索して、最小の評価値(ミニマム値)を精度よく求める。
探索制御部4は、最終的なミニマム値が得られたときのマクロブロックのアドレスと、参照ブロックのアドレスとを、画像メモリ内における絶対アドレスで比較して、そのアドレスの違いから動きベクトルを求める。
求めた動きベクトルは探索制御部4から後段の処理回路(圧縮処理や手振れ補正のための回路)に送られ、処理に供される。
以上の動作から明らかなように、探索制御部4は、ターゲットブロックメモリ2、参照ブロックメモリ3、探索制御部4、Y画素切り出し部5、パイプライン演算器6、ミニマム値保持部7と接続され、これらの動作を統括し制御する回路である。また、探索制御部4は、図2に示すメイン制御回路20とも接続され、これにより粗粒度探索、最粒度探索時の入力データに応じたシフト動作を、ターゲットブロックメモリ2、Y画素切り出し部5、ミニマム値保持部7等を制御することにより操作する。このとき、特にY方向のシフト動作は、探索制御部4から制御信号がY画素切り出し部5に与えられることにより制御される。
つぎに、Y画素切り出し部5として好適に用いられる、図1に示すビット選択回路10の構成を、図5を参照して、より詳細に説明する。なお、図4に示すY画素切り出し部5の説明として、32ビットの入力から16の連続ビットを切り出すこととした。ただし、以下の説明や図示例は、図の煩雑さを防止するために16ビットから8ビットを選択する場合を例に説明する。ビット数の違いは本質的でないため、(2)個の入力ビットから、入力ビット配列で連続する(2n−1)個の出力ビットを任意に選択する(但し、n≧3)のであれば如何なる場合も、以下の説明が容易に類推適用される。
図5に、16個の入力ビットI[15..0]から、入力ビット配列で連続した8個の出力ビットO[7..0]を得るためのビット選択回路10Aの構成を示す。ビット選択回路10Aは、図1のビット選択回路10の具体例(n=4)であり、かつ、図4のY画素切り出し部5に用いることができる。
図5に図解するビット選択回路10Aは、入力される2ビットの一方を制御信号に応じて選択して出力する2:1選択回路SCをn(=4)段構成にした回路である。このうち第1段と第2段で第1マルチプレクサ11(図1)が構成され、第2段と第4段で第2マルチプレクサ12(図1)が構成される。
第1マルチプレクサ11においては、第i段(ステージSGiと呼ぶ、i=1,2,3,4)は、2:1選択回路SCを(2−2−1)個並べて構成されている。よって、ステージSG1(i=1)の2:1選択回路数が13(=16−2−1)、ステージSG2(i=2)の2:1選択回路数が11(=16−4−1)となっている。
第2マルチプレクサ12は、全体では第(n-1)段(第3段)に相当する入力段(入力ステージSGinと呼ぶ)と、全体では第n段(第4段)に相当する出力段(出力ステージSGoutと呼ぶ)とから構成されている。
全体では第3段(i=3)である入力ステージSGinは、2:1選択回路SCを(2−2+1)=(16−8+1)=9個並べて構成されている。
出力ステージSGoutは、2:1選択回路SCを(2n−1)=8個並べて構成されている。
ステージSG1は、最下位のビットI[0]と最上位の入力ビットI[15]以外の14個の入力ビットにおいて、隣接する2つのビットを入力可能に入力配線が設けられている。具体的には、入力ビットI[1]が、下位端の2:1選択回路SCの制御信号が“0”のときに選択される入力(以下、「0入力」と呼ぶ)に印加され、1つ隣の入力ビットI[2]が、当該2:1選択回路SCの制御信号が“1”のときに選択される入力(以下、「1入力」と呼ぶ)に印加されるようになっている。そして、下位端から2番目、3番目、…と2:1選択回路SCの位置が1つずつずれるに従って、0入力と1入力にそれぞれ印加される入力ビットも1ビットずつシフトする入力配線となっている。
これに対し、ステージSG2(i=2)では、ステージSG1の出力ビットの配列において、(2i−1)=2ピッチ離れた2つのビットの何れかを制御信号に応じて選択可能な入力配線となっている。
このステージSG2の入力配線は、ステージSG1にとっては出力配線として機能するものである。よって、ステージSG1における出力配線は、その下位から3番目の2:1選択回路SCから、上位から3番目の2:1選択回路SCまでは、下位側の方向にビット出力する、いわゆる左シフト構成と、上位側の方向にビット出力する、いわゆる右シフト構成との2方向シフト構成が採られている。これに対し、下位側2つの2:1選択回路SCは右シフトのみ、上位側2つの2:1選択回路SCは左シフトのみの1方向シフト構成が採られている。
入力ステージSGinは、その最も下位の2:1選択回路SCにおいて、その0入力が、第1マルチプレクサ11では使用されない最下位の入力ビットI[0]を入力する。また、最も上位の2:1選択回路SCにおいて、その1入力が、第1マルチプレクサ11では使用されない最上位の入力ビットI[15]を入力する。
入力ステージSGinの各2:1選択回路SCは、最下位の入力ビットI[0]、ステージSG2の出力ビット(11個)、最上位の入力ビットI[15]を並べた配列において、4ビットのピッチで離れた2つのビットを入力する入力配線が採られている。そして、この入力配線では、2:1選択回路SCの位置が1つだけずれると、上記配列上で選択されるビット対も1ビットだけずれるようになっている。
出力ステージSGoutは、入力ステージSGinから出力されるビットを隣り合うビットを対として入力し、その一方を、制御信号に応じて出力するように、8個の2:1選択回路SCの配線がなされている。
ここで、2:1選択回路SCのビット選択の動作を表す式と制御信号について説明する。
図6は、1つの段における2:1選択回路SCの配列に対する入力と出力の定義を示す図である。
1つの段を構成する2:1選択回路SCがn個存在し、そのY方向のアドレスをy[n-1..0]と仮定したときに、各2:1選択回路SCの「0入力」に与えられるビットはA[y]、「1入力」に与えられるビットはB[y]で表す。また、各2:1選択回路SCの出力で得られるビットはC[y]で表す。
このビット表記により、各2:1選択回路SCの動作を表すと次式(1)のようになる。
[数1]
C[(n-1)..0]=S?B[(n-1)..0]:A[(n-1)..0]…(1)
ここで記号“S?B:A”はC言語の条件を表す演算式であり、Sの論理(“1”または“0”)に応じて、“1”の場合Aが、“0”の場合Bが選択されることを示す。
図7は、n=4、即ち16:8ビット選択における制御信号S[3..0]と出力ビットO[7..0]との関係を示す図表である。
制御信号S[3..0]は、4ビット構成であり、その最上位ビットが符号ビットであり、最上位ビットを除くビットフィールド([2..0])は、図5に示す段中心からの選択位置を示す絶対値を表すビット群である。図7は、制御信号のビットパターンと、それぞれ、出力ビットO[7..0]として得られる入力ビットパターンとの関係を示している。
各段に与えられる実際の制御信号は、図5に示すように、例えばC言語の演算子である、~(ビット反転)、^(ビット差)を用いて表記できる。
例えば、ステージSG1へ与えられる第1制御信号S1は、~(S[3]^S[2])^S[0]で表記されるため、S1=[1100]のときは、S[3](=“1”)とS[2](=“1”)とのビット差は“0”、その反転が“1”、これとS[0](=“0”)とのビット差は“1”であるため「1入力(B[y])」が選択される。
ステージSG2へ与えられる第1制御信号S1は、~(S[3]^S[2])^S[1]で表記されるため、同様にして1入力(B[y])が選択される。一方、入力ステージSGinへ与えられるステージSG2はS[3](=“1”)であるため1入力(B[y])が選択される。
その他の制御信号のビットパターンでも同様に演算を行うと、図7が正しいことが検証できる。
図7から明らかなように、ビット選択回路10Aは、入力される制御信号に応じて、入力ビット配列で連続する8ビットを、16ビットの入力ビットから任意に制御可能なことが分かる。
このような構成のビット選択回路10Aの回路規模が小さいことは、次の第3実施形態の後にまとめて説明する。
《第3実施形態》
第3実施形態では、第2実施形態でn=4の場合で示すビット選択回路10Aの構成を一般化する。
図8に、一般化されたn段の2:1選択回路をツリー状に構成したビット選択回路10Bを示す。
ここで第2実施形態の記載から容易に類推できることであるが、各段の2:1選択回路SCの個数とその接続関係を述べる。
第1マルチプレクサ11における任意の第i段の2:1選択回路数は、(2−2−1)個(但し、i=1,2,,n-2)である。nは3以上の自然数であるため、n=3の場合、第1マルチプレクサ11は1段構成となる。よって、第1マルチプレクサ11内は、少なくとも1段から構成される。
第2マルチプレクサ12は、第2実施形態で記載したように、入力ステージSGinと出力ステージSGoutから構成されている。
入力ステージSGinは、第1マルチプレクサ11から出力される全てのビットと最下位の第1番目の入力ビットと最上位の第(2)番目の入力ビットとの中から、第2制御信号S2に応じて1ビットを選択し当該1ビットを出力する2:1選択回路SCを(2−2n−1+1)個並べて構成されている。また、出力ステージSGoutは、入力ステージSGin内で隣り合う2つの2:1選択回路SCから出力される2ビットから、第2制御信号S2に応じて1ビットを選択し当該1ビットを出力ビットとして出力する2:1選択回路をSC(2n−1)個並べて構成されている。
これらの2:1選択回路SC間の接続も、第2実施形態の記載から、以下のように容易に類推できる。
第1マルチプレクサ11は、第i段を構成する (2−2−1)個の2:1選択回路SCの列において、一方端(例えば下位端)から数えて(2)番目の2:1選択回路SCから、他方端(例えば上位端)から数えて(2)番目の2:1選択回路SCまでの各々の2:1選択回路が、隣り合う2つの入力ビット(第1段(ステージSG1)の場合)、または、前段内で(2i−1)ピッチ離れた2つの2:1選択回路から出力される2ビット(その他の段(ステージ)の場合)をそれぞれ入力可能な2つの入力配線と、選択した1ビットを、後段内で(2)ピッチ離れた2つの2:1選択回路に同時に出力可能な2方向シフト構成を有し当該後段内のシフト先の2:1選択回路にとって入力配線として機能する出力配線と、によって段間接続がなされている。
また、第1マルチプレクサ11は、第i段を構成する(2−2−1)個の2:1選択回路の列において、第i段における両端部の{(2−1)×2}個の2:1選択回路SCが、上記したと同様な2つの入力配線が設けられ、かつ、選択した1ビットを、後段内の1方向に存在する1つの2:1選択回路SCに出力可能な1方向シフト構成を有し入力配線としても機能する出力配線と、によって段間接続がなされている。
一方、第2マルチプレクサ12においては、最下位の入力ビットと、第1マルチプレクサ11の最終段から出力される(2−2)個のビットと、最上位の入力ビットとを、この順で配列したときに、当該配列内で4ビットのピッチで離れた2つのビットを入力可能に、入力段(入力ステージSGin)を構成する(2−2n−1+1)個の2:1選択回路SCの各入力配線が形成されている。
また、第2マルチプレクサ12において、出力段(出力ステージSGout)を構成する(2n−1)個の2:1選択回路SCの各入力配線が、入力段の隣り合う2つの2:1選択回路SCから出力される2ビットを入力可能に形成されている。
各2:1選択回路SCのビット選択動作は前述した式(1)により示され、また、図7に示す制御信号S[3..0]を拡張した制御信号S[(n-1)..0]により、図8に示す制御信号式によって与えられる。
ここで、第1マルチプレクサ11を構成する2:1選択回路SCについては、その入力と出力を図9のように定義する。また、第2マルチプレクサ12を構成する2:1選択回路SCについて、その入力と出力を図10のように定義する。
図9および図10において、ステージSGの段数をxアドレスにより示し、2:1選択回路SCの位置をyアドレスにより示す。
以下、この入力と出力の表記を用いて2:1選択回路SCの接続関係を説明する。
第1マルチプレクサ11については、1段目(ステージSG1)から(n−2)段目(ステージSGn−2)までの2:1選択回路SCで両端の2つのデータ入力を含まないデータ入力は、次式(2)(0入力側)と、次式(3)(1入力側)とで示されるようにして、出力と接続される。
Figure 2010028241

Figure 2010028241
これにより、データ入力の右シフトおよび左シフトを構成する2:1選択岐路を共有する2方向シフト構造を形成している。
つぎに、第2マルチプレクサ12については、(n−1)段目(入力ステージSGin)からn段目(出力ステージSGout)の2:1選択回路SCへのデータ入力と、両端の2つのデータ入力は、次式(4)((n−1)段目とn段目の0入力側)、次式(5)((n−1)段目の1入力側)、次式(6)(n段目の1入力側)で示されるようにして、出力と接続される。
Figure 2010028241

Figure 2010028241

Figure 2010028241
すなわち、両端のデータ入力を含むデータ入力か否かと、シフト方向による選択の制御を行っている。
上記式(2)〜式(6)に示す入力と出力の接続関係を、図8の一部を拡大した図11において示す。ここで、p(x-2,y)は、最下位ビット、第1マルチプレクサ11からの最後段からの出力ビット、最上位ビットを、この順で並べた配列を有する、第2マルチプレクサ12への入力ビットを表している。
以上の第1〜第3実施形態における効果(ビット選択回路の面積削減効果)について説明する。
第2実施形態のようにn=4の場合、第1段で入力ビット数より1つ多い個数の2:1選択回路SCを配置して、その数が段を追うごとに減らすツリー構造(第1比較例の回路)では、使用されている2:1選択回路SCの個数が60個となる。
第1比較例の回路は、選択範囲の条件により図12に示すように、2:1選択回路SCを縮退することが可能であり(第2比較例の回路)、このとき使用されている2:1選択回路SCの個数は、45個である。
第2比較例の回路では、最適化によりかなりの規模削減効果が得られるが、本実施形態の第1マルチプレクサ11と第2マルチプレクサ12に分ける回路構成による場合、使用されている2:1選択回路の個数は41個であり、さらなる規模削減効果がある。
これらを一般化して表現すると、第1比較例の回路は次式(7)、第2比較例の回路は次式(8)、そして、第3実施形態のビット選択回路10Bは、次式(9)により、それぞれ示す2:1選択回路SCの総数となる。
Figure 2010028241

Figure 2010028241

Figure 2010028241
式(9)と式(8)との差分を求めると、(2−2)×nとなることから、入力ビット数が多いほど回路規模の削減効果が急激に大きくなることがわかる。よって、回路実装面積によるコスト削減と消費電力低下の利益が得られる。
また、本発明の選択回路の構造は、ビット方向に対象性があるので、物理配置にも適した構成である。
第1実施形態に関わるビット選択回路の概念的なブロック図である。 第2実施形態に関わる画像処理装置の要部構成例を示すブロック図である。 第2実施形態に関わる画像処理装置において、画像圧縮の範囲を例示する図である。 第2実施形態に関わるブロックマッチング回路の構成図である。 本発明の第2実施形態に関わるビット選択回路の回路図である。 本発明の第2実施形態に関わる、2:1選択回路配列に対する入力と出力の定義図である。 本発明の第2実施形態に関わる、制御信号と出力ビットとの関係を示す図表である。 本発明の第3実施形態に関わる、一般化された2:1選択回路の回路図である。 本発明の第3実施形態に関わる第1マルチプレクサ内の2:1選択回路の入力と出力の定義図である。 本発明の第3実施形態に関わる第2マルチプレクサ内の2:1選択回路の入力と出力の定義図である。 本発明の第3実施形態に関わり、入力と出力の接続を示す図6の一部拡大図である。 本発明の実施形態に対する第2比較例の回路図である。
符号の説明
1…ブロックマッチング回路、2…ターゲットブロックメモリ、3…参照ブロックメモリ、4…階層制御部、5…Y画素切り出し部、6…パイプライン演算器、7…ミニマム値保持部、10,10A,10B…ビット選択回路、11…第1マルチプレクサ、12…第2マルチプレクサ、SG…ステージ(段)、SC…2:1選択回路、I…入力ビット、O…出力ビット、S…制御信号、S1…第1制御信号、S2…第2制御信号

Claims (5)

  1. (2)個の入力ビットから、入力ビット配列で連続する(2n−1)個の出力ビットを任意に選択するビット選択回路(但し、n≧3)であって、
    前記入力ビット配列において第1番目と第(2)番目に位置する両端の2つの入力ビットを除く(2−2)個の入力ビットから、入力される第1制御信号に応じて、前記入力ビット配列で連続する{(2−2)−(2+2+…+2n−3)}個のビットを選択する第1マルチプレクサと、
    前記第1マルチプレクサで選択された前記{(2−2)−(2+2+…+2n−3)}個のビットと、前記第1番目の入力ビットと、前記第(2)番目の入力ビットとの中から、入力される第2制御信号に応じて、前記入力ビット配列で連続する前記(2n−1)個の出力ビットを選択する第2マルチプレクサと、
    を有するビット選択回路。
  2. 前記第1マルチプレクサは、前記入力ビット内の2ビット、または、前段から出力される2ビットから、前記第1制御信号に応じて1ビットを選択し当該1ビットを後段に出力する2:1選択回路を(2−2−1)個並べて第i段(但し、i=1,2,…,n-2)が構成された、少なくとも1段のバレルシフト選択回路であり、
    前記第2マルチプレクサは、
    前記第1マルチプレクサから出力される全てのビットと前記第1番目の入力ビットと前記第(2)番目の入力ビットとの中から、前記第2制御信号に応じて1ビットを選択し当該1ビットを出力する前記2:1選択回路を(2−2n−1+1)個並べて構成された入力段と、
    前記入力段内で隣り合う2つの前記2:1選択回路から出力される2ビットから、前記第2制御信号に応じて1ビットを選択し当該1ビットを前記出力ビットとして出力する前記2:1選択回路を(2n−1)個並べて構成された出力段と、
    からなる請求項1に記載のビット選択回路。
  3. 前記第1マルチプレクサは、前記第i段を構成する前記(2−2−1)個の2:1選択回路の列において、
    一方端から数えて(2)番目の2:1選択回路から、他方端から数えて(2)番目の2:1選択回路までの各々の2:1選択回路が、隣り合う2つの前記入力ビット、または、前段内で(2i−1)ピッチ離れた2つの前記2:1選択回路から出力される2ビットをそれぞれ入力可能な2つの入力配線と、選択した1ビットを、後段内で(2)ピッチ離れた2つの前記2:1選択回路に同時に出力可能な2方向シフト構成を有し当該後段内のシフト先の2:1選択回路にとって前記入力配線として機能する出力配線と、によって段間接続がなされ、
    前記第i段における両端部の{(2−1)×2}個の前記2:1選択回路が、前記2つの入力配線と、選択した1ビットを、後段内の1方向に存在する1つの前記2:1選択回路に出力可能な1方向シフト構成を有し前記出力配線と同様に入力配線としても機能する出力配線と、によって段間接続がなされている
    請求項2に記載のビット選択回路。
  4. 前記第2マルチプレクサにおいて、
    前記第1番目の入力ビットと、前記第1マルチプレクサの最終段から出力される(2−2)個のビットと、前記第(2)番目の入力ビットとを、この順で配列したときに、当該配列内で4ビットのピッチで離れた2つのビットを入力可能に、前記入力段を構成する(2−2n−1+1)個の前記2:1選択回路の各入力配線が形成され、
    前記出力段を構成する(2n−1)個の前記2:1選択回路の各入力配線が、前記入力段の隣り合う2つの前記2:1選択回路から出力される2ビットを入力可能に形成されている
    請求項2に記載のビット選択回路。
  5. 前記第2マルチプレクサにおいて、
    前記第1番目の入力ビットと、前記第1マルチプレクサの最終段から出力される(2−2)個のビットと、前記第(2)番目の入力ビットとを、この順で配列したときに、当該配列内で4ビットのピッチで離れた2つのビットを入力可能に、前記入力段を構成する(2−2n−1+1)個の前記2:1選択回路の各入力配線が形成され、
    前記出力段を構成する(2n−1)個の前記2:1選択回路の各入力配線が、前記入力段の隣り合う2つの前記2:1選択回路から出力される2ビットを入力可能に形成されている
    請求項3に記載のビット選択回路。
JP2008184205A 2008-07-15 2008-07-15 ビット選択回路 Expired - Fee Related JP5071282B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008184205A JP5071282B2 (ja) 2008-07-15 2008-07-15 ビット選択回路
US12/457,315 US8386579B2 (en) 2008-07-15 2009-06-08 Bit selection circuit in an image or communication processing apparatus that arbitrarily selects continous bits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008184205A JP5071282B2 (ja) 2008-07-15 2008-07-15 ビット選択回路

Publications (2)

Publication Number Publication Date
JP2010028241A true JP2010028241A (ja) 2010-02-04
JP5071282B2 JP5071282B2 (ja) 2012-11-14

Family

ID=41531222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008184205A Expired - Fee Related JP5071282B2 (ja) 2008-07-15 2008-07-15 ビット選択回路

Country Status (2)

Country Link
US (1) US8386579B2 (ja)
JP (1) JP5071282B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011099246A1 (en) 2010-02-10 2011-08-18 Sony Corporation Microchip and method of producing microchip
WO2012099196A1 (ja) 2011-01-21 2012-07-26 独立行政法人情報通信研究機構 情報検索サービス提供装置及び方法、情報検索サービス提供用データベースの構築装置、並びにコンピュータプログラム信号
WO2023089857A1 (ja) * 2021-11-22 2023-05-25 Towa株式会社 検査システム、制御方法、電子部品の製造方法及び切断装置
JP7449288B2 (ja) 2018-11-29 2024-03-13 テレダイン・イー2ブイ・セミコンダクターズ・ソシエテ・パール・アクシオン・サンプリフィエ アナログ信号生成装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469851B2 (en) * 2012-04-16 2019-11-05 New Cinema, LLC Advanced video coding method, system, apparatus, and storage medium
GB2514557A (en) * 2013-05-28 2014-12-03 Snell Ltd Image processing

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6170634A (ja) * 1984-09-14 1986-04-11 Matsushita Electric Ind Co Ltd シフト回路
JPH0296221A (ja) * 1988-09-30 1990-04-09 Fujitsu Ltd 演算回路
JPH03274920A (ja) * 1990-03-26 1991-12-05 Graphics Commun Technol:Kk 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JPH05334042A (ja) * 1992-05-28 1993-12-17 Matsushita Electric Ind Co Ltd バレルシフタ回路
JPH0661868A (ja) * 1992-08-12 1994-03-04 Sony Corp バレルシフタ
JPH07203457A (ja) * 1993-12-27 1995-08-04 Oki Electric Ind Co Ltd 動きベクトル検出装置
JPH10164596A (ja) * 1996-11-29 1998-06-19 Sony Corp 動き検出装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4653019A (en) * 1984-04-19 1987-03-24 Concurrent Computer Corporation High speed barrel shifter
KR0170722B1 (ko) * 1995-12-29 1999-03-30 김광호 고속 배럴쉬프터
JP3520670B2 (ja) * 1996-06-28 2004-04-19 ソニー株式会社 可変長符号処理装置および画像処理装置
US6260055B1 (en) * 1997-10-15 2001-07-10 Kabushiki Kaisha Toshiba Data split parallel shifter and parallel adder/subtractor
US6877019B2 (en) * 2002-01-08 2005-04-05 3Dsp Corporation Barrel shifter
SE0401850D0 (sv) * 2003-12-19 2004-07-08 Ericsson Telefon Ab L M Image processing

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6170634A (ja) * 1984-09-14 1986-04-11 Matsushita Electric Ind Co Ltd シフト回路
JPH0296221A (ja) * 1988-09-30 1990-04-09 Fujitsu Ltd 演算回路
JPH03274920A (ja) * 1990-03-26 1991-12-05 Graphics Commun Technol:Kk 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JPH05334042A (ja) * 1992-05-28 1993-12-17 Matsushita Electric Ind Co Ltd バレルシフタ回路
JPH0661868A (ja) * 1992-08-12 1994-03-04 Sony Corp バレルシフタ
JPH07203457A (ja) * 1993-12-27 1995-08-04 Oki Electric Ind Co Ltd 動きベクトル検出装置
JPH10164596A (ja) * 1996-11-29 1998-06-19 Sony Corp 動き検出装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011099246A1 (en) 2010-02-10 2011-08-18 Sony Corporation Microchip and method of producing microchip
WO2012099196A1 (ja) 2011-01-21 2012-07-26 独立行政法人情報通信研究機構 情報検索サービス提供装置及び方法、情報検索サービス提供用データベースの構築装置、並びにコンピュータプログラム信号
JP7449288B2 (ja) 2018-11-29 2024-03-13 テレダイン・イー2ブイ・セミコンダクターズ・ソシエテ・パール・アクシオン・サンプリフィエ アナログ信号生成装置
WO2023089857A1 (ja) * 2021-11-22 2023-05-25 Towa株式会社 検査システム、制御方法、電子部品の製造方法及び切断装置
JP2023076250A (ja) * 2021-11-22 2023-06-01 Towa株式会社 検査システム、制御方法、電子部品の製造方法及び切断装置
JP7291766B2 (ja) 2021-11-22 2023-06-15 Towa株式会社 検査システム、制御方法、電子部品の製造方法及び切断装置

Also Published As

Publication number Publication date
US20100017448A1 (en) 2010-01-21
US8386579B2 (en) 2013-02-26
JP5071282B2 (ja) 2012-11-14

Similar Documents

Publication Publication Date Title
JP5071282B2 (ja) ビット選択回路
CN105451027B9 (zh) 空间解相关方法及设备、空间重相关方法及设备、数据压缩装置以及数据解压缩装置
US20190311252A1 (en) Multiplication and addition device for matrices, neural network computing device, and method
US10872295B1 (en) Residual quantization of bit-shift weights in an artificial neural network
KR20160142791A (ko) 뉴럴 네트워크 실시 방법 및 장치
JP6561877B2 (ja) 演算処理装置
JP2019057249A (ja) 演算処理装置および演算処理方法
JPH0358574A (ja) 網点画像データ圧縮装置
US8165214B2 (en) Circuit and method for generating fixed point vector dot product and matrix vector values
US20070217695A1 (en) Encoding device and method
CN110889080A (zh) 乘积累加运算装置、乘积累加运算方法和系统
US8731059B2 (en) Apparatus and method for calculating sum of absolute differences for motion estimation of variable block
JP4243277B2 (ja) データ処理装置
Solovyev et al. Real-Time Recognition of Handwritten Digits in FPGA Based on Neural Network with Fixed Point Calculations
JP4408727B2 (ja) ディジタル回路
KR20180031944A (ko) 비디오 디코더 및 이를 포함하는 전자 시스템
JP4859168B2 (ja) 動き検出装置及び動き検出方法
Piszczek et al. The use of hacp+ sbt lossless compression in optimizing memory bandwidth requirement for hardware implementation of background modelling algorithms
JP2007079972A (ja) 逆変換回路
US20220188077A1 (en) Arithmetic processing device, arithmetic processing method, and storage medium
US11941404B2 (en) Processor and method for controlling the processor
US20050278401A1 (en) Apparatus and method for motion vector search and post filtering with reduced hardware resources
CN1422402A (zh) 在通用处理器中有效多输入累加的最优化乘法器结构
US20050105816A1 (en) Data processing device
Tripathi et al. Design VLSI Architecture for 2_D DWT Using NEDA and KSA Technique

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120710

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: 20120724

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: 20120806

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

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees