被除数データが格納されたレジスタと、前記レジスタは、偶数のビットを有し、前記被除数データを、前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタの上位ビットのデータを取得するシフト演算部を備え、ここで、前記上位ビットのデータは、前記レジスタのビット列を上位側のビット数と下位側のビット数が同一となるように分割した場合の上位側のビットのデータである除算回路。請求項1に記載の除算回路であって、前記上位ビットのデータ1を前記商として算出する第2シフト演算部と、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとり、前記和に基づいて誤差データを決定する誤差決定部とを更に備え、ここで、前記誤差決定部は、前記和が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定し、前記和が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定し、前記誤差データが0の場合には、前記シフト演算部が算出した前記商を選択し、前期誤差データが1の場合には、前記第2シフト演算部が算出した前記商を選択するセレクタを更に備える除算回路。請求項2に記載の除算回路であって、前記上位ビットのデータ2を前記商として算出する第3シフト演算部を更に備え、前記誤差決定部は、更に、前記和が、前記除数データの2倍のデータであれば、前記誤差データを2に決定し、前記セレクタは、更に、前記誤差データが2の場合には、前記第3シフト演算部が算出した前記商を選択する除算回路。請求項1に記載の除算回路であって、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとり、前記和に基づいて誤差データを決定する誤差決定部とを更に備え、ここで、前記誤差決定部は、前記和が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定し、前記和が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定し、前記和が、前記除数データの2倍のデータであれば、前記誤差データを2に決定し、前記シフト演算部は、前記レジスタの前記上位ビットのデータに前記誤差決定部が決定した前記誤差データを加算する除算回路。被除数データが格納された、MSBMostSignificantBitに符号ビットを有するレジスタと、前記レジスタは、前記MSBを除いて偶数のビットを有し、前記被除数データを、前記MSBを除いた前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタから、前記MSBと上位ビットで構成されるビット列を取得するシフト演算部を備え、ここで、前記上位ビットは、前記レジスタの前記符号ビットを除いたビット列を、上位ビットのビット幅と下位ビットのビット幅が同一となるように分割した場合の上位側のビットであり、前記MSBと上位ビットで構成されるビット列で表現されるデータ1を前記商として算出する第2シフト演算部と、前記MSBと上位ビットで構成されるビット列で表現されるデータ2を前記商として算出する第3シフト演算部と、前記MSBと上位ビットで構成されるビット列で表現されるデータ-1を前記商として算出する第4シフト演算部と、前記上位ビットのデータ前記下位ビットのデータ-前記MSBのデータ×2で誤差判定条件値を算出し、前記誤差判定条件値に基づいて誤差データを決定する誤差決定部と、ここで、前記誤差決定部は、前記誤差判定条件値が、負数であれば、前記誤差データを-1に決定し、前記誤差判定条件値が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定し、前記誤差判定条件値が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定し、前期誤差判定条件値が、前記除数データの2倍のデータであれば、前記誤差データを2に決定し、前記誤差データが0の場合には、前記シフト演算部が算出した前記商を選択し、前期誤差データが1の場合には、前記第2シフト演算部が算出した前記商を選択し、前期誤差データが2の場合には、前記第3シフト演算部が算出した前記商を選択し、前期誤差データが-1の場合には、前記第4シフト演算部が算出した前記商を選択するセレクタを備える除算回路。請求項1に記載の除算回路であって、前記上位ビットのデータ1を前記商として算出する第2シフト演算部と、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとる誤差決定部とを更に備え、前記和が0以上、かつ前記除数データ未満の場合には、前記シフト演算部が算出した前記商を選択し、前期和が前記除数データ以上、かつ前記除数データの2倍のデータ未満の場合には、前記第2シフト演算部が算出した前記商を選択するセレクタを更に備える除算回路。請求項6に記載の除算回路であって、前記上位ビットのデータ2を前記商として算出する第3シフト演算部を更に備え、前記セレクタは、更に、前記和が、前記除数データの2倍のデータであれば、前記第3シフト演算部が算出した前記商を選択する除算回路。被除数データが格納された、MSBMostSignificantBitに符号ビットを有するレジスタと、前記レジスタは、前記MSBを除いて偶数のビットを有し、前記被除数データを、前記MSBを除いた前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタから、前記MSBと上位ビットで構成されるビット列を取得するシフト演算部を備え、ここで、前記上位ビットは、前記レジスタの前記符号ビットを除いたビット列を、上位ビットのビット幅と下位ビットのビット幅が同一となるように分割した場合の上位側のビットであり、前記MSBと上位ビットで構成されるビット列で表現されるデータ1を前記商として算出する第2シフト演算部と、前記MSBと上位ビットで構成されるビット列で表現されるデータ2を前記商として算出する第3シフト演算部と、前記MSBと上位ビットで構成されるビット列で表現されるデータ-1を前記商として算出する第4シフト演算部と、前記上位ビットのデータ前記下位ビットのデータ-前記MSBのデータ×2で誤差判定条件値を算出する誤差判定条件値演算部と、前記誤差判定条件値が、負数であれば、前記第4シフト演算部が算出した前記商を選択し、前記誤差判定条件値が、0以上、かつ前記除数データ未満であれば、前記シフト演算部が算出した前記商を選択し、前記誤差判定条件値が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記第2シフト演算部が算出した前記商を選択し、前期誤差判定条件値が、前記除数データの2倍のデータであれば、前記第3シフト演算部が算出した前記商を選択するセレクタを備える除算回路。偶数のビットを有するレジスタに被除数が格納される除算回路において、シフト演算部が、前記被除数データを、前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタの上位ビットのデータを取得するステップを含み、ここで、前記上位ビットのデータは、前記レジスタのビット列を上位側のビット数と下位側のビット数が同一となるように分割した場合の上位側のビットのデータである除算方法。請求項9に記載の除算方法であって、前記第2シフト演算部が、前記上位ビットのデータ1を前記商として算出するステップと、誤差決定部が、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとるステップと、前記誤差決定部が、前記和が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定するステップと、前記誤差決定部が、前記和が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定するステップと、セレクタが、前記誤差データが0の場合には、前記シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期誤差データが1の場合には、前記第2シフト演算部が算出した前記商を選択するステップとを更に含む除算方法。請求項10に記載の除算方法であって、第3シフト演算部が、前記上位ビットのデータ2を前記商として算出するステップと、前記誤差決定部が、前記和が、前記除数データの2倍のデータであれば、前記誤差データを2に決定するステップと、前記セレクタが、前記誤差データが2の場合には、前記第3シフト演算部が算出した前記商を選択するステップとを更に含む除算方法。請求項9に記載の除算方法であって、誤差決定部が、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとるステップと、前記誤差決定部が、前記和が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定するステップと、前記誤差決定部が、前記和が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定するステップと、前記誤差決定部が、前記和が、前記除数データの2倍のデータであれば、前記誤差データを2に決定するステップと、シフト演算部が、前記レジスタの前記上位ビットのデータに前記誤差決定部が決定した前記誤差データを加算するステップとを更に含む除算方法。MSBMostSignificantBitに符号ビットを有し、前記MSBを除いて偶数のビットを有するレジスタに被除数データが格納される除算回路において、シフト演算部が、前記被除数データを、前記MSBを除いた前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタから、前記MSBと上位ビットで構成されるビット列を取得するステップと、ここで、前記上位ビットは、前記レジスタの前記符号ビットを除いたビット列を、上位ビットのビット幅と下位ビットのビット幅が同一となるように分割した場合の上位側のビットであり、第2シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ1を前記商として算出するステップと、第3シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ2を前記商として算出するステップと、第4シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ-1を前記商として算出するステップと、誤差決定部が、前記上位ビットのデータ前記下位ビットのデータ-前記MSBのデータ×2で誤差判定条件値を算出するステップと、前記誤差決定部が、前記誤差判定条件値に基づいて誤差データを決定するステップと、ここで、前記誤差決定部は、前記誤差判定条件値が、負数であれば、前記誤差データを-1に決定し、前記誤差判定条件値が、0以上、かつ前記除数データ未満であれば、前記誤差データを0に決定し、前記誤差判定条件値が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記誤差データを1に決定し、前期誤差判定条件値が、前記除数データの2倍のデータであれば、前記誤差データを2に決定し、セレクタが、前記誤差データが0の場合には、前記シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期誤差データが1の場合には、前記第2シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期誤差データが2の場合には、前記第3シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期誤差データが-1の場合には、前記第4シフト演算部が算出した前記商を選択するステップとを含む除算方法。請求項9に記載の除算方法であって、第2シフト部が、前記上位ビットのデータ1を前記商として算出するステップと、誤差決定部が、前記レジスタの前記上位ビットのデータと、前記レジスタの下位ビットのデータの和をとるステップと、セレクタが、前記和が0以上、かつ前記除数データ未満の場合には、前記シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期和が前記除数データ以上、かつ前記除数データの2倍のデータ未満の場合には、前記第2シフト演算部が算出した前記商を選択するステップとを更に含む除算方法。請求項14に記載の除算方法であって、第3シフト演算部が、前記上位ビットのデータ2を前記商として算出するステップと、前記セレクタが、前記和が、前記除数データの2倍のデータであれば、前記第3シフト演算部が算出した前記商を選択するステップとを更に含む除算方法。MSBMostSignificantBitに符号ビットを有し、前記MSBを除いて偶数のビットを有するレジスタに被除数データが格納される除算回路において、シフト演算部が、前記被除数データを、前記MSBを除いた前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタから、前記MSBと上位ビットで構成されるビット列を取得するステップと、ここで、前記上位ビットは、前記レジスタの前記符号ビットを除いたビット列を、上位ビットのビット幅と下位ビットのビット幅が同一となるように分割した場合の上位側のビットであり、第2シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ1を前記商として算出するステップと、第3シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ2を前記商として算出するステップと、第4シフト演算部が、前記MSBと上位ビットで構成されるビット列で表現されるデータ-1を前記商として算出するステップと、誤差判定条件値演算部が、前記上位ビットのデータ前記下位ビットのデータ-前記MSBのデータ×2で誤差判定条件値を算出するステップと、セレクタが、前記誤差判定条件値が、負数であれば、前記第4シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前記誤差判定条件値が、0以上、かつ前記除数データ未満であれば、前記シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前記誤差判定条件値が、前記除数データ以上、かつ前記除数データの2倍のデータ未満であれば、前記第2シフト演算部が算出した前記商を選択するステップと、前記セレクタが、前期誤差判定条件値が、前記除数データの2倍のデータであれば、前記第3シフト演算部が算出した前記商を選択するステップとを含む除算方法。本発明の目的は、除数値が、被除数を格納するレジスタのビット幅の半分で表現可能な最大の数である除算器の回路規模を削減することにある。本発明の除算回路は、偶数のビットを有する被除数データが格納されたレジスタと、前記被除数データを、前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタのビット列を上位側のビット数と下位側のビット数が同一となるように分割した場合の上位ビットのデータを取得するシフト演算部を備える。本発明の除算方法は、偶数のビットを有するレジスタに被除数が格納される除算回路において実施される。シフト演算部が、前記被除数データを、前記レジスタの半分のビット数で表現できる最大数の除数データで除算した商として、前記レジスタのビット列を上位側のビット数と下位側のビット数が同一となるように分割した場合の上位ビットのデータを取得するステップを含む。本発明によれば、除数値が、被除数を格納するレジスタのビット幅の半分で表現可能な最大の数である除算器の回路規模を削減することができる。添付図面を参照して、本発明の実施形態による除算回路を以下に説明する。本発明の実施形態における除算回路は、被除数データを格納するレジスタのビット幅に依存して除数データが決定される。図18は、本発明の実施形態における除数データと被除数データの関係である。本発明の実施形態における除算回路の産業上の利用可能性については後述する。第1実施形態[構成の説明]はじめに、本発明の第1実施形態における除算回路の構成の説明を行う。図6は、本発明の第1実施形態における除算回路の構成を示すブロック図である。本発明の第1実施形態における除算回路は、レジスタ1、シフト演算部2及びレジスタ3を備える。レジスタ1とシフト演算部2は、8ビット分の信号線で接続されている。シフト演算部2とレジスタ3は、9ビット分の信号線で接続されている。図6では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。レジスタ1は、偶数のビット幅を有し、被除数データが格納される。シフト演算部2は、レジスタ1の被除数データを、レジスタ1のビット幅の半分で表現可能な最大の数の除数データで除算した商を、レジスタ1の上位ビットのデータを取得することで算出する。上述のレジスタ1の上位ビットとは、レジスタ1を上位ビットのビット幅と下位ビットのビット幅が同一になるように、上位ビット及び下位ビットに分割した場合の上位ビットのデータ被除数データをレジスタ1の半分のビット数だけ右シフトした演算結果と同一のデータである。例えば、レジスタ1が16ビットであれば、レジスタ1のビット幅の半分で表現可能な最大の数は、8’hFFとなる。ここで、8’hFFの8’は、8ビットであることを示し、hFFは、16進数で値がFFであることを示す。すなわち、10進数では、除数データは255となる。シフト演算部2は、レジスタ1の被除数データを8ビット右シフトした値を、レジスタ1の上位ビットを取得することにより、上述の商を求める。レジスタ3は、シフト演算部2による演算結果が格納される。[動作方法の説明]次に、第1実施形態の除算回路における除算方法の説明を行う。図7は、本発明の第1実施形態の除算回路における除算方法のフローチャートである。説明を容易にするため、被除数データが格納されるレジスタ1のビット幅が16ビットである場合について説明する。なお、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。以下の説明は、被除数データが格納されるレジスタ1のビット幅が偶数であれば、同様にして成り立つ。ステップS1レジスタ1に16ビットで表現可能な被除数が格納される。除算回路の処理は、ステップS2へ進む。ステップS2まず、レジスタ1の説明に使用する記号について説明する。X[15:0]は、レジスタ1の0番目のビットLSBから、レジスタ1の15番目のビットMSBまでのビット範囲を示す。同様に、X[15:8]は、レジスタ1の8番目のビットから、レジスタ1の15番目のビットまでのビット範囲を示し、X[7:0]は、レジスタ1の0番目のビットから、レジスタ1の7番目のビットまでのビット範囲を示す。シフト演算部2は、X[15:8]のデータを8ビットのデータとして、X[15:0]のデータから独立して読み込むことで、X[15:0]のデータを8ビットシフトした演算結果を求める。この演算結果は、被除数データを256で除算した場合の商であるため、誤差が生じる。除算回路の処理は、ステップS3へ進む。ステップS3シフト演算部2は、ステップS2の演算結果をレジスタ3に格納し、除算回路の処理は終了する。本発明の第1実施形態によれば、レジスタ1の半分のビット数で表現できる最大数の除数データで除算した商を求める場合に、レジスタ1の上位ビットのデータを取得するシフト演算部2によって商を求めることで、誤差は生じるが回路規模を抑えた除算回路を得ることができる。除算の誤差よりも、とにかく回路規模の縮小が求められる場面において、本発明の第1実施形態は有用である。第2実施形態[構成の説明]はじめに、本発明の第2実施形態における除算回路の構成の説明を行う。図8は、本発明の第2実施形態における除算回路の構成を示すブロック図である。本発明の第2実施態における除算回路は、レジスタ1、シフト演算部2、レジスタ3及び誤差決定部4を備える。レジスタ1の上位8ビットと、シフト演算部2及び誤差決定部4は、8ビット分の信号線で接続されている。レジスタ1の下位8ビットと誤差決定部4は、8ビット分の信号線で接続されている。誤差決定部4とシフト演算部2は、2ビット分の信号線で接続されている。シフト演算部2とレジスタ3は、9ビット分の信号線で接続されている。図8では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。レジスタ1及びレジスタ3については、第1実施形態と同様であるため、説明を省略する。シフト演算部2は、第1実施形態と同様にして、レジスタ1の被除数データを、レジスタ1のビット幅の半分で表現可能な最大の数の除数データで除算した商を、レジスタ1の上位ビットのデータを取得することで算出する。シフト演算部2は、上述の商に対して、誤差決定部4からシフト演算部2へ入力される誤差0、1、2のいずれかを加算する。誤差決定部4は、レジスタ1を上位ビットのビット幅と下位ビットのビット幅が同一になるように、上位ビット及び下位ビットに分割した場合の上位ビットのデータ被除数データをレジスタ1の半分のビット数だけ右シフトした演算結果と同一のデータと、被除数データをレジスタ1の半分のビット数で表現できる最大値で除算した商の誤差を、被除数データに基づいて決定する。[動作方法の説明]次に、本発明の第2実施形態における除算回路において、除算方法の説明を行う。図9は、本発明の第2実施形態の除算回路における除算方法のフローチャートである。説明を容易にするため、被除数データが格納されるレジスタ1のビット幅が16ビットである場合について説明する。なお、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。以下の説明は、被除数データが格納されるレジスタ1のビット幅が偶数であれば、同様に成り立つ。ステップS21レジスタ1に16ビットで表現可能な被除数が格納される。除算回路の処理は、ステップS22へ進む。ステップS22誤差決定部4は、レジスタ1を上位ビットのビット幅と下位ビットのビット幅が同一になるように、上位ビット及び下位ビットに分割する。具体的には、16ビットのレジスタ1をX[15:0]で示すと、上位ビットは、X[15:8]となり、下位ビットはX[7:0]となる。誤差決定部4は、レジスタ1の上位ビットであるX[15:8]のデータ被除数データをレジスタ1の半分のビット数だけ右シフトした演算結果と同一のデータと、被除数データをレジスタ1の半分のビット数で表現できる最大値で除算した商の誤差を、被除数データに基づいて決定する。ここでは、被除数データを格納するレジスタ1のビット幅を16ビットとしているため、被除数データをレジスタ1の半分のビット数で表現できる最大値である除数データは、8’hFFとなる。ここで、8’hFFの8’は、8ビットであることを示し、hFFは、16進数で値がFFであることを示す。すなわち、10進数では、除数データは255となる。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、0以上、かつ除数データ255未満であれば、誤差データを0に決定する。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、除数データ255以上、かつ除数データの2倍のデータ510未満であれば、誤差データを1に決定する。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、前記除数データの2倍のデータ510であれば、誤差データを2に決定する。誤差決定部4は、決定した誤差データをシフト演算部2に出力する。上記のように誤差データを決定することができる理由については、後述する。除算回路の処理は、ステップS23へ進む。ステップS23シフト演算部2は、X[15:8]のデータを8ビットのデータとして、X[15:0]のデータから独立して読み込むことで、X[15:0]のデータを8ビットシフトした演算結果を求める。除算回路の処理は、ステップS24へ進む。ステップS24シフト演算部2は、ステップS3の演算結果に対して、誤差決定部4によって決定された誤差データ0、1、2のいずれかを加算する。除算回路の処理は、ステップS25へ進む。ステップS25シフト演算部2は、ステップS24の演算結果をレジスタ3に格納し、除算回路の処理は終了する。本発明の第2実施形態は、第1実施形態のシフト演算部1を、除算をシフト演算で代用することによって生じる商の誤差を補正するように改良したものである。本発明の第2実施形態によれば、第1実施形態の除算回路よりも、回路規模は増加するが、除算をシフト演算で代用することによって生じる商の誤差をなくすことができる。ここで、誤差決定部4が、ステップS22の方法で誤差を算出できる理由について説明する。説明を容易にするため、被除数データが格納されるレジスタ1のビット幅が16ビットである場合について説明する。以下の説明は、被除数データが格納されるレジスタ1のビット幅が偶数であれば、同様にして成り立つ。右シフト演算による演算結果と、除算結果の誤差をT01とすると、次式が成り立つ。数3T01=X[15:0]÷8’hFF-X[15:0]>>8ここで、X[15:0]>>8は、レジスタ1の被除数データを8ビット右シフトすることを示す。8’hFFの8’は、8ビットであることを示し、hFFは、16進数のFFを示す。X[15:0]は、上位ビットであるX[15:8]のデータと、下位ビットであるX[7:0]のデータを用いて、次式で表すことができる。数4X[15:0]=X[15:8]×9’h100X[7:0]また、右シフト演算ではあふれビットは切り捨てられるため、X[15:0]>>8は、次式で表すことができる。数5X[15:0]>>8=X[15:8]数3に数4と数5を代入すると、次式が成り立つ。数6T01=X[15:8]×9’h100X[7:0]÷8’hFF-X[15:8]数6の両辺に8’hFFを乗算すると、次式が成り立つ。数7T01×8’hFF=X[15:8]×9’h100X[7:0]-X[15:8]×8’hFF更に、数7を整理すると、次式が成り立つ。数8T01=X[15:8]X[7:0]÷8’hFFここで、X[15:8]X[7:0]に対して、次式が成り立つ。数99’h000<=X[15:8]X[7:0]<=9’h1FEしたがって、数8及び数9により、T01の値は、X[15:8]X[7:0]の範囲に基づいて、以下の3通りに決定できる。すなわち、数109’h000<=X[15:8]X[7:0]<9’h0FFであれば、T01は、0に決定できる。数119’h0FF<=X[15:8]X[7:0]<9’h1FEであれば、T01は、1に決定できる。数129’h1FE=X[15:8]X[7:0]であれば、T01は、2に決定できる。以上が、ステップS22の方法で誤差を算出できる理由の説明である。図17は、本発明の実施形態における誤差決定部4の回路図の例である。第3実施形態[構成の説明]はじめに、本発明の第3実施形態における除算回路の構成の説明を行う。図10は、本発明の第3実施形態における除算回路の構成を示すブロック図である。本発明の第3実施形態における除算回路は、レジスタ1、シフト演算部2、レジスタ3、誤差決定部4、シフト演算部5、シフト演算部6及びセレクタ7を備える。レジスタ1の上位8ビットと、シフト演算部2、シフト演算部5、シフト演算部6及び誤差決定部4は、8ビット分の信号線で接続されている。レジスタ1の下位8ビットと誤差決定部4は、8ビット分の信号線で接続されている。シフト演算部2とセレクタ7は、9ビット分の信号線で接続されている。シフト演算部5とセレクタ7は、9ビット分の信号線で接続されている。シフト演算部6とセレクタ7は、9ビット分の信号線で接続されている。誤差決定部4とセレクタ7は、2ビット分の信号線で接続されている。セレクタ7とレジスタ3は、9ビット分の信号線で接続されている。図10では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。レジスタ1、レジスタ3及び誤差決定部4については、第2実施形態と同様であるため、説明を省略する。シフト演算部2は、レジスタ1の上述した上位ビットのデータを商として算出する。シフト演算部5は、レジスタ1の上述した上位ビットのデータ1を商として算出する。シフト演算部6は、レジスタ1の上述した上位ビットのデータ2を商として算出する。セレクタ7は、誤差決定部4で決定した誤差データに基づいて、シフト演算部2、シフト演算部5又はシフト演算部6の演算結果から、いずれか1つの演算結果を選択する。[動作方法の説明]次に、本発明の実施形態3における除算回路において、除算方法の説明を行う。図11は、本発明の第3実施形態の除算回路における除算方法のフローチャートである。説明を容易にするため、被除数データが格納されるレジスタ1のビット幅が16ビットである場合について説明する。なお、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。以下の説明は、被除数データが格納されるレジスタ1のビット幅が偶数であれば、同様に成り立つ。ステップS31レジスタ1に16ビットで表現可能な被除数が格納される。除算回路の処理は、ステップS32へ進む。ステップS32誤差決定部4は、レジスタ1の上位ビットであるX[15:8]のデータ被除数データをレジスタ1の半分のビット数だけ右シフトした演算結果と同一のデータと、被除数データをレジスタ1の半分のビット数で表現できる最大値で除算した商の誤差を、被除数データに基づいて決定する。ここでは、被除数データを格納するレジスタ1のビット幅を16ビットとしているため、被除数データをレジスタ1の半分のビット数で表現できる最大値である除数データは、8’hFFとなる。ここで、8’hFFの8’は、8ビットであることを示し、hFFは、16進数で値がFFであることを示す。すなわち、10進数では、除数データは255となる。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、0以上、かつ除数データ255未満であれば、誤差データを0に決定する。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、除数データ255以上、かつ除数データの2倍のデータ510未満であれば、誤差データを1に決定する。誤差決定部4は、X[15:8]のデータと、X[7:0]のデータの和が、前記除数データの2倍のデータ510であれば、誤差データを2に決定する。上記のように誤差データを決定する理由については、前述した通りである。除算回路の処理は、ステップS33へ進む。ステップS33シフト演算部2は、X[15:8]のデータを8ビットのデータとして、X[15:0]のデータから独立して読み込むことで、X[15:0]のデータを8ビットシフトした演算結果を求める。シフト演算部5は、X[15:8]のデータを8ビットのデータとして、X[15:0]のデータから独立して読み込むことで、X[15:0]のデータを8ビットシフトした演算結果を求め、更に、この演算結果に1を加算する。シフト演算部6は、X[15:8]のデータを8ビットのデータとして、X[15:0]のデータから独立して読み込むことで、X[15:0]のデータを8ビットシフトした演算結果を求め、更に、この演算結果に2を加算する。除算回路の処理は、ステップS34へ進む。ステップS34セレクタ7は、誤差データが0であるかどうかを確認する。除算回路の処理は、誤差データが0である場合には、ステップS35へ進み、誤差データが0でない場合には、ステップS36へ進む。ステップS35セレクタ7は、レジスタ1に格納された被除数データを、レジスタ1の半分のビット数で表現できる最大値である除数データで除算した商として、ステップS33でシフト演算部2が算出した演算結果を選択する。除算回路の処理は、ステップS39へ進む。ステップS36セレクタ7は、誤差データが1であるかどうかを確認する。除算回路の処理は、誤差データが1である場合には、ステップS37へ進み、誤差データが1でない場合には、ステップS38へ進む。ステップS37セレクタ7は、レジスタ1に格納された被除数データを、レジスタ1の半分のビット数で表現できる最大値である除数データで除算した商として、ステップS33でシフト演算部5が算出した演算結果を選択する。除算回路の処理は、ステップS39へ進む。ステップS38セレクタ7は、レジスタ1に格納された被除数データを、レジスタ1の半分のビット数で表現できる最大値である除数データで除算した商として、ステップS33でシフト演算部6が算出した演算結果を選択する。除算回路の処理は、ステップS39へ進む。ステップS39セレクタ7は、ステップS35、ステップS37又はステップS38のいずれか1つのステップで選択した演算結果を、レジスタ3に格納し、除算回路の処理は終了する。本発明の第3実施形態の特徴は、本発明の第2実施形態のシフト演算部2の誤差補正処理を、シフト演算部2、シフト演算部5、シフト演算部6に分割し、セレクタにより、商を選択させているところである。第4実施形態[構成の説明]本発明の第3実施形態の一部を変更した例である第4実施形態について説明する。図12は、本発明の第4実施形態における除算回路の構成を示すブロック図である。図12では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。本発明の第3実施形態との違いは、シフト演算部6がないことである。その他の構成と動作方法の説明については、本発明の第3実施形態と同様であるため、詳細な説明は省略する。被除数データが数12を満たすことがない場合例えば、レジスタ1が16ビットである場合、レジスタ1に格納されるデータが‘hFFFFとならない場合には、誤差が2の場合の演算処理を省略することができるため、第3実施形態ではなく、第4実施形態を適用することができる。第5実施形態[構成の説明]はじめに、本発明の第5実施形態における除算回路の構成の説明を行う。図13は、本発明の第5実施形態における除算回路の構成を示すブロック図である。本発明の第5実施形態における除算回路は、レジスタ1、シフト演算部2、レジスタ3、誤差決定部4、シフト演算部5、シフト演算部6、セレクタ7及びシフト演算部8を備える。レジスタ1の上位9ビットと、シフト演算部2、シフト演算部5、シフト演算部6、誤差決定部4及びシフト演算部8は、9ビット分の信号線で接続されている。レジスタ1の下位8ビットと誤差決定部4は、8ビット分の信号線で接続されている。シフト演算部2とセレクタ7は、9ビット分の信号線で接続されている。シフト演算部5とセレクタ7は、9ビット分の信号線で接続されている。シフト演算部6とセレクタ7は、9ビット分の信号線で接続されている。シフト演算部8とセレクタ7は、9ビット分の信号線で接続されている。誤差決定部4とセレクタ7は、2ビット分の信号線で接続されている。セレクタ7とレジスタ3は、10ビット分の信号線で接続されている。図13では、被除数データが格納されるレジスタ1のビット幅を17ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、符号ビットを除いて偶数であればよく、17ビットに限られない。レジスタ1には、負数も考慮した被除数データが格納される。レジスタ1のMSBは、符号ビットに使用され、MSBを除いたレジスタ1のビット数は、偶数である。レジスタ3には、セレクタ7により選択された商が格納される。シフト演算部2は、レジスタ1の上位9ビットのデータを商として算出する。シフト演算部5は、レジスタ1の上位9ビットのデータ1を商として算出する。シフト演算部6は、レジスタ1の上位9ビットのデータ2を商として算出する。シフト演算部8は、レジスタ1の上位9ビットのデータ-1を商として算出する。誤差決定部4は、レジスタ1の上位9ビットの値レジスタ1の被除数データを8ビットだけ右シフトした演算結果と同一のデータと、レジスタ1の下位8ビットで表現できる最大値で除算した商の誤差を、被除数データに基づいて決定する。セレクタ7は、誤差決定部4で決定した誤差データに基づいて、シフト演算部2、シフト演算部5、シフト演算部6又はシフト演算部8の演算結果から、いずれか1つの演算結果を選択する。[動作方法の説明]本実施形態の動作方法は、被除数データに負数も考慮している点を除いては、第3実施形態と同様である。被除数データに負数も考慮しているため、誤差決定部4における誤差を決定するための条件式が変更されている点と、シフト演算部8が追加されている点が異なる。その他の動作方法については、第3実施形態と同様であるため、詳細な説明については、省略する。まず、誤差決定部4で誤差を決定するための条件式について説明する。右シフト演算による演算結果と、除算結果の誤差をT01とすると、次式が成り立つ。数13T01=X[16:0]÷8’hFF-X[16:0]>>8数13は、数6を導いた場合と同様にして、次式で表すことができる。数14T01=X[16]×17’h10000X[15:8]×9’h100X[7:0]÷8’hFF-X[16]×9’h100X[15:8]数14の両辺に8’hFFを乗算すると、次式が成り立つ。数15T01×8’hFF=X[16]×17’h10000X[15:8]×9’h100X[7:0]-X[16]×9’h100X[15:8]×8’hFFここで、X[16]は、0又は1であるため、次式が成り立つ。数16X[16]×17’h10000-X[16]×9’h100×8’hFF=X[16]×9‘h100したがって、数8を導いた場合と同様にして、次の数17を得る。数17T01×8’hFF=X[16]×9’h100X[15:8]X[7:0]ここで、X[16]×9’h100が、0又は256であること、及びX[15:8]X[7:0]のとりうる範囲を考慮すると、被除数レジスタが正数の場合X[16]=0には、数10~数12の条件式で、誤差T01を0~2に決定することができる。また、被除数レジスタが負数の場合X[16]=1には、以下のように場合分けすることで、誤差T01を決定することができる。数18X[15:8]X[7:0]<=10’h001であれば、T01は、-1に決定できる。数1910’h001<X[15:8]X[7:0]<=10’h100であれば、T01は、0に決定できる。数2010’h100<X[15:8]X[7:0]<=10’h1FFであれば、T01は、1に決定できる。数2110’h1FF<X[15:8]X[7:0]<=10’h2FEであれば、T01は、2に決定できる。被除数データが、正数又は負数に関係なく誤差データを決定する条件式にするため、符号ビットX[16]を利用すると、数10~数12及び数18~数21を以下の4つの条件式にまとめることができる。数22X[15:8]X[7:0]-X[16]×2<10’h000であれば、T01は、-1に決定できる。数2310’h000<=X[15:8]X[7:0]-X[16]×2<10’h0FFであれば、T01は、0に決定できる。数2410’h0FF<=X[15:8]X[7:0]-X[16]×2<10’h1FEであれば、T01は、1に決定できる。数2510’h1FE=X[15:8]X[7:0]-X[16]×2であれば、T01は、2に決定できる。本実施形態の誤差決定部4においては、上記の数22~数25を利用して、誤差を決定することができる。シフト演算部8は、被除数が正数の場合には、発生しなかった誤差T01=-1の場合についての誤差を補正するための演算部である。以上のように、本実施形態によれば、被除数データが負数である場合であっても、正しい除算結果を得ることができる。第6実施形態本発明の第3実施形態の一部を変更した例である第6実施形態について説明する。図14は、本発明の第6実施形態における除算回路の構成を示すブロック図である。図14では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。本発明の第3実施形態との違いは、誤差決定部4が、誤差判定条件値演算部9に変更されている点と、セレクタ7の演算結果選択処理が異なる。その他の構成と動作方法の説明については、本発明の第3実施形態と同様であるため、詳細な説明は省略する。誤差判定条件値演算部9は、X[15:8]のデータと、X[7:0]のデータの和を算出し、セレクタ7に出力する。セレクタ7は、誤差判定条件値演算部9で算出されたX[15:8]のデータと、X[7:0]のデータの和に基づいて、シフト演算部2、シフト演算部5又はシフト演算部6のいずれか1つの演算結果を選択し、レジスタ3へ出力する。本発明の第6実施形態とは、誤差判定条件値演算部9で誤差データ0、1又は2を算出しない点、セレクタ7では、誤差判定条件値演算部9で算出されたX[15:8]のデータと、X[7:0]のデータの和を商の選択条件に利用する点が異なる。第7実施形態[構成の説明]本発明の第6実施形態の一部を変更した例である第7実施形態について説明する。図15は、本発明の第7実施形態における除算回路の構成を示すブロック図である。図15では、被除数データが格納されるレジスタ1のビット幅を16ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、偶数であればよく、16ビットに限られない。本発明の第6実施形態との違いは、シフト演算部6がないことである。その他の構成と動作方法の説明については、本発明の第6実施形態と同様であるため、詳細な説明は省略する。被除数データが数12を満たすことがない場合例えば、レジスタ1が16ビットである場合、レジスタ1に格納されるデータが‘hFFFFとならない場合には、誤差が2の場合の演算処理を省略することができるため、第6実施形態ではなく、第7実施形態を適用することができる。第8実施形態[構成の説明]本発明の第5実施形態の一部を変更した例である第8実施形態について説明する。図16は、本発明の第8実施形態における除算回路の構成を示すブロック図である。図16では、被除数データが格納されるレジスタ1のビット幅を17ビットとしているが、被除数データが格納されるレジスタ1のビット幅は、符号ビットを除いて偶数であればよく、17ビットに限られない。本発明の第5実施形態との違いは、誤差決定部4が、誤差判定条件値演算部9に変更されている点と、セレクタ7の演算結果選択処理が異なる。その他の構成と動作方法の説明については、本発明の第5実施形態と同様であるため、詳細な説明は省略する。誤差判定条件値演算部9は、X[15:8]X[7:0]-X[16]×2を求め、セレクタ7に出力する。セレクタ7は、誤差判定条件値演算部9で算出されたX[15:8]X[7:0]-X[16]×2に基づいて、シフト演算部2、シフト演算部5、シフト演算部6又はシフト演算部8のいずれか1つの演算結果を選択し、レジスタ3へ出力する。本発明の第5実施形態とは、誤差判定条件値演算部9で誤差データ-1、0、1又は2を算出しない点、セレクタ7では、誤差判定条件値演算部9で算出されたX[15:8]X[7:0]-X[16]×2のデータを商の選択条件に利用する点が異なる。次に、本実施形態における除算回路の規模について説明する。図19は、本発明の実施形態における除算回路の規模の概算見積もり結果である。図19では、回路規模の見積もりを素子数で行っている。まず、本発明の第1実施形態における回路規模について説明する。レジスタ1については、16ビットのビット幅を有するが、1ビットを8素子として、128素子とした。シフト演算部2については、レジスタ1の上位8ビットを取得することで実現できるため、0素子とした。レジスタ3については、9ビットのビット幅を有するため、72素子とした。したがって、第1実施形態における回路規模は、合計で200素子である。次に、本発明の第2実施形態における回路規模について説明する。レジスタ1については、16ビットのビット幅を有するが、1ビットを8素子として、128素子とした。シフト演算部2については、論理回路として、140素子とした。レジスタ3については、9ビットのビット幅を有するため、72素子とした。誤差決定部4については、論理回路として、104素子とした。したがって、第2実施形態における回路規模は、合計で444素子である。次に、本発明の第3実施形態における回路規模について説明する。レジスタ1については、16ビットのビット幅を有するが、1ビットを8素子として、128素子とした。レジスタ1の上位8ビットを取得することで実現できるため、0素子とした。レジスタ3については、9ビットのビット幅を有するため、72素子とした。誤差決定部4については、論理回路として、104素子とした。シフト演算部5、シフト演算部6については、論理回路として、56素子とした。セレクタ7については、論理回路として、320素子とした。したがって、第3実施形態における回路規模は、合計で736素子である。次に、本発明の第4実施形態における回路規模について説明する。第4実施形態については、第3実施形態のシフト演算部6を省いたものである。したがって、第4実施形態における回路規模は、合計で680素子である。次に、本発明の第5実施形態における回路規模について説明する。第5実施形態については、第3実施形態にレジスタ1の1ビットとレジスタ3の1ビットとシフト演算部8とを追加したものである。したがって、第5実施形態における回路規模は、合計で808素子である。次に、本発明の第6実施形態における回路規模について説明する。第6実施形態については、第3実施形態の構成を変更したものである。誤差決定部4が、誤差判定条件値演算部9に変更されている。誤差判定条件値演算部9については、論理回路として、64素子とした。また、セレクタ7については、上記の変更により、論理回路として、360素子としている。したがって、第6実施形態における回路規模は、合計で736素子である。次に、本発明の第7実施形態における回路規模について説明する。第7実施形態については、第4実施形態の構成を変更したものである。誤差決定部4が、誤差判定条件値演算部9に変更されている。誤差判定条件値演算部9については、論理回路として、64素子とした。また、セレクタ7については、上記の変更により、論理回路として、360素子としている。したがって、第7実施形態における回路規模は、合計で680素子である。最後に、本発明の第8実施形態における回路規模について説明する。第8実施形態については、第5実施形態の構成を変更したものである。誤差決定部4が、誤差判定条件値演算部9に変更されている。誤差判定条件値演算部9については、論理回路として、64素子とした。また、セレクタ7については、上記の変更により、論理回路として、360素子としている。したがって、第8実施形態における回路規模は、合計で808素子である。以上のように、本発明の実施形態における除算回路の回路規模は、上記のいずれの実施形態においても、従来の回復型除算器よりも削減されている。これにより、従来の一般的な除算器に比べて、消費電力削減の効果がある。また、回路規模が削減されることにより、被除数データが格納されるレジスタ1の入力から、レジスタ3への商の出力までの論理段数も削減されているため、一般的な除算器に比べて、処理速度も向上している。次に、被除数データが格納されるレジスタ1のビット幅を増加させた場合の、除算回路の回路規模の増加率について説明する。本発明の実施形態における除算回路の回路規模の増加率は、被除数データを格納するレジスタ1のビット幅増加に伴い、ビット幅増加割合の1乗倍である。すなわち、レジスタ1のビット幅がnビットである場合の本発明の実施形態の除算回路の回路規模をS3とすると、被除数データを格納するレジスタ1のビット幅を、nビットからmビットへ増加させた場合における本実施形態の除算回路の回路規模S4は、次式で表すことができる。数26S4=S3×m/nこれは数2で示した従来の回復型除算器における2乗倍と比較すると格段に改善されていることになる。以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。