JPH0353650B2 - - Google Patents
Info
- Publication number
- JPH0353650B2 JPH0353650B2 JP62024589A JP2458987A JPH0353650B2 JP H0353650 B2 JPH0353650 B2 JP H0353650B2 JP 62024589 A JP62024589 A JP 62024589A JP 2458987 A JP2458987 A JP 2458987A JP H0353650 B2 JPH0353650 B2 JP H0353650B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- circuit
- output
- input
- subtraction
- 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)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Description
【発明の詳細な説明】
本発明は、加減算装置に関し、例えばデイジタ
ル信号処理プロセツサに組み込み音声、画像等の
データを実時間で処理しうる高速、高精度の積和
演算機能を実現するのに有用である。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an addition/subtraction device, and is useful for realizing a high-speed, high-precision product-sum calculation function that can be incorporated into, for example, a digital signal processor and process data such as audio and images in real time. It is.
音声の合成または分析装置、あるいは通信分野
におけるモデム(変復調器)、デイジタル・フイ
ルタ、コーデツク(CODEC)、エコーキヤンセ
ラー等の装置では、デイジタル化された信号を実
時間で処理できる信号処理プロセツサの応用が検
討されている。 Applications of signal processing processors that can process digitized signals in real time are used in voice synthesis or analysis equipment, or in equipment such as modems, digital filters, codecs, and echo cancellers in the communications field. is being considered.
この信号処理プロセツサは、プログラム・メモ
リとデータを高速度で処理するための専用の乗算
器および加減算器を内蔵するLSIとして提供さ
れ、プログラムを変えることにより各種の用途に
適合させる。 This signal processing processor is provided as an LSI with built-in program memory and dedicated multipliers and adders/subtractors for processing data at high speed, and can be adapted to various uses by changing the program.
上記信号処理プロセツサを例えば音声信号のフ
イルタ処理に用いた場合、積和演算によつて内部
の演算データは16〜28ビツトの比較的大きな振幅
となる。このため、乗算器や加減算器の構造を固
定小数点データ演算型とすると、演算データのビ
ツト数の増加に伴ないハードウエア規模が指数関
数的に大きくなり、LSI化が困難となる。この問
題は、プロセツサの構成を浮動小数点データ演算
型とすることによつて解決できる。しかしなが
ら、乗算器と加減算器とをデータバスで接続し、
それぞれが独立して浮動小数点演算を行なうよう
構成された従来の汎用コンピユータのデータ処理
方式をそのまま採用すると、信号処理プロセツサ
の基本動作である積和演算に時間がかかり、信号
の実時間処理が困難となる。 When the above-mentioned signal processor is used, for example, for filter processing of an audio signal, the internal calculation data becomes a relatively large amplitude of 16 to 28 bits due to the product-sum calculation. For this reason, if the structure of the multiplier or adder/subtractor is a fixed-point data calculation type, the hardware scale will increase exponentially as the number of bits of calculation data increases, making it difficult to implement on an LSI. This problem can be solved by configuring the processor to operate on floating point data. However, if the multiplier and the adder/subtractor are connected by a data bus,
If we were to adopt the data processing method of conventional general-purpose computers, in which each device performs floating-point operations independently, the multiply-accumulate operation, which is the basic operation of a signal processing processor, would take time, making real-time processing of signals difficult. becomes.
本発明の目的は、LSI化に適し、加減算に伴う
オーバーフロー、アンダーフローの防止を可能と
した、音声等のデイジタル信号を実時間で高速に
処理できる新規な構成の信号処理プロセツサ等に
有用な加減算装置を提供することにある。 The purpose of the present invention is to provide an addition/subtraction processor suitable for LSI implementation, capable of preventing overflows and underflows associated with addition/subtraction, and useful for signal processing processors with a new configuration that can process digital signals such as audio at high speed in real time. The goal is to provide equipment.
本発明の更に他の目的は、ダイナミツクレンジ
の拡張されたデイジタル信号処理プロセツサに有
用な加減算装置を提供することにある。 Still another object of the present invention is to provide an adder/subtracter useful in a digital signal processor with an extended dynamic range.
以下、本発明の実施例を図面を参照して説明す
る。 Embodiments of the present invention will be described below with reference to the drawings.
第1図は本発明が適用されたデイジタル信号プ
ロセツサの全体構成図であり、1はプログラムを
格納するためのメモリ、2は上記プログラムメモ
リ1の読出しアドレスを指示するプログラムカウ
ンタ、3は上記プログラムメモリ1に接続された
命令レジスタ、4は命令レジスタ3に読出された
命令語からプロセツサを動作させるための各種の
制御信号Sを発生させる制御回路である。この実
施例では、メモリ1に格納される命令語は例えば
22ビツトからなり、それぞれオペレーシヨンコー
ドとデータ、アドレスまたはアドレス制御情報を
含んでいる。プログラムカウンタ2と命令レジス
タは16ビツトのデータバス(Dバス)20に接続
されている。 FIG. 1 is an overall configuration diagram of a digital signal processor to which the present invention is applied, in which 1 is a memory for storing programs, 2 is a program counter for instructing the read address of the program memory 1, and 3 is the program memory. An instruction register 1 is connected to the instruction register 3, and a control circuit 4 generates various control signals S for operating the processor from the instruction word read into the instruction register 3. In this embodiment, the instruction word stored in the memory 1 is, for example,
It consists of 22 bits, each containing an operation code, data, address, or address control information. The program counter 2 and instruction register are connected to a 16-bit data bus (D bus) 20.
5,6はデータを格納するためのメモリ、7は
汎用レジスタを示す。メモリ5,6は一方をラン
ダムアクセス・メモリ(RAM)、他方を読出し
専用メモリ(ROM)とすることができる。ま
た、それぞれのメモリは複数個の小容量のROM
あるいはRAMの複合体であつてもよい。上記メ
モリは16ビツトのデータを記憶し、各データは選
択回路8を介して16ビツトのXバス21あるいは
Yバス22に読出される。9,10はそれぞれ上
記データメモリ5,7の下位アドレスを指定する
レジスタ、11,12は上記メモリの上位アドレ
スを指定するレジスタである。尚、レジスタ11
はXバス21に読出すべきデータの上位アドレス
を、またレジスタ12はYバス22に読出すべき
データの上位アドレスまたは汎用レジスタ7のア
ドレスを与えており、これらのレジスタには命令
レジスタ3からデータバス23を介してアドレス
情報を与えられる。 5 and 6 are memories for storing data, and 7 is a general-purpose register. One of the memories 5, 6 can be a random access memory (RAM) and the other can be a read only memory (ROM). In addition, each memory consists of multiple small-capacity ROMs.
Alternatively, it may be a composite of RAM. The memory stores 16-bit data, and each data is read out to the 16-bit X bus 21 or Y bus 22 via the selection circuit 8. Registers 9 and 10 designate lower addresses of the data memories 5 and 7, respectively, and registers 11 and 12 designate upper addresses of the memories. Furthermore, register 11
gives the upper address of the data to be read to the X bus 21, and the register 12 gives the upper address of the data to read to the Y bus 22 or the address of the general-purpose register 7, and these registers receive the data from the instruction register 3. Address information is provided via bus 23.
14はXバス21とYバス22から与えられる
2つのデータの積を算出し、結果をPバス24に
出力する浮動小数点演算型の乗算器であり、この
乗算器は、後述するように2つの入力データX,
Yを保持するためのレジスタを含み、演算されな
い2つのデータX,YをそのままXバス25、Y
バス26に出力する。 14 is a floating point multiplier that calculates the product of two data given from the X bus 21 and the Y bus 22 and outputs the result to the P bus 24. Input data X,
It includes a register to hold Y, and the two unoperated data X and Y are directly transferred to the X bus 25 and Y.
Output to bus 26.
15は浮動小数点演算型の加減算器であり、上
記乗算器14の出力データX,Y,Pおよびデー
タバス20,27のデータD,Aを入力として演
算を行ない、その結果を累算器16に出力する。
17は上記累算器16にラツチされた浮動小数点
データを20ビツトとデータバス(Aバス)27に
出力すると共に、上記データを16ビツトのデータ
に変換してDバス20に出力するスイツチ回路、
18は上記乗算器14および加減算器15に接続
され、これらの演算結果に関する状態コードを記
憶する状態コードレジスタである。 Reference numeral 15 denotes a floating-point operation type adder/subtractor, which performs calculations using the output data X, Y, P of the multiplier 14 and the data D, A of the data buses 20, 27 as input, and sends the result to the accumulator 16. Output.
17 is a switch circuit which outputs the floating point data latched in the accumulator 16 to the data bus (A bus) 27 as 20 bits, and converts the above data into 16 bit data and outputs it to the D bus 20;
A state code register 18 is connected to the multiplier 14 and the adder/subtractor 15 and stores a state code related to the results of these operations.
30はデータバス20上の16ビツトのデータを
外部端子D0〜D15に並列的に出力するための出力
レジスタ、31は上記外部端子からの16ビツトデ
ータをデータバス20に並列的に取り込むための
入力レジスタである。また32は端子SIENの入
力パルスが“1”の期間中に、端子SICKの入力
クロツクに同期して端子SIからのシリアル入力デ
ータを取り込むための16ビツトのシフトレジス
タ、33は端子SOENの入力パルスが“1”の期
間中に、端子SOCKの入力クロツクに同期して端
子SOにデータを直列的に出力するための16ビツ
トのシフトレジスタを示す。これら2つのシフト
レジスタはそれぞれデータバス20と16ビツト並
列接続されている。 30 is an output register for outputting 16-bit data on the data bus 20 in parallel to external terminals D0 to D15 , and 31 is for capturing 16-bit data from the external terminals to the data bus 20 in parallel. is the input register of Further, 32 is a 16-bit shift register for taking in serial input data from the terminal SI in synchronization with the input clock of the terminal SICK while the input pulse of the terminal SIEN is "1", and 33 is the input pulse of the terminal SOEN. This shows a 16-bit shift register for serially outputting data to the terminal SO in synchronization with the input clock of the terminal SOCK during the period when is "1". These two shift registers are each connected in parallel with the data bus 20 for 16 bits.
35はプロセツサの動作状態を制御するレジス
タ、36はリピート命令によりプロセツサに或る
命令を繰り返して実行させる場合、その繰り返し
回数がセツトされるカウンタ、37はプロセツサ
の内部状態を示すステータス・レジスタを示す。
レジスタ35,37の内容はそれぞれデータバス
20、端子D0〜D15を介して外部から書込み、読
出しが可能である。 35 is a register that controls the operating state of the processor; 36 is a counter to which the number of repetitions is set when the processor is caused to repeatedly execute a certain instruction by a repeat instruction; and 37 is a status register that indicates the internal state of the processor. .
The contents of the registers 35 and 37 can be written and read from the outside via the data bus 20 and terminals D0 to D15 , respectively.
40はプロセツサ動作への割込みと入出力動作
とを制御するための制御回路であり、例えば端子
SIEN,SOENの入力信号立上りでシフトレジス
タ32,33を動作可能とし、それぞれの信号の
立下りでプログラムに割り込をかけ、また、端子
IEへの入出力信号の立上りでレジスタ30,3
1を起動し、その立下りでプログラムに割り込み
をかけるよう動作する。41は外部の制御装置
(例えばマイクロコンピユータ)からの信号に応
じてプロセツサ動作を制御するフアンクシヨン制
御回路であり、例えば端子TXAKからDMA転送
モードの受認信号、端子R/Wから並列入出力デ
ータの転送方向を示す信号、端子CSからこのプ
ロセツサを外部装置が選択したことを示す信号、
端子TESTからテスト動作モードの指定信号、
RSTからリセツト信号、端子F0-3から外部装置
による動作制御信号をそれぞれ受け取り、端子
TXRQから並列データ転送要求信号を出力する。
端子BitI/Oはデータを1ビツトずつ入出力する
ための双方向入出力端子を示す。42はクロツク
パルス発生回路であり、端子OSCを介して外部
回路より基本となるクロツクを受けとり、これに
基づきプロセツサ動作に必要な各種の内部クロツ
クを発生し、また、端子SYNCにプロセツサの内
部動作と外部システムの同期用のクロツクを出力
する。 40 is a control circuit for controlling interrupts to processor operations and input/output operations;
The shift registers 32 and 33 are enabled at the rising edge of the SIEN and SOEN input signals, and the program is interrupted at the falling edge of each signal.
At the rising edge of the input/output signal to IE, registers 30 and 3
1 and interrupts the program at the falling edge. 41 is a function control circuit that controls the processor operation according to signals from an external control device (for example, a microcomputer); for example, a DMA transfer mode acknowledgment signal is sent from the terminal TXAK, and a parallel input/output data A signal indicating the transfer direction, a signal indicating that this processor has been selected by an external device from terminal CS,
Test operation mode specification signal from terminal TEST,
Receives a reset signal from RST and an operation control signal from an external device from terminals F 0-3 , respectively.
Outputs parallel data transfer request signal from T X RQ.
The terminal BitI/O indicates a bidirectional input/output terminal for inputting and outputting data one bit at a time. 42 is a clock pulse generation circuit, which receives the basic clock from an external circuit via the terminal OSC, generates various internal clocks necessary for processor operation based on this, and also outputs the internal operation of the processor and external clocks to the terminal SYNC. Outputs the clock for system synchronization.
次に第2図、第3図、第4図により乗算器14
と加減器15について更に説明する。 Next, according to FIGS. 2, 3, and 4, the multiplier 14
The adjuster 15 will be further explained.
乗算器14には、第2図に示す如くXバス2
1、Yバス22の16ビツトのデータが入力され
る。これらのデータはメモリ5,6、汎用レジス
タ7あるいはデータバス20から与えられる。第
3図Aに示すように、これらのデータは下位4ビ
ツトが指数部、上位12ビツトが仮数部であり、斜
線を施して示したそれぞれの部分の最上位ビツ
ト、すなわち23,215の位置にあるビツトがサイ
ンビツトとなつている。また、小数点は215と214
との間にある。第2図に示す如く、Xバス21と
Yバス22から与えられた指数部データと仮数部
データは、それぞれレジスタ51,52,53お
よび54に保持され、レジスタ51,52の指数
部データは加算回路55によつて加算され4ビツ
トの出力レジスタ56を介してPバス24に出力
される。一方、レジスタ53,54の仮数部デー
タは、通常の固定小数点演算の場合と同様の回路
構成をもつ乗算回路57に入力され、乗算結果は
上位16ビツトが出力レジスタ58を介してPバス
24に出力される。つまり、乗算器14の演算出
力は、第3図Bに示す如く、下位4ビツトの指数
部と上位16ビツトの仮数部とからなる20ビツトの
データとなつて加減算器15に入力される。尚、
レジスタ52,54の出力はXバス25に、また
レジスタ51,53の出力はYバス26に送出さ
れ、それぞれ16ビツトのデータとして加減算器1
5に与えられる。 The multiplier 14 has an X bus 2 as shown in FIG.
1, 16-bit data of Y bus 22 is input. These data are given from memories 5 and 6, general register 7, or data bus 20. As shown in Figure 3A, in these data, the lower 4 bits are the exponent part, the upper 12 bits are the mantissa part, and the most significant bits of each part are shaded, that is, 2 3 and 2 15 . The bit in this position is the sign bit. Also, the decimal points are 2 15 and 2 14
It is between. As shown in FIG. 2, the exponent data and mantissa data given from the X bus 21 and Y bus 22 are held in registers 51, 52, 53 and 54, respectively, and the exponent data in registers 51 and 52 are added together. The sum is added by the circuit 55 and output to the P bus 24 via the 4-bit output register 56. On the other hand, the mantissa data of the registers 53 and 54 are input to a multiplication circuit 57 having a circuit configuration similar to that of normal fixed-point arithmetic, and the multiplication result is sent to the P bus 24 via the output register 58. Output. That is, the calculation output of the multiplier 14 is input to the adder/subtractor 15 as 20-bit data consisting of the lower 4 bits of the exponent part and the higher 16 bits of the mantissa part, as shown in FIG. 3B. still,
The outputs of registers 52 and 54 are sent to the X bus 25, and the outputs of registers 51 and 53 are sent to the Y bus 26, and each is sent to the adder/subtractor 1 as 16-bit data.
given to 5.
第4図A,Bに本発明の実施例である加減算器
15の構成を示す。第4図Aに示すように、加減
算器にはバス20,24〜27を介して、データ
D,P,X,Y,Aが入力される。これらのう
ち、データP,Y,Dは選択回路60に入力さ
れ、制御信号S1で指定された1つのデータが選択
される。また、データA,Xは選択回路61に入
力され制御信号S2で指定された1つのデータが選
択される。ここで、入力データD,X,Yはそれ
ぞれ第3図Aに示した16ビツトデータである。後
で述べるように、これらの16ビツトデータが指定
されたとき、選択回路60,61はこれらのデー
タを第3図Bに示した20ビツトデータに変換して
出力する構成となつている。このビツト変換は、
入力データD,X,Yが固定小数点データか浮動
小数点データかによつて異なり、変換動作は制御
信号S3によつて指定される。これによつて浮動小
数点演算型の加減算器で固定小数表示の入力デー
タも処理できるようになつている。尚、制御信号
S1,S2,S3…Soはプログラム中の命令語に対応し
て制御回路4から出力される。 FIGS. 4A and 4B show the configuration of an adder/subtractor 15 according to an embodiment of the present invention. As shown in FIG. 4A, data D, P, X, Y, and A are input to the adder/subtractor via buses 20, 24-27. Among these, data P, Y, and D are input to the selection circuit 60, and one data designated by the control signal S1 is selected. Further, the data A and X are input to the selection circuit 61, and one data designated by the control signal S2 is selected. Here, input data D, X, and Y are each 16-bit data shown in FIG. 3A. As will be described later, when these 16-bit data are specified, the selection circuits 60 and 61 are configured to convert these data into 20-bit data shown in FIG. 3B and output the data. This bit conversion is
The conversion operation differs depending on whether the input data D, X, Y are fixed point data or floating point data, and the conversion operation is specified by the control signal S3 . This allows the floating-point type adder/subtractor to process input data in fixed-point representation. Furthermore, the control signal
S 1 , S 2 , S 3 , . . . S o are output from the control circuit 4 in accordance with command words in the program.
選択回路60からの出力データをβ(指数部βE、
仮数部βM)、選択回路61からの出力データをα
(指数部αE、仮数部αM)とすると、指数部データ
αEは選択回路62を介して比較回路63に入力さ
れ、指数部データβEと大小比較される。また、こ
れらの指数部データαE、βEはそれぞれ引算回路6
4と選択回路65にも入力される。仮数部データ
αMはネゲート回路66を介して選択回路67,
68に入力され、仮数部データβMは直接選択回
路67,68に入力される。ネゲート回路66
は、この実施例の場合、データαとβとの引算を
加算器構成のALU75により実現するために設
けられたものであり、加算演算の場合にはデータ
αMはネゲート回路を素通りする。上記選択回路
65,67,68は、それぞれ比較回路63の出
力信号に応じて2つの入力のうちの一方を選択す
る。選択回路65の出力はラツチ回路71に、選
択回路67の出力はシフト回路69を介してラツ
チ回路72に、また選択回路68の出力はラツチ
回路73にそれぞれタイミング信号Cでラツチさ
れる。引算回路64も上記比較回路63の出力に
よつて制御され、比較結果に応じて入力αE,βEの
大きい方から小さい方を引算するよう動作する。
シフト回路69は、選択回路70を介して得られ
る上記引算回路64の出力に応じたビツト数だ
け、入力データを右方向にシフト動作する。この
シフト回路69の動作は、選択回路70に入力さ
れるもう一つのデータEによつても制御でき、シ
フトビツト数の選択は制御信号S7によつて行なわ
れる。 The output data from the selection circuit 60 is β (exponential part β E ,
the mantissa part β M ), and the output data from the selection circuit 61 as α
(Exponent part α E , mantissa part α M ), the exponent part data α E is inputted to the comparison circuit 63 via the selection circuit 62 and compared in magnitude with the exponent part data β E. Moreover, these exponent part data α E and β E are respectively input to the subtraction circuit 6
4 and is also input to the selection circuit 65. The mantissa data α M is passed through a negation circuit 66 to a selection circuit 67,
68, and the mantissa data β M is directly input to selection circuits 67 and 68. Negate circuit 66
In the case of this embodiment, is provided to realize the subtraction of data α and β by the ALU 75 having an adder configuration, and in the case of an addition operation, data α M passes through the negation circuit. The selection circuits 65, 67, and 68 each select one of the two inputs according to the output signal of the comparison circuit 63. The output of the selection circuit 65 is latched by a latch circuit 71, the output of the selection circuit 67 is latched by a latch circuit 72 via a shift circuit 69, and the output of the selection circuit 68 is latched by a latch circuit 73 by a timing signal C. The subtraction circuit 64 is also controlled by the output of the comparison circuit 63, and operates to subtract the smaller one of the inputs α E and β E from the larger one according to the comparison result.
The shift circuit 69 shifts the input data to the right by the number of bits corresponding to the output of the subtraction circuit 64 obtained via the selection circuit 70. The operation of the shift circuit 69 can also be controlled by another data E input to the selection circuit 70, and the number of shift bits is selected by the control signal S7 .
ラツチ回路72,73の出力eA,eBは、第4図
Bに示すように、制御信号S8で動作する固定小数
点演算型の加算器(ALU)75に入力され、加
算結果UMは左方向シフト回路76に与えられる。
一方、ラツチ回路71の出力γは定数加算回路7
7と、引算回路78の一方の入力端子に入力され
る。79は加算器75の出力UMをは判定する零
検出回路であり、補数表示で与えられる加算器の
出力UMの最上位にあるサインビツトに続いた
“0”ビツトの連続個数をカウントする。UMが負
数の場合には、上記サインビツトに続く“1”ビ
ツトの連続個数をカウントする。上記零検出回路
79の出力θ1は、データの正規化およびオーバフ
ロー対策のため設けられた出力補正回路80を介
してシフト回路76に与えられ、このシフト回路
によるデータのシフトビツト数を決定する。また
上記零検出回路79の出力θ1は、引算回路78の
他方の入力端子にも入力され、この引算回路の出
力UEは出力補正回路80を介して累積器16の
指数部16Xに入力される。上記累積器16の仮
数部16Mには、出力補正回路80において補正
された上記シフト回路76からの出力データ
LM′が入力される。 The outputs e A and e B of the latch circuits 72 and 73 are inputted to a fixed-point arithmetic type adder (ALU) 75 operated by a control signal S8, as shown in FIG. 4B , and the addition result U M is The signal is applied to a leftward shift circuit 76.
On the other hand, the output γ of the latch circuit 71 is
7 and one input terminal of the subtraction circuit 78. A zero detection circuit 79 determines the output U M of the adder 75, and counts the number of consecutive "0" bits following the sign bit at the top of the output U M of the adder given in complement representation. If U M is a negative number, count the number of consecutive "1" bits following the sign bit. The output θ 1 of the zero detection circuit 79 is applied to the shift circuit 76 via an output correction circuit 80 provided for data normalization and overflow countermeasures, and determines the number of bits to shift data by this shift circuit. The output θ 1 of the zero detection circuit 79 is also input to the other input terminal of the subtraction circuit 78, and the output U E of this subtraction circuit is sent to the exponent part 16X of the accumulator 16 via the output correction circuit 80. is input. The mantissa part 16M of the accumulator 16 contains the output data from the shift circuit 76 corrected by the output correction circuit 80.
L M ′ is input.
出力補正回路80は、加算器75から出力され
るオーバーフロー検出信号OVFと引算回路78
から出力されるアンダフロー検出信号UNFとに
応じて零検出回路79の出力θ1と定数加算回路7
7の出力θ2とのいずれかを選択する選択回路81
と、プログラムによる制御信号S9に応じて上記選
択回路81の出力とプログラムで与えられたデー
タFとのいずれかをシフト回路76にシフトビツ
ト数指示信号θとして与える選択回路82と、オ
ーバーフロー信号OVFが“1”のとき引算回路
出力UEに1を加算し、この加算結果LEにもオー
バーフローを生じたとき信号FOVFを出力するイ
ンクリメント回路83と、上記インクリメント回
路83と累算器16の指数部16Xとの間に挿入
された指数部補正回路85と、シフト回路76と
上記累数器16の仮数部16Mとの間に挿入され
た仮数部補正回路87と、上記2つの補正回路8
5,87の動作を信号UNFおよびEOVEに応じ
て制御する制御回路89からなつている。 The output correction circuit 80 outputs the overflow detection signal OVF output from the adder 75 and the subtraction circuit 78.
The output θ 1 of the zero detection circuit 79 and the constant addition circuit 7 according to the underflow detection signal UNF output from the
A selection circuit 81 for selecting one of the outputs θ 2 and 7
and a selection circuit 82 which supplies either the output of the selection circuit 81 or the data F given by the program as a shift bit number instruction signal θ to the shift circuit 76 in response to a control signal S9 by the program, and an overflow signal OVF. An increment circuit 83 that adds 1 to the subtraction circuit output U E when it is "1" and outputs a signal FOVF when the addition result L E also overflows, and an exponent of the increment circuit 83 and the accumulator 16. an exponent part correction circuit 85 inserted between the shift circuit 76 and the mantissa part 16 M of the accumulator 16; 8
It consists of a control circuit 89 that controls the operations of 5 and 87 in accordance with signals UNF and EOVE.
以上の構成からなる加減算器15は次のように
動作する。 The adder/subtractor 15 having the above configuration operates as follows.
第4図Aに示した2つの入力選択回路61,6
0のそれぞれの出力α,βは浮動小数点表示のデ
ータであり、その値は次式で表わされる。 Two input selection circuits 61, 6 shown in FIG. 4A
The respective outputs α and β of 0 are floating point data, and their values are expressed by the following equation.
α=αM・2〓E
β=βM・2〓E ……(1)
今、αE>βEの関係にある2つのデータα,βの
加算演算を行なう場合を仮定すると、加算結果Z
は、
Z=αM・2〓E+βM・2〓E
=〔αM+βM・2-(〓E-〓E)〕・2〓E (2)
で与えられる。 α=α M・2〓 E β=β M・2〓 E ……(1) Now, assuming that we are performing an addition operation on two data α and β that have a relationship of α E > β E , the addition result is Z
is given by Z=α M・2〓 E +β M・2〓 E = [α M +β M・2 -( 〓 E- 〓 E) ]・2〓 E (2).
比較回路63はαEとβEの大小を比較し、選択回
路65には大きい方の指数部データαEを選択さ
せ、選択回路67には小さい方の指数部βEに対応
する仮数部データβMを選択させ、選択回路68
には大きい方の指数部αEに対応する仮数部データ
αMを選択させ、引算回路64には大きい方の指
数αEから小さい方の指数βEを引くよう制御信号を
与える。加算演算の実行中は、選択回路70は引
算回路64からの出力(αE−βE)を選択してお
り、シフト回路69は選択回路67出力βMを
(αE−βE)ビツトだけ右方向(下位ビツト方向)
にシフトするよう動作する。この結果、ラツチ回
路71,72,73の各出力は、γ=αE,eA=
βM・2-(〓E-〓E),eB=αMとなり、eA+eBの演算を行
なつた加算器75の出力UMは第(1)式の仮数部を
表わす。従つて、この段階で演算値Zは次式で示
される
Z=UM・2〓 ……(3)
零検出回路79と左方向シフト回路76は、加
算器出力UMをその絶対値が最大となるよう正規
化するためのものである。第5図Aに示す如く、
零検出回路79によつてデータUMのサインビツ
トに続く(小数点以下の)連続する“0”の個数
θ1を検出し、シフト回路76でデータUMをθ1ビ
ツトだけ左側(最上位ビツト側)にシフトすれ
ば、絶対値が最大の仮数部データのLMが得られ
る。UMが負数の場合には、第5Bの如く、連続
する“1”の個数だけシフトすればよい。この場
合指数部データγについては、引算回路78によ
つて(γ−θ1)の演算を行ない、その出力UEを
正規化された指数値とする。データUMにオーバ
ーフローが生じていなければ、インクリメント回
路83の出力LEは正規化された上記指数値UEに
等しくなり、正規化する処理は次式で表わすこと
ができる。 The comparison circuit 63 compares the magnitudes of α E and β E , causes the selection circuit 65 to select the larger exponent part data α E , and causes the selection circuit 67 to select the mantissa data corresponding to the smaller exponent part β E. β M is selected and the selection circuit 68
is caused to select the mantissa data α M corresponding to the larger exponent α E , and a control signal is given to the subtraction circuit 64 to subtract the smaller exponent β E from the larger exponent α E. During execution of the addition operation, the selection circuit 70 selects the output (α E - β E ) from the subtraction circuit 64, and the shift circuit 69 selects the output β M of the selection circuit 67 (α E - β E ) bits. only to the right (toward the lower bits)
It operates to shift to. As a result, the respective outputs of the latch circuits 71, 72, 73 are γ=α E , e A =
β M ·2 −( 〓 E− 〓 E) , e B = α M , and the output U M of the adder 75 that has performed the operation of e A +e B represents the mantissa part of equation (1). Therefore, at this stage, the calculated value Z is expressed by the following formula: Z=U M・2〓 (3) The zero detection circuit 79 and the leftward shift circuit 76 adjust the adder output U M so that its absolute value is the maximum. This is to normalize it so that As shown in Figure 5A,
The zero detection circuit 79 detects the number θ 1 of consecutive “0”s (below the decimal point) following the sign bit of the data U M , and the shift circuit 76 shifts the data U M by θ 1 bits to the left (most significant bit side). ), the mantissa data L M with the maximum absolute value can be obtained. If U M is a negative number, it is only necessary to shift by the number of consecutive "1"s, as in No. 5B. In this case, regarding the exponent part data γ, the subtraction circuit 78 performs the calculation (γ-θ 1 ), and the output UE is taken as the normalized exponent value. If no overflow occurs in the data U M , the output L E of the increment circuit 83 will be equal to the normalized exponent value U E , and the normalization process can be expressed by the following equation.
Z=〔UM・2〓1〕・2(〓-〓1)
=LM・2LE ……(4)
指数部γの大きさを4ビツトとすると、2の補
数表示によつてγが表わし得る値は〔+7γ
−8〕の範囲に制限される。従つて上記仮数部デ
ータの正規化の際、零検出回路の検出値θ1だけ完
全にデータUMを左方向にシフトしようとすると、
指数部側の(γ−θ1)の値が−8よりも小さくな
り、引算回路にアンダーフローを生ずる場合があ
る。このとき、(γ−θ1)の演算を行なう引算回
路78からは、データのアンダーフローを示す信
号(ボロー信号)UNFが発生される。第4図B
の回路では、上記信号UNFが発生したとき、選
択回路81が入力θ1に代えて定数加算回路77の
出力θ2を選択し、上記定数加算回路77が指数部
のデータγに定数「8」を加えた値をデータθ2と
して出力するようにしてある。このようにすれ
ば、例えばγの値「−5」のときθ2の値は「3」
となるから、仮数部データUMのシフトビツト数
は3ビツトに制限され、指数部の正規化後の値が
最小値「−8」に留まる。信号UNFが生じたと
き指数部を「−8」にする操作は、後で第9図で
説明する指数部補正回路85によつて行なわれ
る。 Z=[U M・2〓 1 ]・2 ( 〓 - 〓 1) = L M・2 LE ...(4) If the size of the exponent part γ is 4 bits, γ can be expressed by two's complement representation. The value that can be expressed is [+7γ
-8]. Therefore, when normalizing the mantissa data above, if we try to completely shift the data U M to the left by the detected value θ 1 of the zero detection circuit, we get
The value of (γ-θ 1 ) on the exponent side may become smaller than -8, causing an underflow in the subtraction circuit. At this time, a signal (borrow signal) UNF indicating data underflow is generated from the subtraction circuit 78 that performs the calculation of (γ-θ 1 ). Figure 4B
In the circuit, when the signal UNF is generated, the selection circuit 81 selects the output θ 2 of the constant addition circuit 77 in place of the input θ 1 , and the constant addition circuit 77 sets the constant “8” to the data γ of the exponent part. The added value is output as data θ 2 . In this way, for example, when the value of γ is "-5", the value of θ 2 is "3".
Therefore, the number of shift bits of the mantissa data U M is limited to 3 bits, and the normalized value of the exponent remains at the minimum value "-8". The operation of setting the exponent part to "-8" when the signal UNF occurs is performed by an exponent part correction circuit 85, which will be explained later with reference to FIG.
加算器75の演算結果UMに、第6図A,Bに
示す如くオーバーフローを生じた場合、キヤリー
出力にデータの真の符号が現われ、サインビツト
の位置に数値の最上位のビツトが現われている。
従つてこの場合には、オーバーフロー検出信号
OVFによつて、選択回路81と零検出回路79
の動作を停止させ、シフト回路76に1ビツト右
シフト動作をさせ、インクリメント回路83に
UE(=γ)+1の動作をさせ、データZを次式の
ように操作すればよい。 If an overflow occurs in the calculation result U M of the adder 75 as shown in FIG. 6A and B, the true sign of the data appears in the carry output, and the most significant bit of the numerical value appears in the sign bit position. .
Therefore, in this case, the overflow detection signal
By OVF, selection circuit 81 and zero detection circuit 79
, the shift circuit 76 is caused to shift right by 1 bit, and the increment circuit 83 is caused to shift to the right by 1 bit.
It is sufficient to perform the operation of U E (=γ)+1 and manipulate the data Z as shown in the following equation.
Z=〔UM・2-1〕・2(〓+1) ……(5)
上記の操作を行なうシフト回路76の1例を第
7図に示す。この回路は、シフトビツト数指示デ
ータθの各ビツトθ3〜θ0に対応した8ビツトのシ
フタ761、4ビツトのシフタ762、2ビツト
のシフタ763および1ビツトのシフタ764か
らなり、各シフタのそれぞれの信号ラインのスイ
ツチSW3〜SW0は、対応する制御ビツトθ3〜θ0が
“1”のとき下位ビツト側の接点に接続される。
また、1ビツトシフタ764の各スイツチSW0
は、オーバーフロー検出信号OVFが“1”のと
き上位ビツト側の接点に接続され、サインビツト
の出力線L19がキヤリー信号入力端子765と接
続されて、上述したデータの1ビツト右シフト動
作を実現する。 Z=[U M ·2 -1 ]·2 ( 〓 +1) (5) An example of the shift circuit 76 that performs the above operation is shown in FIG. This circuit consists of an 8-bit shifter 761, a 4-bit shifter 762, a 2-bit shifter 763, and a 1-bit shifter 764, each corresponding to each bit θ 3 to θ 0 of the shift bit number instruction data θ. The switches SW 3 to SW 0 of the signal line are connected to the contacts on the lower bit side when the corresponding control bits θ 3 to θ 0 are “1”.
In addition, each switch SW 0 of the 1-bit shifter 764
is connected to the contact on the upper bit side when the overflow detection signal OVF is "1", and the output line L19 of the sign bit is connected to the carry signal input terminal 765, realizing the above-mentioned 1-bit right shift operation of the data. .
第4図の回路で、加算器75のオーバーフロー
検出信号OVFが“1”となつたとき、インクリ
メント回路83による(γ+1)の演算結果にも
オーバーフローが生ずる場合がある。この場合に
は、演算結果Z(=α+β)にオーバーフローを
生じたことを意味し、このまま積和演算を続行す
れば、累算器16に得られる出力データの絶対値
は第8図Aの如く変化し、全く無意味な値とな
る。 In the circuit shown in FIG. 4, when the overflow detection signal OVF of the adder 75 becomes "1", an overflow may also occur in the calculation result of (γ+1) by the increment circuit 83. In this case, it means that an overflow has occurred in the calculation result Z (= α + β), and if the product-sum calculation continues as it is, the absolute value of the output data obtained from the accumulator 16 will be as shown in FIG. 8A. It changes and becomes a completely meaningless value.
制御回路89と補正回路85,87は、演算結
果Zに上記オーバーフローが生じたとき、第8図
Bに示すように出力データの絶対値を正あるいは
負の最大値に固定するよう動作する回路であり、
その具体的な構成例を第9図に示す。 The control circuit 89 and the correction circuits 85 and 87 are circuits that operate to fix the absolute value of the output data to the maximum positive or negative value, as shown in FIG. 8B, when the above-mentioned overflow occurs in the calculation result Z. can be,
A specific example of the configuration is shown in FIG.
第9図において、指数部補正回路85は、入力
ビツトL0〜L3に対応した2入力ANDゲート85
0〜853と2入力ORゲート860〜863か
らなり、各ビツト信号はこれらのゲートを介して
累算器16X側に出力される。指数部データのサ
インビツトL3が入力されるANDゲート853の
他方の入力端子には、インクリメント回路83か
ら出力されるオーバーフロー検出信号EOVFの反
転信号が入力され、ORゲート863の他方の入
力端子には引算回路78からのアンダーフロー検
出信号UNFが入力されている。また、データビ
ツトL0〜L2の入力されるANDゲート850〜8
52のそれぞれの他方の入力端子には信号UNF
の反転信号が入力され、ORゲート860〜86
2の他方の入力端子には信号EOVFが入力されて
いる。信号EOVFとUNFとは同時に“1”には
なり得ないため、指数部補正回路85は出力は、
信号EOVEが“1”のとき〔0111〕=+7となつ
て指数部を最大値にする。また、信号UNFが
“1”のときは〔1000〕=−8となり、前述のθ=
θ2のときの指数値を満足する。 In FIG. 9, the exponent part correction circuit 85 includes a two-input AND gate 85 corresponding to input bits L0 to L3 .
0 to 853 and two-input OR gates 860 to 863, and each bit signal is output to the accumulator 16X side via these gates. The inverted signal of the overflow detection signal EOVF output from the increment circuit 83 is input to the other input terminal of the AND gate 853 to which the sign bit L3 of the exponent part data is input, and the other input terminal of the OR gate 863 is input. An underflow detection signal UNF from the subtraction circuit 78 is input. Also, AND gates 850 to 8 to which data bits L 0 to L 2 are input
The other input terminal of each of 52 is connected to the signal UNF.
The inverted signal of
The signal EOVF is input to the other input terminal of 2. Since the signals EOVF and UNF cannot become "1" at the same time, the output of the exponent correction circuit 85 is
When the signal EOVE is "1", [0111]=+7, making the exponent part the maximum value. Also, when the signal UNF is "1", [1000] = -8, and the aforementioned θ =
Satisfies the index value when θ 2 .
一方、仮数部補正回路87は、サインビツト
L19をそのまま出力し、データビツトL4〜L18をそ
れぞれ2入力ORゲート871〜87N、2入力
ANDゲート881〜88Nを介して出力するよ
うになつている。各ORゲートの他方の入力には
制御回路89のANDゲート891の出力が与え
られ、各ANDゲートの他方の入力端子には制御
回路89のNANDゲート892の出力が与えら
れている。信号EOVFが“1”のとき、仮数部デ
ータが正の値、すなわちサインビツトL19が“0”
ならばANDゲート891とNANDゲート892
の出力が共に“1”となり補正回路87の出力は
正の最大値〔0111……11〕となる。また、サイン
ビツトL19が“1”ならば、NANDゲート892
の出力が“0”となるため、補正回路87の出力
は負の最大値〔1000……00〕となる。信号EOVF
が“0”のとき、これらの補正回路85,87は
入力データLE,LMをそのままデータLE′,LM′と
して出力する。これらの出力データLE′,LM′は
累算器16、スイツチ回路17を介してAバス2
7に出力され、加減算器15の選択回路61に帰
還される。 On the other hand, the mantissa correction circuit 87
Outputs L19 as is, and outputs data bits L4 to L18 to 2-input OR gates 871 to 87N, 2-inputs, respectively.
It is configured to output via AND gates 881 to 88N. The output of the AND gate 891 of the control circuit 89 is given to the other input of each OR gate, and the output of the NAND gate 892 of the control circuit 89 is given to the other input terminal of each AND gate. When the signal EOVF is “1”, the mantissa data is a positive value, that is, the sign bit L19 is “0”.
Then AND gate 891 and NAND gate 892
Both outputs become "1", and the output of the correction circuit 87 becomes the maximum positive value [0111...11]. Also, if the sign bit L19 is “1”, the NAND gate 892
Since the output of the correction circuit 87 becomes "0", the output of the correction circuit 87 becomes the negative maximum value [1000...00]. Signal EOVF
When is "0", these correction circuits 85 and 87 output the input data L E and L M as they are as data L E ' and L M '. These output data L E ′, L M ′ are sent to the A bus 2 via an accumulator 16 and a switch circuit 17.
7 and fed back to the selection circuit 61 of the adder/subtractor 15.
以上の動作説明から、本発明の適用されたデイ
ジタル信号処理プロセツサでは、乗算器14と加
減算器15がそれぞれ浮動小数点演算できること
が判る。ここで、Xバス21またはYバス22か
ら乗算器14へのデータ入力および乗算器14ま
たはAバス27から加減算器(ALU)15への
データ入力は、入力データのビツト数と受取り側
回路のデータビツト数が一致しているため、第1
0図A,Bに示す如く、データ間でのビツト位置
の変更はない。 From the above description of the operation, it can be seen that in the digital signal processor to which the present invention is applied, the multiplier 14 and the adder/subtractor 15 can each perform floating point operations. Here, data input from the X bus 21 or Y bus 22 to the multiplier 14 and data input from the multiplier 14 or A bus 27 to the adder/subtractor (ALU) 15 are based on the number of bits of the input data and the data of the receiving circuit. Since the number of bits matches, the first
As shown in Figures A and B, there is no change in bit position between data.
しかしながら、Xバス25、Yバス26、Dバ
ス20からの16ビツトデータを加減算器15に取
り込む場合には、仮数部データのビツト数が合わ
ないため、加減算器の入力選択回路60,61に
おいて第10図Cに示す如く、仮数部入力データ
Mの下位に4ビツトに“0”を追加する操作を必
要とする。また、累算器(ACC)16に得られ
た20ビツトの加減算器出力を16ビツトのDバス2
0に出力する際には、スイツチ回路17において
第10図Dに示す如く、仮数部Mの下位4ビツト
のデータを捨て、指数部4ビツト、仮数部12ビツ
トのデータに変換する操作を必要とする。 However, when the 16-bit data from the X bus 25, Y bus 26, and D bus 20 is taken into the adder/subtractor 15, the number of bits of the mantissa data does not match. As shown in FIG. 10C, it is necessary to add "0" to the lower 4 bits of the mantissa input data M. In addition, the 20-bit adder/subtractor output obtained in the accumulator (ACC) 16 is transferred to the 16-bit D bus 2.
When outputting 0, it is necessary to discard the lower 4 bits of the mantissa part M in the switch circuit 17 and convert the data to 4 bits of the exponent part and 12 bits of the mantissa part, as shown in FIG. 10D. do.
本発明の適用されたデイジタル信号処理プロセ
ツサでは、上述したデータの変換動作を行なう入
力選択回路60,61および出力スイツチ回路1
7を更に工夫し、プログラムの指定によりプロセ
ツサが固定小数点演算も実行できるようにしてい
る。 In the digital signal processing processor to which the present invention is applied, input selection circuits 60 and 61 and output switch circuit 1 perform the above-described data conversion operation.
7 has been further improved so that the processor can also perform fixed-point operations according to program specifications.
固定小数点データX,Yの乗算は乗算器14内
の仮数部データ乗算回路57において行なわれ
る。この場合は第11図Aに示す如く、16ビツト
の入力データX,Yのうち仮数部入力レジスタ5
3,54に入る上位12ビツトが有効データとして
扱われる。一方、固定小数点データの加減算の際
には、プログラムでの指定により加減算器15内
のシフト回路69,76のシフト動作を停止さ
せ、この状態で得られた仮数部の演算結果を利用
する。シフト回路69の動作停止は、固定小数点
データの演算命令が第4図Aのデータ線Eに数値
「0」のデータを与え、選択回路70が上記デー
タ線Eからの入力を選択するように制御信号S7を
発生するようにすればよい。シフト回路76の動
作停止は、第4図Bのデータ線Fに数値「0」の
データを与え、選択回路82が上記データ線Fか
らの入力を選択するよう制御信号S9を発生するよ
うにすればよい。 Multiplication of fixed point data X and Y is performed in a mantissa data multiplication circuit 57 within the multiplier 14. In this case, as shown in FIG. 11A, the mantissa input register 5 of the 16-bit input data
The upper 12 bits of bits 3 and 54 are treated as valid data. On the other hand, when adding or subtracting fixed-point data, the shift operations of the shift circuits 69 and 76 in the adder/subtractor 15 are stopped according to a designation in the program, and the operation result of the mantissa part obtained in this state is used. The operation of the shift circuit 69 is stopped by controlling the fixed-point data arithmetic instruction to give the numerical value "0" to the data line E in FIG. 4A, and the selection circuit 70 to select the input from the data line E. The signal S7 may be generated. To stop the operation of the shift circuit 76, a numerical value "0" is given to the data line F in FIG. 4B, and a control signal S9 is generated so that the selection circuit 82 selects the input from the data line F. do it.
上記固定小数点データの加減算において、乗算
器14またはAバスから加減算器15へのデータ
入力は、第11図Bに示す如く、仮数部の16ビツ
トのデータを浮動小数点演算の場合と同様に送り
込めばよい。Xバス、Yバス、Dバスからのデー
タ入力は、第11図Cの如く、全ビツトを仮数部
に入れ、累算器(ACC)に得られた仮数部デー
タは、第11図Dに示す如く、全ビツトをDバス
20に出力させる。 In addition and subtraction of the above fixed-point data, the data input from the multiplier 14 or the A bus to the adder/subtractor 15 is as shown in FIG. Bye. Data input from the X bus, Y bus, and D bus puts all bits into the mantissa as shown in Figure 11C, and the mantissa data obtained by the accumulator (ACC) is shown in Figure 11D. Thus, all bits are output to the D bus 20.
第12図は上述したビツト変換機能を備えた加
減算器の入力選択回路60の具体例を示す。この
回路図で、P0〜P19、Y0〜Y15、D0〜D15はそれぞ
れPバス24、Yバス26、Dバス20からの入
力データの各ビツトを示し、これらのうち、デー
タPの指数部P0〜P3はスイツチ601に入力さ
れ、スイツチ601の4つの出力端子はスイツチ
603の端子C0〜C3に接続される。データY,
Dの各ビツトとデータPの仮数部のビツトP4〜
P19はスイツチ602に入力され、スイツチ60
2の上位12ビツトの出力端子はデータβの上位ビ
ツトの出力線β8〜β19に接続され、下位4ビツト
の出力端子はスイツチ603の端子C4〜C7およ
びスイツチ601の他方の入力端子に接続されて
いる。スイツチ603はデータβの下位ビツトの
出力線β0〜β8に接続される8個の出力端子と、状
態“0”を与える4個の端子604を備えてい
る。605はプログラムの命令語に応じて制御回
路4から与えられる制御信号S1,S3に基づいて、
スイツチ601,602,603の駆動信号60
A,60B,60Cを発生する論理回路である。 FIG. 12 shows a specific example of an input selection circuit 60 for an adder/subtractor having the above-mentioned bit conversion function. In this circuit diagram, P 0 to P 19 , Y 0 to Y 15 , and D 0 to D 15 represent each bit of input data from the P bus 24, Y bus 26, and D bus 20, respectively. The exponent parts P 0 to P 3 of P are input to the switch 601, and the four output terminals of the switch 601 are connected to the terminals C 0 to C 3 of the switch 603. Data Y,
Each bit of D and the mantissa bit P4 of data P
P 19 is input to switch 602, and switch 60
The output terminals of the upper 12 bits of the data β are connected to the output lines β 8 to β 19 of the upper bits of the data β, and the output terminals of the lower 4 bits are connected to the terminals C 4 to C 7 of the switch 603 and the other input terminal of the switch 601. It is connected to the. The switch 603 has eight output terminals connected to the output lines β 0 -β 8 of the lower bits of the data β, and four terminals 604 that give the state "0". 605 is based on control signals S 1 and S 3 given from the control circuit 4 according to command words of the program.
Drive signal 60 for switches 601, 602, 603
This is a logic circuit that generates A, 60B, and 60C.
制御信号S1で選択すべきデータが指示される
と、信号60A,60Bによつてスイツチ60
1,602が動作し、データP,Y,Dのいずれ
かが、選択される。このとき、制御信号S3が浮動
小数点演算を指示していれば、スイツチ603
は、出力線β0〜β3を端子C0〜C3に、出力線β4〜β7
を端子C4〜C7(入力データPが選択されている場
合)または端子604(入力データYまたはDが
選択されている場合)に接続するよう動作する。
もし制御信号S2が固定小数点演算を指示していれ
ば、入力データに関係なく出力線β0〜β3が端子6
04に、β4〜β7が端子C4〜C7に接続される。 When data to be selected is specified by the control signal S1 , the switch 60 is activated by the signals 60A and 60B.
1, 602 operates, and either data P, Y, or D is selected. At this time, if the control signal S3 instructs floating point arithmetic, the switch 603
connects output lines β 0 to β 3 to terminals C 0 to C 3 , and connects output lines β 4 to β 7 to terminals C 0 to C 3.
to the terminals C 4 to C 7 (when input data P is selected) or to the terminal 604 (when input data Y or D is selected).
If the control signal S 2 indicates fixed-point arithmetic, the output lines β 0 to β 3 will be connected to terminal 6 regardless of the input data.
04, β 4 to β 7 are connected to terminals C 4 to C 7 .
第13図はもう1つの入力選択回路61の具体
的な回路構成を示す。この回路は、入力がAバス
とXバスの2種類となつている点を除いて第12
図と同様であり、説明は省略する。 FIG. 13 shows a specific circuit configuration of another input selection circuit 61. This circuit is the 12th circuit, except that there are two types of inputs: A bus and X bus.
It is the same as the figure, and the explanation will be omitted.
第14図は、累算器16に接続されるスイツチ
回路17の具体的な回路構成を示す。この回路に
おいて、累算器からの20ビツトの出力G0〜G19は
スイツチ171の入力端子に入力される。スイツ
チ171は、データバス20の各信号線D0〜D15
と接続された16個の出力端子を有し、入力端子と
出力端子との接続は論理回路172の出力信号1
7A,17Bで制御される。プログラムの命令に
よる制御信号S3が浮動小数点演算を示す場合、ス
イツチ171は信号17Bに制御されて出力側の
下位4ビツトの信号線D0〜D3を入力信号線G0〜
G3と接続し、固定小数点演算の場合にはD0〜D3
をG4〜G7に接続する。信号17Aはデータバス
20への上位ビツトデータの出力を制御する。 FIG. 14 shows a specific circuit configuration of the switch circuit 17 connected to the accumulator 16. In this circuit, the 20-bit output G 0 -G 19 from the accumulator is input to the input terminal of switch 171. The switch 171 connects each signal line D 0 to D 15 of the data bus 20.
The connection between the input terminal and the output terminal is the output signal 1 of the logic circuit 172.
Controlled by 7A and 17B. When the control signal S3 according to the program command indicates floating point arithmetic, the switch 171 is controlled by the signal 17B to connect the lower 4 bits of the output side signal lines D0 to D3 to the input signal lines G0 to D3 .
Connect with G 3 and D 0 to D 3 for fixed-point arithmetic
Connect to G 4 ~ G 7 . Signal 17A controls output of upper bit data to data bus 20.
本発明の適用された信号処理プロセツサによれ
ば、上述した固定小数点データあるいは浮動小数
点データの演算を行えるだけでなく、浮動小数点
形式で得られた演算結果をプログラムの命令によ
り固定小数点形式のデータに変換したり、その逆
に固定小数点形式で与えられたデータを浮動小数
点形式のデータに変換して演算を行なうこともで
きる。この機能は、信号処理プロセツサがデータ
バス20と入出力インタフエース30〜33を介
して外部装置とデータをやりとりする際に極めて
好都合である。何如なら、信号処理プロセツサと
接続される外部装置の多くは固定小数点表示形式
でデータを扱つており、もし上記信号処理プロセ
ツサの浮動小数点演算結果がそのまま出力される
とすれば、プロセツサの外部にデータ形式を変換
するための特殊な装置を必要とすることになるか
らである。 According to the signal processing processor to which the present invention is applied, it is not only possible to perform operations on fixed-point data or floating-point data as described above, but also to convert the operation results obtained in floating-point format into fixed-point format data according to program instructions. It is also possible to perform calculations by converting data given in fixed-point format to floating-point format data. This feature is extremely convenient when the signal processor exchanges data with external devices via the data bus 20 and input/output interfaces 30-33. Most of the external devices connected to the signal processing processor handle data in a fixed-point display format, and if the floating-point operation results of the signal processing processor described above were to be output as they are, the data would be stored outside the processor. This is because a special device is required to convert the format.
浮動小数点表示から固定小数点表示への変換
(以下、FLFXと言う)は次のようにして行なわ
れる。 Conversion from floating point representation to fixed point representation (hereinafter referred to as FLFX) is performed as follows.
先ず、累算器16に得られる浮動小数点表示の
データを
A=αM・2〓E
としたとき、指数部がαE<βEの関係を満足し、仮
数部がβM=0の値をもつデータy1=βM・2〓Eをデ
ータメモリ5あるいは6の特定のアドレスに格納
しておく。このアドレスはFLFXの命令語のアド
レス部と対応させておく。また、この命令語を実
行したとき、選択回路8が上記メモリから読出さ
れたデータy1をYバス22に出力し、選択回路6
0が上記Yバスからの入力を選択し、選択回路6
1がAバス27からの入力を選択し、選択回路8
2が入力データF(=「0」)を選択し、出力スイ
ツチ17が入力信号G4〜G19をデータバス20に
接続動作するよう各種制御信号を発生させる。 First, when the floating-point representation data obtained by the accumulator 16 is A=α M・2〓 E , the exponent part satisfies the relationship α E < β E and the mantissa part has the value β M = 0. Data y 1 =β M ·2〓 E having the value y 1 =β M·2〓 E is stored at a specific address in the data memory 5 or 6. This address is made to correspond to the address part of the FLFX instruction word. Furthermore, when this instruction word is executed, the selection circuit 8 outputs the data y1 read from the memory to the Y bus 22, and the selection circuit 6
0 selects the input from the Y bus, and selects the selection circuit 6.
1 selects the input from the A bus 27, and the selection circuit 8
2 selects the input data F (="0"), and generates various control signals so that the output switch 17 connects the input signals G 4 to G 19 to the data bus 20.
このようにしておくと、FLFXの命令を実行し
た時2つの浮動小数点データAとy1との間で演算
が行なわれ、累算器16には、
Z=A+y1
=〔0+αM・2-(〓E-〓E)〕・2〓E ……(6)
の演算結果が得られる。このデータは2〓Eを指数
部の基準値として正規化してあり、データバス2
0に出力される仮数部のデータαM・2-(〓E-〓E)を固
定小数点データとして取り扱うことができる。 By doing this, when the FLFX instruction is executed, an operation will be performed between the two floating point data A and y1 , and the accumulator 16 will have Z=A+ y1 =[0+α M・2 - ( 〓 E- 〓 E) 〕・2〓 E ……(6) is obtained. This data is normalized using 2〓E as the reference value of the exponent part, and the data bus 2
The mantissa data α M ·2 −( 〓 E− 〓 E) output as 0 can be handled as fixed-point data.
通常、内部演算結果Aに対してβEの最適値を正
確に知ることはできないので、βEの値は若干大き
めに選んでおく方がよい。しかし、βEの値をあま
り大きくすると、固定小数データの精度が低くな
ることに注意する必要がある。上記FLFXの実行
の際、予めメモリに格納された変換用データy1の
指数部βEよりも演算結果Zの指数部αEの方が大き
くなつた場合は、式(6)の仮数部オーバーフローを
生ずる。この場合、前述した出力補正回路80の
動作によつて、固定小数点データの絶対値を正あ
るいは負の最大値に固定させることができる。 Normally, it is not possible to accurately know the optimal value of β E for the internal calculation result A, so it is better to select a slightly larger value for β E. However, it must be noted that if the value of β E is made too large, the precision of fixed-decimal data will decrease. When executing FLFX above, if the exponent part α E of the calculation result Z becomes larger than the exponent part β E of the conversion data y 1 stored in the memory in advance, the mantissa part of equation (6) overflows. will occur. In this case, the operation of the output correction circuit 80 described above allows the absolute value of the fixed-point data to be fixed at the maximum positive or negative value.
一方、外部から与えられた固定小数点表示のデ
ータを内部で浮動小数点表示のデータに変換する
動作は次のようにして行なえる。先ず、入力レジ
スタ31に入力された固定小数点データを累算器
16に転送する命令を実行する。この命令では、
データバス20を介して選択回路60に与えられ
た16ビツトの固定小数点表示データDを、上記選
択回路60の動作により仮数部βMにビツト位置
変換し、選択回路67、シフト回路69、ラツチ
回路72、加算器75、シフト回路76、補正回
路87を介して累算器16の仮数部16Mに入力
される。この場合、シフト回路69,76、加算
器75はそれぞれ入力データを素通りさせるよう
制御される。 On the other hand, the operation of internally converting data in fixed point representation given from the outside into data in floating point representation can be performed as follows. First, an instruction to transfer fixed-point data input to the input register 31 to the accumulator 16 is executed. In this command,
The 16-bit fixed-point display data D supplied to the selection circuit 60 via the data bus 20 is converted into a mantissa part β M by the operation of the selection circuit 60, and then sent to the selection circuit 67, shift circuit 69, and latch circuit. 72, an adder 75, a shift circuit 76, and a correction circuit 87 . In this case, the shift circuits 69, 76 and adder 75 are each controlled to allow input data to pass through.
次に固定小数点表示から浮動小数点表示に変換
(以下、FXFLと言う)する命令を実行する。こ
の命令実行時には、選択回路61はAバス27か
ら与えられる累算器出力、すなわち上記した固定
小数点データAを出力αM,αEとして選択する。
また、選択回路60は、FXFL命令のアドレス部
で指定されてメモリ5あるいは6からYバス26
に読出される変換用データy2を出力βM,βEとして
選択する。この変換用データy2は、例えば仮数部
βMが零であり指数部βEが値〔+7〜−8〕の範囲
から選定されて或る基準値を持つている。他の命
令実行時と異なり、FXFL命令実行時には選択回
路62が入力βEを選択するよう制御信号S4を発生
させ、比較回路63の2つの入力を共にβEとす
る。この場合仮数部の選択回路67は入力αMを、
選択回路68は入力βMをそれぞれ選択するよう
にし、指数部の選択回路65には入力βEを選択さ
せる。また、制御信号S7により選択回路70に入
力データE=「0」を選択させ、右方向のシフト
回路69のデータシフト動作を抑える。 Next, execute an instruction to convert from fixed-point representation to floating-point representation (hereinafter referred to as FXFL). When this instruction is executed, the selection circuit 61 selects the accumulator output provided from the A bus 27, that is, the fixed point data A described above, as the outputs α M and α E.
Further, the selection circuit 60 selects the Y bus 26 from the memory 5 or 6 as specified by the address part of the FXFL instruction.
The conversion data y 2 read out is selected as the outputs β M and β E. This conversion data y 2 has, for example, a mantissa part β M of zero and an exponent part β E selected from a range of values [+7 to -8] and has a certain reference value. Unlike when executing other instructions, when executing the FXFL instruction, the selection circuit 62 generates a control signal S 4 to select the input β E , and both inputs of the comparison circuit 63 are set to β E. In this case, the mantissa selection circuit 67 inputs α M as
The selection circuit 68 selects each of the inputs β M , and the exponent part selection circuit 65 selects the input β E. Further, the control signal S7 causes the selection circuit 70 to select input data E=“0”, thereby suppressing the data shift operation of the rightward shift circuit 69.
上記制御動作により、ラツチ回路71,72,
73の出力はγ=βE,eA=αM,eB=0となる。デ
ータeAとeBは加算器75に入力されその加算結果
UM(=αM)は零検出回路79と左方向のシフト回
路76の動作のもとに小数点位置がθ1ビツト移動
し、結果として
Z=〔αM・2〓1〕・2(〓E-e1) ……(7)
で表されるデータが累算器16に得られる。この
式は、固定小数点表示のデータA=αMが指数βE
を基準に正規化され、浮動小数点表示されたこと
を意味している。従つて、命令FXFLで累数器1
6に得られた上記データを用いれば、以後の演算
を浮動小数点形式で行なうことができる。 By the above control operation, the latch circuits 71, 72,
The outputs of 73 are γ=β E , e A =α M , and e B =0. Data e A and e B are input to adder 75 and the addition result is
The decimal point position of U M (=α M ) moves by θ 1 bit under the operation of the zero detection circuit 79 and the leftward shift circuit 76, and as a result, Z = [α M・2〓 1 ]・2 ( 〓 E-e1) ...(7) Data expressed as follows is obtained in the accumulator 16. This formula shows that fixed-point data A = α M is the exponent β E
This means that it has been normalized to the standard and displayed as a floating point number. Therefore, with the instruction FXFL, the accumulator 1
By using the above data obtained in step 6, subsequent calculations can be performed in floating point format.
尚、この実施例では入力レジスタ31のデータ
を一旦累算器16にセツトした後、FXFL命令も
実行したが、固定小数点の入力データと変換用デ
ターy2をXバス25とDバス20を利用して加減
算器15に入力することにより、1つの命令で浮
動小数点表示へのデータ変換を行なえるよう設計
することもできる。 In this embodiment, the FXFL instruction was also executed after the data in the input register 31 was set in the accumulator 16, but the fixed-point input data and conversion data y2 were transferred using the X bus 25 and the D bus 20. By inputting the data into the adder/subtractor 15, the data can be converted to floating point representation with one instruction.
本発明の適用されたデイジタル信号処理プロセ
ツサは上述したように固定小数点、浮動小数点の
両形式のデータを取扱え、しかも本発明により浮
動により浮動小数点表示データの正規化の際に指
数部にアンダフローを生じた時、指数値を最小値
に固定した正規化操作が行なえるため、内部演算
データの数値が大きい場合には浮動小数点演算形
式、小さい場合は固定小数点演算形式に自動的に
演算方式を切り換えることができ、極めて広いダ
イナミツクレンジを得ることができる。 As described above, the digital signal processor to which the present invention is applied can handle data in both fixed point and floating point formats, and furthermore, the present invention allows underflow in the exponent part when normalizing floating point display data. When this occurs, a normalization operation can be performed that fixes the exponent value to the minimum value, so if the internal calculation data value is large, the calculation method is automatically changed to floating-point calculation format, and if it is small, the calculation method is automatically changed to fixed-point calculation format. This allows for an extremely wide dynamic range.
すなわち、実施例装置の如く加減算器の内部デ
ータが仮数部16ビツト、指数部4ビツトからなる
場合、2の補数表示で指数部γは〔+7〜−8〕
の範囲の数値を取り扱える。全ての演算を浮動小
数点形式で処理すると、ダイナミツクレンジは第
15図に斜線を施こして示した2-8〜27となり、
これはビツト数に換算すると15ビツト分に相当す
る。本発明によれば、演算データの仮数部に対す
る正期化ビツト数θが(γ−θ)<−8の範囲に
あるとき、正規化後の指数LEを−8を固定する
ことによつて、固定小数点演算に切換れるように
なつている。このため、第15図に示す如く、タ
イナミツクレンジは全体で31ビツトとなり、固
定、浮動の一方のみを用いる場合に比較して取り
扱える数値の範囲が著しく広がる。 That is, when the internal data of the adder/subtractor consists of a mantissa part of 16 bits and an exponent part of 4 bits as in the device of the embodiment, the exponent part γ is [+7 to -8] in two's complement representation.
Can handle numbers in the range. If all operations are processed in floating point format, the dynamic range will be 2 -8 to 2 7 , which is shown with diagonal lines in Figure 15.
This corresponds to 15 bits when converted to the number of bits. According to the present invention, when the number of normalized bits θ for the mantissa part of the calculation data is in the range (γ - θ) < -8, the exponent L E after normalization is fixed at -8. , it is now possible to switch to fixed-point arithmetic. Therefore, as shown in FIG. 15, the dynamic range has a total of 31 bits, and the range of numerical values that can be handled is significantly expanded compared to when only one of fixed and floating values is used.
デイジタル信号処理プロセツサの実際の応用に
おいては、例えば次式で示す如く、m回の積和演
算を繰り返して実行する場合が多い。 In actual applications of digital signal processing processors, for example, as shown in the following equation, m product-sum operations are often repeated.
T=n
〓i=1
ai×bi ……(8)
このような演算の場合、本発明の適用されたプ
ロセツサによれば、乗算と加減算動作を並列的に
進行させるパイプライン制御によつて、データ処
理効率を向上させ、高速度での演算が可能とな
る。 T= n 〓 i=1 ai × bi ... (8) In the case of such an operation, according to the processor to which the present invention is applied, by pipeline control that performs multiplication and addition/subtraction operations in parallel, It improves data processing efficiency and enables high-speed calculations.
第16図は並列動作の1例を示すタイムチヤー
トであり命令サイクル201で先行フエツチされ
た命令Aにより、次のサイクル202でデータメ
モルからデータを読出し、乗算器により演算を行
なう。命令サイクル203では乗算結果と累算器
のデータ(Aバス出力)との加減算が実行され、
演算結果サイクル204で累算裏に出力される。
これら、4つのステツプの動作は1ステツプずつ
ずれて各命令サイクルで繰り返され、所定回数m
の積和演算が完了したとき、命令Fにより演算結
果Tがデータバス20に出力され、データメモリ
5あるいは外部回路に送られる。 FIG. 16 is a time chart showing an example of parallel operation. In the next cycle 202, data is read from the data memory according to the instruction A pre-fetched in the instruction cycle 201, and the multiplier performs an operation. In the instruction cycle 203, addition and subtraction between the multiplication result and the accumulator data (A bus output) are executed.
In the operation result cycle 204, the result is output after the accumulation.
The operations of these four steps are repeated in each instruction cycle with a one-step shift, and are repeated a predetermined number of times m.
When the sum of products operation is completed, the operation result T is outputted to the data bus 20 by instruction F and sent to the data memory 5 or an external circuit.
上記パイプライン制御によるプロセツサの並列
動作は乗算器14と加減算器15とを直列的に接
続したこと乗算と加減算の各動作所要時間がバラ
ンスする位置にデータを1時的に保持するレジス
タ(第4図ではラツチ回路71〜72がこれに相
当する)を配置したことにより可能となつてい
る。 The parallel operation of the processor by pipeline control is achieved by connecting the multiplier 14 and the adder/subtractor 15 in series. This is made possible by arranging latch circuits 71 and 72 (corresponding to this in the figure).
第17図は上記デイジタル信号処理プロセツサ
の応用例を示す。ここでは、プロセツサ100を
A/D変換器300とD/A変換器301を介し
てアナログ回線に接続し、デイジタルフイルタと
して機能させる場合を示している。 FIG. 17 shows an application example of the digital signal processing processor described above. Here, a case is shown in which the processor 100 is connected to an analog line via an A/D converter 300 and a D/A converter 301, and functions as a digital filter.
第18図は、デイジタル信号処理プロセツサ1
00を他のデータ処理装置101、例えば(株)日立
製作所のマイクロコンピユータMCS6800と組み
合せ、端子D0〜D7を介してデータの受授を行な
い、データの処理を2つの装置で分担できるよう
にしたシステム構成を示す。このシステム構成は
信号処理プロセツサ100を通信回線のモデム、
あるいはエコーキヤンセラー等に適用する場合に
適している。 FIG. 18 shows the digital signal processing processor 1.
00 is combined with another data processing device 101, such as a microcomputer MCS6800 manufactured by Hitachi, Ltd., and data is sent and received via terminals D0 to D7 , so that data processing can be shared between the two devices. The following shows the system configuration. This system configuration includes a signal processing processor 100, a communication line modem,
Alternatively, it is suitable for application to an echo canceller, etc.
第1図は本発明の適用されたデイジタル信号処
理プロセツサの全体構成の1例を示すブロツク
図、第2図は乗算器14の詳細な構成を示す図、
第3図A,Bはそれぞれ入力データと加減算器1
5の内部演算データのビツト形式を説明するため
の図、第4図AとBは本発明の実施例の加減算器
15の詳細な構成を示す図、第5図A,Bおよび
第6図A,Bはシフト回路76の動作を説明する
ための図、第7図はシフト回路76の1実施例を
示す回路図、第8図A,Bはデータオーバフロー
についての説明図、第9図は出力補正回路の1部
要素85,87,89の具体的な回路構成を示す
図、第10図A〜Dは上記信号処理プロセツサ各
部における浮動小数点データの変化の様子を示す
図、第11図A〜Dは固定小数点データの変化の
様子を示す図、第12図は入力選択回路60の具
体的な回路構成を示す図、第13図は入力選択回
路61の具体的な回路構成を示す図、第14図は
出力スイツチ回路17の具体的な回路構成を示す
図、第15図は本発明の適用されたデイジタル信
号処理プロセツサのダイナミツクレンジを示す
図、第16図は上記プロセツサの動作の特徴を説
明するためのタイムチヤート、第17図および第
18図はそれぞれ上記信号処理プロセツサの代表
的な使用形態を示す図である。
FIG. 1 is a block diagram showing an example of the overall configuration of a digital signal processing processor to which the present invention is applied, and FIG. 2 is a diagram showing the detailed configuration of a multiplier 14.
Figure 3 A and B are input data and adder/subtractor 1, respectively.
5. FIGS. 4A and 4B are diagrams showing the detailed configuration of the adder/subtractor 15 according to the embodiment of the present invention. FIGS. 5A, B, and 6A , B are diagrams for explaining the operation of the shift circuit 76, FIG. 7 is a circuit diagram showing one embodiment of the shift circuit 76, FIGS. 8A and B are diagrams for explaining data overflow, and FIG. 9 is an output diagram. Figures 10A to 10D are diagrams showing specific circuit configurations of elements 85, 87, and 89 of the correction circuit, and Figures 11A to 11D are diagrams showing changes in floating point data in each part of the signal processing processor. 12 is a diagram showing a specific circuit configuration of the input selection circuit 60, FIG. 13 is a diagram showing a specific circuit configuration of the input selection circuit 61, FIG. 14 shows the specific circuit configuration of the output switch circuit 17, FIG. 15 shows the dynamic range of the digital signal processing processor to which the present invention is applied, and FIG. 16 shows the characteristics of the operation of the above processor. Time charts for explanation, FIGS. 17 and 18, are diagrams showing typical usage patterns of the above-mentioned signal processing processor, respectively.
Claims (1)
行なうデイジタル信号処理プロセツサ用の加減算
装置であつて、 上記2つの浮動小数点データの指数部の値の差
に応答して上記2つのデータのうちの一方のデー
タの仮数部をビツトシフトした後に加減算を行な
う手段、 上記加減算後の仮数部の絶対値を1ビツト分小
さくするようにシフトする手段、 上記加減算後の指数部の絶対値を1増加する手
段、および 上記加減算後の仮数部の値がオーバーフローし
た場合であつてかつ上記1増加により指数部の値
がオーバーフローしない場合には、上記1ビツト
シフトされた仮数部の値と上記1増加された指数
部の値とを出力し、上記加減算後の仮数部の値が
オーバーフローした場合であつてかつ上記1増加
により指数部の値もオーバーフローした場合に
は、予め定められた仮数部および指数部のビツト
数の範囲内で表示しうる正あるいは負の最大値を
出力する手段を有することを特徴とする加減算装
置。 2 上記加減算を行なう手段は、上記2つのデー
タのうち、より小さい指数部の絶対値を有するデ
ータの仮数部をビツトシフトした後に加減算を行
なうことを特徴とする特許請求の範囲第1項記載
の加減算装置。 3 上記加減算装置は、LSI化されたデイジタル
信号処理プロセツサ用の加減算装置であることを
特徴とする特許請求の範囲第1項または第2項記
載の加減算装置。[Scope of Claims] 1. An addition/subtraction device for a digital signal processor that performs addition or subtraction of two floating point data, which adds or subtracts the two floating point data in response to a difference in exponent part values of the two floating point data. means for performing addition and subtraction after bit-shifting the mantissa part of one of the data; means for shifting the absolute value of the mantissa part after the above addition and subtraction so as to be smaller by 1 bit; If the value of the mantissa after the above addition/subtraction overflows and the value of the exponent does not overflow due to the increase by 1, the value of the mantissa shifted by 1 bit and the increase by 1. If the value of the mantissa after the above addition/subtraction overflows, and the value of the exponent also overflows due to the increase by 1, the predetermined mantissa and exponent are output. 1. An addition/subtraction device comprising means for outputting the maximum positive or negative value that can be displayed within the range of the number of bits. 2. The addition and subtraction according to claim 1, wherein the means for performing the addition and subtraction performs the addition and subtraction after bit-shifting the mantissa part of the data having the smaller absolute value of the exponent part of the two data. Device. 3. The addition and subtraction device according to claim 1 or 2, wherein the addition and subtraction device is an addition and subtraction device for an LSI digital signal processing processor.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62024589A JPS62187933A (en) | 1987-02-06 | 1987-02-06 | Adder/subtractor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62024589A JPS62187933A (en) | 1987-02-06 | 1987-02-06 | Adder/subtractor |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP55152051A Division JPS5776634A (en) | 1980-10-31 | 1980-10-31 | Digital signal processor |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP18737389A Division JPH02224019A (en) | 1989-07-21 | 1989-07-21 | Adding and subtracting device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62187933A JPS62187933A (en) | 1987-08-17 |
| JPH0353650B2 true JPH0353650B2 (en) | 1991-08-15 |
Family
ID=12142342
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62024589A Granted JPS62187933A (en) | 1987-02-06 | 1987-02-06 | Adder/subtractor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS62187933A (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0821883B2 (en) * | 1988-07-20 | 1996-03-04 | 松下電器産業株式会社 | Echo canceller |
| US4994996A (en) * | 1989-02-03 | 1991-02-19 | Digital Equipment Corporation | Pipelined floating point adder for digital computer |
| JP3029812B2 (en) * | 1997-06-03 | 2000-04-10 | 株式会社ジャストシステム | Operation error recovery method and apparatus, and computer-readable recording medium storing a program for causing a computer to execute the method |
| JP4575609B2 (en) * | 2001-03-13 | 2010-11-04 | 旭化成エレクトロニクス株式会社 | Data converter |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5346577B2 (en) * | 1974-03-25 | 1978-12-14 | ||
| JPS53103335A (en) * | 1977-02-21 | 1978-09-08 | Fujitsu Ltd | Logic arithmetic circuit |
| JPS6051728B2 (en) * | 1978-06-06 | 1985-11-15 | 富士通株式会社 | High-speed calculation processing method |
-
1987
- 1987-02-06 JP JP62024589A patent/JPS62187933A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62187933A (en) | 1987-08-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6242296B2 (en) | ||
| US6009451A (en) | Method for generating barrel shifter result flags directly from input data | |
| JP3110288B2 (en) | Exponential logarithmic conversion circuit | |
| US5457805A (en) | Microcomputer enabling high speed execution of product-sum operation | |
| JPS5878248A (en) | Dynamically programmable processing element | |
| JPH08234962A (en) | Apparatus and method for execution of both 24-bit arithmeticoperation and 16-bit arithmetic operation | |
| JP3665409B2 (en) | Method and apparatus for enhanced digital signal processor | |
| JPH0353650B2 (en) | ||
| US5822557A (en) | Pipelined data processing device having improved hardware control over an arithmetic operations unit | |
| JPH026089B2 (en) | ||
| Thompson et al. | An LSI digital signal processor | |
| JPH0357488B2 (en) | ||
| JPH0357486B2 (en) | ||
| JPH0357487B2 (en) | ||
| JPS645500B2 (en) | ||
| JP3435744B2 (en) | Multiplication circuit | |
| JPS63153636A (en) | Information processor | |
| US6792442B1 (en) | Signal processor and product-sum operating device for use therein with rounding function | |
| JP2756175B2 (en) | Code assignment method for dual processor DSP | |
| JP2508286B2 (en) | Square root calculator | |
| JP2706459B2 (en) | Microprocessor with decimal multiplier | |
| JPH01240961A (en) | Dma transfer system | |
| KR0155797B1 (en) | Digital signal processor | |
| JPS62285137A (en) | digital signal processing processor | |
| JPH03226831A (en) | 2↑n times calculation circuit |