JPH01232429A - 乗算結果丸め方式 - Google Patents

乗算結果丸め方式

Info

Publication number
JPH01232429A
JPH01232429A JP63057382A JP5738288A JPH01232429A JP H01232429 A JPH01232429 A JP H01232429A JP 63057382 A JP63057382 A JP 63057382A JP 5738288 A JP5738288 A JP 5738288A JP H01232429 A JPH01232429 A JP H01232429A
Authority
JP
Japan
Prior art keywords
register
data
input
multiplication result
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
JP63057382A
Other languages
English (en)
Inventor
Yasuhiko Teranishi
康彦 寺西
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP63057382A priority Critical patent/JPH01232429A/ja
Publication of JPH01232429A publication Critical patent/JPH01232429A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は乗算結果丸め方式に関するもので、特にデジタ
ル・シグナル・プロセッサの演算回路に適用して効果あ
る乗算結果丸め方式に関するものである。
(従来の技術) デジタル・シグナル・プロセッサは、デジタル・フィル
タに代表されるデジタル信号処理を効率良く行なえるよ
うに2乗算器を内蔵することを特徴とするプロセッサで
ある。
第3図はこのデジタル・シグナル・プロセッサの一例の
ブロック図を示したものである。第3図で2は命令メモ
リで、そのアドレスは、ゾログラム・カウンタ1の発生
するデータによって決定され、前記命令メモリ2から読
み出される命令によって動作が制御される。
第3図のデジタル・シグナル・プロセラサラ用いて乗算
、及び加算を中心とするデジタル信号処理を行なう場合
の動作は次のようになる。データ・メモリ・ポインタ3
によりアドレス指定されるデータ・メモリ4の内容が内
部パス5に読み出され。
乗算器7の乗数入力レジスタ6に転送される。次に1係
数メモリ・ポインタ8によりアドレス指定される係数メ
モリ9の内容が内部パス5に読み出され2乗算器7の被
乗数入力レジスタ1oに転送される。
次のタイミングで乗算器7で乗算が行われて。
乗算結果が乗算結果レジスタIIに格納される。
乗算結果レジスタ11の内容は、内部パス5をへて、算
術演算器12に転送される。算術演算器12では内部パ
スから入力するデータと累算レジスタ13のデータとを
加算して、再び累算レジスタ13に格納する。以上のよ
うな動作を必要な回数だけ繰り返した後で、累算レジス
タ13の内容は、内部ノぐス5をへて、出力レジスタ1
4に転送されて、デジタル・シグナル・プロセッサの外
部に出力される。また外部からのデータは入力レジスタ
15に入力し、この入力レジスタ15から。
内部パス5をへて、データ・メモリ4に転送される。
(発明の解決しようとする課題) このようなデジタル・シグナル・プロセッサにおいては
、特に乗算結果のビット数の処理が問題となることが多
い。すなわち2乗数データのビット数をm(≧1の正整
数)、被乗数データのビット数をn(≧1の正整数)と
すると1乗算結果のビット数はm 十nとなる。ところ
が、デジタル・シグナル・プロセッサではハードウェア
規模を小さくしてコストを抑えるために、内部パス5や
算術演算器12.及び累算器13のビット数が乗数デー
タのビット数m、あるいは被乗数データのビット数nと
同一になっていることが多い。従って。
乗算結果のm + nビットはmビットあるいはnビッ
トに縮小されて、算術演算器12に転送される。
従来のデジタル・シグナル・プロセッサではこのビット
の縮小は切り捨てによって行なわれている。
デジタル・フィルタ演算をデジタル・シグナル・プロセ
ッサを用いて行なう場合には、この切り捨てによって発
生する誤差が2乗算結果に関わらず。
常に同符号であるために累積してしまい、その結果大き
な誤差出力となることが多い。一方2乗算結果をmビッ
トあるいはnビットに丸める場合には、誤差は同符号と
は限らず、誤差が累積して大きな誤差出力となることが
少ない。従って乗算結果を切シ捨てるよりも丸めること
が望ましいが。
従来のデジタル・シグナル・プロセッサでは乗算結果の
m −)−nビットがmビットあるいはnビットに切り
捨てられて算術演算器12に転送されるため、このよう
な丸めを行なうためには新たな演算が必要となる。
ところで、デジタル・フィルタ演算などでに。
その演算処理ができるだけ高速に行われる必要がある場
合が多い。高速に演算処理ができれば、単位時間あたり
に処理できるデジタル・フィルタの数が増える。あるい
は1個のデジタル・シグナル・プロセッサで処理できる
デジタル!フィルタの数が増るので、経済的に有利にな
る。
このように従来のデジタル・シグナル・プロセッサでは
、丸めを行なうために余分な演算が必要であシ、演算処
理の高速性がそこなわれてしまうという問題点がある。
本発明は従来のもののこのような問題点を解決しようと
するもので、新たな演算を必要とすることなく乗算結果
の丸めを行なうことができる演算結果丸め方式を提供す
るものである。
(課題を解決するための手段) 本発明の乗算結果丸め方式は乗算器と、該乗算器による
乗算結果の内上位の複数ビットを格納する第1のレジス
タと、下位の複数ビットの最上位を格納する第3のレジ
スタと、前記第1のレジスタの格納データを一方の入力
とする算術演算器と。
該算術演算器による演算結果を格納し該格納データを前
記算術演算器の他方の入力とする第2のし ゛ジスタと
、前記第3のレジスタの格納データを一方の入力とし制
仰信号を他方の入力とし前記第3のレジスタの格納デー
タと前記制御信号との論理演算結果を前記算術演算器の
桁上がり入力とする論理演算回路とを含んで構成されて
いる。
すなわち9本発明によれば1乗算結果のうち従来切シ捨
てられるビットの最上位ビットが算術演算器の桁あが多
信号として入力する。
乗算結果のうち従来切り捨てられるビットの最上位ビッ
トを算術演算器の桁あがシ入力端子に入力し、まだ第1
のレジスタに格納されているデータを算術演算器の一方
の入力に、第2のレジスタに格納されているデータを他
方の入力にそれぞれ入力し、算術演算器で加算すること
で、第1のレジスタに格納されている乗算結果が自動的
に丸められて、第2のレジスタに格納されているデータ
と加算されることになる。従って、新たに丸め演算を行
なう必要がなく、演算処理の高速性をそこなうことがな
い。
(実施例) 次に本発明と実施例について図面を参照しながら説明す
る。
第1図は本発明の一実施例のブロック回路図であり、第
3図に示したようなデジタル・シグナル・プロセッサの
一部を示したものである。第3図の回路ブロックと同一
のブロックについては同一の番号をつけている。
本実施例によれば2乗算結果は第1のレジスタ11に格
納されるとともに、従来、切シ捨てていた下位ビットの
うちの最上位ビットを、第3のレジスタ16に格納する
。格納終了以降のタイミングで、第1のレジスタ11の
データと第2のレジスタ13のデータとを加算する命令
■が命令メモリから読み出されると、アンド回路17が
有効になって、第3のレジスタ16のデータを算術演算
器12の桁あげ入力に入力する。この時、同時に。
第1のレジスタ11のデータと第2のレジスタ13のデ
ータとを加算する命令によって、第1のレジスタ11の
データが算術演算器12の一方の入力に、また第2のレ
ジスタ13のデータが他方の入力に入力し、算術演算器
12によって加算される。この時、第1のレジスタ11
のデータに着目すると、第1のレジスタ11のデータの
最乍位ビットに第3のレジスタ16のデータが加算きれ
て、第2のレジスタのデータに加算されることがわかる
このように、下位の切り捨てるデータの最上位ビットを
、上位の切如捨てられないデータの最下位ビットに加算
することで、データの丸めが行われる様子を表1に示す
表  1 表1では7ビツトの2の補数表示のデータを4ビツトに
丸める例を示している。すなわち、第1図のブロック図
の例で1乗算結果が7ビツト、乗算結果を格納するレジ
スタ11のビット幅が4ビツトの場合に相当する。表1
の例では、下位3ビツトの切り捨てるデータのうちの最
上位ビットである下位から3ビツト目を、上位4ビツト
の切シ捨てられないデータの最下位ビットである下位か
ら4ビツト目に加えることで丸めが行われている。
このように1本実施例では、第1のレジスタ11に格納
されている乗算結果が自動的に丸められて、第2のレジ
スタ13に格納されているデータと加算されることがわ
かる。従って、新だに丸め演算を行なう必要がなく、演
算処理の高速性をそこなうことがない。回路規模として
も小さく。
たとえばデジタル・シグナル・プロセラサラ14体集積
回路で実現する場合には、そのチップ面積の増加がわず
かですみ、コスト的にも有利である。
第2図は本発明の第2の実施例のブロック図である。こ
の場合も、第3図に示したようなデジタル・シグナル・
プロセッサの一部を示したものである。本実施例の場合
にはデータ、係数とも2の補数表示で表されているもの
とする。本実施例の場合も乗算結果が第1のレジスタ1
1に格納されるとともに、従来、切り捨てていた下位ビ
ットのうちの最上位ビットを第3のレジスタ16に格納
する。格納終了以降のタイミングで、第1のレジスタ1
1のデータと第2のレジスタ13のデータとを加算する
命令■が命令メモリから読み出されると、アンド回路1
8が有効になって第3のレジスタ16のデータが算術演
算器12の桁あげ入力に入力する。これによって1乗算
結果の丸めが行われることは第1の実施例と同様である
別の場合には、格納終了以降のタイミングで。
第2のレジスタ13のデータから第1のレジスタ11の
データを減算する命令■が読み出されることがある。こ
の場合には、アンド回路19が有効になって、第3のレ
ジスタ16のデータをインバータ17によって反転した
値が、算術演算器12の桁あげ入力に入力される。
本来、2の補数表示で表されたデータの減算は。
減算するデータを各ビット反転して、且つ桁あげ入力に
1を入力して、減算されるデータと加算することによっ
て行われる。減算するデータについて丸める必要がある
場合には2本実施例のように。
桁あげ入力に切シ捨てるデータの最上位ビラトラ反転し
て入力すればよい。この場合、切シ捨てる前のデータの
最下位ビット分の誤差が生じることがあるが、この誤差
は丸めを行なわない時の誤差に比べれば、切り捨てるビ
ット数の分だけ小さい。
更に、別の場合には、格納終了以降のタイミングで、第
2のレジスタ13のデータから第1のレジスタ11以外
のデータを減算する命令■が読み出される場合がある。
この場合には、上の場合のように、減算するデータにつ
いて丸める必要はないので2本来の2の補数表示で表さ
れたデータの減算を行なえば良い。従って、オア回路2
0は。
この命令が読み出された場合には1を出力すればよく、
この1が、算術演算器12の桁あげ入力に入力される。
以上のように本実施例では、第1のレジスタ11に格納
されている乗算結果が自動的に丸められて、第2のレジ
スタ13に格納されているデータと加算あるいは減算さ
れる。従って、新たに丸め演算を行なう必要がなく、演
算処理の高速性をそこなうことがない。
(発明の効果) 以上詳細に説明したように1本発明によれば乗算結果の
丸め処理を、新たに丸め演算を行なうことなく、算術演
算器における乗算結果の加算あるいは減算と同時に行な
うことができる。従って。
デジタル・フィルタ演算などの演算処理の高速性をそこ
なうことがない。このように高速に演算処理ができるた
め、単位時間あたシに処理できるデジタル・フィルタの
数が増えたシ、あるいは1個のデジタル・シグナル・プ
ロセッサで処理できるデジタル・フィルタの数が増える
ので、経済的に有利になる効果がある。また、この丸め
処理は少ない回路規模で実現できるため、デジタル・シ
グナル・プロセッサを半導体集積回路で実現する場合に
は、そのチップ面積の増加がわずかですみ。
その点でも経済的に有利である効果がある。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示すブロック回路図、
第2図は本発明の第2の実施例を示すブロック回路図、
第3図はデジタル・シグナル・ゾロセッサの一例のブロ
ック図を示す。 記号の説明=1・・・プログラム・カウンタ、2・・・
命令メモリ、3・・・データ・メモリ・ポインタ、4・
・・データ・メモリ、5・・・内部パス、6・・・乗数
入力レジスタ、7・・・乗算器、8・・・係数メモリ・
ポイン、り、9・・・係数メモリ、10・・・被乗数入
力レジスタ。 11・・・乗算結果レジスタ、12・・・算術演算器、
13・・・累算レジスタ、14・・・出力レジスタ、1
5・・・入力レジスタ、16・・・第3のレジスタ、1
7・・・アンド回路、18.19・・・アンド回路、2
0・・・オア回路。 第1図 第2図

Claims (1)

    【特許請求の範囲】
  1. 1、乗算器と、該乗算器による乗算結果の内上位の複数
    ビットを格納する第1のレジスタと、下位の複数ビット
    のうち最上位のビットを格納する第3のレジスタと、前
    記第1のレジスタの格納データを一方の入力とする算術
    演算器と、該算術演算器による演算結果を格納し該格納
    データを前記算術演算器の他方の入力とする第2のレジ
    スタと、前記第3のレジスタの格納データを一方の入力
    とし制御信号を他方の入力とし前記第3のレジスタの格
    納データと前記制御信号との論理演算結果を前記算術演
    算器の桁上がり入力とする論理演算回路を含むことを特
    徴とする乗算結果丸め方式。
JP63057382A 1988-03-12 1988-03-12 乗算結果丸め方式 Pending JPH01232429A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63057382A JPH01232429A (ja) 1988-03-12 1988-03-12 乗算結果丸め方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63057382A JPH01232429A (ja) 1988-03-12 1988-03-12 乗算結果丸め方式

Publications (1)

Publication Number Publication Date
JPH01232429A true JPH01232429A (ja) 1989-09-18

Family

ID=13054056

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63057382A Pending JPH01232429A (ja) 1988-03-12 1988-03-12 乗算結果丸め方式

Country Status (1)

Country Link
JP (1) JPH01232429A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04162131A (ja) * 1990-10-26 1992-06-05 Matsushita Electric Ind Co Ltd 計算装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04162131A (ja) * 1990-10-26 1992-06-05 Matsushita Electric Ind Co Ltd 計算装置

Similar Documents

Publication Publication Date Title
US6009451A (en) Method for generating barrel shifter result flags directly from input data
EP0136834A2 (en) A digital circuit performing an arithmetic operation with an overflow
US5457805A (en) Microcomputer enabling high speed execution of product-sum operation
KR960003044B1 (ko) 수치표현 변환장치 및 그것을 사용한 벡터ㆍ프로세서ㆍ유니트
US5363322A (en) Data processor with an integer multiplication function on a fractional multiplier
JPH01232429A (ja) 乗算結果丸め方式
EP0472030A2 (en) Method and apparatus for modifying two's complement multiplier to perform unsigned magnitude multiplication
JPH1091395A (ja) プロセッサ
US4723258A (en) Counter circuit
JP3579087B2 (ja) 演算器およびマイクロプロセッサ
JPS63111535A (ja) デ−タ処理装置
US20240069868A1 (en) Mac operator related to correcting a computational error
JP3435744B2 (ja) 乗算回路
JP2605792B2 (ja) 演算処理装置
US20190303102A1 (en) Output value generator circuit, processor, output value generation method and non-transitory computer readable medium
JP3139011B2 (ja) 固定小数点プロセッサ
JPS63254525A (ja) 除算装置
JP2002318792A (ja) データ演算処理装置及びデータ演算処理プログラム
JPH0133851B2 (ja)
JPS6129020B2 (ja)
JPS59198020A (ja) デイジタル信号処理装置
JPH0580978A (ja) 演算処理回路
JPH0764768A (ja) 絶対値累積加算装置
JPH06282414A (ja) 積和演算回路
JPH05143632A (ja) 積和演算器