[go: up one dir, main page]

JP2005128618A - 除算器、露出制御装置および除算方法 - Google Patents

除算器、露出制御装置および除算方法 Download PDF

Info

Publication number
JP2005128618A
JP2005128618A JP2003360578A JP2003360578A JP2005128618A JP 2005128618 A JP2005128618 A JP 2005128618A JP 2003360578 A JP2003360578 A JP 2003360578A JP 2003360578 A JP2003360578 A JP 2003360578A JP 2005128618 A JP2005128618 A JP 2005128618A
Authority
JP
Japan
Prior art keywords
divisor
divider
dividend
division
integer
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.)
Pending
Application number
JP2003360578A
Other languages
English (en)
Inventor
Haruhisa Kurane
治久 倉根
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2003360578A priority Critical patent/JP2005128618A/ja
Publication of JP2005128618A publication Critical patent/JP2005128618A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 小型かつ高速な除算器を実現すること。
【解決手段】 除算器1は、被除数Xを除数Kで除算する演算を、除数Kに応じた近似に基づいて、被除数Xを2のべき乗(2)倍した所定要素の加算として処理する((8)式参照)。また、このとき行われる近似は、除数Kとして入力される可能性がある限定された所定値に対応するものであり、加算される各要素における整数部分については十分な精度を有するものである。したがって、ビットシフトおよび加算のみによって除算を行うことができるため、小型かつ高速な除算器を実現することが可能となる。
【選択図】 図3

Description

本発明は、除算演算を行うための除算回路、露出制御装置および除算方法に関する。
従来、情報処理装置において除算演算を行うために、除算器が用いられている。
このような除算器では、除数をB、被除数をAとし、除算結果YとしてA/Bを算出する場合、被除数Aから除数Bを引き、その余りCをレジスタに格納し、再度余りCから除数Bを引くという動作を繰り返すことが通常行われている。
図8は、従来の除算器の概略構成を示すブロック図である。
図8において、被除数Aはシフタ201に入力され、除数Bは減算器203および除算制御器205に入力される。そして、予め設定された演算精度のビット数Dに応じて、被除数Aがシフタ201にてビットシフトされる。
また、マルチプレクサ202にて、シフタ201によりシフトされた被除数Aが選択され、この選択された被除数Aが減算器203に入力される。
そして、減算器203にて、被除数Aから除数Bが減算され、余りCがレジスタ204および除算制御器205に出力される。
そして、除算制御器205は、最初の除算サイクルが終了すると、余りCを格納させるための制御信号CSをレジスタ204に出力し、レジスタ204は制御信号CSを除算制御器205から受け取ると、余りCを格納する。
そして、除算制御器205は、次サイクル以降、マルチプレクサ202からの減算器203への出力を、シフタ201側からレジスタ204に切り替えることにより、マルチプレクサ202を介してレジスタ204に格納されている余りCを減算器203に入力させる。
そして、余りCが減算器203に入力されると、減算器203にて、余りCから除数Bが減算され、その時の余りCがレジスタ204および除算制御器205に出力される。
以上の動作を繰り返し、余りCが除数Bよりも小さくなると、除算制御器205は計算を終了し、演算精度に応じて除算結果Yを算出し、外部に出力する。
なお、このような除算方法は、周知のものであり、例えば、特開2002−175178号公報等に記載されている。
特開2002−175178号公報
しかしながら、従来の除算器では、被除数Aおよび除数Bによっては、除算計算のサイクル数が異なるとともに、100〜1000サイクル以上要することがあり、高速な除算動作の妨げになると言う問題があった。また、このような除算器と、複数のコンパレータおよび乗算器とを併用することによって、演算を高速化することも考えられるが、システムの複雑化を招くと共に、回路規模が増大するという問題があった。
本発明の課題は、小型かつ高速な除算器を実現することである。
以上の課題を解決するため、本発明は、
被除数Xを除数Kで除算した結果を算出する除算器であって、2/K(Lは整数)の整数部分を加算要素2(Nは正の整数)の和によって近似した近似値Mに基づいて、X×(M/2)なる演算を行うことにより除算結果を算出することを特徴としている。
ここで、2乗は除算の精度を規定する値であり、要求に応じて、任意に設定することが可能である。
このような構成により、ビットシフトおよび加算のみによって除算を行うことができるため、小型かつ高速な除算器を実現することが可能となる。
また、近似値Mは、除数Kに応じて用意されるものであるため、除算結果として、十分な精度を確保することが可能である。
また、前記除数Kによって定まるNまでの各整数について、被除数XのM/2ビットシフト値それぞれを出力するビットシフト値出力手段(例えば、図6のシフタ21およびその出力をビットシフトする配線処理部分)と、前記除数Kに対応して、所定の前記M/2ビットシフト値を選択する選択手段(例えば、図4の制御部10および図6のMUX22a〜22i)と、前記選択手段によって選択された前記M/2ビットシフト値それぞれを加算する加算手段(例えば、図6の加算器23a〜23h)とを含むことを特徴としている。
このような構成により、ビットシフト値出力手段の出力を、選択手段によって適切に選択した上で、加算手段によって加算することができるため、異なる除数Kによる除算に対応することが可能となる。
また、前記選択手段は、複数の前記除数Kについて、前記被除数XのM/2ビットシフト値それぞれのいずれを選択するかを示す選択情報(例えば、図5のLUT)を記憶しており、該選択情報に基づいて、入力された除数Kに対応する前記M/2ビットシフト値それぞれを選択することを特徴としている。
このような構成により、除数Kと、選択するべきM/2ビットシフト値とを容易に対応付けることができるため、入力される可能性がある除数Kの値あるいは除数Kの個数が変更された場合にも、変更後の除数Kに容易に対応することが可能となる。
また、本発明は、
上記除算器のいずれかを備え、映像の画素値を積算して得られる積算値を前記被除数X、該積算値に関わる画素数を前記除数Kとして除算を行うことにより輝度を算出し、該輝度に基づいて、前記映像の露出制御を行うことを特徴とする露出制御装置である。
即ち、輝度レベルの算出においては、多数の画素について積算された輝度値を、その多数の画素数で除算する処理が繰り返されることから、本発明に係る除算器の高速である特長がさらに有効なものとなる。また、本発明に係る除算器は、小型であることから、製造コストが低く、低消費電力なものとなり、露出制御にさらに適するものとなっている。
また、本発明は、
被除数Xを除数Kで除算した結果を算出するための除算方法であって、2/K(Lは整数)の整数部分を加算要素2(Nは正の整数)の和によって近似した近似値Mに基づいて、X×(M/2)なる演算を行うことにより除算結果を算出することを特徴としている。
本方法により、小型かつ高速な除算器を実現することが可能となる。
以下、図を参照して本発明に係る除算器の実施の形態を説明する。
初めに、本発明における除算方法について説明する。
本発明においては、撮像装置における露出制御のための輝度値の平均化処理等、除数がある程度固定されている場合を想定している。例えば、QVGA(Quarter Video Graphics Array)、CIF(Common Intermediate Format)、VGA(VideoGraphics Array)、SVGA(Super Video Graphics Array)、XGA(eXtended Graphics Array)、SXGA()SupereXtended Graphics Array)のサイズの画像において、輝度の平均値(各画素の輝度の積算値/総画素数)を算出する場合には、それぞれの画像において処理単位となるブロックの画素数が決まっていることから、除数が固定値となる。
このような場合に、任意の除数で除算可能な汎用の除算器を用いるとすれば、冗長な回路構成となることから、機能を最適化し、回路規模の縮小および高速化を図ることとする。
即ち、本発明における除算方法においては、入力X(整数)を除数K(整数)で除算し、小数部を含む出力Yを得ることを目的とする。即ち、
Y=X×(1/K) (1)
ここで、(1)式を以下の(2)、(3)式のように表現する。
Y≒X×(M/220) (2)
1/K≒M/220 (3)
ここで、Mは整数であり、220は、除算における精度を規定する値である。
すると、(3)式より、
M=int(220/K+0.5) (4)
ここで、“int”は、括弧内の引数の整数部のみを出力する関数を表している。また、“0.5”を加えることにより、(4)式は、四捨五入を意味するものとなる。
次に、上述の整数Mの意味を説明する。
なお、説明のために、以下ではK=3072(QVGAの総画素数)であるものとする。このとき、(1)式は、
Y=X×(1/3072) (5)
となり、(4)式によれば、M=341となる。その結果、(2)式は、次式のように表される。
Y≒X×(341/220) (6)
さらに、(5)式は、次式のように表現できる。
Y≒Y’=X×((256+64+16+4+1)/220) (7)
即ち、
Y’=X×(1/212+1/214+1/216+1/218+1/220) (8)
この(7)式あるいは(8)式は、係数が2のべき乗で表されていることから、デジタル回路を構成することが容易なものである。
即ち、X/2(Nは自然数)の演算は、ビットシフトすることによって実行できるため、(7)式あるいは(8)式を実行する場合、入力Xをそれぞれ20ビット、18ビット、16ビット、14ビット、12ビット分シフトした値を算出し、その算出結果を加算することによって出力Y’(除算結果)を得ることができる。
したがって、(1)式を(7)式あるいは(8)式のような演算に変換することにより、除算処理をシフタおよび加算器によって実現することが可能となる。
上述の方法に従うと、例えば、前述の各画像形式の場合、“M”の値は予め把握することができる。
図1は、本実施の形態における各画像形式における除数Kを示す図である。
図1において、各形式の画像は、総画素数、処理単位となるブロックのサイズおよびブロックの総画素数が規定されている。なお、本実施の形態では、図2のように、1枚の画像を均等のサイズに25(5×5)分割したが、ブロックサイズは均等である必要はなく、ブロック総画素数が予め規定されればよい。
図3は、これら各画像形式の場合の除数K、220/K、M、値Mを2のべき乗で表した値をそれぞれ示す図である。
図3においては、各画像形式の除数Kに対応して、2のべき乗表現されたXの係数が固定値として規定されている。
したがって、2のべき乗の各項に対応するビット分、入力Xをビットシフトするシフタによって入力Xを所定ビットシフトした値を算出しておき、それらのうち、各画像形式に対応する値を選択して加算することにより、出力Yが得られることとなる。
以下、本方法を適用した除算器について説明する。
まず、構成を説明する。
図4は、本実施の形態に係る除算器1の機能構成を示す図である。
図4において、除算器1は、制御部10と、演算部20とを含んで構成される。
制御部10は、除数Kとして入力される可能性のある図3の各除数Kの値と、2のべき乗表現されたXの係数とが対応づけられているルックアップテーブル(LUT)を記憶している。このLUTは、より具体的には画像形式(除数K)を与えるコードと、Xの係数とが対応付けられたものである。そして、制御部10は、除数Kを与えるコードが入力されると、それに対応する2のべき乗の要素(X/2)に応じて、選択信号SEL-MUX0〜8を演算部20に出力する。具体的には、入力Xが所定ビットシフトされた値それぞれを選択するか否かを示す選択信号SEL-MUX0〜8を演算部20に出力する。(図6の演算部20の説明を参照)。
演算部20は、入力Xを所定ビットずつシフトした値を算出し、制御部10から入力される選択信号によって、それらの値を選択して加算することにより、出力Yを算出する。なお、ここでは、入力Xは符号なしの26ビットの整数値であることとする。
図5は、制御部10が記憶しているLUTの内容を示す図である。
図5において、LUTには、図6の演算部20の説明における0〜8ビット左シフトした出力それぞれを選択するか否かが、各画像形式について記憶されており、“0”は選択しないことを示し、“1”は選択することを示している。
図6は、演算部20の回路構成例を示す図である。
図6において、演算部20は、シフタ21と、マルチプレクサ(MUX)22a〜22iと、加算器23a〜23hとを含んで構成される。
図6において、シフタ21は、入力Xを20ビット右シフトして、MUX22a〜22jに出力する。なお、入力Xを20ビット右シフトする処理は、式(7)の1/220の演算処理に相当する。
各マルチプレクサには、シフタ21の出力が配線処理によって所定ビットシフトされた値として入力される。この処理は、例えば、式(7)の(256+64+16+4+1)の各加算要素に対応した乗算処理に相当する。具体的には、MUX22aには、シフタ21の出力が8ビット左シフトされた状態で入力され、同様に、MUX22b〜22iには、シフタ21の出力がそれぞれ7〜0ビットシフトされた状態で入力される。
MUX22a〜22iには、上述のように、シフタ21の出力が配線処理によって所定ビット左シフトされた値が入力され、各MUX22a〜22iは、制御部10から入力される選択信号SEL-MUX0〜8によって、ビットシフトされたシフタ21の出力あるいは“0”のいずれかを選択して出力する。
加算器23a〜23hは、それぞれに入力された値を加算して出力する。そして、加算器23a〜23hが順次加算を行うことにより、最終的に、加算器23hによって出力Y(商)が出力されることとなる。この加算処理は、式(7)の(256+64+16+4+1)の処理に相当する。
なお、図6においては、シフタ21によって20ビット右シフトした値を、さらに配線処理によって所定ビット左シフトする構成を示したが、これらのビットシフトをまとめたビットシフト結果を、配線処理によってMUX21a〜21iに入力することとしても良い。
図7は、図6におけるビットシフトをまとめた場合の演算部20の回路構成例を示す図である。
図7においては、ビットシフトをまとめた結果、シフタ21が不要な構成となっている。
また、演算部20を図7の回路構成とした場合にも、制御部10がMUX22a〜22iを選択するパターンには影響がないため、除数Kに応じて、上述の選択信号SEL-MUX0〜8と同様の選択信号を入力すれば良い。
次に、動作を説明する。
図1において、除算器1には、除数Kを与えるコードと被除数Xとが入力され、除数Kを与えるコードは制御部10に、被除数Xは演算部20に渡される。
制御部10では、除数Kを与えるコードが入力されると、LUTを参照することにより、MUX22a〜22iそれぞれの入力(左シフトされたシフタ21の出力あるいは“0”)のいずれかを選択するための選択信号SEL-MUX0〜8をMUX22a〜22iに出力する。
また、演算部20では、入力された除数Xをシフタ21が20ビット右シフトし、その出力が、配線処理による左シフトを経て、各MUX22a〜22iに入力される。
すると、各MUX22a〜22iは、それぞれに入力されている選択信号SEL-MUX0〜8に応じて、左シフトされたシフタ21の出力あるいは“0”のいずれかを選択して出力する。
例えば、QVGAの画像であれば、図5より、MUX22a,22c,22e,22g,22iには、左シフトされたシフタ21の出力を選択させる選択信号が入力され、それ以外のマルチプレクサには、“0”を選択させる選択信号が入力される。
そして、各MUX22a〜22iの出力が、加算器23a〜22hによって順次加算されていき、加算器23hの出力が、被除数Xを除数Kで除算した商として出力される。
以上のように、本実施の形態に係る除算器1は、被除数Xを除数Kで除算する演算を、除数Kに応じた近似に基づいて、被除数Xを2のべき乗(2)倍した所定要素の加算として処理する((8)式参照)。また、このとき行われる近似は、除数Kとして入力される可能性がある限定された所定値に対応するものであり、加算される各要素における整数部分については十分な精度を有するものである。
したがって、ビットシフトおよび加算のみによって除算を行うことができるため、小型かつ高速な除算器を実現することが可能となる。
また、除数Kとして入力される可能性がある値あるいは個数が仮に変更された場合であっても、LUTの内容を変更することのみで対応できるため、汎用性を確保することも可能となる。
また、本実施の形態に係る除算器1を電子カメラ等の露出制御に用いる場合、輝度レベルの算出においては、多数の画素について積算された輝度値を、その多数の画素数で除算する処理が繰り返されることから、高速である特長がさらに有効なものとなる。また、本発明に係る除算器1は、小型であることから、製造コストが低く、低消費電力なものとなり、電子カメラ等の露出制御にさらに適するものとなっている。
なお、本実施の形態においては、入力Xが符号なしの26ビットの整数であり、それをシフタによって20ビット右シフトし、さらに、最大で8ビット左シフトされることから、(26−20)+8=14ビットの整数部となる。ただし、後段の加算処理のために、1ビット符号ビットを付加して、最終的には15ビットの整数部となる。この場合、20ビットシフトにより発生する20ビットの小数部と合わせて、35ビットのダイナミックレンジを有する演算を行うものとなる。
一方、より低い演算精度で足りる場合には、例えば、整数部を符号なしの15ビット、小数部を固定小数点の4ビットの合計19ビットのダイナミックレンジとすることが可能となり、このような場合には、加算器23a〜23hの入力ダイナミックレンジを変更することで対応可能である。
また、本実施の形態においては、(4)式に示すように、“M”を算出する際に小数点以下を四捨五入するものとして説明したが、小数点以下を切り捨てたり、切り上げたりすることによっても、ほぼ同様の演算精度を確保することが可能である。
各画像形式における除数Kを示す図である。 実施形態において規定した除数の背景となる画像の領域分割を示す図である。 各画像形式の場合の除数K、220/K、M、値Mを2のべき乗で表した値をそれぞれ示す図である。 本実施の形態に係る除算器1の機能構成を示す図である。 制御部10が記憶しているLUTの内容を示す図である。 演算部20の回路構成例を示す図である。 図6におけるビットシフトをまとめた場合の演算部20の回路構成例を示す図である。 従来の除算器の概略構成を示すブロック図である。
符号の説明
1 除算器、10 制御部、20 演算部、21,201 シフタ、22a〜22i,202 マルチプレクサ(MUX)、23a〜23h 加算器、203 減算器、204 レジスタ、205 除算制御器

Claims (5)

  1. 被除数Xを除数Kで除算した結果を算出する除算器であって、
    /K(Lは整数)の整数部分を加算要素2(Nは正の整数)の和によって近似した近似値Mに基づいて、X×(M/2)なる演算を行うことにより除算結果を算出することを特徴とする除算器。
  2. 前記除数Kによって定まるNまでの各整数について、被除数XのM/2ビットシフト値それぞれを出力するビットシフト値出力手段と、
    前記除数Kに対応して、所定の前記M/2ビットシフト値を選択する選択手段と、
    前記選択手段によって選択された前記M/2ビットシフト値それぞれを加算する加算手段と、
    を含むことを特徴とする請求項1記載の除算器。
  3. 前記選択手段は、複数の前記除数Kについて、前記被除数XのM/2ビットシフト値それぞれのいずれを選択するかを示す選択情報を記憶しており、該選択情報に基づいて、入力された除数Kに対応する前記M/2ビットシフト値それぞれを選択することを特徴とする請求項2記載の除算器。
  4. 請求項1から3のいずれか1項に記載の除算器を備え、
    映像の画素値を積算して得られる積算値を前記被除数X、該積算値に関わる画素数を前記除数Kとして除算を行うことにより輝度を算出し、該輝度に基づいて、前記映像の露出制御を行うことを特徴とする露出制御装置。
  5. 被除数Xを除数Kで除算した結果を算出するための除算方法であって、
    /K(Lは整数)の整数部分を加算要素2(Nは正の整数)の和によって近似した近似値Mに基づいて、X×(M/2)なる演算を行うことにより除算結果を算出することを特徴とする除算方法。
JP2003360578A 2003-10-21 2003-10-21 除算器、露出制御装置および除算方法 Pending JP2005128618A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003360578A JP2005128618A (ja) 2003-10-21 2003-10-21 除算器、露出制御装置および除算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003360578A JP2005128618A (ja) 2003-10-21 2003-10-21 除算器、露出制御装置および除算方法

Publications (1)

Publication Number Publication Date
JP2005128618A true JP2005128618A (ja) 2005-05-19

Family

ID=34640851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003360578A Pending JP2005128618A (ja) 2003-10-21 2003-10-21 除算器、露出制御装置および除算方法

Country Status (1)

Country Link
JP (1) JP2005128618A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206268A (ja) * 2012-03-29 2013-10-07 Jvc Kenwood Corp Av信号処理低減装置、av信号処理低減方法、およびav信号処理低減プログラム
JP2013206269A (ja) * 2012-03-29 2013-10-07 Jvc Kenwood Corp Av信号処理低減装置、av信号処理低減方法、およびav信号処理低減プログラム
JP2021140058A (ja) * 2020-03-06 2021-09-16 京セラドキュメントソリューションズ株式会社 画像形成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206268A (ja) * 2012-03-29 2013-10-07 Jvc Kenwood Corp Av信号処理低減装置、av信号処理低減方法、およびav信号処理低減プログラム
JP2013206269A (ja) * 2012-03-29 2013-10-07 Jvc Kenwood Corp Av信号処理低減装置、av信号処理低減方法、およびav信号処理低減プログラム
JP2021140058A (ja) * 2020-03-06 2021-09-16 京セラドキュメントソリューションズ株式会社 画像形成装置
JP7435044B2 (ja) 2020-03-06 2024-02-21 京セラドキュメントソリューションズ株式会社 画像形成装置

Similar Documents

Publication Publication Date Title
JP3778517B2 (ja) ブレンド論理を使用して色空間変換を行う方法および装置
US20060204139A1 (en) Image processing device, image processing method, display controller, and electronic instrument
JP2002152498A (ja) 画像処理方法および装置
JP2010113624A (ja) ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム
JP2000338935A (ja) 階調補正装置、画像表示装置および階調補正方法
JP4856445B2 (ja) 画像合成装置及びその画像合成方法
JP2005128618A (ja) 除算器、露出制御装置および除算方法
KR100294676B1 (ko) 범용 영상 포맷 변환 장치
JP2008067233A (ja) 電子透かし埋め込み方法、プログラムおよびコンピュータ読み取り可能な記録媒体
JP3066596B2 (ja) アドレス変換装置
JP3899994B2 (ja) 画像信号処理装置、及び、画像信号処理方法
JP5178933B1 (ja) 画像処理装置
JPH11203467A (ja) 表示装置および表示方法
JPH10320524A (ja) ルックアップテーブル装置及び画像生成装置
JP2009282684A (ja) 浮動小数演算器及びdda演算処理方法
JP2526287B2 (ja) 演算回路
JP4670403B2 (ja) 画像処理装置、画像処理方法、表示コントローラ及び電子機器
JP4528532B2 (ja) 色変換回路、画像表示装置及び画像処理方法
EP1091321A2 (en) Apparatus and method for drawing lines on a digital display
JPH1098743A (ja) 輝度信号の計算装置及びその方法
JP4203480B2 (ja) 画像処理プロセッサ
JP3566568B2 (ja) サンプルデータ列変換方法、分配点値算出方法、サンプルデータ除算方法およびプログラム記録媒体
JP3465592B2 (ja) データ形式変換装置
JP3323166B2 (ja) 補間演算装置
JP2010206301A (ja) 画像処理装置及び撮像装置