WO1988007236A1 - High-speed floating point arithmetic unit - Google Patents

High-speed floating point arithmetic unit Download PDF

Info

Publication number
WO1988007236A1
WO1988007236A1 PCT/JP1988/000063 JP8800063W WO8807236A1 WO 1988007236 A1 WO1988007236 A1 WO 1988007236A1 JP 8800063 W JP8800063 W JP 8800063W WO 8807236 A1 WO8807236 A1 WO 8807236A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
host processor
unit
arithmetic
arithmetic unit
Prior art date
Application number
PCT/JP1988/000063
Other languages
English (en)
French (fr)
Inventor
Mikio Yonekura
Original Assignee
Fanuc 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 Fanuc Ltd filed Critical Fanuc Ltd
Publication of WO1988007236A1 publication Critical patent/WO1988007236A1/ja

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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units

Definitions

  • the address generator 32 shown in FIG. 5 is controlled by the microprogram control unit 5-1 to be in front of the data RA30.
  • the address of the data KAH30 is specified.
  • an address is specified via an address register '33.
  • the register 34 is provided for transmitting data from the data RAM 30 to the microprogram controller 51 or the address generator 32.
  • the bidirectional buffer 9 is formed by connecting two buffers oriented in the direction of writing data from the host computer 100 to the data RAM 30 and in the opposite direction, in parallel with each other. Normally, both are in a high impedance state and electrically disconnect between the host processor 100 and the data RAM 30. However, the host processor 100 is operated by the control from the host processor 100. Enables data transfer.
  • the host processor 100 is connected to the dual processor. Toward Paso off ⁇ 9 sac Chi said host Topu opening "'' The buffer toward the sensor 100 is controlled to enable the operation.
  • the RW signal is set to "1" for the R / W control 31 and the strobe signal ( STB). As a result, the RW control outputs an output enable signal ("0 to ⁇ ") to the data RAM 30. As a result, the RW control transmits the data RAM 30 to the host processor 100.
  • the stopping time of the FFP is about twice as long as the machine cycle of the host processor 100. In fact, in the example shown in Fig. 1, this time is about 2 sec.
  • the host processor 100 directly accesses the data RAM 30 of the FFP. Therefore, the FFP must be stopped during the read or write cycle of the host processor 100 (about 2 sec in the example of FIG. 1).
  • the read / write cycle of the host processor 100 is extremely slow compared to the micro cycle of the FFP (0.1 sec in the example of FIG. 1).
  • FIG. 2 is a diagram showing an example of the configuration of the RZW control 31
  • FIG. 3A is a diagram showing conventional data write and read timings
  • FIG. 5C is a diagram showing a configuration example of the host processor access control unit 2 in FIG. 2A.
  • FIG. 4 is a diagram showing a basic configuration of a high-speed floating-point arithmetic unit according to the present invention.
  • 1 is a bidirectional buffer register
  • 2 is a host processor access control unit
  • 3 is a data storage unit
  • 4 is an operation unit
  • 5 is a high-speed floating-point operation unit control unit.
  • the bidirectional buffer register 1 Under the control of the host processor access control unit 2, the bidirectional buffer register 1 temporarily loads operation data from the host processor, or performs an operation read from the data storage unit 3. The resulting data is once read.
  • the data storage unit 3 is written with the operation data sent from the host processor 100 and once loaded into the bilateral buffer register 1, and then the operation data is stored in the operation unit 4. Is read to Then, the operation result calculated by the operation unit 4 is written into the data storage unit 3 again, and the execution result is read out and read into the bidirectional buffer register 1.
  • the exchange of operation data and operation results between the host processor and the high-speed floating-point operation unit (FFP) is performed in the bidirectional buffer register 1, and the data storage unit 3 does not need to be stopped during writing or reading by the host processor, and the microprogram control unit 5 and the arithmetic unit 4 are stopped only during the writing or reading cycle in the FFP.
  • the exchange of data between the bidirectional buffer register 1 and the data storage unit 3 may be performed, so that the stop time of the operation in the FF is shortened, and more efficient operation processing is performed. Enable.
  • FIG. 5 and FIG. 5 are diagrams showing an example of a configuration of a high-speed floating-point arithmetic unit (FFP) according to the present invention.
  • FFP floating-point arithmetic unit
  • the configuration in Fig. 5A differs from the configuration in Fig. 1 described above.
  • the first is the bidirectional buffer register 1 provided on the path for exchanging data between the host processor 100 and the data RAM 30, and the second is the host processor 100.
  • the bidirectional buffer register 1 and the clock control unit 55 receive a signal of a data write or read request (the R / W signal and the strobe signal).
  • the configuration of the bidirectional buffer register 1 as the host processor access control unit 2 for controlling the R / W control 31 is as shown in FIG. 5B.
  • 11 and 12 are registers for writing data under the control of the host processor access control unit 2 (WP1, WP2), which will be described later.
  • This is a (N-state) non-N software that outputs data under the control (0E1, 0E2) of the processor access control unit 2.
  • FIG. 6A and FIG. 6B are diagrams showing the timing of the operation of the control unit 2 for the host processor access.
  • FIG. 6A shows a case where the data in the data RAM 30 is read out to the host processor 100.
  • the strobe signal (STB) and the read / write signal (RW) are transmitted from the host processor 100 via the no-synchronous interface 71. Is entered. This is what was previously input to the R / W control 31 in the configuration of FIG. 1 described above. (Fig. 2).
  • the RZW signal is always ⁇ 0 when writing data, and is always “1” when reading data. Since the operation of this circuit itself is easily understood, a description in the middle is omitted.
  • the outputs are "HOST", "WP1", and "0E1". HOST is input to the clock control unit 55 in FIG.
  • WP1 is the trigger input of register 11 of bidirectional buffer register 1, as shown in Figure 5B.
  • the data transferred from the data RAM 30 is set in the register 11 at the rise of the IFT.
  • the other output, 0E1 is the control input to the (tristate) nos. 13 of the bidirectional buffer register 1 of Figure 5B, and is the stall from the nos interface 71. It becomes ⁇ 1 at the same timing as the lobe signal.
  • the read data is read by the host processor 100.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Description

明 細 書 高速浮動小数点演算 器 技術分野
本発明は、 高速浮動小数点演算器に関する。 背景技術
汎用のプロセ ッサにおいては浮動小数点演算の速度が非常 に遅いため、 浮動小数点演算専用のハ一 ドウ ア構成を有す る高速浮動小数点演算器(Fas t Floating Point Processor. 以下 FFP とも称す) が用いられる。
第 1 図は従来の高速浮動小数点演算器 ( F F P ) の 1 例の 主な構成を示す図である。 本図において、 100 の破線内はホ ス ト プロセ ッ サであり 、 該 F F P と はバソ ク プレー ンバス
7 0 およびバスィ ンタフヱイ ス 7 1 を介して接続されている , 第 1 図の F F P 、 主に、 演算部 4 、 マイ ク ロ プロ グラ ム 制御部 5 — 1 、 ク ロ ッ ク発生部 5 - 2 、 データ記憶部 3 から 構成され、 その他に、 双方向バッ フ ァ 9 を備えている。
演算部 4 は、 データ記憶部 3 から演算用データを読出して- これを演算し、 演箕結果は、 再び該データ記憶部 3 に書込む' t マイ ク ロプロ セ ッ サ制御部 5 — 1 には予めホス ト プロセ フ サ 100 より マ イ ク ロ プロ グラ ムが書込まれており 、 該マ イ ク π プ口 グラ ム制御部 5 - 1 は該マ イ ク ロ プロ グラ ムに従つて 前記演算部 4 や前記デ一タ記憶部 3 を制御する。 ク ロ ッ ク発生部 5 — 2 は、 ク ロ ッ ク発振器 5 4およびク ロ ッ ク制御部 5 5から構成されており、 該ク ロ ック発振器 5 4 にて発生させられたク 口 ックパルスは該ク 口 ッ ク制御部 5 - 2を介して出力され、 該 F F Pのう ち上記マイ ク ロプロダラ ム制鄉部 5 — 1 、 および、 該マイ ク ロプログラム制御部 5 — 1 によつて制御される全ての部分の同期をとつている。
データ記憶部 3 ばデータ RAM 30、 Rノ W (リ 一 ドノラ イ ト、 read/write) υ ン ト ロ ール 3 1 、 ア ドレス ' ジェネレータ 32、 ァ ド レス ' レジスタ 33およびレジスタ 34から構成されている。 デ一タ RAM 30には前記双方向バソ フ ァ 9およびデータバス 73 を介して、 ホス トプロセ ッサ 100 から送られた演算用デ―タ が一旦書込まれ、 該演算用データは更に前記演算部 4へ読出 される該演算部 4における演算結果は再び該データ RAM 30に 書込まれ、 前記ホス トプロセ ッサ 100 により読出される。
ここで、 Rノ Wコ ン ト ロ ール 3 1 は、 該データ RA〉1 30と前 記演算部 4 との間のデータのやり とり の際には前記マィ ク 口 プログラム制御部 5 - 1 の制御 (第 1図では符号 " M " で示 す) により、 また該データ RAM 30と前記ホス トプロセ ッサ 100 との間のデータのやり とり に関しては、 ホス トプ πセ ッ サ 100 から Rノ W (リ ー ド ' ライ ト) 信号とス ト ローブ信号 とを受けることにより 、 データ RAM 30に対して出力イ ネ一ブ ル信号あるいは書込みィ ネーブル信号を出力する。 R /Wコ ン ト ロ—ル 3 1 の構成例は第 2図に示されている。
第 5図のァ ド レス ' ジェネ レータ 3 2 は前記マイ ク ロプロ グラム制御部 5 ― 1 の制御によって、 前記データ RA 30と前 記演算部 4 との間のデータのやり とり の際に、 該データ K AH30 のア ド レスを指定する。 他方、 前記ホ ス トプロセ ッサ 100 と 該データ RAM 30との間のデータのやり とり の際のァ ド レス指 定は、 ア ド レス · レジスタ' 3 3を介して行われる。 レジスタ 3 4 は該デ一タ RAM 30から前記マイ ク ロプログラム制御部 51 または上記ァ ドレス · ジェネ レータ 3 2 へデータを送るため に設け られている。
双方向バッ フ ァ 9 は第 1 図に示されるよう に該ホス ト コ ン ピュータ 100 からデータ RAM 30へデータを書込む方向および その逆方向を向いた 2 つのバッ ファ を互いに並列に接続した もので、 通常は共に高ィ ンピーダンス状態にあって該ホス ト プロセ ッサ 100 と該データ RAM 30の間を電気的に遮断してい るが、 それぞれ該ホス トプロセ ッサ 100 からの制御によって 動作状態となり 、 データの転送を可能にする。
第 3 A図は、 前述の第 1 図で示される従来の高速浮動小数 点演算器 ( F F P ) におけるホ ス ト プロセ ッ サ (第 3 A図お よび後述の第 3 B図では H Pで示す) 100 からデータ RA 30 へのデータの書込み、 および該データ RA 30から該ホス トプ ロ セ フサ 100 への読出しのタ イ ミ ングを示す図である。 第 3 A図において、 ( a ) はホス ト プロセ ッ サ (HP) 100における 処理サイ ク ル、 ( b ) は F F Pにおける演算処理の実行時間、 及び停止期間を示す。 そして、 ( c ) は F F Pにおけるク ロ ッ クパルス ( C L K ) のタ イ ミ ングを示す。 A s は該ホス ト プロセ ッサ 100 が F F Pのク 口 ッ クノ、:ルス停止させるための 信号 (前記ク ロ ッ ク停止信号) ^出力する サ イ ク ルで、 該ク ロ ッ ク停止信号が F F Pのク ロ ッ ク制御部 5 5 に入力される と、 該ク ロ ック制御部 5 5 は、 F F Pにおけるク ロ ックパル スの出力を停止する (時刻 t 。 これによつて F F Pの演算 処理は停止する。 次に該ホス トプロセ ッサ 100 は前記双方向 ツファ 9 のう ち該ホス トプロセ ッサ 100からデータ RAM 30 方向へ向うバ ッ フ ァを動作可能とし、 前記 R Z Wコ ン ト 口— ル 3 1 に対し、 R Z W信号を κ 0 " とする と共にス ト ローブ 信号を出力する。 これによつて該ホス トプロセ ッサ 100 から データ RAM 30へデータの書込みが開始される (時刻 t 2)。 こ こで第 3 A図において略号 Wは該ホス トプロセ ッサ 100 から 該 F F Pへのデータの書込みのサイ クルを表わすものとする < 時刻 t 3 にてホス トプ .ロセッサ 100 からデータ RAM 30へのデ 一タの書込みが終了すると、 次のホス トプ口セ ッサ 100 にお けるマ シ ンサイ クルにおいては該 F F Pの停止を解除するた めのサイ クル A e が開始され、 該ホス トプロセ ッサ 100 から ク ロ ックパルス停止の解除のための前記ク ロ ック再開信号が 送られ、 前記ク ロ ッ ク制御部 5 δ は該ク ロ ツク再開信号を受 けて (時刻 t 4 )、 再びク ロ ッ クパルスの出力を再開する。 こ れによって該 F F Pは再び演箕処理を再開する。 第 3 A図の 右半分に示されている、 該ホス トプロセ ッサ 100 からの読出 しの場合も、 A s および、 A e のサイ クルについては前記の 書込みの場合と全く 同様であるが、 前記書込み時との違いは 時刻 t 7 ή、ら始まる、 該 F F Ρから該ホス トプ口セッサ 100 へのデータの読出しサイ クルにある。 このとき、 該ホス トプ ロ セ ッサ 100 は前記双方向パソ フ ァ 9 のう ち該ホス トプ口 "'' セ ッサ 100 方向へ向うバッ ファを制御してこれを動作可能と し、 他方、 該 R / Wコ ン ト ロール 3 1 に対しては R W信号 を " 1 " と してス ト ローブ信号 ( S T B ) と共に印加する。 これによ り R Wコ ン ト ロ ールは、 出カイ ネーブル信号 ("0~^) をデータ RA M 30に対して出力し、 この結果、 データ RA M 30より該ホス トプロセ ッサ 100 へのデータが読出される 第 3 A図から明らかなよう に、 第 1 図の構成の F F P とホス トプロセ ッサ 1 00 との間のデータのやり と り においては、 該 F F Pへの書込み、 読出し、 いずれの場合においても、 F F Pの停止時間は、 該ホス トプロセ ッサ 100 のマ シ ンサイ クルの約 2倍に及んでいる。 実際第 1 図の例では、 こ の時間 は約 2 s ec である。
とこ ろ-で、 第 1 図に示されたよう な従来の F F Pにおいて は、 前述のよ う に、 ホス ト プロ セ ッ サ 1 00 から該 F F Pのデ ー タ R A M 30に直接ア ク セ ス しているので、 該ホス ト プロセ ソ サ 100 の読出し、 あるいは書込みのサイ クル (第 1 図の例で は約 2 s e c )の間、 該 F F P は停止していなければならない と こ ろが、 上記のホス トプロセ ッサ 100 の読出し、 あるい は、 書込みのサイ クルは、 F F Pのマイ ク ロサイ クノレ (第 1 図の例では 0. 1 s e c)と比較して極めて遅い。
したがって、 第 1 図に示されたよ う な従来の構成において は、 ホス トプロセ ッサとのデータのやり とり の際に F F Pに とっては極めて長時間停止させられねばならず、 演算の能率 が良く ないという問題があった。 発明の開示
本発明の目的は、 ホス トプロセ 7サからのデータの書込み、 および読出し時に、 演算を停止する時間を短縮する高速浮動 小数点演算器を提供することにある。
本発明による高速浮動小数点演算器は、 箕術演算および比 較 Z論理演算を行う演算部と、 ホス トプロセ ツサからの演算 用データを書込み、 前記演箕部へ該演算用データを読出し、 該演箕部における演算結果を書込み、 そして、 前記ホス トプ ロセ ッサへ該演算結果を読出すデータ記憶部と、 前記演算部 における前記算術演箕および比較ノ論理演算を制御し、 前記 デ.一タ記億部における前記演算部による書込み、 および読出 しを制御する高速浮動小数点演算器制御部と、 前記高速淳動 小数点演算器制御部を制御して該高速浮動小数点演算器制御 部および前記演算部を一旦停止させ、 該停止の間に前記デー タ記憶部を制御して前記ホス トプ セ ' yサからの演算用デー タの書込み、 または、 前記ホス トプロセ ッサへの演算結果の 読出しを行う ことを可能にするホス トプロセッサア クセス用 制御部とを備えてなる高速浮動小数点演算器において、 前記 ホス トプロセツサにより前記データ記憶部に演算用データを 書込み、 該データ記憶部から演算結果を読出す g路に汊方向 ノ N ッ フ ァ レジスタを設け、 前記ホス トプロセ ッ サア ク セス用 制御部は、 前記ホス トプロセ ッ サからの演算用データの書込 み時には、 該演算用デ一タを一旦該双方向バッファ レジスタ にロ ー ドした後、 前記高速浮動小数点演算器制御部および前 記演箕部を停止して、 前記デ-ダ記憶部へ該演算用データを 書込み、 また、 前記ホス トプロセ ッザへの演算結果の読,出時 には、 該演算結果をまず該データ記憶部より読出して該双方 向バッ ファ レジスタにロ ー ドした後、 直ちに前記高速浮動小 '数点演算器制御部および前記演算部の停止を解除するよう に したこ とを特徴とする。 図面の簡単な説明
第 1 図は従来の高速浮動小数点演算器 ( F F P ) の 1 例の 主な構成を示す図、
第 2図は R Z Wコ ン 卜 ロール 3 1 の構成例を示す図、 第 3 A図は従来のデータの書込みおよび読出しのタ イ ミ ン グを示す図、
第 3 B図は、 本発明の実施例におけるデータの書込みおよ び読出しのタイ ミ ングを示す図、
第 4図は本発明の基本的構成を示す図、
第 5 A図は本発明による高速浮動小数点演算器 ( F F P ) の構成の 1 例を示す図、
第 5 B図は第 2 A図における双方向バッフ ァ レジスタ 1 の 構成図、
第 5 C図は第 2 A図におけるホス トプロセ ッサアクセス用 制御部 2 の構成例を示す図、
第 6 A図および第 6 B図はホス トプロセ ッサア ク セ ス用制 御部 2 のタ イ ミ ングを示す図である。 発明を実施するための最良の形態
第 4図は本発明による高速浮動小数点演算器の基本的構成 を示す図である。 本図において、 1 は双方向バッファ レジス タ、 2 はホス ト プロセ ッ サア ク セス用制御部、 3 はデータ記 憶部、 4は演算部、 5 は高速浮動小数点演算器制御部である < 前記双方向バッ フ ァ レジスタ 1 は前記ホス トプロセ ッ サァ クセス用制御部 2の制御の下に、 ホス トプロセッサからの演 算用データを一旦ロー ドし、 あるいは、 前記データ記憶部 3 から読出した演算結果のデータを一旦口— ドする。
前記データ記憶部 3 には、 ホス トプロセ ッ サ 100 から送ら れ、 上記双方商バフ ファ レジスタ 1 に一旦ロ ー ドされた演算 用データが書込まれ、 次に該演算用データは前記演算部 4へ 読出される。 そして該演算部 4 にて演算された演算結果は再 び該データ記憶部 3 に書込まれ、 そして、 該演箕結果は読出 されて前記双方向バッ フ ァ レジスタ 1 へ口 — ドされる。
前記演算部 4は前記データ記憶部 3から演算用データを読 出して演算を行い、 演算結果は再び該データ記憶部 3 へ書込 れ
前記高速浮動小数点演算器制御部 5 は、 前記データ記憶部 3および前記演算部 4を制御して、 上述の動作を行わしめる 前記ホス トプロセ ッ サア ク セス用制御部 2 は、 ホス トプロ セ ッサ 100 からの書込み、 あるいは読出しの要求を受けて、 前記双方向バ 7 フ ァ レジスタ 1 へのデータのロ ー ドに関する 制御、 前記高速浮動小数点演算器制御部 5 の停止制御、 およ び、 前記データ記憶部 3における書込みおよび読出し制御を 行う o
すなわち、 ホス トプロセ ッサが該 F F Pに演算を行わせよ う とする ときには、 まずホス トプロセ ッサアクセス用制御部 2 にデータの書込み要求を出す。 該ホス トプロセ ッサァクセ ス用制御部 2 は前記双方向バッ フ ァ レジスタ 1 を制御して該 ホス トプロセ ッサから送られた演算用データを該双方向バッ ファ レジスタ 1 に一旦 π — ドする。 該ホス トプロセ ッサァク セス用制御都 2 は次に高速浮動小数点演算器制御部 5 を制御 して 高速浮動小数点演箕器制御部 5 および前記演算部 4を 停止させる。 また、 該ホス トプロ セ ッ サア ク セス用制御部 2 は前記デ一タ記憶部 3を制御して該デ—タ記憶部 3を書込み 可能と し、 さ らに、 前記双方向バッ フ ァ レジスタ 1 を制御し て該双方向バ ッ フ ァ レジスタ にロ ー ドされていた演算用デ一 タを該データ記憶部 3 に書込む。 上記データ記憶部 3 におけ る演算用データ の書込みが完了する と、 該ホ ス ト プロ セ ッ サ ァクセス用制御部 2 は前記高速浮動小数点演算器制御部 5 に 対して出していた停止制御を解除し、 これにより 、 該 F' F P は再び演算を開始する。
ホス ト プロセ ッ サが該 F F P の演算結果を読出そう とする と き には、 まずホス ト プロ セ ッ サア ク セス用制御部 2 にデー タ読出し要求を出す。 該ホス ト プロセ ッ サア ク セス用制御部 2 は、 まず前記高速浮動小数点演算器制御部 5 を制御して、 該高速浮動小数点演箕器制御部 5 および前記演算部 4 を停止 させる。 次に前記データ記憶部 3 および前記双方向パ ン フ ァ レジスタ 1 を制御して、 該データ記憶部 3 に記憶されている 演算結果を読出して、 該双方向バッ フ ァ レジスタ 1 にロ ー ド する。 前記ホス トプロセ ッ サアク セス用制御部 2 は、 前記双 方向バッファ レジスタ 1へのロ ー ドの後、 直ちに前記高速淳 動小数点演算器制御部 5に対して出していた停止制御を解除 し、 これにより該 F F Pは再び演算を開始する。 この後、 前 記ホス トプロ セ フサば該双方向バッファ レジスタ 1 にロー ド されている前記演箕結果を読岀す。
本発明によれば、 ホス トプ口セッサと当該高速浮動小数点 演算器 ( F F P ) との間の演算用データおよび演算結果のや り とりは前記双方向バッファ レジスタ 1 において行われ、 デ -タ記憶部 3がホス トプロセッサによる書込み、 または、 読 出しの間停止している必要がなく、 当該 F F Pにおける書込 みまたは読出しサイ クルの間だけ、 前記マイ クロプログラム 制御部 5および演算部 4を停止して、 この間に、 該双方向バ ッファ レジスタ 1 と該データ記憶部 3 との間のデータのやり とりを行えばよいので、 当該 F F Ρにおける演算の停止時間 を短く し、 より高能率の演算処理を可能にする。
第 5 Α図および第 5 Β図は、 本発明による高速浮動小数点 演算器 ( F F P ) の構成の 1例を示す図である。 - 第 5 A図において、 バッ クプレー ンバス 了 0 およびバスィ ンタ ーフヱ イ ス ? 1を介するホス ト プロセ ッ サ 100 との接続 関係の他、 データ記憶部 3およびク π ック発生部 5 — 2 の構 成と機能、 そ して、 マイ ク ロプログラム制御部 5 — 1および 演算部 4の機能は、 前述の第 5図の F F P と全く同様である , 第 5 A図では、 マイ クロプログラム制御部 5 - 1および演算
δ 5 部 4 については、 それらの 部のより詳細な構成が示されて いる。 上記のマ イ ク ロ プロ グラ ム制御部 5 - 1 および演算部 4 の内部の構成の詳細については、 本発明の必須要件に直接 関わる ものではないので以下に簡単に説明する。
まず演算部 4 は レジスタ · フ ァ イ ル 4 0 、 浮動小数点乗算/ 除算器 (MPY/DIV 1および浮動小数点算術論理演算器(ALL') 42から構成されている。 レジス タ · フア イ ノレ 4 0 は該マイ ク 口プログラム制御部 5 — 1 の制御のもとに、 前記データ RAM30 より演箕用データを読出して前記 MPY/DIV 41へ供給し、 また-.0 該 ALU 42または 41における演箕途中のデータおよび 最終演算結果をこ こ に一時保持する ためのものである。 該最 終演算結果は、 該レジスタ · フ ァ イ ル 4 0 から前記データ RAM 30に書込まれる。 ALU 42は加滅算および比較ノ論理演算 を行い、 PY/DIV 41は乗除算を行う。 該 ALU 42および MP 7 Dl V 41はそれぞれ 2種類の出力を有しており 、 1 つは、 それ ぞれ、 加減算、 および、 乗除算の算術演算の結果を出力する もので、 これらの算術演算結果は前記レジスタ · フ ァ イ ル 40 に入力される。 該 ALU 42および MPY/DIV 41の各々における他 の 丄 つの出力は、 比較ノ論理演算結果または演算時のヱラ一0 の発生を知らせるステータ ス信号であり、 後述のよう に、 前 記マイ ク ロプログラム制御部 5 — 1 は、 該ステータス信号の 内容を解読して、 次に実行するマイ ク ロ命令を決定する。
マィ ク 口 プロ グラ ム制御部 5 - · 1 は、. シーケ ンサ 5 1 、 ラ ィ タブノレ ' コ ン ト ロ ー ル - ス ト レ ィ ジ(wri table conro 1 st- rage. 以下では WCS と称す) 5 2 、 マイ ク ロコ ー ド レ ジスタ 5 3 、 デコ ーダ 5 6、 エラー記憶部 5 7 、 マルチプレク サ 5 8、 およびレジスタ 5 9から構成されている。 該 W C Sは R A Mからなり、 該 WCS 52には当該 F F Pにおける演算処理 の開始時に前記ホス トプロセ ッサ 100 からマイ ク ロプログラ ムが書込まれる。 第 5 A図の W C S書込制御部 6 0 は、 ホス トプロセ ッ サ 100 からのプログラム書込の要求を受けると、 その CL EA R 信号出力により 、 前記シーケ ンサを初期状態に固 定しつつ、 ノ ツ ファゲ一 ト 6 1 を開とするように制御する。 ホス トプロセ ッ サ 100 からの V C S ア ド レス及び W C Sデ一 タ (マイ ク ロ命令) ば該バッ フ ァゲー ト 6 1が有する 2 つの ゲー 卜の各々を通って該 WC S 52に入力される。
シーケ ンサ 5 1 が該 W CS 52のァ ドレスを指定するこ とによ り、 該ァ ド レスにス トァされているマイ ク ロ命令がマイ ク ロ コー ドレジスタ 5 3 にロー ドされ、 該マイ ク ロ命令が実行さ れる。 ここで、 前記演算部 4からのステータ ス信号はデコ一 ダ 5 6 、 エラー記憶部 5 7およびマルチプレク サ 5 8を経て 解読され、 該ステータ ス信号の内容が順に レジスタ 5 9 に π ー ドされる。 前記シーケンサ 5 丄は該レジスタ 5 9 の内容に 基いて、 次の W C Sア ドレスの指定を行う。 このようにして 該マイ ク 口.プロ グラム制御部 5 — 1 ば動作する'。
該 F F P は、 こう して該マイ ク ロプログラム制御部 5 — 1 および前記ク ロ フク発生部 5 - 2 によって制御され、 これら 5 - 1 および 5 - 2 は、 高速浮動小数点演箕器制御部 5 を形 成する。
第 5 A図の構成において、 前述の第 1図の構成と異なるの は、 第 1 に、 ホス トプロセ ッサ 100 とデータ RAM 30との間で データをやり とりする経路に設けられている該双方向バッ フ ァ レジスタ 1 であり、 第 2 に、 ホス トプロセ ッサ 100 力、らデ ータ書込み、 あるいは読出し要求の信号 (前記 Rノ W信号お よびス ト ロ ーブ信号) を受けて、 該双方向バッ フ ァ レジスタ 1 、 前記ク ロ ッ ク制御部 5 5および前記 Rノ Wコ ン ト ロ ール 3 1 を制御するホス 卜 プロ セ ッ サア ク セス用制御部 2 である 双方向バッ フ ァ レジスタ 1 の構成は第 5 B図に示すとおり である。 第 5 B図において 11 , 12は、 それぞれ後述するホス トプロセ ッ サア ク セス用制御部 2 の制御 ( WP 1 , WP 2 ) によ り、 データの書込みを行う レジスタ、 13, 14もまた、 ホス ト プロセ ッサアクセス用制御部 2 の制御 (0E 1 , 0E 2 ) により データを出力する ( ト ラ イ ステー ト) ノ N ソ フ ァ である。
ホス トプロセ ッサアクセス用制御部 2 の構成は第 5 C図に 示されている。 第 5 C図において、 21 22, 23は Dフ リ ップ フ ロ ッ フ。、 24 , 25, 27, 29はア ン ド ( A N D ) 回路、 26 , 28 はナ ン ド(NAND)回路である。
第 6 A図および第 6 B図は、 ホス ト プロセ ッ サア ク セ ス用 制御部 2 の動作のタイ ミ ングを示す図である。 第 6 A図はホ ス トプロセ ッサ 100 へデータ RAM 30のデータを読出すときの ものである。 第 5 C図に示すよう に、 ホス トプロセ ッ サ 100 より ノ ス ィ ンタ 一 フ ェ イ ス 7 1 を介してス ト ロ 一ブ信号 ( S T B ) と リ ー ド ' ライ ト信号 ( R W ) が入力される。 これは従来、 前述の第 1 図の構成においてバスィ ンタ ーフユ イ ス 7 1 力、ら R / Wコ ン ト ロ ーノレ 3 1 へ入力されていたもの である (第 2図) 。 ここで、 R Z W信号はデータ書込み時は 常時 κ 0 " であり、 データ読出し時は常時 " 1 " である。 こ の回路自体の動作は容易に理解される ものであるので途中 の説明は省略する。 第 6 Α図に示されるように、 R Z W信号 力 0 " のときの出力は "HOST " , "WP 1 " 、 そして "0 E 1 " である。 HOSTは第 5 A図のク ロ ッ ク制御部 5 5 に入力され、
F F Pを動作させるク ロ ックパルスを停止させる。 W P 1 は第 5 B図に示されるように、 双方向バッ ファ レジスタ 1 のレジ スタ 1 1 の ト リ ガ入力となっている。 第 6 A図に示すように IFTの立上りでレジスタ 1 1 にデータ RAM 30から転送された データがセ ッ トされる。 もう 1 つの出力 0E 1 は、 第 5 B図の 双方向ブッ フ ァ レジスタ 1 の ( ト ライ ステー ト) ノ ソ フ ァ 13 の制御入力であつて、 ノ スイ ンターフェイ ス 7 1 からのス ト ローブ信号に等しいタ イ ミ ングで κ 1 " となっており、 前記 レジスタ 1 1 にデータがセッ トされた後ス トローブ信号が " ひ 35 となるまでの間にレジスタ 1 1 にロ ー ドされていたデ ータが、 ホス トプロ セ フサ 100 に読取られる。 またこのとき 上記 HOST信号と、 0E 2を反転した 0E 2信号が前記ス ト ロ一ブ 信号 S T B と R _ W信号の代り に R Wコ ン トロール 3 1入 力される。 今、 データ読出し時には 0E 2 は " 0 " であるので 第 2図から明らかなよう に、 このときば R Z Wコ ン ト ロ ール 3 1 からは上記 HOST信号が 1 " となるタイ ミ ング、 すなわ ち WP 1力 tt 0 " となるタ イ ミ ングでデータが読出される。 つ まり、 これがレジスタ 1 1 にセ ッ トされるのである。 またレ ジスタ 1 1 におけるデータのセ 'ン ト完了と同時に HOSTは " 0 に戻り 、 ク ロ ッ ク制御部 5 5 に対する ク ロ ッ クパルスの停止 制御を取りやめる。 即ちデータがレジスタ 1 1 にセ ッ ト され る と同時に F F Pのク 口 ッ ク停止は解除される。 このク 口 ッ ク停止時間は F F Pのク ロ ッ クの 1 周期間である。
次に第 6 B図を用いてホス トプロセ ッサ 100 からデータ RAM 30へのデータの書込みの動作のタ イ ミ ングについて説明 する。 この場合も、 第 5 C図の回路の動作は容易であるので その出力 "HOST" , "¥F " および " 0E 2 " についてのみ述べ る。 HOST信号の役割り は前述の第 6 A図の場合と全 く 同様で ある。 出力 " T " は、 第 5 B図に示すよ うに、 双方向バッ ファ レジスタ 1 のレジスタ 1 2 の ト リ ガ入力となっており 、 0E 2 は、 該双方向バッ フ ァ レジスタ 1 の ( ト ラ イ ステー ト ) バッ ファ 1 4 の制御入力であって、 上記 HOST信号と全く 同じ タイ ミ ングで " 1 " となる。 0E 2 はまた、 反転されて、 0E 2 となって、 Rノ Wコ ン ト ロ ー ル 3 1 に HOSTと共に入力され、 R ,/ Wコ ン ト α _ル 3 1 から書込みィ ネーブル信号を出力せ しめる。 こ う して、 まず、 WP 2 によってホス トプロセ ッサ 100 からのデ一タが双方向 ソ フ ァ レジスタ 1 の レジスタ 12 にセ ッ ト された後、 HOST信号が、 F F Pを動作させるク ロ ッ クパルスを停止させる と同時に、 該 HOST信号と 0E 2信号は R Z Wコ ン ト ロ ー ル 3 1 に作用して、 データ RAM 30を書込み 可能と し、 さ らに同時に 0E 2 は双方向パ'ソ フ ァ レジスタ 1 の ( ト ラ イ ス テ ー ト ) バ.ソ フ ァ ] 4 を出力可能とする。 こ う し て、 ホス トプロセ ッサ 100 力、らのテ '一タカ F F Pのデータ RAM 30に書込まれる。 こ の と き も F F P の停止時間は F F P のクロ ックパルスの 1周期間である。
以上説明した第 5 A , 5 Bおよび 5 C図の構成を有する F F Pにおいてホス トプロセ ッサ 100 と該 F F Pのデータ RAM 30との間、 でデータ転送を行なうタイ ミ ングは、 第 3 B 図に示されている。
第 3 B図に示される A w はホス トプロセ ッサ 100 における データ書込みサイ クルであり、 A R は同じくデータ読出しサ ィ ク ルである。 第 3 B図には、 前述の第 6 A図および第 6 B 図の説明のとおりに、 データの書込み、 および読出し時にお ける F F Pの停止時間が F F Pの 1 マイ ク ロサイ クル (本実 施例では 0. 1 it s ec)であることが示されている。
以上述べたように、 本発明の高速浮動小数点演算器によれ ば、 ホス トプロセ ッサとのデータのやり とり の際の停止時間 を短縮し、 より高能率の演算処理を可能にする。

Claims

- i 5 請 求 の 節 m
1. 算術演算および比較/論理演算を行う演算部 ( 4 ) と ホス トプロセ ッサからの演算用データを書込み、 前記演算 部 ( 4〉 へ該演算用データを読出し、 該演算部 ( 4 ) におけ る演算結果を書込み、 そして、 前記ホス トプロセ ッサへ該演 算結果を読出すデータ記憶部 ( 3 ) と、
前記演算部 ( 4 ) における前記算術演算および比較ノ論理 演算を制御し、 前記データ記憶部 ( 3 ) における前記演算部
- 1
7
10 ( 4 ) による書込み、 および読出しを制御する高速淳動小数 点演算器制御部 ( 5 ) と、
前記高速浮動小数点演算器制御部 ( 5 ) を制御して該高速 浮動小数点演算器制御部 ( 5 ) および前記演算部 ( 4 ) を一 旦停止させ、 該停止の間に前記データ記憶部 ( 3 ) を制御し て前記ホス トプロセ ッサからの演算用データの書込み、 また は、 前記ホス トプロセ ッサへの演算結果の読出しを行う こ と を可能にするホス トプロセ ッサア ク セ ス用制御部 ( 2 ) とを 備えてなる高速浮動小数点演算器において、
前記ホス ト プロ セ ッ サによ り前記データ記憶部 ( 3 ) に演 0 算用データを書込み、 該デ -タ記憶部 ( 3 ) から演算結果を 読出す経路に双方向バッ フ ァ レジスタ ( 1 ) を設け、
前記ホス ト プロ セ ッ サアク セス用制御部 ( 2 ) は、 前記ホ ス トプロセ .ソ サからの演算用デ—タの書込み時には、 該演算 用データを一旦該双方向バッ フ ァ レジスタ ( 1 ) にロ ー ドし 5 た後、 前記高速浮動小数点演算器制御部 ( 5 ) および前記潢 箕部 ( 4 ) を停止して、 前記データ記憶部 ( 3 ) へ該演算用 デ一タを書込み、 また、 前記ホス トプロセッサへの演箕結果 の読岀時には、 該演算結果をまず該データ記憶部 ( 3 ) より 読出して該双方向バッファ レジスタ ( 1 ) にロー ドした後、 直ちに前記高速浮動小数点演算器制御部 ( 5 ) および前記演 算部 ( 4 ) の停止を解除するようにしたことを特徴とする高 速浮動小数点演算器。
PCT/JP1988/000063 1987-03-18 1988-01-27 High-speed floating point arithmetic unit WO1988007236A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP62/61133 1987-03-18
JP62061133A JPS63228368A (ja) 1987-03-18 1987-03-18 高速浮動小数点演算器

Publications (1)

Publication Number Publication Date
WO1988007236A1 true WO1988007236A1 (en) 1988-09-22

Family

ID=13162274

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1988/000063 WO1988007236A1 (en) 1987-03-18 1988-01-27 High-speed floating point arithmetic unit

Country Status (3)

Country Link
EP (1) EP0305527A1 (ja)
JP (1) JPS63228368A (ja)
WO (1) WO1988007236A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683578A (ja) * 1992-03-13 1994-03-25 Internatl Business Mach Corp <Ibm> 処理システム、及びデータスループット制御方法
US5325401A (en) * 1992-03-13 1994-06-28 Comstream Corporation L-band tuner with quadrature downconverter for PSK data applications

Also Published As

Publication number Publication date
EP0305527A1 (en) 1989-03-08
JPS63228368A (ja) 1988-09-22

Similar Documents

Publication Publication Date Title
JP2573566B2 (ja) バスコンバータ
US5440747A (en) Data processor with control logic for storing operation mode status and associated method
JPS648387B2 (ja)
JPH02227768A (ja) データ処理システム
JPS60142743A (ja) 内部母線システム
JPH0277846A (ja) マイクロプロセッサ
JP4569934B2 (ja) 情報処理装置、例外制御回路及び例外制御方法
US4217639A (en) Logic for generating multiple clock pulses within a single clock cycle
WO1988007236A1 (en) High-speed floating point arithmetic unit
JPS58182758A (ja) 演算制御装置
JPS62154032A (ja) インストラクシヨンカツシユメモリ
EP0443629B1 (en) Effective address pre-calculation type pipelined microprocessor
EP0333231B1 (en) Microcomputer system capable of accessing to memory at high speed
WO1988007238A1 (en) High-speed floating point operation system
US5163135A (en) Computer system and method for setting recovery time upon execution of an I/O command
US5784634A (en) Pipelined CPU with instruction fetch, execution and write back stages
JPH10161873A (ja) プロセッサ
JP2652640B2 (ja) 非同期マイクロマシン/インターフエイス
JP3242474B2 (ja) データ処理装置
WO1988007237A1 (en) High-speed floating point arithmetic unit
JPS6218933B2 (ja)
JP2622026B2 (ja) 中央処理装置におけるレジスタ書込制御方式
JPS62189535A (ja) マイクロプロセツサ制御装置
JPH02151947A (ja) マイクロコンピュータシステム
JPH0123812B2 (ja)

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB

WWE Wipo information: entry into national phase

Ref document number: 1988901298

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1988901298

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1988901298

Country of ref document: EP