JPH07191830A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPH07191830A
JPH07191830A JP5329505A JP32950593A JPH07191830A JP H07191830 A JPH07191830 A JP H07191830A JP 5329505 A JP5329505 A JP 5329505A JP 32950593 A JP32950593 A JP 32950593A JP H07191830 A JPH07191830 A JP H07191830A
Authority
JP
Japan
Prior art keywords
arithmetic
register
data
circuit
bits
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
JP5329505A
Other languages
English (en)
Other versions
JP3329921B2 (ja
Inventor
Moriyasu Tomono
守保 伴野
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP32950593A priority Critical patent/JP3329921B2/ja
Priority to DE69423715T priority patent/DE69423715T2/de
Priority to EP94120122A priority patent/EP0660225B1/en
Priority to US08/364,729 priority patent/US5659783A/en
Priority to KR1019940037327A priority patent/KR0166403B1/ko
Publication of JPH07191830A publication Critical patent/JPH07191830A/ja
Application granted granted Critical
Publication of JP3329921B2 publication Critical patent/JP3329921B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】 【目的】 この発明は、複数の演算を並行して実行可能
とし、演算処理時間の短縮化を達成し得る演算装置を提
供することを目的とする。 【構成】 この発明は、データバスd1L ,d2L ,d
H ,d2H を介して転送される演算データを分割し
て、分割した演算データをそれぞれ異なる演算回路aL
1,aH 2により並行して独立に演算処理し、又は先行
演算の結果が後続演算に必要な場合は、先行演算の結果
を除く後続演算の演算データを演算が開始される前に予
めレジスタR1〜R4からテンポラリ・レジスタx
L 3,yL 4,xH 5,yH 6に与えて準備しておくよ
うに構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、高速処理が可能な演
算装置に関し、特に高速に演算を実行することが必要な
マイクロプロセッサなどに使用される演算装置である。
【0002】
【従来の技術】図5は、演算データ幅の最大が16ビッ
トの演算処理を行う従来の演算装置の一例の構成を示す
図である。
【0003】図5において、演算装置は16ビットの演
算を行う演算回路103と、演算回路103の入力に直
結されて演算データを一時的に保持するテンポラリ・レ
ジスタx101,y102とで構成される。
【0004】テンポラリ・レジスタx101,y102
は、それぞれ16ビットのデータバスd1,d2に接続
され、16ビットの演算回路103の出力はデータバス
d1又はd2に接続されている。図5では説明のために
8ビットのレジスタR1,R2,R3,R4を付加して
いる。レジスタR1とR2及びレジスタR3とR4はそ
れぞれ連結されて16ビット長のレジスタR12及びR
34のレジスタペアになる。レジスタR1,R2,R
3,R4は、データバスd1.d2の下位8ビットd1
L ,d2L 及びd1,d2の上位8ビットd1H ,d2
H のいずれにも接続可能とする。8ビット演算の場合、
レジスタR1,R2,R3,R4は、データバスd1,
d2の下位8ビットd1L ,d2L に接続され、レジス
タの内容の読み出しの時には、データバスd1,d2の
上位8ビットd1H ,d2H に“0”が与えられる。
【0005】次に、このような構成において、16ビッ
ト演算を行なうときの動作について図6に示すタイミン
グチャートを参照して説明する。
【0006】一例として、レジスタR12のペア(上位
8ビット側をR1,下位8ビット側をR2とする)の内
容にレジスタR34のペア(上位8ビット側をR3,下
位8ビット側をR4とする)の内容を加算して、加算結
果をレジスタR12のペアに書き込む(R12+R34
→R12)という演算処理について説明する。
【0007】まず、第1ステートで、レジスタR12の
ペアの内容をデータバスd1に(レジスタR1の内容を
データバスd1の上位8ビットd1H に、レジスタR2
の内容をデータバスd1の下位8ビットd1L に)、レ
ジスタR34ペアの内容をデータバスd2に(レジスタ
R3の内容をデータバスd2の上位8ビットd2H に、
レジスタR4の内容をデータバスd2の下位8ビットd
L に)読み出す。続いて、データバスd1からテンポ
ラリ・レジスタx101にレジスタR12ペアの内容が
書き込まれ、データバスd2からテンポラリ・レジスタ
y102にレジスタR34ペアの内容が書き込まれる。
演算制御信号fによって演算回路103には加算実行が
指示され、キャリー入力Cinには“0”が与えられ、演
算回路103は(x+y)を算出する。
【0008】次に、第2ステートで、演算回路103か
ら演算結果がデータバスd1に(演算結果の上位8ビッ
トがデータバスd1H に、演算結果の下位8ビットがデ
ータバスd1L に)出力され、レジスタR12ペアに書
き込まれる。
【0009】次に、8ビット演算を行なうときの動作に
ついて、図7に示すタイミングチャートを参照して説明
する。
【0010】一例として、レジスタR1の内容にレジス
タR2の内容を加算し、レジスタR1に書き込む処理
と、レジスタR3の内容からレジスタR4の内容を減算
し、レジスタR3に書き込む処理を実行する場合につい
て説明する。
【0011】このような場合は、たとえ8ビット演算で
あっても16ビットとして演算されるため、同時に2つ
の演算を実行することはできず、(レジスタR1+レジ
スタR2)→レジスタR1を実行した後、(レジスタR
3−レジスタR4)→レジスタR3を実行する。
【0012】まず、第1ステートで、レジスタR1,R
2の内容をそれぞれデータバスd1L ,d2L に読み出
す。その際、データバスd1H ,d2H には“0”が与
えられる。続いて、データバスd1,d2からそれぞれ
テンポラリ・レジスタx101,y102にレジスタR
1,R2の内容が書き込まれる。演算制御信号fにより
演算回路103に加算実行が指示され、キャリー入力C
inには“0”が与えられて、演算回路103は(x+
y)を算出する。
【0013】次に、第2ステートで、演算回路103か
ら演算結果がデータバスd1L に出力されてレジスタR
1に書き込まれる。
【0014】次に、第3ステートで、レジスタR3,R
4の内容をそれぞれデータバスd1L ,d2L に読み出
す。その際、データバスd1H ,d2H には“0”が与
えられる。続いて、データバスd1,d2からそれぞれ
テンポラリ・レジスタx101,y102にレジスタR
3,R4の内容が書き込まれる。演算制御信号fにより
演算回路103に減算実行が指示され、キャリー入力C
inには“0”が与えられ、演算回路103は(x−y)
を算出する。
【0015】次に、第4ステートで、演算回路103か
ら演算結果がデータバスd1L に出力されてレジスタR
3に書き込まれる。
【0016】このような演算処理では、8ビット演算で
も16ビットとして処理しているため、演算回路103
の上位8ビットを無駄に使用していることになる。した
がって、続けて8ビット演算を実行する場合、1つずつ
演算を実行することになり、上記の演算例では合計4ス
テートの処理時間を要することになる。
【0017】次に、後続の演算が先行する演算の結果を
使う場合、例えば、レジスタR1の内容にレジスタR2
の内容を加算し、和をレジスタR1に書き込む処理に続
き、レジスタR3の内容からレジスタR1の新しい内容
を引き、差をレジスタR3に書き込む処理を行なう場合
について、図8のタイミングチャートを参照して説明す
る。
【0018】このような演算処理を行なう場合、常に1
6ビットとして演算されるため、最初の(R1+R2)
→R1の処理が済むまでレジスタR3の内容をテンポラ
リ・レジスタx101又はy102に書き込むことはで
きない。そのため、(R3−R1)→R3の処理は(R
1+R2)→R1の処理終了後に行われる。
【0019】まず、第1ステートで、レジスタR1,R
2の内容をそれぞれデータバスd1L ,d2L に読み出
す。その際、データバスd1H ,d2H には“0”が与
えられる。続いて、データバスd1,d2からそれぞれ
テンポラリ・レジスタx101,y102にレジスタR
1,R2の内容が書き込まれる。演算制御信号fにより
演算回路103に加算実行が指示され、キャリー入力C
inには“0”が与えられ、演算回路103は(x+y)
を算出する。
【0020】次に、第2ステートで、演算結果すなわち
レジスタR1の内容とレジスタR2の内容の和が演算回
路103からデータバスd1L に出力され、レジスタR
1に書き込まれる。
【0021】次に、第3ステートで、レジスタR3,R
1の内容をそれぞれデータバスd1L ,d2L に読み出
す。その際、データバスd1H ,d2H には“0”が与
えられる。続いて、データバスd1,d2からそれぞれ
テンポラリ・レジスタx101,y102にレジスタR
3,R1の内容が書き込まれる。演算制御信号fにより
演算回路103に減算実行が指示され、キャリー入力C
inには“0”が与えられ、演算回路103は(x−y)
を算出する。
【0022】次に、第4ステートで、演算結果すなわち
レジスタR3の内容とレジスタR1の新しい内容の差
が、演算回路103からデータバスd1L に出力され、
レジスタR3に書き込まれる。
【0023】このように、従来では、続けて8ビット演
算を実行する場合は、1つずつ演算を実行することにな
り、上記の演算例では合計4ステートの処理時間を要す
ることになる。
【0024】
【発明が解決しようとする課題】以上説明したように、
演算装置の扱えるデータ幅未満のデータを演算している
時、例えば16ビット長のデータを演算できる演算装置
において8ビット長の2項演算をしている時、従来の演
算装置では、後続の演算が8ビット長の2項演算であっ
ても、先行する演算の終了まで後続の演算の開始ができ
なかった。すなわち、複数の演算が同時に実行できない
ため、処理時間がかかるという問題を招いていた。
【0025】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、複数の演算を
並行して実行可能とし、演算処理時間の短縮化を達成し
得る演算装置を提供することにある。
【0026】
【課題を解決するための手段】上記目的を達成するため
に、この発明は、取り扱う演算データの最大ビット幅を
mビット、最小ビット幅をnビットとし、それぞれ独立
して演算可能なnビットの演算回路を複数備え、nビッ
ト以上の演算データを演算する場合は、演算データがn
ビット毎に演算回路に与えられてそれぞれの演算回路が
並行動作し、下位側の演算回路から上位側の演算回路に
必要に応じてキャリーが与えられて演算処理が行われ、
mビット以下の演算データで一連の演算を連続して実行
する場合には、それぞれの演算回路が独立して並行動作
し、又は前段の演算回路の演算結果が直接後段の演算回
路側に与えられて複数の演算回路が順次動作して、一連
の演算を行う演算回路群と、それぞれの演算回路の直前
に設けられ、演算回路に与えられるnビット幅の演算デ
ータをそれぞれ独立して一時的に保持する保持手段と、
前段の演算回路から後段の演算回路にキャリーを伝達制
御する伝達手段と、それぞれの演算回路と保持手段との
間でデータの転送路となるデータバスとから構成され
る。
【0027】
【作用】上記構成において、この発明は、演算データの
ビット幅を分割して分割した演算データをそれぞれ異な
る演算回路により並行して独立に演算処理し、又は先行
演算の結果が後続演算に必要な場合は、先行演算の結果
を除く後続演算の演算データを演算が開始される前に予
め保持手段に与えて準備しておくようにしている。
【0028】
【実施例】以下、図面を用いてこの発明の実施例を説明
する。
【0029】図1はこの発明の一実施例に係わる演算装
置の構成を示す図である。
【0030】図1において、演算装置は、8ビットの演
算を行う演算回路aL 1と演算回路aH 2とからなる演
算回路群と、演算回路aL 1又はaH 2の入力に直結さ
れて演算データを一時的に保持するテンポラリ・レジス
タxL 3,yL 4,xH 5,yH 6と、演算回路aL
から演算回路aH 2にキャリーを伝達制御するセレクタ
7と、演算回路aL 1及び演算回路aH 2とテンポラリ
・レジスタxL 3,yL 4,xH 5,yH 6との間でデ
ータの転送路となるデータバスd1L ,d2Lとd
H ,d2H とを有して構成される。図1では説明のた
めに演算装置の他に演算データ及び演算結果を保持する
8ビットのレジスタR1,R2,R3,R4を付加して
いる。
【0031】演算回路aL 1,aH 2は8ビットの演算
データを取扱い、演算装置全体としては一度に扱える演
算データの最大データ幅は16ビットとなる。演算回路
L1,aH 2は、演算の種類を指定する演算制御信号
L ,fH にしたがって演算を行い、8ビット演算を行
なうときは独立に動作し、16ビット演算を行なうとき
は演算回路aL 1を下位8ビット用、演算回路aH 2を
上位8ビット用として連結して動作する。この時、演算
回路aL 1のキャリー出力は、演算回路aH 2のキャリ
ー入力に接続される。
【0032】テンポラリ・レジスタxL 3,yL 4,x
H 5,yH 6は、下位8ビット(xL 3,yL 4)と上
位8ビット(xH 5,yH 6)に分割されて、それぞれ
データバスd1L ,d2L ,d1H ,d2H に接続され
ている。テンポラリ・レジスタxL 3,yL 4,x
H 5,yH 6は、演算制御信号fL ,fH にしたがって
テンポラリ・レジスタxL 3,yL 4又はテンポラリ・
レジスタxH 5,yH 6との間で演算され、例えば演算
制御信号fが加算を指示した場合は、テンポラリ・レジ
スタ(x+y)の結果が、演算回路aL 1,aH 2から
出力される。
【0033】レジスタR1とR2及びレジスタR3とR
4は、それぞれ連結されて16ビット長のレジスタR1
2及びR34のレジスタペアになる。レジスタR1〜R
4はデータバスd1L ,d2L ,d1H ,d2H のいず
れにも接続可能とする。ただし、16ビット演算の場
合、レジスタR1,R3はデータバスd1H 又はd2H
に、レジスタR2,R4はデータバスd1L 又はデータ
バスd2L と接続されるものとする。テンポラリ・レジ
スタxL 3,yL 4,xH 5,yH 6にデータ転送後の
次のステート以降で演算結果が出力される。レジスタペ
アR12,R34は、2本の16ビット・データバスd
1,d2を介してテンポラリ・レジスタxL 3,y
L 4,xH 5,yH 6の入力及び演算回路aL 1,aH
2の出力に接続されている。
【0034】16ビットのデータバスd1,d2は、下
位8ビット(d1L ,d2L )と上位8ビット(d
H ,d2H )に分割されており、演算回路aL 1とa
H 2の出力は、それぞれデータバスd1L 又はd2L
データバスd1H 又はd2H に接続されるものとする。
【0035】セレクタ7は、演算制御信号gにしたがっ
て演算回路aL 1から出力されるキャリー出力Cout
L 又はキャリー入力FCinH を選択して、演算回路a
H 2にキャリーCinH として与える。
【0036】このような構成において、まず、16ビッ
ト演算を行うときの動作について説明する。
【0037】一例として、レジスタペアR12の内容に
レジスタペアR34の内容を加算し、レジスタペアR1
2に書き込む場合について、図2に示すタイミングチャ
ートを参照して説明する。
【0038】まず、第1ステートで、レジスタペアR1
2の内容をデータバスd1に、レジスタペアR34の内
容をデータバスd2に読み出す。レジスタR2の内容が
データバスd1L からテンポラリ・レジスタxL 3に、
レジスタR1の内容がデータバスd1H からテンポラリ
・レジスタxH 4に書き込まれ、レジスタR4の内容が
データバスd2L からテンポラリ・レジスタyL 5に、
レジスタR3の内容がデータバスd2H からテンポラリ
・レジスタyH 6に書き込まれる。演算制御信号fL,f
H は、演算回路aL 1とaH 2の双方に加算実行を指示
し、演算制御信号gで演算回路aH 2のキャリー入力C
inH には演算回路aL 1のキャリー出力Cout L を接続
させる。演算回路aL 1のキャリー入力CinL には、
“0”を入れる。
【0039】演算回路aL 1は、和(xL +yL )及び
キャリーCout L を算出し、演算回路aH 2は、和(x
H +yH +CinH )を算出する。
【0040】次に、第2ステートで、演算結果が演算回
路aL 1,aH 2からデータバスd1L ,d1H にそれ
ぞれ出力され、レジスタR2及びレジスタR1に書き込
まれる。
【0041】このように、16ビット演算の場合、従来
例と本発明の上記実施例は、ともに2ステートで演算処
理されるので、処理時間の点で差は生じない。
【0042】次に、8ビット演算を行うときの動作につ
いて説明する。
【0043】一例として、レジスタR1の内容にレジス
タR2の内容を加算し、レジスタR1に書き込む処理と
レジスタR3の内容からレジスタR4の内容を引き、レ
ジスタR3に書き込む処理を並行して実行する場合につ
いて、図3に示すタイミングチャートを参照して説明す
る。
【0044】まず、第1ステートで、レジスタR1〜R
4の内容をそれぞれデータバスd1L ,d2L ,d
H ,d2H に読み出す。データバスd1L ,d2L
d1H ,d2H からそれぞれテンポラリ・レジスタxL
3,yL 4,xH 5,yH 6にレジスタR1〜R4の内
容が書き込まれる。
【0045】演算制御信号fL は、演算回路aL 1に加
算実行を指示し、演算回路aL 1のキャリー入力CinL
には、“0”を入れる。演算制御信号fH は、演算回路
H2に減算実行を指示する。演算制御信号gで演算回
路aH 2のキャリー入力CinH をFCinH にし、FCin
H には“0”を入れる。したがって、演算回路aL
は、和(xL +yL )を算出し、演算回路aH 2は、差
(xH −yH )を算出する。
【0046】次に、第2ステートで、演算結果が演算回
路aL 1,aH 2からデータバスd1L ,d1H にそれ
ぞれ出力され、レジスタR1及びレジスタR3に書き込
まれる。
【0047】このように、本発明の上記実施例では2つ
の演算を並行して同時に実行可能なため、2ステートの
処理時間で済むのに対して、従来の演算処理では、前述
したように8ビット演算でも16ビットとして処理して
いるため、演算回路103の上位8ビットを無駄に使用
しているため、続けて8ビット演算を実行する場合、1
つずつ演算を実行することになり、合計4ステートの処
理時間を要することになる。したがって、本発明の上記
実施例では、従来に比べて演算処理を高速に行うことが
できる。
【0048】次に、後続の演算が先行する演算の結果を
使う場合について説明する。
【0049】このような場合には、本発明では同時に演
算することはできないので、次のように2ステップ(1
ステップ目は第1〜第2ステート、2ステップ目は第2
〜第3ステート)に分けて実行する。
【0050】一例として、レジスタR1の内容にレジス
タR2の内容を加算し、和をレジスタR1に書き込む処
理に引き続き、レジスタR3の内容からレジスタR1の
新しい内容を引き、差をレジスタR3に書き込む処理を
行う場合について、図4に示すタイミングチャートを参
照して説明する。
【0051】まず、第1ステートで、レジスタR1〜R
3の内容をそれぞれデータバスd1L ,d2L 及びd1
H に読み出す。データバスd1L ,d2L 及びd1H
らそれぞれテンポラリ・レジスタxL 3,yL 4及びx
H 5にレジスタR1〜R3の内容が書き込まれる。演算
制御信号fL は、演算回路aL 1に加算実行を指示し、
演算回路aL 1のキャリー入力CinL には“0”を入れ
る。したがって、演算回路aL 1は和(xL +yL )を
算出する。
【0052】次に、第2ステートで、演算結果すなわち
レジスタR1の内容とレジスタR2の内容の和が、演算
回路aL 1からデータバスd2H に出力され、レジスタ
R1に書き込まれるとともにテンポラリ・レジスタyH
6に書き込まれる。演算制御信号fH は、演算回路aH
2に減算実行を指示し、演算制御信号gは、演算回路a
H 2のキャリー入力CinH にFCinH を選択し、FCin
H には“0”を入れる。したがって、演算回路aH 2は
差(xH −yH )を算出する。
【0053】次に、第3ステートで、演算結果すなわち
レジスタR3の内容とレジスタR1の新しい内容の差
が、演算回路aH 2からデータバスd2H に出力され、
レジスタR3に書き込まれる。
【0054】このように、続けて8ビット演算を実行す
る場合は、従来例では1つずつ演算を実行することにな
り、上記の演算例では合計4ステートの処理時間を要す
るのに対して、本発明の上記実施例では、1回目の演算
開始時に次の演算に必要なデータの一部をテンポラリ・
レジスタに書き込んでおくことができ(なお、次の演算
に必要なデータの一部すなわち上記の例ではレジスタR
3の内容を第2ステートでテンポラリ・レジスタに書き
込んでも良い)、また、演算結果をレジスタに書き込む
際、テンポラリ・レジスタにも書き込むことができるた
め、処理時間が1ステート分短縮される。
【0055】したがって、本願発明の実施例では8ビッ
ト演算が継続して実行される場合、従来例に比べて処理
時間が1〜2ステート短縮されるため、高速処理を必要
とする応用分野の演算装置に適している。
【0056】
【発明の効果】以上説明したように、この発明によれ
ば、演算データのビット幅を分割して分割した演算デー
タをそれぞれ異なる演算回路により並行して独立に演算
処理し、又は先行演算の結果が後続演算に必要な場合
は、先行演算の結果を除く後続演算の演算データを演算
が開始される前に予め第2の保持手段から第1の保持手
段に与えて準備しておくようにしたので、演算処理を高
速化することができる。
【図面の簡単な説明】
【図1】請求項1記載の発明の一実施例に係わる演算装
置の構成を示す図である。
【図2】図1に示す演算装置の動作タイミングチャート
である。
【図3】図1に示す演算装置の他の動作タイミングチャ
ートである。
【図4】図1に示す演算装置の他の動作タイミングチャ
ートである。
【図5】従来の演算装置の構成を示す図である。
【図6】図5に示す演算装置の動作タイミングチャート
である。
【図7】図5に示す演算装置の他の動作タイミングチャ
ートである。
【図8】図5に示す演算装置の他の動作タイミングチャ
ートである。
【符号の説明】 1,2 演算回路 3,4,5,6 テンポラリ・レジスタ 7 セレクタ R1〜R4 レジスタ d1,d2 データバス

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 取り扱う演算データの最大ビット幅をm
    ビット、最小ビット幅をnビットとし、それぞれ独立し
    て演算可能なnビットの演算回路を複数備え、nビット
    以上の演算データを演算する場合は、演算データがnビ
    ット毎に演算回路に与えられてそれぞれの演算回路が並
    行動作し、下位側の演算回路から上位側の演算回路に必
    要に応じてキャリーが与えられて演算処理が行われ、m
    ビット以下の演算データで一連の演算を連続して実行す
    る場合には、それぞれの演算回路が独立して並行動作
    し、又は前段の演算回路の演算結果が直接後段の演算回
    路側に与えられて複数の演算回路が順次動作して、一連
    の演算を行う演算回路群と、 それぞれの演算回路の直前に設けられ、演算回路に与え
    られるnビット幅の演算データをそれぞれ独立して一時
    的に保持する保持手段と、 前段の演算回路から後段の演算回路にキャリーを伝達制
    御する伝達手段と、 それぞれの演算回路と保持手段との間でデータの転送路
    となるデータバスとを有することを特徴とする演算装
    置。
JP32950593A 1993-12-27 1993-12-27 演算装置 Expired - Lifetime JP3329921B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP32950593A JP3329921B2 (ja) 1993-12-27 1993-12-27 演算装置
DE69423715T DE69423715T2 (de) 1993-12-27 1994-12-19 Zur gleichzeitigen Ausführung von mehreren Operationen fähige ALE
EP94120122A EP0660225B1 (en) 1993-12-27 1994-12-19 ALU capable of simultaneously executing a plurality of operations
US08/364,729 US5659783A (en) 1993-12-27 1994-12-27 Operation unit with plural operation circuits having plural data buses providing plural operation modes
KR1019940037327A KR0166403B1 (ko) 1993-12-27 1994-12-27 연산장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32950593A JP3329921B2 (ja) 1993-12-27 1993-12-27 演算装置

Publications (2)

Publication Number Publication Date
JPH07191830A true JPH07191830A (ja) 1995-07-28
JP3329921B2 JP3329921B2 (ja) 2002-09-30

Family

ID=18222129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32950593A Expired - Lifetime JP3329921B2 (ja) 1993-12-27 1993-12-27 演算装置

Country Status (5)

Country Link
US (1) US5659783A (ja)
EP (1) EP0660225B1 (ja)
JP (1) JP3329921B2 (ja)
KR (1) KR0166403B1 (ja)
DE (1) DE69423715T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510899A (ja) * 2013-03-15 2016-04-11 テラダイン、 インコーポレイテッド 自動テストシステムでの低待ち時間通信の方法及び装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7506133B2 (en) * 2003-08-20 2009-03-17 Seiko Epson Corporation Method and apparatus for high speed addressing of a memory space from a relatively small address space

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4393468A (en) * 1981-03-26 1983-07-12 Advanced Micro Devices, Inc. Bit slice microprogrammable processor for signal processing applications
US4528641A (en) * 1982-11-16 1985-07-09 The United States Of America As Represented By The Secretary Of The Air Force Variable radix processor
JPS61255433A (ja) * 1985-05-07 1986-11-13 Mitsubishi Electric Corp 演算装置
US4789957A (en) * 1986-03-28 1988-12-06 Texas Instruments Incorporated Status output for a bit slice ALU
US4811266A (en) * 1986-11-05 1989-03-07 Honeywell Bull Inc. Multifunction arithmetic indicator
US5301340A (en) * 1990-10-31 1994-04-05 International Business Machines Corporation IC chips including ALUs and identical register files whereby a number of ALUs directly and concurrently write results to every register file per cycle

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510899A (ja) * 2013-03-15 2016-04-11 テラダイン、 インコーポレイテッド 自動テストシステムでの低待ち時間通信の方法及び装置

Also Published As

Publication number Publication date
KR0166403B1 (ko) 1999-03-20
DE69423715D1 (de) 2000-05-04
US5659783A (en) 1997-08-19
EP0660225B1 (en) 2000-03-29
DE69423715T2 (de) 2000-08-31
EP0660225A1 (en) 1995-06-28
KR950022131A (ko) 1995-07-26
JP3329921B2 (ja) 2002-09-30

Similar Documents

Publication Publication Date Title
US4700324A (en) Digital circuit performing an arithmetic operation with an overflow
Dadda Some schemes for parallel multipliers
US4761760A (en) Digital adder-subtracter with tentative result correction circuit
US20040260914A1 (en) Data packet arithmetic logic devices and methods
CA1286779C (en) Apparatus and method for an extended arithmetic logic unit for expediting selected floating point operations
US5177703A (en) Division circuit using higher radices
US7051194B2 (en) Self-synchronous transfer control circuit and data driven information processing device using the same
JPH0545982B2 (ja)
US4349888A (en) CMOS Static ALU
EP0278529A2 (en) Multiplication circuit capable of operating at a high speed with a small amount of hardware
JPH07191830A (ja) 演算装置
JPS5979495A (ja) シフト回路
JP2991788B2 (ja) 復号器
JPH09185493A (ja) 加算器用集積回路
JP3166781B2 (ja) 加算回路
JPH07225672A (ja) バレルシフタ及び制御方法
JP3097081B2 (ja) 段数可変m系列符号発生器
JP3074958B2 (ja) 加算機能付きシリアル乗算器
JPH06259231A (ja) 整数型除算器
JPH04330519A (ja) 乗算回路
JPH04246722A (ja) 加減算器
JPS62184534A (ja) 演算回路
JPS615345A (ja) 直列乗算方法
JPH04324523A (ja) 演算装置
JPH07210371A (ja) パイプライン型除算処理装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110719

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120719

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130719

Year of fee payment: 11

EXPY Cancellation because of completion of term