JPH07225673A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH07225673A
JPH07225673A JP6017184A JP1718494A JPH07225673A JP H07225673 A JPH07225673 A JP H07225673A JP 6017184 A JP6017184 A JP 6017184A JP 1718494 A JP1718494 A JP 1718494A JP H07225673 A JPH07225673 A JP H07225673A
Authority
JP
Japan
Prior art keywords
arithmetic
data
register
bit
negative
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
JP6017184A
Other languages
English (en)
Inventor
Hidetoshi Suzuki
秀俊 鈴木
Toshihiro Ishikawa
利広 石川
Yukihiro Fujimoto
幸広 藤本
Tomoaki Minamida
智昭 南田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP6017184A priority Critical patent/JPH07225673A/ja
Priority to US08/382,576 priority patent/US5517439A/en
Priority to GB9502358A priority patent/GB2286471B/en
Priority to DE19504864A priority patent/DE19504864C2/de
Publication of JPH07225673A publication Critical patent/JPH07225673A/ja
Pending legal-status Critical Current

Links

Classifications

    • Y02B60/50

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【目的】 DSPを用いて除算を行う際に、付加するハ
ードウェアの量を減らし、効率良く演算する。 【構成】 一つ前に行った演算結果の正負を示す信号に
より加算を行うか減算を行うか制御することができるn
ビットの算術論理演算回路4を備える。算術論理演算回
路4の出力データを一時記憶するnビットのレジスタ2
を備える。算術論理演算回路4に除数を出力するnビッ
トのレジスタ1を備える。算術論理演算回路4の演算結
果の正負を示す信号を順次格納するn段のシフトレジス
タ5を備える。レジスタ2のデータを1ビット左シフト
し、最下位ビットにシフトレジスタ5の最上位ビットの
データを挿入して算術論理演算回路4に出力するシフタ
3を備える。従来、2nのビット長を持つシフタをnビ
ット長を持つシフタ3と、nのビット長を持つシフトレ
ジスタ5とに置き換えることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、除算を行うディジタル
信号処理プロセッサ内部の演算装置に関するものであ
る。
【0002】
【従来の技術】近年、ディジタル信号処理プロセッサ
(以下、DSPと略称する)は、移動体通信分野へのデ
ィジタルシステム導入の動きに合わせて、携帯電話など
への機器組込み用途のプロセッサとして注目されてい
る。
【0003】このようなディジタル移動体通信において
は、DSPには電池での利用に際し、動作時間を長くす
るために消費電力が少ないことと、音声コーデックなど
の複雑なアプリケーションプログラムを実行するための
処理能力の向上とが要求される。また、低価格も要求さ
れる。
【0004】DSPでは、引き放し法を用いて除算を実
行することがある(例えば、DSP56116 Dig
ital Signal Processor Use
r′s Manual MOTOROLA INC,1
990)。以下、引き放し法で、所定の複数ビットであ
るnビットのデータをnビットのデータで除算する演算
装置の一例において図3に示す概略ブロック図を参照し
ながら説明する。
【0005】図3において、101はnビットの長さを
持つレジスタであり、除数を保持している。102は2
nビット長を持つレジスタであり、上位のnビットには
0を保持し、下位のnビットには被除数を保持してい
る。103はレジスタ102のデータを1ビット左シフ
トするシフタであり、最下位ビットには最初0が挿入さ
れ、以降、演算結果の正負の信号を反転させたものが挿
入され、また、上位nビットを後述する算術論理演算回
路104に出力し、下位nビットをレジスタ102の下
位に出力する。104はレジスタ101およびシフタ1
03に接続し、nビット長を持ち、レジスタ102の正
負を示す信号に従って加算、若しくは減算を行い、演算
結果をレジスタ102の上位nビットに出力する算術論
理演算回路である。
【0006】以上のように構成された演算装置につい
て、以下、その除算動作と共に更に詳細に説明する。
【0007】まず、算術論理演算回路104がレジスタ
102の保持するデータの正負を判定する。次に、レジ
スタ102の保持するデータをシフタ103で1ビット
左にシフトする。このとき、最下位ビットには最初0が
挿入され、以降、演算結果の正負の信号を反転させたも
のが挿入される。シフト結果の上位nビットは算術論理
演算回路104に出力する。シフト結果の下位nビット
はレジスタ102に出力する。次に、上記のように判定
したレジスタ102の値が負であれば、レジスタ101
の値とシフタ103の出力とを算術論理演算回路104
で加算する。上記のように判定したレジスタ102の値
が非負であれば、レジスタ101の値のシフタ103の
出力とを算術論理演算回路104で減算する。上記動作
を(n−1)回繰り返し、最後にレジスタ102の正負
を判定し、負の場合にはレジスタ102の最下位に0を
ヒットし、非負の場合には1をセットする。この結果、
商はレジスタ102の下位nビットに収められる。
【0008】
【発明が解決しようとする課題】しかしながら、上記従
来例の演算装置では、シフタ103として2nのビット
長が必要となり、また、シフタ103からレジスタ10
2へのパスが必要になるため、ハードウェアが大きくな
る。この大きなハードウェアは、DSPを高価にし、動
作する部分が多いので、消費電力が大きいという問題を
引き起こす。
【0009】また、算術論理演算回路104で加算を行
うか減算を行うのかをレジスタ102の保持するデータ
の正負を示す信号により制御するので、制御が複雑であ
る。この複雑な制御を実現するためには大きなハードウ
ェアを要し、大きなハードウェアは、DSPを高価に
し、動作する部分が多いので、消費電力が大きいという
問題を引き起こす。
【0010】本発明は、上記従来の問題を解決するもの
であり、少ないハードウェアで引き放し法の除算を実行
することができ、したがって、低コストで、低消費電力
の演算装置を提供することを目的とするものである。
【0011】
【課題を解決するための手段】上記目的を達成するため
の本発明の技術的手段は、一つ前に行った演算結果の正
負を示す信号により加算を行うか減算を行うか制御する
ことができ、所定の複数ビットであるnビットの算術演
算手段と、この算術演算手段の出力データを一時記憶す
る第1の記憶手段と、上記算術演算手段に演算データを
出力するnビットの第2の記憶手段と、上記算術演算手
段の演算結果の正負を示す信号を順次格納するn段のシ
フトレジスタと、上記第1の記憶手段のデータを1ビッ
ト左シフトし、最下位ビットに上記シフトレジスタの最
上位ビットのデータを挿入して上記算術演算手段に出力
するシフタとを備えたものである。
【0012】上記目的を達成するための本発明の他の技
術的手段は、所定の複数ビットであるnビットの加算を
行う算術演算手段と、この算術演算手段の出力データを
一時記憶する第1の記憶手段と、演算データを格納する
第2および第3の記憶手段と、上記算術演算手段の演算
結果の正負を示す信号によって上記第2および第3の記
憶手段のいずれかのデータを選択して上記算術演算手段
の入力に出力する選択手段と、上記算術演算手段の演算
結果の正負を示す信号を順次格納するシフトレジスタ
と、上記第1の記憶手段のデータを1ビット左シフト
し、最下位ビットに上記シフトジレスタの最上位ビット
のデータを挿入して上記算術演算手段に出力するシフタ
とを備えたものである。
【0013】そして、上記各技術的手段において、記憶
手段としてレジスタを用い、選択手段としてマルチプレ
クサを用いることができる。
【0014】
【作用】したがって、本発明によれば、シフトレジスタ
が算術演算手段から出力する正負のデータを順に記憶
し、最上位ビットのデータをシフタの最下位のビットに
挿入するので、従来、2nのビット長を持つシフタをn
のビット長を持つシフタと、nのビット長を持つシフト
レジスタとに置き換えることができる。これによりシフ
タの大きさを小さくし、シフタから第1の記憶手段への
パスをなくすことができる。
【0015】また、第2と第3の二つの記憶手段の片側
に除数を格納し、残り側に除数の2の補数を格納するの
で、算術演算手段は常に加算のみを行い、供給するデー
タを選択手段が演算結果の正負を示す符号により選択す
る。これにより算術演算手段は常に同一の動作となり、
制御が容易となる。
【0016】
【実施例】
(実施例1)以下、本発明の第1の実施例について図面
を参照しながら説明する。
【0017】図1は本発明の第1の実施例における演算
装置を示す概略ブロック図である。図1において、1は
nのビット長を持ち、後述する算術論理演算回路4に接
続するレジスタであり、除数を保持している。2はnの
ビット長を持ち、後述する算術論理演算回路4の出力を
入力とし、後述するシフタ3に接続するレジスタであ
り、最初に0を保持している。3はレジスタ2のデータ
を1ビット左シフトし、後述するシフトレジスタ5の第
n段目のデータを最下位ビットに挿入するシフタであ
る。4はnのビット長を持つ算術論理演算回路であり、
レジスタ2のデータが負であれば加算を行い、非負であ
れば減算を行い、演算結果をレジスタ2に格納する。ま
た、演算結果の正負を示す信号を後述するシフトレジス
タ5に入力する。演算結果の正負を示す信号は、次命令
が加算を行うか減算を行うか制御する信号となる。5は
nの段数を持つシフトレジスタであり、算術論理演算回
路4から出力される演算結果の正負を示す信号が入力さ
れ、第n段目がシフタ3と接続され、シフタ3が1ビッ
ト左シフトを実行したときには最下位ビットにデータを
挿入するようになっている。このシフトレジスタ5は最
初に被除数を保持している。
【0018】以上のように構成された演算装置につい
て、以下、その除算動作と共に更に詳細に説明する。
【0019】(1)まず、レジスタ2から供給されたデ
ータを1ビット左にシフトすると、最下位のビットには
シフトレジスタ5の最下位ビットの値が挿入される。
【0020】ここで、レジスタ2には最初0が格納され
ていて、1ビット左シフトし、最下位ビットにシフトレ
ジスタ5の最上位ビットが挿入されている状態であるの
で、必ず非負である。
【0021】(2)次に、レジスタ1の値とシフタ3の
出力とを算術論理演算回路4で減算する。
【0022】(3)次に、上記(2)の演算結果が非負
であれば、シフトレジスタ5は1、つまり、サインビッ
トの反転したものを入れてシフトする。一方、上記
(2)の演算結果が負であれば、シフトレジスタ5は
0、つまり、サインビットの反転したものを入れてシフ
トする。
【0023】(4)次に、シフタ3がレジスタ2から供
給されたデータを1ビット左にシフトすると、最下位の
ビットにはシフトレジスタ5の最上位ビットの値が挿入
される。
【0024】(5)次に、一つの前の演算結果が非負で
あれば、レジスタ5の値とシフタ3の出力とを算術論理
演算回路4で減算する。一方、一つ前の演算結果が負で
あれば、レジスタ5の値とシフタ3の出力とを算術論理
演算回路4で加算する。この加算結果はとレジスタ2は
保存する。
【0025】(6)次に、上記(5)の演算結果が非負
であれば、シフトレジスタは1、つまり、サインビット
の反転したものを入れてシフトする。一方、上記(5)
の演算結果が負であれば、シフトレジスタは0、つま
り、サインビットの反転したものを入れてシフトする。
【0026】(7)上記(4)、(5)、(6)の動作
を(n−2)回繰り返す。 (8)最後に、算術論理演算回路4はレジスタ2の正負
を判定し、負の場合にはレジスタ2の最下位に0をセッ
トし、非負の場合には1をセットする。
【0027】以上のようにして、除算を実行することが
でき、商はシフトレジスタ5に納められる。
【0028】従来例では除数・被除数のデータビット長
の2倍のビット長を持つシフタを要していたが、本実施
例によれば、除数・被除数のデータビット長のシフタ3
で済むようになり、また、シフタ3からレジスタ2への
直接のパスをなくすことができる。
【0029】(実施例2)以下、本発明の第2の実施例
について図面を参照しながら説明する。
【0030】図2は本発明の第2の実施例における演算
装置を示す概略ブロック図である。本実施例において
は、図2に示すように、レジスタ1とレジスタ6の出力
をレジスタ2の正負の判定結果に従って選択するマルチ
プレクサ7を備えている点に特徴を有する。
【0031】上記第1の実施例では、一つ前の演算の正
負を判定し、その判定結果に従って算術論理演算回路4
で加算、若しくは減算を行っている。本実施例において
は、初めに、レジスタ1に除数、レジスタ6には除数2
の補数をとったものを格納する。そして、一つ前の演算
の正負に従って選択するマルチプレクサ7を制御するこ
とで、算術論理演算回路4では常に加算を実行する点が
異なる。
【0032】その他の部分については上記第1の実施例
と同様であるので、同一部分には同一符号を付してその
説明を省略する。
【0033】以上の構成において、以下、上記第1の実
施例と異なる動作について説明する。
【0034】上記(5)のステップで、前回の演算結果
が負であれば、マルチプレクサ7は、除数を保持するレ
ジスタ1を選択して出力させ、算術論理演算回路4はレ
ジスタ1の値とシフタ3の出力とを加算する。一方、上
記(5)のステップで、前回の演算結果が非負であれ
ば、マルチプレクサ7は、除数の2の補数を保持したレ
ジスタ6を選択して出力させ、算術論理演算回路4はレ
ジスタ6の値とシフタ3の出力とを加算する(つまり減
算を行うことを相当する。)。
【0035】本実施例においては、算術論理演算回路4
は常に加算を行うので、ハードウェアの構成が容易とな
る。
【0036】
【発明の効果】以上説明したように本発明によれば、シ
フタのサイズを小さくし、シフタからレジスタへの直接
のパスをなくすことができる。したがって、小さなハー
ドウェアで除算を行うことができる。これにより動作部
分が小さくなり、消費電力を減らすことができる。
【0037】また、算術演算手段が常に加算するように
すれば、制御回路を簡易にすることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例における演算装置を示す
概略ブロック図
【図2】本発明の第2の実施例における演算装置を示す
概略ブロック図
【図3】従来の演算装置を示す概略ブロック図
【符号の説明】
1 レジスタ 2 レジスタ 3 シフタ 4 算術論理演算回路 5 シフトレジスタ 6 レジスタ 7 マルチプレクサ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 南田 智昭 石川県金沢市彦三町二丁目1番45号 株式 会社松下通信金沢研究所内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 一つ前に行った演算結果の正負を示す信
    号により加算を行うか減算を行うか制御することがで
    き、所定の複数ビットであるnビットの算術演算手段
    と、この算術演算手段の出力データを一時記憶する第1
    の記憶手段と、上記算術演算手段に演算データを出力す
    るnビットの第2の記憶手段と、上記算術演算手段の演
    算結果の正負を示す信号を順次格納するn段のシフトレ
    ジスタと、上記第1の記憶手段のデータを1ビット左シ
    フトし、最下位ビットに上記シフトレジスタの最上位ビ
    ットのデータを挿入して上記算術演算手段に出力するシ
    フタとを備えた演算装置。
  2. 【請求項2】 所定の複数ビットであるnビットの加算
    を行う算術演算手段と、この算術演算手段の出力データ
    を一時記憶する第1の記憶手段と、演算データを格納す
    る第2および第3の記憶手段と、上記算術演算手段の演
    算結果の正負を示す信号によって上記第2および第3の
    記憶手段のいずれかのデータを選択して上記算術演算手
    段の入力に出力する選択手段と、上記算術演算手段の演
    算結果の正負を示す信号を順次格納するシフトレジスタ
    と、上記第1の記憶手段のデータを1ビット左シフト
    し、最下位ビットに上記シフトジレスタの最上位ビット
    のデータを挿入して上記算術演算手段に出力するシフタ
    とを備えた演算装置。
JP6017184A 1994-02-14 1994-02-14 演算装置 Pending JPH07225673A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP6017184A JPH07225673A (ja) 1994-02-14 1994-02-14 演算装置
US08/382,576 US5517439A (en) 1994-02-14 1995-02-02 Arithmetic unit for executing division
GB9502358A GB2286471B (en) 1994-02-14 1995-02-07 Arithmetic unit for executing division
DE19504864A DE19504864C2 (de) 1994-02-14 1995-02-14 Rechenwerk zum Ausführen einer Division

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6017184A JPH07225673A (ja) 1994-02-14 1994-02-14 演算装置

Publications (1)

Publication Number Publication Date
JPH07225673A true JPH07225673A (ja) 1995-08-22

Family

ID=11936866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6017184A Pending JPH07225673A (ja) 1994-02-14 1994-02-14 演算装置

Country Status (1)

Country Link
JP (1) JPH07225673A (ja)

Similar Documents

Publication Publication Date Title
US7159100B2 (en) Method for providing extended precision in SIMD vector arithmetic operations
US5542074A (en) Parallel processor system with highly flexible local control capability, including selective inversion of instruction signal and control of bit shift amount
EP0754998A1 (en) An arithmetic unit
US5517439A (en) Arithmetic unit for executing division
JPH07168753A (ja) モジュロ加算回路およびその動作方法
JP3683773B2 (ja) Simd演算を実行するために標準macユニットを利用する浮動小数点ユニット
US6038675A (en) Data processing circuit
US6282558B1 (en) Data processing system and register file
JPH11327875A (ja) 演算回路
JPH07225673A (ja) 演算装置
US7028163B2 (en) Apparatus for controlling multi-word stack operations using a multi-bank stack in digital data processors
US6725360B1 (en) Selectively processing different size data in multiplier and ALU paths in parallel
JPH10503311A (ja) ガロアフィールド多項式乗算/除算回路およびそれを組込むディジタル信号プロセッサ
JP2003241960A (ja) プロセッサ、該プロセッサにおける演算命令処理方法及び演算制御方法
JP3454393B2 (ja) データ処理装置
EP1237070A2 (en) Denormalization circuit
US6792442B1 (en) Signal processor and product-sum operating device for use therein with rounding function
JP2575969B2 (ja) 浮動小数点乗除算装置
JP3250363B2 (ja) 演算装置
JP5464770B2 (ja) 1クロック・サイクル中にメモリ・コアを複数回アクセスする方法と装置
JP2003330914A (ja) ベクトル演算処理装置、ベクトル演算方法およびベクトル演算プログラム
JP2003005952A (ja) 情報処理装置、レジスタ
JP2002182905A (ja) ディジタル信号処理プロセッサ
JP2001134438A (ja) 消費電力を低減したアドレス生成回路
JPH0695854A (ja) 除算演算装置