JPH065505B2 - Arithmetic circuit - Google Patents
Arithmetic circuitInfo
- Publication number
- JPH065505B2 JPH065505B2 JP60105534A JP10553485A JPH065505B2 JP H065505 B2 JPH065505 B2 JP H065505B2 JP 60105534 A JP60105534 A JP 60105534A JP 10553485 A JP10553485 A JP 10553485A JP H065505 B2 JPH065505 B2 JP H065505B2
- Authority
- JP
- Japan
- Prior art keywords
- overflow
- output
- shifter
- terminal
- bits
- 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.)
- Expired - Lifetime
Links
Landscapes
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 (産業上の利用分野) 本発明はディジタル信号処理用演算回路、特に、固定小
数点演算を行なうシグナルプロセッサの演算回路に関す
る。TECHNICAL FIELD The present invention relates to an arithmetic circuit for digital signal processing, and more particularly to an arithmetic circuit of a signal processor that performs fixed point arithmetic.
(従来技術とその問題点) ディジタル信号処理の利点はアナログ技術では実現でき
ない様な高精度もしくは高安定性の保証されたフィルタ
や変復調装置が実現できること、さらに、アナログ信号
処理では考えられなかった時変適応フィルタ等が容易に
実現できることなどが挙げられる。さらに詳しいディジ
タル信号処理の利点等については電子通信学会誌1982年
12月号の1280頁より1284頁を参照されたい。(Prior art and its problems) The advantage of digital signal processing is that it can realize filters and modulators / demodulators with high accuracy or stability that cannot be realized by analog technology. A variable adaptive filter or the like can be easily realized. For more detailed advantages of digital signal processing, etc.
See pages 1280 to 1284 of the December issue.
この様に多くの利点を有するディジタル信号処理も、ハ
ードウェアサイズ及び消費電力の点ではアナログ技術に
劣ることが多く、ディジタル信号処理が実用に供される
様になって来たのは、急速に発展して来たディジタルLS
I回路が利用できる様になったごく最近のことであり、
特にシグナルプロセッサと呼ばれるディジタル信号処理
マイクロプロセッサが実現して来てからである。Digital signal processing, which has many advantages as described above, is often inferior to analog technology in terms of hardware size and power consumption, and digital signal processing has come into practical use rapidly. Digital LS has evolved
It is only recently that I circuit is available,
Especially after the realization of a digital signal processing microprocessor called a signal processor.
この様なシグナルプロセッサは、ハードウェア規模を小
さくしつつ、アナログ回路で実現する微分、積分演算を
ディジタル領域で実現せねばならないために高速算術演
算能力が要求され、いわゆる汎用コンピュータや汎用マ
イクロプロセッサとは異なった発展を遂げている。詳し
くは情報処理学会誌昭和58年7月号の862頁より869頁に
譲り、以下現状のシグナルプロセッサの特徴について述
べる。Such a signal processor is required to have high-speed arithmetic operation capability because it is necessary to realize the differential and integral operations realized by analog circuits in the digital domain while reducing the hardware scale. Have made different developments. For more details, I will transfer from page 862 to page 869 of the July 1983 issue of the Information Processing Society of Japan, and describe the characteristics of the current signal processor.
シグナルプロセッサでは高速算術演算能力を小さなハー
ドウェアで実現するために、数値表現は原則として固定
小数点表示で、かつ2の補数表現を用いることが多い。
また、シグナルプロセッサで扱う対象はA/D変換された
アナログ信号であり、A/D変換器の許容最大振幅を基準
にしてディジタル表現を表わすのが便利であるため最大
振幅値を1.0とする。つまり、2の補数表現で固定小数
点の位置を示すと、最上位ビットと次のビットの間に固
定小数点を置き、-1から+1までの数値として扱う。In a signal processor, in order to realize high-speed arithmetic operation capability with a small hardware, numerical representation is in principle fixed-point notation and 2's complement representation is often used.
Also, the target handled by the signal processor is an A / D converted analog signal, and it is convenient to represent the digital expression based on the maximum allowable amplitude of the A / D converter, so the maximum amplitude value is set to 1.0. That is, when the position of the fixed point is indicated by the two's complement representation, the fixed point is placed between the most significant bit and the next bit, and it is treated as a numerical value from -1 to +1.
この様な形式を用いる場合の乗算回路の入出力形式とし
てアイイーイーイージャーナルオブソリッドステートサ
ーキッツ(IEEEJournalofSolidStateCircuits)第SC-16巻
4号(1981年8月)の372頁より376頁に掲載されたシグ
ナルプロセッサの第2図に示した様に、Nビット2の補
数表現固定小数点データ間の積は2N-1ビットで得られ、
固定小数点位置は依然として最上位ビットと次のビット
の間にある形式を用いるのが一般的である。このため、
乗算器出力は信号データと同じ形式になる様に上位Nビ
ットを取り出せば、信号のダイナミックレンジを一定に
保てる。As the input / output format of the multiplication circuit when using such a format, it was published on pages 372 to 376 of IEEE Journal of Solid State Circuits SC-16 Vol. 4 (August 1981). As shown in Fig. 2 of the signal processor, the product between N-bit two's complement fixed-point data is obtained by 2N-1 bits,
Fixed-point positions typically still use a format that lies between the most significant bit and the next bit. For this reason,
If the upper N bits are taken out so that the multiplier output has the same format as the signal data, the dynamic range of the signal can be kept constant.
一方、FIRフィルタ等の演算では、時刻jの入力信号、
出力信号を各々xj,yjとすると、 という演算が行なわれる。係数{ai}はフィルタの特性を
決定するものであり、xjが-1から+1の範囲の値であれば
平均的にyjも-1から+1の範囲内の値となる様に係数は定
められる。しかしながら、係数aiの値は必ずしも-1から
+1の範囲に限られる訳ではなく、このためyjの計算途中
結果では-1から+1の範囲に納まらないこともしばしばで
ある。On the other hand, in calculations such as FIR filters, the input signal at time j,
If the output signals are x j and y j respectively, Is performed. The coefficient {a i } determines the characteristics of the filter. If x j is a value in the range of -1 to +1 then y j is also an average value in the range of -1 to +1. The coefficient is set to. However, the value of the coefficient a i is not always from -1
It is not limited to the range of +1 and, as a result, the intermediate calculation result of y j often falls outside the range of -1 to +1.
従来の方法ではこの様なFIRフィルタを実現する方法で
は、係数{ai}を-1から+1までの乗算器に入力できる範囲
の値とするため、係数{ai}の各々に係数の絶対値の最大
値より大きい2の巾乗数を選んで、この値で割り算を行
なった係数{bi}を用いる。In the method in the conventional method of implementing such a FIR filter, for the range of values of the coefficients {a i} can be input to the multiplier from -1 to +1, each coefficient of the coefficient {a i} Select a power of two that is larger than the maximum absolute value, and use the coefficient {b i } divided by this value.
つまり、 bi=ai・2-k (2) とし、式(1)は次の様にして求める。That is, b i = a i · 2 -k (2) and Eq. (1) is calculated as follows.
式(3)より、biとxj-iを乗算し、累算した後2k倍するこ
とでyjを求めていた。固定小数点演算で式(3)を実現す
るとbi及びxj-iはいずれも-1より+1までの値であるから
bixj-iは-1より+1までの値となり、前述した固定乗算器
が利用できる。しかし、bixj-iをN項加算する場合、計
算の途中結果及び計算結果は-1から+1までの範囲にはな
い可能性がある。しかし、この場合でも、単精度加算器
を用いているシグナルプロセッサなどでは加算毎にオー
バーフローが発生した時に最大値に置換するハードウェ
アを設けるか、この様なオーバーフローの発生は無視
し、計算ノイズとして扱うことが常であった。 From Equation (3), y j was obtained by multiplying b i and x ji , accumulating them, and multiplying them by 2k. When equation (3) is realized by fixed-point arithmetic, both b i and x ji are values from -1 to +1.
b i x ji takes a value from -1 to +1 and the fixed multiplier described above can be used. However, when b i x ji is added by N terms, the intermediate calculation result and the calculation result may not be in the range from -1 to +1. However, even in this case, in a signal processor that uses a single-precision adder, it is necessary to provide hardware that replaces the maximum value when an overflow occurs for each addition, or ignore the occurrence of such an overflow and use it as calculation noise. I used to treat.
また、FIRフィルタを実現している限りは、この様なオ
ーバーフローはシステムを不安定にすることはないが、
IIRフィルタの様に演算結果をフィードバックして用い
るシステムではオーバーフローの問題はシステムの不安
定にもつながり、演算速度を犠牲にしてでもオーバーフ
ロー発生時には値を最大値に置換する必要がある。Also, as long as the FIR filter is realized, such an overflow does not make the system unstable, but
In a system such as an IIR filter that uses feedback of calculation results, the problem of overflow leads to system instability, and even if the calculation speed is sacrificed, it is necessary to replace the value with the maximum value when overflow occurs.
以上の様に従来技術による演算方法では計算の途中結果
のオーバーフローを無視するか、1加算のオーバーフロ
ー発生毎に最大値に置換していたため、計算途中結果の
数値の取りうる範囲を充分大きくしてオーバーフローが
発生しないようにした場合には出力信号yjは正規の-1よ
り+1の範囲の数値になる様な場合でも、小規模な回路で
実現しようとするとオーバーフローの無視、あるいはオ
ーバーフローした数値の最大値での修正が多発し、出力
値yjは大きな誤差を含んでいることもしばしばであっ
た。As described above, in the calculation method according to the conventional technique, the overflow of the intermediate result of the calculation is ignored or the maximum value is replaced each time the overflow of 1 addition occurs. Even if the output signal y j becomes a value within the range of +1 from the normal -1 if overflow is prevented, overflow will be ignored or overflowed if a small circuit is used. The maximum value of was frequently corrected, and the output value y j often contained a large error.
(発明の目的) 本発明の目的は出力値yjの計算精度を向上させうるシグ
ナルプロセッサ用演算回路を提供することにある。(Object of the Invention) An object of the present invention is to provide an arithmetic circuit for a signal processor capable of improving the calculation accuracy of the output value y j .
(発明の構成) 本発明は2組の単精度ビット数のデータを入力とし倍精
度ビット数の積を出力する固定小数点乗算器と、前記固
定小数点乗算器出力を少くとも下位方向に複数ビットシ
フトを行なえる倍精度ビット数のバレルシフタと、前記
バレルシフタの出力と後述するレジスタの内容に対し算
術論理演算を行なう倍精度ビット数のALUと、前記ALUの
出力に対し、少くとも上位方向にビットシフトを行なえ
る倍精度ビット数のシフタと、前記ALUもしくは前記シ
フタにより出力データがオーバーフローを発生したこと
を検出するオーバーフロー検出回路と、前記オーバーフ
ロー検出回路により制御され、オーバーフロー検出時に
前記シフタ出力をオーバーフロー方向の最大値に置換す
るオーバーフロー訂正器と、前記オーバーフロー訂正器
出力を蓄える倍精度ビット数のレジスタと、前記レジス
タの少くとも上位単精度ビット数のデータを出力する出
力端子とから少くとも構成されている。(Structure of the Invention) The present invention provides a fixed-point multiplier that inputs two sets of single-precision bit number data and outputs a product of double-precision bit numbers, and the fixed-point multiplier output is shifted by at least a plurality of bits in the lower direction. A double-precision bit number barrel shifter, a double-precision bit number ALU that performs arithmetic logic operation on the output of the barrel shifter and the contents of the register described later, and bit shift at least in the upper direction with respect to the output of the ALU. A double-precision bit number shifter, an overflow detection circuit that detects that output data has overflowed by the ALU or the shifter, and the overflow detection circuit is controlled by the overflow detection circuit. Of the overflow corrector that replaces the maximum value of It is composed at least of a double precision bit number register for storing and an output terminal of the register for outputting data of at least upper single precision bit number.
(本発明の原理) 本発明の原理は固定小数点乗算器出力が倍精度ビット長
であること、よって、倍精度ビット長乗算結果を小数点
位置とともに下位方向にビットシフトしても、シフトし
た結果をシフト前のビット数で表現しても、ビットシフ
トにより切り捨てられるデータによっても倍精度ビット
長で表現されたデータに対しては精度不足を起こさない
こと、小数点位置を下位ビット方向に移動させたため、
累算時のダイナミックレンジは-1より+1という従来の範
囲より大幅に拡大されること、累算結果は平均的に-1か
ら+1の従来の範囲にあるから小数点とともに上位方向に
ビットヒフトすることにより、正確な値を得る様にした
点にある。以下、これを詳しく説明する。(Principle of the Present Invention) The principle of the present invention is that a fixed-point multiplier output has a double-precision bit length. Therefore, even if the double-precision bit-length multiplication result is bit-shifted in the lower direction together with the decimal point position, the shifted result is Even if it is represented by the number of bits before the shift, the precision of the data represented by the double precision bit length will not be insufficient even if the data is truncated by the bit shift.Because the decimal point position has been moved to the lower bit direction,
The dynamic range at the time of accumulation is significantly expanded from -1 to +1 compared to the conventional range. Since the accumulated result is in the conventional range of -1 to +1 on average, it is bit-hifted upward with the decimal point. By doing so, an accurate value is obtained. Hereinafter, this will be described in detail.
いま、式(1)を計算するにあたり、aiおよびxjが各々N
ビットで以下の様に2の補数表現されていたとする。Now, in calculating equation (1), a i and x j are N
It is assumed that bits are represented in 2's complement as follows.
つまり、aiは-2kより2kまでの範囲の値を取り得るが、x
jはこれまでにも述べて来た様に-1より+1までの範囲で
あったとする。この時式(1)の積の項Ziは と表現できる。つまり、-2kより2kまでの範囲の値aiに-
1より+1までの範囲の値xjを乗ずると-2kより2kまでの範
囲の値となり、かつ、Nビット数同志の積であるから、
積は2N-1ビットとなる。式(1)ではこの項をM項累算す
る必要があり、ダイナミックレンジ最大log2Mビット拡
大する可能性があるから、log2Mより大きい最小の整数
をLとおいて、少数点位置を含めて式(5)で与えられる
数値をLビット下位方向にづらせる。つまり、この様に
LビットZiを下位方向にづらせた2N-1ビットのデータZi
*は上位Lビットは極性符号ビット(Zo iと一致し となり下位Lビット分の誤差を生づる。 That is, a i can range from -2 k to 2 k, but x
It is assumed that j is in the range from -1 to +1 as described above. At this time, the product term Z i of equation (1) is Can be expressed as That is, for values a i in the range from -2 k to 2 k-
Multiplying the value x j in the range from 1 to +1 gives a value in the range from -2 k to 2 k , and is the product of N-bit number comrades.
The product is 2N-1 bits. In Expression (1), it is necessary to accumulate this term by M terms, and the maximum dynamic range log 2 M bits may be expanded. Therefore, the smallest integer larger than log 2 M is set as L, and the decimal point position is included. Then, the numerical value given by the equation (5) is shifted in the lower direction of L bits. In other words, 2N-1 bit data Z i in which L bits Z i are arranged in the lower direction in this way
* Is the upper L bit, which is the sign bit of the polarity (matches Z o i Then, an error for the lower L bits is generated.
式(1)の計算はこのZi *をM項加算すれば良く、 となる。ここでyjは平均的に-1より+1の範囲の数値とな
っているはずであるから、多くの場合 となっており、上位k+L-1ビットを省略しても2つの補
数表現としては同じ値を与える。よって(7)で示される2
N-1ビットデータを上位方向にk+L-1ビットシフトし、シ
フトあふれした後のデータから上位Nビットを取り出せ
ばxjと同様-1より+1までのダイナミックレンジを有する
yjが得られることになる。もし(8)式が成立していない
時は求められたyjは-1より+1までの範囲になく、よって
正規のyjは求められないから、この場合はオーバーフロ
ーとして正もしくは負の最大値にyjの値をするとよい。
2N-1ビット表現された式(7)はオーバーフローしている
心配はないから、正もしくは負の最大値にyjの値を設定
する場合はy0 jを見れば長く、y0 j=0の時は正のオーバ
ーフロー、y0 j=1の時は負のオーバーフローとすれば
良い。Equation (1) can be calculated by adding this M i term to Z i * , Becomes Where y j should be a number in the range of +1 to +1 on average, so in many cases Therefore, even if the upper k + L-1 bits are omitted, the same value is given as the two's complement representation. Therefore, 2 shown in (7)
If N-1 bit data is shifted by k + L-1 bits in the upper direction and the upper N bits are taken out from the data after the shift overflow, a dynamic range from -1 to +1 is obtained like x j.
y j will be obtained. If (8) Maximum expression is not in the range of y j until -1 than +1 obtained when not satisfied, thus from normal y j is not required, as the overflow in this case positive or negative The value should be y j .
Since there is no fear of 2N-1 bit representation by the formula (7) is overflowed, to set the value of y j the positive or negative maximum value is longer if you look at the y 0 j, y 0 j = 0 In case of y, a positive overflow may be made, and in case of y 0 j = 1, a negative overflow may be made.
この様な計算を行なうと出力信号yjに誤差が加わる可能
性は式(5)より式(6)へ移す時の2N-1ビット表現された信
号の下位Lビット分がM回加算されて発生する誤差もし
くはオーバーフローによる誤差のみである。上記下位L
ビット分がM回(Lビット相当)加算されて発生する誤差
は式(5)と同じ表現で評価すると2Lビット分であり、yj
を出力するにあたりk+L-1ビット上位方向にシフトする
ことを考慮しても高々k+3L-1ビット分である。また,yj
の出力としてNビットに丸めるため丸めによる切り捨て
ビットN-1がこのk+3L-1より大の時、つまり、 N-1>K+3L-1 (9) であれば、上記の計算途中結果のためにダイナミック・
レンジを拡大するために発生する丸め誤差は事実上表わ
れて来ないことになる。If such a calculation is performed, there is a possibility that an error may be added to the output signal y j because the lower L bits of the signal represented by 2N-1 bits at the time of moving from Expression (5) to Expression (6) are added M times. Only errors that occur or errors due to overflow. Lower L above
The error that occurs when the bit is added M times (corresponding to L bits) is 2L bits when evaluated by the same expression as Equation (5), and y j
It is at most k + 3L-1 bits even when taking into consideration the shift of k + L-1 bits in the upper direction in outputting. Also, y j
If the rounded down bit N-1 is larger than this k + 3L-1 to round to N bits as the output of, that is, N-1> K + 3L-1 (9), the above calculation result Dynamic for
The rounding error that occurs to extend the range is virtually invisible.
以上の説明では式(1)を計算するときにM項加算では最
大Lビット分のダイナミック・レンジの拡大があり、こ
の最大ダイナミック・レンジの発生時にも充分対処する
様にしたが、もともと出力信号yjの取りうる値の範囲は
-1より+1に定まっているため、累算時にはLビットより
小さいL′ビット分だけダイナミック・レンジを拡大し
ておき、累算時にもオーバーフローは発生する可能性は
あるものの、従来方式よりはオーバーフローの発生を小
さくすることも可能である。この様にすることにより、
累算前の式(6)の値の精度を向上でき、累算時のオーバ
ーフローの発生がない時はyjを精度よく計算できる。こ
のため、累算器へ入力する前のシフト量を可変にし、個
々の応用毎に変えられることが望ましい。In the above explanation, when calculating the equation (1), the M term addition increases the dynamic range of the maximum L bits, and even when the maximum dynamic range occurs, the output signal is originally dealt with. The range of possible values of y j is
Since it is set to +1 rather than -1, the dynamic range is expanded by L'bits smaller than L bits at the time of accumulation, and overflow may occur at the time of accumulation, but it is better than the conventional method. It is also possible to reduce the occurrence of overflow. By doing this,
The accuracy of the value of the expression (6) before the accumulation can be improved, and y j can be calculated with high accuracy when there is no overflow at the time of accumulation. Therefore, it is desirable that the shift amount before input to the accumulator can be made variable so that it can be changed for each individual application.
(実施例) 次に本発明の1実施例を図面を参照しながら説明する。
第1図は乗数入力端子1,被乗数入力端子2,レジスタ3,4,
12,乗算器5,バレルシフタ7,算術論理ユニット(ALU)8,シ
フタ9,オーバーフロー検出器10,オーバーフロー訂正器1
1,シフト量制御端子6,13,出力端子14より構成される。
ここでレジスタ3,4,12,は1985年テキサスインスツルメ
ンツ社発行の「ザバイポーラディジタルインテグレーテ
ィドサーッキッツデータブック(TheBipolarDigitalIute
gratedCircuitsDataBook)」の7-234頁に、またALUは同
文献の7-252頁から7-262頁に記載されたICが利用でき
る。乗算器5は1984年TRW社発行のデバイス・カタログT
MC2110に記載されたものが利用できる。バレルシフタ7
およびシフタ9は1977年AMD社発行の「ショットキーア
ンドローパワーショットキーデータブックインクルーデ
ィングディジタルシグナルプロセッシングハンドブック
(Schottky and Low-power Schottky Data Book Includi
ng Digital Sigual Processing Handbook)」の4-37頁か
ら4-46頁記載のICが利用できる。オーバーフロー検出器
10およびオーバーフロー11の細詳については後述する。(Example) Next, one example of the present invention will be described with reference to the drawings.
Figure 1 shows multiplier input terminal 1, multiplicand input terminal 2, registers 3, 4,
12, multiplier 5, barrel shifter 7, arithmetic logic unit (ALU) 8, shifter 9, overflow detector 10, overflow corrector 1
It is composed of 1, shift amount control terminals 6 and 13, and output terminal 14.
Registers 3, 4, and 12 are the "The Bipolar Digital Integrated Circuits Data Book (The Bipolar Digital Integrated Circuits) published by Texas Instruments in 1985.
gratedCircuitsDataBook) ”on page 7-234, and ALU can use the ICs described on pages 7-252 to 7-262. Multiplier 5 is a device catalog T issued by TRW in 1984.
The ones listed in MC2110 can be used. Barrel shifter 7
And the shifter 9 is "Schottky and Low Power Schottky Databook Inclusion Digital Signal Processing Handbook" issued by AMD in 1977.
(Schottky and Low-power Schottky Data Book Includi
ng Digital Sigual Processing Handbook) ”, pages 4-37 to 4-46 can be used. Overflow detector
Details of 10 and overflow 11 will be described later.
いま式(1)の計算のためにレジスタ12は0にクリヤされ
ているものとし、a0が端子1からxjが端子2から入力さ
れているとし、ao,xjの各々は式(4)で与えられる通りで
ある。端子1及び端子2に各々加えられたai及びxjはレ
ジスタ3及びレジスタ4へ格納される。乗算器5はレジ
スタ3及びレジスタ4の内容の積を2N-1ビットとして式
(5)の様に与える。バレルシフタ7ではlog2Mを包含す
る整数Lだけ下位方向にシフトすべく端子6より"L"が
入力されている。このため、乗算器5の出力で2N-1ビッ
トのデータはバレルシフタ7によりLビット下位方向に
シフトされやはり2N-1ビットで表現される式(6)で与え
られるZi *が得られる。2N-1ビット長のALU8ではバレル
シフタ7の出力Zi *とレジスタ12の内容、この場合はゼ
ロと加算され、Zi *が出力される。当然オーバーフロー
は発生しない。シフタ9は式(1)の最終出力yjの計算時
のみk+Lビットシフトさせる様に端子13からシフト量制
御信号を加えるもので、今の場合式(1)の第1項の計算
中であるから、シフト量0が端子13より加えられてお
り、このため、ALU8の出力Zi *がそのままシフタ9を通
過する。当然シフタ9によるオーバーフローも発生しな
い。ALU8でもシフタ9でもオーバーフローは発生しない
ため、オーバーフロー検出器10はオーバーフロー否発生
をオーバーフロー訂正器11に伝え、このため、シフタ9
の出力Zj *はそのままオーバーフロー訂正器11の出力と
なる。この2N-1ビットの出力Zjはレジスタ12に蓄えるこ
とにより式(1)の第1項計算aoxjが終了する。Assume that the register 12 is cleared to 0 for the calculation of the equation (1), a 0 is input from the terminal 1 to x j from the terminal 2, and each of a o and x j is the expression ( As given in 4). The a i and x j added to the terminal 1 and the terminal 2 are stored in the register 3 and the register 4, respectively. Multiplier 5 calculates the product of the contents of register 3 and register 4 as 2N-1 bits.
Give as in (5). In the barrel shifter 7, "L" is input from the terminal 6 in order to shift in the lower direction by an integer L including log 2 M. Therefore, the output of the multiplier 5 shifts the 2N-1 bit data in the L-bit lower direction by the barrel shifter 7 to obtain Z i * given by the equation (6) which is also expressed by 2N-1 bits. In the 2N-1 bit length ALU8, the output Z i * of the barrel shifter 7 and the contents of the register 12, in this case, zero is added to output Z i * . Naturally, no overflow occurs. The shifter 9 adds a shift amount control signal from the terminal 13 so as to shift k + L bits only when calculating the final output y j of the formula (1). In the present case, the first term of the formula (1) is being calculated. Therefore, the shift amount 0 is applied from the terminal 13, and therefore the output Z i * of the ALU 8 passes through the shifter 9 as it is. Naturally, the overflow by the shifter 9 does not occur. Since neither the ALU 8 nor the shifter 9 overflows, the overflow detector 10 informs the overflow corrector 11 of the occurrence of no overflow, so that the shifter 9
The output Z j * of is the output of the overflow corrector 11 as it is. This 2N-1 bit output Z j is stored in the register 12 to complete the first term calculation a o x j of the equation (1).
次に、端子1及び2にはa1とxj-1が加えられレジスタ3
及び4にa1,xj-1が蓄えられる。乗算器5はa1xj-1を式
(5)の形式で与え、バレルシフタ7により下位方向にL
ビットシフトする。ALU8ではレジスタ12に蓄えられたa0
xjとバレルシフタ7の出力であるa1xj-1が加算される。
この加算においても、バレルシフタ6で2N-1ビットの乗
算器出力をLビット下方シフトしたためオーバーフロー
は発生しない。ALU8の出力a0xj+a1xj-1はシフタ9に入
力されるが、今回も端子13にはゼロが入力されており、
シフタ9は入力a0xj+a1xj-1を出力へ伝えるだけであ
る。このためシフタ9はオーバーフローを起こさない。
ALU8もシフタ9もオーバーフローを起こさなため、オー
バーフロー検出器10はオーバーフロー否発生をオーバー
フロー訂正器11に伝えるため今回もオーバーフロー訂正
器11はシフタ9の出力をレジスタ12へ伝えるだけであ
り、このため、レジスタ12はa0xj+a1xj-1の計算値を保
持する。以下M-1回目までは2回目と同じ動作のくり返
しである。Then, a 1 and x j-1 are added to terminals 1 and 2 to register 3
And 4 store a 1 , x j-1 . The multiplier 5 calculates a 1 x j-1
It is given in the form of (5), and L is moved downward by the barrel shifter 7.
Bit shift. In ALU8, a 0 stored in register 12
x j and a 1 x j-1 which is the output of the barrel shifter 7 are added.
Also in this addition, since the barrel shifter 6 shifts the 2N-1 bit multiplier output downward by L bits, no overflow occurs. The output a 0 x j + a 1 x j-1 of the ALU8 is input to the shifter 9, but zero is also input to the terminal 13 this time,
The shifter 9 only transfers the input a 0 x j + a 1 x j-1 to the output. Therefore, the shifter 9 does not overflow.
Since neither the ALU 8 nor the shifter 9 causes an overflow, the overflow detector 10 informs the overflow corrector 11 of the occurrence of no overflow, so that the overflow corrector 11 only conveys the output of the shifter 9 to the register 12 this time. The register 12 holds the calculated value of a 0 x j + a 1 x j-1 . Hereafter, the same operation as the second time is repeated until the M-1th time.
次に式(1)を計算するためのM回目の動作を説明する。
端子1及び2にはそれぞれaMとxj-Mが入力され、レジス
タ3及びレジスタ4にそれぞれ格納される。レジスタ3
及びレジスタ4の出力は乗算器5へ入力され、aMxj-Mが
式(5)の形式で出力される。このaMxj-Mはバレルシフタ
7によりLビット下方にシフトされた後、ALU8でレジス
タ12内 と加算される。この場合もバレルシフタ7により乗算結
果aMxj-MをLビット下方ビットシフトしているため、AL
U8でのオーバーフローは発生しない。ALU8は加算出力と
して をシフタ9へ出力する。端子13に加えられたシフト量は
今回はk+Lであり、ALUの をk+Lビット上方シフトして出力する。この場合、ALU8
の出力 の上位ビットが式(8)を満すか否かにより、オーバーフ
ローを起こさないか起こすかが決まる。いま、式(8)が
満足されておりオーバーフローを起こさない場合を考え
る。この場合オーバーフロー検出器10はALU8もシフタ9
もオーバーフローしていないため、オーバーフロー否発
生をオーバーフロー訂正器11に伝え、オーバーフロー訂
正器はyjをk+Lビット上位方向にビットシフトされたシ
フタ9の出力をレジスタ12に伝える。レジスタ12の上位
Nビットが出力端子14に伝えられ、-1から+1までの範囲
の値を持ったNビット出力yjが端子14に得られる。一
方、ALU8の出力は式(8)を満足しておらずオーバーフロ
ーとなった時を考える。この場合、オーバーフロー検出
器10はオーバーフロー発生及びオーバーフロー発生方向
(正又は負)をオーバーフロー訂正器11に伝え、オーバ
ーフロー訂正器11はシフタ9の出力の代わりに正または
負の最大値である+1または-1をレジスタ12へ伝える。こ
のため、レジスタ12の上位Nビットを出力とする出力端
子14にはオーバーフローの方向に従ってNビット表現さ
れる+1または-1が得られる。以上の説明は式(1)のMの
値が小さい時の場合で、この場合は容易に式(9)が成立
する。このため、出力yjはシフタ9による最終シフトで
オーバーフローしない限り、正しい値を与えており、演
算精度もNビット分存在する。Next, the M-th operation for calculating the formula (1) will be described.
A M and x jM are input to terminals 1 and 2, respectively, and stored in registers 3 and 4, respectively. Register 3
And the output of the register 4 is input to the multiplier 5, and a M x j M is output in the form of the equation (5). This a M x j M is shifted L bits downward by the barrel shifter 7, and then in ALU8 in register 12. Is added. Also in this case, since the barrel shifter 7 shifts the multiplication result a M x j M downward by L bits, AL
No overflow at U8. ALU8 as addition output Is output to the shifter 9. The shift amount applied to terminal 13 is k + L this time, Is shifted up by k + L bits and output. In this case, ALU8
Output Whether the overflow occurs or not depends on whether the upper bits of s satisfy Eq. (8). Now, consider the case where the equation (8) is satisfied and an overflow does not occur. In this case, the overflow detector 10 is the ALU 8 and the shifter 9
Since it has not overflowed, the overflow corrector 11 informs the overflow corrector 11 that the output of the shifter 9 bit-shifted y j in the upper direction of k + L bits to the register 12. The upper N bits of the register 12 are transmitted to the output terminal 14, and the N-bit output y j having a value in the range of -1 to +1 is obtained at the terminal 14. On the other hand, consider the case where the output of ALU8 does not satisfy equation (8) and overflows. In this case, the overflow detector 10 informs the overflow correction and the overflow occurrence direction (positive or negative) to the overflow corrector 11, and instead of the output of the shifter 9, the overflow corrector 11 is a positive or negative maximum value +1 or Transmit -1 to register 12. Therefore, +1 or -1 represented by N bits is obtained at the output terminal 14 that outputs the upper N bits of the register 12 according to the overflow direction. The above description is for the case where the value of M in equation (1) is small, and in this case, equation (9) is easily established. Therefore, the output y j is given a correct value as long as it does not overflow in the final shift by the shifter 9, and the calculation accuracy is N bits.
一方式(1)のMの値が大きい時式(9)が設立しなくなる。
この場合、端子6に加える下方シフト量をLではなく、
Lより小さく式(9)が成立するL′を与えると式(1)の演
算中にオーバーフローを発生する危険性が0ではなくな
るものの演算精度を高く保てる。ただし、この場合、自
明のことであるが端子13に与えるシフト量も第1回目よ
り第M-1回目までは0と先例と同じで良いが、第M回目
にはk+L′とする必要がある。以下この様な場合の第P
回目にALU8がオーバーフローした場合について説明す
る。第P-1回目までは先の例と同じであり、レジスタ12
に が格納されているものとする。On the other hand, when the value of M in equation (1) is large, equation (9) will not be established.
In this case, the downward shift amount applied to the terminal 6 is not L, but
If L'smaller than L and satisfying the formula (9) is given, the risk of overflow occurring during the calculation of the formula (1) is not 0, but the calculation accuracy can be kept high. However, in this case, it is obvious that the shift amount given to the terminal 13 is 0 from the first time to the M-1th time, which is the same as the previous example, but it is necessary to be k + L 'at the Mth time. There is. In the following case P
The case where ALU8 overflows for the second time will be described. Up to the P-th time, the same as the previous example, register 12
To Is stored.
第P回目には端子1,2を介してレジスタ3,4には各々ap,x
j-pが格納される。乗算器5はレジスタ3,4よりap,xj-p
を入力され出力apxj-pを出力する。バレルシフタ7によ
りL′ビット下方ビットシフトされたapxj-pとレジスタ
12に蓄えられ はALU8により加算されるが、オーバーフローを発生す
る。いまオーバーフローが正の方向で起こったとすれば
ALU出力は負の値となる。シフタ9は第P回目では端子1
3に0が入力されているためオーバーフローを発生せ
ず、ALUで負の値として出力されたオーバーフローした
結果をオーバーフロー訂正器11に供給する。オーバーフ
ロー検出器10はALUがオーバーフローしていることを検
出し、オーバーフロー発生及び正側オーバーフローであ
ることをオーバーフロー訂正器11に知らせる。このため
オーバーフロー訂正器11はシフタ9からの負の出力を無
視し、正の最大値をレジスタ12に伝える。よって、レジ
スタ12には正の最大値 として蓄えられALUのオーバーフローの影響を軽減して
いる。At the P-th time, a p , x is applied to registers 3 and 4 via terminals 1 and 2, respectively.
jp is stored. Multiplier 5 is a p , x jp from registers 3 and 4
Is input and the output a p x jp is output. A p x uk a register by barrel shifter 7 is L 'bit lower bit shifting
Stored in 12 Is added by ALU8, but it causes an overflow. Now if the overflow happens in the positive direction
The ALU output has a negative value. Shifter 9 is terminal 1 at the Pth time
Since 0 is input to 3, the overflow does not occur, and the overflow result output as a negative value in the ALU is supplied to the overflow corrector 11. The overflow detector 10 detects that the ALU has overflowed, and notifies the overflow corrector 11 that an overflow has occurred and that it is a positive side overflow. Therefore, the overflow corrector 11 ignores the negative output from the shifter 9 and transmits the positive maximum value to the register 12. Therefore, register 12 has the maximum positive value. The effect of ALU overflow is reduced.
第2図はオーバーフロー検出器10の一実施例であり、シ
フタ9の入力が5ビットの場合を考えており、端子100,
101,102,103,104はシフタの入力Z0 *,Z1 *,Z2 *,Z3 *,Z
4 *端子、排他的論理ノアゲート110,111,112,113,論理オ
アゲート120,121,122,123,アンドゲート130,200,読出専
用メモリ150,シフトビット数入力端子7,オーバーフロー
検出端子160,オーバーフロー方向端子170反転ALUオーバ
ーフロー入力端子190,ALU反転最上位ビット端子180,選
択回路210より構成される。ここ読出専用メモリ150はア
ドレスに端子13が接続され表1で示されるデータを格納
している。つまり表1は端子13より 加えられるシフト量(k+L)に従って最上位ビット方向か
ら論理0の連が続くものである。ALU回路には前述した
文献にも記載されいる様にオーバーフロー発生を知らせ
る端子がすでに存在し、かつ、最上位ビットを別途出力
する端子があるため、これを各々端子190および180に加
える。選択回路210は前述したテキサスインスツルメン
ツ社の文献の7-146頁より7-151頁記載のICが利用でき
る。FIG. 2 shows an embodiment of the overflow detector 10, and it is assumed that the input of the shifter 9 is 5 bits.
101,102,103,104 are shifter inputs Z 0 * , Z 1 * , Z 2 * , Z 3 * , Z
4 * terminal, exclusive logical NOR gate 110,111,112,113, logical OR gate 120,121,122,123, AND gate 130,200, read only memory 150, shift bit number input terminal 7, overflow detection terminal 160, overflow direction terminal 170 inversion ALU overflow input terminal 190, ALU inversion top It is composed of a bit terminal 180 and a selection circuit 210. The read only memory 150 stores the data shown in Table 1 with the terminal 13 connected to the address. In other words, Table 1 is from terminal 13 A series of logical 0s continues from the most significant bit direction according to the shift amount (k + L) added. Since the ALU circuit already has a terminal for notifying the occurrence of overflow as described in the above-mentioned document and has a terminal for outputting the most significant bit separately, this is added to the terminals 190 and 180, respectively. As the selection circuit 210, the ICs described on pages 7-46 to 7-151 of the aforementioned Texas Instruments company document can be used.
ALUのオーバーフローに関しては前述した様にALU内部に
オーバーフロー検出機構があるので以下主にシフタのオ
ーバーフロー検出について述べ、最後にALUとシフタ双
方のオーバーフローに関して述べる。Regarding the overflow of the ALU, since the overflow detection mechanism is inside the ALU as described above, the overflow detection of the shifter will be mainly described below, and finally the overflow of both the ALU and the shifter will be described.
いま、2ビットシフト指定が端子13より入力され、ALU
出力が1,1,1,0,1,として端子100,101,102,103,104の各
々に加わったとすると、ゲート110,111,112,113には各
々1,1,0,0,が出力される。この時のROMの出力は表1よ
り0,0,1,1であり、ROM出力とゲート110,111,112,113の
出力がゲート120,121,122,123でオアを取られる。比較
すべき上位2ビット以下はROM出力が1であるためゲー
ト120,121,122,123の出力は全て1となる。このため、
ゲート130は1を出力し、オーバーフローがなかったこ
と、換言すれば端子100,101,102に加えられたZ0,Z1,Z
2が同一内容であることを示している。Now, the 2-bit shift designation is input from terminal 13 and the ALU
Assuming that the output is 1,1,1,0,1, and is applied to each of the terminals 100,101,102,103,104, 1,1,0,0 are output to the gates 110,111,112,113, respectively. The output of the ROM at this time is 0,0,1,1 from Table 1, and the ROM output and the outputs of the gates 110,111,112,113 are ORed by the gates 120,121,122,123. Since the ROM output is 1 for the upper 2 bits or less to be compared, the outputs of the gates 120, 121, 122, 123 are all 1. For this reason,
The gate 130 outputs 1 and there was no overflow, in other words Z 0 , Z 1 , Z applied to the terminals 100, 101, 102.
2 indicates that they have the same content.
一方、同じ2ビットシフト指定が端子13より入力され、
ALU出力が1,1,0,0,1として端子100,101,102,103,104の
各々に加わったとすると、ゲート110,111,112,113の各
々には1,0,1,0が出力される。この結果ゲート120,121,1
22,123には1,0,1,1が得られ、ゲート121が0を出力する
ためゲート130は0を出力しオーバーフローが発生する
ことを示す。この時のオーバーフローの方向は端子100
から加えられたシフタの入力の最上位ビットが1である
から2ビットシフトにより頁方向のオーバーフローが発
生することが検出できる。正方向のオーバーフローの検
出も同様である。On the other hand, the same 2-bit shift designation is input from terminal 13,
If the ALU output is added to each of the terminals 100, 101, 102, 103, 104 as 1,1,0,0,1, 1,0,1,0 is output to each of the gates 110,111,112,113. This results in gates 120, 121, 1
22,123 gives 1,0,1,1. Since the gate 121 outputs 0, the gate 130 outputs 0, indicating that an overflow occurs. At this time, the direction of overflow is terminal 100.
Since the most significant bit of the input of the shifter added from 1 is 1, it can be detected that the page-direction overflow occurs due to the 2-bit shift. The same applies to detection of overflow in the forward direction.
以下の説明により、ゲート130が0の時はシフタのオー
バーフローが発生しており、また、端子190が0の時はA
LUのオーバーフローが発生していることがわかる。よっ
てゲート200により、どちらか一方でも0となると端子1
60に0を出力し、オーバーフローが発生していることを
知らせる。ALUとシフタは同時にオーバーフローとなら
ない事を仮定しているためゲート130がゼロの時はシフ
タのオーバーフローであるから端子100に加えられた極
性符号ビットを、ゲート130が1の時は少くともシフタ
のオーバーフローではないから反転したALUの最上位ビ
ット出力を選択回路210で選択して端子170に出力する。
ALUオーバーフローの時ALUの最上位ビットを出力するの
は、オーバーフローにより極性(最上位ビット)が反転
するためである。According to the following explanation, when the gate 130 is 0, the shifter overflows, and when the terminal 190 is 0, A
It can be seen that an LU overflow has occurred. Therefore, depending on the gate 200, if either one becomes 0, the terminal 1
Outputs 0 to 60 to indicate that an overflow has occurred. Since it is assumed that the ALU and the shifter do not overflow at the same time, when the gate 130 is zero, the shifter overflows. Therefore, when the gate 130 is 1, at least the polarity sign bit added to the terminal 100 is used. Since it is not an overflow, the inverted most significant bit output of the ALU is selected by the selection circuit 210 and output to the terminal 170.
When the ALU overflows, the most significant bit of the ALU is output because the polarity (most significant bit) is inverted due to the overflow.
第3図はオーバーフロー訂正器の一構成図で、選択回路
300、正の最大値入力端子301,負の最大値入力端子302,
シフタ出力入力端子303,訂正出力端子304からオーバー
フロー発生入力端子160,オーバーフロー方向端子170か
ら構成されている。第2図の説明より、オーバーフロー
検出信号出力端子160はゼロの時オーバーフローを、オ
ーバーフロー方向信号出力端子170は1と時負方向0の
時正方向のオーバーフローを示すから、4入力1出力選
択回路を用いて、表2に示す様に接続すればよい。FIG. 3 is a block diagram of the overflow corrector.
300, positive maximum value input terminal 301, negative maximum value input terminal 302,
It is composed of a shifter output input terminal 303, a correction output terminal 304, an overflow occurrence input terminal 160, and an overflow direction terminal 170. From the description of FIG. 2, the overflow detection signal output terminal 160 indicates an overflow when it is zero, and the overflow direction signal output terminal 170 indicates an overflow in the positive direction when it is 1 and the negative direction is 0. It can be used and connected as shown in Table 2.
この様に接続するとオーバーフローが発生し、かつ正方
向オーバーフローの時は端子301に加えられた正の最大
値011…1が、またオーバーフローが発生し、かつ、負方
向オーバーフローの時は端子301に加えられた負の最大
値100…0が、さらに、オーバーフローが発生していない
場合は端子303に加えられた入力信号がそのまま選択回
路300の出力として加えられる。 When the connection is made in this way, overflow occurs, and in the case of positive direction overflow, the maximum positive value 011 ... 1 added to terminal 301 is generated, and when overflow occurs and negative direction overflow occurs, terminal 301 is added. 0, and the input signal applied to the terminal 303 is directly applied as the output of the selection circuit 300 when the overflow does not occur.
(発明の効果) 以上の様に本発明に従えば、FIRディジタルフィルタ等
の演算を精度良く実行するシグナルプロセッサなどに適
した小型の固定小数点演算回路を実現できる。(Effect of the Invention) According to the present invention as described above, it is possible to realize a small fixed-point arithmetic circuit suitable for a signal processor or the like that accurately executes an arithmetic operation such as an FIR digital filter.
また、本発明に従えば入出力のダイナミックレンジが同
じ数値演算であっても途中結果のダイナミックレンジが
大きくなるものには、演算精度とオーバーフロー発生の
トレードオフを任意に選択できる回路を提供できる。Further, according to the present invention, it is possible to provide a circuit capable of arbitrarily selecting the trade-off between the calculation accuracy and the overflow occurrence in the case where the dynamic range of the intermediate result becomes large even if the numerical calculation has the same input / output dynamic range.
第1図は本発明の一実施例を示す図、第2図はオーバー
フロー検出器の構成例を示す図、第3図はオーバーフロ
ー訂正器の構成例を示す図である。 図において、 1…入力端子、2…他の入力端子 3…レジスタ、4…他のレジスタ 5…乗算器、6…下位シフト量入力端子 7…バレルシフタ、8…算術論理ユニット 9…シフタ 10…オーバーフロー検出器 11…オーバーフロー訂正器、12…レジスタ 13…上位方向シフト量入力端子、14…出力端子 である。FIG. 1 is a diagram showing an embodiment of the present invention, FIG. 2 is a diagram showing a configuration example of an overflow detector, and FIG. 3 is a diagram showing a configuration example of an overflow corrector. In the figure, 1 ... Input terminal, 2 ... Other input terminal 3 ... Register, 4 ... Other register 5 ... Multiplier, 6 ... Lower shift amount input terminal 7 ... Barrel shifter, 8 ... Arithmetic logic unit 9 ... Shifter 10 ... Overflow Detector 11 ... Overflow corrector, 12 ... Register 13 ... Upward shift amount input terminal, 14 ... Output terminal.
Claims (1)
倍精度ビット数の積を出力する固定小数点乗算器と、前
記固定小数点乗算器出力を少くとも下位方向に複数ビッ
トシフトを行なえる倍精度ビット数のバレルシフタと、
前記バレルシフタの出力と後述するレジスタの内容に対
し算術論理演算を行なう倍精度ビット数のALUと、前記A
LUの出力に対し、少くとも上位方向にビットシフトを行
なう倍精度ビット数のシフタと、前記ALUもしくは前記
シフタにより出力データがオーバーフローを発生したこ
とを検出するオーバーフロー検出回路と、前記オーバー
フロー検出回路により制御され、オーバーフロー検出時
には前記シフタ出力をオーバーフロー方向の最大値に置
換するオーバーフロー訂正器と、前記オーバーフロー訂
正器出力を蓄える倍精度ビット数のレジスタと、前記レ
ジスタの少くとも上位単精度ビット数のデータを出力す
る出力端子とから少くとも構成されることを特徴とした
演算回路。1. A fixed-point multiplier that inputs two sets of data of single-precision bit numbers and outputs a product of double-precision bit numbers, and a plurality of bits can be shifted in the lower direction by at least the output of the fixed-point multiplier. Double precision bit number barrel shifter,
An ALU having a double precision bit number for performing an arithmetic logic operation on the output of the barrel shifter and the contents of a register described later;
With respect to the output of LU, a shifter with a double-precision bit number that shifts the bit at least in the upper direction, an overflow detection circuit that detects that output data has overflowed by the ALU or the shifter, and the overflow detection circuit An overflow corrector which is controlled and replaces the shifter output with a maximum value in the overflow direction when an overflow is detected, a double-precision bit number register for storing the overflow corrector output, and at least an upper single-precision bit number data of the register. An arithmetic circuit characterized by comprising at least an output terminal for outputting the.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60105534A JPH065505B2 (en) | 1985-05-17 | 1985-05-17 | Arithmetic circuit |
DE8686106742T DE3677051D1 (en) | 1985-05-17 | 1986-05-16 | PROCESSING CIRCUIT ALLOWED TO INCREASE THE ACCUMULATION THROUGHPUT. |
EP86106742A EP0202633B1 (en) | 1985-05-17 | 1986-05-16 | Processing circuit capable of raising throughput of accumulation |
CA000509343A CA1244955A (en) | 1985-05-17 | 1986-05-16 | Processing circuit capable of raising throughput of accumulation |
US06/864,268 US4811268A (en) | 1985-05-17 | 1986-05-19 | Processing circuit capable of raising throughput of accumulation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60105534A JPH065505B2 (en) | 1985-05-17 | 1985-05-17 | Arithmetic circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61262926A JPS61262926A (en) | 1986-11-20 |
JPH065505B2 true JPH065505B2 (en) | 1994-01-19 |
Family
ID=14410251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60105534A Expired - Lifetime JPH065505B2 (en) | 1985-05-17 | 1985-05-17 | Arithmetic circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH065505B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0577902B1 (en) * | 1992-07-10 | 1997-12-10 | International Business Machines Corporation | Decimation filter for a sigma-delta converter and A/D converter using the same |
-
1985
- 1985-05-17 JP JP60105534A patent/JPH065505B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS61262926A (en) | 1986-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0209049B1 (en) | Processing circuit capable of raising throughput of accumulation | |
US5317526A (en) | Format conversion method of floating point number and device employing the same | |
US4868778A (en) | Speed enhancement for multipliers using minimal path algorithm | |
KR100302093B1 (en) | How to multiply the binary input signal with the tap coefficient in the crossover digital finite impulse response filter and design the circuit arrangement and crossover digital filter | |
US4366549A (en) | Multiplier with index transforms modulo a prime or modulo a fermat prime and the fermat prime less one | |
JPH0778725B2 (en) | Modulo arithmetic unit | |
KR900008410B1 (en) | Cutting error compensating method and apparatus for sample signal | |
US5400271A (en) | Apparatus for and method of calculating sum of products | |
JPH067375B2 (en) | Arithmetic circuit | |
JPH065505B2 (en) | Arithmetic circuit | |
US4737925A (en) | Method and apparatus for minimizing a memory table for use with nonlinear monotonic arithmetic functions | |
JPS6027024A (en) | Arithmetic device | |
KR100309520B1 (en) | Multiplication methods and multiplication circuits with round-off capability | |
JPH08504046A (en) | Device for converting a floating point binary number to a logarithm in binary form and vice versa | |
JP2606326B2 (en) | Multiplier | |
JP2002318792A (en) | Apparatus and program for data arithmetic processing | |
CN116888575A (en) | Simple approximation based shared single-input multiple-weight multiplier | |
JP3523104B2 (en) | Fixed-point multiplier / adder | |
KR0129751B1 (en) | Encoding and decoding apparatus and method | |
JPH0224410B2 (en) | ||
JP4196434B2 (en) | Data rounding method and data rounding device | |
JP2000010763A (en) | Division circuit | |
KR940007927B1 (en) | Multiplication circuit of digital filter | |
JP2550597B2 (en) | Squarer | |
JP2828791B2 (en) | A method for quantizing partial sums used in the product-sum operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term |