JPH0667847A - 演算方法及び演算回路 - Google Patents

演算方法及び演算回路

Info

Publication number
JPH0667847A
JPH0667847A JP4221254A JP22125492A JPH0667847A JP H0667847 A JPH0667847 A JP H0667847A JP 4221254 A JP4221254 A JP 4221254A JP 22125492 A JP22125492 A JP 22125492A JP H0667847 A JPH0667847 A JP H0667847A
Authority
JP
Japan
Prior art keywords
shift
data
circuit
data bus
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
JP4221254A
Other languages
English (en)
Inventor
Shigeru Nakahara
茂 中原
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
Original Assignee
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 Ltd filed Critical Hitachi Ltd
Priority to JP4221254A priority Critical patent/JPH0667847A/ja
Publication of JPH0667847A publication Critical patent/JPH0667847A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 シフト動作の高速化と回路の簡素化を実現し
た演算方法及び演算回路を提供する。 【構成】 データバス1とデータバス2を介して入力さ
れたデータAとBをバレルシフタに入力してシフト量に
応じシフト動作を行わせるとともに、上記シフト動作と
並行してデータAとBをシフト量をもとにシフト量に対
応したデータを形成して算術論理演算回路に入力し、オ
ール1のデータと加算させ、この加算結果のオーバーフ
ローの有無によりバレルシフタによるシフト結果のオー
ル0を判定する。 【効果】 バレルシフタによるシフト動作ときに、それ
と同時に並行して行われる算術論理演算回路の加算動作
を行わせてシフト結果のオール0を判定できるので、バ
レルシフトに設けられるオール0を判定生成するフクグ
発生回路の削除と高速シフト演算ができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、演算方法及び演算回
路に関し、バレルシフタによるシフト演算を行う演算方
法及び演算回路に利用して有効な技術に関するものであ
る。
【0002】
【従来の技術】マイクロプロセッサに設けられる演算器
として、図4に示すような回路が用いられ、算術論理演
算回路ALU、バレルシフタを用いて算術論理演算やシ
フト演算が行われる。フクグ生成回路FLG1は算術論
理演算回路ALUの演算結果から、フラグ生成回路FL
G2はバレルシフタの演算結果から、それぞれオーバー
フローや演算結果オール0などのヘラグを生成して命令
制御部に送る。
【0003】
【発明が解決しようとする課題】本願発明者において
は、上記のようなマイクロプロセッサにおいては算術論
理演算動作とシフト動作とが同時に行われることが無い
ことに着目し、シフト動作の高速化と回路の簡素化を実
現することを考えた。
【0004】この発明の目的は、シフト動作の高速化と
回路の簡素化を実現した演算方法及び演算回路を提供す
ることにある。この発明の前記ならびにそのほかの目的
と新規な特徴は、本明細書の記述および添付図面から明
らかになるであろう。
【0005】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば、下
記の通りである。すなわち、データバス1とデータバス
2を介して入力されたデータAとBをバレルシフタに入
力してシフト量に応じシフト動作を行わせるとともに、
上記シフト動作と並行してデータAとBをシフト量をも
とにシフト量に対応したデータを形成して算術論理演算
回路に入力し、オール1のデータと加算させ、この加算
結果のオーバーフローの有無によりバレルシフタによる
シフト結果のオール0を判定する。
【0006】
【作用】上記した手段によれば、バレルシフタによるシ
フト動作ときに、それと同時に並行して行われる算術論
理演算回路の加算動作を行わせてシフト結果のオール0
を判定できるので、バレルシフトに設けられるオール0
を判定生成するフクグ発生回路の削除と高速シフト演算
ができる。
【0007】
【実施例】図1には、この発明に係る演算回路の一実施
例のブロック図が示されている。データバス1(DBU
S1)とデータバス2(DBUS2)のデータは、レジ
スタファイルから読み出され、セレクタ1とセレクタ2
を通して算術演算論理回路ALUに入力される。この算
術論理演算回路ALUにより算術・論理の演算結果は、
ライトバスWBUSに伝えられる。このライトバスWB
USのデータは、上記レジスタファイルに書き込まれ
る。
【0008】上記演算結果がオーバーフローを起こした
ときや、全ビットが0といういわゆるオール0のとき
は、ALU用フラグ発生回路FLGがこれを判別して、
命令制御部へフラグを出力する。
【0009】バレルシフタは、上記データバスDBUS
1とSBUS2を通してレジスタフェイルから読み出さ
れたデータを合成し、シフト信号によりシフトさせてラ
イトバスWBUSに送出する。この実施例においては、
このシフト動作において、算術論理演算回路ALUが何
も動作をしていないことに着目し、この算術論理演算回
路ALUを利用してシフト結果のオール0の判定動作を
行わせるようにするものである。この構成により、回路
の簡素化と高速動作化が可能になる。すなわち、バレル
シフタによるシフト動作と並行して算術論理演算回路A
LUによるオール0の判定が行われるから、オール0の
判定結果を高速に得ることができる。
【0010】上記のように算術論理演算回路ALUを用
いてオール0の判定を行わせるために、次の回路が付加
される。データバスDBUS1とDBUS2がそれぞれ
16ビットからなるデータであるとき、シフト信号は5
ビットから構成される。この5ビットからなるシフト信
号は、論理回路により32ビットからなるセレクトデー
タに変換される。
【0011】図2に、上記セレクトデータを形成方法を
説明するためのフローチャート図が示されている。5ビ
ットからなるシフト信号は、デコーダ回路によりシフト
量に相当したビットが1になるデコードデータに変換さ
れる。このデコードデータは、排他的論理和回路EOR
により、シフト量に対応したビットより右側のビットを
全て1にするセレクトデータに変換される。
【0012】セレクタ1は、前記のような通常の算術論
理演算回路の動作モードのときには、単にデータバスD
BUS1又はDBUS2のデータを取り込むような動作
を行う。これに対して、シフト動作モードのときには、
図3の動作概念図に示すように、上記セレクトデータに
対応してDBUS1とDBUS2のデータを取り込む。
すなわち、1に対応したビットはデータバスDBUS1
からデータを取り込み、0に対応したビットはデータバ
スDBUS2からデータを取り込む。このようにして、
バレルシフタのシフト結果と同じデータを形成して、算
術論理演算回路ALUの一方の入力に供給する。
【0013】セレクタ2は、前記のような通常の算術論
理演算回路の動作モードのときには、単にデータバスD
BUS2のデータを取り込むような動作を行う。これに
対して、シフト動作モードのときには、オール1のデー
タを算術論理演算回路ALUの他方の入力に供給する。
これにより、算術論理演算回路ALUは、シフト結果に
対応したデータとオール1のデータとの加算演算を行
う。
【0014】もしも、シフト結果に対応したデータがオ
ール0のときには、算術論理演算回路ALUの演算結果
はオール1となってオーバーフロー無しとされる。これ
に対して、シフト結果に対応したデータにいずれか1ビ
ットでも1があれば、上記オール1との加算結果にオー
バーフローが生じることなり、ALUフラグ生成回路F
LGは、これを検出してオーバーフローのフクグを発生
する。
【0015】このように、シフト動作モードにおいて、
ALUフクグ生成回路FLGのフクグにオーバーフロー
が発生すれば、バレルシフタのシフト結果にオール0が
無いことを意味し、逆にALUフクグ生成回路FLGの
フクグにオーバーフローが発生しなければ、バレルシフ
タのシフト結果にオール0であることを意味するものと
してそれぞれの処理を行うようにするものである。
【0016】上記図3に示すように、バレルシフタによ
るシフト動作と、算術論理演算回路ALUによるオール
0の判定処理とが同時に並行して行われるものである。
それ故、従来のようにバレルシフタのシフト結果をバレ
ルシフタ用フラグ生成回路に入力して、オール0の判定
処理を行う場合に比べて、回路の簡素化が図られるとと
もに、オール0の判定結果を高速に知ることができ、オ
ール0の判定処理を含む一連のシフト動作の処理を早く
終わられることができ、高速シフト演算が実現できる。
【0017】上記の実施例から得られる作用効果は、下
記の通りである。すなわち、 (1) データバス1とデータバス2を介して入力され
たデータAとBをバレルシフタに入力してシフト量に応
じシフト動作を行わせるとともに、上記シフト動作と並
行してデータAとBをシフト量をもとにシフト量に対応
したデータを形成して算術論理演算回路に入力し、オー
ル1のデータと加算させ、この加算結果のオーバーフロ
ーの有無によりバレルシフタによるシフト結果のオール
0を判定することにより、バレルシフタによるシフト動
作並行して算術論理演算回路の加算動作を利用してシフ
ト結果のオール0を判定できるので、バレルシフトに設
けられるオール0を判定生成するフクグ生成回路の削除
と高速シフト演算動作を実現できるという効果が得られ
る。
【0018】以上本発明者よりなされた発明を実施例に
基づき具体的に説明したが、本願発明は前記実施例に限
定されるものではなく、その要旨を逸脱しない範囲で種
々変更可能であることはいうまでもない。例えば、論理
回路やセレクタによってシトフ結果に対応したデータを
セレクトする回路は、種々の実施形態を採ることができ
る。この発明は、算術論理演算回路及びバレルシフタを
備えた演算回路及び演算方法に広く利用できる。
【0019】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば、下
記の通りである。すなわち、データバス1とデータバス
2を介して入力されたデータAとBをバレルシフタに入
力してシフト量に応じシフト動作を行わせるとともに、
上記シフト動作と並行してデータAとBをシフト量をも
とにシフト量に対応したデータを形成して算術論理演算
回路に入力し、オール1のデータと加算させ、この加算
結果のオーバーフローの有無によりバレルシフタによる
シフト結果のオール0を判定することにより、バレルシ
フタによるシフト動作並行して算術論理演算回路の加算
動作を利用してシフト結果のオール0を判定できるの
で、バレルシフトに設けられるオール0を判定生成する
フクグ生成回路の削除と高速シフト演算動作を実現でき
る。
【図面の簡単な説明】
【図1】この発明に係る演算回路の一実施例を示すブロ
ック図である。
【図2】この発明に係るシフト動作に用いられるセレク
トデータを形成方法を説明するためのフローチャート図
である。
【図3】この発明に係るシフト動作の一例を説明するた
めの概念図である。
【図4】従来の演算回路の一例を説明するためのブロッ
ク図である。
【符号の説明】 ALU…算術論理演算回路、FLG,FLG1…ALU
用フラグ形成回路、FLG2…シフタ用フクグ生成回
路、DBUS1…データバス1、DBUS2…データバ
ス2、WBUS…書き込みバス。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 データバス1とデータバス2を介して入
    力されたデータAとBをバレルシフタに入力して、シフ
    ト量に応じシフト動作を行わせるとともに、上記シフト
    動作と並行してデータAとBをシフト量をもとにシフト
    量に対応したデータを形成して算術論理演算回路に入力
    し、オール1のデータと加算させ、この加算結果のオー
    バーフローの有無によりバレルシフタによるシフト結果
    のオール0のフクグを得ることを特徴とする演算方法。
  2. 【請求項2】 データバス1及びデータバス2、シフト
    信号によりデータバス1とデータバス2の信号を受けて
    それを合成してシフト動作を行わせてライトバスに出力
    させるバレルシフタと、シフト動作のときに上記シフト
    信号を解読して形成されたセレクト信号によりデータバ
    ス1とデータバス2の中からシフト結果に対応したデー
    タを算術論理演算回路の一方に入力する第1のセレクタ
    と、上記シフト動作のときにオール1の信号を算術論理
    演算回路の他方に入力する第2のセレタクと、上記算術
    論理演算回路の演算結果によりオーバフローの有無を出
    力させるフクグ生成回路とを備えてなり、上記シフト動
    作においてフクグ生成回路により生成されたオーバーフ
    ロー出力信号をシフト結果オール0の信号として利用す
    ることを特徴とする演算回路。
  3. 【請求項3】 上記デコーダ回路は、シフト量に対応し
    たビットが1にされた解読信号を受け、第1のセレクタ
    は1に対応したビットはデータバス1から取り込み、0
    に対応したビットはデータバス2から取り込むものであ
    ることを特徴とする請求項2の演算回路。
JP4221254A 1992-08-20 1992-08-20 演算方法及び演算回路 Pending JPH0667847A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4221254A JPH0667847A (ja) 1992-08-20 1992-08-20 演算方法及び演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4221254A JPH0667847A (ja) 1992-08-20 1992-08-20 演算方法及び演算回路

Publications (1)

Publication Number Publication Date
JPH0667847A true JPH0667847A (ja) 1994-03-11

Family

ID=16763892

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4221254A Pending JPH0667847A (ja) 1992-08-20 1992-08-20 演算方法及び演算回路

Country Status (1)

Country Link
JP (1) JPH0667847A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2768774A1 (fr) 1997-09-22 1999-03-26 Nissan Diesel Motor Company Appareil d'admission de moteur a combustion interne
KR101471227B1 (ko) * 2010-05-28 2014-12-10 충북대학교 산학협력단 일진법 수의 데이터 처리 장치 및 이를 이용한 연산 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2768774A1 (fr) 1997-09-22 1999-03-26 Nissan Diesel Motor Company Appareil d'admission de moteur a combustion interne
KR101471227B1 (ko) * 2010-05-28 2014-12-10 충북대학교 산학협력단 일진법 수의 데이터 처리 장치 및 이를 이용한 연산 방법

Similar Documents

Publication Publication Date Title
KR100533296B1 (ko) 리드/모디파이/라이트 유닛을 갖는 시스템
US4908788A (en) Shift control signal generation circuit for floating-point arithmetic operation
JPS633337B2 (ja)
US5715186A (en) Digital processing device with minimum and maximum search instructions
US5764550A (en) Arithmetic logic unit with improved critical path performance
JPH0667847A (ja) 演算方法及び演算回路
JPH0371329A (ja) 算術論理演算処理装置の演算制御回路
JP2005508554A (ja) データ操作を利用したデータの計算と処理方法、及び、その装置
JP2000056949A (ja) 4−2コンプレッサ回路および乗算器
GB2354091A (en) Zero result prediction.
US5481728A (en) Data processor having circuitry for high speed clearing of an interrupt vector register corresponding to a selected interrupt request
JP2928680B2 (ja) 複合条件処理方式
US5944772A (en) Combined adder and logic unit
JPS62197868A (ja) パイプライン構成の直線近似変換回路
JPH1063500A (ja) 信号処理装置
US7278087B2 (en) Hardware circuit for the puncturing and repetitive coding of data streams, and a method for operating the said hardware circuit
US5220670A (en) Microprocessor having ability to carry out logical operation on internal bus
KR940007722A (ko) 고속 마이크로프로세서 브랜치 결정 회로
US5148480A (en) Decoder
JP2000259392A (ja) 論理回路
JPH0749778A (ja) 演算装置
KR100203742B1 (ko) 멀티플렉스를 이용한 가산기
JPH07147546A (ja) ビタビ復号器
JPH0517574B2 (ja)
JPH04180125A (ja) 加算器