本発明の実施の形態に係るAV信号処理低減装置、AV信号処理低減方法、およびAV信号処理低減プログラムでは、オーディオ(A)信号処理およびビデオ(V)信号処理のうちの少なくともいずれか一方のデジタル信号処理における除算時の除数を、所定の基数のべき乗で近似したもの(以後、「近似除数」という)を取得し、単位U(例えば、1)を除数で除算したもの(以後、「単位理想解」という)を取得し、単位Uを近似除数で除算したもの(以後、「単位中間解」という)を取得する。次に、除算の単位理想解から単位中間解を減算した除算時の単位誤差を取得し、除算時の単位誤差が単位中間解においてどの程度の割合かを特定するために、除算時の単位誤差に対して単位中間解を除算したもの(以後、「単位誤差割合」という)において、この単位誤差割合を、基数のべき乗の逆数で表現された所定の項数の加減算によって表現した単項式もしくは多項式で近似したもの(以後、「単位近似誤差割合」という)を取得する。そして、単位中間解に単位近似誤差割合を乗じたものを単位中間解に加算したもの(以後、「単位近似解」という)を取得し、被除数に単位近似解を乗じることで実際の演算結果(以後、「除算近似解」という)が得られるようにした。それぞれの値を導出する際の考え方や計算方法については、後述する。
また、本発明の実施の形態に係るAV信号処理低減装置、AV信号処理低減方法、およびAV信号処理低減プログラムでは、被除数を所定の基数で表現もしくは近似し、単位近似解の単項式もしくは多項式の各項に含まれる、所定の基数のべき乗の逆数の演算を、各項に含まれるべき指数に基づいた演算シフト量による所定のシフト演算(通常は右シフト演算)で置き換え、被除数に単位近似解を乗じる際に、乗法の分配法則(Distributive property)により、被除数を単位近似解の各項に分配し、各項ごとに被除数の所定のシフト演算を行い、各項の符号に基づいて加減算を行うことで、実際の除算近似解を求める。このようにして、除算近似解を求める際に含まれる乗算をシフト演算に置き換えるようにした。
ここで、所定の基数を2とし、シフト演算をビットシフト演算とすることでより効率の良いものとなる。また、各除数に対する単位近似誤差割合や単位近似解を求め、あらかじめバッファ等の蓄積部に格納しておき、要求される除算ごとに、除数に対応する単位近似誤差割合や単位近似解を蓄積部から取得して被除数に対して乗算もしくはシフト演算を行うようにするとより効率の良いものとなる。
以下に、より詳細な実施の形態について説明する。
(実施の形態1)
まず、実施の形態1に係るAV信号処理低減装置について説明する。当該AV信号処理低減装置は、本発明のAV信号処理低減処理を伴うことにより、複雑な除算器を用いることなく、高速に除算の近似解を求めることができるようにしている。
図1は、本発明の実施の形態1に係るAV信号処理低減装置100の各構成要素101〜113および150間の基本的な接続関係を示す図である。ここで、図1では図面の簡略化のため除算制御部150とAV信号処理低減装置100の各構成要素101〜113との間は相互に接続されているが、ここでは接続線を省略して描いている。
実施の形態1に係るAV信号処理低減装置100は、入力部101、蓄積部102、解析部103、除算近似中間解生成部161、誤差補正値生成部162、加算部112、出力部113、および除算制御部150を備える。
除算近似中間解生成部161は、前段シフト演算部104および前段符号変換部105を備える。誤差補正値生成部162は、第1後段シフト演算部106、第2後段シフト演算部107、第3後段シフト演算部108、第1後段符号変換部109、第2後段符号変換部110、および第3後段符号変換部111を備える。
ここで、第1から第3までの後段シフト演算部(106から108)と後段符号変換部(109から111)は、説明を簡単にするために便宜上、第1から第3までの後段シフト演算部と後段符号変換部によって構成しているが、これらの数は特に限定されるものではなく、後段シフト演算部と後段符号変換部が対となるように構成し、更に多くの後段シフト演算部と後段符号変換部によって構成されるようにすると、より演算精度の高い除算の近似計算を行うことができるようになる。
前段シフト演算部104が符号を扱える場合には、前段符号変換部105を省略した構成としても構わない。また、後段シフト演算部(106から108)においても、前段シフト演算部104が符号を扱える場合には、符号を扱える後段シフト演算部としても構わない。以後、話を簡単にするために、前段シフト演算部104および後段シフト演算部(106から108)は、符号なしの数値を扱うものとして進める。以下に、各部の詳細を説明する。
入力部101は、例えば、図1に示すような、CPUやメモリ等で構成される一般的なコンピュータ131、伝送装置132、記録装置133、記録媒体134、蓄積装置135等から、除算を行うための、被除数および除数に関する情報を取得し、取得した被除数を前段シフト演算部104に供給し、除数を解析部103に供給する。
ここで、入力部101は、被除数や除数を、所定の基数で表現もしくは近似した上で、各部に供給するように構成すると更に良い。また、所定の基数は、ここでは2であるものとして話を進めるが、この所定の基数は、除算の過程における演算においてシフト演算を構成できるような基数であっても良い。
蓄積部102は、単位近似誤差割合もしくは単位近似解を構成する、単項式または多項式の各項の演算を特定するための情報として、基数のべき乗の逆数で表されている各項の指数と符号に関する情報、もしくは、基数のべき乗の逆数をシフト演算に置き換えた際の各項のシフト量と符号に関する情報について、除数と対応づけて蓄積する。
また、蓄積部102は、近似除数の指数、つまり単位中間解を求める際に用いるシフト量および符号に関する情報を、除数と対応づけて蓄積するように構成することが好ましい。以後、蓄積部102に蓄積されている除数に対応づけられた各情報を、除数情報と呼ぶ。そして、蓄積部102は、解析部103に対して、要求される除数に対応づけられた除数情報を供給する。
解析部103は、入力部101から除数を取得する。解析部103は、取得した除数に対応づけられた除数情報を蓄積部102から取得する。解析部103は、取得した除数情報から、単位中間解を求める際に用いるシフト量を特定して前段シフト演算部104に供給し、単位中間解を求める際に用いる符号を特定して前段符号変換部105に供給する。
また、解析部103は、除数情報から、単位近似誤差割合を構成する各項を求める際に用いるシフト量および符号をそれぞれ特定し、各項に対応するシフト量を後段シフト演算部(106から108)にそれぞれ供給し、各項に対応する符号を後段符号変換部(109から111)にそれぞれ供給する。ここで、供給される各項に対応するシフト量と符号は、対として処理される必要があるため、例えば、第1後段シフト演算部106と第1後段符号変換部109を対として、対となるシフト量と符号において、シフト量は第1後段シフト演算部106、符号は第1後段符号変換部109に供給されるようにする。第2、第3の後段シフト演算部および後段符号変換部に関しても同様に供給されるようにする。
前段シフト演算部104は、入力部101から被除数を取得し、解析部103から単位中間解を求める際に用いるシフト量を取得する。前段シフト演算部104は、取得した被除数に対して、取得したシフト量に基づいて所定のシフト演算処理を行うことで、被除数に単位中間解を乗じて得られる除算近似解の中間結果(以後、除算近似中間解)を生成し、前段符号変換部105に供給する。
前段符号変換部105は、前段シフト演算部104から除算近似中間解、解析部103から単位中間解を求める際に用いる符号を取得する。前段符号変換部105は、取得した除算近似中間解に対し、単位中間解の符号を反映させるために所定の符号変換処理を行うことで、符号変換後の除算近似中間解を生成し、加算部112、第1後段シフト演算部106、第2後段シフト演算部107、第3後段シフト演算部108に供給する。
第1後段シフト演算部106は、前段符号変換部105から符号変換後の除算近似中間解を取得し、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関するシフト量を取得する。第1後段シフト演算部106は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、単位中間解に単位近似誤差割合の第1項目を乗じ、更に被除数を乗じて得られる除算近似解の誤差補正値(以後、第1誤差補正値)を生成し、第1後段符号変換部109に供給する。
第2後段シフト演算部107は、前段符号変換部105から符号変換後の除算近似中間解を取得し、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関するシフト量を取得する。第2後段シフト演算部107は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、単位中間解に単位近似誤差割合の第2項目を乗じ、更に被除数を乗じて得られる除算近似解の誤差補正値(以後、第2誤差補正値)を生成し、第2後段符号変換部110に供給する。
第3後段シフト演算部108は、前段符号変換部105から符号変換後の除算近似中間解を取得し、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関するシフト量を取得する。第3後段シフト演算部108は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、単位中間解に単位近似誤差割合の第3項目を乗じ、更に被除数を乗じて得られる除算近似解の誤差補正値(以後、第3誤差補正値)を生成し、第3後段符号変換部111に供給する。
第1後段符号変換部109は、第1後段シフト演算部106から第1誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を取得する。第1後段符号変換部109は、取得した第1誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第1誤差補正値を生成し、加算部112に供給する。
第2後段符号変換部110は、第2後段シフト演算部107から第2誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を取得する。第2後段符号変換部110は、取得した第2誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第2誤差補正値を生成し、加算部112に供給する。
第3後段符号変換部111は、第3後段シフト演算部108から第3誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を取得する。第3後段符号変換部111は、取得した第3誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第3誤差補正値を生成し、加算部112に供給する。
加算部112は、前段符号変換部105から符号変換後の除算近似中間解、第1後段符号変換部109から符号変換後の第1誤差補正値、第2後段符号変換部110から符号変換後の第2誤差補正値、第3後段符号変換部111から符号変換後の第3誤差補正値を取得し、それぞれを加算して除算近似解を生成する。つまり、符号変換後の第1から第3の誤差補正値の総数である総誤差補正値を、符号変換後の除算近似中間解に加算することで、除算近似解が求まる。加算部112は、生成した除算近似解を出力部113に供給する。
出力部113は、加算部112から除算近似解を取得し、出力部113に接続されている外部の機器に対して、除算近似解を供給する。例えば、図1に示すような、CPUやメモリ等で構成される一般的なコンピュータ141、伝送装置142、記録装置143、記録媒体144、蓄積装置145等がAV信号処理低減装置100に接続されていれば、当該除算近似解を、演算、記憶、記録、伝送、保存、持ち出しができるように構成することができる。
除算制御部150は、各部の動作状態を監視し、各部の演算や変換といった動作や各部が必要とする情報の入出力を制御する。
次に、実施の形態1に係るAV信号処理低減装置100の動作について説明する。図2は、実施の形態1に係るAV信号処理低減装置100の基本動作を示すフローチャートである。
まず、除算制御部150は、外部の装置やユーザ等から除算開始要求を受けると、各部に対して除算開始指令を送る。それに応じて、入力部101は、除算対象となっている被除数および除数に関する情報を取得する(S101)。その後、入力部101は、取得した被除数を前段シフト演算部104に供給し、除数を解析部103に供給する。
その後、除算制御部150は、解析部103に対して解析開始指令を送り、解析部103は、入力部101から除数を取得する。その後、解析部103は、取得した除数を解析し、除数に対応する除数情報を蓄積部102から特定および取得し、供給する(S102)。ここで、解析部103は、取得した除数情報から、単位中間解を求める際に用いるシフト量を特定して前段シフト演算部104に供給し、単位中間解を求める際に用いる符号を特定して前段符号変換部105に供給する。また、解析部103は、取得した除数情報から、単位近似誤差割合を構成する各項を求める際に用いるシフト量および符号をそれぞれ特定し、各項に対応するシフト量を後段シフト演算部(106から108)にそれぞれ供給し、各項に対応する符号を後段符号変換部(109から111)にそれぞれ供給する。
その後、除算制御部150は、前段シフト演算部104に対して開始指令を送り、前段シフト演算部104は、入力部101から被除数、解析部103から単位中間解を求める際に用いるシフト量を取得する。そして、前段シフト演算部104は、取得した被除数に対し、取得したシフト量に基づいて所定のシフト演算処理を行うことで、除算近似中間解を求める(S103)。その後、前段シフト演算部104は、除算近似中間解を前段符号変換部105に供給する。
次に、除算制御部150は、前段符号変換部105に対して開始指令を送り、前段符号変換部105は、前段シフト演算部104から除算近似中間解、解析部103から単位中間解を求める際に用いる符号を取得する。そして、前段符号変換部105は、取得した除算近似中間解に対し、単位中間解の符号を反映させるために所定の符号変換処理を行うことで、符号変換後の除算近似中間解を生成する(S104)。その後、前段符号変換部105は、符号変換後の除算近似中間解を加算部112、第1後段シフト演算部106、第2後段シフト演算部107、第3後段シフト演算部108に供給する。
次に、除算制御部150は、第1から第3の後段シフト演算部(106から108)に対して開始指令を送り、第1から第3の後段シフト演算部(106から108)は処理を開始する。
ここでは、除算制御部150からの開始指令により、第1後段シフト演算部106は、前段符号変換部105から符号変換後の除算近似中間解と、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関するシフト量を取得する。また、除算制御部150からの開始指令により、第2後段シフト演算部107は、前段符号変換部105から符号変換後の除算近似中間解と、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関するシフト量を取得する。また、除算制御部150からの開始指令により、第3後段シフト演算部108は、前段符号変換部105から符号変換後の除算近似中間解と、解析部103から、単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関するシフト量を取得する。
その後、第1から第3の後段シフト演算部(106から108)は、所定のシフト演算処理を行い、それぞれの誤差補正値を求める。
ここでは、第1後段シフト演算部106は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第1誤差補正値を求め(S105)、第1後段符号変換部109に供給する。また、第2後段シフト演算部107は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第2誤差補正値を求め(S107)、第2後段符号変換部110に供給する。また、第3後段シフト演算部108は、取得した除算近似中間解に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第3誤差補正値を求め(S109)、第3後段符号変換部111に供給する。
次に、除算制御部150は、第1から第3の後段符号変換演算部(109から111)に対して開始指令を送り、第1から第3の後段符号変換演算部(109から111)は処理を開始する。
ここでは、第1後段符号変換部109は、第1後段シフト演算部106から第1誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を取得する。また、第2後段符号変換部110は、第2後段シフト演算部107から第2誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を取得する。また、第3後段符号変換部111は、第3後段シフト演算部108から第3誤差補正値、解析部103から単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を取得する。
その後、第1から第3の後段符号変換演算部(109から111)は、所定の符号変換処理を行い、それぞれの符号変換後の誤差補正値を求める。
ここでは、第1後段符号変換部109は、取得した第1誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第1誤差補正値を求め(S106)、加算部112に供給する。また、第2後段符号変換部110は、取得した第2誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第2誤差補正値を求め(S108)、加算部112に供給する。また、第3後段符号変換部111は、取得した第3誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を反映させるために所定の符号変換処理を行うことで、符号変換後の第3誤差補正値を求め(S110)、加算部112に供給する。
次に、除算制御部150は、加算部112に対して開始指令を送り、加算部112は、前段符号変換部105から符号変換後の除算近似中間解、第1後段符号変換部109から符号変換後の第1誤差補正値、第2後段符号変換部から符号変換後の第2誤差補正値、第3後段符号変換部111から符号変換後の第3誤差補正値を取得する。その後、加算部112は、取得したそれぞれを加算して除算近似解を求める(S111)。つまり、符号変換後の第1から第3の誤差補正値の総数である総誤差補正値を、符号変換後の除算近似中間解に加算することで、除算近似解が求まる。加算部112は、生成した除算近似解を出力部113に供給する。
その後、除算制御部150は、出力部113に対して出力指令を送り、出力部113は、加算部112から除算近似解を取得し、出力部113に接続されている外部の機器に対して、除算近似解を供給する。
以上のような処理を伴う各部の動作により、実施の形態1に係るAV信号処理低減装置100における一連の除算処理が完了する。
次に、式1から式14を用いて、除算近似解の導出過程について説明する。まず、物理量の値Qを考えると、その数値を示す数字nと単位Uとの積として、Q=nUと表現することができる。ここで、単位Uは、一般には1であるとすれば、Q=nである。
次に、単位U(以後、説明を簡単にするためにU=1とする)に対して、除算を行うことを考える。
始めに、除算の除数を所定の基数のべき乗(ここでは説明を簡単にするために基数を2とする)で近似した除数(以後、近似除数)を求める(式1)。ここで、式1における(基数)^M0は、基数のべき乗であることを意味し、M0は基数のべき乗の指数である。
近似除数=(符号F0)・(基数)^M0 (式1)
また、単位Uを除数で除算した結果である、除算の単位理想解を求める(式2)。その際、有効桁を設定した上で単位理想解を求めるようにすると良い。
単位理想解=1/除数 (式2)
次に、単位Uを近似除数で除算し、中間結果である、除算の単位中間解を求める(式3)。
単位中間解=1/近似除数 (式3)
その後、除算の単位理想解から単位中間解を減じることで、除算時の単位誤差となるΔ1を求める(式4)。
Δ1=単位理想解−単位中間解 (式4)
そして、除算時の単位誤差が、単位中間解においてどの程度の割合かを特定するために、誤差の割合として、単位誤差割合を求める(式5)。
単位誤差割合=Δ1/単位中間解 (式5)
この単位誤差割合を、少なくとも1項の基数のべき乗の逆数の組で近似し、単位近似誤差割合を求める(式6)。ここで、M1,M2,M3,…は、基数のべき乗の指数である。
単位近似誤差割合=1/(符号F1)・(基数)^M1+1/(符号F2)・(基数)^M2+1/(符号F3)・(基数)^M3+… (式6)
これにより、単位誤差割合と単位近似誤差割合との間の関係は式7のようになる。ここで、Δ2は、式6のような近似によって生じる誤差である。
単位誤差割合=単位近似誤差割合+Δ2 (式7)
その後、単位中間解に単位近似誤差割合を乗じたものを、単位中間解に加算することで、単位近似解を求めることができる(式8)。
単位近似解=単位中間解+単位中間解×単位近似誤差割合 (式8)
ここで、実際の単位解と単位近似解との間の関係は、式9のように表せる。
単位解=単位近似解+Δ3 (式9)
最後に、このようにして得られた単位近似解に対して、被除数を乗じることで、実際の除算近似解を得ることができる(式10)。
除算近似解=被除数×単位近似解 (式10)
したがって、除算近似解は、単位近似解と被除数の乗算結果と同等な結果を、効率よく実行できるような演算に変形できれば良いことになる。
本来の除算は、式11で表されるように、被除数を除数で割ることで除算解が得られるが、これは除算近似解と誤差であるΔ4の和として表現することもできる。
除算解=被除数/除数=除算近似解+Δ4 (式11)
よって、式11の除算近似解を展開することで式12のように表すことができる。
除算解=被除数×(単位中間解+単位中間解×単位近似誤差割合)+Δ4 (式12)
この式12から除算近似解を求めるような式に変形すると、式13となる。
除算近似解=除算解−Δ4
=被除数×(単位中間解+単位中間解×単位近似誤差割合)
=被除数×単位中間解+被除数×単位中間解×単位近似誤差割合 (式13)
ここで、式14のような置き換えを行うことにより、式13は式15のように表現することができる。
除算近似中間解=被除数×単位中間解 (式14)
除算近似解=除算近似中間解+除算近似中間解×単位近似誤差割合 (式15)
このような式変形により、図1で示されるような実施の形態1のAV信号処理低減装置100の各部から得られる値と、数式における除算近似解を構成する値との対応付けが可能となる。
式15において、除算近似中間解の項に関しては、式14、式3、式1に基づいていることから、被除数に対して、式1の指数M0によるシフト演算と、単位中間解の符号に基づく符号変換を行えばよく、図1では主に前段シフト演算部104と前段符号変換部105を通じて得られる。
また、式15における除算近似中間解と単位近似誤差割合との乗算による項に関しては、更に式を変形し、単位近似誤差割合を式16、つまり式6の指数M1,M2,M3,…によるシフト演算と、単位近似誤差割合の各項の符号に基づく符号変換を、被除数に対して項ごとに行えばよい。
単位近似誤差割合=単位近似誤差割合の第1項+単位近似誤差割合の第2項+単位近似誤差割合の第3項 (式16)
より詳細には、式を更に変形し、式15と式16の関係から、式17−1,17−2,17−3を導出し、式18より式19のように求めることができる。
第1誤差補正値=除算近似中間解×単位近似誤差割合の第1項 (式17−1)
第2誤差補正値=除算近似中間解×単位近似誤差割合の第2項 (式17−2)
第3誤差補正値=除算近似中間解×単位近似誤差割合の第3項 (式17−3)
総誤差補正値=第1誤差補正値+第2誤差補正値+第3誤差補正値 (式18)
除算近似解=除算近似中間解+総誤差補正値 (式19)
図1では、第1誤差補正値に関しては第1後段シフト演算部(106)および第1後段符号変換部(109)、第2誤差補正値に関しては第2後段シフト演算部(107)および第2後段符号変換部(110)、第3誤差補正値に関しては第3後段シフト演算部(108)および第3後段符号変換部(111)、を通じることによって得られる。これらの値を、加算部112において加算することにより、式19を実現し、除算近似解を得ることができるようになる。
上述の除算近似解の導出に関して、理解を深めるためにより具体的な例によって説明する。ここでの例では、被除数を64、除数を9、基数は2として話を進める。
近似除数は、
2^3(=8)<9<2^4(=16)
であり、ここでは、|8−9|=1、|16−9|=7であることから、より近い基数のべき乗の指数であるM0=3を採用し、
近似除数=2^3=8
とする。
次に、単位理想解は、1/9=0.11111111である。ここでは、小数点以下8桁までとしている。また、除算解は、64×0.11111111=7.11111104である。
次に、単位中間解は、1/8=0.12500000である。そして、単位理想解から単位中間解を減じることにより、単位誤差Δ1は、−0.01388889(小数点以下9桁目は四捨五入とした)となる。
次に、単位誤差割合を求める。
Δ1/単位中間解=−0.01388889/0.12500000=−0.11111112
となる。この単位誤差割合に単位近似誤差割合が近くなるように、単位近似誤差割合を基数のべき乗、ここでは2のべき乗の項の和で表現することで近似する。
この単位近似誤差割合の求め方の一例としては、次のような方法が考えられる。例えば、図3のような表を用意し、まず、単位誤差割合の絶対値に最も近い2のべき乗を探す。ここでは、0.12500000=1/2^3が最も近く、この値に対応づけた記号を用いて、ここまでの単位近似誤差割合を、
単位近似誤差割合=−p3=−0.12500000
と表すことができる。ここで、単位近似誤差割合の第1項目の2のべき乗の指数M1=3、符号はマイナス(−)である。
更に精度を上げるために、−0.12500000−(−0.11111112)=−0.01388888の絶対値に最も近い2のべき乗数を探すと、
0.00781250<0.0138888<0.01562500
であるため、0.01562500=1/2^6が最も近く、この値に対応づけた記号を用いて、
単位近似誤差割合=−p3+p6=−0.12500000+0.01562500=−0.109375
と表すことができる。ここで、単位近似誤差割合の第2項目の2のべき乗の指数M2=6、符号はプラス(+)である。
同様に、−0.109375−(−0.11111112)=0.00173612の絶対値に最も近い2のべき乗数を探すと、
0.00097656<0.00173612<0.00195313
であるため、0.00195313=1/2^9が最も近く、この値に対応づけた記号を用いて、
単位近似誤差割合=−p3+p6−p9=−0.12500000+0.01562500=−0.109375−0.00195313=−0.11132813
と表すことができる。ここで、単位近似誤差割合の第3項目の2のべき乗の指数M3=9、符号はマイナス(−)である。
ここでは、単位近似誤差割合を第3項目まで求めたが、より演算精度を必要とする場合には、更に項を特定するようにしても構わない。つまり、所望の演算精度以上になるまで更に項を特定していくことを継続し、特定された項までを単位近似誤差割合として利用するように構成するようにしても構わない。また、演算精度があまり必要とされない場合には、特定した項の数を基数のべき乗の指数が大きいものから減らしていっても構わない。
その後、単位近似解を式8に基づいて求めると、
単位近似解=0.12500000+0.12500000×(−0.11132813)=0.11108398
となる。よって、除算近似解は、式10から、
除算近似解=64×0.11108398=7.10937472
と求まる。除算解は7.11111104であることから、除算解との誤差Δ4は、7.11111104−7.10937472=0.00173632となる。
また、単位近似解を別の形式で書き直すと、M0=3、pM0=1/2^M0であることから、
単位近似解=1/2^M0 + 1/2^M0 × (−p3+p6−p9)
=p3+p3×(−p3+p6−p9)
と表せる。
したがって、除算近似解は式13のように表すことができることから、
除算近似解=64×p3+64×p3×(−p3+p6−p9)
となる。
また、式14、式15を利用することで、
除算近似中間解=64×p3
除算近似解=除算近似中間解+除算近似中間解×(−p3+p6−p9)
となる。
ここで、図3のビットシフト演算子を利用することで、次のような式に変形できる。
除算近似中間解=64×(F>>3)=64>>3
除算近似解=除算近似中間解+除算近似中間解×(−F>>3+F>>6−F>>9)
=除算近似中間解−除算近似中間解>>3+除算近似中間解>>6−除算近似中間解>>9
つまり、2のべき乗の指数をシフト演算のシフト量として扱うことができることを意味する。ここで、Fは、演算の際のビットが全て1としたものとし、ある数とFとの乗算を論理積(AND)とすることで、ある数に対するシフト演算を行った結果と同様な作用を、Fとシフト演算で表現したものである。例えば、ある数AがFと同じ演算ビット幅をもつ値であるとすると、A×F>>Nは、乗算を論理積とすることで、A>>Nのように変換が可能となる。
以上のように変形することで、被除数が64、除数が9の場合の除算に関して、図1に示される本実施の形態1のAV信号処理低減装置100において、除算を実行する際には、あらかじめ上述のような方法で求めた、除算近似中間解を求める際のシフト量M0および符号F0、単位近似誤差割合の各項を求める際のシフト量M1,M2,M3および単位近似誤差割合の各項の符号F1,F2,F3を、例えば図4で示されるようなテーブルのように、除数と関連付けて蓄積部102に蓄積しておく。
そして、解析部103によって除数から関連付けられたM0,M1,M2,M3、F0,F1,F2,F3を特定され、M0は前段シフト演算部104、F0は前段符号変換部105、M1は第1後段シフト演算部106、M2は第2後段シフト演算部107、M3は第3後段シフト演算部108、F1は第1後段符号変換部109、F2は第2後段符号変換部110、F3は第3後段符号変換部111に供給される。その後、AV信号処理低減装置100の各部が処理を行うことで、AV信号処理低減装置100において除算近似解を得ることが可能となる。
ここで、蓄積部102に蓄積される除算近似中間解および単位近似誤差割合に関する情報の格納方法は、例えば、図4のような関連付けられたテーブルとするが、F0とM0、F1とM1、F2とM2、F3とM3を符号付きの数値としてそれぞれ格納し、除数と関連付けておくようにしても構わない。例えば、それぞれの数値を符号付き8ビットで表現した、4バイトを単位とした配列に対して、この配列の先頭アドレスを対応する除数と対応づけてメモリ参照できるように構成しても構わない。
また、別のメモリ構成の例としては、図5に示されるような構成であっても構わない。図5では、F0等の符号に関しては、例えば、プラス(+)を0、マイナス(−)を1であるものとし、F0からF3を4ビットのビット列で表現する。ここで、図5では、下位ビットからF0、F1、…と格納した例となっている。M0等のシフト量に関しては、M0とM1との間、M1とM2との間、M2とM3との間の差をそれぞれ求め、図5で示されるように、シフト量の差の数だけ0を下位のビットから格納し、仕切りとして1を格納した例となっている。図5では、符号ビット格納領域の最上位ビットの次のビットから格納するような構成となっている。逆に、このように格納されたビット列からシフト量を求めるには、符号ビット格納領域の最上位ビットの次のビットから0の検出を開始し、上位ビットに1が検出されるまで0の数を数えて、1が検出された時点での0の数を、まずM0とする。その後、同様に1が検出されるまで0の数を数えて、1が検出された時点での0の数を次のシフト量としていくことで、図5のようなビット列からシフト量を特定するように構成すると良い。
更に、別のメモリ構成の例としては、図6に示されるような構成であっても構わない。図6では、符号に関しては図5と同様であるため説明を省略する。また、シフト量に関してはM0のシフト量をM1,M2,M3に加算することにより、除算近似中間解に対するシフト量であったものを、被除数に対するシフト量に変換する。このような変換により、M0からM3までのシフト量は、全て被除数に対するシフト量として扱うことができるようになる。このようにそれぞれのシフト量を変換した上で、図6で示されるように、シフト量に対応するビット位置のビットを1とすることによって表現するようにしても構わない。ここで、M0からM3では、M0により近いシフト量ほど少なくなるような変換となっているため、このようなビット列からシフト量を一意に特定することができる。このように格納されたビット列からシフト量を求めるには、まず、最下位ビットから上位ビット方向に1となっているビット位置を探索し、1が格納されているビット位置を、まずM0とする。その後、同様に1を検出していきながら、順次M1,M2,M3を求める。最後に、本実施の形態1のAV信号処理低減装置100で用いるシフト量とするために、M1,M2,M3からそれぞれM0のシフト量を減算することにより、必要とするシフト量を特定するように構成すると良い。
上述のような除数と関連付けられた、単位中間解の項を表現するためのシフト量や符号、単位近似誤差割合の各項を表現するためのシフト量や符号に関する情報は、単位近似誤差割合に関する情報で構成されたテーブルを作成し、除数と単位中間解に関する情報を関連付けるとともに、単位近似誤差割合に関するテーブルの参照先を関連付けておくようにするとより良い構成となる。これにより、単位中間解が単位理想解と比較して、どの程度ずれているかを、単位中間解を基準として割合を表現することが可能となり、テーブルを格納するためのメモリ量を抑制することが可能になるとともに、少ないメモリ量であっても、最終的に得られる除算の近似結果において、より演算精度が高くなるような単位近似誤差割合に関する情報を格納しておくことが可能になる。これは、あらかじめ単位中間解を特定し、単位理想解と単位中間解との違いを表現しようとすることに起因するものである。
また、近似として特定された単位近似誤差割合に対して、所定の変換式が適用できるかどうかを試行し、適用が可能であれば、単位近似誤差割合を表現している各項の数を所定の変換式に基づいて、より少ない項による表現に変換した上で、除数との関連付けを行うようにすると更に効率の良い構成となる。
ここで、単位近似誤差割合を表現する項をより少ない項で表現するための所定の変換式は、p(N)を1/2^(N)であるものとし、p(N+1)=p(N)−p(N+1)であるという特徴を利用した等価変換式であると良い。例えば、p3−p5−p6+p7であれば、p3−p5−p6+p7=p3−p5−(p6−p7)=p3−p5−p7のように少ない項数表現に変換することができる。
他の例としては、p3+p5−p6−p7−p8であれば、上述の等価変換式を再帰的に適用することにより、p3+p5−p6−p7−p8=p3+p6−p7−p8=p3+p7−p8=p3+p8のように、5項から2項にまで項数を減らすことができる。このように、上述のような項数を減らすことによって、所定の等価変換に基づいて、所定の演算精度を満たし、等価変換前の演算時間以下となるようにすることが可能となる。
また、単位近似誤差割合を表現する項数に所定の上限値を設けて、その上限値までの項数を除算の近似計算に利用するような構成としても構わない。その際に、上述の等価変換式に基づいて、単位近似誤差割合を表現する項を少ない項数表現に変換した後、項数の上限値を下回った場合に、再度、項数の上限値になるまで単位近似誤差割合の項を特定することで、除算の演算精度をできる限り確保するような構成としても構わない。このように、等価交換式を利用して上述のように項数を減らした上で、より高い演算精度を実現するための項を新たに特定できるようにすることで、所定の演算精度を満たし、等価変換前の演算時間以下で、かつ加算形式で表現できる項が最も多くなるように変換されたものを利用することが可能となる。
以上、実施の形態1によれば、除算時の除数を、所定の基数のべき乗で近似した除数である近似除数を取得し、単位U(例えば、1)を除数で除算した単位理想解を取得し、単位Uを近似除数で除算した単位中間解を取得する。次に、除算の単位理想解から単位中間解を減算した除算時の単位誤差を取得し、除算時の単位誤差が単位中間解においてどの程度の割合かを特定するために、除算時の単位誤差に対して単位中間解を除算した単位誤差割合において、この単位誤差割合を、基数のべき乗の逆数で表現された所定の項数の加減算によって表現した単項式もしくは多項式で近似した単位近似誤差割合を取得する。そして、単位中間解に単位近似誤差割合を乗じたものを単位中間解に加算した単位近似解を取得し、被除数に単位近似解を乗じることで実際の除算近似解を求めるようにした。これにより、あらかじめ除数に対応づけた単位近似解、もしくはその多項式を用意し、被除数に対して乗算することによって除算の近似解を求めることができ、複雑な除算器を必要とせず、演算時間の短縮や消費電力の軽減といった効果が得られるようになる。
また、実施の形態1によれば、被除数を所定の基数で表現もしくは近似し、単位近似解の単項式もしくは多項式の各項に含まれる、所定の基数のべき乗の逆数の演算を、各項に含まれるべき指数に基づいた演算シフト量による所定のシフト演算(通常は右シフト演算)で置き換え、被除数に単位近似解を乗じる際に、乗法の分配法則(Distributive property)により、被除数を単位近似解の各項に分配し、各項ごとに被除数の所定のシフト演算を行い、各項の符号に基づいて加減算を行うことで、実際の除算近似解を求める。これにより、除算近似解を求める際に含まれる乗算をシフト演算に置き換えることができることから、複雑な除算器や乗算器を必要とせず、演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態1によれば、所定の基数を2とし、被除数を基数2で表現もしくは近似し、単位近似解の単項式もしくは多項式の各項に含まれる、所定の基数2のべき乗の逆数の演算を、各項に含まれるべき指数に基づいたビット演算シフト量による所定のビットシフト演算で置き換え、被除数に単位近似解を乗じる際に、乗法の分配法則により、被除数を単位近似解の各項に分配し、各項ごとに被除数の所定のビットシフト演算を行い、各項の符号に基づいて加減算を行うことで、実際の除算近似解を求めるようにした。これにより、除算近似解を求める際に含まれる乗算をビットシフト演算に置き換えることができることから、複雑な除算器や乗算器を必要とせず、より単純なビットシフト演算と加減算により除算の近似計算を行うことができる。よって、演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式の項数を、所望の演算精度を満たす項数で表現できるようにした。これにより、必要以上の演算精度を実現するためのビットシフト演算と加減算を削減することができ、更なる演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式に対して、所定の等価変換に基づいて最も少ない項数で表現できる形式に変換されたものを利用できるようにしたものである。これにより、同じ演算精度を実現する際に、余分なビットシフト演算と加減算を削減することができ、更なる演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式に対して、所定の等価変換に基づいて、所定の演算精度を満たし、等価変換前の演算時間以下で、かつ加算形式で表現できる項が最も多くなるように変換されたものを利用する。これにより、減算よりも加算の方が高速に処理できる場合において、所定の演算精度を満たし、項数が増加しても全体の演算時間が元の演算時間以下となるような等価変換により、更なる演算時間の短縮が実現できるといった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式を、所定の項数以下となるように構成することもできる。これにより、通常の除算では、被除数と除数の関係から演算時間には大きなばらつきが生じていたものを、ほぼ一定の演算時間内で除算の近似計算できる効果が得られる。また、除算結果を得るまでの待ち時間の平準化が可能となり、演算処理のスケジューリングを効率よく行うことができるという効果が得られる。
また、実施の形態1によれば、単位近似解の多項式演算を特定して保持する蓄積部と、単位近似解の多項式演算を実現するためのビットシフト量と符号を特定し、被除数に対して、項ごとにビットシフト演算を行い、項ごとの符号に応じて加減算を行うように構成することもできる。これにより、AV信号処理低減装置において、シフト演算部および符号変換部を配置し、除数に対応づけられたビットシフト量と符号を各部に供給して演算することにより、簡易な演算部によって装置を構成することが可能となり、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、消費電力を軽減できるといった効果が得られる。
また、実施の形態1によれば、単位近似解を保持する際に、各項のビットシフト量と符号を特定するための情報を蓄積部に保持するように構成することができる。これにより、除数に対応づけられた単位近似解の多項式演算を実現するためのビットシフト量と符号に関して、必要とするたびに毎回計算することなく、既に計算済みで除数に対応づけられたビットシフト量と符号を取得し、シフト演算部や符号変換部に必要な情報を供給することが可能となり、除数の近似計算を非常に少ない演算で実現できる。よって、演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式の各項は、所定の基数のべき乗の逆数のみで構成されるものを利用するように構成することができる。これにより、単位近似解、特に、単位近似誤差割合を構成する各項を特定する際の、項の候補数を限定し、単位近似誤差割合を高速に求めることができるようになるといった効果が得られる。
また、実施の形態1によれば、単位近似解を構成する多項式の各項は、所定の基数のべき乗の逆数におけるべき指数をシフト量とした、シフト演算のみで構成されるものを利用するように構成することができる。これにより、被除数に対する演算を行う際に、乗算を必要としない、シフト演算のみで演算を実現できることから、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、消費電力を軽減できるといった効果が得られる。
(実施の形態2)
次に、実施の形態2に係るAV信号処理低減装置について説明する。図7で示される実施の形態2に係るAV信号処理低減装置は、主に、実施の形態1における、後段符号変換部(109から111)を、ビット反転部(115から117)に変更し、解析部114の機能を変更および拡張したものとなっている。以後、実施の形態1であるAV信号処理低減装置100を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
実施の形態2に係るAV信号処理低減装置100では、図7で示されるように、図1の解析部103は解析部114、第1から第3の後段符号変換部(109から111)は第1から第3のビット反転部(115から117)、加算部112は加算部118に変更された構成となっている。他の各部に関しては、図7に示されるような各部に対する接続関係となるが、主な機能は同等であるためここでは説明を省略する。
解析部114は、入力部101から除数を取得し、取得した除数に対応づけられた除数情報を蓄積部102から取得する。そして除数情報から、単位近似誤差割合を構成する各項を求める際に用いるシフト量および符号を特定する際に、解析部114は、符号としてマイナス(−)となる項(以後、マイナス項)がいくつ存在するかを計数、もしくはあらかじめ蓄積部102に除数と関連付けられて格納されているマイナス項の数を取得して補数加算情報を生成する。解析部114は、生成された補数加算情報を、加算部118に供給する。また、解析部114は、各項に対応する符号をビット反転部(115から117)にそれぞれ供給する。
第1ビット反転部115は、第1後段シフト演算部106から第1誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を取得する。第1ビット反転部115は、取得した第1誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号がマイナス(−)であった場合に、第1誤差補正値の各ビットに対してビット反転処理を行うことで修正第1誤差補正値を生成し、この符号がプラス(+)であった場合にはビット反転処理を行わずに第1誤差補正値を修正第1誤差補正値とし、加算部118に供給する。
第2ビット反転部116は、第2後段シフト演算部107から第2誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を取得する。第2ビット反転部116は、取得した第2誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号がマイナス(−)であった場合に、第2誤差補正値の各ビットに対してビット反転処理を行うことで修正第2誤差補正値を生成し、この符号がプラス(+)であった場合にはビット反転処理を行わずに第2誤差補正値を修正第2誤差補正値とし、加算部118に供給する。
第3ビット反転部117は、第3後段シフト演算部108から第3誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を取得する。第3ビット反転部117は、取得した第3誤差補正値に対し、単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号がマイナス(−)であった場合に、第3誤差補正値の各ビットに対してビット反転処理を行うことで修正第3誤差補正値を生成し、この符号がプラス(+)であった場合にはビット反転処理を行わずに第3誤差補正値を修正第3誤差補正値とし、加算部118に供給する。
加算部118は、前段符号変換部105から符号変換後の除算近似中間解、第1ビット反転部115から修正第1誤差補正値、第2ビット反転部116から修正第2誤差補正値、第3ビット反転部117から修正第3誤差補正値、解析部114から補数加算情報を取得し、それぞれを加算して除算近似解を生成する。加算部112は、生成した除算近似解を出力部113に供給する。
次に、実施の形態2に係るAV信号処理低減装置100の動作について説明する。図8は、実施の形態2に係るAV信号処理低減装置100の基本動作を示すフローチャートである。
まず、除算制御部150は、外部の装置やユーザ等から除算開始要求を受けると、各部に対して除算開始指令を送る。その後の被除数、除数を取得する過程であるステップS201は、図2におけるステップS101と同様であるため説明を省略する。
その後、除算制御部150は、解析部114に対して解析開始指令を送り、解析部114は、入力部101から除数を取得する。その後、解析部114は、取得した除数を解析し、除数に対応する除数情報を蓄積部102から特定および取得し、供給する(S202)。ここで、解析部114は、取得した除数情報から、単位中間解を求める際に用いるシフト量を特定して前段シフト演算部104に供給し、単位中間解を求める際に用いる符号を特定して前段符号変換部105に供給する。また、解析部114は、取得した除数情報から、単位近似誤差割合を構成する各項を求める際に用いるシフト量および符号をそれぞれ特定し、各項に対応するシフト量を後段シフト演算部(106から108)にそれぞれ供給し、各項に対応する符号をビット反転部(115から117)にそれぞれ供給する。更に、解析部114は、除数情報から単位近似誤差割合を構成する各項を求める際に用いるシフト量および符号を特定する際に、符号としてマイナス(−)となる項(以後、マイナス項)がいくつ存在するかを計数、もしくはあらかじめ蓄積部102に除数と関連付けられて格納されているマイナス項の数を取得して補数加算情報を生成する。その後、解析部114は、生成された補数加算情報を、加算部118に供給する。
その後の、除算近似中間解を求める過程のステップS203はステップS103、符号変換後の除算近似中間解を求める過程のステップS204はステップS104と同様であるため説明を省略する。
その後の、第1誤差補正値を求める過程のステップS205はステップS105と同様であり、第1後段シフト演算部106は、求められた第1誤差補正値を第1ビット反転部115に供給する。また、第2誤差補正値を求める過程のステップS207はステップS107と同様であり、第2後段シフト演算部107は、求められた第2誤差補正値を第2ビット反転部116に供給する。また、第3誤差補正値を求める過程のステップS209はステップS109と同様であり、第3後段シフト演算部108は、求められた第3誤差補正値を第3ビット反転部117に供給する。
次に、除算制御部150は、第1から第3のビット反転部(115から117)に対して開始指令を送り、第1から第3のビット反転部(115から117)は処理を開始する。
ここでは、第1ビット反転部115は、第1後段シフト演算部106から第1誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第1項目に関する符号を取得する。また、第2ビット反転部116は、第2後段シフト演算部107から第2誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第2項目に関する符号を取得する。また、第3ビット反転部117は、第3後段シフト演算部108から第3誤差補正値、解析部114から単位近似誤差割合を構成する単項式もしくは多項式における第3項目に関する符号を取得する。
その後、第1から第3のビット反転部(115から117)は、取得した符号がマイナス(−)であった場合に、取得した誤差補正値の各ビットに対してビット反転処理を行い、符号がプラス(+)であった場合にはビット反転処理を行わずに、それぞれの修正誤差補正値を求める。
ここでは、第1ビット反転部115は、取得した符号がマイナス(−)であった場合に、取得した第1誤差補正値の各ビットに対してビット反転処理を行うことで、修正第1誤差補正値を求め(S206)、加算部118に供給する。また、第2ビット反転部116は、取得した符号がマイナス(−)であった場合に、取得した第2誤差補正値の各ビットに対してビット反転処理を行うことで、修正第2誤差補正値を求め(S208)、加算部118に供給する。また、第3ビット反転部117は、取得した符号がマイナス(−)であった場合に、取得した第3誤差補正値の各ビットに対してビット反転処理を行うことで、修正第3誤差補正値を求め(S210)、加算部118に供給する。
次に、除算制御部150は、加算部118に対して開始指令を送り、加算部118は、前段符号変換部105から符号変換後の除算近似中間解、第1ビット反転部115から修正第1誤差補正値、第2ビット反転部116から修正第2誤差補正値、第3ビット反転部117から修正第3誤差補正値、解析部114から補数加算情報を取得する。
その後、加算部118は、取得したそれぞれを加算して除算近似解を求める(S211)。その後、加算部112は、生成した除算近似解を出力部113に供給する。
以後の処理過程は同様であるため省略する。
以上、実施の形態2によれば、実施の形態1における、後段符号変換部(109から111)を、ビット反転部(115から117)に変更し、解析部114の機能を変更および拡張したものとすることで、一般に符号変換処理で行われる2の補数求める処理の際に行われる、ビット反転処理の後に1を加算する処理に対して、符号変換が必要な回数を計数して補数加算情報とし、最後にまとめて加算するように構成することができる。これにより、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、消費電力を軽減できるといった効果が得られる。
また、実施の形態2によれば、補数加算情報をあらかじめ計数しておき、除数と関連付けて蓄積部に格納しておくように構成することができる。これにより、補数加算情報を必要とするたびに毎回計数することなく、既に計算済みの補数加算情報取得し、加算部に供給することが可能となり、除数の近似計算を非常に少ない演算で実現できる。よって、演算時間の短縮や消費電力の軽減といった効果が得られる。
(実施の形態3)
次に、実施の形態3に係るAV信号処理低減装置について説明する。図9で示される実施の形態3に係るAV信号処理低減装置は、主に、実施の形態1におけるAV信号処理低減装置100に対して、新たに近似計算部119を追加したものとなっている。以後、実施の形態1であるAV信号処理低減装置100を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
近似計算部119は、本実施の形態1において説明した除算近似解の導出過程に基づいて、除算の近似計算を行うために必要な除数情報を生成する。また、近似計算部119は、生成した除数情報を蓄積部102に供給する。
ここで、生成される除数情報は、単位近似誤差割合もしくは単位近似解を構成する、単項式または多項式の各項の演算を特定するための情報として、基数のべき乗の逆数で表されている各項の指数と符号に関する情報、もしくは、基数のべき乗の逆数をシフト演算に置き換えた際の各項のシフト量と符号に関する情報であることが好ましい。また、近似除数の指数、つまり単位中間解を求める際に用いるシフト量および符号に関する情報を更に除数情報として含むことが好ましい。
また、近似計算部119は、単位近似誤差割合を求める際に、除算の近似計算における所定の演算精度に応じて、所定の単位近似誤差割合の項数を求めるが、この特定する項数を、除算制御部150の指令に応じて変更することで、近似計算の演算精度を必要に応じて変更できるようにすると更に良い構成となる。
除算制御部150は、近似計算部119に演算精度を変更し、除数情報を更新するための指令を通知する。ここで、除算制御部150は、入力部101から除算の近似計算を行う際の演算精度に関する情報を取得し、演算精度変更の要否を判定し、近似計算部119に指令を通知するように構成しても良い。また、除算制御部150は、近似計算部119で特定される単位近似誤差割合の項数を一定以下となるように制御するために、近似計算部119に対して指令を通知できるように構成しても良い。また、除算制御部150は、除算の近似計算における演算精度を一定の範囲内に保つように、近似計算部119で特定される単位近似誤差割合の項数を、演算精度を満たすような項数となるように制御するために、近似計算部119に対して指令を通知できるように構成しても良い。
このように、近似計算部119は、除算制御部150の指令に応じて、蓄積部102に格納されている除数情報を更新するために、新たな近似精度による除数情報を生成し、蓄積部102に供給するように構成することで、除算の近似計算によって得られる結果の演算精度を制御できるようになり、更に良い構成となる。
以上、実施の形態3によれば、新たに近似計算部を備えることにより、必要に応じて除数に対応した除数情報を求めて各部に供給するように構成することができる。これにより、使用頻度の低い除数に対応した除数情報を常に蓄積部に格納しておく必要がなくなることから、蓄積部のメモリ量を減らすことが可能となり、安価で装置規模の小さいAV信号処理低減装置を構成することができるようになる。
また、実施の形態3によれば、新たに近似計算部を備えることにより、除算の演算精度を要求に応じて変更できるように構成することができる。これは、蓄積部に格納されている除数に対応づけられた除数情報を、近似計算部によって要求された演算精度を実現するような除数情報を新たに求めて、蓄積部に格納されている除数情報を更新することにより実現できる。これにより、所望の演算精度に基づく除算の近似計算を行うことができるようになる。
また、実施の形態3によれば、近似計算部で特定される単位近似誤差割合の項数を一定以下となるように制御するように構成することができる。これにより、所望の演算実行時間に基づく除算の近似計算を行うことができるようになる。したがって、従来の除算演算では、演算時間にばらつきが生じていたものが、本実施の形態3の構成を用いることにより、演算時間のばらつきを抑制することができるようになる。
(実施の形態4)
次に、実施の形態4に係るAV信号処理低減装置について説明する。図10で示される実施の形態4に係るAV信号処理低減装置は、主に、実施の形態2におけるAV信号処理低減装置100に対して、実施の形態3のAV信号処理低減装置に含まれる近似計算部119を追加したものとなっている。以後、実施の形態2であるAV信号処理低減装置100を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
近似計算部119は、実施の形態3のAV信号処理低減装置に含まれる近似計算部119と同様の機能を有することが好ましい。また、単位近似誤差割合を構成する各項において、マイナス項がいくつ存在するかを計数して補数加算情報を生成し、これを除数情報として含むようにするのが好ましい。
以上、実施の形態4によれば、演算精度や演算速度を変更するために、除数に対応づけられた除数情報が更新されることにより、符号変換処理を必要とする項や項数が変化するため、符号変換処理ごとに行われるビット反転後に1を加算する処理が増減するために演算量にゆらぎを生じていた。これを、後段符号変換部の代わりにビット反転部とし、近似計算部によって補数加算情報を順次計数、もしくは蓄積部の補数加算情報を更新するように構成することができる。これにより、演算量のゆらぎを抑制できるようになるとともに、より安価で装置規模の小さいAV信号処理低減装置を構成することができるようになる。
(実施の形態5)
次に、実施の形態5に係るAV信号処理低減装置について説明する。図11で示される実施の形態5に係るAV信号処理低減装置は、主に、実施の形態1における前段シフト演算部104および前段符号変換部105の代わりに、第4シフト演算部207および第4符号変換部211に変更し、第1から第3の後段シフト演算部(106から108)を第1から第3のシフト演算部(204から206)、第1から第3の後段符号変換部(109から111)を第1から第3の符号変換部(208から210)に変更したものとなっている。
第4シフト演算部207および第4符号変換部211は、本実施の形態5において除算近似中間解生成部261として機能し、第1から第3のシフト演算部(204から206)と第1から第3の符号変換部(208から210)は、本実施の形態5において誤差補正値生成部262として機能するが、実施の形態1では、除算近似中間解生成部161の処理が終わらなければ誤差補正値生成部162の処理に入ることができなかったのに対して、実施の形態5では、除算近似中間解生成部261の処理と誤差補正値生成部262の処理を、第1から第4のシフト演算部(204から207)と第1から第4の符号変換部(208から211)の処理として並列に実行できることが異なる。
以後、実施の形態1であるAV信号処理低減装置100を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
実施の形態5に係るAV信号処理低減装置200では、入力部201、蓄積部202、解析部203、第1から第4のシフト演算部(204から207)、第1から第4の符号変換部(208から211)、加算部212、出力部213、除算制御部250によって構成される。以後、実施の形態1と同名の各部において、同等な機能に関しては説明を省略する。
入力部201は、除算を行うための、被除数および除数に関する情報を取得し、取得した被除数を、第1から第4のシフト演算部(204から207)に供給し、除数を解析部203に供給する。また、入力部201は、蓄積部202に蓄積される除数情報を取得し、蓄積部202に供給できるような構成にするとより効率の良い構成となる。
蓄積部202は、除数と対応づけられた除数情報を蓄積し、解析部203に対して、要求される除数に対応づけられた除数情報を供給する。また、蓄積部202は、入力部201から除数情報を取得し、蓄積することができるような構成としても構わない。
ここで、蓄積部202に蓄積される除数情報である、単位中間解および単位近似誤差割合に関する情報の格納方法について説明する。
除数情報の格納方法は、例えば、図13に示されるような構成であっても構わない。図13では、符号に関しては、例えば、プラス(+)を0、マイナス(−)を1であるものとし、F0をG0、F0・F1をG1、F0・F2をG2、F0・F3をG3とし、G0、G1、G2、G3を4ビットのビット列で表現する。ここでは、下位ビットからG0、G1、G2、…と格納した例となっている。また、シフト量に関してはM0のシフト量をM1,M2,M3に加算してN1、N2、N3とし、M0をN0とすることにより、除算近似中間解に対するシフト量であったものを、被除数に対するシフト量に変換する。
ここで、シフト量N0からN3は、シフト量を小さい順に並べ替えて、N0からN3と番号を付けるようにすると良い。通常N0はM0となるが、小さい順に並べ替えることによって、仮にN0がM0ではなくなってしまう場合には、N0はM0とし、それ以外のM1からM3に対して小さい順に並べ替えてN1からN3と番号を付けるようにすることが望ましい。また、符号G0からG3は、シフト量N0からN3が並べ替えられた場合には、元のF0からF3までとM0からM3までとの間の、対の関係を維持するように並べ替えを行うことが望ましい。
このような変換により、N0からN3までのシフト量は、全て被除数に対するシフト量として扱うことができるようになる。このシフト量の導出方法の詳細については後述する。このようにそれぞれのシフト量を変換した上で、図13で示されるように、シフト量に対応するビット位置のビットを1とすることによって表現するようにしても構わない。このように格納されたビット列からシフト量を求めるには、まず、シフト量格納領域の最下位ビットから上位ビット方向に1となっているビット位置を探索し、1が格納されているビット位置を、まずN0とする。その後、同様に1を検出していきながら、順次N1,N2,N3を求めることにより、必要とするシフト量を特定するように構成すると良い。
また、シフト量と符号を格納する際に、被除数に対する演算となるように各項のシフト量と符号を変換した後に、シフト量を小さい順に並べ替えて、シフト量が小さいものから、各項の間のシフト量の差を保持するように構成しても良い。
これにより、シフト量格納領域の下位ビットから順番にシフト量を特定していくことで、容易に特定して利用できるようになる。また、シフト量をシフト量格納領域に格納する際に、格納用のビットが足りずに最上位ビットを超えてしまうために格納できなかった場合であっても、演算精度を高いものにするためのシフト量ほど格納できなくなるような順序となっているため、このような格納形式とすることで、格納できた分のシフト量を利用して正しく除算の近似計算を行うことができるようになる。
更に、別のメモリ構成の例としては、図14に示されるような構成であっても構わない。図14では、符号に関しては図13と同様であるため説明を省略する。また、シフト量に関しては、図13と同様にN0、N1、N2、N3を求めた後、N0とN1との間、N1とN2との間、N2とN3との間の差をそれぞれ求め、図14で示されるように、シフト量の差の数だけ0を下位のビットから格納し、仕切りとして1を格納した例となっている。図14では、符号ビット格納領域の最上位ビットの次のビットから格納するような構成となっている。逆に、このように格納されたビット列からシフト量を求めるには、符号ビット格納領域の最上位ビットの次のビットから0の検出を開始し、上位ビットに1が検出されるまで0の数を数えて、1が検出された時点での0の数を、まずN0とする。その後、同様に1が検出されるまで0の数を数えて、1が検出された時点での0の数を次のシフト量としていくことで、図14のようなビット列からシフト量を特定するように構成すると良い。
次に、除算近似解の導出過程で重要となる、上述のN0からN3で表される、修正単位近似誤差割合を求める際のシフト量の導出方法の詳細について説明する。M0からM3で表されるシフト量の導出方法の詳細については、実施の形態1において、既に式1から式19を用いて説明しているためここでは省略する。この式1から式19までの関係に基づいて、式20から式28までを導出することで、除算近似解の導出過程において、どのように上述のN0からN3で表されるシフト量が導かれるかを説明する。
まず、式1と式3から、単位中間解は、式20で示されるような基数のべき乗の逆数の形式で表現できる。
単位中間解=1/近似除数=1/(符号F0)・(基数)^M0 (式20)
また、図3の対応表で用いられている記号を用いることにより、式21のように表記することができる。
単位中間解=1/(符号F0)・(基数)^M0=(符号F0)・p(M0) (式21)
また、式6から同様に記号を用いることにより、式22のように表記することができる。
単位近似誤差割合=(符号F1)・p(M1)+(符号F2)・p(M2)+(符号F3)・p(M3)+… (式22)
本実施の形態5では、一例として、式16に対して記号を用いた式23のように、単位近似誤差割合の項数を3としたものとして話を進める。
単位近似誤差割合=(符号F1)・p(M1)+(符号F2)・p(M2)+(符号F3)・p(M3) (式23)
その後、式13に式21および式23を用いることにより、除算近似解は、式24のようになる。
除算近似解=被除数×(符号F0)・p(M0)
+被除数×(符号F0)・p(M0)×((符号F1)・p(M1)+(符号F2)・p(M2)+(符号F3)・p(M3)) (式24)
ここで、記号p同士の乗算は、式25で示されるように、指数の加算形式で表現できる。
(符号Fx)・p(Mx)×(符号Fy)・p(My)=(符号Fx)・(符号Fy)・p(Mx+My) (式25)
これは、記号pが基数のべき乗の逆数であることによる。
この式25を式24に適用することにより、除算近似解は式26のような形式で表現できるようになる。
除算近似解=被除数×(符号F0)・p(M0)
+被除数×(符号F0)・(符号F1)・p(M0+M1)
+被除数×(符号F0)・(符号F2)・p(M0+M2)
+被除数×(符号F0)・(符号F3)・p(M0+M3) (式26)
式26のような除算近似解の表現に対して、図3の対応表で用いられているようなシフト演算子を用いることにより、式26の乗算をシフト演算で置き換えると、式27のように表現することができる。
除算近似解=(符号F0)・被除数>>M0
+(符号F0)・(符号F1)・被除数>>(M0+M1)
+(符号F0)・(符号F2)・被除数>>(M0+M2)
+(符号F0)・(符号F3)・被除数>>(M0+M3) (式27)
ここで、新たに符号F0・符号F1を符号G1、符号F0・符号F2を符号G2、符号F0・符号F3を符号G3と置き換え、符号F0を符号G0とするとともに、M0+M1をN1、M0+M2をN2、M0+M3をN3と置き換え、M0をN0とすることにより、式28を得ることができる。このようにして導かれた式28で用いられるN0からN3が上述のシフト量として用いられている。
除算近似解=(符号G0)・被除数>>N0
+(符号G1)・被除数>>N1
+(符号G2)・被除数>>N2
+(符号G3)・被除数>>N3 (式28)
実施の形態1においては、誤差補正値を求める際に、あらかじめM0およびF0を利用して除算近似中間解を求めた上で、M1からM3、およびF1からF3を利用してそれぞれの誤差補正値を求めるという処理の依存関係が存在していた。しかし、このN0からN3のシフト量を利用することにより、被除数に対して、N0およびG0を利用することで除算近似中間解を、N1からN3およびG1からG3のそれぞれを利用することで、それぞれの誤差補正値を、依存関係なく並列的に求めることができるようになる。このようにして単位近似誤差割合を求めるためのシフト量に対して、単位中間解を求めるためのシフト量を反映させた修正単位近似誤差割合を求めるためのシフト量を求めることができる。
ここから、図11の各部の説明に戻る。
解析部203は、入力部201から除数を取得する。解析部203は、取得した除数に対応づけられた除数情報を蓄積部202から取得する。解析部203は、取得した除数情報から、単位中間解を求める際に用いるシフト量であるN0を特定して第4シフト演算部207に供給する。また、解析部203は、取得した除数情報から、単位中間解を求める際に用いる符号であるG0を特定して第4符号変換部211に供給する。ここで、N0およびG0は、第4のシフト演算部および符号変換部に供給するようにしているが、図11で示されるような対となる第1から第4のシフト演算部および符号変換部のいずれかに対して、他のシフト量および符号と重複しないように供給するようにしても構わない。これは、第1から第4のシフト演算部、および第1から第4の符号変換部が、それぞれ同等の機能を有することによるものである。
また、解析部203は、取得した除数情報から、単位近似誤差割合を求める際に用いるシフト量であるN1、N2、N3を特定し、N1を第1シフト演算部204、N2を第2シフト演算部205、N3を第3シフト演算部206に供給する。また、解析部203は、取得した除数情報から、単位近似誤差割合を求める際に用いる符号であるG1、G2、G3を特定し、G1を第1符号変換部208、G2を第2符号変換部209、G3を第3符号変換部210に供給する。ここで、N1からN3およびG1からG3は、N0およびG0の場合と同様に、図11で示されるような対となる第1から第4のシフト演算部および符号変換部のいずれかに対して、他のシフト量および符号と重複しないように供給するようにしても構わない。
第1シフト演算部204は、入力部201から被除数、解析部203からシフト量N1を取得する。第1シフト演算部204は、取得した被除数に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第1誤差補正値を生成し、第1符号変換部208に供給する。
第2シフト演算部205は、入力部201から被除数、解析部203からシフト量N2を取得する。第2シフト演算部205は、取得した被除数に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第2誤差補正値を生成し、第2符号変換部209に供給する。
第3シフト演算部206は、入力部201から被除数、解析部203からシフト量N3を取得する。第3シフト演算部206は、取得した被除数に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、第3誤差補正値を生成し、第3符号変換部210に供給する。
第4シフト演算部207は、入力部201から被除数、解析部203からシフト量N0を取得する。第4シフト演算部207は、取得した被除数に対して、取得したシフト量に基づいて所定のシフト演算を行うことで、除算近似中間解を生成し、第4符号変換部211に供給する。
第1符号変換部208は、第1シフト演算部204から第1誤差補正値、解析部203から符号G1を取得する。第1符号変換部208は、取得した第1誤差補正値に対し、取得した符号G1を反映させるために所定の符号変換処理を行うことで、符号変換後の第1誤差補正値を生成し、加算部212に供給する。
第2符号変換部209は、第2シフト演算部205から第2誤差補正値、解析部203から符号G2を取得する。第2符号変換部209は、取得した第2誤差補正値に対し、取得した符号G2を反映させるために所定の符号変換処理を行うことで、符号変換後の第2誤差補正値を生成し、加算部212に供給する。
第3符号変換部210は、第3シフト演算部206から第3誤差補正値、解析部203から符号G3を取得する。第3符号変換部210は、取得した第3誤差補正値に対し、取得した符号G3を反映させるために所定の符号変換処理を行うことで、符号変換後の第3誤差補正値を生成し、加算部212に供給する。
第4符号変換部211は、第4シフト演算部207から除算近似中間解、解析部203から符号G0を取得する。第4符号変換部211は、取得した除算近似中間解に対し、取得した符号G0を反映させるために所定の符号変換処理を行うことで、符号変換後の除算近似中間解を生成し、加算部212に供給する。
加算部212は、第4符号変換部211から符号変換後の除算近似中間解、第1符号変換部208から符号変換後の第1誤差補正値、第2符号変換部209から符号変換後の第2誤差補正値、第3符号変換部210から符号変換後の第3誤差補正値を取得し、それぞれを加算して除算近似解を生成する。つまり、符号変換後の第1から第3の誤差補正値の総数である総誤差補正値を、符号変換後の除算近似中間解に加算することで、除算近似解が求まる。加算部212は、生成した除算近似解を出力部213に供給する。
出力部213は、出力部113と同様であれば良いため、説明を省略する。
除算制御部250は、各部の動作状態を監視し、各部の演算や変換といった動作や各部が必要とする情報の入出力を制御する。
次に、実施の形態5に係るAV信号処理低減装置200の動作について説明する。図12は、実施の形態5に係るAV信号処理低減装置200の基本動作を示すフローチャートである。
まず、除算制御部250は、外部の装置やユーザ等から除算開始要求を受けると、各部に対して除算開始指令を送る。それに応じて、入力部201は、除算対象となっている被除数および除数に関する情報を取得する(S301)。その後、入力部201は、取得した被除数を第1から第4のシフト演算部(204から207)に供給し、除数を解析部203に供給する。
その後、除算制御部250は、解析部203に対して解析開始指令を送り、解析部203は、入力部201から除数を取得する。その後、解析部203は、取得した除数を解析し、除数に対応する除数情報を蓄積部202から特定および取得し、供給する(S302)。ここで、解析部203は、取得した除数情報からシフト量N0からN3を特定し、N0を第4シフト演算部207、N1からN3までをそれぞれ第1から第3のシフト演算部(204から206)に供給するとともに、符号G0からG3を特定し、G0を第4符号変換部211、G1からG3までをそれぞれ第1から第3の符号変換部(208から210)に供給する。
次に、除算制御部250は、第1から第4のシフト演算部(204から207)に対して開始指令を送り、第1から第4のシフト演算部(204から207)は処理を開始する。
ここでは、除算制御部250からの開始指令により、第4シフト演算部207は、入力部201から被除数、解析部203からシフト量N0を取得する。また、除算制御部250からの開始指令により、第1シフト演算部204は、入力部201から被除数、解析部203からシフト量N1を取得する。また、除算制御部250からの開始指令により、第2シフト演算部205は、入力部201から被除数、解析部203からシフト量N2を取得する。また、除算制御部250からの開始指令により、第3シフト演算部206は、入力部201から被除数、解析部203からシフト量N3を取得する。
その後、第1から第4のシフト演算部(204から207)は、所定のシフト演算処理を行い、第4シフト演算部207は除算近似中間解、第1から第3のシフト演算部(204から206)は第1から第3の誤差補正値を求める。
ここでは、第4シフト演算部207は、取得した被除数に対して、取得したシフト量N0に基づいて所定のシフト演算を行うことで、除算近似中間解を求め(S303)、第4符号変換部211に供給する。また、第1シフト演算部204は、取得した被除数に対して、取得したシフト量N1に基づいて所定のシフト演算を行うことで、第1誤差補正値を求め(S305)、第1符号変換部208に供給する。また、第2シフト演算部205は、取得した被除数に対して、取得したシフト量N2に基づいて所定のシフト演算を行うことで、第2誤差補正値を求め(S307)、第2符号変換部209に供給する。また、第3シフト演算部206は、取得した被除数に対して、取得したシフト量N3に基づいて所定のシフト演算を行うことで、第3誤差補正値を求め(S309)、第3符号変換部210に供給する。
次に、除算制御部250は、第1から第4の符号変換演算部(208から211)に対して開始指令を送り、第1から第4の符号変換演算部(208から211)は処理を開始する。
ここでは、第4符号変換部211は、第4シフト演算部207から除算近似中間解、解析部203から符号G0を取得する。また、第1符号変換部208は、第1シフト演算部204から第1誤差補正値、解析部203から符号G1を取得する。また、第2符号変換部209は、第2シフト演算部205から第2誤差補正値、解析部203から符号G2を取得する。また、第3符号変換部210は、第3シフト演算部206から第3誤差補正値、解析部203から符号G3を取得する。
その後、第1から第4の符号変換演算部(208から211)は、所定の符号変換処理を行い、第4符号変換部211は符号変換後の除算近似中間解、第1から第3の符号変換部(208から210)は符号変換後の第1から第3の誤差補正値を求める。
ここでは、第4符号変換部211は、取得した除算近似中間解に対し、符号G0を反映させるために所定の符号変換処理を行うことで、符号変換後の除算近似中間解を求め(S304)、加算部212に供給する。また、第1符号変換部208は、取得した第1誤差補正値に対し、符号G1を反映させるために所定の符号変換処理を行うことで、符号変換後の第1誤差補正値を求め(S306)、加算部212に供給する。また、第2符号変換部209は、取得した第2誤差補正値に対し、符号G2を反映させるために所定の符号変換処理を行うことで、符号変換後の第2誤差補正値を求め(S308)、加算部212に供給する。また、第3符号変換部210は、取得した第3誤差補正値に対し、符号G3を反映させるために所定の符号変換処理を行うことで、符号変換後の第3誤差補正値を求め(S310)、加算部212に供給する。
次に、除算制御部250は、加算部212に対して開始指令を送り、加算部212は、第4符号変換部211から符号変換後の除算近似中間解、第1符号変換部208から符号変換後の第1誤差補正値、第2符号変換部209から符号変換後の第2誤差補正値、第3符号変換部210から符号変換後の第3誤差補正値を取得する。その後、加算部212は、取得したそれぞれを加算して除算近似解を求める(S311)。つまり、符号変換後の第1から第3の誤差補正値の総数である総誤差補正値を、符号変換後の除算近似中間解に加算することで、除算近似解が求まる。加算部212は、生成した除算近似解を出力部213に供給する。
その後、除算制御部250は、出力部213に対して出力指令を送り、出力部213は、加算部212から除算近似解を取得し、出力部213に接続されている外部の機器に対して、除算近似解を供給する。
以上のような処理を伴う各部の動作により、実施の形態5に係るAV信号処理低減装置200における一連の除算処理が完了する。
以上、実施の形態5によれば、除算時の除数を、所定の基数のべき乗で近似した除数(以後、近似除数)を取得し、単位U(例えば、1)を除数で除算した単位理想解を取得し、単位Uを近似除数で除算した単位中間解を取得する。次に、除算の単位理想解から単位中間解を減算した除算時の単位誤差を取得し、除算時の単位誤差が単位中間解においてどの程度の割合かを特定するために、除算時の単位誤差に対して単位中間解を除算した単位誤差割合において、この単位誤差割合を、基数のべき乗の逆数で表現された所定の項数の加減算によって表現した単項式もしくは多項式で近似された単位近似誤差割合を取得する。そして、単位中間解に単位近似誤差割合を乗じたものを単位中間解に加算した単位近似解を取得し、被除数に単位近似解を乗じることで実際の除算近似解を求めるようにした。さらに、被除数に対して、単位近似解の多項式の項ごとに並列にビットシフト演算を行い、その後集約して加減算するように構成した。これにより、今まで除算近似中間解を求めてから除算近似解を求めていたものを、被除数に対して並列的に演算した後に加減算を行うことで、被除数から直接、除算近似解を求めることができ、処理の依存関係を回避して、より簡易な構成にできるとともに、複雑な除算器を必要とせず、演算時間の短縮や消費電力の軽減といった効果が得られるようになる。
特に、実施の形態5によれば、実施の形態1において誤差補正値を求める際に、あらかじめシフト量M0および符号F0を利用して除算近似中間解を求めた上で、シフト量M1からM3、および符号F1からF3を利用してそれぞれの誤差補正値を求めるという処理の依存関係が存在していたが、本実施の形態5では、シフト量N0からN3を利用することにより、被除数に対して、シフト量N0および符号G0を利用することで除算近似中間解、シフト量N1からN3および符号G1からG3のそれぞれを利用することで、それぞれの誤差補正値を、依存関係なく並列的に求めることができるようになる。これにより、実施の形態1のAV信号処理低減装置100で構成した場合に比べて、除算近似解を得るまでにかかる時間を短縮することができるようになる。また、このようなシフト量N0からN3および符号G0からG3を利用することにより、同じ機能をもつシフト演算部および符号変換部を対として複数用意して並列に構成できるようになることから、除算近似解の演算精度を高める際には、シフト演算部および符号変換部の並列数を単純に増加させることで容易に拡張することができるようになる。また、除算近似解の演算精度を低めようとする際には、不要なシフト演算部および符号変換部を機能させないように除算制御部250によって情報の入出力や開始指令を制御することで容易に縮小することができるようになる。
また、実施の形態5によれば、単位近似解を構成する多項式の項数を、所望の演算精度を満たす項数で表現できるようにし、対となるシフト演算および符号変換の並列数となるように構成した。これにより、必要以上の演算精度を実現するためのビットシフト演算と加減算を削減することができ、更なる演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態5によれば、単位近似解を構成する多項式に対して、所定の等価変換に基づいて最も少ない項数で表現できる形式に変換されたものを利用できるようにした。これにより、同じ演算精度を実現する際に、より少ないシフト演算および符号変換の並列数でAV信号処理低減装置を構成することができることから、余分なビットシフト演算と加減算を削減することができ、更なる演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態5によれば、単位近似解を構成する多項式に対して、所定の等価変換に基づいて、所定の演算精度を満たし、等価変換前の演算時間以下で、かつ加算形式で表現できる項が最も多くなるように変換されたものを利用する。これにより、減算よりも加算の方が高速に処理できる場合において、所定の演算精度を満たし、項数が増加しても全体の演算時間が元の演算時間以下となるような等価変換により、更なる演算時間の短縮が実現できるとともに、より最適なシフト演算および符号変換の並列数によってAV信号処理低減装置を構成することができるといった効果が得られる。
また、実施の形態5によれば、単位近似解を構成する多項式を、所定の項数以下となるように構成することもできる。これにより、通常の除算では、被除数と除数の関係から演算時間には大きなばらつきが生じていたものを、ほぼ一定の演算時間内で除算の近似計算できる効果が得られる。また、除算結果を得るまでの待ち時間の平準化が可能となり、演算処理のスケジューリングを効率よく行うことができるという効果が得られる。更に、対となるシフト演算および符号変換の並列数を所定の並列数以下にできることから、余分な並列数を持たない最適なAV信号処理低減装置を構成することができるといった効果が得られる。
また、実施の形態5によれば、単位近似解の多項式演算を特定して保持する蓄積部と、単位近似解の多項式演算を実現するためのビットシフト量と符号を特定し、被除数に対して、項ごとにビットシフト演算を並列に行い、項ごとの符号に応じて加減算を行うように構成することもできる。これにより、AV信号処理低減装置において、シフト演算部および符号変換部を並列に配置し、除数に対応づけられたビットシフト量と符号を各部に供給して演算することにより、簡易な演算部によって装置を構成することが可能となり、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、消費電力を軽減できるといった効果が得られる。
また、実施の形態5によれば、単位近似解を保持する際に、被除数に対する演算となるように各項のビットシフト量と符号を変換したもの特定するための情報を蓄積部に保持するように構成することができる。これにより、並列演算を実現するとともに、除数に対応づけられた単位近似解の多項式演算を実現するためのビットシフト量と符号に関して、必要とするたびに毎回計算することなく、既に計算済みで除数に対応づけられたビットシフト量と符号を取得し、シフト演算部や符号変換部に必要な情報を供給することが可能となり、除数の近似計算を非常に少ない演算で実現できる。よって、演算時間の短縮や消費電力の軽減といった効果が得られる。
また、実施の形態5によれば、単位近似解を構成する多項式の各項は、所定の基数のべき乗の逆数のみで構成されるものを利用するように構成することができる。これにより、被除数に対する演算となるように各項のビットシフト量と符号を求める際の変換を容易にすることができるとともに、単位近似解、特に、単位近似誤差割合を構成する各項を特定する際の、項の候補数を限定し、単位近似誤差割合を高速に求めることができるようになるといった効果が得られる。
また、実施の形態5によれば、単位近似解を構成する多項式の各項は、所定の基数のべき乗の逆数におけるべき指数をシフト量とした、シフト演算のみで構成されるものを利用するように構成することができる。これにより、被除数に対する演算となるように各項のビットシフト量と符号を求める際の変換を容易にすることができるとともに、被除数に対する演算を行う際に、乗算を必要としない、シフト演算のみで演算を実現できることから、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、消費電力を軽減できるといった効果が得られる。
また、実施の形態5によれば、蓄積部内のデータ格納形式として、被除数に対する演算となるように各項のシフト量と符号を変換したものを、図13のように格納するように構成することができる。これにより、被除数に対する演算を行う際に、毎回シフト量と符号を変換することなく、必要なシフト量および符号を容易に特定して利用できるようになる。よって、本来必要となる演算が不要となり、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、演算時間の短縮や、消費電力の軽減ができるといった効果が得られる。
また、実施の形態5によれば、蓄積部内のデータ格納形式として、被除数に対する演算となるように各項のシフト量と符号を変換したものを、図14のように各項のシフト量の差と符号を格納するように構成することができる。これにより、被除数に対する演算を行う際に、毎回シフト量と符号を変換することなく、必要なシフト量および符号を容易に特定して利用できるようになる。よって、本来必要となる演算が不要となり、より簡単で少ない装置規模によってAV信号処理低減装置が構成でき、演算時間の短縮や、消費電力の軽減ができるといった効果が得られる。また、シフト量の差を格納するようにしたことにより、蓄積部における格納領域を有効に利用することができるようになる。
また、実施の形態5によれば、単位近似解を保持する際に格納される、各項のビットシフト量を特定するための情報として、被除数に対する演算となるように各項のシフト量と符号を変換した後に、シフト量を小さい順に並べ替えて、シフト量が小さいものから、各項の間のシフト量の差を保持するように構成することができる。これにより、シフト量格納領域の下位ビットから順番にシフト量を特定していくことで、容易に特定して利用できるようになる。また、シフト量をシフト量格納領域に格納する際に、格納用のビットが足りずに最上位ビットを超えてしまうために格納できなかった場合であっても、演算精度を高いものにするためのシフト量ほど格納できなくなるような順序となっているため、このような格納形式とすることで、格納できた分のシフト量を利用して正しく除算の近似計算を行うことができるようになる。
(実施の形態6)
次に、図15に示される実施の形態6のAV信号処理低減装置は、図16のフローチャートで示されるような基本動作を行うことのできる構成となっている。実施の形態6のAV信号処理低減装置の構成は、実施の形態5のAV信号処理低減装置の第1から第4の符号変換部(208から211)を第1から第4のビット反転部(215から218)に置き換えるとともに、解析部214および加算部219の機能を変更することにより構成されている。他の構成要素に関する機能については実施の形態5と同様であることから、ここでは説明を省略する。
以下に、実施の形態6のAV信号処理低減装置を構成する各部の機能の説明を交えながら、図16のフローチャートで示される基本動作について説明する。
本実施の形態6のAV信号処理低減装置の動作として、はじめに、被除数、除数を取得するステップ(S401)を行う。このステップにおいて、入力部201は、例えば、図15に示すような、CPUやメモリ等で構成される一般的なコンピュータ131、伝送装置132、記録装置133、記録媒体134、蓄積装置135等から、除算を行うための、被除数および除数に関する情報を取得し、取得した被除数を第1から第4のシフト演算部(204から207)に供給し、除数を解析部214に供給する。また、入力部201は、蓄積部202に蓄積される除数情報が取得できる場合には取得し、蓄積部202に供給する。
次に、除数を解析し、除数に対応する除数情報を特定し、供給するステップ(S402)を行う。ここで、解析部214は、更に、蓄積部202から特定された除数情報を特定するとともに、単位近似誤差割合を構成する各項において、各項に対応する符号からマイナス項の数を計数して補数加算情報を生成し、供給する機能をもつ。また、特定される除数情報としては、例えば、図13や図14に示されているような、G0からG3、N0からN3のように表現されたシフト量や符号であるとよい。また、ここでの補数加算情報は、例えば、G0からG3の符号からマイナス項の数を計数して求めるようにすることが好ましい。更に、この補数加算情報をあらかじめ除数と関連付けて蓄積部202に格納し、必要に応じて特定するようにしても構わない。このステップにおいて、解析部214は、取得した除数に対応づけられた除数情報を蓄積部202から取得する。解析部214は、取得した除数情報から、単位中間解を求める際に用いるシフト量であるN0を特定して第4シフト演算部207に供給する。また、解析部214は、取得した除数情報から、単位中間解を求める際に用いる符号であるG0を特定して第4ビット反転部218に供給する。ここで、N0およびG0は、第4のシフト演算部およびビット反転部に供給するようにしているが、図15で示されるような対となる第1から第4のシフト演算部およびビット反転部のいずれかに対して、他のシフト量および符号と重複しないように供給するようにしても構わない。これは、第1から第4のシフト演算部、および第1から第4のビット反転部が、それぞれ同等の機能を有することによるものである。
また、解析部214は、取得した除数情報から、単位近似誤差割合を求める際に用いるシフト量であるN1、N2、N3を特定し、N1を第1シフト演算部204、N2を第2シフト演算部205、N3を第3シフト演算部206に供給する。また、解析部214は、取得した除数情報から、単位近似誤差割合を求める際に用いる符号であるG1、G2、G3を特定し、G1を第1ビット反転部215、G2を第2ビット反転部216、G3を第3ビット反転部217に供給する。ここで、N1からN3およびG1からG3は、N0およびG0の場合と同様に、図15で示されるような対となる第1から第4のシフト演算部およびビット反転部のいずれかに対して、他のシフト量および符号と重複しないように供給するようにしても構わない。
また、解析部214は、特定された除数情報に基づいて補数加算情報を生成し、加算部219に供給する。
その後、図16のフローチャートに示されるように、ステップS403からステップS410までを並列処理することで、図15の構成を効率良く動作させる。
この並列処理の1つ目として、まず、除算近似中間解を求めるステップ(S403)を行う。ここで、第1から第4のシフト演算部(204から207)は、被除数を取得するとともに、シフト量を取得し、取得した被除数に対して、取得したシフト量に基づいて、シフト演算を行い、除算近似中間解もしくは誤差補正値を生成し、供給する機能をもつ。ここでは、除算近似中間解は、取得したシフト量がN0である場合に生成される。また、誤差補正値は、取得したシフト量がN1からN3のいずれかである場合に生成される。
このステップにおいて、第4シフト演算部207は、入力部201から被除数、解析部214からシフト量N0を取得し、被除数に対して、シフト量N0に基づいて所定のシフト演算を行うことで、除算近似中間解を求め、第4ビット反転部218に供給する。
その後、修正除算近似中間解を求めるステップ(S404)を行う。ここで、第1から第4のビット反転部(215から218)は、除算近似中間解もしくは誤差補正値を取得するとともに、G0からG3といった符号に関する情報を取得し、取得した符号がマイナス(−)であった場合には、取得した除算近似中間解もしくは誤差補正値のビット表現を反転させるビット反転処理を行い、修正除算近似中間解もしくは修正誤差補正値を生成し、供給する機能をもつ。また、第1から第4のビット反転部(215から218)は、取得した符号がプラス(+)であった場合には、取得した除算近似中間解もしくは誤差補正値をそのまま修正除算近似中間解もしくは修正誤差補正値として供給する機能をもつ。
このステップにおいて、第4ビット反転部218は、第4シフト演算部207から除算近似中間解、解析部214から単位中間解を求める際に用いる符号であるG0を取得し、取得した除算近似中間解に対して、取得したG0に基づいて、ビット反転処理を行い、修正除算近似中間解を生成し、加算部219に供給する。
これらの処理により、この並列処理の1つ目を完了する。
次に、この並列処理の2つ目として、第1誤差補正値を求めるステップ(S405)を行う。このステップにおいて、第1シフト演算部204は、入力部201から被除数、解析部214からシフト量N1を取得し、被除数に対して、シフト量N1に基づいて所定のシフト演算を行うことで、第1誤差補正値を求め、第1ビット反転部215に供給する。
その後、修正第1誤差補正値を求めるステップ(S406)を行う。このステップにおいて、第1ビット反転部215は、第1シフト演算部204から第1誤差補正値、解析部214から単位近似誤差割合を求める際に用いる符号であるG1を取得し、取得した第1誤差補正値に対して、取得したG1に基づいて、ビット反転処理を行い、修正第1誤差補正値を生成し、加算部219に供給する。
これらの処理により、この並列処理の2つ目を完了する。
次に、この並列処理の3つ目として、第2誤差補正値を求めるステップ(S407)を行う。このステップにおいて、第2シフト演算部205は、入力部201から被除数、解析部214からシフト量N2を取得し、被除数に対して、シフト量N2に基づいて所定のシフト演算を行うことで、第2誤差補正値を求め、第2ビット反転部216に供給する。
その後、修正第2誤差補正値を求めるステップ(S408)を行う。このステップにおいて、第2ビット反転部216は、第2シフト演算部205から第2誤差補正値、解析部214から単位近似誤差割合を求める際に用いる符号であるG2を取得し、取得した第2誤差補正値に対して、取得したG2に基づいて、ビット反転処理を行い、修正第2誤差補正値を生成し、加算部219に供給する。
これらの処理により、この並列処理の3つ目を完了する。
次に、この並列処理の4つ目として、第3誤差補正値を求めるステップ(S409)を行う。このステップにおいて、第3シフト演算部206は、入力部201から被除数、解析部214からシフト量N3を取得し、被除数に対して、シフト量N3に基づいて所定のシフト演算を行うことで、第3誤差補正値を求め、第3ビット反転部217に供給する。
その後、修正第3誤差補正値を求めるステップ(S410)を行う。このステップにおいて、第3ビット反転部217は、第3シフト演算部206から第3誤差補正値、解析部214から単位近似誤差割合を求める際に用いる符号であるG3を取得し、取得した第3誤差補正値に対して、取得したG3に基づいて、ビット反転処理を行い、修正第3誤差補正値を生成し、加算部219に供給する。
これらの処理により、この並列処理の4つ目を完了する。
この並列処理が完了すると、次に、除算近似解を求めるステップ(S411)を行う。ここで、加算部219は、修正除算近似中間解、少なくとも1つの修正誤差補正値、補数加算情報を取得し、それぞれを加算して除算近似解を生成し、供給する機能をもつ。
このステップにおいて、加算部219は、第4ビット反転部218から修正除算近似中間解、第1ビット反転部215から修正第1誤差補正値、第2ビット反転部216から修正第2誤差補正値、第3ビット反転部217から修正第3誤差補正値、解析部214から補数加算情報を取得し、それぞれを加算して除算近似解を生成し、出力部213に供給する。
その後、除算制御部250は、出力部213に対して出力指令を送り、出力部213は、加算部219から除算近似解を取得し、出力部213に接続されている外部の機器に対して、除算近似解を供給する。
以上のような処理を伴う各部の動作により、実施の形態6に係るAV信号処理低減装置200における一連の除算処理が完了する。
以上、実施の形態6によれば、実施の形態5のAV信号処理低減装置の第1から第4の符号変換部(208から211)を第1から第4のビット反転部(215から218)に置き換えるとともに、解析部214および加算部219の機能を変更することにより、修正除算近似中間解、少なくとも1つの修正誤差補正値、補数加算情報を生成し、これらを加算することにより除算近似解を求めるようにした。実施の形態5のAV信号処理低減装置では、符号変換後の誤差補正値を求める際の符号変換処理において、負数に変換する際に、一般にビット反転処理を行った後に1を加算することにより実現していた。これを、実施の形態6のAV信号処理低減装置では、符号変換処理をビット反転処理に置き換える。そして、少なくとも1つの誤差補正値において、負数に変換する必要のあるものの数を計数して補数加算情報とする。これにより、ビット反転処理後の1を加算する処理をまとめることができるようになる。また、符号変換処理を実現する構成を、より簡易な構成とすることができ、除算の近似計算を並列構成により実現する際に、複雑な除算器を必要とせず、回路構成の簡略化、演算時間の短縮、消費電力の軽減といった効果が得られるようになる。
(実施の形態7)
次に、実施の形態7に係るAV信号処理低減装置について説明する。図17で示される実施の形態7に係るAV信号処理低減装置は、主に、実施の形態5におけるAV信号処理低減装置200に対して、新たに近似計算部220を追加したものとなっている。以後、実施の形態5であるAV信号処理低減装置200を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
近似計算部220は、本実施の形態5において説明した除算近似解の導出過程に基づいて、除算の近似計算を行うために必要な除数情報を生成する。また、近似計算部220は、生成した除数情報を蓄積部202に供給する。
ここで、生成される除数情報は、単位近似誤差割合もしくは単位近似解を構成する、単項式または多項式の各項の演算を特定するための情報として、基数のべき乗の逆数で表されている各項の指数と符号に関する情報、もしくは、基数のべき乗の逆数をシフト演算に置き換えた際の各項のシフト量と符号に関する情報であると良い。また、近似除数の指数、つまり単位中間解を求める際に用いるシフト量および符号に関する情報を更に除数情報として含むと良い。また、生成される除数情報は、例えば、図13や図14に示されているような、G0からG3、N0からN3のように表現されたシフト量や符号であるとよい。
また、近似計算部220は、単位近似誤差割合を求める際に、除算の近似計算における所定の演算精度に応じて、所定の単位近似誤差割合の項数を求めるが、この特定する項数を、除算制御部250の指令に応じて変更することで、近似計算の演算精度を必要に応じて変更できるようにすると更に良い構成となる。
除算制御部250は、近似計算部220に演算精度を変更し、除数情報を更新するための指令を通知する。ここで、除算制御部250は、入力部201から除算の近似計算を行う際の演算精度に関する情報を取得し、演算精度変更の要否を判定し、近似計算部220に指令を通知するように構成しても良い。また、除算制御部250は、近似計算部220で特定される単位近似誤差割合の項数を一定以下となるように制御するために、近似計算部220に対して指令を通知できるように構成しても良い。また、除算制御部250は、除算の近似計算における演算精度を一定の範囲内に保つように、近似計算部220で特定される単位近似誤差割合の項数を、演算精度を満たすような項数となるように制御するために、近似計算部220に対して指令を通知できるように構成しても良い。
このように、近似計算部220は、除算制御部250の指令に応じて、蓄積部202に格納されている除数情報を更新するために、新たな近似精度による除数情報を生成し、蓄積部202に供給するように構成することで、除算の近似計算によって得られる結果の演算精度を制御できるようになり、更に良い構成となる。
以上、実施の形態7によれば、新たに近似計算部を備えることにより、必要に応じて除数に対応した除数情報を求めて各部に供給するように構成することができる。これにより、使用頻度の低い除数に対応した除数情報を常に蓄積部に格納しておく必要がなくなることから、蓄積部のメモリ量を減らすことが可能となり、安価で装置規模の小さいAV信号処理低減装置を構成することができるようになる。
また、実施の形態7によれば、新たに近似計算部を備えることにより、除算の演算精度を要求に応じて変更できるように構成することができる。これは、蓄積部に格納されている除数に対応づけられた除数情報を、近似計算部によって要求された演算精度を実現するような除数情報を新たに求めて、蓄積部に格納されている除数情報を更新することにより実現できる。これにより、所望の演算精度に基づく除算の近似計算を行うことができるようになる。
また、実施の形態7によれば、近似計算部で特定される単位近似誤差割合の項数を一定以下となるように制御するように構成することができる。これにより、所望の演算実行時間に基づく除算の近似計算を行うことができるようになる。したがって、従来の除算演算では、演算時間にばらつきが生じていたものが、本実施の形態7の構成を用いることにより、演算時間のばらつきを抑制することができるようになる。
(実施の形態8)
次に、実施の形態8に係るAV信号処理低減装置について説明する。図18で示される実施の形態8に係るAV信号処理低減装置は、主に、実施の形態6におけるAV信号処理低減装置200に対して、実施の形態7のAV信号処理低減装置に含まれる近似計算部220を追加したものとなっている。以後、実施の形態6であるAV信号処理低減装置200を構成する各部において、機能や動作が異なる部分について説明し、同等な部分に関しては説明を省略する。
近似計算部220は、実施の形態7のAV信号処理低減装置に含まれる近似計算部220と同様の機能を有すると良い。また、単位近似誤差割合を構成する各項において、マイナス項がいくつ存在するかを計数して補数加算情報を生成し、これを除数情報として含むようにすると良い。また、ここでの補数加算情報は、例えば、G0からG3の符号からマイナス項の数を計数して求めるようにすることが好ましい。このようにすることで、解析部214は、補数加算情報を蓄積部202から取得することが可能となる。
以上、実施の形態8によれば、演算精度や演算速度を変更するために、除数に対応づけられた除数情報が更新されることにより、符号変換処理を必要とする項や項数が変化するため、符号変換処理ごとに行われるビット反転後に1を加算する処理が増減するために演算量にゆらぎを生じていた。これを、後段符号変換部の代わりにビット反転部とし、近似計算部によって補数加算情報を順次計数、もしくは蓄積部の補数加算情報を更新するように構成することができる。これにより、演算量のゆらぎを抑制できるようになるとともに、より安価で装置規模の小さいAV信号処理低減装置を構成することができるようになる。
(実施の形態9)
次に、本発明の実施の形態1から8に係るAV信号処理低減装置の応用の一例として、高速に画像の解像度を変換することが可能となる装置について説明する。図19で示される実施の形態9に係る高速画像解像度変換装置500は、AV信号処理低減装置100、画像取得部501、画像解像度変換部502、画像供給部503、画像解像度変換制御部504から構成され、図20のフローチャートで示されるような基本動作を行うものである。ここで、図19で示される画像解像度変換制御部504と各部に対しては相互に接続されている。ここでは、図面が煩雑になることを避けるため接続線が省略されていることに注意する。
本実施の形態9である、AV信号処理低減装置を用いた高速画像解像度変換装置500として、はじめに、この画像解像度変換制御部504の開始指令に応じて、画像を取得するステップ(S501)を行う。
ここで、画像取得部501は、この画像解像度変換制御部504の指令に応じて、例えば、図19に示すような、CPUやメモリ等で構成される一般的なコンピュータ131、伝送装置132、記録装置133、記録媒体134、蓄積装置135等から、解像度変換の対象となっている画像を取得し、画像解像度変換部502に供給する。
次に、処理対象となる信号列を取得するステップ(S502)を行う。ここで、画像解像度変換部502は、この画像解像度変換制御部504の指令に応じて、画像取得部501から対象となる画像を取得する。また、画像解像度変換部502は、取得した画像から、現在、解像度変換処理の対象となっている画素列である信号列を特定し、取得する。
次に、解像度変換で除算が必要かを判定するステップ(S503)を行う。ここで、画像解像度変換部502は、取得した画像中で現在、解像度変換処理対象となっている信号列に対して、所定の解像度変換率に従って、所定の解像度変換処理を行う際に、所定の解像度変換率から、解像度変換で除算が必要かどうかを判定する。この判定では、例えば、単純な画素の間引きや補間、または、単純に1回のシフト演算を伴うことにより、所定の解像度変換率を満たすような信号列を生成することができる場合には、除算が不要(S503 NO)であるとし、それ以外は除算が必要(S503 YES)であると判定するようにすると良い。また、この判定において、例えば、所定の解像度変換率が1以下で画像を縮小する方向に解像度変換する場合には、除算が必要であると判定するように構成しても構わない。ここで、所定の解像度変換率は、外部の装置から設定できるように構成すると、更に良い構成となる。また、この所定の解像度変換率を、画像解像度変換制御部504の制御に基づいて、必要に応じて変更できるようにしても構わない。
ステップS503でNOである場合は、解像度変換を行うステップ(S504)に移行する。ステップS503でYESである場合は、演算精度は十分であるかを判定するステップ(S505)に移行する。
次に、演算精度は十分であるかを判定するステップ(S505)を行う。ここで、画像解像度変換部502は、所定の解像度変換率で最低限必要とされる、対応づけられた所定の演算精度に関する情報(以後、最低演算精度)をもち、AV信号処理低減装置100で得られる除算近似解の演算精度と、この解像度変換率に対応づけられた所定の演算精度とを比較し、除算近似解の演算精度が最低演算精度以上の演算精度である場合には、演算精度は十分(S505 YES)であるとし、それ以外は不十分(S505 NO)であると判定するようにすると良い。ここで、最低演算精度は、外部の装置から設定できるように構成すると、更に良い構成となる。また、この最低演算精度を、画像解像度変換制御部504の制御に基づいて、必要に応じて変更できるようにしても構わない。
ステップS505でNOである場合は、解像度変換を行うステップ(S504)に移行する。ステップS505でYESである場合は、次のステップS506に移行する。
ステップS503またはステップS505でNOであると判定されると、通常の解像度変換を行うステップ(S504)を行う。ここで、画像解像度変換部502は、除算の近似計算を伴わない、通常の解像度変換処理を、特定された信号列に対して行い、解像度変換後の信号列を生成する。その後は、ステップS510に移行する。
ステップS505の後、処理対象となる被除数と除数を供給するステップ(S506)を行う。ここで、画像解像度変換部502は、除算の近似計算結果を解像度変換処理において利用するために、この処理過程で必要な除算における、被除数と除数を特定し、AV信号処理低減装置100に供給する。
次に、除算近似解を求めるステップ(S507)を行う。ここで、AV信号処理低減装置100は、画像解像度変換部502から被除数と除数を取得し、除算近似解を求め、画像解像度変換部502に供給する。
次に、除算近似解を用いて解像度変換を行うステップ(S508)を行う。ここで、画像解像度変換部502は、AV信号処理低減装置100から、供給した被除数と除数に対応する除算近似解を取得し、特定された信号列に対して、この取得した除算近似解を除算結果として用いながら解像度変換を行うことにより、解像度変換後の信号列を生成し、画像供給部503に供給する。画像供給部503では、この生成された解像度変換後の信号列を画像解像度変換部502から順次取得する。
次に、新たな除算近似解が必要かを判定するステップ(S509)を行う。ここで、画像解像度変換部502は、この解像度変換処理において、複数の除算を必要としている場合は、新たな除算近似解が必要(S509 YES)であるとし、それ以外は、新たな除算近似解は不要(S509 NO)であると判定するようにすると良い。
ステップS509でYESの場合は、ステップS506に戻り、新たな除算近似解を求めるための処理対象を供給する。ステップS509でNOの場合、ステップS510に移行する。
その後、解像度変換処理が完了したかを判定するステップ(S510)を行う。ここで、画像供給部503は、順次取得した解像度変換後の信号列から、解像度変換後の画像を構成し、面内で必要とする解像度変換後の信号列が不足している場合には、解像度変換処理が完了していない(S510 NO)とし、解像度変換後の画像全体が得られた場合には、解像度変換処理が完了したものと判定する。
ステップS510でNOの場合は、ステップS502に戻り、新たな処理対象を供給する。ステップS510でYESの場合は、ステップS511に移行する。
その後、解像度変換後の画像を供給するステップ(S511)を行う。ここで、画像供給部503は、構成した解像度変換後の画像を、接続されている外部の機器に対して、供給する。例えば、図19に示すような、CPUやメモリ等で構成される一般的なコンピュータ141、伝送装置142、記録装置143、記録媒体144、蓄積装置145等が高速画像解像度変換装置500に接続されていれば、得られた結果を、演算、記憶、伝送、記録、保存、持ち出しができるように構成することができる。
以上のようなステップを経ることにより、高速画像解像度変換処理の基本的な動作が完了する。このように、必ずしも高い演算精度を必要としないような画像の解像度変換処理を行う場合において、AV信号処理低減装置100を用いた構成とすることにより、より短い時間での解像度変換後の画像の取得や、ある一定時間内での解像度変換後の画像の取得を可能にする。また、演算処理量を低減することが可能になるため、装置全体の電力消費や発熱を抑制することが可能となる。
また、実施の形態9のような構成の他にも、本発明の実施の形態1から8に係るAV信号処理低減装置、AV信号処理低減方法、およびAV信号処理低減プログラムの適用される範囲は、厳密な除算演算を必ずしも必要としない装置、方法、プログラム、システム等や、事前処理と最終処理で除算演算の演算精度が異なる装置、方法、プログラム、システム等であればよく、特に限定されるものではない。
例えば、コンピュータによる各種アプリケーション、TVに代表される放送装置、放送受信表示装置、携帯電話、スマートフォン、携帯型音楽プレーヤ、ゲーム装置、テレビ会議装置、監視装置、コンピュータビジョン等による動体認識追尾装置、カーナビゲーション、DVD−R/RW、BD−R/RW、HDD、SD、ホログラフィックメモリ等の追記および書き換え可能な記録媒体を利用した画像記録再生装置、デジタルカメラやカムコーダといった撮像記録再生装置、オーサリング等の画像記録編集装置、動画像(符号化・復号を伴うものも含む)の配信装置等に適用しても構わない。
以上述べたように、本発明の実施の形態によれば、除算を行う際の除数の逆数を、基数のべき乗の逆数で構成された項を含む加減算で表現された単項式もしくは多項式により近似した単位近似解を用意し、被除数に対して乗算することによって除算の近似解を求めることにより、複雑な除算器を必要とせずに、演算時間の短縮や消費電力の軽減といった効果が得られる。また、被除数に対して単位近似解を乗じる際に生じる、基数のべき乗の逆数との乗算をシフト演算に置き換えることにより、シフト演算を含む項の加減算によって除算の近似解を求めることにより、複雑な除算器および乗算器を必要とせずに、演算時間の短縮や消費電力の軽減といった効果が得られる。また、今まで除算近似中間解を求めてから除算近似解を求めていたものを、被除数に対して並列的に演算した後に加減算を行うことで、被除数から直接、除算近似解を求めることができ、処理の依存関係を回避して、より簡易な構成にできるとともに、複雑な除算器を必要とせず、演算時間の短縮や消費電力の軽減といった効果が得られる。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。