JP3237858B2 - 演算装置 - Google Patents

演算装置

Info

Publication number
JP3237858B2
JP3237858B2 JP01002391A JP1002391A JP3237858B2 JP 3237858 B2 JP3237858 B2 JP 3237858B2 JP 01002391 A JP01002391 A JP 01002391A JP 1002391 A JP1002391 A JP 1002391A JP 3237858 B2 JP3237858 B2 JP 3237858B2
Authority
JP
Japan
Prior art keywords
signal
register
data
data signal
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.)
Expired - Fee Related
Application number
JP01002391A
Other languages
English (en)
Other versions
JPH04245324A (ja
Inventor
英治 湖本
和彦 槇
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP01002391A priority Critical patent/JP3237858B2/ja
Priority to US07/825,976 priority patent/US5307300A/en
Publication of JPH04245324A publication Critical patent/JPH04245324A/ja
Application granted granted Critical
Publication of JP3237858B2 publication Critical patent/JP3237858B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/3001Arithmetic instructions

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は転送を伴う演算を高速に
実行する演算装置に関するものである。
【0002】
【従来の技術】従来の演算装置の例を図2に示し、図2
を用いて説明する。
【0003】まず、制御部201の命令デコード回路2
03は、メモリ205から、読み出した命令を解読し信
号として出力する。前記命令は例えば図3のような命令
コードである。解読された前記命令のうち出力するレジ
スタのアドレスとバスの指定命令303および305は
制御線207および制御線209により、信号としてレ
ジスタ部に伝わり、レジスタr o 211ないしレジスタ
n 219から、2つのレジスタを指定し、レジスタの
データを示す信号をAバス221、またはBバス223
にそれぞれ与える。
【0004】また、301の演算部225に対する演算
命令は、制御線227より、信号として演算部に伝わり
前記Aバス221および前記Bバス223に与えられた
信号を演算処理後、Cバス229に演算結果を示す信号
が与えられる。前記Cバス229に与えられた信号は、
制御線231より伝えられる入力するレジスタのアドレ
ス指定命令307により、レジスタr o 211ないしレ
ジスタr n 219のいずれか所望のレジスタに書き込ま
れる。
【0005】
【発明が解決しようとする課題】しかし、以上の装置で
は、後置演算などの転送を伴う演算命令は非常によく用
いられるにもかかわらず、転送と演算は同時に実行でき
ない。すなわち、転送処理後に演算処理を行うか、また
は、演算処理後に転送処理を行うかのいずれか2サイク
ルでなければ実行できない。
【0006】例えば、C言語で、“r o =r1++j”と
いう命令は、後置演算の命令であり、前記の装置で実行
するならば2サイクルでなければ実行できない。
【0007】また、前置演算などの演算処理された演算
結果を複数のレジスタに同時に入力する演算命令におい
ても、前記の装置では、2サイクルでなければ実行でき
ない。
【0008】結局、以上のような演算命令を前記の演算
装置で実行すれば、実行時間の増大になる。
【0009】本発明は後置演算および前置演算などの演
算命令を同時に実行できる演算装置を提供するものであ
る。
【0010】
【課題を解決するための手段】本発明はレジスタから与
えられた信号を演算部を介さずに転送する転送バスと、
前記転送バスに与えられた信号と演算部で演算処理され
た演算結果を示す信号を選択的に選ぶ選択器とを導入し
たものである。
【0011】
【作用】本発明によれば、以上のような転送バスと選択
器を設けたことにより、転送を伴う演算の転送処理と演
算処理を同時に実行できるので、実行時間が短縮し前記
課題を解決できる。
【0012】
【実施例】以下、本発明の演算装置における転送を伴う
演算命令、すなわち後置演算の実施例を図1を用いて説
明する。
【0013】まず、制御部101の命令デコード回路1
03は、メモリ105から読み出した命令を解読し、信
号として出力する。前記命令は例えば図4のような命令
コードである。(この場合、図4の403および405
は後置演算の実行命令である。)解読された前記命令の
うち出力するレジスタのアドレスとバスの指定命令40
7および409は制御線107および制御線109によ
り信号としてレジスタ部に伝わり、レジスタr o 111
ないしレジスタr n 119から2つのレジスタを指定
し、レジスタのデータを示す信号をAバス121または
Bバス123にそれぞれ与える。
【0014】この場合、レジスタr o 111とレジスタ
r1113を指定し、レジスタro 111のデータを示す
信号がAバス121に、レジスタr1113のデータを示
す信号がBバス123に与えられる場合の例を示す。
【0015】また、解読された前記命令のうち演算部1
25に対する演算命令図4−401は制御線127より
信号として演算部に伝わりAバス121およびBバス1
23に与えられた信号を演算処理後、Cバス129に演
算結果を示す信号が与えられる。
【0016】また、解読された前記命令のうち、レジス
タのアドレス指定命令と選択器の選択命令411および
413は、制御線131ないし制御線139より信号と
して入力するレジスタの選択器へ伝わり、Aバスからの
信号が転送されるバス151またはCバス129に与え
られた信号のいずれかを選択する。
【0017】この場合、レジスタr2115にAバスから
転送された信号が、レジスタr3117にCバス129に
与えられた信号が、入力される場合を示す。
【0018】そこで、レジスタr2115の選択器145
は、制御線135からの信号により、Aバスからの信号
が転送されるバス151に与えられた信号を選択し、レ
ジスタr3117の選択器147は、制御線137からの
信号によりCバス129に与えられた信号を選択する。
【0019】また、レジスタ部への入力命令415は制
御線153よりレジスタ部へ伝わり、前記選択器の選択
した信号をレジスタに入力し、演算が完了する。
【0020】さらに、本装置で、演算結果を複数のレジ
スタに同時に入力する演算、すなわち前置演算を実行す
る場合の実施例を図1を用いて以下に説明する。
【0021】まず、制御部101の命令デコード回路1
03は、メモリ105から読み出した命令を解読し、信
号として出力する。前記命令は例えば図4のような命令
コードである。(この場合、図4の403および405
は前置演算の実行命令である。)解読された前記命令の
うち出力するレジスタのアドレスとバスの指定命令40
7および409は制御線107および制御線109によ
り信号としてレジスタ部に伝わり、レジスタr o 111
ないしレジスタrn 119から、2つのレジスタを指定
し、レジスタのデータを示す信号をAバス121または
Bバス123にそれぞれ与える。
【0022】この場合、レジスタr o 111とレジスタ
r1113を指定し、レジスタr o 111のデータを示す
信号がAバス121に、レジスタr1113のデータを示
す信号がBバス123に与えられる場合の例を示す。
【0023】また、解読された前記命令のうち演算部1
25に対する演算命令401は制御線127より信号と
して演算部に伝わりAバス121およびBバス123に
与えられた信号を、演算処理後、Cバス129に演算結
果を示す信号が与えられる。
【0024】また、解読された前記命令のうち、レジス
タのアドレス指定命令と選択器の選択命令411および
413は、制御線131ないし制御線139より信号と
して入力するレジスタの選択器へ伝わり、この場合は前
置演算なので前記選択器は、Cバス129に与えられた
信号を選択する。
【0025】この場合、レジスタr2115およびレジス
タr3117にCバス129に与えられた信号が入力され
る場合を示す。
【0026】レジスタr2115の選択器145は、制御
線131からの信号によりCバス129に与えられた信
号を選択し、また、レジスタr3117の選択器147は
制御線137からの信号により、Cバス129に与えら
れた信号を選択する。
【0027】また、レジスタ部への入力命令415は制
御線153よりレジスタ部へ伝わり、前記選択器の選択
した信号をレジスタに入力し演算が完了する。
【0028】次に、本装置で演算結果を単数のレジスタ
に入力する演算、すなわち、一般演算の場合の実施例を
図1を用いて以下に説明する。
【0029】まず、制御部101の命令デコード回路1
03は、メモリ105から読み出した命令を解読し、信
号として出力する。前記命令は例えば図4のような命令
コードである。
【0030】この場合、一般演算命令は、前置演算命令
もしくは後置演算命令403の非実行命令405であ
る。
【0031】解読された前記命令のうち出力するレジス
タのアドレスとバスの指定命令407および409は制
御線107および制御線109により信号としてレジス
タ部に伝わり、レジスタr o ないしレジスタr n 119
から2つのレジスタを指定し、レジスタのデータを示す
信号をAバス121またはBバス123にそれぞれ与え
る。
【0032】また、解読された前記命令のうち演算部1
25に対する演算命令401は制御線127より信号と
して演算部に伝わり、Aバス121およびBバス123
に与えられた信号を演算処理し、演算結果を示す信号を
Cバス129に与える。
【0033】また、解読された前記命令のうち、レジス
タのアドレス指定命令と選択器の選択命令411は、入
力するレジスタの選択器へ伝わり、この場合は、一般演
算なので、前記選択器はCバス129に与えられた信号
を選択する。
【0034】この場合、レジスタr2115にCバス12
9に与えられた信号が入力される場合を示す。
【0035】レジスタr2115の選択器145は、制御
線131からの信号によりCバス129に与えられた信
号を選択する。
【0036】また、レジスタ部への入力命令図4.41
5は制御線153よりレジスタ部へ伝わり、前記選択器
の選択した信号をレジスタに入力し、演算が完了する。
【0037】
【発明の効果】以上詳細に説明したように、本発明は、
レジスタのデータを示す信号を演算部を介さずに転送す
る転送バスと、前記転送バスに与えられた信号と演算部
で演算処理された演算結果を示す信号を選択的に選ぶ選
択器を設けたことにより、後置演算などの転送を伴う演
算において、転送と演算を同時に実行できるので、すな
わち1サイクルで実行できるので、実行時間の短縮にな
る。
【0038】また、本発明は、前置演算などの演算処理
された演算結果を示す信号を複数のレジスタに同時に入
力する演算命令においても、1サイクルで実行できるの
で、実行時間の短縮になる。
【0039】以上のように、本発明は転送を伴う演算お
よび演算結果をレジスタに同時に入力するような演算を
実行する場合、実行時間の短縮という効果を有する。
【図面の簡単な説明】
【図1】本発明の演算装置の構成を示す図。
【図2】従来の演算装置の構成を示す図。
【図3】従来の演算装置の命令コードの例を示す図。
【図4】本発明の演算装置の命令コードの例を示す図。
【符号の説明】
101 制御部 103 デコード回路 105 メモリ 111〜119 レジスタ 121、123、129、151 バス 125 演算部 141〜149 選択器 107、109、127、131〜139 制御線 401 演算命令 403 前置演算命令または後置演算命令 405 前置演算命令または後置演算命令の実行命令
または非実行命令 407、409 出力するレジスタのアドレス指定命
令とバスの指定命令 411、413 入力するレジスタのアドレス指定命
令と選択器の選択命令 415 入力命令
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/00 G06F 9/30 G06F 9/38 G06F 13/38

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 演算手段を有する演算装置において、データを格納する第1及び第2のレジスタと、 前記第1のレジスタに格納されたデータに対応する 第1
    のデータ信号と、前記第2のレジスタに格納されたデー
    タに対応する第2のデータ信号とを演算処理し、第3の
    データ信号として出力する前記演算手段と、前記第1のデータ信号を転送する転送信号線と、 前記演算装置に前置演算を実行させる前置演算命令信
    、あるいは前記演算装置に後置演算を実行させる後置
    演算命令信号に応じて、前記第1のデータ信号及び前記
    第3のデータ信号のうち、いずれか一方を選択する切換
    手段とを有しており、 前記切換手段は、 前記前置演算命令信号を受信すると、
    前記第1及び第2のレジスタへ前記第3のデータ信号を
    格納させ、前記後置演算命令信号を受信すると、前記
    1のレジスタへ前記第3のデータ信号を格納させ、前記
    第2のレジスタへ前記第3のデータ信号を格納させる
    とを特徴とする演算装置。
  2. 【請求項2】 請求項1記載の演算装置において、 前記切換手段は第1及び第2の切換手段を有しており、 前記第1及び第2の切換手段には、それぞれ前記第1の
    データ信号及び前記第3のデータ信号が転送され、前記
    第1及び第2の換切手段が前記前置演算命令信号を受信
    すると、前記第1の切換手段によって前記第1のレジス
    タへ前記第3のデータ信号が格納され、かつ前記第2の
    切換手段によって前記第2のレジスタへ前記第3のデー
    タ信号が格納され、前記第1及び第2の切換手段が前記
    前置演算命令信号を受信すると、前記第1の切換手段に
    よって前記第1のレジスタへ前記第1のデータ信号が格
    納され、前記第2の切換手段によって前記第2のレジス
    タへ前記第3のデータ信号が格納されることを特徴とす
    る演算装置。
  3. 【請求項3】 請求項1記載の演算装置において、 前記前置演算命令信号及び前記後置演算命令信号を記憶
    する記憶手段と、 前記前置演算命令信号及び前記後置演算命令信号を解読
    するデコード手段とを有し、 前記前置演算命令信号及び前記後置演算命令信号は、前
    記記憶手段から前記デコード手段を介して前記切換手段
    に転送されることを特徴とする演算装置。
  4. 【請求項4】 請求項3記載の演算装置において、 前記演算手段における前記第1及び第3のデータ信号の
    前記演算は、前記記憶手段からの演算命令信号が前記デ
    コード手段を介して前記演算手段に入力されることによ
    って行われることを特徴とする演算装置。
JP01002391A 1991-01-30 1991-01-30 演算装置 Expired - Fee Related JP3237858B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP01002391A JP3237858B2 (ja) 1991-01-30 1991-01-30 演算装置
US07/825,976 US5307300A (en) 1991-01-30 1992-01-27 High speed processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01002391A JP3237858B2 (ja) 1991-01-30 1991-01-30 演算装置

Publications (2)

Publication Number Publication Date
JPH04245324A JPH04245324A (ja) 1992-09-01
JP3237858B2 true JP3237858B2 (ja) 2001-12-10

Family

ID=11738805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01002391A Expired - Fee Related JP3237858B2 (ja) 1991-01-30 1991-01-30 演算装置

Country Status (2)

Country Link
US (1) US5307300A (ja)
JP (1) JP3237858B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5636150A (en) * 1992-08-06 1997-06-03 Sharp Kabushiki Kaisha Data driven type digital filter unit and data driven type information processor including the same
JP2883784B2 (ja) * 1993-04-27 1999-04-19 株式会社東芝 マイクロコンピュータ
JPH07122973A (ja) * 1993-10-20 1995-05-12 Yamaha Corp デジタル信号処理回路
US5778416A (en) * 1993-12-20 1998-07-07 Motorola, Inc. Parallel process address generator and method
JP3096387B2 (ja) * 1994-01-28 2000-10-10 三菱電機株式会社 数値演算処理装置
US5473557A (en) * 1994-06-09 1995-12-05 Motorola, Inc. Complex arithmetic processor and method
JPH1055352A (ja) * 1996-08-08 1998-02-24 Fuji Xerox Co Ltd 浮動小数点数累積加算装置
US6018755A (en) * 1996-11-14 2000-01-25 Altocom, Inc. Efficient implementation of an FIR filter on a general purpose processor
US5909572A (en) * 1996-12-02 1999-06-01 Compaq Computer Corp. System and method for conditionally moving an operand from a source register to a destination register
US5941938A (en) * 1996-12-02 1999-08-24 Compaq Computer Corp. System and method for performing an accumulate operation on one or more operands within a partitioned register
US6061521A (en) * 1996-12-02 2000-05-09 Compaq Computer Corp. Computer having multimedia operations executable as two distinct sets of operations within a single instruction cycle
US6173366B1 (en) 1996-12-02 2001-01-09 Compaq Computer Corp. Load and store instructions which perform unpacking and packing of data bits in separate vector and integer cache storage
US6009505A (en) * 1996-12-02 1999-12-28 Compaq Computer Corp. System and method for routing one operand to arithmetic logic units from fixed register slots and another operand from any register slot
US6446193B1 (en) * 1997-09-08 2002-09-03 Agere Systems Guardian Corp. Method and apparatus for single cycle processing of data associated with separate accumulators in a dual multiply-accumulate architecture
GB2363924A (en) * 2000-06-20 2002-01-09 Virata Ltd Processor for FIR filtering

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4967343A (en) * 1983-05-18 1990-10-30 International Business Machines Corp. Pipelined parallel vector processor including parallel configured element processors for processing vector elements in parallel fashion
JPS61160176A (ja) * 1984-12-29 1986-07-19 Hitachi Ltd ベクトル処理装置
US4720780A (en) * 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
JPH0622035B2 (ja) * 1985-11-13 1994-03-23 株式会社日立製作所 ベクトル処理装置
KR920004772B1 (ko) * 1987-05-14 1992-06-15 후지쓰 가부시끼가이샤 순환 방정식을 고속으로 처리하는 벡터 프로세서

Also Published As

Publication number Publication date
US5307300A (en) 1994-04-26
JPH04245324A (ja) 1992-09-01

Similar Documents

Publication Publication Date Title
JP3592230B2 (ja) データ処理装置
JP3237858B2 (ja) 演算装置
JPS6313215B2 (ja)
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPH03286332A (ja) デジタルデータ処理装置
EP0497485A2 (en) Computer for implementing two-operand instructions
JP2812610B2 (ja) パイプライン制御方式
JPH09305401A (ja) コンピュータ及びコンパイラ
JP3088956B2 (ja) 演算装置
JP2760808B2 (ja) データ処理装置
JP2583614B2 (ja) ベクトル演算装置
JPS6153754B2 (ja)
JP2001034603A (ja) 積和演算処理装置
JP2982129B2 (ja) マイクロプログラム制御装置
JPH0218732B2 (ja)
JPH07191955A (ja) データ駆動型情報処理装置
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JPS6028014B2 (ja) マイクロプロセツサ
JPS60144874A (ja) ベクトルデ−タ処理装置
JPS6015969B2 (ja) マイクロ命令アドレス生成方式
JPH1074190A (ja) 並列プロセッサ
JPH0668055A (ja) ディジタル信号処理装置
JPS622363A (ja) 演算装置
JPS6027966A (ja) データ処理装置
JPH06103024A (ja) Cpuにおけるビット演算用制御装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010918

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

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees