JPH04504478A - 整数割り算回路 - Google Patents
整数割り算回路Info
- Publication number
- JPH04504478A JPH04504478A JP50613090A JP50613090A JPH04504478A JP H04504478 A JPH04504478 A JP H04504478A JP 50613090 A JP50613090 A JP 50613090A JP 50613090 A JP50613090 A JP 50613090A JP H04504478 A JPH04504478 A JP H04504478A
- Authority
- JP
- Japan
- Prior art keywords
- denominator
- signal
- scaled
- bits
- numerator
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/535—Dividing only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/535—Indexing scheme relating to groups G06F7/535 - G06F7/5375
- G06F2207/5354—Using table lookup, e.g. for digit selection in division by digit recurrence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/535—Indexing scheme relating to groups G06F7/535 - G06F7/5375
- G06F2207/5356—Via reciprocal, i.e. calculate reciprocal only, or calculate reciprocal first and then the quotient from the reciprocal and the numerator
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。
Description
【発明の詳細な説明】
整数割り算回路
技術分野
この発明は一般に信号処理の分野に関係し、かつより詳細には二進整数入力に関
して割り算動作を行う回路に関係する。
背景技術
デジタル信号処理の応用において、特定の機能を実行するためにデジタル回路の
ハードウェアで整数の割り算機能を実現することが望まれる。典型的な応用では
、除算器(divider)はAM受信機の一部に含まれている。
受信機内部のデジタル−アナログ変換器は受信信号と及びあるレートの基準信号
をサンプリングし、かつ除算器は基準信号によって受信入力信号を除算すること
によって正規化動作を行う。除算動作は連続(実時間二real time)で
あり、かつサンプリング期間の一部分内で実行される。受信信号は除算器の分子
人力Nを構成し、かつ基準信号は分母人力りを構成する。しかしながら割り算動
作の結果は正確な値ではないかも知れなく、かつある誤りがその結果となる商の
中に存在するかも知れない。
第1図は伝統的な4ビツトX4ビツトの除算回路を示し、それは、繰り返し引き
算を使用して、X3からxOのビットで表わされる4デジツトの被除数Xを、Y
3からYOのビットで表される除数Yで除算する。被除数Xは、制御人力15を
有する3ステートのバッファデバイス6θのバッファ61.62.63、及び6
4を介してレジスタ90にロードされる。制御人力15は、ブロック80に示さ
れる回路と共同して、割り算動作の初期段階においてのみ被除数Xがレジスタ9
0にロードされるのを許す。レジスタ90は4ビツトの全加算器20の第一人力
AOlAl、A2、及びA3に結合した各々の出力QO5Q1、Q2、及びQ3
を有する4個のDタイプのフリップフロップ11.12.13、及び14から構
成される。除数入力Y3からYOは反転デバイス30の反転ゲート31.32.
33、及び34に結合され、かつ除数Yの1の補数を生成する。反転デバイス3
0の出力は加算器20の第二人力BOlBl、B2、及びB3に結合される。A
NDゲート40の出力は、レジスタ90のクロック入力に結合され、一方でAN
Dゲート40の入力は加算器20のキャリイ出力C2及びクロック信号25に結
合される。加算器20のキャリイ入力C1は二個の完全なY入力を生成するため
に論理1に設定される。ANDゲート40の出力はz3からzOで表される出力
2を有する4ビツトカウンタ50に結合される。カウンタ50は、被除数Xがレ
ジスタ90にロードされた後で、0の初期設定を有する。
X>Yと仮定すると、C2出力は初期には1に設定されるであろう、そしてそれ
ゆえにANDゲート40がイネーブルされる。差X−Yが加算器20の出力S3
、B2、Sl及びSOに現れる。クロックスイッチ70を閉じた後で、第一のク
ロックパルスは差X−Yをレジスタにロードし、かつカウンタ50を一つ進めも
するであろう。加算器20の数値出力は、[(X−Y)−Y] 、または(X
−2Y)に等しいであろう。もしC2が今なお論理1であるならば、ANDゲー
ト40はイネーブルされ、かつ第二のクロックパルスがX−2Yをレジスタにロ
ードし、かっカウンタを第二段階に進めるであろう。もしn個のクロックパルス
の後で、残りがYよりも少な(なれば、C2は論理0になる。
ANDゲート40は今やディスエーブルされ、かつカウンタ50が止まるであろ
う。それゆえに商Zはカウンタから読み出される。
い(つかのデジタル信号処理回路では、1クロックサイクル以内に割り算動作を
実行することが必要である。除算回路10はシーケンシャルモードで作動するゆ
えに、割り真速度が重大であるアプリケーションには望ましくない。
更に二個の整数の二進数のデジタル割り算動作では、整数の商を提供するために
その結果は丸められる。しかしながら信号の振幅を正規化するために、広範囲の
入力振幅にわたって比較的一様な誤りを有することが望ましい。
除算器10のようなシーケンシャル回路のもう一つの欠点は、それと等価な組合
せ論理回路よりも多くの電力を消費することである。これは主に、除算器10の
マルチクロッキングの性質による。
発明の概要
従って、本発明の目的は、1クロツクサイクル内で割り算動作を実行できる除算
回路を提供することである。
本発明の他の目的は、広範囲の入力にわたって制御された誤りを有する除算回路
を提供することである。
要するに本発明によれば、商量力を生成するための除算回路が、分子入力及び分
母入力を有するものとして提供される。比例係数(scale factor)
は分母入力の大きさから得られる。比例係数は予め決められた範囲内で、一定の
割合で尺度変更された(scaled)分母を生成するために分母の大きさを変
える。尺度変更された分母出力は、尺度変更された分母の逆数を生成するために
、尺度変更された分母を逆にするための手段に結合される。
二つの入力を乗じる手段は、分子入力、及び尺度変更された商を生成するために
尺度変更された分母の逆数に結合される。
図面の簡単な説明
第1図は、従来技術の4ビツトx4ビツトの除算回路の回路図である。
第2図は、本発明に係わる除算回路の概略的ブロック図である。
第3図は、好ましい比例係数回路の回路図である。
第4図は、好ましい分母の尺度変更回路の回路図である。
第5図は、知られている送信ゲートを構成するスイッチコラムの回路図である。
第6図は、好ましい分子の尺度変更回路の回路図である。
第7図は、64バイトの読み出し専用メモリ(ROM)の図である。
第8図は、組合せ変更されたブース8ビツトX8ビツト乗算器の図である。
好ましい実施例の詳細な説明
第2図を参照すると、整数の除算器100のブロック図が示される。除算器10
0は整数の分子人力N及び整数の分母人力りを受け取り、かつ整数の高出力Qを
生成する。
高出力Qは分子Nを分母りで割った結果を表す。分母り及び分子Nは予め決めら
れた範囲に限定される。除算器100の好ましい実施例では、分母りはDOから
D12迄のビットで表される13ビツトの二進数であり、かつ分子はビットNo
からN15で表される16ビツトの二進数である。
分母りは正の二進数であり、かつ分子Nは記号付きの二進数である。本発明は負
の分母の存在を検出し、かつ分子と分母の両方の符号を反転することによって、
符号付きの分母を扱うように適応することができる。分母りは64から8.19
1迄の範囲内にあるように選択され、かつ分子は−16384から+16383
迄の範囲内にあるように選択された。これらの範囲は任意であって、かつ本発明
は任意の所望の範囲で機能させることができる。
比例係数には分母りの大きさに基づいてブロック400で計算される。このブロ
ックの実現及び動作は第3図と関連して議論される。比例係数にはに1からに7
迄によって表される値であって、それは分母り及び分子Nを縮尺するために使用
される。尺度変更は2の累乗によって行われるが、その理由は2の累乗による尺
度変更が二進数をシフトすることによって成し遂げられるからである。従ってブ
ロック400は比例係数を提供するための手段を構成し、そこでは比例係数が分
母の大きさから導き出される。
分母りはブロック200で2の累乗で尺度変更され、そのブロック200の構成
及び動作は第4図に関連して述べられる。分母りはブロック400において決め
られたように、Kという係数によって尺度変更される。尺度変更された分母SD
は、64から127迄という予め決められた範囲内の値であり、かつそれはSD
OからSD5迄によって表される。従ってブロック200は分母を尺度変更する
ための手段を構成する。
分子Nはブロック300で2の累乗で尺度変更され、そのブロック300の構成
及び動作は第6図と関連して述べられる。分子Nは2・Kという係数によって尺
度変更され、SNOからSN7迄によって表される8ビツトの尺度変更された分
子SNを生成する。尺度変更された分子SNは−127から+128迄の間に位
置される。最上位ビット(MSB)SN7は分子Nの符号を表す。分子の尺度変
更の構成及び動作は、分母のそれと同様である。従って、ブロック300は分子
を尺度変更するための手段を制定する。
ブロック500は尺度変更された分母SDの逆数を提供する。尺度変更された分
母SDの逆数は整数ではないので、ブロック500は5RD7から5RDO迄に
より表される整数の尺度変更された分母の逆数SRDを生成するように、任意の
一定な係数により逆数にした結果を掛けるように配慮されている。ブロック50
0のハードウェア構成は第7図に関連して述べられる。従ってブロック500は
尺度変更された分母出力を逆数にするための手段を制定する。
乗算器600は尺度変更された分子SNに尺度変更された分母の逆数SRDを掛
けるために使用され、かつそれはSQOから5Q15によって表される尺度変更
された商SQを提供する。様々なスケールファクタが使用されるために後の尺度
変更ブロック(post scaling bl o c k) 700を、尺
度変更された商SQを一定の係数によって尺度変更するために追加することがで
きる。アプリケーションによっては、割り算動作の正確な結果を得ることが必要
でなくてもよく、その代わりに相対的な商の結果で十分でありうる。
当業者は、もし相対的な割り算の結果が望まれるならば、分子Nの尺度変更、尺
度変更された商SQ、またはそれら両方が除算器100に内蔵されなくてもよい
ことを理解するであろう。
好ましい除算器100のハードウェア実現では、各ブロックは組合せ論理回路か
ら構成される。組合せ論理回路の使用は、消費電力の効率化はもちろん実質的に
より高速の除算回路に供する。
第3図を参照すると、第2図の比例係数ブロック400の好ましいハードウェア
構成が示される。動作上、比例係数回路400は分母りの6個の最上位ビットD
12−DiG内で一番左の論理1を検出し、かつ比例係数ビットに7からKl迄
により表される比例係数Kを提供する。分母入力D12からDO迄のビットは組
合せ論理ブロック410から460迄にそれぞれ結合され、かつ相補出力ビット
に2バーからに7バー迄とに2からに7迄を提供する。分母りの最上位ビットD
12はブロック410に結合され、そのブロック410は、D12ビットが論理
1かまたは論理Oであるかどうかを決めるために、知られている論理ゲートから
構成される。もしもD12が論理1であるならば、N7はセットされ(論理1に
なり)、かつに6からに1迄のビットはクリアされる(論理0になる)。同様に
、Dllが論理1かまたは論理0であるかどうかを決めるために、Dllはブロ
ック420に結合される。もしもDllが論理1であり、かつD12が論理0で
あるならば、K6はセットされ(論理1になり)かつに7及びに5からに1迄の
ビットはクリアされる(論理0になる)。従ってに5からに2迄の比例係数ビッ
トの内の一つは、もしもそれぞれの対応する分母のDloからD7迄のビットが
論理1を有する一番左の最上位ビットであるならば、セットされるであろう。比
例係数ビットに1及びその補数のに1バーは比例係数に7からに2迄のビットを
論理ブロック470の回路に入力することによって提供される。論理ブロック4
70は、もしもに7からに2迄の比例係数(スケールファクタ)ビットの内のど
れもセットされないならば、K1をセットする。第3図の回路図を参照すると、
当業者は、論理1を有する一番左の最上位分母ビットに応じて、K7からに1迄
の出力ビットの内の1ビツトのみがセットされることを理解することができる。
それゆえに、64から8191迄の範囲を有する分母りにとって、比例係数には
1.2.4.8.16.32及び64の7個の値の内の一個をとることができる
のみである。第3図の回路400は同じ機能を実行するために他の知られた論理
回路構成を使用して実現できることは注目されるべきである。
第4図を参照すると、第2図の尺度変更ブロック200の好ましいハードウェア
構成が示される。第4図の尺度変5からSDO迄の尺度変更された分母出力ビッ
トを提供するためにDllからDO迄の分母入力ビット及びに7からに1迄の比
例係数ビットを受ける。分母の範囲は64から8191迄である。好ましい尺度
変更回路200は、スイッチ列(swf t ch co lumn)KDIか
らスイッチ列KD7までを含む主にスイッチマトリックス構成である。
第5図を参照すると、スイッチ列KDの回路図が示される。スイッチ列KDは0
MO8のバッファゲート210にシリーズに結合された6個の独立した0MO8
の送信または伝達ゲート220から構成される。バッファゲート210と共同し
て送信ゲート220は、スイッチ列KDのために独立したスイッチング機構を構
成する。各スイッチは入力230及び出力240を有し、かつ2個の相補制御信
号260及び270によって制御される。制御信号260及びその相補制御信号
270が、送信ゲート220を開くかまたは閉じるために提供される。相補的な
制御信号260及び270は、静的な動作及びCMOSの送信ゲート220の低
消費電力化に供することが知られている。バッファゲート210は送信ゲート2
20の入力容量を克服するために提供され、かつスイッチング速度を上げる。送
信ゲート220の制御信号260は一緒に結合される。同様に送信ゲート220
の相補制御信号270が一緒に結合される。
制御信号260と及び270はKD7からKDI迄の各スイッチ列の2つの相補
共通制御を含む。各スイッチ列はに7からに1迄の対応する比例係数ビット及び
それらのに7バーからに1バー迄の相補ビットによって制御される。
理解を容易にするために、各スイッチ列の制御を述べる時にはに7からに1迄の
比例係数ビットのみを参照し、K7バーからに1バー迄の相補比例係数ビットを
参照することは避ける。以下に述べるように、DOからDll迄の入力分母ビッ
トは対応するスイッチ入力230に結合され、SD5からSDO迄の尺度変更さ
れた分母出力は対応するスイッチ出力240に結合される。
さて第4図に戻ると、スイッチ列KDIはDOからDO迄とSD6からSDO迄
の間に結合され、その一方でスイッチ列KD2はD7からD1迄とSD5からS
DO迄の間に独立に結合される。同様なスイッチ列KD3からKD7はその次の
6個の分母ビットをSD5からSDO迄の尺度変更された分母ビットに独立に結
合する。K7からに1迄のどの比例係数ビットをセットしても対応するスイ・ソ
チ列を閉じる。前述したように、K7からに1迄の比例係数ビットの内の1ビツ
トのみが一度にセットされ、それゆえにKD7からKDI迄のスイッチ列の内の
1個のみが閉じられる。尺度変更回路200は、DllからDO迄の分母ビット
を比例係数Kにより決められるビット数だけ、右にシフトする。数学的には上記
動作は次の式によって示される。
5D=D/K (1)
従って8191という分母りに対して、比例係数には64に等しく、かつ尺度変
更された分母SDは127に等しい。
同様に64という分母りに対して、比例係数には1に等しく、かつ尺度変更され
た分母SDは64に等しい。それゆえに特定された範囲に対して、尺度変更され
た分母SDは常に64から127迄の数である。
SD5からSDO迄の尺度変更された分母ビットは半ば尺度変更された(qua
si 5caled)分母の値SD′を表し、かつ尺度変更された分母SDは次
の式によって決められる。
5D=64+SD’ (2)
この関係は、(64から127迄の)尺度変更結果の最上位ビットが常に1であ
って、かつSD5からSDO迄の尺度変更された分母ビットには現れないという
事実による。
従って最上位ビットD12は尺度変更回路200には結合されない。なぜなら、
もしD12が論理1でないならば、D12はドントケア値になる。(さもなけれ
ば、分母りの値はDllからDO迄によって表すことができる。)たとえ分母ビ
ットD12が論理1であっても、比例係数には64であり、かつ尺度変更された
分母SDのために望まれる結果を第2式に従って得ることができる。言い換えれ
ばD12が論理1である時には、その意味は第2式の中に埋め込まれている。特
定された分母の範囲内で比例係数にの全ての値(すなわち7個の値)に対して、
半ば尺度変更された分母SD’ はOから63迄の範囲の間の値を繰り返し有す
るであろう。次の例は4096から8191迄、及び64から127迄の二つの
別々の分母の範囲を説明する。
第一に、4096 (二進1.0000,0000.0000)という分母の値
を仮定すると、N7がセットされる(D12は論理1となる)。それゆえにDl
lからD6迄の分母ビットは、SD5からSDO迄の尺度変更された分母ビット
に接続され、SD“をOに等しくする。。同様に8191 (二進1,1,11
1,1111.1111)という分母の値を仮定すると、N7はセットされたま
まであって、かつ半ば尺度変更された分母SD’ が63に等しくなる。それゆ
えに4096から8191迄の分母の範囲に対して、半ば尺度変更された分母S
D’ は0から63迄の範囲内にある。
第二に、64(二進0.0000.0100.0000)という分母の値を仮定
すると、K1はセットされる(D6は一番左の論理1となる)。かくしてD5か
らDO迄の分母ビットはSD、5からSDO迄の尺度変更された分母ビットに接
続され、SD’ を0に等しくする。最後に、127(二進0,0000.01
1,1111)という分母の値を仮定すると、N7はセットされたままであって
、かつ尺度変更された分母SDが63に等しくなる。また、64から127迄の
分母の範囲に対しては、半ば尺度変更された分母SD’ はOから63迄の範囲
内にある。同じ議論はその範囲内でに7からに1迄がセットされる、あらゆる可
能な範囲に対して適用される。
第6図を参照すると、第3図で述べた回路200と同様な尺度変更回路300が
示される。N14からN1迄の入力分子ビット及びに7からに1迄の比例係数ビ
ットは、SN7からSNO迄の尺度変更された分子のビットによって表される尺
度変更された分子の出力SNを提供するために、尺度変更回路300に結合され
る。KH7からKNl迄のスイッチ列はN14からN1迄の分子のビットを、S
N7からSNO迄の尺度変更された分子ビットに結合する。KNlからKH2迄
のスイッチ列の各々は8個の独立したスイッチ320を具備し、かつ第5図に述
べたようにスイッチ列KDと類似している。分子Nを尺度変更するために使用さ
れる比例係数は2Kに等しい。当業者は、追加の尺度変更が単にSNOビットを
無視することによって成し遂げられることを理解するであろう。
回路300の好ましいハードウェア構成において、スイッチ列KNIはN8から
N1迄と、SN7からSNO迄の間に結合される。スイッチ列KN2はN9から
N2迄と、SN7からSNO迄の間に独立に結合される。KH3からKH2迄の
同様なスイッチ列は次の8個の分子ビットを、SN7からSNO迄の尺度変更さ
れた分子ビットに独立に結合する。N7からに1迄のどの比例係数ビットをセッ
トしても、対応するスイッチ列を閉じる。前述したように、N7からKl迄の比
例係数ビットの内の1ビツトのみが一度にセットされ、それゆえにKH7からK
Nl迄のスイッチ列の内の一つのみが閉じられる。分子の尺度変更回路300は
N14からNl迄の分子ビットを、比例係数Kにより決められるビット数だけ右
にシフトする。
動作上、分子Nは比例係数2Kによって尺度変更されるであろう。分子ピッl−
N 15は分子Nのための符号ビットを構成する。分子は−16384から16
383の範囲内に限定されるので、N 1.5ビツトはハードウェア実現上無視
され、それゆえに符号ビットが分子ビットN14にある。
尺度変更された分母SNは−128から127迄の範囲内に常にあるであろう。
分子の範囲を−32768から32767迄に増やす目的で、符号ビットを運び
、かつ尺度変更された分子SNを−128から127迄の範囲内に保証するため
に丸め回路(示されていない)が使用されてもよい。上記動作は数学的には次式
にて示すことができる。
5N=N/2K (3)
第7図を参照すると、第2図の逆数ブロック500の好ましいハードウェア構成
は、読み出し専用メモリ(R,OM)500を具備している。ROM500は6
4バイトの全スタティックCMOSメモリである。ROM500はS R,D7
から5RDO迄のビットで表される尺度変更された分母の逆数SRDを蓄積する
。SD5からSDO迄の尺度変更された分母ビットは、ROM500のMOから
N63迄のメモリロケーションの内の一つをアドレスする。MOからN63迄の
各メモリロケーションは8ビツトの数字から構成され、そしてそれはアドレスさ
れるとデータバスに現れるであろう。ROM500は、尺度変更された分母SD
の64個の可能な値(64から127迄)の逆数の表現を蓄積するために対照表
(lookup table)として働く。MOからN63迄のメモリロケーシ
ョンの内容はそれぞれ、定数8192(213)を掛けた各々の尺度変更された
分母SDの逆数に等しい。第2図のブロック500の説明において述べた理由の
ために、尺度変更された分母SRDの逆数も64から127迄の範囲に入るよう
に定数値2′13が選択された。数学的にこの動作は次式によって表すことがで
きる。
5RD=2−13/SD (4)
そしてSDに(1)式を代入すると
5RD=2°13・ (K/D) (5)従って、MOは8192を掛けた64
(0+64)の逆数を含み、そしてそれは(丸めた後で)127に等しい。
同様にして、N63は8191を掛けた127 (63+64)の逆数、すなわ
ち(丸めた後で)64に等しい数を含む、というように続く。SRDは7ビツト
で表すことができるので、それゆえに5RD7ビツトは論理0にセットされる。
第8図を参照すると、組合せ修正ブース乗算器600のブロック図が示される。
乗算器600は16ビツトの出力を有する8ビットx8ビット乗算器である。乗
算器600は、ここに参照のために導入される、米国特許第4,575.812
号に完全に説明されたもののような、任意の適切な修正ブース組合せ乗算器であ
ってもよい。乗算器600の入力は5RD7から5RDO迄の尺度変更された分
母の逆数ビット、及びSN7からSNO迄の尺度変更された分子ビットとを具備
する。乗算器600の出力は5Q15からSQO迄によって表される16ビツト
の尺度変更された商SQである。数学的にはこの尺度変更された商は次式%式%
第2図の後段尺度変更(ボストスケーリング)ブロック700は、割り算動作の
実行において使用される様々な尺度変更のために要求されるかもしれない。除算
器100の好ましい実施例において、尺度変更された商は係数2′6により後段
で尺度変更される。ハードウェアでは、後段尺度変更はいかなる回路も要求しな
いし、かつそれは望まれる商Qを提供するために、尺度変更された商SQの6個
の最下位ビット(L S B)を無視することによって簡単に実現される。(3
)式、(4)式、(5)式、及び(6)式を考慮すると、商Qは次式によって示
すことができる。
Q=SQ/2−6 または
Q=SN−8RD/2“6 または
Q= [N/2K] ・ [2−13・ (K/D)] /2−6 または
Q=2−6・(N/’D)
ブロック700の比例係数は任意であり、かつ除算回路が使用されるアプリケー
ションによって決められてもよい。
前に述べたように、除算回路100のハードウェア構成は全体的に組合せ的な回
路を提供する。従って除算回路100は信号処理回路のクロック周期よりも実質
上低い伝搬遅延を有する。それゆえに割り算動作は1クロツクサイクル内に実行
される。以下に述べる理由のために、除算回路100はまた広い範囲の入力につ
きその結果に対しコントロールされた誤りを提供する。尺度変更された分母の丸
め(64から127迄の範囲)、及び尺度変更された分母の逆数(127から6
4迄の範囲)は結果となる商における誤りの主要因である。分母りを係数Kによ
り尺度変更する結果が、68.49という実際の尺度変更された分母を生成する
ものと仮定する。この尺度変更された分母は、68という整数の尺度変更された
分母の値を生成するために丸められ、それによって誤りを生じるであろう。第7
図の回路500の説明に従えば、尺度変更された分母の逆数SRDは8192/
68によって生成され、そしてそれは120という値に丸められて、それにより
追加誤りを生じる。
全体の誤りは有限の値であり、かつ64から127迄の整数の精度(resol
ution)に依存する。もしも、より小さい誤りが要求されるならば、除算器
100の回路設計は128から255迄の範囲に、尺度変更された分母の値を生
成するように変更することができる。これは前記好ましい除算回路100に比べ
て、2倍の精度を生成するであろう。後者は追加データを蓄積するために128
バイトのメモリを明らかに要求する。明らかに、除算回路100は、広範囲な入
力に対してコントロールされた誤りを生成するように設計することができる。
当業者は、除算器100のブロックが市販されているマイクロコンピュータのソ
フトウェアプログラムで実現できるということを理解するであろう。ソフトウェ
アプログラムは、任意の適切なマイクロプロセッサのためのアセンブラのような
低レベルのプログラム言語か、またはFORTRANのような高レベルのプログ
ラム言語で実現することができる。
FIG、3
FIG、8
sn(0) 5n(1) 5n(2) 5n(3) 5n(4) 5n(5)
5n(6) 5n(7)FlYλ6
国際調査報告
1i−−IIII@【^eo1+ea+:m 1iexi/newげ1117M
Claims (4)
- 1.単一のクロックサイクル内で分子信号および分母信号により表わされる2つ の数の商に近似する数を表わす2進信号を提供するための装置であって、前記分 母信号に結合され前記分母信号を所定の範囲内に尺度変更するために前記分母信 号の大きさに応じてスケールファクタ信号を発生するための第1の組合わせ論理 装置、前記分母信号および前記スケールファクタ信号に結合され前記スケールフ ァクタ信号により前記分母信号を尺度変更することから得られる前記所定の範囲 内の数を表わす尺度変更された分母信号を発生するための第2の組合わせ論理装 置、 前記尺度変更された分母信号によりアドレスされ前記所定の範囲内の前記尺度変 更された分母の逆数に対応する信号表現をその中に格納するメモリ装置、そして 前記メモリ装置に結合され前記尺度変更された分母の逆数に対応する前記信号を 前記分子信号により乗算するための組合わせ乗算装置、 を具備する2つの数の商に近似する数を表わす2進信号を提供するための装置。
- 2.前記第2の組合わせ論理装置は前記分母信号を右シフトするための手段を具 備する請求の範囲第1項に記載の装置。
- 3.さらに、前記分子信号および前記スケールファクタ信号に結合され尺度変更 された分子信号を発生するための第3の組合わせ論理装置を含み、かつ前記組合 わせ乗算装置は前記尺度変更された分母の逆数に対応する前記信号を前記尺度変 更された分子信号により乗算する請求の範囲第1項に記載の装置。
- 4.前記組合わせ乗算手段はブース乗算器を具備する請求の範囲第1項に記載の 装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33531989A | 1989-04-10 | 1989-04-10 | |
US335.319 | 1989-04-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04504478A true JPH04504478A (ja) | 1992-08-06 |
Family
ID=23311277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP50613090A Pending JPH04504478A (ja) | 1989-04-10 | 1990-04-02 | 整数割り算回路 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0466814A4 (ja) |
JP (1) | JPH04504478A (ja) |
WO (1) | WO1990012361A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4315898A1 (de) * | 1993-05-12 | 1994-11-17 | Siegfried Hecker | Vorrichtung zur Berechnung des Quotienten zweier rationaler Zahlen |
JP2846816B2 (ja) * | 1994-09-13 | 1999-01-13 | 三洋電機株式会社 | ディジタル信号処理装置 |
CA2450309C (en) | 2002-07-02 | 2012-08-21 | Shinya Kadono | Motion vector derivation method, moving picture coding method and moving picture decoding method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5725039A (en) * | 1980-07-21 | 1982-02-09 | Fujitsu Ltd | Dividing circuit |
JPS59136849A (ja) * | 1983-01-27 | 1984-08-06 | Mitsubishi Electric Corp | 除算装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3648038A (en) * | 1969-04-25 | 1972-03-07 | Ibm | Apparatus and method for obtaining the reciprocal of a number and the quotient of two numbers |
EP0096165B1 (en) * | 1982-06-15 | 1988-06-08 | Kabushiki Kaisha Toshiba | Apparatus for dividing the elements of a galois field |
DE3274164D1 (en) * | 1982-12-23 | 1986-12-11 | Ibm | Method and apparatus for division operations |
JPS60163128A (ja) * | 1984-02-02 | 1985-08-26 | Nec Corp | 乗算回路 |
US4718032A (en) * | 1985-02-14 | 1988-01-05 | Prime Computer, Inc. | Method and apparatus for effecting range transformation in a digital circuitry |
US4626825A (en) * | 1985-07-02 | 1986-12-02 | Vlsi Technology, Inc. | Logarithmic conversion apparatus |
US4779218A (en) * | 1985-09-04 | 1988-10-18 | Jauch Jeremy P | Complex arithmetic unit |
US4823301A (en) * | 1987-10-22 | 1989-04-18 | Tektronix, Inc. | Method and circuit for computing reciprocals |
-
1990
- 1990-04-02 JP JP50613090A patent/JPH04504478A/ja active Pending
- 1990-04-02 WO PCT/US1990/001707 patent/WO1990012361A1/en not_active Application Discontinuation
- 1990-04-02 EP EP19900906531 patent/EP0466814A4/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5725039A (en) * | 1980-07-21 | 1982-02-09 | Fujitsu Ltd | Dividing circuit |
JPS59136849A (ja) * | 1983-01-27 | 1984-08-06 | Mitsubishi Electric Corp | 除算装置 |
Also Published As
Publication number | Publication date |
---|---|
WO1990012361A1 (en) | 1990-10-18 |
EP0466814A4 (en) | 1993-02-24 |
EP0466814A1 (en) | 1992-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pedroni | Circuit design with VHDL | |
US4224676A (en) | Arithmetic logic unit bit-slice with internal distributed iterative control | |
JPS6347874A (ja) | 算術演算装置 | |
US5020017A (en) | Method and apparatus for obtaining the quotient of two numbers within one clock cycle | |
KR910021034A (ko) | 모들식 크레이 코드 계수기 | |
JPH04504478A (ja) | 整数割り算回路 | |
JP3318753B2 (ja) | 積和演算装置および積和演算方法 | |
KR920008269B1 (ko) | 배율기 회로 | |
US5825681A (en) | Divider/multiplier circuit having high precision mode | |
EP0278529A2 (en) | Multiplication circuit capable of operating at a high speed with a small amount of hardware | |
US3716843A (en) | Modular signal processor | |
JPH0546363A (ja) | 除算器 | |
Hiasat et al. | Semi-custom VLSI design and implementation of a new efficient RNS division algorithm | |
JPH0519170B2 (ja) | ||
JPH01233909A (ja) | ディジタル乗算器及びこれを用いたディジタルフィルタ | |
US6516332B1 (en) | Floating point number data processing means | |
RU2711051C1 (ru) | Арифметико-логическое устройство для сложения, вычитания и умножения чисел по модулю | |
Pandit et al. | Design and simulation of 16× 16 bit iterative logarithmic multiplier for accurate results | |
US6334136B1 (en) | Dynamic 3-level partial result merge adder | |
US6114945A (en) | Apparatus and method for programmable fast comparison of a result of a logic operation with an selected result | |
JP3251071B2 (ja) | 除算/開平演算方法と演算装置 | |
US5615141A (en) | Multiplying apparatus | |
EP0356940A2 (en) | Finite state machine | |
EP0148991A2 (en) | A high speed microinstruction unit | |
KR100265358B1 (ko) | 고속의쉬프팅장치 |