JPH04270414A - 浮動小数点コプロセッサ用可変待ち時間方法及び装置 - Google Patents
浮動小数点コプロセッサ用可変待ち時間方法及び装置Info
- Publication number
- JPH04270414A JPH04270414A JP3018492A JP1849291A JPH04270414A JP H04270414 A JPH04270414 A JP H04270414A JP 3018492 A JP3018492 A JP 3018492A JP 1849291 A JP1849291 A JP 1849291A JP H04270414 A JPH04270414 A JP H04270414A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- clock
- coprocessor
- cycles
- counter
- 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
Links
Classifications
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3871—Asynchronous instruction pipeline, e.g. using handshake signals between stages
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Abstract
め要約のデータは記録されません。
Description
ステムクロックにより制御される集積回路に関する。 【0002】 【従来の技術及び発明が解決しようとする課題】コプロ
セッサ及び/又は浮動小数点ユニットは種々の算術機能
を遂行することができる。加算,減算及び対数計算等の
機能は組み合せで完全に遂行することができる。他の計
算、例えば倍精度乗算,割算及び平方根等の計算はレジ
スタ及び/又はラッチにより分離される組み合わせブロ
ックの集合として遂行されることが多い。一般に全ての
算術機能は一又は複数の組み合わせ回路ブロック(時々
「セクション」又は「パイプ」とも言う)として遂行さ
れ、各ブロックは記憶素子(ラッチ又はレジスタ)によ
り他の組み合わせブロックから分離されている。各々は
特別な計算時、一度も使用されないこともあれば1回又
は複数回使用されることもある。ブロックはまた数種の
機能に割当てられる。例えば、大きな組み合わせ回路は
、しばしば割算、平方根及び乗算のアルゴリズムに共用
される。 【0003】アルゴリズムの完全な組み合わせ遂行(例
えば加算)は前記遂行の最も簡単なものである。これは
1つの組み合わせブロックを持つのみで記憶素子を持た
ない。各組み合わせブロックは、そのオペランドが入力
記憶素子内に現れた(クロックで読込まれた)後は正し
い結果を発生するために一定の時間を必要とする。前記
ブロックの入力レジスタへ新オペランドをクロックで読
み込む制御信号はしばしばこのブロック用の起動信号と
呼ばれる。各パイプへの時間割当て(正しい結果が生ず
るための)は、対応起動信号後の一定数のシステムクロ
ックサイクルをカウントするタイマを介して実行される
。各セクションは前記システムサイクルタイムにより決
定する1又は複数のシステムクロックサイクルを要求で
きる。一般には特殊な一組の入力を持つ特別なパイプ用
に演算完了を考慮して前記サイクルタイムを乗算すべき
システムサイクル数は前記パイプにより正しい結果を算
出するに必要な最小時間より大であるか又は等しくなけ
ればならない。 【0004】今日(現在の技術に於いて)、各パイプに
許容されるサイクル数は集積回路装置にてハード配線さ
れている。1つのパイプへのサイクル数は前記集積回路
の外部のハードウェア手段を介して変更することはでき
ない。もし、ハード配線に依って定められたパイプに許
容されるサイクルの数が小さすぎると、この特別のパイ
プは前記コプロセッサの最も速いサイクルタイムを決定
するのに制限因子となるものである。一方、該パイプの
サイクル数が大きすぎると、このシステムはパイプ速度
を十分利用できなくなる。 【0005】 【課題を解決するための手段及び作用】本発明は、演算
完了に必要なプログラマブル待ち時間(クロックサイク
ルのプログラマブル数)を提供するものである。パイプ
に必要な待ち時間はユニットが動作するように指定され
たシステムクロックサイクル時間を含む式から決定され
る。この待ち時間は計算を行うに必要な時間をカバーす
るのに必要な少なくとも最小のクロックサイクル数を与
えてタイマの計数をセットすることにより予めプログラ
ムされる。別々のタイマが論理演算装置(ALU) 演
算と乗算演算と論理演算及び割算と平方根演算用に独立
してセットされる。 【0006】例えば、割算に於いては多数の反復が、夫
々1つ以上のクロックサイクルを必要とするように要求
される。割算反復ごとのサイクル数は、1つのクロック
速度につき1サイクル、また他の1つのクロック速度に
つき2サイクルとなるようにプログラムすることができ
る。これにより割算回路構成がコプロセッサの異なるク
ロック速度バージョンに使用可能となる。割算反復待ち
時間は各バージョンに対して異なるようにプログラムさ
れ、例えば20MHz コプロセッサは反復作用毎に1
クロックサイクルにプログラムされる待ち時間を有し、
また33MHz コプロセッサは反復作用毎に2サイク
ルにプログラムされた待ち時間を有する。 【0007】こういうふうに同一のチップは各々に大体
同様である割算性能につき、33MHzと20MHz
との両者のシステムに使用可能である。好ましい1つの
実施例に於いて、コプロセッサチップが入力ボンディン
グパッドを使用して実装されるときにプログラムされ、
これらの信号がデコードされてタイマへ計数を与える。 これらの入力はこれを前記実装内のピン又はボンディン
グフィンガに接続して電圧をこのピン又はボンディング
フィンガに与えることにより組立時にプログラムするこ
とができる。内部の(シリコンに組み込んだ)プルアッ
プ又はプルダウン抵抗器のこれら入力に接続されたもの
は、前記ピン又はボンディングフィンガに他の電源が接
続されていないときは適宜な電圧レベルを与えることが
できる。 【0008】本発明により、数個のパイプラインの各々
に必要なクロックサイクル数の独立設定を多重相互反復
作用演算に各反復作用及び単なる組み合わせ演算に対し
て可能ならしめる。また本発明は単一のコプロセッサチ
ップをして、夫々異なるタイプの演算に対して独立的に
演算速度を最大にし(または或る希望性能レベルに調整
し)ながら異なるクロック速度で動作すべく形成される
ことができるようにする。さらに本発明は制御論理の演
算がスピードアップするコプロセッサチップが次々と開
発されていっても同様な算術演算装置を使用できるよう
にするが、この演算回路最大速度は不変のままとするも
のである。この演算回路構成を再設計することは普通長
時間かかるので以上の点は利点である。結局、本発明は
大多数のテストパターンがチップの異なる待ち時間バー
ジョンについて1つの待ち時間の状態になることができ
るようにするのである。 【0009】 【実施例】図1にマイクロプロセッサ130 とコプロ
セッサ132 との代表的システムを示す。該コプロセ
ッサはバス制御回路134 と演算制御回路136 及
び論理演算部138 を含む。遂行すべき演算形式を指
示する命令 (演算コード) はバス140 に与えら
れる。前記演算に使用されるデータはバス142 に与
えられる。バス制御回路134 は命令を受信して、数
サイクルをそのデコードに使用した後、起動信号をライ
ン144 に与える。ライン144 の起動信号は論理
演算部138 の算術演算を開始させ、また演算制御部
136 にシーケンスをスタートさせる。この演算の完
了は、論理演算制御回路136 からバス制御回路13
4 へのライン146 上にDONE信号 (完了信号
) として現れる。このDONE信号は、内部タイマの
使用により完全に論理演算制御部136 内に於いて発
生することができるか、あるいはライン148 の論理
演算部138 からの信号と論理演算制御部136 信
号との組み合わせにより発生することができる。注意す
べきことは、バス制御回路134 及び/又は演算制御
部136 は前記コプロセッサチップの外部の別のチッ
プ内に存在し得て前記START 信号とDONE信号
を内部信号というよりむしろ外部信号とするものである
。なお、前記コプロセッサ回路はマイクロプロセッサと
同様のチップ上で組み合わすことができるものである。 また本発明は特別な使用形態に限るものではない。 【0010】図2は、演算装置12を有するコプロセッ
サ10部分を示す。該演算装置は乗算器回路か論理装置
か又は論理演算装置となり得るものである。前記演算装
置12はライン14の演算信号及びライン16のオペラ
ンドを受信する。その結果を出力ライン18に与える。 ライン20のクロック信号及びライン22の起動信号も
また与えられる。 ライン24のDONE信号はライン18に結果が出るよ
うになったときに発せられる。前記クロックと起動信号
とは、各クロックサイクルでカウントダウンするタイマ
26に与えられる (該タイマもまたカウントアップ又
は任意シーケンスでカウントできる) 。タイマ26は
演算装置12で行う演算に必要な時間以上の時間で0と
なる。完成信号はステートマシン30を介して出力ライ
ン24に供給される。該ステートマシン30はライン3
4の制御入力を演算装置12に与えて遂行されるべき演
算を設定し制御する。 【0011】待ち時間コードはタイマ26への入力ライ
ン40に与えられる。このコードはDONE信号がライ
ン24上に現れる前に必要なクロックサイクル数を制御
する。例えば、もし演算装置12が演算完了に150
ナノ秒(ns)を必要とし、且つ外部クロックが50ナ
ノ秒サイクル時間を持つならば、前記待ち時間コードは
3に設定されてDONE信号が3クロックサイクル後に
現れるもので、これは150 ナノ秒に等しい。一方、
もしマスタークロックサイクルが30ナノ秒であれば3
の設定でDONE信号は90ナノ秒後に現れ、これは結
果が出る以前のことになる。従って、かようなマスター
クロックと共に使用すべきチップにとって前記待ち時間
コードはDONE信号が5×30ナノ秒=150 ナノ
秒までは現れないように5に設定される。 【0012】後掲の表1−4は、プログラマブル待ち時
間の1実施例を演算の異なる待ち時間コードについてク
ロックサイクル単位で表している。別々の待ち時間コー
ドは各演算装置に対して与えられる。即ち、ALU 演
算に対してはあるコードが、乗算器演算(MUL) に
対しては別のコードが、論理演算に対しては第3のコー
ドが、及び各割算反復に対してはサイクル数を制御する
第4のコードが与えられる。入力はライン40により与
えられて前記待ち時間コードを指示する。ある実施例に
於いてはライン40はプルアップ抵抗器を介して正電圧
に内部で接続される。つまりコードはプルアップライン
の高電圧によって与えられるか、又はパッケージ内でラ
イン40の所望のラインをボンディングフィンガに接続
して与えられる。 或いは接地すべきプルダウントランジスタを使用するこ
とができ、且つ異なるようにプログラムされることが望
ましいラインを、正電圧源に接続されているボンディン
グフィンガに接続することもできる。結局ラインは入力
ピンに直接接続されて外部からプログラムできる。また
前記ピンとラインとの間には、あるデコード用の論理装
置も置くことができる。デコードはピン上の1組の可能
値とタイマ設定に使用するライン上の対応組の値との間
のマッピングである。 【0013】前記ラインを外部のピンに接続する1つの
利点は次の如くである。即ち、ある演算パイプが完了に
80ナノ秒かかるとする。また前記バス制御回路が40
乃至33MHz より高い周波数の範囲で動作するとす
る。パイプ速度の充分の効果を得るために、40MHz
部 (25ナノ秒サイクル) の完成には4サイクル
を、また33MHz 部 (30ナノ秒サイクル) に
は3サイクルを許容することが可能である。もしバス制
御回路が40MHz に適合しないならば、演算性能
(待ち時間を同一時間で3サイクルに変更してもよい)
を遅らすことなしに33MHz 程度まで低下させるこ
とができる。これは前記ラインが外部ピンに接続してい
ないならば既にパッケージした部分で行うことができな
いものである。 【0014】待ち時間プログラミングがピンにより制御
可能であれば、1つの待ち時間での異なる部分をテスト
するための大多数のパターンを有することができる。 (少なくとも一部分の機能的テストを行うため)。タイ
マテスト用の小セットのパターンのみは異なる待ち時間
にしなければならない。また、これは特に前記部分を遅
らせようとするときに、例えば或る性能レベルと適合さ
せるために適用される。次いで、大部分のテストに対し
て速い待ち時間の部分をテストすることができる。この
テスト部分は速い製品と一致する。それで小さいテスト
パターンを遅れタイマ設定のテストのために追加するこ
とができる。これはテストベクトル(特にバス制御回路
テストベクトル)を展開するには長い時間がかかるので
重要なことである。 【0015】
表 1
ALU演算 待ち時間コード
ALU待ち時間(サイクル)
(PALUS +)
001
2
010
3
011
4
100
5
101
6
110
7 【
0016】
表 2
MUL演算 待ち時間コード
単精度 倍精度
(PMULS +)
MULS M
ULD
待ち時間
待ち時間
(サイクル)
(サイクル)
001
2 2
010
3 4
011
4
6 100
5
8
101
6 10
110
7 1
2【0017】
表 3
論理演算 待ち時間コード
論理待ち時間(サイクル)
(PLOGS +)
01
2
10
3
11
4 【0018
】
表 4
割算反復 待ち時間コード
割算反復毎のサイクル
(PDIVSEL +)
0
1
1
2 【0019】図3
に算術演算、特に割算演算に含まれることのある各種待
ち時間を図示する。割算演算はチップの異なるパイプラ
インに起きることのできる3相を必要とする。第1相で
は多数の準備段階150 が初期計算を行う。続いて一
連の減算反復152 がある。最後には多数の完了ステ
ップ154 がある。この位相の各々に対するタイミン
グはタイマ156 により与えられる。第1クロック速
度に対して準備ステップ150 は2サイクルを要求す
るが減算反復152 は20サイクルを要求し、また完
了ステップ154 は5サイクルを要求できる。より速
い第2クロック速度に対しては準備手段150 に同様
な一定期間を確保するのに3サイクルが必要である。こ
の速いクロック速度に於いて、1クロックサイクルは割
算反復には十分ではない。かくして割算反復毎に2クロ
ックサイクルが必要となる。更には完了ステップ154
は準備ステップ150 と異なるサイクル数の増加が
必要となる。このようにして最適の再構成可能性のため
には別々のプログラマブル待ち時間が前記3相の各々に
与えられる。 【0020】図4の(A),(B) は2つの異なるク
ロック速度に対する図3に示す如き割算演算のタイミン
グ例を示す。図4の(B) は図4の(A) のクロッ
クよりも速い周波数を有するクロック信号(CLK+)
を示す。図4(A) では演算はラインISTART
M のパルスにより開始される。これは第1相の2クロ
ックサイクルに続きサイクルMUGO1(1)とMUG
O1(0)として示されている。この位相の完了は単一
ラインMUEQZ 上のパルスにより示される。これは
別々の割算反復クロックDCLKにより夫々計時される
多数の割算反復サイクルのMUDIV と示されるもの
に続くものである。第2相の反復作用が完了すると、第
3相のMUGO2(2)−MUGO2(0)に3クロッ
クサイクルが使用される。第3相の終端はラインMUE
QZ の別のパルスにより示される。これもまたDON
E信号,MUDONE の発生となる。 【0021】図4(B) に於いて、速いクロックサイ
クルにより、MUGO1(2)乃至MUGO1(0)と
示された3サイクルが第1相に対し必要であることが分
かる。クロックサイクル時間に依存して割算反復毎のサ
イクル数はなお1であり得るか、あるいは割算反復の2
サイクルに変更し得る。ここでは図4(B) に示す如
く割算反復毎の2サイクルに変更されている。第3相M
UGO2 のサイクル数は図4(B) では変化ないも
のとして示される。しかし、所要のサイクル数は変更す
ることができ、且つ第1相に使用する1つの余分のサイ
クルとは異なる量により変化することができる。 【0022】図5に論理演算装置(ALU) である演
算装置の図2に示すタイマ26の詳細を示す。前記待ち
時間コードはピン又はボンディングフィンガからボンデ
ィングパッド42を介してスクリーニングロジック44
を通って、またインバータ46を介してデクリメンタ4
8に与えられる。 スクリーニングロジックによりゼロ条件が現れるのを防
止する。インバータ46からの3ビットの各々はデクリ
メンタ48を介して送られる。また図6にはデクリメン
タ48の3ビットの1つに対する論理を示す。各出力は
ライン52のマルチプレクサ50を介して帰還される。 【0023】デクリメンタ48のカウントが001 に
達するとNANDゲート54はレジスタ56に於いて続
くクロックサイクルにラッチされる出力を与える。この
続くクロックサイクルは前記デクリメンタを零カウント
となすものであり、これはNANDゲート54により予
期される。NANDゲート54はレジスタ56に信号を
出し、後者は続いてマルチプレクサ50に選択信号を出
す。マルチプレクサ50はデクリメンタ48の出力をそ
の入力に返して別のカウントが他の反復作用のためのサ
イクルを仕上げる。入力へ返す出力は dcn+であっ
て、これは各サイクルでゼロへカウントダウンする。
Dcn−は dcn+の逆極性(1の補数)である。第
1の演算の初期カウンタ値(及び次に来るもの)はマル
チプレクサ50の他の入力から来る。前記dc+とdc
−信号は現在の dcn+と dcN−をカウントする
前にカウントを与える。これらはNANDゲート54に
より使用されてカウントの終わりを予想する。ライン5
8の起動信号はNANDゲート54が前記デクリメンタ
48が起動時演算の誤った完了を報じるようにレジスタ
56にロードすることを防止する。これは前記デクリメ
ンタが一定のサイクルを行うので必要となる。 【0024】図6はマルチプレクサ60とレジスタ62
と図5のデクリメンタ48のワンビットスライスのデク
リメンタ64とを示す。キャリアビットCO+とCO−
とは次のビットスライス段に与えられる。その入力と出
力とは図5の如く接続される。図7はALU の図2の
ステートマシン回路30の詳細を示す。デクリメンタ回
路66は図5に示す如くである。これはステートマシン
70の部分である組合わせ論理68に接続する。DON
E信号がステートマシン70の組合わせ論理68と結合
するインバータ74からライン72に与えられる。ステ
ートマシン70のレジスタから組合わせ論理68へのラ
イン76と78とにフィードバックが与えられる。最後
に入力が組合わせ論理68へのライン82に与えられる
。この信号がオペレーションコードからデコードされて
、ALU 論理を介しての2パスを必要とする整数対単
精度変換演算を指示する。 【0025】前記オペレーションコードはフリップフロ
ップ84に与えられ且つ入力はNANDゲート86に与
えられる。ライン88の入力は倍精度演算が実行される
かどうかを示す。前記オペレーションコードのデコード
とステートマシンの詳細及び機能とは当業者には明白な
ことであろう。図8は乗算装置に使用するデクリメンタ
(タイマ)90を示し、これはマルチプレクサ94への
入力92の単精度乗算待ち時間を受信する。また倍精度
待ち時間コードはマルチプレクサ94への別の待ち時間
入力96に与えられる。この入力の選択した1つは第2
マルチプレクサ98に与えられ、前記乗算待ち時間コー
ドと前記乗算装置を使用する論理演算のライン100の
論理待ち時間コードとでの選択をする。デクリメンタ9
0を介してのその後のパスは図5と同様の方法でマルチ
プレクサ102 を介して送り返される。しかし、ここ
では2つの別々の入力92と96とが割算演算又は倍精
度乗算演算との何れかの最終段に対する他のマルチプレ
クサ104 を介して与えられる。 【0026】再び、図5と同様に出力レジスタ106
は001 の値がNANDゲート108 の入力に於け
る先行信号に現れるときに、計時される。これは別のN
ANDゲート110 を介して与えられ、このゲートは
NANDゲート112 から他の入力を受信する。NA
NDゲート112 はその入力として起動信号と「乗算
器ステートマシンロード」信号とを有する。 ロード信号は前記デクリメンタが演算の中途 (即ち倍
精度乗算又は割算) で再ロードするときの複合演算に
対して起動せしめられる。ライン114 の出力信号は
論理演算装置の図7に示すものと同様の方法で乗算器ユ
ニットの組合わせ論理に与えられる。割算反復(図9)
に対して入力ピン116 はマルチプレクサ118 に
よりライン120 のクロック周波数か、あるいは1/
2 回路122 出力のクロック周波数の半分かの何れ
かを選択する。その結果のクロック信号DCLKは割算
回路に与えられ割算反復を制御する。 【0027】当業者には理解されるごとく、本発明はそ
の精神又は本質的特徴から逸脱することなく、他の特定
形式により具体化される。例えば同一のコードをある数
量のパイプ又はALU ブロック及び単精度乗算に使用
されるブロックの如きセクションを制御するために使用
できる。従って本発明の好ましい実施例の開示を説明す
るのであるが、これは制限されるものではなく、特許請
求の範囲に述べる本発明の範囲を説明しようとするもの
である。
図である。
プロセッサ部分のブロック図である。
ル所要事項を示すブロック図である。
グ線図である。
御部分のさらに詳細なブロック図である。
である。
Claims (12)
- 【請求項1】 与えられたオペランドにより算術演算
を行い、且つ外部クロックを使用するコプロセッサ又は
浮動小数点ユニットであって、起動信号を受信すると前
記オペランドにより算術演算を行う論理演算手段と、前
記起動信号後に前記クロックの所定数のサイクルの完了
信号を発生するカウンタ手段と、前記カウンタ手段と結
合されており、前記完了信号を発生するのに必要な前記
クロックの所定数サイクルを、前記起動信号及び完了信
号間の待ち時間が変更可能なように、変更するプログラ
マブル手段とを備えることを特徴とするコプロセッサ又
は浮動小数点ユニット。 - 【請求項2】 乗算器を含み、乗算器起動信号を受信
すると前記オペランドにより乗算演算を行う第2論理演
算手段と、前記乗算器起動信号後、前記クロックの所定
数のサイクルの乗算完了信号を発生する第2カウンタ手
段と前記第2カウンタ手段と結合されており、前記乗算
完了信号に必要な前記クロックのサイクル数を、前記乗
算器起動信号と前記乗算完了信号との間の待ち時間が前
記クロックのサイクル時間を変更するために、最小にな
し得るように、変更する第2プログラマブル手段とを備
える請求項1のコプロセッサ。 - 【請求項3】 さらに割算反復のための可変数のクロ
ックサイクルを選択する手段を備える請求項1のコプロ
セッサ。 - 【請求項4】 前記カウンタ手段は、前記プログラマ
ブル手段と結合されており、前記プログラマブル手段に
より設定される数値で起動するカウンタと、該カウンタ
の出力と結合されており、前記カウンタ出力が所定値に
等しいときは完成信号を発生する論理手段と前記論理手
段が前記所定値を受信した後、次のクロックサイクルで
前記完成信号を出力に於いて発生する論理手段の出力と
結合されている記憶手段とを備える請求項1のコプロセ
ッサ。 - 【請求項5】 前記プログラマブル手段とデクリメン
タとの間に結合されており、前記プログラマブル手段の
出力をデコードすると共に、零値が前記デクリメンタに
現れることを防ぐ第2論理手段を備える請求項4のコプ
ロセッサ。 - 【請求項6】 前記論理手段は、前記起動信号を受信
している間は前記完成信号を禁止する手段を含む請求項
4のコプロセッサ。 - 【請求項7】 前記プログラマブル手段は、前記コプ
ロセッサを含むチップの入力ボンディングパッドを備え
る請求項1のコプロセッサ。 - 【請求項8】 前記入力ボンディングパッドのうちの
いくつかは前記チップ上の抵抗器を介して電圧基準に結
合されている請求項7のコプロセッサ。 - 【請求項9】 前記入力ボンディングパッドはパッケ
ージのボンディングフィンガと接続されたボンディング
ワイヤを介して電圧基準に結合されている請求項7のコ
プロセッサ。 - 【請求項10】 前記入力ボンディングパッドのいく
つかは入力ピンに結合されている請求項7のコプロセッ
サ。 - 【請求項11】 与えられたオペランドにより算術演
算を行い且つ外部クロックを使用するコプロセッサであ
って、算術起動信号を受信すると前記オペランドにより
算術演算を行う第1論理演算手段と、前記算術起動信号
を受信した後、前記クロックの所定数サイクルで算術完
了信号を発生する第1カウンタ手段と、前記第1カウン
タ手段と結合されており、前記演算完了信号を発生する
のに必要な前記クロックのサイクル数を、前記算術起動
信号と算術完了信号との間の待ち時間を変更できるよう
に変更する第1プログラマブル手段と、乗算器を含み、
乗算器起動信号を受信すると前記オペランドによる乗算
演算を行う第2論理演算手段と、前記乗算器起動信号後
に前記クロックの所定数サイクルで乗算完了信号を発生
する第2カウンタ手段と、前記第2カウンタ手段と結合
されており、前記乗算完了信号を発生するに必要な前記
クロックのサイクル数を、前記乗算器起動信号と乗算完
了信号との間の待ち時間を変更できる如く変更する第2
プログラマブル手段と、割算反復のために可変数のサイ
クルを選択する第3プログラマブル手段とを備えること
を特徴とするコプロセッサ。 - 【請求項12】 与えられたオペランドによる算術演
算を行い且つ外部クロックを使用するコプロセッサであ
って、算術起動信号を受信すると前記オペランドによる
算術演算を行う第1論理演算手段と、前記算術起動信号
後、前記クロックの所定数サイクルで算術完了信号を発
生する第1カウント手段と、該第1カウント手段は、起
動カウントを与える入力を有する第1カウンタと、該第
1カウンタの出力と結合されており、前記第1カウンタ
出力が第1の所定値に等しいときは完成信号を発生する
第1論理手段と、該第1論理手段が前記第1の所定値を
受信した後、次のクロックサイクルでその出力に於いて
前記完成信号を発生する前記第1論理手段の出力に結合
される第1レジスタとを含み、前記第1カウント手段の
入力と結合されており、前記算術完了信号を発生するの
に必要な前記クロックのサイクル数を、前記算術起動信
号と算術完了信号との間の待ち時間が前記クロックのサ
イクル時間を基礎として変更できる如く変更する第1プ
ログラマブル手段と、乗算器を含み、乗算器起動信号を
受信すると前記オペランドによる乗算演算を行う第2論
理演算手段と、前記乗算器起動信号後、前記クロックの
所定数サイクルで乗算完了信号を発生する第2カウント
手段と、該第2カウント手段は、起動カウントを与える
入力を有する第2カウンタと、該第2カウンタの出力と
結合されており、前記第2カウンタ出力が第2所定値に
等しいときは完成信号を発生する第2論理手段と、該第
2論理手段が前記第2所定値を受信した後、次のクロッ
クサイクルでその出力に於いて前記完成信号を発生する
前記第2論理手段の出力と結合される第2レジスタとを
含み、前記第2カウント手段と結合されており、前記乗
算完了信号を発生するのに必要な前記クロックのサイク
ル数を、前記乗算器起動信号と乗算完了信号との間の待
ち時間が変更できる如く変更する第2プログラマブル手
段と、割算反復のための可変サイクル数を選択する第3
プログラマブル手段と、を備えることを特徴とするコプ
ロセッサ。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/467,879 US5021985A (en) | 1990-01-19 | 1990-01-19 | Variable latency method and apparatus for floating-point coprocessor |
| US07/467879 | 1990-01-19 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04270414A true JPH04270414A (ja) | 1992-09-25 |
| JP3160631B2 JP3160631B2 (ja) | 2001-04-25 |
Family
ID=23857530
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP01849291A Expired - Lifetime JP3160631B2 (ja) | 1990-01-19 | 1991-01-17 | 浮動小数点コプロセッサ用可変待ち時間方法及び装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5021985A (ja) |
| JP (1) | JP3160631B2 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7024504B2 (en) | 2002-04-26 | 2006-04-04 | Seiko Epson Corporation | Data transfer control device, electronic equipment and data transfer control method |
| US7376820B2 (en) | 2000-03-16 | 2008-05-20 | Fujitsu Limited | Information processing unit, and exception processing method for specific application-purpose operation instruction |
Families Citing this family (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR960003526B1 (ko) | 1992-10-02 | 1996-03-14 | 삼성전자주식회사 | 반도체 메모리장치 |
| US5159566A (en) * | 1989-09-05 | 1992-10-27 | Cyrix Corporation | Method and apparatus for performing the square root function using a rectangular aspect ratio multiplier |
| US6751696B2 (en) | 1990-04-18 | 2004-06-15 | Rambus Inc. | Memory device having a programmable register |
| IL96808A (en) | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
| US5313621A (en) * | 1990-05-18 | 1994-05-17 | Zilog, Inc. | Programmable wait states generator for a microprocessor and computer system utilizing it |
| JP3018404B2 (ja) * | 1990-06-21 | 2000-03-13 | 日本電気株式会社 | マイクロプロセッサ |
| GB2252432B (en) * | 1991-02-01 | 1994-09-28 | Intel Corp | Method and apparatus for operating a computer bus using selectable clock frequencies |
| DE69226150T2 (de) * | 1991-11-05 | 1999-02-18 | Hsu Fu Chieh | Redundanzarchitektur für Schaltungsmodul |
| US5498990A (en) * | 1991-11-05 | 1996-03-12 | Monolithic System Technology, Inc. | Reduced CMOS-swing clamping circuit for bus lines |
| US5831467A (en) * | 1991-11-05 | 1998-11-03 | Monolithic System Technology, Inc. | Termination circuit with power-down mode for use in circuit module architecture |
| WO1994003901A1 (en) | 1992-08-10 | 1994-02-17 | Monolithic System Technology, Inc. | Fault-tolerant, high-speed bus system and bus interface for wafer-scale integration |
| US6279116B1 (en) | 1992-10-02 | 2001-08-21 | Samsung Electronics Co., Ltd. | Synchronous dynamic random access memory devices that utilize clock masking signals to control internal clock signal generation |
| US5710912A (en) * | 1993-05-06 | 1998-01-20 | Hewlett-Packard Co. | Method and apparatus for enabling a computer system to adjust for latency assumptions |
| US5655113A (en) | 1994-07-05 | 1997-08-05 | Monolithic System Technology, Inc. | Resynchronization circuit for a memory system and method of operating same |
| KR100212142B1 (ko) * | 1996-09-12 | 1999-08-02 | 윤종용 | 매크로 명령기능을 가진 동기식 반도체 메모리장치와 매크로 명령의 저장 및 실행방법 |
| WO2015035336A1 (en) | 2013-09-06 | 2015-03-12 | Futurewei Technologies, Inc. | Method and apparatus for asynchronous processor pipeline and bypass passing |
| KR102688577B1 (ko) | 2016-09-19 | 2024-07-26 | 삼성전자주식회사 | 전자 장치, vliw 프로세서 및 그 제어 방법들 |
| US11954491B2 (en) | 2022-01-30 | 2024-04-09 | Simplex Micro, Inc. | Multi-threading microprocessor with a time counter for statically dispatching instructions |
| US12001848B2 (en) | 2022-01-30 | 2024-06-04 | Simplex Micro, Inc. | Microprocessor with time counter for statically dispatching instructions with phantom registers |
| US12443412B2 (en) | 2022-01-30 | 2025-10-14 | Simplex Micro, Inc. | Method and apparatus for a scalable microprocessor with time counter |
| US12190116B2 (en) | 2022-04-05 | 2025-01-07 | Simplex Micro, Inc. | Microprocessor with time count based instruction execution and replay |
| US12169716B2 (en) | 2022-04-20 | 2024-12-17 | Simplex Micro, Inc. | Microprocessor with a time counter for statically dispatching extended instructions |
| US12141580B2 (en) | 2022-04-20 | 2024-11-12 | Simplex Micro, Inc. | Microprocessor with non-cacheable memory load prediction |
| US12288065B2 (en) | 2022-04-29 | 2025-04-29 | Simplex Micro, Inc. | Microprocessor with odd and even register sets |
| US12106114B2 (en) | 2022-04-29 | 2024-10-01 | Simplex Micro, Inc. | Microprocessor with shared read and write buses and instruction issuance to multiple register sets in accordance with a time counter |
| US12112172B2 (en) * | 2022-06-01 | 2024-10-08 | Simplex Micro, Inc. | Vector coprocessor with time counter for statically dispatching instructions |
| US12147812B2 (en) | 2022-07-13 | 2024-11-19 | Simplex Micro, Inc. | Out-of-order execution of loop instructions in a microprocessor |
| US12541369B2 (en) | 2022-07-13 | 2026-02-03 | Simplex Micro, Inc. | Executing phantom loops in a microprocessor |
| US12282772B2 (en) | 2022-07-13 | 2025-04-22 | Simplex Micro, Inc. | Vector processor with vector data buffer |
| US12566609B2 (en) | 2023-03-14 | 2026-03-03 | Simplex Micro, Inc. | Microprocessor with apparatus and method for handling of instructions with long throughput |
| US12566610B2 (en) | 2023-03-14 | 2026-03-03 | Simplex Micro, Inc. | Microprocessor with apparatus and method for replaying load instructions |
| US12566613B2 (en) | 2023-11-13 | 2026-03-03 | Simplex Micro, Inc. | Microprocessor with speculative and in-order register sets |
| US12613698B2 (en) | 2024-03-19 | 2026-04-28 | Simplex Micro, Inc. | Apparatus and method for hiding vector load latency in a time-based vector coprocessor |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4612628A (en) * | 1983-02-14 | 1986-09-16 | Data General Corp. | Floating-point unit constructed of identical modules |
| US4901267A (en) * | 1988-03-14 | 1990-02-13 | Weitek Corporation | Floating point circuit with configurable number of multiplier cycles and variable divide cycle ratio |
-
1990
- 1990-01-19 US US07/467,879 patent/US5021985A/en not_active Expired - Lifetime
-
1991
- 1991-01-17 JP JP01849291A patent/JP3160631B2/ja not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7376820B2 (en) | 2000-03-16 | 2008-05-20 | Fujitsu Limited | Information processing unit, and exception processing method for specific application-purpose operation instruction |
| US7024504B2 (en) | 2002-04-26 | 2006-04-04 | Seiko Epson Corporation | Data transfer control device, electronic equipment and data transfer control method |
Also Published As
| Publication number | Publication date |
|---|---|
| US5021985A (en) | 1991-06-04 |
| JP3160631B2 (ja) | 2001-04-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH04270414A (ja) | 浮動小数点コプロセッサ用可変待ち時間方法及び装置 | |
| KR100385156B1 (ko) | 배수클럭옵션을갖는마이크로프로세서에서의자기구성속도경로 | |
| US5095523A (en) | Signal processor including programmable logic unit formed of individually controllable output bit producing sections | |
| Singh et al. | High-throughput asynchronous pipelines for fine-grain dynamic datapaths | |
| US5268656A (en) | Programmable clock skew adjustment circuit | |
| US4748559A (en) | Apparatus for reducing power consumed by a static microprocessor | |
| US4532587A (en) | Single chip processor connected to an external memory chip | |
| JPS6029402B2 (ja) | クロツク制御信号発生装置 | |
| EP0238090A2 (en) | Microcomputer capable of accessing internal memory at a desired variable access time | |
| JP2001124836A (ja) | イベント型半導体テストシステム | |
| JP3403759B2 (ja) | データ演算の結果を記憶レジスタに書き込む方法およびプロセッサ | |
| WO1982002783A1 (en) | Stored-program control machine | |
| US6014752A (en) | Method and apparatus for fully controllable integrated circuit internal clock | |
| JPH04215316A (ja) | 逐次有限状態マシン回路とそのような回路を具える集積回路 | |
| CN110750129B (zh) | 分频电路 | |
| JP2937326B2 (ja) | 論理回路のテスト容易化回路 | |
| KR100458024B1 (ko) | 분할 동기 인터페이스를 위한 조정가능 클럭을 갖는데이터 처리 시스템 | |
| US20150145580A1 (en) | Apparatus for controlling semiconductor chip characteristics | |
| Chakraborty et al. | Practical timing analysis of asynchronous circuits using time separation of events | |
| KR19990029006A (ko) | 확장 칩 선택 리셋 장치 및 방법 | |
| Suzuki et al. | Instruction rearrangement and path limitation for ALU cascading | |
| JPH0738155B2 (ja) | ディジタル乗算実行方法および装置 | |
| CN100373770C (zh) | 一种任意分频器及其实现方法 | |
| JPH0345039A (ja) | 半導体装置 | |
| WO2024218747A1 (en) | Non-binary circuits using alternating current |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080223 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090223 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100223 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100223 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 10 |