JPS6184736A - 種々のモ−ドでデ−タ処理を行うプロセツサ - Google Patents

種々のモ−ドでデ−タ処理を行うプロセツサ

Info

Publication number
JPS6184736A
JPS6184736A JP60179224A JP17922485A JPS6184736A JP S6184736 A JPS6184736 A JP S6184736A JP 60179224 A JP60179224 A JP 60179224A JP 17922485 A JP17922485 A JP 17922485A JP S6184736 A JPS6184736 A JP S6184736A
Authority
JP
Japan
Prior art keywords
processor
data
instruction
multiplication
mode
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
JP60179224A
Other languages
English (en)
Other versions
JP2664666B2 (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.)
Telecommunications Radioelectriques et Telephoniques SA TRT
Original Assignee
Telecommunications Radioelectriques et Telephoniques SA TRT
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
Priority claimed from FR8412799A external-priority patent/FR2569285B1/fr
Priority claimed from FR8412801A external-priority patent/FR2569286B1/fr
Application filed by Telecommunications Radioelectriques et Telephoniques SA TRT filed Critical Telecommunications Radioelectriques et Telephoniques SA TRT
Publication of JPS6184736A publication Critical patent/JPS6184736A/ja
Application granted granted Critical
Publication of JP2664666B2 publication Critical patent/JP2664666B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/52—Multiplying; Dividing
    • G06F7/523—Multiplying only
    • G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/4806—Computations with complex numbers
    • G06F7/4812—Complex multiplication
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/544—Methods 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 for evaluating functions by calculation
    • G06F7/5443—Sum of products
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48—Methods 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/57—Arithmetic 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003—Arrangements for executing specific machine instructions
    • G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001—Arithmetic instructions
    • G06F9/30014—Arithmetic instructions with variable precision
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003—Arrangements for executing specific machine instructions
    • G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181—Instruction operation extension or modification
    • G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804—Details
    • G06F2207/3808—Details concerning the type of numbers or the way they are handled
    • G06F2207/3828—Multigauge devices, i.e. capable of handling packed numbers without unpacking them
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804—Details
    • G06F2207/386—Special constructional features
    • G06F2207/3884—Pipelining

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 本発明は命令レジスタに位置するプログラム−メモリか
らの命令に従って少なくとも1つのデータラインにより
転送されるデータを種々のモードで処理するに当り、後
続のデータの処理を予め宣言されたモードで実行するた
めにモード宣言命令により処理状態をトリガする手段を
具えるプロセッサに関するものである。
この種のプロセッサは既知の装置であり、多数の用途が
ある。これら用途の1つとして直交搬送波によるデータ
伝送がある。即ち、データは、実数部と、単精度及び倍
精度でも実データで行うべき処理に対する能力を考慮す
る虚数部とを有する複素数値とみなされている。
既知のプロセッサによって比較的簡単に単精度で実数値
の演算を行うが、複素データの処理を必要とする場合に
は、論理演算及び種々の中間計算結果のワーキングメモ
リ内又は演算レジスタ内のルーチングの全部を命令する
完全なセットの命令をプログラムメモリに形成する必要
がある。
本発明の目的は多数の追加の命令を必要とすることなく
種々のモードでデータを処理し得る上述した種類のプロ
セッサを提供せんとするにある。
本発明は命令レジスタに位置するプログラム−メモリか
らの命令に従って少なくとも1つのデータラインにより
転送されるデータを種々のモードで処理するに当り、後
続のデータの処理を予め宣言されたモードで実行するた
めにモード宣言命令により処理状態をトリガする手段を
具えるプロセッサにおいて、命令ラインを前記命令レジ
スタに接続し、モード回路を前記命令ラインに接続して
前記プログラムメモリに記憶されクロック装置にモード
信号を転送する命令に含まれ検出されたモードにより決
まる処理状態信号をトリガするモード宣言命令を検出し
、前記モード信号及び処理状態信号を前記命令ラインに
接続された制御モード兼ボロー管理回路に転送するよう
にしたことを特徴とする。
本発明によれば、プログラムの作業が著しく軽減される
利点がある。その理由は単精度モード以外のモードで作
業を行う際、単一の命令によって以前に宣言したモード
でこの宣言されたモードにより課せられた種々の中間計
算に関連することなく完全な演算を行うからである。
上述した用途において、実施すべき処理には多数の乗算
が含まれる。上述した種々のモードで実現し得るように
しするためには、本発明によってもその主題であるプロ
セッサに特に好適な乗算装置を提供する。
又、本発明によるプスセッサに好適な乗算装置は宣言さ
れたモードに依存するオペランドを乗算ユニットの入力
側に供給して乗算結果を得るために設けられた各々が1
つのオペランドに割当てられた一連の入力レジスタと、
複素モードで特に実現される加減算ユニットに関して作
動する一連の出力レジスタとを具えることを特徴とする
。
図面につき本発明の詳細な説明する。
第1図に示す本発明プロセッサには論理演算装置10を
設ける。この論理演算装置には16ビツトオベラント入
力側子A、16ビツトオペランド入力側子B、ボロー入
力側子Rε、及び実行された演算の結果が16ビツトで
現れる出力端子SAL[Iを設ける。
これら演算の性質は制御コード入力側子Kに供給される
゛alu″′コードに依存する。又、論理演算装置10
にはその状態コードを発生する出力端子STを設ける。
この論理演算装置10にはそのオペランド入力側子Aに
第1図に示すように接続された2進ンフト装置12 (
BARREL 5HIFT[l:R)を設ける。
かように2進シフト装置12に結合された論理演算装置
10は標準の型式のものとすることができ、これにより
5ビツト2進ワードの形態で現れる” alu ”コー
ドに従って表Iに示す演算を行い得るようにする。小文
字で表されるニューモニツクコードはこの2進ワードに
相当する。又、量(RTE ’)は入力側子RBに供給
される信号の値を示す。
更に表■には出力端子STに現れるデータの情報をも示
す。即ちデータ” sr”は出力端子5ALUにおける
数の符号を示し、”rt″′はボロー〇値を示し、” 
z″′は出力端子SAL[Iの数が零に等しい場合を示
し、” ov ’″はオーバーフローのある場合を示し
、” tnov″′は記憶されたオーバーフローを示し
、” aov ”は値5A15■5A14を示し、ここ
に5A15及び5A14は5ALUレジスタ(出力端子
SAL[I)  に含まれる数の最上位2進ビツトを示
し、記号■は゛排他的[IR”演算を示す。
尚、表■において記号+、・、及び■は夫々ニューモニ
ックコード” tau ” 、”let ”、” xo
u ”に対する論理OR1論理AND及び排他的OR演
算を表わす。
オペランドA及びBはメモリ15及び16から夫々取出
し、これらメモリにはアドレス回路17及び18をそれ
ぞれ接続する。これらメモリには書込みモード又は読出
しモードの何れかにおける信号WEと、バリデーション
信号(夫々C3I及びC32)とを夫々供給する。メモ
リ15の出力端子を出力レジスタ19、マルチワイヤラ
イン(本例では16ワイヤ) BLISX及び2進シフ
ト装置12を経てオペランドAの入力側子に接続する。
同様にメモリ16の出力端子を出力レジスタ20、マル
チワイヤライン(16ワイヤ) B[ISY及びマルチ
プレクサ21を経てオペランドBの入力側子に接続する
。出力レジスタ5ALUに含まれる結果は先入れ先出し
型のメモリ25又は1組のアキュムレータ27に記憶し
得るようにする。出力マルチプレクサ30によって、論
理演算装置10により実行され、メモリ25又はアキュ
ムレータ27或いはメモリ15及び16に記憶され又は
記憶されていない演算の結果のルーチングを行い得るよ
うにする。この目的のために、マルチワイヤラインBL
ISZを出力マルチプレクサ30の出力側に接続すると
共にメモリ15及び16に夫々割当てられた入力レジス
タ31及び32に接続する。更に2個の追加の出力レジ
スタ33及び34をメモリ15及び16に対して夫々設
けてその出力側とマルチワイヤラインBUSY及びBt
lSXとの間を夫々接続し得るようにする。
論理演算装置10の出力側を、アキュムレータ装置27
の入力側、FIFOメモリ25の入力側及び多数の入力
側子を有するマルチプレクサ30の成る入力側子に夫々
接続する。これがため、マルチワイヤラインBtlS2
はFjFOメモリ25の出力側、論理演算装置10の出
力側、レジスタ74の出力側及びアキュムレータ装置2
7の出力側に夫々接続されるようになる。
又、アキュムレータ装置27の出力側をマルチプレクサ
21を経て論理演算装置10のオペランド入力側子已に
接続する新たな接続ラインを設ける。
この接続ラインを設けることによって、バイブラインン
ステムによるアキュムレーションを行うことができる。
即ち、アキュムレータ装置27に含まれる数を、ライン
パスBUSX、 BUSY又はBljSZを用いること
なく論理演算装置10のオペランド入力側子已に転送す
ることができる。従って何等の処理時間を費やすことな
くこれらラインバスにより転送されたデータに対する新
たな演算、例えば乗算装置250〈第9図参照)による
乗算を行うことができる。
第1図のプロセッサの完全な演算はプログラムメモリク
52によりアドレスされたプログラムメモリ50に含ま
れる一連の命令によって制御する。実行される命令を命
令レジスタ54に記憶し、この命令レジスタ54の出力
側をマルチワイヤ(本例では32ワイヤ)ラインB[、
lSIに接続する。このマルチワイヤラインB[ISf
から2個のデコーダ55及び56により信号C3I及び
CS2を発生させてメモリ15及び16がこのラインB
[、lSIにより転送された命令によって含意されるか
又は含意されないことを認識し得るようにする。
第1図に示すプロセッサの演算をクロック装置60の周
波数で実行する。
本発明によれば、種々のモード(特に単精度モード、倍
精度モード、複素演算モード)で実行されるプロセッサ
に、クロック装置60に含まれモード宣言命令(第2図
参照)によりトリガされる処理フェーズ(位相)(φ0
.φ1.φ2.φ3.−−−−)を発生する手段と、次
の命令が宣言モードで実行されるモード表示を行う手段
(モード回路62)とを設ける。各フェーズφ0.φ1
.φ2.φ3の時間間隔はTT (第3図参照)に等し
くする。これらフェーズ信号は1組のワイヤφ0−3に
より転送する。
モード宣言命令は2進位置IO及び11に位置するコー
ドCI (11)により特徴付けられる。即ち位置18
及び■9てはモードを規定する2進値は次に示す通りで
ある。
+8=Of9=1   単精度モート 18=1  19=O倍精度モード 18=1  19=l   複素演算モードモード回路
62は、デコーダ兼記憶回路(図示せず)によって出力
側に接続されたワイヤSP、 CX、 OPの何れかに
論理値パ1″′のパーマネント論理信号を発生する。ワ
イヤSP、 CX、 DPの組をrA OD とする。
クロツタ装置60によって周期比が0.5の信号を発生
し、これら信号を単精度モードの場合には第3a図に示
し、複素演算モード又は倍精度モードの場合には第3b
図に示す。第3a図から明らかなように信号φ0は信号
φ2に等しくし、その組合せ信号をφ02とし、同様に
信号φ1を信号φ3に等しくし、その組合せ信号をφ1
3とし、信号φ0.φ2を信号φ1及びφ3に対し逆位
相とし、これら信号が有効となる期間をTTに等しくす
る。このクロック装置60によってメモリ15及び16
に対し1tlE信号を発生する。
倍精度モードに対し、且つ複素演算においては全部が周
期比0.25の信号00乃至03はこれら信号が有効と
なる期間TTに等しい値だけ位相推移される。
論理演算装置10をこれら種々のモードで演算させるた
めには第1図に示すように命令コード兼ボロー管理回路
70及びステータス(状態)レジスタ管理回路72を設
ける。ステータス(状態)レジスタは記号74で示す。
このレジスタ74によてそのRTR及びRTI ワイヤ
にモードによって異なる重みを有するボロー値を発生す
る。
アドレス回路17及び18には第4図に示す種々の上述
したモードで演算を行う手段を設ける。
斯かる第4図における90はメモ1J15(16)用の
アドレスを含んでいるレジスタを表わし、このレジスタ
90はBUSIラインに接続される回路92によってロ
ードされる。なお、回路92は本発明の要部ではないの
でこれについては詳述しないものとする。
レジスタ90内に含まれるすべての2進素子はメモリ1
5(16)用のアドレスコードを単精度モードで形成し
、またこれにより形成されたアドレスコードの最下位2
進素子は複素モード又は倍精度モードでクロック信号と
置換される。この場合、斯かるタロツク信号は信号φ1
及びφ2を入力側子にて受信する゛OR′″ゲート96
によって形成する。2−入力マルチプレクサ94の一方
の入力側子は、最下位ビットを含んでいるレジスタ90
の位置に接続し、他方の入力側子には信号φ2を供給し
、マルチプレクサ94の制御端子には信号SPを供給す
ることにより、このマルチプレクサによって一方の単精
度モードと、他方の複素兼倍精度モードとの間でのアド
レッシングの変更を行うことができる。
従って、複素モードでは連続アドレスで配置される実数
及び虚数オペランドをアドレスすることができる。例え
ば、実数部は偶数アドレスに配置され、かつ虚数部は奇
数アドレスに配置され、これは自動的に行われる。この
ことは最下位ビット及び最上位ビットに対して倍精度モ
ードの場合についても云えることである。
本発明について詳述する前に、本発明に関連する命令の
構成につき説明する。これらの命令は指標によって命令
の第1位置に配置される初期コードCII、 CI2.
 CI3及びCI4によって特徴付けられる。
ニューモニック・コードによって伴われる種々のディジ
クルコードを指標として下記に示す。
CIl’00      :0PIN CI2+too     :0PDI CI3:10110    :OPIMCI4:101
11    :DECAL表■は種々のC0DALtl
に関するIIO〜114にふける2進素子の値を示した
ものである。
第6図に詳細に示した制御コード兼ボロー管理回路70
によって表■に示した演算を実行することができる。
なお、 Re(A)  : Aの実数部であり、これはAの虚数
部の前に発生する。オペランド入力AP (1/2)に
おけるI、 (A):Aの最上位部であり、これはAの
最下位部の後に発生する。オペランド入力Aにおけるf
(A)−−−−Re(B) 、I、 (B)。
F (B)及びf (B)は上述した所と同じである。
RTR:単及び倍精度モードにも用いられる実数部に対
するボローである。
RTI   :虚数部に対するボローである。
回路70によって処理すべき入力コードはB[ISlラ
インからか、又はレジスタ99を経てBIJSXライン
からのいずれかから到来する。
しかし、B[JSXラインから到来するコードはB[l
S[ラインから到来するC0DALUコードに依存させ
る。
これらのC0DALUコードはデコーダ回路100(第
6図)によって復号化され、この復号結果(即ち、信号
Fl、F2及びF3)を信号φ1によって定められる時
間に発生させるために、上記デコーダ回路100にはレ
ジスタ101を後続させる。デコーダ回路100の目的
は下記のC0DAL[lコードを復号化することにある
。
表■ 信号F3はC0DALIJ:CDI及びCD3を処理す
る場合には第1状態にある。この信号がANDゲート1
05を開(ため、BUSXラインによって搬送されるデ
ータは、ゲート105の他方の入力側子に供給れるφ2
信号が有効となる場合にレジスタ99に記憶される。
信号F1及びF2は3つの入力側子EI、E2及びC3
を有しているマルチプレクサ110を制御する。レジス
タ99の一群の出力端子はマルチプレクサ110の人−
力端子E1に接続し、マルチプレクサ110の入力側子
E2には、ユニット(論理演算装置)10によって実行
すべき演算が必要とされないことを意味する” nap
″′コードに和尚する信号を永久に供給し、マルチプレ
クサ110の入力側千日は命令の位置110〜114に
対応するBUSIラインのワイヤに接続する。
従って、コードC0DALLI = CDIの場合には
、マルチプレクサ110の入力側子E1と出力端子Sと
の間が接続され、C0DALU = CD2の場合には
、マルチプレク110の入力側子B1と出力端子Sとの
間が接続され、C0DAL[I = CD3の場合には
、マルチプレクサ110の入力側子E2と出力端子Sと
の間が接続され、かつC0DALU = CDI、 C
D2及びCD3の場合には、入力側子B3と出力端子S
との間が接続される。
マルチプレクサ110の出力端子に現れる種々のコード
はデコーダ120によって復号化され、このデコーダは
その種々の出力端子5O−37に信号を発生する。これ
らの信号は″0フリップーフロップ″レジスタ122 
に供給され、このレジスタのタロツク入力側子は信号φ
1を受信する。
レジスタ122 は、その出力端子5LO−3L7に現
れる信号をデコーダ120の出力端子SO〜S7に現れ
る信号に対応させる。
ユニット10のに入力側子に供給されるコードは、2入
力ORゲート128の出力端子及びレジスタ122の出
力端子SLI〜SL4に現れる信号により形成される。
ORゲート128の一方の入力側子はゲート122の出
力端子SLOに得られる信号を受信し、他方の入力側子
はANDゲート130からの出力信号を受信する。2個
の入力側子を有しているANDゲート130の一方の入
力側子はレジスタ122の出力端子SL5に現れる信号
を受信し、他方の入力側子はORゲート132の出力信
号を受信する。このORゲート132の2つの入力側子
は信号φ0及びφ3をそれぞれ受信する。ユニット10
のに入力側子に供給される信号をそれぞれ信号SO’、
St ’、S2 ’、S3 ’、S4 ’と称する。
デコーダ回路125はユニット10のRε入力側子に対
するボロー(借り)を管理し、斯かるデコーダ回路はレ
ジスタ122の出力端子SL5. SL6. SL7か
らの信号と、ステータスレジスタ74かろの信号RTR
及びRTI と、1tlOD信号を受信する。
デコーダ回路120に供給されるコードSIO,Sll
。
SI2. SI3及びS04を呼び出す場合には上記回
路120を次のような動作をすべく配線する。
5O=SIO 3L=SII S2=SI2 S3=SI3 S4=SI4 即ち、これらのビットは実際上ユニット10に直接転送
される。
信号S5は複素モードでのみ、しかも動作、41 + 
B ”の場合にのみ有効となる。なお、C9はBの共役
値を表わし、C0DAL[IニューモニックコードはA
DDCであり、これに対応する2進ワードは(0101
0)である。これがため信号S5はつぎのようになる。
即ち、 S5 =TrTr・+11  ・W−113・W信号S
6は、C0DALUコードがボローの完了、即ち、コー
ドA)、IB、 BMA、 、へPBC,BMAC,A
PBC及びADDCを含む場合に有効となる。
信号S7はC0DALUコードがボローII I I+
、即ちニー トAMP、 81.IAを含む場合に有効
となる。
プログラマブル論理回路網によって形成され、かツワイ
ヤRTR,RTr、 MODおよちびφ0−3に接続さ
れるボロー管理回路125 はデコーダ回路120 と
同様に表v1表■及び表■を用いて容易にプログラムす
ることができる。RTRが単精度及び倍精度モードにお
けるボローの値及び複素モードにおける実数ボローの1
直を転送し、RTI が複素モードにおける虚数ボロー
の値を転送することは明らかである。
第7図はステータスレジスフ74及びその管理回路72
を詳細に示したものである。ステータスデータはユニッ
ト10から到来する。これらのデータは”sr”、  
”rt−”   ”、  ”ovf ”、  ”mov
”。
” aov ”と称したものである。これらの種々のデ
ータは動作モードに従ってプリップ−フロップ151゜
152、−−−−158に適切に記憶させる必要がある
。上記データを記録させるためには各プリップ−フロッ
プのクロ′ツク入力側子に信号を供給する必要があり、
この信号はいずれも2個の入力側子を有しているORゲ
ート161〜168によって形成する。これらのORゲ
ートの第1入力側子はANDゲート170の出力端子に
接続する。ANDゲート170は2つの入力側子を有し
ており、これはレジスタ管理回路72の一部を形成する
。ANDゲート170の一方の入力側子は信号φ2を受
信し、他方の入力側子はデコーダ回路180の出力信号
を受信する。Bustラインに接続されるデコーダ回路
180 は、第5図に示したタイプの命令中におけるC
oDALU位置(表■参照)にSTAコードを見出す場
合に有効出力信号を発生する。デコーダ回路180の出
力信号はマルチプレクサ182の制御端子にも供給する
。マルチプレクサ182は2個の入力側子を有しており
、その一方の入力側子は8tlSXラインに接続して、
デコーダ回路180の出力端子に現れる有効信号がフリ
ップ−フロップ151〜158のデータ入力側子をBI
JSXラインに分岐させ、かつこのラインによって転送
されるデータが上記プリップ−フロップに記憶されるよ
うにする。
マルチプレクサ182の他方の入力側子は論理回路19
0を介してユニット10のステータス出力端子STに接
続する。斯かる論理回路190はORゲート161〜1
68の第2入力側子への信号81〜B8も発生する。
この論理回路190はBUSIラインから到来するデー
タ、クロック信号φ0−3及び動作モードデータ!、l
 ODを受信する。論理回路190にはフリップ−フロ
ップ195.196.197及び198 も関連させる
。
論理回路190はつぎのようなことを考慮して容易に設
計することができる。
A)単精度モードニ ーユニット10のステータス出力端子STに現われるデ
ータ” sr ”は、NOP、 CD3. STAを除
くすべてのC0DALUコードに対する信号φ3の縁部
によってフリップ−フロップ151(SR)  にロー
ドさせる;−フリップーフロップ152(Sr)  に
対するローディングを禁止させる; 一ユニット10のST出力端子に現われるデータrr 
rt 11は、NOP、 CO3,STAを除くすべて
のCO[]A4.Uコードに対ニー信号φ3の縁部によ
ってフリップ−フロップ153 (RTR)にロードさ
せるニーフリップ−フロップ154(RTI)に対する
ローディングは禁止させる; 一ユニット10のST出力端子に現れるデータ゛′Z′
″は、NOP、 CD3. STAを除くすべてのC0
DALUコードに対する信号φ3の立上り縁によってフ
リップ−フロップ155 (Z)にロードさせる;−デ
ータ”ov”、”   ”、”aov” は、NOP、
 CD3゜0v STAを除くすべてのC0DALtlコードに対する信
号φ3の立上り縁によってフリップ−フロップ156(
OV) 、157(MOV)及び158 (AOV) 
ニソれぞれロードさせる。
B)複素モードニ ーデータ″sr ”は、一方では信号φ3の縁部によっ
てフリップ−フロップ151 にロードさせ、他方では
NOP、 CD3. STAを除(すべてのC[]DA
LUコードに対ニー信号φ1の縁部によってフリップ−
フロップ152(Sl)  にロードさせる;−データ
゛’ rt ”は、一方では信号φ3の縁部によってフ
リップ−フロップ153 (RTR) !コロードさせ
、他方ではNOP、 CO3,STAを除くすべてのC
0DALtlコードに対する信号φ1の縁部によってフ
リップ−フロップ154(RTI)にロードさせる;−
データ” ov ’″ II   II、 +1 ao
v 11は、信号φ3Ov によって最初はレジスタ196.197及び198にそ
れぞれロードさせ、ついで信号φ1で(OV +ov)
をフリップ−フロップ156 に、(AOV + ao
v)をフリップ−フロップ157 に、(MOV + 
nov)をフリップ−フロップ158 にロードさせる
ニーデータII ZI+ は信号φ3でフリップ−フロ
ップ195にロードさせ、かつ出力信号Zを信号φ1で
信号Zと合成して、フリップ−フロップ195に信号φ
1における値Z−zをロードさせるようにする。(従っ
てZの値“′1′″は実数及び虚数値の双方がOに等し
いことを示す)。
C)倍精度モードニ ーデータ”sr″”及び’ rt ”は、信号φ1の縁
部にてフリップ−フロップ151(S、R)  及び1
53(RTR)にロードさせる; 一デーク゛’ ov ”、 ” mov ”及び’ a
ov″″は、信号φ1の縁部にてフリップ−フロップ1
56 (OV) 、157 (MOV)及び158(A
OV)!、:ロー)’すl、 ;−データ“′Z′″に
対しては最下位の0により信号φ3で最初にロードさせ
たフリップ−フロップ195を再び用い、ついでこのフ
リップ−70ツブの出力信号とデータ2の最上位値との
間の論理AND演算の結果をフリップ−フロップにロー
ドさせる。
第8a及び8b図は単精度モード及び複素モード兼倍精
度モードにおける実行命令の実行の仕方を示すタイミン
グ線図である。
単精度モードの場合には、時間tQに命令J。が生じ、
この命令はプログラムカウンタの内容によって与えられ
たアドレス“n ”に割当てられるプログラムメモリ5
0から到来する。斯かるアドレスは時MtOの以前にお
ける時間1−、にて既に発生される。時間toからは位
相φ0−2にわたってデータがBLISX及びBUSY
ラインに転送される。位相φ0−2に後続する位相φ1
3の期間中並びにその他のすべてのφ13位相の期間中
にはB[ISX及びB[、lSYラインは用いられず、
これらのラインはプレロード状態に首かれる。命令J、
、は帆オペランドを包含し、これらのオペランドは位相
φ02の開始時における時間t1にBUSX及びeUs
yラインによって転送される。
J7命令によって命令された演算結果SA、は時間t2
にユニット10の出力レジスタ5ALUに見い出される
。命令J。によって、マルチプレクサ30の出力端子に
得られるデータをメモリ15及び16に転送させること
もできる。ついで位相φ13が開始する時間t3からZ
nデータが転送され、このφ13の位相期間中にはBU
SZラインが利用でき、位相φ02がプレロード状態で
占められる。第8図にはメモリ15及び16の書込みを
規定する信号1!IEも示しである。メモリ15及び1
6は命令サイクルで読取り又は書込み状態に置かれる。
これがため動作をつぎのように要約することができる。
即ち、 プログラムカウンタ52は各命令の開始時にインクリメ
ント(増分)され、これはつぎの命令(n+1)のアド
レスを用意して、命令J、、の実行と平行してプログラ
ムメモリをアドレスするためである。命令JI、のソー
スオペランドはつぎのサイクルにて利用でき、命令J、
、の演算論理オペランドもサイクル(n+1)にて有効
となる。このことからして、命令JnでBtlSIライ
ンによってセーブされるデータは先の計算結果である。
これがため、プロセッサには3つのパイプラインが存在
して、下記の3つの動作が同時に行われる。即ち、−命
令J、、+1に対するプログラムカウンタ52の増分、 一命令Jnのオペランドに対する探索、−命令J(n−
1)によって要求されるユニット10の演算。
複素兼倍精度モードにおけるプロセッサの演算を第8b
図につき説明する。
BtlSX及びBUSYラインは位相φ0及びφ2の期
間中にデータを転送し、またBUS2ラインは位相φ1
及びφ3の期間中にデータを転送する。なお、命令JI
nは時間tlOに現れ、この命令は複素又は倍精度モー
ドに実行されるべきものとする。斯かる命令は、複素モ
ードにおけるオペランドの実数部又は倍精度モードにお
ける最下位部を表わすデータOR,を時間tit にB
USX及び8USYラインに出現させる。ついで時間貝
2に開始するつぎの位相φ0の期間中にBtlSX及び
B115Yラインは複素モード又は倍精度モードに応じ
た虚数部または最上位部を転送する。
メモリ15及び16のアドレスコードが変化するように
するのが好適である。最下位の2進素子は、アドレスコ
ードが2つの連続位相φ2及びφ0の期間中に同じとな
らないようにゲート96(第4図参照)の出力信号によ
って変更させる。ユニット10の出力レジスタ5ALU
は、位相φ3の期間中には時間t13に演算結果を実数
部又は最下位ビットで供給し、位相φ1の期間中には時
間t14に演算結果を虚数部及び最上位ビットで供給す
る。 :i′・BUS2ラインは時間tlsで開始する
位相φ1中、実数部或いは下位複数ビットを転送し、こ
の転送は命令Jlnによって命令される。虚数部および
上位複数ビットは時間t13で開始する位相φ3中に転
送される。種々のメモリ15および16は命令サイクル
中読出しモード或いは書込みモードにされる(信号WE
はデータをメモリ内に書込むことを認定する)。
複素モードおよび倍精度モードにおける動作は次の相違
を有するだけで単精度モードに極めて類似している。J
ln命令に対し実数部或いは下位複数ビットを探索する
のはJln −1命令の虚数部或いは上位複数ビットの
計算と同時に行なわれる。
第9図は本発明によるプロセッサの1好適例を示す。こ
の実施例は”PIPE−LINE ”においてユニット
10と一堵に機能する乗算装置250を存在させた点で
、前述した例とは相違する。この装置250にはBIJ
SXおよびB[ISYラインに接続された16ビツトオ
ベランド用の2つの入力側子252および253が設け
られている。装置250の出力端子154はマルチプレ
クサ255の2つの入力側子の一方に接続され、このマ
ルチプレクサ255の出力端子はユニット10のオペラ
ンド入力側子Aに接続され、このマルチプレクサの他方
の入力側子はBUSXラインに接続されている。
第10図は、乗算装置250の構成を詳細に示す。
この乗算装置は4つの乗算サブユニッ)261 。
262、263および264より成る乗算ユニット26
0から成っている。これらのサブユニットはこれらの入
力側子E)、IAI、 E)、’+A2.6MA3およ
びEMA4に供給される第1の16ビツトオベランドと
これらの入力側子EMAl、εMA2.εMA3および
E ?、l A 4に供給される第2の4ビツトオペラ
ンドとのそれぞれの乗算演算を行なう。
これらのサブユニット261〜264は標準設計のもの
とする為、それらの詳細な説明は必要ないと思われるが
、必要ならばM、ペランジャー (Bellanger
)氏著゛デジタル信号処理(Digital sign
al proces−sing)  ”、特にその第3
43および344頁を参照しうる。
入力側子EiMA1は16ビツト信号用の2つの入力側
子を有するマルチプレクサ270の出力端子に接続され
ている。この入力側子EMAlは信号MIIX1により
制御されるこのマルチプレクサ270の16本の出力ワ
イヤに接続されている。入力側子EMAIも、16ビツ
ト信号用の2つの入力側子を有し信号MUX2により制
御されるマルチプレクサ272の出力端子に接続されて
いるも、この入力側子EMB1はこのマルチプレクサ2
72の4本の出力ワイヤに接続されている。これら4本
の出カブイヤはマルチプレクサ272の出力端子に得ら
れる数の下位4ビツトを転送する。入力側子E M B
 2は上記の数の上位4ビツトを、遅延TTを導入する
遅延ユニット275を経て受け、入力側子E ki B
 3は、それらの遅延TTを導入する2つの遅延ユニッ
ト276および277を経て上記の上位4ビツトに続(
4つのビットを受け、入力側子E M B 4は、それ
ぞれ遅延TTを゛導入する3つの遅延ユニッ) 278
.279および280を経て残りの4ビツトを受ける。
入力側子8MB2 、ε:4B3およびE +J B 
4は、マルチプレクサ270の出力端子に縦続接続され
た遅延ユニッl−281,282および283の出力端
子にそれぞれ接続されている。これらの遅延ユニット2
81.282および283 もそれぞれ遅延TTを導入
する。
乗算サブユニットの出力は2部分に分割されており、乗
算サブユニットの各々に対する一方の部分PLI、 P
L2. PL3およびPL4はこれらのサブユニットか
ら生じる下位4ビツトを伝送し、これらが相俟って乗算
の結果得られる下位16ビツ1−Pr15〜Proを形
成する。しかし、部分PCIに対し遅延ユニット285
.286および287が、部分PL2に対し遅延ユニッ
ト288および289が、部分PL3に対し遅延ユニッ
ト290が存在し、これら遅延ユニットの各々が遅延T
Tを導入することに注意する必要がある。
サブユニット261.262.263および264の各
々に対する出力の他方の部分はPMl、 PM2. P
M3およびPM4である。これらの部分は16ビツトを
転送する。出力信号PMI、PM2およびPM3はサブ
ユニット262゜263および264にそれぞれ供給さ
れる。出力PM4は乗算の結果の上位ピッ)Pr31〜
Pr16を表わす。
2人カマルチプレクサ320は“F”にセットされた際
にビットPr31〜Pr16を、” f″′にセットさ
れた際にピッ) Pr15〜PrOを選択し、この選択
は制御信号!、j [I X 3に依存する。このマル
チプレクサ320の出力端子は、制御信号M tl X
 4を受けて○″或いは′A″にセットされるマルチプ
レクサ322の2つの入力側子の一方と、信号L RM
Tを受ける記憶制御端子を有するレジスタ324と、セ
ット制御信号SPを受けるマルチプレクサ325の2つ
の入力側子の一方とに接続されている。マルチプレクサ
322の他方の入力側子は数゛0″′を16ビツトで受
け、“0″にセットされると、この数“O″がその出力
端子に現われ、” A”にセットされると、出力端子に
現われる数はマルチプレクサ320から到来する数であ
る。マルチプレクサ322およびレジスタ324の出力
端子は加算−減算ユニット326の(−)および(+)
入力側子にそれぞれ接続されており、この加算−減算ユ
ニット326にはこれを加算状態或いは減算状態、すな
わちレジスタ324の出力端子に存在する数からマルチ
プレクサ322の出力端子に存在する数を減算する状態
にセットする為の”+/−’″信号を受ける制御端子が
設けられている。このユニット326の出力端子は一方
では、マルチプレクサ325を経て、記憶制御信号LP
Rを受けるレジスタ328に接続され、他方では、記憶
制御信号LPI を受けるレジスタ330に直接接続さ
れている。これらのレジスタの出力端子はマルチプレク
サ335の2つの入力側子にそれぞれ接続されており、
このマルチプレクサ355には、これを11 R11に
セットしてこのマルチプレクサの出力端子をレジスタ3
28に接続するか或いはLL I I+にセットしてこ
のマルチプレクサの出力端子をレジスタ330に接続す
るための信号MUX5を受ける制御端子が設けられてい
る。マルチプレクサ335の出力端子は乗算装置250
の出力端子を構成する。
入力側子252および253におけるオペランドは乗算
ユニットによって処理される前にレジスタの列を経て転
送する。入力側子252は一方ではレジスタ350に接
続され、他方では縦続接続された2つのレジスタ352
および3540組に接続されており、レジスタ350お
よび354はANDゲート355およびANDゲート3
56から到来する記憶制御信号をそれぞれ受ける。レジ
スタ352の記憶制御信号は信号LaTである。AND
ゲート355はその入力側子に信号φ0および信号CR
X’を受け、ANDゲート356はその入力側子に信号
φ3および信号CRXを受ける。
レジスタ350および354の出力端子はマルチプレク
サ27002つの入力側子に接続されており、このマル
チプレクサは信号M [、I X 1により制御されて
if a11或いは” b″′にセットされる。” a
 ”にセットされると、このマルチプレクサの出力端子
はレジスタ354に接続され、” b ”にセットされ
ると、この出力端子はレジスタ350に接続される。
同様に入力側子253は一方ではレジスタ360に接続
され、他方では縦続接続された2つのレジスタ362お
よび364の組に接続されており、レジスタ360およ
び364はANDゲート365および366から到来す
る記憶制御信号をそれぞれ受ける。レジスタ362の記
憶制御信号は信号LaTである。ANDゲ−ト365は
その入力側子に信号φOおよび信号CRX’を受け、A
NDゲート366は信号φ3および信号CRYを受ける
。レジスタ360および364の出力端子はマルチプレ
クサ272の入力側子にそれぞれ接続されている。この
マルチプレクサ272は信号!、l U X 2により
制御されてa”或いは′b″にセットされる。パa′″
にセットされると、このマルチプレクサの出力端子はレ
ジスタ364に接続され、” b ”にセットされると
、この出力端子はレジスタ360 ニ接続さレル。種々
ノ信号LaT、CRX、 CRX’。
CRY、 cRy二+、1ux1.:、+Ux2.ra
uxt’、:、qux2’、Mux3.paux4゜M
[JX5 ” + / −” 、 LPIおよびLPは
制御回路380および遅延ユニット381.382.3
83.384によって生ぜしめられる。この制御回路は
乗算命令コードC〜)Uに依存する以下の表■に示す機
能を遂行する。この乗算命令コードはビットNo、 0
およびN011が“0″に等しいことで表わされる0P
IN型命令のビット20および21に位置する。コード
C!、I [1は4つの値を取ることができ、その種々
の可能性を表■に示しである。
表   ■ 従って制御回路380は以下の論理式に依存する種々の
制御信号を生じる。
しaT    −φ 2 CRx=IO・11・I20 CRY  =IO・11・+21 MUXI ’ =φ0+φ3士CX MUX2 ’ =φO+φ2+CX MUX3  = (φ0+φ3)  −OPMUX4 
 =CX MUX5  =φ1士φ2 “十/−′″= (φO+φ3)・CxしPI    
=  φ 3 ・SP しPR=(φ 1 ・ SP)+(φ 0 ・SP) 
    ’遅延ユニット381.382は、位相φ1で
作用して信号CRXおよびCRYを遅延させ、これによ
り信号CRX’およびCRY’を形成する伝達フリップ
−フロップである。遅延ユニット383および384は
信号M 11 X 1およびλ1UX2をTT/2だけ
遅延させ、これにより信号M[JXlおよびMUX2を
生せしめる。信号!、IUXIおよび!、1 [I X
 2の値+111+は“b ”へのセツティングが考慮
されていることを表わ、しこれら信号の値” o ”は
” a″′へのセツティングが考慮されていることを表
わす。信号MUX3の値が” 1 ”となることは、“
F ”へのセツティングが考慮されており、信号!、l
 IJ X 3の値が0″′となることは、“f″″へ
のセツティングが考慮されていることを表わす。信号!
、l II X 4の値が1”となることは、“0″′
へのセツティングが考慮されており、信号M U X 
4の値が“0”となることは # A 11へのセツテ
ィングが考慮されていることを表わす。信号)、1 [
I X 5の値が” 1 ”となることは、l(Rnへ
のセツティングが考慮されており、信号MUX5の値が
′0″となることは、“I”へのセツティングが考慮さ
れていることを表わす。信号“+/−”が1に等しいと
、(−)符号が考慮されており、信号パ+/−″′が0
に等しいと、(+)符号が考慮されている。
乗算サブユニット261.262.263および264
の特徴を特定するのが好ましい。
サブユニッI−261,262および263 は5ビツ
ト×16ヒツト演算を2の補数で行なう。5ビツトオペ
ランドの正負符号ビットは強制的に0にする。これらの
サブユニットはこれらの出力端子に20ビツトを生ぜし
める。 。
サブユニット264は4ビツト×16ビツト演算を2の
補数で行ない、出力端子に19ビツトを生ぜしめる。オ
ペランドSおよびPを呼び出す場合、これらに割当てら
れた指標がビ・リドの位置を表わし、    −従って
出力を で表わすことができる。ここにP。およびS。は正負符
号を表わす。最初の丸括弧内の和はサブユニット264
に関するもので、従って4ビツトを有する。
サブユニット261および262間、サブユニット26
2および263間、サブユニット263および264間
にはそれぞれバッファレジスタ401.402および4
03が挿入されており、これらバッファレジスタは回路
60により与えられる信号Hにより動作し、この信号H
はTTに等しい周期を有するということに注意すべきで
ある。
先ず最初、単精度モードで乗算装置250の作動を説明
する。この為に第12および13図を参照する。
乗算を意味する命令JnがBUSIラインに現われる瞬
時ttQ(第12図)を考慮する。次に瞬時tt1でB
USXおよびBUSYラインにオペランドPおよびRが
それぞれ現われ、ゲート355および365の出力端子
における信号が有効となり、オペランドPおよびRが、
信号M[、lX1および!、I LI X 2により適
切にスイッチングされたマルチプレクサ270及び27
2の出力端子に現われる。サブユニット261 は直ち
に、オペランドPとオペランドRの4ビットR3,R2
,R1,ROとの第1の部分乗算を開始し、その結果を
時間TT後に生せしめる。瞬時tt2(第13図)を考
慮するに・、下位ビットPr3. Pr2. Prl、
 PrOはすでに計算されており、出力端子PL1に現
われている(第13図におけるボックス261を参照)
。しかし、この結果はユニット300.301および3
02の遅延の各々の合計に等しい遅延後に得られるだけ
である。
サブユニット262は瞬時tt2で第2の部分乗算を開
始する。オペランドPは依然として入力側子EMA2に
現われ、ビットR7,R6,R5,R4が入力側子EM
B2に現われる。ビットPr7. Pr6. Pr5.
 Pr4は期間TT後に現われる(第13図のボックス
262を参照)。
瞬時tt3では、オペランドPとオペランドRのビット
R11,RIO,R9,R8とが入力側子巳IA3およ
び[EMB3にそれぞれ現われる。その結果(ビットP
r1O。
Pr9. Pr8)が期間TT後に得られる(第13図
のボックス263 を参照)。
瞬時tt4では、オペランドPとビットR15,R1,
,4゜R13,R12とがサブユニット264の入力側
子εMA4およびE +、l 84にそれぞれ現われる
。乗算の完全な結果は乗算サブユニット264の出力端
子PM4と、適当な個数の遅延ユニットにそれぞれ接続
された種々の出力端子PLI、 PL2. PL3. 
PL4とに現われる。しかし、単精度モードでは2進エ
レメントPr3O−−−−−−Pr16のみを考慮する
。この目的の為に、マルチプレクサ320 に信号!、
I UX 3を供給し、この信号によりレジスタ328
が出力端子P M 4と連通ずるようにこのマルチプレ
クサ320をセットする。瞬時tt5では、信号LPR
が有効となり、乗算の結果が信号MtlX5によりR′
″にセットされたマルチプレクサ335を経て出力端子
254に得られるようになる。乗算が命令Jnによって
トリガされる場合でも、その結果は2度の命令後に、す
なわち命令J。4゜に対して得られるだけであるという
ことに注意すべきである。このことは本発明のプロセッ
サをプログラミングする際に考慮する必要がある。
次に乗算装置の演算を複素モードで説明する。
この場合、乗算 (p+ jQ)X (R+ j s) を行なう方法を説明するも、その結果は明らかにC(P
XR)−(QxS))+ J  ((QXR)+(PX
S)〕となる。このことは、4つの乗算PXR;QXS
 ;QXRおよびPXSを行なう必要があるということ
を意味する。
この説明の為に第13図および第14図を参照する。
一方のオペランドに関しては、実数部がレジスタ352
および354を伝達し、虚数部がレジスタ350を伝達
するよにするのが好ましい。他方のオペランドに対して
は、実数部がレジスタ362および364を伝達し、虚
数部がレジスタ360を伝達する。
瞬時ttlO(第14図)で複素モードの乗算を意味す
る命令JJnが現われる。瞬時tt11ではオペランド
PおよびRがBtlSXおよびBLISYラインにそれ
ぞれ得られる。これらのオペランドは直ちにレジスタ3
52及び362内にロードされ、このことを第14図で
(3,52)および(362)を付したライン上に示し
である。期間TTだけ離れた瞬時tt12では、オペラ
ンドPおよびRがレジスタ352および362からレジ
スタ354および364にそれぞれ伝達される。マルチ
プレクサ270および272は適切な門の信号M U 
X 1およびM U X 2によりすでに位置“a”に
セットされており、乗算PXRが第13図に応じて且つ
単精度モードと同じ速度で開始され且つ進行される。
瞬時tB3では虚数部のみのオペランドjQおよびjS
がB[ISXおよびBUSYラインにそれぞれ現われる
。これらのオペランドはレジスタ350および360内
にそれぞれロードされ、マルチプレクサ270および2
72が位置” b”にセットされ、乗算が開始されでマ
ルチプレクサ272を位置“a”にセットし、マルチプ
レクサ270を位置” b″′に維持し、乗算PXSを
行なう為には、マルチプレクサ272を位i ” b 
”にセットし、マルチプレクサ270 は位置” a 
”に維持する。瞬時tt15では新たなオペランドP′
およびR′を複素モードの乗算の為に生ぜしめうる。こ
の演算は前の乗算が終了されるのを待つことなく期間T
T後に開始される。瞬時tt25では乗算PXRの結果
が乗算サブユニットの出力端子Pr3l−−−−−Pr
15に得られる。こ結果は、マルチプレクサ320がす
べての複素モード作動中位置LL F 11にされてレ
ジスタ内にロードされる。瞬時tt26ではQXSの結
果が現われ、この結果は瞬時tt25で減算位置にセッ
トされている加算・減算ユニット326の負入力側子に
マルチプレクサ322を経て供給される。このユニット
326から生じる出力データは乗算の実数部である量P
R−QSを表わす。
この結果は瞬時tt27でレジスタ328内にロードさ
れる。この瞬時tt27では、ビットPr31−−一−
−−Pr16は量QXRを表わし、この量がレジスタ3
24内に直ちにロードされ、ユニット326は加算位置
にセットされる。次に瞬時tt2Bで値PxSが計算さ
れ、瞬時tt29 テ虚数部J C(QxR)+ (P
xS))をレジスタ330ないにロードしうるようにな
る。
マルチプレクサ335はその出力端子に、位相φおよび
φ2中レジスタ328内に含まれている実数部が1尋ら
れ、位相φ3およびφO中レジスタ330内に含まれて
いる虚数部が得られるようにする。
命令JJ、によってトリガされた複素乗算の結果は2つ
の命令後にすなわち命令JJn。2で得られるようにな
るという事実を考慮する必要がある。
最後に倍精度モードでの乗算装置の作動を説明する。こ
の場合、オペランドは16ビツトで組織的に2度現れる
。第1に下傳複数ピッ)(pおよびr)が伝達され、第
2に上位複数ピッ)(PおよびR)が伝達される。実際
には後の説明から明らかなように、乗算装置250は下
位複数ビットを無視し、上位複数ビットで作動を行なう
。しかし、結果(32ビツト)は出力端子254に16
ビツトずつ2度で得られる。最下位ビットは重要ではな
く、実際には31ビツトのみを考慮する。
瞬時tDo (第15図参照)で、倍精度モードでの乗
算作動を意味する命令JK、が現れる。瞬時tt31で
はオペランドの下位複数ビットpおよびrがBUSxお
よびBUSYラインにそれぞれ現われるも、これらは無
視する。瞬時tt32でこれらラインに現れる上位複数
ビットPおよびRはレジスタ350および360内にそ
れぞれロードされ、期待値の結果が瞬時tt33に生じ
る。マルチプレクサ320に供給される適切な命令(M
UX3)によりレジスタ324は乗算結果の下位ビット
Pr15−−−− P、Oの出力端子に接続される。こ
のレジスタ324内にこれら下位ビットがロードされ、
これらと同じ下位ビットが瞬時tt34にレジスタ32
8 内にロードされる。これと同時にマルチプレクサ3
20がその他の位置、すなわち位置II P I+  
にセットされ、レジスタ324が上位ビットPr3l−
−−−P、 16をロードしうるようになる。これら上
位ビットは瞬時tt35でレジスタ330内にロードさ
れる。これらの種々のデータを出力端子254に得られ
るようにする為に、マルチプレクサ335が出力端子2
54をレジスタ328および330に周期的に順番に接
続する(m時tt33およびtt34)  。    
     −池のモードの場合のように、命令JK、、
によって開始した積は2度の命令後に、すなわち命令J
Kn、2で得られる。
【図面の簡単な説明】
第1図は本発明プロセッサの構成を示すブロック回路図
、 第2図は第1図のプロセッサに用いられる命令フォーマ
ットを示す説明図、 第3aおよび3部図はフェーズ信号の状態を示す説明図
、 第4図は第1図のプロセッサの1部であるアドレス回路
の構成を示すブロック回路図、第5図は第1図のプロセ
ッサに用いられる他の命令のフォーマットを示す説明図
、 第6図は第1図のプロセッサの制御管理回路の構成を示
すブロック回路図、 第7図は第1図のプロセッサのステータスレジスタ及び
その管理回路の構成を示すブロック回路図、 第8図は第1図のプロセッサの作動を説明するタイミン
グチャート図、 第9図は乗算装置を有する本発明プロセッサの他の例を
示すブロック回路図、 第10図は本発明による乗算装置の構成を示すブロック
回路図、 第11図は実行すべき乗算を表わす命令のフォーマット
を示す説明図、 第12図は単精度モードにおける乗算ユニットの作動を
示すタイミングチャート図、 第13図は乗算装置の1部分である乗算ユニットにおけ
る計算の態様を示す説明図、 第14図は複素演算モードにおける乗算装置の作動を示
すタイミングチャート図、 第15図は倍精度モードにおける乗算装置の作動を示す
タイミングチャート図である。 10・・・論理演算装置  12・・・2進シフト装置
15、16 ・・・メモリ 17、18  ・・アドレス回路 19、20・・・出力レジスタ 21・・・マルチプレクサ 25・・・FIFOメモリ   27・・・アキュムレ
ータ30・・・出力マルチプレクサ 31.32・・・入力レジスタ 33、34・・・出力レジスタ 50・・・プログラムメモリ 52・・・プログラムカウンタ 54・・・命令レジスタ  55.56・・・デコーダ
60・・・クロック装置  62・・・モード回路70
・・・制御コード兼ボロー管理回路72・・・ステータ
スレジスタ管理回路74・・・ステータスレジスタ 90、99.101・・・レジスタ 92・・・レジスタロード用回路 94・・・2−入力マルチプレクサ 96、128.161〜168 ・・・ORゲート10
0、120.180・・・デコーダ回路105、130
.170 ・・・ANDゲート110、182・・・マ
ルチプレクサ 122・・・II OII フリップープロップジスタ
125・・・デコーダ回路、(ボロー管理回路)151
〜158.195.198・・・フリップ−フロップ1
90・・・論理回路   250・・・乗算装置255
、270.272.320.322.325.335・
・・マルチプレクサ260・・・乗算ユニット 261、262.263.264・・・乗算サブユニッ
ト275〜283.285〜290.381〜384・
・・遅延ユニット324.328.330.350.3
52.354.360.362,364・・・レジスタ
326・・・加算減算ユニット 380・・・制御回路 401、402.403・・・バッファレジスタ表 ■ iii精度モード 表 〜1 イ8拍度モード

Claims (1)

  1. 【特許請求の範囲】 1、命令レジスタに位置するプログラム−メモリからの
    命令に従って少なくとも1つのデータラインにより転送
    されるデータを種々のモードで処理するに当り、後続の
    データの処理を予め宣言されたモードで実行するために
    モード宣言命令により処理状態をトリガする手段を具え
    るプロセッサにおいて、命令ラインを前記命令レジスタ
    に接続し、モード回路を前記命令ラインに接続して前記
    プログラムメモリに記憶されクロック装置にモード信号
    を転送する命令に含まれ検出されたモードにより決まる
    処理状態信号をトリガするモード宣言命令を検出し、前
    記モード信号及び処理状態信号を前記命令ラインに接続
    された制御モード兼ボロー管理回路に転送するようにし
    たことを特徴とするプロセッサ。 2、2進シフト装置に結合可能な論理演算装置を具え、
    両装置によって装置制御ワードに依存する演算を行うプ
    ロセッサにおいて、各命令毎に1個以上の装置制御ワー
    ドを種々の処理状態で生ぜしめ得るようにしたことを特
    徴とする特許請求の範囲第1項記載のプロセッサ。 3、装置制御ワードを命令ライン(BUSI)から到来
    するデータによって決めるようにしたことを特徴とする
    特許請求の範囲第2項記載のプロセッサ。 4、装置制御ワードをデータラインから到来するデータ
    によって決めるようにしたことを特徴とする特許請求の
    範囲第2項記載のプロセッサ。 5、乗算制御ワードにより制御される乗算装置を更に具
    えることを特徴とする特許請求の範囲第1項乃至第4項
    の何れかに記載のプロセッサ。 6、命令“n;1”をアドレスするプログラムカウンタ
    を“パイプライン”システムで演算し、命令“n”をプ
    ログラムメモリの出力側で得ると共に論理演算装置によ
    って命令“n−1”により定義される計算を行うように
    したことを特徴とする特許請求の範囲第5項記載のプロ
    セッサ。 7、ワーキングメモリから前記装置のオペランド入力側
    にデータを供給するために特に用いられる2つの異なる
    データライン(BUSX及びBUSY)を設けるように
    したことを特徴とする特許請求の範囲第5項記載のプロ
    セッサ。 8、前記両装置から到来するデータをワーキングメモリ
    にロードするために特に用いられる第3データライン(
    BUSZ)を設けるようにしたことを特徴とする特許請
    求の範囲第7項記載のプロセッサ。 9、第3データライン(BUSZ)により状態レジスタ
    の内容をワーキングメモリに転送する接続手段を設ける
    ようにしたことを特徴とする特許請求の範囲第8項記載
    のプロセッサ。 10、論理演算装置の出力側に接続されたアキュムレー
    タを具えるプロセッサにおいてこれらアキュムレータの
    データ容量を種々のモードに依存させるようにしたこと
    を特徴とする特許請求の範囲第1項乃至第9項の何れか
    に記載のプロセッサ。 11、論理演算装置の出力側に接続された先入れ先出し
    (FIFO)メモリを具えることを特徴とする特許請求
    の範囲第1項乃至第10項の何れかに記載のプロセッサ
    。 12、宣言されたモードに依存するオペランドを乗算ユ
    ニットの入力側に供給して乗算結果を得るために設けら
    れた各々が1つのオペランドに割当てられた一連の入力
    レジスタと、複素モードで特に実現される加減算ユニッ
    トに関して作動する一連の出力レジスタとを具えること
    を特徴とする特許請求の範囲第1項乃至第11項の何れ
    かに記載のプロセッサに好適な乗算装置。 13、乗算ユニットをカスケード接続された多数の乗算
    サブユニットから形成し、且つ種々の乗算サブユニット
    にオペランド及び中間結果を供給する遅延段を設けるよ
    うにしたことを特徴とする特許請求の範囲第12項記載
    の乗算装置。 14、制御ユニットを設けて一連のレジスタによって新
    たなオペランドを乗算ユニットに供給するか或いは旧オ
    ペランド若しくは新オペランド及び旧オペランドを乗算
    ユニットに供給し得るようにしたことを特徴とする特許
    請求の範囲第12項又は第13項記載の乗算装置。 15、複数のデータバスにより転送されるデータをパイ
    プラインシステムで処理するに当り、上記データバスか
    らデータを受ける2個のオペランド入力端子を有する論
    理演算装置と、入力側が該論理演算装置の出力側に接続
    されたアキュムレータ装置とを少なくとも具えるプロセ
    ッサにおいて、累算を行うために前記アキュムレータ装
    置の出力側を前記論理演算装置のオペランド入力側の1
    つに接続される直接接続ラインを具えることを特徴とす
    るプロセッサ。 16、直接接続ラインを多重回路を経て論理演算装置の
    第1オペランド入力側に接続し、多重回路の他の入力側
    を第1データバスに接続し、論理演算装置の第2オペラ
    ンド入力側を第2多重回路を経て第2データバスに接続
    し、第2多重回路の他の入力側を乗算回路の出力側に接
    続し、乗算回路の第1及び第2入力側を第1及び第2デ
    ータバスに夫々接続するようにしたことを特徴とする特
    許請求の範囲第15項記載のプロセッサ。
JP60179224A 1984-08-14 1985-08-14 プロセッサ Expired - Lifetime JP2664666B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
FR8412799A FR2569285B1 (fr) 1984-08-14 1984-08-14 Processeur pour effectuer suivant differents modes le traitement de donnees et dispositif de multiplication convenant pour un tel processeur
FR8412801 1984-08-14
FR8412801A FR2569286B1 (fr) 1984-08-14 1984-08-14 Processus de signal destine plus particulierement a effectuer des operations de filtrage adaptatif
FR8412799 1984-08-14

Publications (2)

Publication Number Publication Date
JPS6184736A true JPS6184736A (ja) 1986-04-30
JP2664666B2 JP2664666B2 (ja) 1997-10-15

Family

ID=26224110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60179224A Expired - Lifetime JP2664666B2 (ja) 1984-08-14 1985-08-14 プロセッサ

Country Status (5)

Country Link
US (1) US4755965A (ja)
EP (1) EP0173383B1 (ja)
JP (1) JP2664666B2 (ja)
AU (1) AU4614085A (ja)
DE (1) DE3577242D1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05307481A (ja) * 1991-12-07 1993-11-19 Samsung Electron Co Ltd デジタル信号処理システム
US6732132B2 (en) 1996-12-18 2004-05-04 Yamaha Corporation Digital signal processor and digital signal processing system incorporating same

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2617300B1 (fr) * 1987-06-26 1989-12-01 Thomson Semiconducteurs Multiplieur-accumulateur
FR2633127A1 (fr) * 1988-06-17 1989-12-22 Trt Telecom Radio Electr Procede de modulation d'un signal en bande laterale unique et modulateur par lequel est mis en oeuvre le procede
FR2633128B1 (fr) * 1988-06-17 1990-10-05 Trt Telecom Radio Electr Procede de demodulation d'un signal en bande laterale uniq ue et demodulateur par lequel est mis en oeuvre le procede
CA1311063C (en) * 1988-12-16 1992-12-01 Tokumichi Murakami Digital signal processor
US5086407A (en) * 1989-06-05 1992-02-04 Mcgarity Ralph C Data processor integrated circuit with selectable multiplexed/non-multiplexed address and data modes of operation
JP2559868B2 (ja) * 1990-01-06 1996-12-04 富士通株式会社 情報処理装置
EP0499979A3 (en) * 1991-02-16 1993-06-09 Semiconductor Energy Laboratory Co., Ltd. Electro-optical device
EP0540150B1 (en) * 1991-10-29 1999-06-02 Advanced Micro Devices, Inc. Arithmetic logic unit
US5424969A (en) * 1992-02-05 1995-06-13 Fujitsu Limited Product-sum operation unit
DE4218769A1 (de) * 1992-06-06 1993-12-09 Philips Patentverwaltung Verfahren und Anordnung zum Bilden der Summe einer Kette von Produkten
US5371832A (en) * 1992-06-12 1994-12-06 Siemens Aktiengesellschaft Fuzzy logic controller having high processing speed
NL9400607A (nl) * 1994-04-15 1995-11-01 Arcobel Graphics Bv Dataverwerkingscircuit, vermenigvuldigingseenheid met pijplijn, ALU en schuifregistereenheid ten gebruike bij een dataverwerkingscircuit.
FR2718866B1 (fr) * 1994-04-19 1996-05-15 Sgs Thomson Microelectronics Dispositif de calcul arithmétique et logique et procédé de commande.
US5692207A (en) * 1994-12-14 1997-11-25 International Business Machines Corporation Digital signal processing system with dual memory structures for performing simplex operations in parallel
US5732207A (en) * 1995-02-28 1998-03-24 Intel Corporation Microprocessor having single poly-silicon EPROM memory for programmably controlling optional features
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US5983257A (en) * 1995-12-26 1999-11-09 Intel Corporation System for signal processing using multiply-add operations
US5787025A (en) * 1996-02-28 1998-07-28 Atmel Corporation Method and system for performing arithmetic operations with single or double precision
US5778247A (en) * 1996-03-06 1998-07-07 Sun Microsystems, Inc. Multi-pipeline microprocessor with data precision mode indicator
US5752271A (en) * 1996-04-29 1998-05-12 Sun Microsystems, Inc. Method and apparatus for using double precision addressable registers for single precision data
US6170001B1 (en) * 1998-05-27 2001-01-02 Arm Limited System for transfering format data from format register to memory wherein format data indicating the distribution of single or double precision data type in the register bank

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5759245A (en) * 1980-09-26 1982-04-09 Fujitsu Ltd Double-length multiplier
JPS5856040A (ja) * 1981-09-29 1983-04-02 Nec Corp デ−タ処理装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5849881B2 (ja) * 1975-12-05 1983-11-07 株式会社日立製作所 デ−タシヨリソウチ
US4293907A (en) * 1978-12-29 1981-10-06 Bell Telephone Laboratories, Incorporated Data processing apparatus having op-code extension register
US4298936A (en) * 1979-11-15 1981-11-03 Analogic Corporation Array Processor
JPS5776634A (en) * 1980-10-31 1982-05-13 Hitachi Ltd Digital signal processor
US4484301A (en) * 1981-03-10 1984-11-20 Sperry Corporation Array multiplier operating in one's complement format
US4608634A (en) * 1982-02-22 1986-08-26 Texas Instruments Incorporated Microcomputer with offset in store-accumulator operations
US4589067A (en) * 1983-05-27 1986-05-13 Analogic Corporation Full floating point vector processor with dynamically configurable multifunction pipelined ALU

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5759245A (en) * 1980-09-26 1982-04-09 Fujitsu Ltd Double-length multiplier
JPS5856040A (ja) * 1981-09-29 1983-04-02 Nec Corp デ−タ処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05307481A (ja) * 1991-12-07 1993-11-19 Samsung Electron Co Ltd デジタル信号処理システム
US6732132B2 (en) 1996-12-18 2004-05-04 Yamaha Corporation Digital signal processor and digital signal processing system incorporating same

Also Published As

Publication number Publication date
US4755965A (en) 1988-07-05
AU4614085A (en) 1986-02-20
DE3577242D1 (de) 1990-05-23
EP0173383A1 (fr) 1986-03-05
EP0173383B1 (fr) 1990-04-18
JP2664666B2 (ja) 1997-10-15

Similar Documents

Publication Publication Date Title
JP2664666B2 (ja) プロセッサ
EP0282825B1 (en) Digital signal processor
JP2501711B2 (ja) ワンチップディジタル信号プロセッサ
US4038643A (en) Microprogramming control system
KR920006283B1 (ko) 디지탈신호 처리방식
US5926643A (en) Data driven processor performing parallel scalar and vector processing
Lee et al. Pipeline interleaved programmable DSP's: Architecture
JPH0731603B2 (ja) Forth特定言語マイクロプロセサ
US5948053A (en) Digital signal processor architecture using signal paths to carry out arithmetic operations
US4853890A (en) Vector processor
KR100435349B1 (ko) 병렬처리장치와이를포함하는디지털오디오신호처리장치및방법
US4924377A (en) Pipelined instruction processor capable of reading dependent operands in parallel
JP5372307B2 (ja) データ処理装置およびその制御方法
JPH01500065A (ja) 複数制御ストアを有するミクロプログラム情報処理システムの装置と方法
JPH01169669A (ja) 高速数値演算装置
JP3144859B2 (ja) 算術論理演算装置
Srini et al. Parallel DSP with memory and I/O processors
Magar et al. An NMOS digital signal processor with multiprocessing capability
JP2001092658A (ja) データ処理回路及びデータ処理装置
JP2545798B2 (ja) デイジタル信号処理回路
JPS61143838A (ja) 演算装置
JPS60175146A (ja) プログラマブル・コントロ−ラ
EP0333306A2 (en) Integrated and programmable processor for word-wise digital signal processing
JPH01145730A (ja) データ行先き制御方式
JPH07182157A (ja) ディジタル信号処理プロセッサ