JPH02224021A - 加減算装置 - Google Patents

加減算装置

Info

Publication number
JPH02224021A
JPH02224021A JP18737589A JP18737589A JPH02224021A JP H02224021 A JPH02224021 A JP H02224021A JP 18737589 A JP18737589 A JP 18737589A JP 18737589 A JP18737589 A JP 18737589A JP H02224021 A JPH02224021 A JP H02224021A
Authority
JP
Japan
Prior art keywords
data
circuit
input
output
bus
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.)
Granted
Application number
JP18737589A
Other languages
English (en)
Other versions
JPH0357488B2 (ja
Inventor
Yoshimune Hagiwara
萩原 吉宗
Shizuo Sugiyama
杉山 静夫
Shigemichi Maeda
前田 成道
Osamu Yumoto
湯本 攻
Takashi Akazawa
赤沢 隆
Masahito Kobayashi
小林 正仁
Yasuhiro Kita
北 靖洋
Yuzo Kida
喜田 祐三
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.)
Hitachi Ltd
Kokusai Denki Electric Inc
Original Assignee
Hitachi Denshi KK
Hitachi 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 Hitachi Denshi KK, Hitachi Ltd filed Critical Hitachi Denshi KK
Priority to JP18737589A priority Critical patent/JPH02224021A/ja
Publication of JPH02224021A publication Critical patent/JPH02224021A/ja
Publication of JPH0357488B2 publication Critical patent/JPH0357488B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、加減算装置に関し、例えばディジタル信号処
理プロセッサに組み込み、音声2画像等のデ・−夕を実
時間で処理しうる高速、高精度の積和演算機能を実現す
るのに有用である6音声の合成または分析装置、あるい
は通信分野におけるモデム(変復調器)、ディジタル・
フィルタ、コーデック(GODEC)、エコー・−ギャ
ンセラー等の装置では、ディジタル化された信号し実時
間で処理できる信号処理プロセッサの応用が検討されて
いる。
この信号処理プロセッサは、プログラム・メモリとデー
タを高速度で処理するだめの専用の乗算器および加減算
器を内蔵するLSIとして提供され、プログラムを変え
ることにより各種の用途に適合させる。
上記信号処理プロセッサを例えば音声信号のフィルタ処
理に用いた場合、積和演算によって内部の演算データは
16−28ピツ1〜の比較的大きな撮幅となる。このた
め、乗算器や加減算器の構造を固定小数点データ演算型
とすると、演算データのビット数の増加に伴ないハルド
ウエア規模が指数関数的に大きくなり、I、SI化が困
難となる。
この問題は、プロセッサの構成を浮動小数点データ演算
型とすることによって解決できる7しかしながら、乗算
器と加減算器とをデータバスで接続し、それぞれが独立
して浮動小数点演算を行なうよう構成された従来の汎用
コンピュータのデータ処理方式をそのまま採用すると、
信号処理プロセッサの基本動作である積和演算に時間が
かかり、信号の実時間処理が困難どなる。
本発明の目的は、LSI化に適し2、加減算されるデー
タが浮動小数点であるか、固定小数であるかを意識する
ことなく使用?:″き、ディジタル信号を実時間で高速
に処理できる新規な構成の信号処理プロセッサ等に有用
な加減算装置を提供することにある、 以下、本発明の実施例を図面を参照して説明する。
第1図は本発明が適用されたディジタル信号プロセッサ
の全体構成図であり、1はプログラムを格納するための
メモリ、2は上記プログラムメモリ1の読出しアドレス
を指示するプログラムカウンタ、3°は上記プログラム
メモリ1に接続された命令レジスタ、4は命令レジスタ
3に読出された命令語からプロセッサを動作させるため
の各種のi!制御信号Sを発生させる制御回路である。
この実施例では、メモリ1に格納される命令語は例えば
22ビツトからなり、それぞれオペレーションコードど
データ、アドレスまたはアドレス制御情報を含んでいる
。プログラムカウンタ2ど命令レジスタは1,6ビツト
のデー・タバス(I)バス)20に接続されている。
5.6はデータを格納するためのメモリ、7は汎用レジ
スタを示す。メモリ5,6は一方をランダムアクセス・
メモリ(RAM)、他方を読出し専用メモリ(ROM)
とすることができる。また、それぞれのメモリは複数個
の小容量のROMあるいハROMの複合体であってもよ
い、−J−、記メモリは16ビツトのデータを記憶し、
各デ・−夕は選択回路8を介して16ビツトのXバス2
1あるいはYバス22に読出される。9,10はそれぞ
れ上記データメモリ5,7の下位アドレスを指定するレ
ジスタ、11,1211上記メモリの上位アドレスを指
定するレジスタである6尚、レジスタ11はXバス21
に読出すべきデータの−に上位アドレスを、またレジス
タ12はYバス22に読出すべきデータの上位アドレス
または汎用レジスタ7のアドレスを4犬てJ3す、これ
らの1ノジスタには命令レジスタ3からデータバス23
を介してアドレス情報が与えられる。
14はXバス2JとYバス22から与えら4する2つの
データの積を算出し2、結果をPバス24に出力する浮
動小数点演算型の乗算器であり、この乗算器は、後述す
るように2つの入力データX。
Yを保持するための1ノジ入夕を含み、演算されない2
つのデータX、YをそノJ5まXバス25.Yバス2G
に出力する。
15は浮動小数点演算型の加減算器であり、」二記乗算
器14の出力データX、Y、Pおよびデータバス20.
27のデータD、Aを入力として演算を行ない、その結
果を累算器16に出力する。
17は上記累算器16にラッチされた浮動小数点データ
を2°0ビツトのデータバス(Aバス)27に出力する
と共に、上記データを16ビツ1へのデータに変換して
Dバス20に出力するスイッチ回路、J−8は」−記乗
算器1,4および加減算器15に接続され、これらの演
算結果に関する状態コードを記憶する状態コードレスレ
ジスタである。
3oはデータバス20上の16ビツl−のデータを外部
端子り。−・・Dl、に並列的に出力するための出力レ
ジスタ、31は上記外部端子からの16ビツトデータを
データバス20に並列的に取り込むための人力レジスタ
である。また32は端子5IENの入力パルスがii 
1 +eの期間中に、端子5ICKの入力クロックに同
期して端子SIからのシリアル入力データを取り込むた
めの16ビットのシフトレジスタ、33は端子5OEN
の人力パルスが“1′″の期間中に、端子5OCKの人
力タロツクに同期して端子SOにデータを直列的に出力
するための16ビツトのシフトレジスタを示す。これら
2つのシフトレジスタはそれぞれデータバス20と16
ビツト並列接続されている。
35はプロセッサの動作状態を制御するレジスタ、36
はリピート命令によりプロセッサに成る命令を繰り返し
て実行させる場合、その繰り返し回数がセットされるカ
ウンタ、37はプロセッサの内部状態を示すステータス
・レジスタ4示す。
レジスタ35.37の内容はそれぞれデータバス20、
端子り。−Dl、を介して外部から書込み、読出しが可
能である。
40はプロセッサ動作への割込みと入出力動作とを制御
するための制御回路であり1例えば端子IIEN、5O
ENの入力信号立1ユリでシフ1−レジスタ32.33
を動作可能とし、それぞれの信号の立下りでプログラム
に割り込みをかけ、また、端子IEへの入出力信号の立
」ニリでレジスタ30゜31を起動し、その立下りでプ
ログラムに割り込みをかけるよう動作する。41は外部
の制御装置(例えばマイクロコンピュータ)からの信号
に応じてプロセッサ動作を制御するファンクション制御
回路であり、例えば端子TXAKからDMA転送モード
の受認信号、端子R/ Wから並列入出力デ・−タの転
送方向を示す信号、端子C8からこのプロセッサを外部
装置が選択したことを示す信号、端子TESTからテス
ト動作モードの指定信号、R8Tからリセット信号、端
子F。−3から外部装置による動作制御信号をそれぞれ
受は取り、端子TxRQから並列データ転送要求信号を
出力する。
端子BitI10はデータを1ピッ1−ずつ入出力する
ための双方向入出力端子を示す642はタロツクパルス
発生回路であり、端子O8Cを介して外部回路より基本
となるタロツクを受は取り。
これに基づきプロセッサ動作に必要な各種の内部クロッ
クを発生し、また、端子5YNCにプロセッサの内部動
作と外部システムの同期用のクロックを出力する。
次に第2図、第3図、第4図により乗算器14と加減算
器15についで更に説明する。
乗算器】4には、第2図に示す如くXバス21゜Yバス
22の16ビツ1−のデータが人力される。
これらのデータはメモリ5,6.汎用レジスタ7あるい
はデータバス20から与えられる。第3図(A)に示す
ように、これらのデータは下位4ビツトが指数部、上位
12ビツトが仮数部があり、斜線を施して示したそれぞ
れの部分の最−L位ビット、すなわち23,215の位
置にあるビットがサインビットとなっている。また、小
数点は2 t′と214との間にある。第2図に示す如
く、Xバス21とYバス22から与えられた指数部デー
タと仮数部データは、それぞれレジスタ51,52゜5
3および54に保持され、lノジスタ51,52の指数
部データは加算回路55によって加算され4ビツトの出
力レジスタ56を介してPバス24に出力される。一方
、レジスタ53.54の仮数部データは1通常の固定小
数点演算の場合と同様の回路構成をもつ乗算回路57に
入力され、乗算結果は上位1,6ビツトが出力Iノジス
タ58を介してPバス24に出力される。つまり、乗算
器14の演算出力は、第3図(B)に示す如く、F位4
ビットの指数部と−L位16ビツトの仮数部とからなる
20ビツトのデータとなって加減算器15に入力される
。尚、レジスタ52.54の出力はXバス2“5に、ま
たレジスタ51.53の出力はYバス26に送出され、
それぞれ16ビツI−のデータとして加減算器】5に与
えられる。
第4図(A)、(B)に本発明の実施例である加減算器
15の構成を示す。第4図(A)に示すように、加減算
器にはバス20.24〜27を介して、データD、P、
X、Y、Aが入力され、制御信号S工で指定された1つ
のデータが選択される。
また、データA、Xは選択回路61に人力され制御信号
S2で指定された1つのデータが選択される。ここで入
力データD、、X、Yはそれぞれ第3図(A)に示した
]、6ビツトデータである。後で述べるように、これら
の16ビツトデータが指定されたとき、選択回路60.
61はこれらのデー・夕を第3回(B)に示した20ビ
ツトデータに変換して出力する構成となっている1、こ
のビット変換は、入力データD、X、Yが固定小数点デ
ータが浮動小数点デー・夕かによって異なり、変換動作
は制御信号S、によって指定される。これによって浮動
小数点演算型の加減算器で固定小数点表示の入力データ
も処理できるようになっている。尚。
制御信号51pS2pS3・・・・・・・・・S、、は
プログラム中の命令語に対応して制御回路4から出力さ
れる。
選択回路60からの出力データをβ(指数部β[、仮数
部βM)、選択回路61からの出力データをα(指数部
σE、仮数部αM)とすると、指数部データαi=l、
を選択回路62を介し1、−比較回路63に入力され、
指数部f−タβEと大小比較される。また、これらの指
数部データαし、βBはそれぞれ引算回路64と選択回
路65にも入力される。
仮数部データαhはネゲート回路66を介して選択回路
67.68に入力され、仮数部データβ暦は直接選択回
路67.68に人力される。ネゲート回路66は、二の
実施例の場合、データαとβとの引算を加算器構成のA
LU75により実現するために設けられたものであり、
加算演算の場合にはデータαにはネゲート回路を素通り
する。上記選択回路65,67.68は、それぞれ比較
回路63の出力信号に応じて2つの入力のうちの一方を
選択する9選択回路G5の出力はラッチ回路71゛に1
選択回路67の出力はシフト回路69を介してラッチ回
路72に、また選択回路68の出力はラッチ回路73に
それぞれタイミング信号Cでラッチされる。引算回路6
4も」二記比較回路63の出力によって制御され、比較
結果に応じて入力α[、βEの大きい方から小さい方を
引算するよう動作する。シフト同M69は、選択回路7
0を介して得られる上記引算回路64の出力に応じたビ
ット・数だり、ムカデ・−夕を右方向にシフト動作する
。このシフト回路69の動作は5選択回路70に入力さ
れるもう−・つのデータEによっても制御でき、シフI
〜ビット数の選択は制御信号S7によって行なわれる。
ラッチ回172.73の出力eA、eBは、第4図CB
)’:示すように、制御信号SI′lで動作する固定小
数点演算型の加算器(ALU)75に入力され、加算結
果U、は左方向シフト回路76に与λられる。−力゛、
ラッヂー回路71の出力γば定数加算回路77ど、引算
回路78の一方の入力端子に入力される。79は加p器
75の出力UHを判定する写検出回路であり、補数表示
で与えられる加算器の出力UNが正数の場合、U+の最
−L位にあるサインビットに統いたu O11ビツト・
の連続個数をカウントする。¥−盲イが負数の場合には
 h i?+ 43インビットに続< ” 1”ビット
・の連続個数をカウントする、上記零検出回路79の出
、/10゜は、デ・−・夕の正規化、#、′よびオ・・
バ・−フローへ対策のため設けられた出力補正回路80
を介してシフト回路76に4倉られ、このジット回路に
よるデータのシフ(・ビット数を決定する。また上記零
検出回路79の出力01は、引算回路78の他方の入力
端手番、j、も入力され、この引算回路の出力U F!
け出力補正回路80を介しで累算器16の指数部16X
に入力される。 J、z配素算器16の仮数部16Mに
は、出力補正回路80において補正された」−記ンフ]
−回路76からの出力データL s ’ が入力される
出力補jに回路80は、加算器75から出力されるオー
バーフロー検出信号OVFと引算回路78から出力され
るアンダフロー検出信号tJNFどに応じ“C零検出回
路79の出力0.と定数加算回路77の出力θ2とのい
ずれかを選択する選択回路81−と7プログラムによる
制御信号S 、Jに応じて上記選択回路81の出力どブ
ログラノ、で与えられたデータFどのいずれかをシフト
回路76にシフ1−ピッl−数指示信号Oとして与えろ
選択回路82と、オー・バーフロー・・信号OVFが1
11 I+のとき弓算回路出力(汀に1に加算し、この
加算結果f、、 Hにもオーバーフローを生じたとき4
4号EOVFを出力するインクリメント回路83ど、上
記インクリメント・回路83と累算器16の指数部1.
6 Xとの間に挿入された指数部補正回路85と、シフ
ト回路76と上記素数器]6の仮数部】((Mとの間に
挿入された仮数部補正回路87と、」二記2つの補正回
路85.87の動作を信号UNFおよびEOVFに応じ
て制御する制御回路89からなっている。
以上の構成からなる加減算器15は次のように動作する
第4図(A)に示した2つの入力選択回g61゜60の
それぞれの出力α、βは浮動小数点表示のデータであり
、その値は次式で表わされる。
β=βK・ 2 今、αE〉βBの関係にある2つのデータα、βの加算
演算を行なう場合を仮定すると、加算結果Zは、 で与えられる。
比較回路63は2EとβBの大小を比較し、R沢回路6
5には大きい方の指数部データαLを選択させ、選択回
路67には、小さい方の指数部βBと対応する仮数部デ
ータβにを選択させ、選択回路68には大きい方の指数
部αEと対応する仮数部データαHを選択させ、引算回
路64には大きい方の指数αEから小さい方の指数βE
を引くよう制御信号を与える。加算演算の実行中は、選
択回路70は引算回路64からの出力(αE−βE)を
選択し°Cおり、シフ1−回路69は選択回路67の出
力βNを(αE−βE)ビットだけ右方向(下位ビット
方向)にシフトするよう動作する。この結り、e^+e
Bの演算を行なった加算jl175の出力UNは第(1
)式の仮数部を表わす。従って、この段階での演算値Z
は次式で示される。
γ Z−UM・ 2 ・・・(3) 零検出回路79と左方向シフト回路76は、加算器出力
UNをそのl−値が最大となるように正規化するための
ものである。第5図(A)に示す如く、零検出回117
9によってデータUMのサインビットに続く(小数点以
下の)連続する“0″の個数θ、を検出し、シフト回路
76でデータUMを01ビツトだけ左側(最上位ピッ1
−側)にジットすれば、絶対値が最大の仮数部データL
Hが得られる。TIMが負数の場合には、第5図(B)
の如く、連続する1/ i fitの個数だけシフj〜
すればよい。この場合指数部データγについては、引算
回路78によって(γ−Oi)の演算を行ない、その出
力UEを正視化された指数値とする。データtJHにオ
ーバーフローが生じていなければ、インクリメン1−回
路83の出力LF!は正着、化された上記指数値UEに
等しくなり、正規化の処理は次式で表わすことができる
=Ls・ 2 指数部のYの大きさを4ビツトとすると、2の補数表示
によってγが表わし得る値は〔+7≦−γΣ−8〕の範
囲に制限される。従って上記仮数部データの正規化の際
、零検出回路の検出値0.だけ完全にデータtJoを左
方向にシフトしようとすると、指数部側の(γ−01)
の値が−8よりも小さくなり、引算回路にアンダーフロ
ーを生ずる場合がある。このとき、(y−θ、)の演算
を行なう引算回路78からは、データのアンダーフロー
4示す信号(ボロー信号)UNFが発生される、第4図
(■3)の回路では、上記信号tJ N Fが発生した
とさ、選択回路81が入力OLに代えて定数加算回路7
7の出力θ2を選択し、上記定数加算回路77が指数部
のデータγに定数「8」を加えた値をデータ0□として
出力するようにしである9このようにすれば、例えばγ
の値がr−5Jのとき02の値は「3」となるから、仮
数部データUNのシフトビット数は:3ピッ1−に制限
され、指数部の正規イト後の値が最小値「−81に留上
る。
信号UNFが生じたとき指数部を「−8」にする操作は
、後で第9図で説明する指数部補正回路85によって行
なわれる。
加算器75の演算結果UMに、第6図(A)。
(B)に示す如くオーバーフローを生じた場合、キャリ
ー出力にデータの真の符号が表われ、サインビットの位
置に数値の最上位のビットが現われている。従ってこの
場合には、オーバーフロー検出信号OVFによって5選
択回路81と零検出回路79の動作を停止させ、シフト
回路76に1ビット右シフト動作をさせ、インクリメン
ト回路83にUI2(=γ)+1の動作をさせ、データ
Zを次式のように操作すればよい。
上記の操作を行なうシフト回路76の1例を第7図に示
すにの回路は、シフトビット数指示データOの各ビット
θ、〜θ。に対応した8ビツトのシフタ761.4ビツ
トのシフタ762,2ピッ1−のシフF−763および
1ビツトのシフタ764からなり、各シフタのそれぞれ
の信号ラインのスイッチSW、〜SW0は、対応する制
御ビットO3〜Ooが111 Llのとき下位ビット側
の接点に接続される。また、1ビツトシフタ764の各
スイッチSW、は、オーバーフロー検出信号OV I”
が11 +l IIのとき上位ビット側の接点に接続さ
れ、サインビットの出力線L1gがキャリー信号入力端
子765と接続されて、上述したデータの1ビット右シ
フト動作を実現する。
第4図の回路で、加算器75のオーバーフロー検出信号
OVFがII 1 #fとなったとき、インクリメント
回路83による(γ+1)の演算結果にもオーバーフロ
ーが生ずる場合がある。この場合には、演算結果2 (
=α+β)にオーバーフローを生じたことを意味し、こ
のまま積和演算を続行すれば、累算器16に得られる出
力データの絶対値は第8図(A)の如く変化し、全く無
意味な値となる。
制御回路89と補正回路85.87は、演算結果Zに上
記オーバーフローが生じたとき、第8図(B)に示すよ
うに出力データの絶対値を正あるいは負の最大値に固定
するよう動作する回路であり、その具体的な構成例を第
9図に示す。
第9図において、指数部補正回路85は、入力ビットL
。−L、に対応した2人力ANDゲート850〜853
と2人力ORゲート860−・863からなり、各ピッ
1へ信号はこれらのゲート・を介して累算器16X側に
出力される。指数部データのサインビットL、が入力さ
れる ANDゲート853の他方の入力端子には、インクリメ
ンI−回路83から出力されるオーバーフロー検出信号
EOVFの反転43号が入力され、ORゲート863の
他方の入力端子には引算回路78からのアンダーフロー
検出信号U N Fが入力されている。また、データピ
ッl−L、〜L、の入力されるANDゲート850〜8
′52のそれぞれの他方の入力端子には信号UNFの反
転信号が入力され、ORゲート860−862の他方の
入力端子には信号EOVFが入力されている。信号EO
VFとUNFとは同時に“1ノ′にはなり得ないため、
指数部補正回路85の出力は、信号EOVFがII i
、 uのとき[0111] =+7となって指数部を最
大値にする。また、信号UNFが141 IIのときは
ciooo) =−Bとり、前述のO−θ、のときの指
数値を満足する。
L方、仮数部補正回路87は、サインピッ1−Ll9を
そのまま出力し、データピッI−1,、、4〜L1゜を
それぞれ2人力ORゲート871=87N、2人力AN
Dゲート881〜BINを介して出力するようになって
いる。各ORゲートの他方の入力には制御回路89のA
 N I)ゲート891の出力が与えられ、各ANDゲ
ートの他方の入力端子には制御回路89のNANDゲー
1−892の出力が!j。
えられている。信号EOVFが111 P+のとき、仮
数部データが正の値、すなわちサインビットTJL9が
“0″ならばANDゲート891とNANDゲート89
2の出力が共にJ″となり補正回路87の出力は正の最
大値[Ol、1]・・・・・・・・弓14]となる。ま
た、サインピッl−L1gが“1′″ならば、NAND
ゲー)−892の出力が“0″となるため。
補正回路87の出力は負の最大値[1000・・・・・
・00]となる。信号EOVFが140 II (7)
とき、これらの補正回路85.87は入力データLy=
、I、+をそのままデータLH”、LM’ として出力
する。
これらの出力データLE’ HLM’は累算器16゜ス
イッチ回路17を介してAバス27に出力され。
加減算器15の選択回路61に帰還される。
以上の動作説明から、本発明の適用されたディジタル信
号処理プロセッザでは1乗算器】4と加減算器15がそ
れぞれ浮動小数点演算できることが判る。ここで、Xバ
ス2】またはYバス22から乗算器1−4へのデータ入
力および乗算器14またはAバス27から加減算器(A
 L U) 1.5へのデータ入力は、入力データのビ
ット数と受取り何回路のデータビット数が−・致してい
るため、第io図(A)、(B)に示す如く、データ間
でのビット位置の変更はない。しかしながら、Xバス2
5、Yバス26.Dバス20からの16ビツトデータを
加減算器15に取り込む場合には、仮数部データのビッ
ト数が合わないため、加減算器の入力選択回路60,6
]において第10図(C)に示す如く、仮数部入力デー
タMの下位に4ビツトに“0″を追加する操作を必要と
する。また。
累算器(ACC)]、、6に得られた20ビツトの加減
算器出力を16ビツ1−のDバス20に出力する際には
、スイッチ回路17において第10図(D)に示す如く
、仮数部Mの下位4ビツトのデータを捨て、指数部4ビ
ツト、仮数部12ビツトのデータに変換する操作を必要
とする。
本発明の適用されたディジタルイコ号処理プロセッサで
は上述したデータの変換動作を行なう入力選択回l66
0,6.Lおよび出力スイッチ回路】7を更に工夫し、
プログラムの指定によりプロセッサが固定小数点演算も
実行できるようにしている。
固定小数点データX、Yの乗算は乗算器】4内の仮数部
データ乗算回路57において行なオ〕れるにの場合は第
11図(A)に示す如く、16ビツトの入力データX、
Yのうち仮数部入力レジスタ53.54に入る上位12
ビツトが有効データとして扱わJする。一方5gA定小
数点データの加減算の際には、プログラムでの指定によ
り加減算器15内のシフト回路69.76のシフト動作
を停止させ、この状態で得られた仮数部の演算結果を利
用する。シフト回路69の動作停止は、固定小数点デー
タの演算命令が第4図(A)のデータ線Eに数値「0」
のデータを与え1選択回路70が上記データ線Eからの
入力を選択するように制御信号S7を発生するようにす
ればよい。シフト回路76の動作停止は、第4図CB)
のデータ線Fに数値「0」のデータを与え、選択回N8
2が上記データ線Fからの入力を選択するよう制御信号
S、を発生ずるようにすればよい。
上記固定小数点データの加減算において、乗算器1.4
またはAバスから加減算器15へのデータ入力は、第1
1図(B)に示す如く、仮数部の16ビツトのデータを
浮動小数点演算の場合と同様に送り込めばよい。Xバス
、Yバス、Dバスからのデータ入力は、第11図(C)
の如く、全ビットを仮数部に入れ、累算器(ACC)に
得られた仮数部データは、第11図(D)に示ず如く、
全ビットをDバス20に出力される。
第12図は上述したビット変換機能を備えた加減算器の
入力選択回路60の具体例を示す5この回路図で、P0
〜pzs+ ya”Ls+ D、〜D8.はそれぞれP
バス24.Yパス26.Dバス20からの入′カデータ
の各ビットを示し、これらのうち、データPの指数部P
0〜P、はスイッチ601に入力され、スイッチ60】
−の4つの出力端子はスイッチ603の端子C6−C5
に接続される。データY、Dの各ビットとデータPの仮
数部のビットP4〜P、5はスイッチ602に入力され
、スイッチ602の上位12ビツトの出力端子はデータ
βの上位ビットの出力線β、〜β1.に接続され、下位
4ビツトの出力端子はスイッチ603の端子04〜・C
,、およびスイッチ60】7の他方の入力端子に接続さ
れている。スイッチ603はデータβの下位ビットの出
力線β。〜β9に接続される8個の出力端子と、状I 
11011を与える4個の端子604を備えている。6
05はプログラムの命令語に応じて制御回路4から与え
られる制御信号S、、 S、に基づいて、スイッチ60
1,602゜603の邸動信号60A、60B、60C
を発生する論理回路である。
制御信号S、で選択すべきデ・−夕が指示されると、信
号60A、60Bによってスイッチ601゜602が動
作し、データP、Y、Dのいずれかが、選択される。こ
のとき、制御信号S、が浮動小数点演算を指示していれ
ば、スイッチ603は、出力線β。−β□を端子CI、
−C,に、出力線β4〜β。
を端子C,〜C1(入力データPが選択されている場合
)または端子604(入力データYまたはI)が選択さ
れている場合)に接続するよう動作する。
もし制御信号S2が固定小数点演算を指示していれば、
入力データに関係なく出力線β。〜β3が端子604に
、β4〜β7が端子C4〜C7に接続さ扛る。
第13図はもう1つの入力選択回路61の具体的な回路
構成を示す。この回路は、入力がAバスとXバスの2種
類となっている点を除いて第12図と同様であり、説明
は省略する。
第1−4図は、累算器16に接続されるスイッチ回路1
7の具体的な回路構成を示す。この回路において、累算
器からの20ビツトの出力60〜G工、はスイッチ17
1の入力端子に入力される。
スイッチ171は、データバス20の各信号線rj0〜
Di、iと接続された166個の出力端子を有し、入力
端子と出力端子との接続は論理回路】72の出力信号1
7A、17Bで制御される。プログラムの命令による制
御信号S3が浮動小数点演算を示す場合、スイッチ17
1は信号]−7Bに制御されて出力側の下位4ビツトの
信号線り。〜D、を入力信号線00〜G、と接続し、固
定小数点演算の場合にはり。−D、をG4〜G、に接続
する。信号17Aはデータバス20への上位ビットデー
タの出力を制御する。
本発明の適用された信号処理プロセッサによれば、上述
した固定小数点データあるいは浮動小数点データの演算
を行なえるだけでなく、浮動小数点形式で得られた演算
結果をプログラムの命令により固定小数点形式のデータ
に変換したり、その逆に固定小数点形式で与えられたデ
ータを浮動小数点形式のデータに変換して演算を行なう
こともできる。この機能は、信号処理プロセッサがデー
タバス20と入力インタフェース30〜33を介して外
部装置とデータをやりとりする際に極めて好都合である
。何列なら、信号処理プロセッサと接続される外部装置
の多くは固定ホ数点表示形式でデータを扱っており、も
し上記信号処理プロセッサの浮動小数点演算結果がその
まま出力されるとすれば、プロセッサの外部にデータ形
式を変換するための特殊な装置を必要とすることになる
からである。
浮動小数点表示から固定小数点表示への変換(以下、F
LFXと言う)は次のようにして行なわれる。
先ず、累算器16に得られる浮動小数点表示のデータを としたとき、指数部がαEくβEの関係を満足し。
をデータメモリ5あるいは6の特定のアト17スに格納
しておくにのアドレスはFLFXの命令語のアドト入部
と対応させておく。また、この命令語を実行したとき、
選択回路8が丘記メモリから読゛出されたデータy1を
Yバス22に出力し、選択回路60が」−記Yバスから
の入力を選択し1選択回、路G】がAバス27からの入
力を選択し、選択回路82が入力データF (= rO
J )を選択し。
出力スイッチ17が入力信号64〜G1.をデータバス
20に接続動作するよう、各種制御信号を発生させる。
このようにしておくと、FI、FXの命令を実行した時
2つの浮動小数点データAとy、との間で演算が行なわ
れ、累算器16には。
= 〔0+α阿・ 2       J ・2A=αH
・ 2 敷部の基準値として正規化してあり、データバスり扱う
ことができる。
通常、内部演算結果Aに対してβ[の最適値を正確に知
ることはできないので、βEの値は若干大きめに選んで
おく方がよい。しかし、βBの値をあまり大きくすると
、固定小数デ・−夕の精度が低くなることに注意する必
要がある。上記FLFXの実行の際、予めメモリに格納
された変換用データy、の指数部βEよりも演算結果Z
の指数部αEの方が大きくなった場合は、式(6)の仮
数部オーバーフローを生ずる。この場合、前述した出力
補正回路80の動作によって、固定小数点データの絶対
値を正あるいは負の最大値に固定させることができる。
一方、外部から与えられた固定小数点表示のデータを内
部で浮動小数点表示のデータに変換する動作は次のよう
にして行なえる。先ず、入力レジスタ31に入力された
固定小数点データを累算器16に転送する命令を実行す
る。この命令では、データバス20を介して選択回路6
0に与えられた16ビツトの固定小数点表示データDを
、上記選択回路60の動作により仮数部βMにビット位
置変換し、選択回路67、シフト回1669.ラッチ回
路72.加算器75.シフト回路76、補正回路87を
介して累算器16の仮数部16Mに入力させる。この場
合、シフト回路69.76、加算器75はそれぞれ入力
データを素通りさせるよう制御される。
次に固定小数点表示から浮動小数点表示に変換(以下、
FXFLと言う)する命令を実行する。
この命令実行時には1選択回路61はAバス27から与
えられる累算器出力、すなわち上記した固定小数点デー
タAを出力αh、αEとして選択する。
また1選択回路60は、FXFL命令のアドレス部で指
定されてメモリ5あるいは6からXバス26に読出され
る変換用データy2を出力βバ。
βEとして選択する。この変換用データy2は1例えば
仮数部βHが零であり指数部βEが値[+7=−8]の
範囲から選定されて成る基準値を持っている。他の命令
実行時と異なり、FXFL命令実行時には選択回路62
が入力βEを選択するよう制御信号S、を発生させ、比
較回路63の2つの入力を共にβビとする。この場合板
数部の選択回路67は入力αにを、選択回168は入力
βHを選択させる。また、制御信号S1により選択回路
70に入力データE= ro」を選択させ、右方向のシ
フト回路69のデータシフト動作を抑える6上記制御動
作により、ラッチ回路71,72゜73の出力はγ=β
E、 a^=αM、 eo==oとなる。
データe^と0口は加算器75に入力されその加算結果
UN(=CH)は零検出回路79と左方向のシフト回路
76の動作のもとに小数点位置が01ビツト移動し、結
果として で表わ3れる。デ〜・・夕が累算器1〔己7.得られる
この式は、固定小数点表示のデータA=αバが指数βE
を基準に正規化され、浮動小数点表示されたことを意味
している。従って、命令F X F Lで累算器16に
得られた上記データを用いれば、以後の演算を浮動小数
点形式で行なうことができる。
尚、この実施例では入力レジスタ31のデータ談−旦累
算器16にセットした後、FXFL命令を実行したが、
固定小数点の入力データと変換用データy2をXバス2
5とDバス20を利用して加減算器15に入力すること
により、1つの命令で浮動小数点表示へのデータ変換を
行なえるよう設計することもできる。
本発明の適用されたディジタル信号処理プロセッサは上
述したように固定小数点、浮動小数点の画形式のデータ
を取扱え、しかも浮動小数点表示データの正規化の際に
指数部にアンダフローを生じた時、指数値を最小値に固
定した正規化操作が行なえるため、内部演算データの数
値が大きい場合には浮動小数点演算形式、小さい場合は
固定小数点演算形式に自動的に演算方式を切り換えるこ
とができ、極めて広いダイナミックレンジを得ることが
できる。
すなわち、実施例装置の如く加減算器の内部データが仮
数部16ビツト、指数部4ピッ1−からなる場合、2つ
の補数表示で指数部γ〔+7〜−8〕の範囲の数値を取
り扱える。全ての演算を浮動小数点形式で処理すると、
ダイナミックレンジは第15図に斜線を施こして示した
2−1′〜27となり。
これはビット数に換算すると15ピッ1−分に相当する
2本発明によれば、演算データの仮数部に対する正規化
ビジト数Oが(γ−0)<−8の範囲にあるとき、正規
化後の指数LEを−8に固定することによって、固定小
数点演算に切換れるようになっている。このため、第1
5図に示す如く、ダイナミックレンジは全体で31ビツ
トとなり、固定、浮動の一方のみを用いる場合に比較し
て取り扱える数値の範囲が著しく広がる。
ディジタル信号処理プロセッサの実際の応用においては
、例えば次式で示す如く、m回の積和演算を繰り返して
実行する場合が多い。
T= Σ  a i X b i         ・
・18)このような演算の場合、本発明の適用されたプ
ロセッサによれば、乗算と加減算動作を並列的に進行さ
せるパイプライン制御によって、データ処理効率を向上
させ、変速度での演算が可能となる。
第16図は並列動作の15例を示すタイムチャートであ
り命令サイクル201で先行フェッチされた命令Aによ
り、次のサイクル202でデータメモリからデータを読
出し、乗算器により演算を行なう。命令サイクル203
では乗算結果と累算器のデータ(Aバス出力)との加減
算が実行され、演算結果はサイクル204で累算器に出
力されるにれら、4°つのステップの動作は1ステツプ
ずつずれて各命令サイクルで繰り返され、所定回数mの
積和演算が完了したどき、命令Fにより演算結果Tがデ
ータバス20に出力され、データメモリ5あるいは外部
回路に送られる。
上記パイプライン制御によるプロセッサの並列動作は乗
算器14と加減算器15とを並列的に接続したこと5乗
算と加減算の各動作所要時間がバランスする位置にデー
タを1時的に保持するレジスタ(第4図ではラッチ回路
7]〜72がこれに相当する)を配置したことにより可
能となっている。
第17図は」二記ディジタル信号処理プロセッサの応用
例を示す。ここでは、プロセッサ100をA/D変換器
300とD/A変換器301を介してアナログ回線に接
続し、ディジタルフィルタとして機能させる場合を示し
ている。
第18図は、ディジタル信号処理プロセッサ10oを他
のデータ処理装置101、例えば(株)日立製作所のマ
イクロコンピュータMC36800と組み合せ、端子り
。〜D7を介してデータの授受を行ない、データの処理
を2つの装置で分担できるようにしたシステム構成を示
す。このシステム構成は信号処理プロセッサ100を通
信回線のモデム、あるいはエコーキャンセラー等に適用
する場合に適している。
【図面の簡単な説明】
第1図は本発明の適用されたディジタル信号処理プロセ
ッサの全体構成の1例を示すブロック図、第2図は乗算
器14の詳細な構成を示す図、第3図(A)、(B)は
それぞれ入力データと加減算器15の内部演算データの
ビット形式を説明するためめ図、第4図(A)と(B)
は本発明の実施例の加減算器J5の詳細な構成を示す図
、第5図(A)、(B)および第6図(A)、(B)は
シフト回176の動作を説明するための図、第7図はシ
フト回路76の1実施例を示す回路図、第8図(A)、
(B)はデータオーバーフローについての説明図、第9
図は出力補正回路の1部要素85゜87.89の具体的
な回路構成を示す図、第10図(A)〜(D)は上記信
号処理プロセッサ各部における浮動小数点データの変化
の様子を示す図、第11図(A)〜(D)は固定小数点
データの変化の様子を示す図、第12図は入力選択回路
60の具体的な回路構成を示す図、第1−3図は入力;
1択回路61の具体的な回路構成を示す図、第14図は
出力スイッチ回路17の具体的な回路構成を示す図、第
15図は本発明の適用されたディジタル信号処理プロセ
ッサのダイナミックレンジを示す図、第16図は上記プ
ロセッサの動作の特徴を説明するためのタイムチャート
、第17図および第18図はそれぞれ上記信号処理プロ
セッサの代表的な使用形態をを示す図である。 沸2(2) 茅 図 第4図<4) 第 図 CB) 鴇 図 第 図 +)口0000 / /−E口〜eθ 第 g 図 ブーハーフローのン鼾正の1fいA=ン! J4.fl;7!り オ!lnン菫□)1【牧すシ瓦し回者′kIθ ll 第 図 タイプミツ7レレシ”

Claims (1)

  1. 【特許請求の範囲】 1、2つの浮動小数点データの加算または減算を行なう
    加減算装置であって、 第1および第2の浮動小数点データからなる第1のデー
    タ対と、固定小数点データおよび第3の浮動小数点デー
    タからなる第2のデータ対とを択一的に選択する手段と
    、 上記第1のデータ対の2つのデータの加減算を行なう手
    段と、 上記固定小数点データを浮動小数点データに変換する手
    段とを有し、 上記固定小数点データの浮動小数点データへの変換は、
    上記第3の浮動小数点データに応答して行なわれること
    を特徴とする加減算装置。 2、上記第3の浮動小数点データはその仮数部の値が0
    であり、上記第3の浮動小数点データの指数部の値に応
    答して上記固定小数点データを正規化することにより浮
    動小数点データへの変換を行なうことを特徴とする特許
    請求の範囲第1項記載の加減算装置。
JP18737589A 1989-07-21 1989-07-21 加減算装置 Granted JPH02224021A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18737589A JPH02224021A (ja) 1989-07-21 1989-07-21 加減算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18737589A JPH02224021A (ja) 1989-07-21 1989-07-21 加減算装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP62024590A Division JPS6312025A (ja) 1987-02-06 1987-02-06 加減算装置

Publications (2)

Publication Number Publication Date
JPH02224021A true JPH02224021A (ja) 1990-09-06
JPH0357488B2 JPH0357488B2 (ja) 1991-09-02

Family

ID=16204911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18737589A Granted JPH02224021A (ja) 1989-07-21 1989-07-21 加減算装置

Country Status (1)

Country Link
JP (1) JPH02224021A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055648A (en) * 1997-06-03 2000-04-25 Justsystem Corp. Method and apparatus for recovering the computing error, and a computer-readable recording medium for storing the program for executing the method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055648A (en) * 1997-06-03 2000-04-25 Justsystem Corp. Method and apparatus for recovering the computing error, and a computer-readable recording medium for storing the program for executing the method

Also Published As

Publication number Publication date
JPH0357488B2 (ja) 1991-09-02

Similar Documents

Publication Publication Date Title
JPS6242296B2 (ja)
JPH05134851A (ja) 乗算回路出力方式
JPH02224021A (ja) 加減算装置
JPS6319894B2 (ja)
JPH03135627A (ja) ファジイ演算装置
JPH0353650B2 (ja)
JPS6312025A (ja) 加減算装置
JPH0357487B2 (ja)
JPH0357486B2 (ja)
JP2001100979A (ja) 符号付き整数乗算方法及び装置
JPS60167551A (ja) 信号処理プロセツサによるデ−タモデム
JP2003101415A (ja) データ変換装置、データ生成装置、データ変換プログラム及びデータ生成プログラム、並びにデータ変換方法及びデータ生成方法
JPS5932038A (ja) 浮動小数点加算器
JPH0291724A (ja) 演算装置
Hochgesang et al. The attached processor for speech
JPS63254525A (ja) 除算装置
JP2756175B2 (ja) デュアルプロセッサ構成dspの符号付与方法
JPH01232430A (ja) 演算回路
JP2968718B2 (ja) 演算装置
JPH0460831A (ja) データ処理装置
WO1996027831A1 (en) Floating point conversion circuit
JPH01240961A (ja) Dma転送方式
JPS60245046A (ja) ロジカルシフト演算回路
JPS63276121A (ja) 固定浮動デ−タ変換回路
JPS60536A (ja) フロ−テイング加算器仮数部入力制御回路