JPS62190528A - Arithmetic unit - Google Patents

Arithmetic unit

Info

Publication number
JPS62190528A
JPS62190528A JP61033178A JP3317886A JPS62190528A JP S62190528 A JPS62190528 A JP S62190528A JP 61033178 A JP61033178 A JP 61033178A JP 3317886 A JP3317886 A JP 3317886A JP S62190528 A JPS62190528 A JP S62190528A
Authority
JP
Japan
Prior art keywords
shift
data
circuit
input
arithmetic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP61033178A
Other languages
Japanese (ja)
Inventor
Masao Iida
飯田 政男
Hisatoshi Mogi
久利 茂木
Giichi Mori
森 義一
Akira Nomura
野村 彰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP61033178A priority Critical patent/JPS62190528A/en
Publication of JPS62190528A publication Critical patent/JPS62190528A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To perform various shift processings efficiently and reduce the amount of hardware to facilitate an arithmetic unit into an LSI by cascading a right shift circuit and a left shift circuit with an arithmetic operating circuit between them. CONSTITUTION:A right shift circuit 27 shifts right output data from a mantissa part selecting part 24 by a prescribed number of bits on a basis of shift extent data from a selector 36 and gives shifted data to an arithmetic operating circuit 28. Output data of the circuit 27 and that of the selecting part 24 are inputted to the circuit 28 and are subjected to arithmetic operation, and the circuit 28 gives the operation result to a temporary register 29. A left shift circuit 33 shifts left output data of the register 29 by a prescribed number of bits on a basis of shift extent data from a selector 37 and gives shifted data to an output register 35. The circuit 27, the circuit 28, and the circuit 33 are operated to perform arithmetic shift, addition/subtraction of the mantissa part, and normalizing shift respectively, thus performing various shift processings efficiently.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、信号処理演算を行う演算装置に、特に信号処
理演算として、A/Dコンバータ(アナログ・ディジタ
ル変換器)から固定少数点のディジタルデータでデータ
入力を行い、該固定少数点データを浮動少数点データに
変換してディジタル信号処理を行い、その結果の浮動小
数点データを固定少数点データに変換して0/^コンバ
ータ(ディジタル・アナログ変換器)に出力する等の演
算を実行する演算装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention provides an arithmetic device that performs signal processing operations, in particular, a fixed-point digital converter from an A/D converter (analog-to-digital converter). Data is input as data, the fixed point data is converted to floating point data, digital signal processing is performed, the resulting floating point data is converted to fixed point data, and a 0/^ converter (digital to analog The invention relates to an arithmetic device that performs arithmetic operations such as output to a converter.

(従来の技術) 一般に、演算処理のダイナミックレンジが広くとれる浮
動少数点データの形式でディジタル信号処理を行う場合
、通常、外部のアナログ信号との変換を行うA/Dおよ
びD/Aコンバータにおけるディジタルデータのデータ
形式が固定少数点データであるので、固定少数点データ
と浮動少数点データとのデータ形式の変換が必要となる
。そのため、信号処理を専用に行うディジタル信号処理
プロセッサでは、固定少数点データと浮動少数点データ
との両方のデータ形式を処理しうる演算装置が要求され
る。しかも、この演算装置が行う信号処理演算は、基本
的には算術演算であるので、演算データの処理を行う際
に、右シフト及び左シフトの両方の処理が必要となる。
(Prior Art) In general, when digital signal processing is performed in the form of floating point data that has a wide dynamic range for arithmetic processing, the digital signal processing in A/D and D/A converters that convert external analog signals is Since the data format of the data is fixed point data, it is necessary to convert the data format between fixed point data and floating point data. Therefore, a digital signal processor dedicated to signal processing is required to have an arithmetic unit that can process both fixed point data and floating point data. Furthermore, since the signal processing operations performed by this arithmetic device are basically arithmetic operations, both right shift and left shift processing are required when processing operation data.

従来、右シフト及び左シトの処理機能を持つ演算装置と
して、例えば特開昭59−534/1号公報に記載され
るものがあった。以下、その構成を図を用いて説明する
2. Description of the Related Art Conventionally, there has been an arithmetic device having processing functions for right shift and left shift, as described in, for example, Japanese Unexamined Patent Publication No. 59-534/1. The configuration will be explained below using figures.

第2図は演算装置の一種である従来の並列シフト装置を
示す構成ブロック図である。
FIG. 2 is a configuration block diagram showing a conventional parallel shift device, which is a type of arithmetic device.

この並列シフト装置は、入力データXの正規化を行うた
めに必要なシフト数を検出するシフト数検出回路1を備
えている。例えば、入力データXを、16桁パラレル2
進数で2の補数表示を採るものとしてX−X SX 1
5・・・×1 (但し、XSは符号ビット)で表わづ゛
と、シフ1ル数検出回路1では正規化シフトを行うため
に、入力データXのH88、すなわち符号ビットXsか
ら連続する“011あるいは“1″の個数をカウントし
、正規化のための所定のシフト数信号Zを出力する機能
を持ち、ビット反転部、ビット反転相検出部3及びエン
コーダ4で構成される。
This parallel shift device includes a shift number detection circuit 1 that detects the number of shifts required to normalize input data X. For example, input data
As a base number with two's complement representation, X-X SX 1
5...×1 (where XS is a sign bit) In order to perform a normalization shift, the shift number detection circuit 1 uses H88 of input data X, that is, successive signals starting from sign bit Xs. It has a function of counting the number of "011" or "1" and outputting a predetermined shift number signal Z for normalization, and is composed of a bit inversion section, a bit inversion phase detection section 3, and an encoder 4.

ピッ1ル反転部2は、入力データXの符号ピッ1〜Xs
が“O′′ならばXの仝桁にわたりビット反転を行い、
符号ビットXsが“°1″ならばビット反転を行わずに
Xをそのまま出力し、その出力をビット反転相検出部3
に与える回路である。ビット反転相検出部3は、入力デ
ータのビット値が符号ビット側からみて最初に“1″か
ら“O″に反転する直前のビット位置に対応する桁のみ
“1″で、その他の桁には“′O″を出力してエンコー
ダ4に与える機能を有する。エンコーダ4は、ピッ1ル
反転桁検出部3の出力を入力として、入力データの符号
ビットXsから数えて何ビット目の直後に初めてピッ1
ル反転が起ってでいるかを、4ビツト2進数に変換して
シフト数信号Zを生成し、それを出力する回路である。
The pill inverter 2 picks up the sign bits 1 to Xs of the input data X.
If is "O'', perform bit inversion over two digits of X,
If the sign bit
This is a circuit that gives The bit inversion phase detection unit 3 detects “1” only in the digit corresponding to the bit position immediately before the bit value of the input data first inverts from “1” to “O” when viewed from the sign bit side, and in the other digits. It has a function of outputting "'O" and giving it to the encoder 4. The encoder 4 inputs the output of the pick-up inversion digit detection unit 3 and outputs the pick-up for the first time immediately after the bit number counting from the sign bit Xs of the input data.
This circuit converts whether or not a shift signal has occurred into a 4-bit binary number, generates a shift number signal Z, and outputs it.

さらに並列シフト装置には、絶対値生成部5、シフトモ
ード選択器6、並列971〜回路7,8、シフト回路選
択器9及びシフト回路出力選択器10が設(プられてい
る。ここで、絶対値生成部5はシフト数を表わすデータ
M (=m5m4・・・ml )を入力してその絶対値
H八を4ビツト2進数で出力する回路、シフトモード選
択器6は1ビツトのシフトモード選択信号SHにより制
御されエンコーダ4の出力Zまたは絶対値生成部5の出
力HAのいずれかを選択してその出力信号&(=S45
332 Sl)を送出する回路でおる。並列シフト回路
7,8は出力信号Sを参照入力として入力データX(=
X、×15・・・xl)をシフトする回路であり、一方
の並列シフ1〜回路7は左にO〜15ピッi〜のシフト
機能、他方の並列シフト回路8は右にO〜15ビットの
シフト機能をそれぞれ持っている。シフト回路選択器9
は、データMのビットシフト数の正負とシフトモード選
択信号SRとを参照してシフト回路用ツノ選択器10へ
制御信号を出力する回路、シフト回路出力選択器10は
前記制御信号に基づき並IJIJシフト回路7または8
の出力を選択して選択出力データY (=y、 ”15
・・・yl)を出力する回路である。 以上の構成にお
いて、固定少数点データの算術シフトの場合は絶対値生
成部5の絶対値出力)IAが、浮動少数点データの正規
化シフトの場合はエンコーダ4の出力Zが、それぞれシ
フトモード選択器6で選択されて並列シフト回路7,8
に与えられる。すると、一方の並列シフト回路7では入
力データXを左に所定ビットたけ、他方の並列シフト回
路8では入力データXを右に所定ピッ1〜だ(プ、それ
ぞれシフトしてシフト回路出力選択器10へ与える。シ
フト回路出力選択器10では、シフト回路選択器9から
の制饋旧言号により、算術シフトモードでシフト数が負
ならば並列シフト回路8の出力を選択し、正規化シフト
モードならば並列シフト回路7の出力を選択してそれら
を出力する。
Further, the parallel shift device is provided with an absolute value generation section 5, a shift mode selector 6, parallel circuits 971 to 7, 8, a shift circuit selector 9, and a shift circuit output selector 10.Here, The absolute value generator 5 is a circuit that inputs data M (=m5m4...ml) representing the number of shifts and outputs the absolute value H8 as a 4-bit binary number, and the shift mode selector 6 selects a 1-bit shift mode. Controlled by the selection signal SH, either the output Z of the encoder 4 or the output HA of the absolute value generation section 5 is selected and the output signal &(=S45
332 Sl). The parallel shift circuits 7 and 8 use the output signal S as a reference input and input data X (=
X, ×15... Each has a shift function. Shift circuit selector 9
is a circuit that outputs a control signal to the shift circuit horn selector 10 by referring to the positive/negative bit shift number of data M and the shift mode selection signal SR, and the shift circuit output selector 10 outputs a control signal to the shift circuit horn selector 10 based on the control signal. Shift circuit 7 or 8
Select output data Y (=y, ”15
...yl). In the above configuration, in the case of an arithmetic shift of fixed point data, the absolute value output (IA) of the absolute value generator 5 is used, and in the case of a normalized shift of floating point data, the output Z of the encoder 4 is used to select the shift mode. parallel shift circuits 7 and 8
given to. Then, one parallel shift circuit 7 shifts the input data X to the left by a predetermined bit, and the other parallel shift circuit 8 shifts the input data X to the right by a predetermined bit. The shift circuit output selector 10 selects the output of the parallel shift circuit 8 if the shift number is negative in the arithmetic shift mode, and selects the output of the parallel shift circuit 8 if the shift number is negative in the arithmetic shift mode. For example, the outputs of the parallel shift circuit 7 are selected and outputted.

この種の並列シフト装置では、N桁パラレル2進数デー
タの算術シフトおよび正規化シフトの2種の動作モード
を、並列シフト回路7,8の共有化を行うことによって
少ないハードウェア徂で実現している。
This type of parallel shift device realizes two operation modes, arithmetic shift and normalization shift, of N-digit parallel binary data with less hardware by sharing the parallel shift circuits 7 and 8. There is.

(発明が解決しようとする問題点) しかしながら、第2図の装置では、次のような問題点か
あった。
(Problems to be Solved by the Invention) However, the apparatus shown in FIG. 2 has the following problems.

第2図の装置では、1回のシフト操作において、左右両
方のシウト回路7,8にデータXが入力され、それら量
シフト回路7,8が動作する。通常、左もいずれか一方
のシフト結果しか必要としないので、必要となる結果を
出力するためにシフト回路出力選択器10が設けられて
いる。その故、冗長性のある回路となっており、LSI
化に不利である。
In the apparatus shown in FIG. 2, in one shift operation, data X is input to both left and right shift circuits 7, 8, and these quantity shift circuits 7, 8 operate. Normally, only one of the left shift results is required, so a shift circuit output selector 10 is provided to output the required result. Therefore, it is a redundant circuit, and the LSI
It is disadvantageous to

また、浮動少数点データの加減算演算を実行する場合は
、2つの入力データ間の演算前の桁合せに右シフト処理
を行ってから加減界を行い、その後、結果の正規化に左
シフト処理を行って最終結果を得るという処理の流れに
なるため、演算処理の前後で各1回つづ、合計2回、第
2図におけるシフト操作が必要となる。これをハードウ
ェアで実現しようとすると、第2図にお(プる並列シフ
ト回路7,8等が2組必要となり、冗長回路か増加して
LSI化に不利となる。これを避けるためにソフトウェ
アで実現すると、プログラムのステップ数が増加し、処
理時間が延びるという問題が生じる。 本発明は、前記
従来技術が持っていた問題点として、シフト回路出力選
択器等が必要となって冗長性のある回路構成になるため
、LSI化の際に不利になるという点について解決した
演算装置を提供するものである。
Also, when performing addition/subtraction operations on floating point data, right shift processing is performed to align the digits between the two input data before the operation, then addition/subtraction is performed, and then left shift processing is performed to normalize the result. Since the flow of processing is to obtain the final result, the shift operation shown in FIG. 2 is required twice, once before and after the arithmetic processing. If we try to realize this with hardware, two sets of parallel shift circuits 7, 8, etc. (as shown in Figure 2) will be required, which will increase the number of redundant circuits, which will be disadvantageous for LSI implementation.In order to avoid this, software If this is realized using a shift circuit output selector, etc., the number of steps in the program will increase and the processing time will be extended. The object of the present invention is to provide an arithmetic device that solves the problem that the circuit configuration is disadvantageous when integrated into an LSI.

(問題点を解決するための手段) 本発明は前記問題点を解決するために、固定少数点デー
タ及び浮動少数点データの処理が行え、かつ該固定少数
点データを該浮動少数点データの仮数部として処理が行
える2進数データの2入力算術演算装置において、石シ
フト回路と左シフト回路とを算術演算回路を介して縦列
に接続したものである。ここで、右シフト回路は、第1
と第2の入力演算データにおける指数部の減算からも求
める第1のシフト量データ、あるいはマイクロ命令で設
定される第2のシフト量のいずれか一方のデータをシフ
ト量として、該第1の入力演算データの仮数部を右シフ
トする回路、算術演算回路は、前記右シフト回路の出力
データを第1の入力とし、前記第2の入力演算データの
仮数部を第2の入力としてそれら第1および第2の入力
の算術演算を行う回路、左シフト回路は、前記第2のシ
フト量データ、あるいは前記算術演算回路の出力を正規
化するための正規化シフト量検出データのいずれか一方
のデータをシフト量として、前記算術演算回路の出力デ
ータを左シフトする回路である。
(Means for Solving the Problems) In order to solve the above problems, the present invention is capable of processing fixed point data and floating point data, and converting the fixed point data into the mantissa of the floating point data. In a two-input arithmetic operation device for binary data that can be processed as a unit, a stone shift circuit and a left shift circuit are connected in series via an arithmetic operation circuit. Here, the right shift circuit is the first
and the first shift amount data obtained by subtracting the exponent part of the second input calculation data, or the second shift amount set by the microinstruction, as the shift amount, and the first input An arithmetic operation circuit that shifts the mantissa part of the operation data to the right takes the output data of the right shift circuit as a first input, and uses the mantissa part of the second input operation data as a second input and inputs the first and second inputs. A circuit that performs arithmetic operations on a second input, a left shift circuit, receives either the second shift amount data or normalized shift amount detection data for normalizing the output of the arithmetic operation circuit. This circuit shifts the output data of the arithmetic operation circuit to the left as a shift amount.

(作 用) 本発明によれば、以上のように演算装置を構成したので
、右シフト回路は算術シフ1〜を行い、算術演算回路は
データ仮数部の加減算等を行う。また、左シフ1〜回路
は正規化シフトを行うように動作する。これらの回路に
より、各種のシフト処理を効率良く行える。従って前記
問題点を除去できるのである。
(Function) According to the present invention, since the arithmetic device is configured as described above, the right shift circuit performs arithmetic shifts 1 to 1, and the arithmetic operation circuit performs addition and subtraction of data mantissa parts. Further, the left shift 1~ circuit operates to perform a normalization shift. These circuits allow various types of shift processing to be performed efficiently. Therefore, the above-mentioned problem can be eliminated.

(実施例) 第1図は本発明の一実施例を示す演算装置の構成ブロッ
ク図である。
(Embodiment) FIG. 1 is a block diagram of the configuration of an arithmetic device showing an embodiment of the present invention.

この演算装置は、パイプライン・レジスタ(すなわら、
テンポラリレジタ)を使用した2段パイプライン処理構
成を採用した装置であり、命令解読部20、入力レジス
タ21,22 、算術シフト量検出部23、仮数部選択
部24、指数部選択部25、指数部比較部26、石シフ
1〜回路27、算術演算回路(以下、A団という)28
、テンポラリレジスタ(以下、TRという> 29.3
0.31、正規化シフト量検出部32、左シフト回路3
3、指数部補正部34、出力レジスタ35、及びゼレク
タ36.37を備えている。
This arithmetic unit consists of pipeline registers (i.e.
This device employs a two-stage pipeline processing configuration using temporary registers), and includes an instruction decoding section 20, input registers 21 and 22, an arithmetic shift amount detection section 23, a mantissa selection section 24, an exponent selection section 25, Exponent comparison unit 26, stone shift 1 to circuit 27, arithmetic operation circuit (hereinafter referred to as group A) 28
, temporary register (hereinafter referred to as TR) 29.3
0.31, normalized shift amount detection section 32, left shift circuit 3
3, an exponent part correction section 34, an output register 35, and selectors 36 and 37.

ここで、命令解読部20は、マイクロ命令を解読してそ
の解読結果を算術シフト母検出部23に与える回路であ
る。算術シフト但検出部23は、命令解読部20から出
力されるシフ1へ量制御信号を検出し、その信号のシフ
ト量データ(第2のシフト量データ)をセレクタ36に
与える回路である。
Here, the instruction decoding section 20 is a circuit that decodes the microinstruction and provides the decoding result to the arithmetic shift mother detection section 23. The arithmetic shift detection unit 23 is a circuit that detects the shift 1 amount control signal output from the instruction decoding unit 20 and provides shift amount data (second shift amount data) of the signal to the selector 36.

各入力レジスタ21.22は、それぞれ指数部21a。Each input register 21.22 has an exponent part 21a.

22aの及び仮数部21b、 22bのデータ保持領域
を持ち、処理すべき入力演算データ(以下、単に入力デ
ータという)を一時保持する回路である。各入力レジス
タ21.22の仮数部22bは仮数部選択部24に、同
じく指数部21a、22aは指数部選択部25及び指数
部比較部26に、それぞれ接続されている。仮数部選択
部24は、指数部比較部26の出力信号に基づき、仮数
部21bまたは22b内の保持データを選択してそれを
右シフト回路27またはALU2Bに与える回路である
。指数部選択部25は、指数部21aまたは22a内の
保持データをTR31に与える回路である。また指数部
比較部26は、両指数部21 、22a内における保持
データの差の絶対値を求めて桁合せのシフト」データ(
第1のシフト量データ)を生成し、そのシフト量データ
をセレクタ36に与えると共に、前記保持データの比較
結果に応じた出力信号を出力して仮数部選択部24の切
り換え動作を行わせる回路である。
This circuit has a data holding area of 22a and mantissa parts 21b and 22b, and temporarily holds input calculation data to be processed (hereinafter simply referred to as input data). The mantissa part 22b of each input register 21.22 is connected to the mantissa selection part 24, and the exponent parts 21a and 22a are connected to the exponent part selection part 25 and the exponent part comparison part 26, respectively. The mantissa selection section 24 is a circuit that selects the data held in the mantissa section 21b or 22b based on the output signal of the exponent comparison section 26 and supplies it to the right shift circuit 27 or ALU 2B. The exponent part selection unit 25 is a circuit that provides data held in the exponent part 21a or 22a to the TR 31. In addition, the exponent part comparison unit 26 calculates the absolute value of the difference between the data held in both the exponent parts 21 and 22a, and calculates the absolute value of the difference between the data held in both the exponent parts 21 and 22a, and calculates the absolute value of the difference between the data held in both the exponent parts 21 and 22a to shift the digit alignment data (
A circuit that generates first shift amount data), supplies the shift amount data to the selector 36, and outputs an output signal according to the comparison result of the held data to perform a switching operation of the mantissa selection section 24. be.

セレクタ36は、算術シフト聞検出部23.及び指数部
比較部26から出力される両シフト最データのうちのい
ずれか一方を選択し、それを右シフト回路27及び丁R
30に与える回路でおる。右シフト回路27は、セレク
タ36からのシフ]・但データに基づぎ、仮数部選択部
24から出力データを所定のピッ1〜数だけ右ヘシフト
する回路であり、そのシフト後のデータをALU28に
与える。ALU28は、6971〜回路27の出力デー
タを第1の入力、さらに仮数部選択部24の出力データ
を第2の入力としてそれらの2人力の算術演算を行う回
路であり、その演算結果はTR29に与えられる。
The selector 36 is connected to the arithmetic shift detection section 23. and the right shift circuit 27 and the right shift circuit 27 and the right shift data output from the exponent part comparison section 26.
It is a circuit that gives 30. The right shift circuit 27 is a circuit that shifts the output data from the mantissa selector 24 to the right by a predetermined number of pips based on the shift data from the selector 36, and transfers the shifted data to the ALU 28. give to The ALU 28 is a circuit that performs two-man arithmetic operations using the output data of the circuits 6971 to 27 as the first input and the output data of the mantissa selector 24 as the second input, and sends the operation results to the TR 29. Given.

TR29はALU28の出力データを一時保持してそれ
を正規化シフト母検出部32及び左シフト回路33に与
える回路、さらにTR30はセレクタ36の出力データ
を一時保持してそれを他のセレクタ37に与える回路、
TR31は指数部選択部25の出力データを一時保持し
てそれを指数部補正部34に与える回路である。   
′ 正規化シフト量検出部32は、従来における第2図のシ
フト数検出回路1と同様の動作を行うもので、TR29
の出力データから正規化シフト邑を検出してその正規化
シフト量検出データを出力し、それをセレクタ37に入
力する回路である。セレクタ37は、TR30及び正規
化シフト量検出部32の面出力データのいずれか一つを
選択して左シフト回路33及び指数部補正部34に与え
る回路である。左シフト回路33は、セレクタ37から
与えられるシフト量データに基づき、T1129の出力
データを所定のビット数だけ左にシフトする回路であり
、その出力は出力レジスタ35に与えられる。指数部補
正部34はTR31及びセレクタ37の出力データを入
力し、正規化のための補正演算を行う回路、出力レジス
タ35は指数部35a及び仮数部35bの記憶保持領域
を持ちそれらに指数部補正部34及び左シフト回路33
の出力データを一時保持する回路である。
TR29 is a circuit that temporarily holds the output data of the ALU 28 and provides it to the normalization shift mother detection unit 32 and the left shift circuit 33, and further, TR30 temporarily holds the output data of the selector 36 and provides it to another selector 37. circuit,
TR31 is a circuit that temporarily holds the output data of the exponent selection section 25 and supplies it to the exponent correction section 34.
' The normalized shift amount detection section 32 operates in the same manner as the conventional shift number detection circuit 1 shown in FIG.
This circuit detects the normalized shift amount from the output data of , outputs the normalized shift amount detection data, and inputs it to the selector 37. The selector 37 is a circuit that selects one of the surface output data of the TR 30 and the normalized shift amount detection section 32 and supplies it to the left shift circuit 33 and the exponent part correction section 34. The left shift circuit 33 is a circuit that shifts the output data of T1129 to the left by a predetermined number of bits based on the shift amount data given from the selector 37, and its output is given to the output register 35. The exponent part correction unit 34 is a circuit that inputs the output data of the TR 31 and the selector 37 and performs a correction operation for normalization. section 34 and left shift circuit 33
This is a circuit that temporarily holds the output data.

次に、第3図(1)〜(4)を参照しつつ動作を説明す
る。なお、第3図中は、△は入力レジスタ21.22の
セラ1〜時、OはTR29〜31のセラ1〜時、×は出
力レジスタ35のセラ1〜時をそれぞれ示している。
Next, the operation will be explained with reference to FIGS. 3(1) to (4). In FIG. 3, △ indicates the time of the cell 1 of the input registers 21 and 22, O indicates the time of the cell 1 of the TRs 29 to 31, and x indicates the time of the cell 1 of the output register 35, respectively.

(I>第3図(1)の固定少数点データ連続算術シフト
動作 例えば、16ビツト固定少数点のベクトルデータ(最上
位ビットは符号ビットとする)を連続して算術シフトす
る場合のパイプライン動作について説明する。
(I> Fixed-point data continuous arithmetic shift operation in Figure 3 (1) For example, pipeline operation when 16-bit fixed-point vector data (the most significant bit is the sign bit) is continuously arithmetic shifted I will explain about it.

まず、クロック■1で、マイクロ命令「データ入力」を
命令解読部20が解読すると、入力レジスタ21.22
の仮数部21bまたは22bに第1の16ビツトデータ
ooioo・・・0が入力される。
First, at clock ■1, when the instruction decoder 20 decodes the microinstruction "data input", the input registers 21 and 22
The first 16-bit data ooiooo...0 is input to the mantissa part 21b or 22b.

次にクロックT2で、マイクロ命令「左1ビツトシフト
、かつデータ入力」を命令解読部20が解読すると、算
術シフト検出部23は命令解読部20から出力されるシ
フト量制御dll信号を検出し、その信号のシフト量デ
ータをセレクタ36を介してTI’?30に供給される
。ここで、シフト量データはシフミル方向に従ってTR
30にのみ供給される。ざらに、仮数部選択部24によ
り選択された入力データooioo・・・Oが直接AL
U28に与えられると、その入力データはALU28を
そのまま通過してTR29に入力される。一方、このと
き入力レジスタ21あるいは22には第2のデータ01
0100・・・0が入力される。
Next, at clock T2, when the instruction decoder 20 decodes the microinstruction "shift left 1 bit and input data", the arithmetic shift detector 23 detects the shift amount control dll signal output from the instruction decoder 20, and The shift amount data of the signal is sent via the selector 36 to TI'? 30. Here, the shift amount data is TR according to the Schiffmill direction.
30 only. Roughly speaking, the input data ooiooo...O selected by the mantissa selection unit 24 is directly AL
When applied to U28, the input data passes through ALU28 as is and is input to TR29. On the other hand, at this time, the second data 01 is stored in the input register 21 or 22.
0100...0 is input.

さらにクロックT3に移り、第1のデータ出力および右
2ビツトシフト命令が命令解読部20で解読されると、
TR30に保持されていたシフト量データはセレクタ3
7を介して左シフト回路33に入力される。すると、T
R29から左シフト回路33へ入力された第1の入力デ
ータは左へ1ビツトシフトされ、そのシフト結果010
0−・・0が出力レジスタ35に与えられる。一方、前
クロックT3で入力された第2のデータは、仮数部選択
部24を介して右シフト回路27に与えられ、その右シ
フト回路27により、算術シフト量検出部23からの右
2ビツトシフト量データでシフトされてそのシフト結果
00010100・・・OかALU28を通ってTR2
9に与えられる。
Further, moving to clock T3, when the first data output and the right 2-bit shift instruction are decoded by the instruction decoding section 20,
The shift amount data held in TR30 is transferred to selector 3.
7 to the left shift circuit 33. Then, T
The first input data input from R29 to the left shift circuit 33 is shifted to the left by 1 bit, and the shift result is 010.
0-...0 is given to the output register 35. On the other hand, the second data input at the previous clock T3 is given to the right shift circuit 27 via the mantissa selection section 24, and the right shift circuit 27 converts the right 2-bit shift amount from the arithmetic shift amount detection section 23. The data is shifted and the shift result is 00010100...O or TR2 is passed through ALU28.
given to 9.

クロックT4では、TR29に保持された第2のデータ
のシフトデータが左シフト回路33をシフト量Oで通過
して出力レジスタ35へ出力される。
At clock T4, the shift data of the second data held in TR29 passes through left shift circuit 33 with a shift amount O and is output to output register 35.

(II>第3図(2)の浮動少数点データ指数部算術シ
フ1〜動作 例えば、仮数部16ビツトおよび指数部6ビツトの浮動
少数点データ01100・・・OX2    を右へ3
ビツトシフトする場合について説明する。
(II> Floating point data exponent arithmetic shift 1 to operation in Figure 3 (2) For example, floating point data 01100 with 16 bits of mantissa and 6 bits of exponent... OX2 to the right 3
The case of bit shifting will be explained.

今、クロック■1で、前記浮動少数点データが入力レジ
スタ21に入力されたとすると、クロックT2で、指数
部選択部25は入力レジスタ21内のデータを選択して
TR31に与える。一方、算術シフI−量検出部23は
命令解読部20から出力される右3ビツトのシフト量制
御信号を検出し、その信号のシフト量データをセレクタ
36を通してlR30へ与える。前記浮動少数点データ
の仮数部データは、指数部と同様に仮数部選択部24で
選択され、直接AL028に与えられる。すると、仮数
部データはALU28をそのまま通過してTR29に入
力される。
Now, assuming that the floating point data is input to the input register 21 at clock {circle around (2)} 1, the exponent selector 25 selects the data in the input register 21 and supplies it to the TR 31 at clock T2. On the other hand, the arithmetic shift I-amount detection section 23 detects the right 3-bit shift amount control signal output from the instruction decoding section 20, and supplies the shift amount data of the signal to the IR 30 through the selector 36. The mantissa data of the floating point data is selected by the mantissa selector 24 in the same way as the exponent part, and is directly given to the AL028. Then, the mantissa data passes through the ALU 28 as is and is input to the TR 29.

クロックT3では、丁R31内の指数部データが指数部
補正部34へ、TR30内のシフト量データがセレクタ
37を介して該指数部補正部34へそれぞれパノ〕され
る。すると、指数部補正部34では指数部2進データを
000010から000110に補正し、それを出力レ
ジスタ35の指数部35aへ出力する。ざらに、丁R2
9内のデータは、左シフト回路33シフトを量Oで通過
して出力レジスタ35の仮数部351)へ出力する。
At clock T3, the exponent part data in TR31 is sent to the exponent part correcting part 34, and the shift amount data in TR30 is sent to the exponent part correcting part 34 via the selector 37. Then, the exponent part correction section 34 corrects the exponent part binary data from 000010 to 000110, and outputs it to the exponent part 35a of the output register 35. Zarani, Ding R2
The data in 9 passes through the left shift circuit 33 shift by an amount O and is output to the mantissa part 351) of the output register 35.

(III)第3図(3)の固定少数点データから浮動少
数点データへのデータフt−マット変換動作例えば、デ
ータ指数部のスケーリング定数(正規化定数)が4 (
000100(2) )である16ビツト固定少数点デ
ータoooiioo・・・0を浮動少数点データに変換
する場合について説明する。
(III) Data format conversion operation from fixed point data to floating point data in Figure 3 (3) For example, the scaling constant (normalization constant) of the data exponent part is 4 (
A case will be described in which the 16-bit fixed point data oooiiioo...0, which is 000100(2)), is converted to floating point data.

まず、クロックT1においてデータ入力命令により、固
定少数点データが入力レジスタ21.22の仮数部21
bあるいは22bに入力されると共に、スケーリング定
数が指数部22aあるいは21aに入力される。
First, at clock T1, fixed point data is input to the mantissa part 21 of the input register 21, 22 by a data input command.
b or 22b, and a scaling constant is input to the exponent part 22a or 21a.

クロックT2では、指数部選択部25により選択された
スケーリング定数がlR31に入力されると共に、仮数
部選択部24により選択ざわた固定少数点データが直接
ALU28を通過してTR29に入力される。
At clock T2, the scaling constant selected by the exponent selection section 25 is input to the lR31, and the fixed point data selected by the mantissa selection section 24 is directly input to the TR 29 through the ALU 28.

クロックT3では、TR31内のスケーリング定数デー
タが指数部補正部34に入力されると共に、TR29内
の固定少数点データ000100・・・Oが正規化シフ
ト量検出部32に入力されそこで正規化シフト量0O1
0が検出される。正規化シフト量はセレクタ37を介し
て左シフト回路33および指数部補正部34に供給され
るので、左シフト回路33では左2ビツトシフト、指数
部補正部34では正規化のための補正演算oioo→0
010をそれぞれ行い、それらの結果を出力レジスタ1
6に出力する。これにより、データフオマット変換が完
了する。
At clock T3, the scaling constant data in TR31 is input to the exponent correction unit 34, and the fixed decimal point data 000100...O in TR29 is input to the normalized shift amount detection unit 32, where the normalized shift amount is input. 0O1
0 is detected. The normalized shift amount is supplied to the left shift circuit 33 and the exponent correction unit 34 via the selector 37, so the left shift circuit 33 performs a 2-bit shift to the left, and the exponent correction unit 34 performs a correction calculation for normalization oioo→ 0
010 respectively, and output the results to output register 1.
Output to 6. This completes the data format conversion.

(IV)第3図(4)の浮動少数点データ加減界におけ
る桁合せシフト動作 クロック■1において、例えば入力データ010010
0011000101X 2    が入力レジスタ2
1に、人力データ0100101000010010X
 2    が入力レジスタ22に設定されたとする。
(IV) In the digit alignment shift operation clock ■1 in the floating point data addition/subtraction field in FIG. 3 (4), for example, input data 010010
0011000101X 2 is input register 2
1, human data 0100101000010010X
2 is set in the input register 22.

クロックT2では、各入力データの指数部が指数部比較
部26に入力され、この指数部比較部26において演算
前の桁合せシフト量データ(すなわち、両人力データ指
数部の差の絶対値)が生成されてそれが4ビツトで右シ
フト回路27に供給される。
At clock T2, the exponent part of each input data is input to the exponent part comparison part 26, and in this exponent part comparison part 26, the digit alignment shift amount data (that is, the absolute value of the difference between the exponent parts of both human data) before calculation is calculated. It is generated and supplied to the right shift circuit 27 in 4 bits.

この際、仮数部選択部24は、指数部データの絶対値が
大きい入力レジスタ21の仮数部データを右シフト回路
27の入力として選択する。すると、仮数部データは右
シフト回路27により、 0010010001100010へと右へ1ビツトシ
フトされた後、ALU2Bへ出力される。一方、入力レ
ジスタ22の仮数部データは、仮数部選択部24を介し
て直接A1.12Bへ供給される。
At this time, the mantissa selector 24 selects the mantissa data of the input register 21 whose exponent data has a large absolute value as input to the right shift circuit 27 . Then, the mantissa data is shifted to the right by 1 bit to 0010010001100010 by the right shift circuit 27, and then output to the ALU 2B. On the other hand, the mantissa data of the input register 22 is directly supplied to A1.12B via the mantissa selector 24.

このようにして桁合せが完了すると、ALU29は仮数
部加減算の動作を行い、その結果をTR29に設定する
。その後、正規化シフト量検出部32と左シフ1〜回路
33とによって正規化シフ1〜動作が行われ、該正規化
シフトに伴なって必要となる指数部データの補正が指数
部補正部34で行われた後、それらの最終結果が出力レ
ジスタ35に設定される。
When the digit alignment is completed in this way, the ALU 29 performs the operation of adding and subtracting the mantissa part, and sets the result in the TR 29. Thereafter, normalization shift 1 operation is performed by the normalization shift amount detection unit 32 and left shift 1 circuit 33, and the exponent part data correction required for the normalization shift is performed by the exponent part correction unit 33. , their final results are set in the output register 35.

本実施例の利点は、次のようである。The advantages of this embodiment are as follows.

右シフト回路27と左シフト回路33とをへ団28を介
して縦続接続したので、石シフト回路27と左シフ1〜
回路33との冗長回路がなくなり、その結果、従来のよ
うなシフト回路出力選択器が不要となってハードウェア
量を減少できる。
Since the right shift circuit 27 and the left shift circuit 33 are connected in cascade via the bridge 28, the stone shift circuit 27 and the left shift circuit 1 to
There is no redundant circuit with the circuit 33, and as a result, a conventional shift circuit output selector is no longer necessary, and the amount of hardware can be reduced.

さらに、固定少数点データと浮動少数点データとの両方
を扱う上で必要となる、次のような左シフトまたは右シ
フトを伴なう処理を、効率良く行うことができる。
Furthermore, the following processing involving left shift or right shift, which is necessary when handling both fixed point data and floating point data, can be performed efficiently.

■固定少数点データの算術シフト処理、■浮動少数点デ
ータにお【プる演算前の桁合せシフlへ処理、■浮動少
数点データの正規化シフト処理、■浮動少数点データの
指数部算術シフト処理、■固定少数点データと浮動少数
点データとの間のデータフォーマット変換処理。
■Arithmetic shift processing of fixed point data, ■Processing to digit shift before [pull operation to floating point data], ■Normalization shift processing of floating point data, ■Exponent part arithmetic of floating point data Shift processing, ■Data format conversion processing between fixed-point data and floating-point data.

さらにまた、多機能なシフト操作が可能な演算装置が少
ないハードウェア量で実現できるため、ISI化の際の
大きな利点となる。
Furthermore, an arithmetic unit capable of multifunctional shift operations can be realized with a small amount of hardware, which is a great advantage when implementing ISI.

なお、本発明は、図示の実施例に限定されす、第1図の
演算装置にお(プる回路各部を種々変形できる。
It should be noted that the present invention is limited to the illustrated embodiment, and various modifications may be made to the various circuitry parts of the arithmetic unit shown in FIG.

(発明の効果) 以上詳細に説明したように、本発明によれば、右シフト
回路と左シフト回路とをALUを介して縦続接続したの
で、仮数部データビット幅全体の左右のシフトが可能と
なり、各種のシフト処理が効率良く行えるばかりか、ハ
ードウェア量の減少と、それによりLSI化等が用意に
行えるという効果が期待できる。
(Effects of the Invention) As described in detail above, according to the present invention, since the right shift circuit and the left shift circuit are connected in cascade via the ALU, it is possible to shift the entire mantissa data bit width left and right. Not only can various shift processes be performed efficiently, but the amount of hardware can be reduced, and as a result, LSI implementation can be easily implemented.

4、発明の詳細な説明 第1図は本発明の一実施例を示す演算装置の構成ブロッ
ク図、第2図は従来の並列シフト装置を示ず構成ブロッ
ク図、第3図(1)、 (2)、 (3)、 (4)は
第1図の動作説明図である。
4. Detailed Description of the Invention FIG. 1 is a block diagram of the configuration of an arithmetic device showing an embodiment of the present invention, FIG. 2 is a block diagram of the configuration of a conventional parallel shift device, and FIG. 2), (3), and (4) are operation explanatory diagrams of FIG. 1.

20・・・・・・命令解読部、21.22・・・・・・
入力レジスタ、23・・・・・・算術シフト量検出部、
24・・・・・・仮数部選択部、25・・・・・・指数
部選択部、26・・・・・・指数部比較部、27・・・
・・・右シフト回路、28・・・・・・算術演算回路(
ALU)、29、30.31・・・・・・テンポラリレ
ジスタ(IR)、32・・・・・・正規化シフト量検出
部、33・・・・・・左シフト回路、34・・・・・・
指数部補正部、35・・・・・・出力レジスタ、36.
37・・・・・・セレクタ。
20... Instruction decoding section, 21.22...
Input register, 23... Arithmetic shift amount detection unit,
24... Mantissa selection section, 25... Exponent selection section, 26... Exponent comparison section, 27...
...Right shift circuit, 28... Arithmetic operation circuit (
ALU), 29, 30.31...Temporary register (IR), 32...Normalization shift amount detection section, 33...Left shift circuit, 34...・・・
Exponent correction unit, 35...output register, 36.
37...Selector.

本発明の演算装置 兜1図Arithmetic device of the present invention Helmet 1

Claims (1)

【特許請求の範囲】 固定少数点データ及び浮動少数点データの処理が行え、
かつ該固定少数点データを該浮動少数点データの仮数部
として処理が行える2進数データの2入力算術演算装置
において、 第1と第2の入力演算データにおける指数部の減算から
求める第1のシフト量データ、あるいはマイクロ命令で
設定される第2のシフト量のいずれか一方のデータをシ
フト量として、該第1の入力演算データの仮数部を右シ
フトする右シフト回路と、 該右シフト回路の出力データを第1の入力とし、前記第
2の入力演算データの仮数部を第2の入力としてそれら
第1および第2の入力の算術演算を行う算術演算回路と
、 前記第2のシフト量データ、あるいは前記算術演算回路
の出力を正規化するための正規化シフト量検出データの
いずれか一方のデータをシフト量として、前記算術演算
回路の出力データを左シフトする左シフト回路とを、 有することを特徴とする演算装置。
[Claims] Fixed point data and floating point data can be processed,
and in a two-input arithmetic operation device for binary data that can process the fixed point data as the mantissa part of the floating point data, a first shift obtained from subtraction of the exponent part of the first and second input operation data. a right shift circuit that shifts the mantissa part of the first input operation data to the right using either the amount data or the second shift amount set by the microinstruction as the shift amount; an arithmetic operation circuit that performs arithmetic operations on the first and second inputs with output data as a first input and a mantissa part of the second input operation data as a second input; and the second shift amount data. or a left shift circuit that shifts the output data of the arithmetic operation circuit to the left by using either one of the normalized shift amount detection data for normalizing the output of the arithmetic operation circuit as the shift amount. A computing device characterized by:
JP61033178A 1986-02-18 1986-02-18 Arithmetic unit Pending JPS62190528A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61033178A JPS62190528A (en) 1986-02-18 1986-02-18 Arithmetic unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61033178A JPS62190528A (en) 1986-02-18 1986-02-18 Arithmetic unit

Publications (1)

Publication Number Publication Date
JPS62190528A true JPS62190528A (en) 1987-08-20

Family

ID=12379259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61033178A Pending JPS62190528A (en) 1986-02-18 1986-02-18 Arithmetic unit

Country Status (1)

Country Link
JP (1) JPS62190528A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0355629A (en) * 1989-07-24 1991-03-11 Nec Corp Floating point addition/subtraction device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776634A (en) * 1980-10-31 1982-05-13 Hitachi Ltd Digital signal processor
JPS595344A (en) * 1982-07-01 1984-01-12 Nippon Telegr & Teleph Corp <Ntt> Parallel shifting circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776634A (en) * 1980-10-31 1982-05-13 Hitachi Ltd Digital signal processor
JPS595344A (en) * 1982-07-01 1984-01-12 Nippon Telegr & Teleph Corp <Ntt> Parallel shifting circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0355629A (en) * 1989-07-24 1991-03-11 Nec Corp Floating point addition/subtraction device

Similar Documents

Publication Publication Date Title
JPS62191920A (en) Number of shifts control circuit
EP0530372B1 (en) Numerical expression converter and vector processor using the same
KR100465371B1 (en) apparatus and method for design of the floating point ALU performing addition and round operations in parallel
JPH10161850A (en) Absolute value comparing circuit
JPH05134851A (en) Multiplying circuit output system
US5181184A (en) Apparatus for multiplying real-time 2&#39;s complement code in a digital signal processing system and a method for the same
JPS62190528A (en) Arithmetic unit
JPS59117637A (en) Floating point multiplier
WO1992022027A1 (en) Divider
JPH10187416A (en) Floating point arithmetic unit
JP3286990B2 (en) Digital signal processor
US5432726A (en) Arithmetic unit for quantization/inverse quantigation
JPS595344A (en) Parallel shifting circuit
JPH01207823A (en) Floating point number-fixed point number converter
JP2991788B2 (en) Decoder
JPH03228434A (en) Code converting circuit
JPS6222178A (en) Multiplier for multiplying two complex numbers
JP3517162B2 (en) Division and square root arithmetic unit
JP3187402B2 (en) Floating point data addition / subtraction circuit
JPH0225924A (en) Floating point arithmetic processor
JP3077880B2 (en) Sticky bit detection circuit
JP2591250B2 (en) Data processing device
JPH02194428A (en) Arithmetic circuit
JPH0293728A (en) Operation processor
JPH0918875A (en) Data processor