[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH05508952A - 算術処理、論理処理及び関連する処理を実行する方法及び数値演算装置 - Google Patents

算術処理、論理処理及び関連する処理を実行する方法及び数値演算装置

Info

Publication number
JPH05508952A
JPH05508952A JP91513501A JP51350191A JPH05508952A JP H05508952 A JPH05508952 A JP H05508952A JP 91513501 A JP91513501 A JP 91513501A JP 51350191 A JP51350191 A JP 51350191A JP H05508952 A JPH05508952 A JP H05508952A
Authority
JP
Japan
Prior art keywords
value
floating point
output
input
numerical
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.)
Pending
Application number
JP91513501A
Other languages
English (en)
Inventor
カールステット,ラルス グンナー
Original Assignee
カールステット エレクトロニク アクチボラゲット
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 カールステット エレクトロニク アクチボラゲット filed Critical カールステット エレクトロニク アクチボラゲット
Publication of JPH05508952A publication Critical patent/JPH05508952A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/311Functional or applicative languages; Rewrite languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Nonlinear Science (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Static Random-Access Memory (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)
  • Saccharide Compounds (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Advance Control (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
  • Vehicle Body Suspensions (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Studio Devices (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Semiconductor Memories (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Monitoring And Testing Of Nuclear Reactors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Paper (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

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

Description

【発明の詳細な説明】 算術処理、論理処理及び関連する処理を本発明は、数値エレメント上で算術処理 、論理処理及び関連の処理を実行する方法、及びプロセッサ(こお(する算術演 算装置(ALU)に関する。
発明の背景 コンピュータにおける算術論理演算装置は、算術処理、論理処理、及び関連の処 理を情報のエレメント上で実行する装置である。処理は、ALUに与えられた算 術命令に従って提供される。通常的な大抵のALUは値を一時的に蓄積するため にアキュムレータ及び/又はt<7ソフア・レジスタ又は他の種類のレジスタと 協働している。
発明の目的 本発明の主な目的は、簡単な方法により数値表現を減少させる方法又はALUを 提供することにある。
本発明の他の目的は、一時記憶装置の処理中に、一時記憶装置と協働することな く、機能するALUを提供することにある。
本発明の更に他の目的は、処理のために与えられた情報における演算命令を用い るALUを提供すること(こある。
本発明の更に他の目的は、オペランドが仮数と指数との間に制御可能な可変分割 を備えることにより、浮動少数黒値を取り扱うことができるALUを提供するこ とにある。
本発明の更に他の目的は、オペランドとして浮動少数黒値と、仮数と指数との間 で分割についての情報を与える及びコード・フィールドとを存するバス上のビッ ト情報を取り扱い得るALUを提供することにある。
本発明の更に他の目的は、命令を可変コード長のコード・フィールドにより供給 するバスを介してそのオペランドに与えられる算術演算命令の取り扱いが可能な ALUを提供することにある。
本発明の更なる目的は、浮動少数黒値としてと、整数としての解釈との間の共変 動を有するALUを提供することにある。
発明の概要 少なくとも前述の主目的を実現するために、本発明は、概要的に、以下のステッ プ、即ち: (a)処理されるべき数値エレメント、及び命令情報を含む入力リストを供給す るステップと、(b)前記命令情報を用いて入力リスト上の前記数値エレメント についての処理を直接制御し、かつ実行するステップと、 (C)各数値エレメントが所定のビット長を有するワードを供給するステップで あって、ワードの最大数が前記入力リストにおける最大供給可能エレメント数と 同一であるステップと、 (d)前記処理装置が前記入力リストにおけるエレメ(e)前記処理装置から結 果の出力リストを送出するステップと を含む数値エレメントに基づき、算術処理、論理処理、及び関連する演算処理を 実行する方法を意図する。
好ましくは、前記入力リスト及び出力リストにおける最大エレメント数は4であ る。そのときに、1リスト・エレメントは命令ワード表示と共に供給されてもよ く、2リスト・エレメントは2つの数値表示の各一つにより供給されてもよく、 かつ前記入力エレメントの再書き込みを数回反復することにより行なう計算中に 、中間の計算結果を供給するように用いてもよい。
リストは、好ましくは、そのエレメントのうちの一つか命令コードであり、残り か命令に対するアーギュメントである81能アプリケーシヨンを含む。命令は、 最終的な結果に到達するまで、結果の出力リストから入力リストへ命令コードを 再書き込みし、かつ反復することにより、実行される。各再書き込みの際に、こ のリストは、適当なときに数値ワードか続く実際の計算に適当な場合は、更新し た命令コード・ワードを含むように再書き込みされてもよい。
実際の処理の前に、符号化された形式により供給される数値ワードを備えるのが 適当である。数値ワードを表わすワードは、好ましくは、数値を緻密な表現に設 定する符号化により供給される。即ち、ある値のあらゆる符号化表示は、唯一の 解釈値に対応する。第1の符号化は、整数値を表わす二進ワードにより供給され てもよい。第2の符号化は、浮動少数黒値を表わす二進ワードにより供給されて もよい。符号化は、符号化後に、浮動少数黒値表示を整数値表示と同一順序によ り供給するのが好ましい。このようにして、いずれの表示も二進ディジット形式 である必要はない。ハードウェアは、以下で与える規則により、即ちどのように 解釈を行なったかを知ることなく、ただ無条件で変換されたビット・パターンに ついて計算を行なうように、備えられたものであってもよい。
可変指数幅を有する浮動少数黒値を達成する簡単な方法は、二進コード化された 浮動少数黒値表示に、コード・フィールド、指数フィールド及び仮数フィールド を含めることであって、前記コード・フィールドは、前記指数フィールド及び前 記仮数フィールドが変数長を有するように、前記指数フィールドと前記仮数フィ ールドとの間の除算位置についての表示を有する。緻密な表示は、浮動少数黒値 表示の仮数部用のワード・フィールドの前に、仮想゛l”、即ち表示か物理的に 供給されない“1“を含めて供給されてもよい。
以下はこの明細書において用いられている表現、及び限定したそれらの意味につ いてのリストである。
クロージャ 処理を定める階層構造のエンテイテ(closure) イ。全て のクロージャは、固有に定めるルートを有する。簡約化マシン における簡約化作業はクロージャ上 で行なわれる。このマシンの全状態 は簡約化により変換される。
ゴール 実行されるべき、即ち減少されるべ(goal) きクロージャ。
グループ 4二進数デイジツトからなるグルー(group) ブ。各ワードは 多数のグループからなる。
スライス 1又はいくつかのワードの断片。2(slice) ビットを含むス ライスは、例えば2ワードの最下位ビットからなるもの でよい。
調整(align) 使用されるべきビットが正しくワード内に配置されること を確認するこ とである。
リダンダンシー 誤り検出用に付加されたデータ又は(redundancy)  複数のビット。
正規化コード 仮数の最上位ビットか正の値のときに仮想“I”となり、負値の ときに 仮想″0′となるように表わされる 浮動少数黒値。
二進数表示 任意の数値系又はコードにおける数を表わす“0″及び/又は“1 ″の 組合わせ。
二進数ディジッ 2基底とする数値系。
ト形式 Hコード 数を表わすために、本発明にょるALUに用いられている特定コード 。
整数H値 整数値を表わす特定コード。
浮動少数点H値 浮動少数黒値を表わす特定値。
緻密な表示 あらゆる二進数の組合わせ(ビット・パターン)が一つの固有な数 値に 対応している。
図面の簡単な説明 本発明のより完全な理解のために、かつ他の目的及びその効果のために、ここで 添付する図面に関連して以下の説明を参照する。
第1A図は本発明によるALUの概要図、第1B図は第1A図に示すALU用の クロック信号及びいくつかの基本的な制御信号の図、 第2図は本発明によるALUの一実施例の概要ブロック図、 第3図は算術表示によるビット・フィールド分割の概要図、 第4A図は整数用のコードのグラフ表示図、第4B図は浮動少数黒値用のコード のグラフ表示図、第4C図は7ビツト・バスに供給さ゛れる算術表示の設定を説 明する概要図、 第5A図〜第5D図は第4図に従って供給されるデータ・リストを示す図、 第6図は本発明によるALUの一実施例の回路図、第7A図〜第7C図は異なる クロッキング・シーケンスにおいての本発明による数値ALUの人出力バッファ の一実施例を示す図、 第8図は異なる出力組合わせを供給するためのオペランド・ユニットに含まれる エレメントの制御用のニューモニックと共に、第6図に示す回路に含まれるオペ ランド・ユニットからの出力組合わせ例を示す図、第9図は例えば第6図に示す 、与えられた入力バスのうちの一つを介するワード用の回路に含まれる精密デコ ーダの出力を示す図、 第10[は−例として与えられた二進仮数ビットの組合わせについて異なる解釈 例を示す図、第11図及び第12図は2つの浮動少数黒値の加算例の説明を補強 する図、 第13図は第6図に示す回路に含まれる精密デコーダの一実施例の回路図、 第14A図は第6図に示す回路における全ワード加算器の一実施例のブロック図 、 第14B図は第14A図の加算器における精密スライスのブロック図、 第14c図は第14B1gの精密スライスにおけるビット・スライスのブロック 図、 第15図は第6図に示す回路の増分器における精密スライスの一実施例を示す図 、 第16図は第6図に示す回路のオペランド回路におけるセレクタに含まれる基本 的なセレクタのビット・スライスの一実施例を示す回路図である。
第1A図に概要的に示す数値算術論理演算装置ALUは、制御駆動装置1a、及 びそれぞれがMビット値を伝送する多重(M)伝送ラインを存する一本のバスで ある特定の入出力V O、V l及びV、について算術演算を実行する算術演算 装置アレー2aを備えており、Mは例えば32である。ALUは、好ましくは、 中央処理装置(CPU)の一部分てあり、制御装置(CU)により外部的に制御 されている。ALUは以下の信号:クロック信号人力CALUs ビジー出力A  5usys制御入力A CNTL、ステート出力AatAtg、及びデコード された命令出力A INBにより外部の制御装置1cUと通信をする。
バス入出力V o 、V + 、vt及びvsは、簡約型式の命令を処理し、以 下でコア・プロセッサと呼ぶ構造算術演算装置(図示なし)内のゴール・レジス タ又はGレジスタと呼ぶ特定のレジスタに供給可能にされている。しかし、バス 入出力信号も、好ましくは、簡約型式の計算装置と協働する他の種類の手段によ り供給されてもよいが、他の型式の計算装置も勿論可能である。更に、第1A図 では入出力バスV◇N v+ 、vt及びvsの数を4本として示したが、この 数は任意に選択可能である。しかし、ALUの複雑さは、はぼ入出力バスV O 、V l、V 1 、V *の数と共に増大する。
入出力バスv、 、Vl 、vs 、VZはワードのリストを転送する。一つの ワードは一つの数値又は一つの命令からなる。全てのバスは常時使用状態にある わけではない。使用中でないバス上のワードについては、無視してもよい。入力 リスト及び出力リストは最大長、即ち最大ワード数を有し、例えば4、即ち1入 出力バス当りlリスト・エレメントを含む。一つの数値は一つのワードであり、 このワードはいくつかのワイヤを介して転送される。更に、一つのバス上の一つ の命令も一つのワードである。計算を制御し、かつ実行するために用いられるの は、入出力v、 、Vl s Vl 、v、を介する入力リストである。即ち、 入力リストは供給されるべき計算の種類、及び計算されるべき値の特徴に関する 情報を含む。制御駆動装置1aはこの情報を入力リストから取り出す間に、算術 演算装置アレー2aにおける異なる構成部分を制御している。計算は、1ビツト 、又はビット・グループ形式で、即ち、別個的に一つのワードにおいて同一位置 を有する複数のビットのために、又は一つのワードにおいて「スライス形式」で 供給される複数のグループのビットのために、入力リストの内容を再書き込みす ることにより、行なわれ、かつその結果を出力リストとして供給する。内部回路 を介して値を、最終的な出力リストをその出力に送出する前に、数回反復させる ことが可能なことに注意すべきである。反復中は、一時的な出力リストが出力に 送出されるが、一時的な入力リストとして挿入されるだけである。
リストには、例えば少な(とも一つの整数値、又は浮動少数黒値を含むだけのリ ストのような、処理されるべき値又は他の型式のリストと共に、機能アプリケー ションを含めてもよい。入出力v0を介して供給される第1のリスト・エレメン トは、機能アプリケーションを含むときは、命令コード、即ち実行すべき処理の 種類の情報を含み、残りのリスト・エレメントは、以下て更に詳細に説明するよ うに、命令に対するアーギュメントである。
一つの命令は、最終的な結果を得るためにその命令を1又はい(つかのステップ に再書き込みすることにより、実行される。ALU内ではマイクロ命令及びステ ート信号が用いられている。これらは、算術演算装置アレー2aを制御するため にALU内で別個の制御駆動装置t1 aにより用いられる。再書き込みが直接 、結果に至るときは、出力リストにその値が設定される。段階的に再書き込みを 行なうときは、リストは、同一命令コードを保持するように、又は新しい若しく は少し変更した命令コードを存するように、かつ多くの場合で一つの値又は複数 の値が続く命令コードを有するように、再書き込みされる。数サイクルで再書き 込み処理を行なう最良の形態は、処理全体を通じて命令コードを保持することで ある、ということに注意すべきである。なぜならば、このように場合に制御装置 がより簡単となるからである。しかし、更に、多数サイクル処理の開始時に1種 類の命令コードを有すること、及び残りのサイクル中に少し変更された当該命令 コードを有することなども好都合であろう。
図IAに戻ると、クロック信号CALIIを用いて算術演算装置ALUにクロッ ク・パルスを供給しており、ALUが何時クロック・パルスの受け取り準備完了 となるのかを出力A BLISY上のレディー信号によって表わしている。
命令又は数値内容を有する入出力バスV Os V l、V 2 、V 2は、 ゴール・レジスタにおける主レジスタ・セルに接続されている。その数値内容は 、好ましくは、それか表わしているのは浮動少数黒値か、又は整数かによって異 なる符号化形式によりALUに供給される。各ゴール・レジスタ・セルは、数値 の各入出力と同一のビット(即ち、図示の例では32ビツト)だけでなく、タグ かセットされているいくつかのビット、例えば6ビツトも含む。本発明の最良の 態様とみなされる実施例では、これらのタグは入出力バスに供給される情報に含 まれていない。その代わりに、タグ情報は外部のfilJ御装置1cUに供給さ れ、続いてこの制御装置CUはALUの制御駆動装置1aを制御している。
しかし、タグ情報か直接、制御駆動装置即ちALU制御に供給されるように、入 出力を介して供給される情報にタグを含めることは、本発明の範囲内である。こ れも、ALUが通常型式のプロセッサと協働する装置として用いられるときは、 本発明によりALUを駆動する最良の方法であろう。
制御入力A cNtはALUの数値処理を制御するために用いられる。この数値 処理は数サイクルを要するものとなろう。
出力A I?A?Eは各処理の後に制御装置CUに戻される。
出力Aオ、上の命令コードは、入出力バスV、が接続されているゴール・コア・ セルにおいて命令コードを圧縮したものである。
第1B図 第1B図を参照すると、プロセッサ用の制御装置CUにより供給される基本的な りロックは、C1゜であり、例えばI Onsの周期を存する。ALU処理はこ のような1又は数クロック・サイクルにおいて実行される。ALUに接続されて いるコア・プロセッサは、ALU用の周期より長い例えば2倍周期である周期に より、即ちC+。
か1Onse存するときは、周期20nsを存するクロック信号C3゜により、 制御され得る。しかし、その代りに、コア・プロセッサは、より短い周期により 制御されたクロック信号を備えることも可能である。従って、短い周期を有する 装置(即ち、図示の実施例におけるALUか、又はコア・プロセッサ)用の基本 的な制御信号CA L 11は、長い周期を有するクロック信号C1゜と同期さ せるために命令の終わりで引き伸ばされる。ALUは、命令を実行するために更 に多くのC,、U式のクロック・サイクルか必要な限り、ハイの信号A11US Yを返送する。
第1B図から明らかなように、信号A BLISYがローとなった後に、引き伸 ばしが行なわれる。
第2図 第2図に示す本発明の実施例は、中央エレメントとしてA L tJ制御回路1 0を備えており、その入力で回路に適当な信号の変換及び組合わせを行なって出 力リストのエレメントを供給する。ALU制御回路10は1種のプール代数ゲー ト・アレーを備えている。第2図は第1A図の右手側に対応する。
入出力バスvo、■2、■2、■、は、それぞれが例えば32ワイヤを有する多 数本ワイヤのバスであって、入力バッファ回路11の入力に接続されている。入 力バッファ回路11はそのクロック入力を介するクロック信号によりクロッキン グされてその入力信号を入力バスVol、Vll、Vll、■、1に送出する。
出力バッファ16はそのクロック入力を介する反転クロック信号によりクロッキ ングされて出力バスV 0011?、V 1out、V !QLIT、■、。、 アの情報を入出力バスVo、Vl、Vx、Vsに送出する。第2図において独立 した2つのバッファを含むようにバッファ構成11及び16を示しているが、バ ッファ構成11及び16は、好ましくは、組合わせ人出力バッファ回路である。
多数の計算回路12A−12N(Nは回路の数である。)は少なくとも2つの内 部入力バスVo、、Vll、VZ+、■、、に接続され、それぞれは接続されて いる内部入力バスV。l、Vll、Vll、VS+を介する異なった情報構成に より、簡単な一種類の計算、例えば加算又は引算を行なう。計算回路12A−1 2Nは、本発明によりALUが一部分を構成しているアプリケーションに必要と された、想定されるあらゆる簡単な計算を直ちに待機させることができるように 、設定されているので、時間が非常に節約される。そのとき、ALU制御回路l Oは、他の処理目的のためにそれぞれ特定種類の処理のための計算回路のうちの 適当な一つから出力を直接取り出すように選択することもできる。各計算回路の 規模は小さく、特に電力を消費することはない。従って、並列に計算を行なうい (つかの回路を備えて、その時点でそのうちの一つのみの出力を用いるものであ っても問題とならない。
計算回路の出力は以下で詳細に説明するオペランド装置OP、及びOP、に供給 される。
更に、計算回路12A〜12Nからの信号は、いくつかの場合で、制御に用いら れてもよい。各計算回路12A−12Nは第2の出力を育し、これを介してオバ ーフローを表わ子ために用いるキャリー信号を供給する。この第2の出力はAL U制御回路10の個別的な入力に供給される。計算回路12A〜12Nは、AL U制園開園!Oと、ALUにおける他の回路とにより制御されており、その入力 を介して表わされるワードの種類の情報、浮動少数点値か、また浮動少数点値で あるならば、その数の特性に関する情報を発生する。
多数の監視回路13A−13M(Mは回路の数である。)は、それぞれ個別的に 入力バス■。5、Vll、Vtl、V)lのうちの少なくとも一つに接続されて いる。これらの監視回路は、例えば入力バスの情報の内容を監視、即ち入力バス の情報を比較している。監視回路のいくつかは、監視回路+3Aについてのみ示 すように、計算回路12A−12Nと同一の制御情報か供給される。監視回路1 3A〜13Mの出力はALU制御回路10の入力に供給される。
3〜4つの特性付与回路14A−14Dか少なくとも入力バス、V l lSV  21及びVatに接続され、一部の入力バスから情報を取り出して入力バスの 残りの情報の特性に関する情報を与える。入力バスV2iに接続されたALUl ii1回路10は、以下で更に説明するように、乗算の場合に入力バスvII上 の最下位二進ディジットを導き出す。更に、特性付与回路14Aは入力バスVO Iにも接続されてALU制御駆動回路に対する外部制御バスEXT上の情報が入 力バスV。l上の情報が数を表わすことを示す場合に、所定のいくつかの情報を 導き出すこともできる。
例えば、バス上の情報が浮動少数点値であるときは、このバスに接続されている 特性付与回路は、例えば最上位について、その値の符号、指数符号、及びいくつ かの仮数ビットに関する情報を供給する。特性付与回路14Dが設けられたとき に、Vtlから導き出されてALU制御回路10の1入力に供給する特性の種類 は、入力バス、■、及びv21からの種類と同一である必要はなく、例えばより 簡単されたものでよいことに注意すべきである。
同一の理由付けは入力バスVa+の特性付与回路14Aについても成立する。
ALU制御回路lOは、出力AITATI、本質的に計算回路12A−12N及 び監視回路13A〜13Mからの入力を外部の開園装置CU(第1A図を参照す ること)に供給する。
実行すべき処理に関する復号命令をALU制御回路lOに与えるために、入力バ スv、1上の総情報を監視する命令回路15が備えられている。
第2図に示すように、入力バスV61上の情報は、出力バッファ16に接続され た出力バスv0゜、に、好ましくは、前述のように、クロック信号により逆極性 でクロッキングされている組合わせ人力バッファ回路11及び出力バッファ16 においてバス接続の形式により、直接供給され得る。このバスに命令リスト・エ レメントを持たせ、かつこの命令リスト・エレメントを変更させないことが便利 である。更に、ALUからの他の出力バスV、。117% V xoutSV  s。。アも出力バッファ16にも接続されている。また、全ての出力バス上の情 報は、クロッキングにより同時に入出力バスVO1V’、V!、V2に出力され る。ALU制御回路10はALUにおける他の回路に制御信号CI、C2、c3 、c5を供給する。
しかし、ALUIIJi11回路IOに接続された入力バスvolの少なくとも 一部を備え、これが多数サイクルの処理において実際のサイクルから独立してい くつか変更を可能にさせること、及び変更した命令リスト・エレメントを出力バ スV。uT (図示なし)に供給することを可能にする。
本質的に同一種類のオペランド装置OP、及びOP。
は、それぞれ出力バスV、。ut及びv2゜utを備えている。
しかし、第2図に示す実施例におけるように、2つのオペランド装置を実際に備 える必要はない。本発明による異なったALUアプリケーションに、1つのみ〜 複数の異なる数のオペランド装置を用いることができる。しかし、この種類の処 理は計算回路12A〜12Nのうちの一つにより達成され、かつオペランド装置 の入力のうちの一つに供給され、かつALU制御回路10からの制御により、そ のオペランド装置の出力に送出可能にされるので、加算又は引算を行なうために はオペランド装置が一つあればよい。同時に、異なるい(っかの種類の加算処理 及び引算処理を行なうために、いくつかのオペランド装置を用いることもできる 。各才へランド装置は出力バスV0..を備え(ただし、iは任意数を表わす。
)、従って、入出力バス、入力バス及び出力バスVの数はALUにおけるオペラ ンド装置の数から独立していることに注意すべきである。
乗算処理又は除算処理に関連して用いるため、及びその出力を出力バス■3゜、 に供給するために、他の種類のオペランド装置OP、が備えられている。乗算処 理及び除算処理はいくつかのサイクルのステップにより実行される。オペランド 装置tOP、の出力はV30.である。同様に、1以上の異なる数のオペランド 装置OP、が存在し得ることに注意すべきである。
前述のように、かつ以下で更に詳細に説明するように、浮動少数点の演算に関連 して、指数の長さは、本発明の少なくとも一実施例における少なくとも複数のス テップで、選択可能である。従って、精度デコーダPDI及びPD2は、それぞ れオペランド装置OP +及びOP、のうちの各一つに備えられている。この精 度デコーダは、それが属するオペランド装置に指数部の長さに係わる複数の制御 信号を供給する。この長さは、以下で更に説明する二進ワードにおける特定のコ ード・フィールドから導き出し得るものである。更に、この精度デコーダは、前 述のように、ALU回路の他の部分に制御信号を供給することができる。
ALUに対する、値が整数か、又は浮動少数黒値であるかに関する情報は、好ま しくは、外部の制御装置CU(第1A図を参照すること)によりALU制御回路 10の制御人力EXTに供給されるが、その代りに、入力バスVOI〜VS+か ら導き出されてもよい。
以上から明らかなように、入力バスには異なるが、明確に定義された算術演算に おけるタスクを供給するのが都合よい。従って、入力バスには前述した好ましい とされるゴール・レジスタのように、供給構造から直接、明確に定義されたタス クを有する情報が供給されるか、又はALUそのものが入力バス上の情報を、内 部サイクルにより、かつ他のバス上の情報に関する入力バスv、I上の情報を用 いて適当に変更する。入力バスv0.は、入出力バスVo 、V+ 、V2 、 Vsを介して供給されるリストに情報の種類に関する情報を有するデータ・フィ ールドを備えることかできる。しかし、更に、この情報は外部の制御装置CUか ら供給されてもよい。
以上から明らかなように、本発明によるALUは内部メモリを備えていない。こ れは、各サイクルの乗算処理の結果か、前隅のサイクルの結果の出力によっての み影響されるものにし、これが処理するように適応された入力となる。
前述のように、本発明によるALUに望ましい一目的は、浮動少数点表示系にお いて指数と仮数との間で可変除算を可能にすることである。その場合は、第1に 、小さな数について仮数に多数ビットを有することが可能であり、これが高精度 にする利点をもたらす。他方で、非常に大きな数を取り扱うこともできる。
整数の乗算に関する例 本発明によるALU処理の理解を簡単にするために、ここでは2つの整数の乗算 について例を挙げる。更に、浮動少数黒値を計算する際に、ALU処理について 1つの例を挙げることにする。
例えば、以下の方法により整数の乗算を行なうことができる。第1のサイクルに おいて、乗算されるべき2つの数の一方を入力バスV、に供給し、他方を入力バ スV、に供給する。入力バスv1は情報“0″を有する。
第1の種類のオペランド装置のうちの一方、例えばオペランド装置OP、は、■ 、上の情報をその出力に直接転送するように制御される。他方のオペランド装置 OP。
は、左へ1ステツプだけV、上の情報を遷移させるように制御され、遷移した結 果をその出力に送出する。次のサイクルにおいて、オペランド装置のうちで最初 に述べたオペランド装置OP +は、計算回路12A−12Nのうちの一つに接 続されているその入力のうちの一つから情報を転送するように制御されて、入力 バスV11及びV21上の数の加算を行なう。他方のオペランド装置OP2は、 入力バスv21上の情報を取り込むように制御されて、左に1ステツプだけ情報 を遷移させ、これをその出力に送出する。
その後、各サイクルにおいて、最初に述べたオペランド装ft0P、は、回路の 出力を転送し、入力バスV31上の情報の二進数か“l”であるときは、入出力 バスv1及びV、上の情報の加算を行ない、そうでないときは、入力バスVll 上の情報を取り込むように制御される。ALU制御回路10用の情報は特性付与 回路14Dの出力に供給される。オペランド装置OP、の入力に供給された入力 バスv21上の数値情報は、右へ1ステツプ遷移して最下位の二進ビットを削除 するように制御される。
少なくとも一つのオペランド装置OP、及びOP、は、ALU制御回路IOに返 送するリターン信号(第2図に示されていない。)を供給して、内部のシフトが キャリーを発生させたことを示すことができる機能を備えてもうよい。各サイク ルは2ステツプにより実行され、その一方のステップはクロック信号の最初の半 周期において実行され、他方のステップの次の半周期において実行さ従って、第 3図に概要的に示すように、数値を有するバス上の各ビット・パターンは、好ま しくは、その値の符号、指数符号、及び数値の指数部と仮数部との間の除算位f it(第3図における右矢印を参照すること)に関するコードの情報を有するビ ット・ストリングの最上位ビットに短いビットフィールドを備えている。更に、 ビットフィールドのコード部分の長さは変更可能なこと、及び第3図における左 矢印により示すように、コード・フィールドと指数フィールドとの間の除算位置 の配置がコード・フィールドにより決定されることに注意すべきである。
以下、十進数を表わす3つの方法を説明する。
I 二進数ディジット形式:2を基底に有する数値系。
II 整数H−値二 整数を表わす二進数コード。
III 浮動少数点H−値: 浮動少数黒値を表わす二進数コード。
本発明によるALUに望ましい他の目的は、同一数の整数解釈と同一順序にある 数の浮動少数点表示を得ることにある。従って、同一ビット・パターンの浮動少 数黒値及び整数値は完全に異なる。
しかし、この目的は、表示が浮動少数黒値として解釈されるべきときは、ビット ・ストリング用の第1の解釈式を備え、また表示が整数として解釈されるべきと きは、ビット・ストリング用の第2の解釈式を備えることにょリ、満足され得る 。従って、表示か二進数ディジット形式である必要はなく、その代わりにそのう ちの少なくとも一つ、好ましくは両方が符号形式にある。ビット・パターンの変 換は自動的に行なわれ、当該装置におけるバー−トウエアは以下に示す規則によ り、即ちどのように解釈したかを知ることなく、変換されたビット・パターンに ついての計算を無条件に行なうのみである。
本発明の好ましい実施例によれば、緻密な浮動少数点値表示を得ることを意図し ている。即ち、同一数として解釈可能な2つのビット・パターンであってはなら ない。
用語「近い表示」とは、あらゆる十進数は固有の二進数組合わせに対応している ことを意味する。
第4A図、整数表示 第4A図は整数H値と呼ばれ、本発明による整数値用のコードのグラフ表示を示 す。水平軸に二進数表示が示され、また垂直軸にH値か示されている。最上位ビ ットはその値の符号か負であるか、又は正であるかを表わす。
第4A図から明らかなように、H値は、二進数表示が全て“0“であるときはそ の最も大きな負値を有し、二進数表示の中央で即ち最上位ビットか“0″から“ l“に変化するときはOを有し、二進数表示か全て“l”であるときはその最大 の正の値を有する。従って、Hコードにおける二進数の組合わせ値は、二進数デ ィジット形式で増加するのと同様に、増加する。二進数ディジット形式にある二 進数組合わせワードか“l“であるときは、これも最大値を有する。整数コード は一つの直線である。
第4B図、浮動少数点値表示 第4B図は浮動少数H値と呼ばれ、本発明による整数値用コードのグラフ表示を 示す。水平軸に二進数表示が、示され、また垂直軸にH値か示されている。ここ で、垂直軸は、浮動少数点H値の符号が変化する点を通って引かれている。更に 、この表示において、最上位ビットはその値の符号を表わす。浮動少数点値表示 は汎用的となる仕様を満足させなければならない。ある精度の場合に、その値の 大きさは任意に可変でなければならない。従って、極端に小さな値及び大きな値 の表示か可能でなければならない。浮動少数点H値の目盛は対数である。対数の H値を、それぞれ2の係数の間の直線近似を用いて単純にすることができる。そ の結果は典型的な浮動少数点コードとなる。第4B図に示すように、−1と+1 との間でH値を表わす二進数表示は、二進数表示フィールドの中央に設けられ、 フィールドの半分を含む。
値の相対精度は全範囲の値で一定である。対数値は一定の精度及び範囲を存する 。大きさが任意の大きさでなければならないときは、対数の範囲が調整可能なも のでなければならない。
対数値は一回であっても、又は更に多くの回数であっても対数関数に適用可能と される。従って、非常に大きな値を表わすことができる。その精度は大きな値で 減少するが、小さなレベルての精度を確保すること、又はやや増加とすることも 可能である。
2つの表示の2つのビット・パターンは同じようにして出現するので、浮動少数 点値表示にも整数値の大きさ比較器を用いることができる。これは特定の浮動少 数点値比較器を避けることかできることを意味する。また、これは、lサイクル のみで比較処理を行なう整数値比較器を浮動少数黒値に使用でき、これが大きな 利点となることを意味する。通常要式の浮動少数点値比較器は、その処理のため に多くのサイクルを使用しなければならない。
通常の算術論理演算装置では、いくつかのビット・パターンを同一数であると解 釈することがあり、正規化は、これらのビット・パターンのうちの一つを選択す るようにして行なわれる。本発明によれば、正規化を行なう必要はなく、少なく とも実際の計算では必要でない。正規化を計算処理の前後で行なうことができる 。浮動少数点表示で同じような緻密な表示をすることにより、浮動少数黒値の計 算、例えば比較は1サイクルのみで決定することかできる。更に、緻密な表示を もつことの利点は、浮動少数黒値の最大値も得られることである。即ち、連続的 な値において排除される値及び使用できない値を供給されることかない。
通常のアプリケ−シコンて同一数と解釈され得るいくつかのビット・パターンが 何故存在するのかの理由は、値を生成するために、値の指数部及び仮数部が互い に乗算されることにある。例えば、値1.0は2’*1/2、即ち指数ビット・ パターンO1及び仮数ビット・パターン100を有するものか、又は2”*1/ 4、即ち指数ビット・パターンlO及び仮数ビット・パターンO1Oを有するも のとすることができ、指数ビット・パターン及び仮数ビット・パターンが互いに 続く。
本発明による一実施例によれば、緻密な表示は正の値には仮数ビット・パターン の前に、無条件に、即ち実際に存在することなく、“1“を与え、また負の値に は無条件に“0”を与えることにより生成される。通常、仮数は−1と+1との 間の値として指定される。本発明によれば、二進数化された仮数は符号に従って 範囲(1,0〜2.0)又は(−2,0〜−1)にある値として指定される。
整数パターンは正確に決定され、浮動少数点表示は、整数解釈と同一の連続順序 を有する必要があり、これを規制するのは非常に困難である。
第4C図に概要的にこの問題に対する効果的な解決を示す。第5A図〜第5D図 は第4C図に示す原理に従って設けられたワードのデータ・リストを示す。第5 A図〜第5D図において右端の欄は、左端の欄における二進数組合わせに対応す る十進浮動少数黒値を示す。第4C図は浮動少数点コードの概要的なグラフ表示 を示す。二進数表示は垂直分割線LINの左側に示され、浮動少数点H値は垂直 分割線LINの右側に示されている。垂直分割線LINは高い値を指す軸として 示されている。これは、二進数表示及びH値表示の両方に適応される。
二進数表示及びH値表示は、垂直分割線LINの両端の外側へ伝搬するように示 されている。垂直分割線LINに対して最も近いのは、第4B図における図の軸 の表示である。右へはH値軸、また左へは二進数表示軸である。
軸表示の外側、右の第1のフィールドsh、及び左の第1のフィールドSは、最 上位ビットを表わす。負の値は“0″であり1、正の値は“1”である。
その外側の第2のフィールドseh及びseは、それぞれ次の最上位ビットを表 わす。これは指数符号ビットである。負符号は“0“により表わされ、正の符号 は1″より表わされている。
32ビツトを有する場合について以下で説明するように、少なくとも1ビツトが 次の最上位ビットより低い位置を有する第3のフィールドは、7ビツトのみを有 する図示の場合のように、二進数フィールドがローのときは1ビツト、二進数フ ィールドがハイのときは1ビツトより多い。
第4C図、第5A図〜第5D図に示す実施例ては、実際にはより頻繁に用いられ ると思われる32ビツト・ワードの代わりに、7ヒツト・ワード用の符号化が示 されている。第4C図において中心線のすぐ左の二進数表示は、H値−1024 〜+768を有するものと解釈される。H値−1及び+1は、値Oと極限値−1 024及び値768との間の中間にそれぞれ配置されている。表示用及びH値用 の第1の二進数ビットS及びshは、その値の符号が正の値であるか、又は負の 値であるかの符号である。
第2の二進数ビットは指数符号、即ちその絶対値が数1より大であるか、又は小 であるかの符号である。従って、H値の指数符号ビットsehは−1024と− 1との間で正であり、−1と+1との間で負であり、+1と+768との間で正 である。その代りに、第4C図の左側から明らかなように、二進数表示の指数符 号ビットSeは二進数シーケンスの最初の1/4で負、第2の1/4で正、第3 の1/4で負、かつ第4の1/4で正である。指数符号ビットsehは、例えば s=1ならば、5eh=seであり、そうでなければ5eh=1−seと説明す ることができる。
従って、二進数表示において、キャラクタの符号を表わす最上位ビットは、変化 が最も遅く、指数符号を表わす次の最上位ビットの変化が次に遅い、即ちキャラ クタ符号ビットのものの2倍である。次の桁のビットは指数ビットの2倍の変化 があり、コード・ビットCである。
このコードは、第4C図、第5A図〜第5D図による実施例では、1ビツトのみ を含む。他の実施例では、コード・フィールドは1ビツト以上を含む。このコー ドは指数の長さを制御し、前の符号ビットの観点から見るべきものである。
浮動少数点のH値、即ち達成されるべき浮動少数点記号は、より詳細な形式でコ ード・フィールドchを与える。指数H値を直接与える第4C図におけるセクシ ョンehから明らかなように、この値ehは、大きな正の値から値Oへ低下して H値が−1となり、そこから大きな負の値へ行ってH値か0となり、そこから値 0に行って■(値が+1となり、か一つそこから大きな正の値に行き、H値が7 68となる。セクションehab*は絶対値の指数H値を示し、それぞれが両端 で大きな正の値になり、その中央で0となる。H値ch用のコード・フィールド は、H値eh−b、を反映するように設計されており、従って点線により同一形 式を有するように、かつコード・フィールドが1ビツトのみを含むときは、実線 によりそれか有することになる形式を備えるように示されている。
従って、5e=1のときは、符号ch=cてあり、そうでないときに、符号ch のみが1ビツトを含むときは、ch−ψI−cである。
ここまでは、第5A図〜第5D図に示すリストの説明を進めるのか容易であった 。なぜならば、ビット・フィールドs、sh、se、seh、c及びchのうち のそれぞれが1ビツトのみを含み、従って第4図における表示と、第5A図〜第 5D図における表示との間の比較は明らかとなる。第5A図〜第5D図における 第1の欄はoooooooからlll’1lllまでの連続的な二進数のリスト であり、十進数系において直接対応する値を第2の欄に示す。矢印側の右には、 表示用に変換した数、及びH値が示されている。このリストは、第4C図の表示 との比較を容易にするために、表示コード・フィールドの各切換用に連続的な水 平線が設けられている。
chの右の欄は、表示の指数値eの十進表示、その次のH値の指数値ehの十進 表示を設けている。次の2つの欄は値e及びehの二進数表示をそれぞれ示す。
その次の2つの欄は、表示用の仮数値mの十進表示及び二進数表示をそれぞれ示 す。その次にH値の仮数値mhの十進表示を示す。仮数は、第5A図において値 shを“0”とする−1と−2との間、及び第5C図、第5D図において値sh を“1″とする+1と+2との間で変化することに注意すべきである。右端の欄 は、変換されたときは、左端の欄における二進数組合わせにより得られる十進H 値を示す。
第5B図の上部から明らかなように、最上位ビ・ノドとして“1″を存し、”θ ″が続(表示は、特定の浮動少数黒値“0”を表わす。
第4C図において中心線から左隣の連続的な二進数から明らかなように、符号ビ ット及びコード・ビットに3上位ビットが確保されるので、7二進数ビツトは指 数及び仮数により共有されるべく残されたその4下位ビットを有する。ディジタ ル欄e及びmから、指数符号seを負、即ち“0”とし、コード値Cが“1″で ある最上部のセクションにおいて、値eは3ビツトを含み、従って値mは1ビツ ト(その欄において最初の2つの“0″は省略することができる。)である。こ れは第4c図に示されており、このセクションにおいて多くのステップにおいて e表示を有する。指数符号seが依然として負であるが、符号値Cが“0″であ る次のセクションにおいて、値eは1ビツトのみを含み(その欄における最初の 2つの“0′は省略することができる。)、仮数値は3ビツトを含むことかでき る。これは第4図にこのセクションにおいて数ステップにおけるe表示を有する ことにより示されている。次のセクションにおいて、値eは1ビツトのみを含み 、仮数は3ビツトを含み、以下同様になる。
表示部分に示すように、指数eは、C=O及び5e=Oを存するセクションにお いて多くのステップを存し、c=1及び5e=1を存するセクションにおいて少 数のステップを有する。セクションeの左のセクションe+biasにおいて、 完全なlセクションの各1/4内で互いの後の線に設けられた値eが連続的な線 により示され、かつ点線により、e h * b−か6+biasにおけるlセ クションの全ての第2の1/4を反転させることにより、とのようにして構築さ れるかが示されている。
(ehは指数符号を存するeの値を表わしている。)従って、コード・ビット又 は複数のコード・ビットは前の指数符号ビットに従っている。このために、実際 のコードは符号ビットを含んでおり、従って非常に限定された長さを有する、即 ち指数の長さがコード・フィールドにおいてのみ備えられているものに従うべき ときは、より短くなり得る。
仮数の長さは、指数か長いときは、仮数が短くなるように、及びその逆となるよ うに、指数値に従っている。
従って、仮数は第4図には示されていないが、第5A図及び第5B図におけるリ ストの欄m、mから明らかである。ただし、最初のmは十進数値を示し、第2の mは対応するそのディジタル値を示す。前述のように、s=1のときは、mh= 1.0+mであり、そうでないときは、mh=−2+mである。
前記の例は、説明するために7ビツト・ワードについて説明した。前述のように 、ワード長は極めて長く、例えば32ビツトが選択されることがある。そのとき は、可変コード長を有するのが実際的である。更に、回路をより簡単にするため に、複数ビット、例えば4ビツト・グループのステップにより、指数と仮数との 間の1除算点から進行させることが実際的である。これによる利点は、進行がビ ット形式で行なわれるときに必要とするような多くのコードを必要としないこと である。以下で、このような精度デコーダの1例を更に説明する。
第6図に第2図に示す回路の実施例の詳細を示す。入出力バスVO、Vl 、v =及びV、は入出力バッファ20に接続されている。この人出力バッファ20は 、人出カバッファのクロック制御入力に供給される外部クロック信号CLOCK の各反転クロッキング期間に入力上の情報を内部バスv、Iv、、、v!l、■ □にそれぞれ転送し、また各タロツク期間に内部出力バスV0゜。ア、V +o t+t、V ROUT、V、。u、上の出力を入出力バスvO、’+’l 、V 2、v8にそれぞれ転送する。
第7A図、第7B図及び第7C図 第7A図、第7B図及び第7C図に人出力バッファ20及びそのクロッキングの 実施例を示す。更に、人出力バッファ20は、各入出力バスve SVl 、v = 、V@について一つの入力バッファと、同一数の出力バッファとを有する。
レーシング問題を発生させないために、クロック信号は重なり合ってはならない 。これは、クロック信号の前縁を少し切り欠いて調整される。
左に括弧により印した反転されている、第7A図に示すクロック信号CLOKの 第1のフェーズにおいて、外部発生源から入力は、送信ステートに開織されてい る入力バッファを介してALU内の内部データバスに供給される。データは、出 力バス上に設定される次のステートへ遷移する間に、ALU内の内部データバス を介して伝搬される。出力バスは禁止ステートにセットされる。
第7B図に示すように、第7B図の左に括弧により表わしたクロック信号CLO Kのクロック期間のフェーズlにおいて、人出力バッファ20の入力バッファは 禁止ステートに制御され、ALU内の内部回路は安定なマルチプレクサとして機 能して入出力バスV6 、Vl 、Vl、V、上に供給される信号を制御する。
人出力バッファ20における出力バッファは、送信ステートにセットされる。
フェーズ0での多重サイクル命令における条件を第7C図に示す。フェーズ0で は、前のフェーズ1中でALUから供給された入出力バスVo s Vl 、V z 、Vsの内容を、容量効果のために保持することができ、従って出力バッフ ァが禁止ステートに制御されている閏に送信ステートに制御されている入力バッ ファを介して入力バスv、l、 vl、、v2I、■□へ転送し、またここから 次のステートへ遷移する間にALU内の内部データバスを介して伝搬する。
好ましい応用によれば、入力リストのみを用いて、入力リストにおける内容を再 書き込みにより行なう計算を制御すると共に実行させ、かつその結果を出力に供 給させる。このリストは格納した機能アプリケーション又は他の型式のリストを 存することができる。機能アプリケーションにおける第1のエレメントは命令コ ードであり、残りのエレメントは命令にアーギュメントされる。好ましいこのア プリケーションは、入力データに依存する機能ハードウェアを備えることに依存 している。しかし、入力バスV1、V 11s V $1上に存在する情報の種 類に関する情報は、好ましくは、制御装置CUから入力EXTを介して与えられ る(第1A図を参照すること)。
制御装置CUは、好ましくは、入力バスV61、Vll、■、1、Vll上のワ ードが命令及び/又は番号を表わすかの情報を有し、またその番号が浮動少数黒 値、又は整数であれば、この情報をバスEXTを介してALU制細回路27に供 給する。
しかし、実際に機能的な動きが要求されない有用なアプリケーションであること もあり、そのときは例えばALU制御回路から入力EXTを介してALU制御回 路に対する外部情報を用いて計算の制御及びパフォーマンスを得ることもできる 。
一つの命令は、lステップによりその最終的な結果まで命令を再書き込みするこ とにより、又は最終的に結果に到達するためにいくつかのステップによりリスト の値を再書き込みすることにより、実行される。
ステップ状の再書き込みを行なうと、同一の命令コードを各ステップに用いるこ と、又はリストを新しい命令コードに再書き込むことができる。このリストは値 に従弟6図に示す実施例には異なる命令を実行するために以下の処理装置が備え られている。即ち、第1の比較器21が入力バスVOI及びVllに接続され、 これらバスの全ての情報を比較し、即ちVOI>Vll、v、1=v1.につい て比較し、その比較結果、即ち2ビ、。
ト値をALU制御駆動27に接続されているその出力Cmpo+に供給する。第 2の比較器22が入カッ(スV11及びV21に接続され、これらバスの全ての 情報を比較し、即ちvz>vz+、■、、=v、、について比較し、その比較結 果をALU制御駆動27に接続されているその出力c m p 12に供給する 。第3の比較器221が入力!(スv、1及びV□に接続され、これらバスの全 ての情報を比較し、即ちV 1+ >V $ISV !l=V 31について比 較し、その比較結果をALU制御駆動27に接続されているその出力Cmp*z に供給する。第4の比較器222がそれぞれ32ビツトのバスである入力バスV ll及びVllに接続され、これらバスのワードの最上位部分、即ち部分se、 c、e、即ち仮数及び符号を除く、全ての情報を比較する。比較器は前述の部分 5e、C,eのコードについて記録する。従って、精度デコーダPDからの信号 B Igblは、比較器222の別の入力に供給される。
第5の比較器223は精度デコーダからの信号B Igbl及びB Igblを 比較する。その結果の信号Cl71p−prcは、信号B Igbl及びB l +1+2が同一であるかどうかを示している。
ALU制御回路27は比較器からの比較結果を制御装置CUに接続されている出 力A、□ATLに供給する(第1A図を参照すること)。更に、この比較結果を 以下で説明するいくつか装置の制御に用いることかできるので、適当ならば予め 選択されたワードを出カッ(スv1゜−、vz。、、及びV、。、、上に送出す る。
無効デコーダ23がワイヤVllに接続されており、Vll上のビットが全て“ 0”か、又は“ビであるかを調べており、バスVll上のワードが浮動少数黒値 を表わすときは、指数部及び仮数部におけるビットか全て“0”か、又は“l” かを個々に調べる。
この情報に関する情報は信号B Imblから導き出され、入力V11の最下位 ビット・グループを表わす。この信号は、入力バス上のワードが整数を表わして いるのか、又は浮動少数黒値を表わしているのかについての情報、かつ浮動少数 黒値の場合には、指数部と仮数部との間の除算の情報を供給する。これら試験の 結果はALU制御回路27の入力に接続されている出力insig、に供給され る。
無意デコーダ24かバスVttに接続されており、V21上のビットは全て“0 ”か、又は“1”であるかを調べ、バスV□上のワードが浮動少数黒値を表わす ときは、指数部及び仮数部におけるビットが全ての“0“か、又は“l”かを個 々に調べる。これについての情報は信号B +ah2から導き出され、最下位ビ ット・グループの入力V□を表わし、信号B Imblと同−型式の情報を供給 する。
これら試験の結果はALU制御回路27の入力に接続されている出力insjg *に供給される。
無意デコーダ25かバスvi+に接続されており、Vll上のビットが全て0″ か、又は012であるかを調べ、バスV21上のワードが整数を表わすとき、及 びバスV2+上のワードが浮動少数黒値を表わすときは、指数部及び仮数部にお けるビットが全て“θ″か、又は“l”かを個々に調べる。これについての情報 は信号B Igblから導き出される。これら試験の結果はALU制純回路27 の入力に接続されている出力insfgsに供給される。
更に、各無効デコーダもALU制御回路27から以下で更に説明する制御信号c 5gにより制御される。
無意デコーダを有する目的は、実行すべき計算に参加する入力のうちの一つの情 報か無意とすべきか、否かを検出する。更に、この情報はバスA 5rpttを 介して制御装置CUにも供給される。無意装置のうちの一つの少なくとも一人力 が例えば全て0を示す最終条件は、多数の繰返しを含むいくつかの型式の処理の ためにALU制御回路27により用いられてもよい。
命令デコーダ26が入力バスV□に接続されている。
この入力バスVatは、ALUが演算処理を実行すべきときは、命令を転送する 。vo、をデコードした結果は、VOIが命令又はデータ値を有するときは、出 力insを介してALU制御駆動27に転送される。更に、無意デコーダ23〜 命令デコーダ26は、精度デコーダPDI、PD2及び27において発生した他 の信号B Igbl、B Igbl及びC6によってもそれぞれ制御されており 、更に以下で説明される。
加算器及び引算器 入力バスV、及びVllに接続された第1の加算器28が加算v、、十v!、を 行ない、その結果を別個の出力a。
に供給する。発生し得るその結果のキャリー信号はALU制御駆動27に接続さ れた出力gra+に供給されることになる。入力バスV11及びVllに接続さ れた引算器29は、引算Vll Vllを行ない、その結果を別の出力a、に供 給する。発生し得るその結果のキャリー信号はALU制御駆動に接続された出力 grewに供給されることになる。入力バスV、及びv!Iに接続された第2の 加算器30は加算V11+2*V!Iを行ない、その結果を別の出力a、に供給 する。可能とするその結果のキャリー信号はALU制園制動駆動27続された出 力grasに供給されることになる。
更に、加算器は以下で更に詳細に説明するALU制御回路27からの制御信号C 5により、及びに信号B1□b1より制御される。この信号は、入力バス上のワ ードが整数を表わすか、又は浮動少数黒値を表わすかの情報、かつ入力バスV1 1及びV21上の浮動少数黒値及び調整された値の場合には、指数部と仮数部と の間の分割の情報を供給する。離散的な値、即ち整数が一つのエンティティとし て評価されるが、連続的な値、即ち浮動少数黒値、仮数部及び指数部については 、個別的に評価されるので、この情報は本質的である。
第1の符号及び指数符号回路35は、入力バスvl、上のワードの符号、指数符 号、最上位仮数ビット及び2つの最下位仮数ビットを処理し、かつALU制御回 路27の入力にその出力S ign+を供給する。第2の符号及び指数符号回路 36は、入力バスvtl上のワードの符号、指数符号、最上位仮数ビット及び2 つの最下位仮数ビ・ソトを処理し、かつALU制御回路27の入力にその出力s ign、を供給する。第3の符号及び指数符号回路37は、入力バスvs1に接 続されてもよく、ALU制御回路27の入力にその出力51gn1を供給する。
符号及び指数符号回路35及び36は、入力バスV11及びv、1上に供給され たワードの一部分として符号、指数符号及び仮数ビットを処理するときに、必ず 必要とされることに注意すべきである。これらは、入力バス上の浮動少数黒値ワ ードの場合にALU制御回路により用いられる。
符号及び指数符号回路37は、本発明によるALUのいくつかの応用において省 略されてもよい。更に、符号及び指数符号回路(図示なし)は、入力バスVOI 用に備えられた本発明によるALUのいくつかのアプリケーションにおいても可 能である。
ALU制御回路27はその入力信号を処理することにより出力バスcl、c2、 C3、C4、C5上にディジタル出力信号を供給する。ALU制御回路27は、 好ましくは、プール代数ゲート・アレーである。出力信号により供給される制御 例は、以下で更に説明される。
オペランド装置 入力バスV11及びVll上の各オペランドについて一つの2つのオペランド装 置rl及びr2は、lエレメントに固有な全ての演算処理を含む。各オペランド 装置はいくつかの情報入力を有する。これら情報入力のうちの3つは、3つの加 算器28.29及び30の個別的な出力a+、a*及びa、にそれぞれ接続され ており、これらのうちの3つは入力バスV11及びVllにそれぞれ接続されて いる。また、これらのうちの3つは、以下で更に説明するように、個別的な精度 デコーダPDI及びPD2のいくつかの出力にそれぞれ接続されている。要する に、各情報入力は、各入力バスVo+、V I 1% V ! l、v、lと同 一数のワイヤを含むバスである。
オペランド装置r1の出力は出力バスV、。、lであり、オペランド装置r2の 出力は出力バスv2゜、、である。
オペランド装置r1の第1の出力clはオペランド装置rlにおける内部エレメ ントを制御する複合制御信号である。オペランド装furl用の他の制御信号は 精度デコーダPDIにより供給される。ALU制御回路27の第2の出力C2は オペランド装置tr2における内部エレメントを制御する複合制御信号である。
オペランド装置r2用の他の制御信号は精度デコーダPD2により供給される。
第3の出力C3はオペランド装置r3に供給される複合制御信号であり、第4の 出力C4は以下で説明するポリソーム(polynome)供給回路31に供給 され、第5の出力C5は精度デコーダPDI及びPD2、更に無効回路23〜2 5、加算器28.30及び引算器29並びに符号及び指数符号回路35〜37を 制御するために供給される。
各オペランド装置rl及びr2は、本質的に同一の構成を育し、従ってそれらの うちの一つr2のみを詳細に説明する。オペランド装置rl及びr2において対 応するエレメントには、同一の参照番号が与えていた。オペランド装置は2つの グループ、即ち指数部OP、及び仮数部OF、に分割される。仮数部OP、は出 力nlを存し、指数部は出力n2を有する。出力nl及びn2は、グループ別セ レクタともいう出力バス・セレクタM1の入力に接続されている。制御信号C2 I+により制御された選択により4“0″又は4“1″の精度グループを供給す る0/1発生器40は、更に出力バス・セレクタM1の付加的な入力にも接続さ れている。
指数部OP、は、入力としてオペランド装置の入力のうちの4、即ち精度デコー ダPD2からのVll、及びB blast 、B ca l++e+!、B  co dsc+2を有し、更に仮数部0PL11からの入力n8も育する。入力 VZ+はインクリメンタTNCの入力、デクリメンタDECの入力、及びワード ・セレクタM2の5人力のうちの一つに接続されている。構成要素INC及びD ECの出力n5及びn6は、ワード・セレクタM2の2つの入力にそれぞれ接続 されている。B eo 1mer!、B eo dec+ffiはワード・セレ クタM2の2つの入力のうちの他方に接続されている。
更に、オペランド装置r2における構成要素INCはキャリー出力gr+を及び Ce1tを存し、一方、構成要素DECはALUflilJIU回路27に接続 されたキャリー出力grdz及びCeatを有する。(更に、オペランド装置r 1はインクリメント構成要素のキャリー出力Cez及びg r zを有すると共 に、ALU制御回路27に接続されたデクリメント構成要素のキャリー出力Ce a+及びg r a+を有する。)キャリー出力はクロック・サイクルの前半中 の始めで供給される。ワード・セレクタはクロック・サイクルの前半の終わりで 制御され、このワード・セレクタの制御信号は、インクリメント回路又はデクリ メント回路のいくつかにおいてキャリーがあったか、なかったかを考慮して供給 される。
第1のセレクタに対する通常の最大伝搬遅延はI/2サイクル以上である。従っ て、この構成により発生する付加的な遅延はない。しかし、典型的な伝搬遅延は 1/2より全般的に小さい。全ての信号は最後の1/2サイクルへの遷移時に評 価される。セレクタにおいては不必要な遷移が発生することはない。
オペランド装置におけるワード・セレクタM2の出力n4は、4人力ワード・セ レクタM3の第1の入力と、インバータINVを介してその第2の入力に直接接 続されている。出力n2は指数部OP、の出力である。入力B b l a a  2はワード・セレクタM3の第3の入力に接続されている。
仮数部OP、は5人力、即ちvt+、a+qaz及びa、を有する。これらの入 力は全て5人力及び出力n8を育する各ワード・セレクタM4の入力に接続され る。
出力n8は指数mOP、におけるワード・セレクタM3の第4人力に接続されて いる。更に、出力n8は、ワード・セレクタM5の3人力のうちの一つと、その 入力における二進数情報を4ステツプだけ下位方向にシフトする、即ち二進数情 報を16により除算する負のシフタSH1を介してワード・セレクタM5の入力 のうちの第2の入力と、その入力上の二進数情報を上位方向に4ステツプだけシ フトする、即ちその入力上の二進数情報を16により乗算する正のシフタSH2 を介して入力のうちの第3の入力とに直接接続されている。
ワード・セレクタM5の出力n7は、直接、ワード・セレクタM6の6人力のう ちの第1の出力と;その入力上の二進数情報を下位方向へ1ステツプだけシフト させる負のシフタSH3を介して第2の入力と:その入力上の二進数情報を下位 方向へ1ステツプだけシフトする正のシフタSH4を介して第3の入力と;その 入力上の二進数情報を上位方向へ1ステツプだけシフトする正のシフタSH5を 介して第4の入力と:その入力上の二進数情報を上位方向へ1ステツプだけシフ トする正のシフタSH6を介して第5の入力とに接続されている。内部定数ワー ド発生器41はその制御人力C21゜上の制御字に定数ワードC1゜、0を発生 し、ワード・セレクタM6の個別的な入力に接続された出力を育する。内部定数 ワード発生器41は、0若しくはlの所定の組合わせ、例えば全て“0”若しく は全て“1“のグループ、又はこの発生器に制御信号c2+。により制御される い(つか特定の情報を表わすワードを供給することができる。この発生器は制御 信号e2+。により選択するように、限定数のワード組合わせのみを格納するこ とができる。ワード・セレクタM6の出力は仮数部OP、の出力nlである。
仮数部OP、は以下の機能を実行する。n8上の基本的な仮数値はワード・セレ クタM4により選択されてV 21Sa + 、a !又はa、を発生させる。
これは、そのまま、又はシフトされた1、2.3.4.5.6ビツトだけ右へ( 正のシフト)、又はl、2.3.4.5.6ビツトだけ左へ(負のシフト)され ているものとして用いられても、又は内部定数ワード発生器41により供給され るワードCwatd2により置き替えられてもよい。
指数部OP、は以下の機能を実行する。その出力は、n8v2.+1、反転され たV tl+I s V il−1、反転されたV 21 1 s B eo− 1me+2、反転されたB c++−deer2、又はB b 1m + 2  c r 1上のシフトされていない仮数値であり得る。
オペランド装ftr2において、ワード・セレクタM2〜M6はALU制御回路 27の出力C2上の制御ワードC2により個別的に制御されている。従って、ワ ード・セレクタM2は制御ワードC2の部分c2sにより個別的に制御され、ワ ード・セレクタM3は制御ワードC2の部分C22により個別的に制御され、ワ ード・セレクタM4は制御ワードC2の部分C2,により個別的に制御され、ワ ード・セレクタM5は制御ワードC2の部分c2@により個別的に制御され、ワ ード・セレクタM6は制御ワードC2の部分C24により個別的に制御される。
更に、ワード・セレクタM4の出力n8に接続されたシフタSHI及びSH2は 部分信号c2gにより、シフタSH3及びSH6は部分信号C27により、イン クリメンタINC及びデクリメンタDECは部分信号029により、出力C7゜ 7.2を供給する内部定数ワード発生器41は部分信号c2+。により、及び0 /1発生器40は部分信号C21,により、制御される。
ビット・グループ個別セレクタMlは、制御ワードの部分C21、精度デコーダ PD2からの出力コード信号B0.2、出力最下位ビット信号B +sh s4 1を及び出力指数信号B @Hp adllを含む組合わせられた多数ビット信 号により制御される。最後に述べた2つの信号は、それぞれ精度デコーダPD2 から来る出力B I m k及びB azp2からの処理回路42A及び42B により導出される。この信号は以下で更に説明され、かつ図示される。処理回路 42A及び42Bは、ALU制御回路27からの出力C2の一部分である信号c 2sにより制御される。精度デコーダPD2は、ALUfIIJ御回路27から の二進数制御信号c5.と共に、入力としてバスV2+上のffl1!の指数符 号及びコード部分を有し、パスVtt上のワードは整数を表わすのか、又は浮動 少数点値かを表わすのかを示している。制御信号c5sはALU制御回路27か らの出力c5の一部分である。
オペランド装置rlのための精度デコーダPDIも同じようにして動作する。精 度デコーダPDIからの信号B 1sbl、B @X?lは、処理回路43A及 び43Bにより処理され、B15hadll及びB mxl adllをそれぞ れ供給する。
通常、処理回路42A、42B及び43A及び43Bはそれか属するデコーダか らの入力として同一の出力を供給する。しかし、いくつかの場合に、キャリーが インクリメンタINC又はデクリメンタDECから供給されるときは、以下で更 に説明するように、出力信号がシフトされる。このシフトは、それぞれALU制 御回路27からの出力C2又はclの部分信号c2i又はC1iによりそれぞれ 制御される。
精度デコーダPD2(又はPDI)は、ワードvt、が整数を表わすときは、例 えば、全て0が供給される処理回路42A、42B(又は43A、43B)に対 する出力と、ワードVt+(又はv、1)が浮動少数黒値整数を表わすときは、 B @!F2、B 、ab2及びS、、、t(又はB *yyl、B1□1及び B cdsりとして以下で説明する種類の出力とを有することにより、示されて いる全て無意の出力を供ビット・グループ個別セレクタM1は、出力n1及びn 2上に供給される情報及び0/1発生器40からの複数の部分を選択するように それぞれ制御される。第3図に示された型式、即ち浮動少数点値を表わす型式の ワードは、第8図の上部に、分裂矩形形式で示されており、ビット・グループを 形成することが可能な方法を示す。
基準s、se、c、e、m、msb及びlsbは、符号、指数符号、コード、指 数、仮数、最上位ビット及び最下位ビットをそれぞれ表わす。出力バス・セレク タMlに対する入力情報の分割モザイクの組合わせ例は、矩形形式のワードの下 に示されている。制御の型式は二一モニックにより表わされたデータ・ワードに 通常に用いられており、このような二−モニック例を第8図の左に示す。
当然、各二一モニックは、例えば5又は6ビツトを含むビット・パターンにより 表わされる。ビット・パターンは、好ましくは、制御バスc2+を介して出力バ ス・セレクタMl(及び制御バスcl+を介して出力バス・セレクタMl)に供 給される。処理回路42A及び42Bは、信号B lsb mart及びB * ++p adl!を出力バス・セレクタMlの制御入力にそれぞれ供給するのに 適当なときは、精度デコーダから来る信号B +abl及びB mtptをシフ トさせる。従って、出力バス・セレクタMlは、その入力に供給されるいくつか の信号により制御されるが、プール代数ゲート・アレーを通る着信組合わせ制御 信号の一定のビット組合わせに応答して、第8図から明らかなように、各組合わ せは入力nl、n2の出力と、0/1発生器40の出力との組合わせから特定の 組合わせを供前述のように、オペランド装置r1は実質的にオペランド装置r2 と同一の構成を存する。2つのオペランド装置r1とオペランド装置tr2との 間の相違は以下の通りである。即ち、入力v1及び入力V、は位置を変更した。
定数C1゜、d□は定数Cw。r42から独立している。回路r1は制御回路C 1により制御され、ALU制御回路の個別的な制御ワード部分c1.〜c1.1 へ除算され(制御出力C2による代わりに)、かつ入力としてVll as a ll 、即ちVllの指数符号及びコード部を有する精度デコーダPDIにより 制御される(入力としてvzl ss ell 、即ち特にvzlの指数符号及 びコード部を有する精度デコーダPD2による代わりに)。
精度デコーダPDIは、出力信号Bca−decrl、Bco−1ae+l、B  bla*Iq BagPIs BImkl、B m g b I及びB e  d * +をオペランド装置r1に供給し、かつコードが指数の最大長を表わす か否かを示す信号B ca **x1、及びコードが指数の最小長を表わすか否 かを示す信号B0゜−1,1をALUIIJ陣回路27に供給する。精度デコー ダPD2は、出力信号BCO−4*etl、BCQ−1sc+2、B h1ms 2 、B@met、B Igb!、B mob!をオペランド装置r2に供給し 、かつコードが指数の最大長を表わすか否かを示す信号B C0IIIII11 及びコードが指数の最小長を表わすか否かを示す信号B go−slmlをAL U制園開園27に供給する。前述のように、精度デコーダPDI及びPD2から の出力B1□b、Bm*eは、新しい精度を出力に反映させるために仮数がシフ トさせるのと同様に、かつ信号C2s又はC1mの部分の制御にそれぞれ従って 、処理回路42A及び42B又は43A及び43Bの制御による行なわれる通常 のシフト中に、シフトされなければならない。
各精度デコーダは、その入力に、入力バスVl+及びv2.上のワードが整数又 は浮動少数点値をそれぞれ表わすか否かを示す信号cFzが供給される。信号C 53はALU制御回路27の出力C5からの信号の一部分であり、無意デコーダ 23〜30を制御している。
精度デコーダからの出力信号については以下で更に詳細に説明する。
乗算及び除算、オペランド装置r3 第3のオペランド装置r3、被乗数/商機能装置は、オペランド装置r1及びr 2と別の種類であり、通常乗算及び除算処理用に設けられている。オペランド装 置r3は乗算及び除算機能中で必要とするシフト及び設定を実行する。ALU制 陣回路27の出力C3に供給される制御ワードにより制御される。
被乗数/商のオペランド装置r3はいくつかの入力を有し、その第1の入力は入 力バスvll上の情報、その第2の入力は入力バスv、1上の情報、及びその第 3の入力は定数ワード発生器44からの出力が供給されている。
この定数ワード発生器44は、ALU制御回路27からの出力C3の部分信号C 34の制御時にそのものに格納されたい(つかのうちから選択したビット組合わ せを供給するものである。
オペランド装置r3は複雑な数値命令中にアーギュメントを評価するために用い られる。その出力は出力バスv3゜1に接続されている。
入力バスV21はワード・セレクタMllの第1の入力に供給されている。入力 バスV□はワード・セレクタM11の第2の入力、信号部分c3sにより制御さ れた正の1ビツト・シフタ5HIIを介してその第3の入力、第1の負の1ビツ ト・シフタ5H12を介してその第4の入力、及び第2の負の1ビツト・シフタ 5H13を介してその第5の入力に直接接続されており、最後に挙げた2つのビ ット・シフタは信号C3@ s B mobISN 1mblにより制御されて いる。定数ワード発生器44の出力はワード・セレクタM11の第6の入力に接 続されている。
第2のワード・セレクタM12の入力に供給されるべきワード・セレクタMll の出力は、ALU制御回路27からの制御ワードC3の制御ワード部C32によ り選択される。
M12はワード・セレクタMllの出力を出力バス■、。。アに供給するバス接 続であるが、以下で説明するように、これを制御ワード部c3+によりスイッチ ・オフ条件に制御することができる。
バッファ回路26′が入力バスVOIに接続されている。
バッファ回路26′はその出力にVO2を供給するバス接続であるが、これをA LU制御回路27からの制御ワードc4によりスイッチ・オフ条件に制御するこ とができる。従って、通常、バッファ回路26′の出力バスv0゜1は、入力バ スv、lと同一の情報を有する。
数値ALUの自己試験 いわゆる多項式発生器31を備えることができる。多項式発生器31は自己試験 のためにALU用に複数の試験コードを発生する。多項式発生器31は、アーギ ュメントとして内部入力バスVa+、V目、v 21. v 、、上の全ての情 報を含むクロージャ全体を用い、ゴール・レジスタ用の値を出力バスv0゜8ア  %VIOL+7 、v2゜。ア 、■3゜uT′に供給する。
自己試験を行なうときは、ALU制御回路27は、信号C4によりバッファ回路 26′と、信号cl+によりオペランド装置r1における出力バス・セレクタM lと、信号c2.によりオペランド装置r2における出力バス・セレクタMlと 、信号C3Iによりオペランド装置r3における出力バス・セレクタM12とを 制御して出力バス(それぞれV@0IIT、v+ouy、Viouア、■!。L l’r)上の出力をスイッチ・オフすると共に、通常スイッチ・オフされている ボリノーム発生器の出力にスイッチ・オンさせる。このようにして、情報につい て切り換えをして、装置t26’、rl、r2及びr3から出力バスVOOII T、V +OUア、v2゜。ア及びV、。0.上へ出力することに代わって、入 出力バスvo 、v、s V2及びV、に供給されるのは、多項式発生器31の 出力V @OVT’ 、V +out’ 、V tour 、内部回路26’  、r L r2、r3からの出力バス、及びボリノーム回路31の出力バスv0 ゜LI?’ 、V l。u7 、v touア′、■、。。7′からの出力バス は、トライステート・ドライバ39の異なる入力に接続されている。トライステ ート・ドライバ39は、はぼ第7A図〜第7C図に示す人出力バッファ20と同 一の構成を育し、スイッチ・オンにされた即ち伝送している内部回路からの内部 バッファと、スイッチ・オフされた、即ち通常条件である阻止されている多項式 発生器31の出力バス用の内部ノくッファとを備えるように、又は試験サイクル の場合に他の方法を備えるように、ALU制御回路の出力C4により制御される 。
第9図及び精度デコーダPDI及びPD2第9図は、例えば入力バスv1.又は Vtt上の浮動少数黒値を表わしているワード用の精度デコーダの出力信号の実 施例を示す。この例に関連して浮動少数黒値用の精度デコーダの出力を説明する 。
以下で更に説明する精度デコーダのアーギュメントは、浮動少数黒値により説明 される指数符号及びコード部であり、ワードが浮動少数黒値を表わしていること を示す制御信号が供給される。これはl+4ビット幅である。
コード・ビットにおいて異なるコードは、異なる精度(仮数長及び従って指数長 )に対応する。指数の最下位グループ1sb(第8図を参照すること)は精度に より変化する。このグループは第9図の実施例ワードにおいてビット・パターン 0100を有するグループである。
二進数信号B1゜1は、l精度グループ当り1ビツトを存する。即ち最下位精度 グループを除き、全てのグループについて“0”を有する。
コード及びその反転形式は同一精度を表わしており、対応する指数符号は以下の 表に示すように、補数である。
lsb用のグループ 前の指数符号を含むコード0(ワードのlsb 未使用  未使用 を含む) 1 1 1111 +0 0000 2 1 1110 +0 0001 3 1 1101 +0 0010 4 1 1100 +0 0011 5 1 10−− +0 01−− 6 1 0−−− +0 01 7(ワードのmsb 未使用 未使用 を含む) 前記表に示したコードは1エレメントとして指数符号を存する。このエレメント が真であるならば、他の全てのビットはそのまま用いられ、偽であるときはこれ らは反転される。
前述のように、精度デコーダは連続するプール代数値、即ちいくつかの出力ワー ドを供給し、これらはALUにおける異なる装置、例えばALU制御装置等に供 給される。浮動少数点値を表わすワードのときは、符号B18゜はグループ1〜 6のうちの一つについて真の1ビツトのみを供給することができ、残りのビット は偽のビットである。グループO及び7のときは、偽のビットは常に供給される 。
連続する8ビツトのプール代数値(各精度グループに一つ)は、真のビットによ り第9図における8、82の横に示すように、コード/指数に属する精度グルー プを表わす。
実施例では、変化するコード長のために、最上位指数ビットの3つの可能位置が 示されている。第9図に示すように、ここでB□、は3ブ一ル代数値であり、位 置のうちの一つか真のビットを育することを表わしている(他は偽のビットであ る。)。従って、例えば1sb1〜4のグループのときに、B□、は図示の例に おいて001であり、コード長が最大であることを表わしている(前記表を参照 のこと)。010はグループ5及び100グループ6を示すべきである。
第9図における例では、B e 4 mは2つの最上位精度グループにおける全 てのビットに対応している8ブ一ル代数値である。B e 4 @は最下位コー ドから指数符号までの真(“1″)である。
ここで、Bol、は浮動少数黒値表示の調整に用いる32ビツト・ワードである 。全てのビットは、最下位指数ビットを除き、偽(“0′)である。
更に、精度デコーダは、精度が変更されたときに、いくつかの処理において用い られる増加コードBe1115g+及び減少コードB、。4.C1をそれぞれ供 給する。信号Be*Isc、及びBcenactについてワードの指数符号及び コード部に及ぶ第1のビットを示す。しかし、このワードは、好ましくは、32 ビツト長である。残りのビットは、好ましくは、全て0″である。
プール代数値Be6111all及びBeamlmは、コードが指数の最大長か 、又は最小長かを表わす。第9図に示す実施例において、最下位指数ビットはグ ループ4に供給されている。そのときは、両プール代数値Bea*ax及びB、 。0.は0である。最下位指数ビットがグループlに供給されたときは、プール 代数値Beaml++は“l”であった。また、これがグループ6に供給された ときは、Bamwa+mは“O″であった。
第9図に例示した信号は浮動少数点値の場合に供給された信号である。整数のと きは、信号+rb 、B’axD、B、6.及びB hamが全て偽である、即 ち“0”のみを育する。勿論、他の組の組合わせを用いて整数を表わすことが可 能なことに注意すべきである。これのための条件は、これらの信号のために非常 に特定的なビットの組合わせは整数を表わすことである。
精度デコーダの一実施例は第13図に示されている。
浮動少数点値の加算例 整数用の乗算処理の前記例を第2図に関連して示した。
浮動少数点値の乗算処理の例を示す。
前述のように、連続的なコード機構は冗長性を持っていない。即ち、検出のため に付加されたデータは存在しない。従って、調整及び精度調整として通常の処理 は直接的な方法では不可能である。この問題を解決するためにv6.上の情報に は3つのステートが含まれている。これらは、以下でaオペランド及びbオペラ ンドと呼ぶ入力バスV11及びVtt上のオペランドをどのように符号化するか を定めている。3つのステートは:Naオペランド又はbオペランドは変更され たコードを有せず、いずれも正規化されている。
Aaオペランドは変更されたコードを育し、正規化されていない。
Bbオペランドは変更されたコードを有し、正規化さ第10図は正規化コード、 及び変更コード用の仮数のビット・シリース1010の解釈例を示す。結果1. 625を与える正規化コードに関して仮想lが供給され、一方結果0.625を 与える変更コード用の仮想ビットは供給されない。
第11図及び第12図、調整 連続的な加算、即ち2つの浮動少数点値の加算の第1のステップは、指数が等し くないときに、入力バス上のオペランドを調整することである。値aを例として 第1及び第2の調整サイクルを示す第11図及び第12図に示されているように 、浮動少数点値a及びbを加算し、a=1,512”かつb=−1,l 25* 2”のときは、浮動少数点値は浮動少数点値すより小さな指数を育し、従って実 際の加算処理前に調整されなければならない。
図示の例は、3つの場合を用いて2つのオペランドを調整するように設定されて いる。値aの指数は1だけ増加され、かつその仮数は2により割算される(下位 へ1ステツプ・シフトされる。)。これは、値すと同一の指数(33)を持つた めに2回行われる。
この例は、3つの場合を用いて2つのアーギュメントを調整するように設定され る。
1、 調整サイクルにおける初期値は、指数値がコードCについて最高の可能性 があり、指数符号が負である二進数組合わせにより表わされる。数の精度は、指 数符号が正であっても負であっても数精度に相違がないことに注意すべきである 。指数をステップさせるときは、精度を増加させる必要がある。指数部分に1が 加算されると、仮数は左へ適当なステップ数だけシフトされる。
2、このサイクルにおいて調整サイクルにおける初期値の指数値はコードCが最 大の可能性を有する。指数をステップさせるときは、精度を低下させる必要があ る。指数部分に1が加算されると、仮数は適当なステップ数だけ右ヘシフトされ る。
3.11整サイクルにおける初期値の指数値はこのサイクルでは最高の可能性で はない。指数はステップされ、仮数は2により除算される。
この例における値aの第1の調整サイクルにおいて、即ち以上のビット表示から 第11図における以下の表示への変化において、指数が増加され、かつそれが最 大となるとき、即ち全て“1″を含むときは、精度フードにキャリーが伝搬され 、これも増加されるということから、精度コードは右へ1ビツト増加される。そ の後で、コードは、より大きく、かつ1ビット長いものと解釈される(前記の表 のグループ5におけるコードを参照すること)。実際では、これは、指数部がそ の左側で1ビツト減少され、またその右側で1精度グループ(4ビツト)増加さ れることを意味する。更に、指数値もlたけ増加される。仮数はまず右へ4ステ ツプだけシフトされ(精度は減少される。)、次いで右へ1ステツプ・シフトさ れる(2により除算される)。仮数グループが下位へ1ステツプ・シフトされる と、仮想“l”は仮数部にシフトされ、従って最初の調整サイクル後においてそ の最上位精度グループはディジタル組み合わせ1100を存する。
調整のハードウェア実行 値aがバスvl、上に供給されると、オペランド装置rIにおけるALUの1サ イクルにより、この処理が実行される。その指数値は、もとの値aの表示が最も 可能性のあるものとなる。指数符号は正であり、これは全ての指数ビットが1で あることを意味している。指数かインクリメンタINCにより増加されると、全 てのビットは0となり、インクリメンタINCはキャリーgrIIをALU制御 駆動回路27に供給する。ALU制御駆動回路27は二進数出力部の信号c15 を変更して、精度デコーダPDIから来る信号を左ヘシフトさせるように処理装 置43A及び43Bを制御する。更に、キャリーgri+は前述のようにコード 部に伝送される。
減少を行う場合は、同一種類の説明がデクリメンタDECにも成立するが、キャ リーgr++(Jはl又は2である。)を供給するときは、部分信号C1゜は処 理装置43A及び43B1又は42A及び42Bをそれぞれ制御してを左へシフ ト(*2)させる。インクリメンタ及びデクリメンタは、クロック信号の前の半 周期の最初の部分でその出力を供給し、従って制御信号を前記半周期の初期に処 理装置に供給できることに注意すべきである。
全てのオペランド装置のセレクタ制御は、クロック信号の前記前の半周期の後の 部分で行われる。精度デコーダからの出力はクロック・サイクルの後の部分では 変更されない。これらの出力は、内部入力バスVo、、■1、V21及びV31 が安定した値になると、すぐに安定化される。前述のように、クロック・サイク ルの前半で、バス接続20における入力バッファは外部バスV O、V I、■ 2及びVsからのデータを通過させ、また出力バッファは外部バスからのオペラ ンド装置からの出力データを遮断する。クロック・サイクルの後半において、入 力バッファは内部入力バスVO,、vll、v21及びvll上の値を保持し、 かつ新しい出力データを外部バスに転送させる。これは、精度デコーダが新しい 出力データによって影響されることを意味する。
仮数は、オペランド装置rlにおける右シフトlの精度グループ装置SH2によ りl精度グループを右へシフト(即ち、16による除算)させる。下位の指数精 度グループは精度デコーダPDIにより供給されるビット・ベクトル信号B I wklにより表わされる。このシフトは、処理袋fi43A及び43Bによって このグループの右へ実行されるものである。仮数をシフト1単位SH5(2によ る除算)によって新しい位置から1ステツプ更にシフトさせるために、B 1m b+ビット・ベクトル信号は処理袋(f43A及び43Bにより右へ調整される 。調整されたベクトル信号BIobadllは、仮数部OPm及び指数部OPe からの出力を選択するために用いられる。回路40から出力される付加グループ の4つの“0”は、指数部における新しい最下位精度グループとしてこれを完結 させるためにrlに挿入される(第8図のcef m/cet mを参照するこ と)。
ビット値“1”は、正規化されたコードにおいて仮想ビットであって、正規化さ れた正の仮数((1,0+m)/2)の除算に対応する新しい最上位仮数位置に シフトされる。新しい仮数は正規化されていず、従って値aは変更されたコード (指数領域と仮数領域との間の仮想ビットとして“0”を有するコード)を得る 。
第12図に示すように、第2の調整サイクルにおいて、精度を変更する必要はな い。即ち、指数におけるビット数は変更される必要はない。指数は“1″により 単純に増加され、コードCは変更されることなく残る。この指数は、この調整サ イクルのもと元の値の精度状態において最も可能性あるものではないので、キャ リー信号を供給してコードを変更させることはない。
仮数はlステップ右ヘシフトされる(SH5)。ここで、シフトは変更されたコ ードによって行なわれるので、指数と仮数部との間に仮想“1”は存在せず、仮 想“0”がシフト・インされ、最上位精度グループにおけるディジタル組み合わ せは01110となる。従って、調整の後では、値aは変更されたコードを有し 、0.375*2”と表わされる。
連続的な加算の第2のステップは、正規化された仮数を得るために、加算の結果 ではなく、アーギュメントを正規化することにある。a十すの結果は、正規化さ れた結果ではない0.375*”−1,125*233=−0,750*2°で ある。従って、正規化された和−1,5*2”(−0,750*2″3/2)を 与える加算の後に、アーギュメントの正規化が続く。
浮動小数点値の乗算は、第2図に関連して以上で説明した整数の乗算と同様に、 実行される。ただし、時間遅延を低減させるために、1ビツトのみの代わって2 ビツトが用いられる。
乗算ループ中では、仮数の等式は、 S m a * S m b ” S m V + + + S m V !  l * S m V t Iである。
ただし、smは符号、仮想ビット及び仮数ビットにより構成され、真の符号を持 った仮数値であることを示す。
ワードV11は乗算ループ中において指数符号はなく、精度コード又は指数値を 育する。その代わりに、その仮数は処理の実際の精度より長い。仮数の先頭ビッ トは、ワードV11の全体が部分的な仮数に等しい離散的な値となるように符号 化される。符号ビットは積の補正値を有する。
ワードV21は被乗数であり、変更されていない。
ワードvfilはもとの指数符号、精度及び指数値を存する。しかし、仮数は符 号ビットに付加されてワードの仮数部より1ビット長い精度を形成する。この場 合に仮数は符号ビットなしに独立した値として符号化される。符号ビットはワー ドv1、の符号から抽出される。
乗算ループ中において、ワードV++は右ヘシフトされる。ワードv、1も各ル ープで2ビツト右ヘシフトされる(SH13)。Vs+における全てのビットが 処理されたときは、ループは終りとなる。その結果は、正規化されたものになっ ている。
当該技術分野に習熟する者は、以上で示した処理の説明例に基づき、ALUによ って他の型式の処理の取り扱いが可能な方法を容易に導き出せると信する。
第13図、精度デコーダ 精度デコーダの原理的な構造は第13図に示されている。例えば計算速度を高め るために、図示の構造に変更を実施できることに注意すべきである。これらは単 なる構造的な特徴であって、当該技術分野に習熟する者には明らかなことなので 、以下では説明しない。これは、実際の回路が第13図に示す構造と全く異なる 構造もあり得ることを意味し、図から明らかなように原理的な機能を育すること を意味する。
入力信号v1.の指数符号及びコード部(ただし、jはl又は0である。)は再 コード回路50に供給される。
この再コード回路50は、この型式の実施例の精度デコーダにおいて、その入力 にどのような変数が入力されようとも、前記表に示した先行する指数符号を含む コードの変形のうちの一つ、例えば左のものをその出力に供給する。これに代わ って、再コード回路50の出力に両方の変形、例えば前記表において割付けた線 上の左の変形、及びこれに割付けた線上の右の変形を供給することができるが、 常に同一順序である。この出力はビット・シーケンス比較回路51に供給され、 ビット・シーケンス比較回路51はその入力におけるビットの組み合わせを監視 し、コードの長さを表わすディジタル信号B、8.を供給しく第8図を参照する こと)、選択例においてコードの長さが1.2又は3ビツト長であるかを表わす 。更に、ビット・シーケンス比較回路51は信号B c d mを供給する。
更に、6ビツトのシーケンス比較回路52〜57も再コード回路50の出力にも 接続されており、それぞれは、再コード回路50からの出力ワイヤ上のビット・ パターンが、その通常の出力“0”に代わって出力“l”を供給するように応答 させるものと同一のときは、その特定符号に応答してその出力に“1″を供給す るようにされている。第8図から明らかなように、6ビツト・シーケンス比較回 路52〜57のうちの一つのみがその時点で“1″、即ち真の信号を供給し、他 は出力“0”、即ち偽の信号を供給する。信号B1−における最初及び最後のビ ットは常に“0”である。従って、2本のワイヤ58及び59がビット“0“を 育するワイヤに直接接続される。
ワイヤ58.6ビツト・シーケンス比較回路52〜57及びワイヤ59は、精度 グループ当たり1ビ、ソトを育するバスB36.に接続される。バスB61.は 精度グループ当たり4ビツトを育する。各グループは3ビツトの“0″と、特定 のグループのための信号B18.のビ、ノドとを含む。従って、各グループのワ イヤのうちの3本は“θ″に接続され、第4のワイヤは出力B I a kのう ちの適当なワイヤに接続されている。出力Be5m1mは6ビツト・シーケンス 比較回路52の出力に接続され、出力Balsamは6ビツト・シーケンス比較 回路57の事由に接続されている。
出力B、!、のビット・パターンは、出力B Iglmが“l”を有する位置ま で最下位位置に“0”を有し、その後は全てのビットが“1”である。ワイヤ5 9上にある最下位ビットは、常に“0”となるが、次の最下位からビット“1″ の可能性がある。従って、ORゲート60は6ビツト・シーケンス比較回路57 の出力に接続された1人力、及び6ビツト・シーケンス比較回路56の出力に接 続された他の入力を育する。6ビツト・シーケンス比較回路57の出力は信号B 、1.の次の最下位ワイヤに接続される。ORゲート60の出力は信号B、8. のその次に最下位ワイヤに接続される。従って、6ビツト・シーケンス比較回路 57の出力が“l”のときは、これも同様にORゲート60から出力ビット“1 ”を供給する。ORゲート60の出力は、6ビツト・シーケンス比較回路57及 び56からの出力が共に“0″となるときにのみ、“0″となる。ORゲート6 0の出力は他の0Rゲー)61の第1の入力に接続されており、ORゲート61 は6ビツト・シーケンス比較回路55の出力に接続された他の入力を有する。O Rアゲ−61の出力は出力B、1.の第3の下位ワイヤと、ORゲート62の第 1の入力とに接続されており、ORゲート626はビット・シーケンス比較回路 54の出力に接続された他の入力を有し、以下同様に説明される。この種のOR ゲートのカスケード接続は、出力B l l bにおいて“1″を与える位置と 同−又は高い位置を有する全ての位置で“1”を出力する。
ワードBeod*evの符号、指数符号及びコード部は、“l”を供給する装置 に接続した第1のワイヤと、B10の第6のワイヤに接続されているインバータ 161に接続した第2のワイヤと、B3,1の第5及び第6のワイヤに接続され ている入力を有するORゲート162に接続した第3のワイヤと、B l +  bの第2及び第3のワイヤにそれぞれ直接接続されている第4及び第5のワイヤ とを有する。これらワードBe。20.1の符号、指数符号及びコード部用のワ イヤは、その出力に32ビツト・ワードを得るために、入力ワードに“0”を加 算するビット完結回路66の入力に接続されている。
ワードB。。1me+の符号、指数符号及びコード部は、“l”を供給する装置 に接続した第1及び第2のワイヤと、B19.の第7のワイヤに接続されている インバータ163に接続した第3のワイヤと、B11.の第3及び第4のワイヤ に接続されている入力を有するORゲート164に接続した第4のワイヤと、B  l m bの第3及び第5のワイヤに接続されている入力を存するORゲート 165に直接接続した第5のワイヤとを有する。これらワードBca1m。、の 符号、指数符号及びコード部用のワイヤは、その出力に32ビツト・ワードを得 るために入力ワードに“0”を加算するビット完結回路67の入力に接続されて いる。
第14a図〜第14c図、加算器 加算器の一実施例、例えば第3図における回路28〜30のうちの一つを第14 A図〜第14C図に示す。この加算器は2つのアーギュメントa及びbを存する 。このアーギュメントはバスv目及びパスVtt上のアーギュメントb上に供給 される。これらのアーギュメントは浮動少数黒値か、又は整数として符号化され ている。整数のときは全ビット“0”を有し、また、浮動少数黒値のときはビッ トのうちの一つが“1″を有する第6図におけるALU制御回路27及びバスB  l+bl及びB Igb!からの出力C5のうちの信号c5+は、このことを 示す。第14A図に示すように、加算器はカスケード接続された8つのセクショ ンGO,Gl、・・・・、Gi、・・・、C7により、即ち各精度グループに付 きlセクションにより構築された二進数の加算器である。
加算処理についての以上の説明から明らかなように、アーギュメントa及びbが 浮動少数黒値である場合に、これらを加算可能となる前に、アーギュメントを調 整することか不可欠である。これは、B I*bl及びB +ab2は等しくな ければならないことを意味する。B l+blは加算器を制御するために信号B  11にとして供給される。信号B6..は最」1位仮数グループのキャリー伝 搬(これを阻止する。)に影響するので、これが加算器、インクリメンタ、ディ クリメンタ等に供給されているときは、これかは仮数の方向に1ステツプ遷移さ れる。従って、信号B、8゜における最下位ビットをこれらの場合に用いること はできない。
それぞれ32ビツトを含むアーギュメントa及びbは、それぞれ4ビツトを含む 8グループに分割される。a及びbの4ビットの各グループは、個別的なセクシ ョンGiの独立入力として供給される。iは0と7との間の整数である。バスB 18.の各ワイヤは、GOを除き、セクションChiのそれぞれに接続される。
セクションG7に対するワイヤC+aは、加算器か加算又は引算を行なうべきこ とを表わす。C1は、加算のときは“0′であり、引算のときは“l”である。
以下で更に詳細に説明するように、各セクションは次のセクションに供給すべき キャリー信号Ceu11を供給すると共に、隣接する前のセクションからキャリ ー信号C1m1が供給される。
アーギュメントa及びbの加算は、必要ならば、各セクションGO〜G7におい て個別的に行なわれ、67〜GOの順序で次のセクションへキャリー信号を供給 する。
浮動少数黒値のときは、必要ならば、仮数キャリーを供給する仮数搬送バスC3 を備える。このノくスは、符号ビットを有するワイヤC8及び指数符号ビ・ット を有するC、、と共に、第6図におけるALU制圓回路27に対する入力gra b(又はgr、2及びg r 、りを形成する。ALU制御回路27は情報をバ ス、↑8.tを介して外部制御装置CUに供給する。
信号c5+は、アーギュメントa及びbが整数か、又は浮動少数黒値かを表わし 、信号c5tは、コードがアーギュメントaのために正常か、変更されたかを表 わし、かつ信号c5sは、コードがアーギュメントbのために正常か、変更され たかを表わす。これらの信号は、最上位ビット・スライス(符号スライス)を含 む最上位精度グループに対応するセクションGOに供給される。これは特にオペ ランドa及びb(オペランドa及びbが整数か、又は浮動少数黒値かに)のフォ ーマ・ノドに従っている。
バスC1を定められた値に、例えばオペランドが整数であるときは、全て“0” にセットさせるために、トライステート・ゲート70か備えられている。それ以 後は、仮数キャリーはバス上で活性化されることはない。トライステート・ゲー ト70は信号C5,により制御される。
セクションG1の構成の実施例を第14B図に示す。
これは4つの加算器スライスASI−AS4に「スライス」される。これは、更 に、次のセクション用のキャリ’sa+lを評価するセクション用のキャリー発 生器も含む。問題のセクションGiのための各ビット・グループa、及び1)、 は、個別的な各加算器スライスA S Kにぞれぞれ接続されl二個別的なピッ hash及びblkを有する。kは1と4との間の整数である。各加算器スライ スはSUM出力のうちのlピッl1−3U、kを出力する。
第14C図にヂC二詳細に説明するように、キャリー発生器は、そのセクション の和か16より大きいか、又は等しいことを表わす生成ビットG e nと、そ のセクションの和が15より大きいか、又は等しいことを表わす伝搬ビットPr と、前隅のセクションからのキャリー・ビットC1m1と、加算器スライスAS 4からのキャリー・イン・ビットC1m14 と、ビットBIlbl+1を備え ている。ビットBl+bl*lは、インバータ75を介してトライステート・ゲ ートの反転入力、及び直接、トライステート・ゲート76の制御入力に供給され ている。ビットCI+114はトライステート・ゲート76の第2の反転入力に 接続されている。従って、ビットBl+bl+1か“0”のときは、トライステ ート・ゲート76はヒツトBl+bl。1を送出するように制御されている。し かし、ビットB111+1゜1カ(1の場合は、トライステート・ゲート76は 、キャリー・アウトか“1”のときに仮数がキャリー・アウトを有することを表 わすビットCll114を送出するように制御される。
アーギュメントの指数部に隣接する精度グループのために、仮数のキャリー・ア ウトを供給することのみが必要であり、“1”のピッ1=Bl#kl。1を有す るのはこのグループのみである。
セクション間でのキャリー伝搬は、指数部に隣接する精度グループのために阻止 される。従って、ビットB 1.。、。1はANDゲート77の反転入力に接続 され、このANDゲート77は他方の反転入力に反転信号Genを入力しており 、従ってB1゜1.1が“0”のときにのみ、信号Genを送出する。更に、ビ ットB15kl+1はANDゲート78の反転入力にも接続さね、このANDゲ ート78は第2の反転入力に反転信号Prを入力しており、従ってB Igh  l+lが0”、かつC1m1が0″のときにのみ、信号Prを送出する。AND ゲート79はANDゲート77及び78の出力に接続された入力を有し、かつA NDゲートのうちの一つが出力“l”を有するときに出力“1″を供給する。
各加算器スライスASKの一実施例を第14C図に示す。入力aIk及びす4. は、排他的論理和ゲート80の各入力に供給され、排他的論理和ゲート80は入 力か互いに異なるときは1”を供給し、そうなければ“0“を供給する。排他的 論理和ゲート80の出力は第2の排他的論理和ゲート81の一方の入力に供給さ れ、その他方の入力にはビットCI+++hが供給されている。排他的論理和ゲ ート8Iの出力は、その入力が異なるときにのみ“l“となって、出力5um+ hを供給する。この出力Sum1mは、前隅の加算器スライスからのキャリー・ ビットの管理、又はその加算器スライスかセクションの先頭のときは前隅のセク ションからのキャリー・ビットの管理するものである。
ビットalk及びbl、は反転出力を有するORゲート82の入力に供給され、 続いてこの反転出力は各ANDゲート83.84.85の第1の反転入力に接続 されている。反転ビットc1.lk*はANDゲート83の第2の反転入力に供 給され、このANDゲート83は、ビットalk及びb lkのうちのいずれか が“l”であるならば、ビットC++++iを送出する。前隅の加算器スライス からの反転ビットP l++ lk *はANDゲート84の第2の反転入力に 供給され、このANDゲート84はビットalk及びb lkのうちのいずれか が“l”であるならば、Pl++lkであるビットPaullkを供給する。反 転ビットGlalk*はANDゲート85の第2の反転入力に供給され、このA NDゲート85はビットalk及びb lkのうちのいずれかが“1″であるな らば、G1m1kを送出する。第14B図から明らかなように、各精度セクショ ンにおける第1の各加算器スライスについて、ビットP1mlk及びビットG1 5lkはそれぞれ“1”及び“0″である。
ビットPr及びGenは、リップル・キャリーを実現するために、即ち加算器を 高速化するために、必要とされる。キャリー・チェーンの入力に離散的な値が存 在するという事実により、全ての精度グループは並列に、即ち全ての精度グルー プについて同時的に計算される。加算による最後のキャリーC6は、リップル・ キャリーなしに、32ゲート遅延に比較して4+8ゲート遅延のみを有する。
更に、ビットash及びb lkは反転出力を有するANDゲート88の入力に も供給され、続いてその出力は2つの各ORゲート86.87の第1の反転入力 に接続される。ANDゲート83の出力はORゲート86の第2の入力に接続さ れ、このORゲート86は出力Com+lkを供給する。ANDゲート85の出 力はORゲート87の第2の入力に接続され、このORゲート87は出力G。、 1.、を供給する。
非常に高速なキャリー・チェーンを得るために、ビット・スライスがリップルの 極性を反転しており、伝搬にットが反転されているときは、キャリー・チェーン においてl遅延のみを持つことが可能である。従って、このような場合に、あら ゆる第2の精度グループ・セクションは反転入力(図示なし)を有する。
第14A図における左側から明らかなように、最上位精度セクションGOは他の セクションとやや異なる。最上位精度セクションGoは入力アーギュメントB1 gbOを使用していない。これは、グループ内で“0”であるとみなされる。そ の代わりに、これは、仮数キャリー・インc1..を有する。仮数キャリー・イ ンC1゜、は、符号ビットに対してキャリー人力を発生するために用いられる。
通常のキャリー出力は、B18.。か“0″即ち偽であるとみなされることを除 き、通常のグループとして発生される。
1ビット信号c!5+ s C5! 、C5mは以下のビット・パターンを有す ることが可能である。即ち、(C58、C5z、C5,)=(偽、偽、偽)は整 数を意味する。
(C5,、C5,、C5m )= (偽、偽、真)はa及びbが共に正規化コー ドを有することを意味する。
(C5+ 、C5! 、C5* )= (真、偽、偽)はaが変更された正規化 コードを有することを意味する。
(C5,、C5z、C5,)=(真、真、真)はaが通常のコード、bが変更さ れたコードを存することを意味インクリメンタの構成は加算器の構成に非常に良 く似ている。第15図はインクリメンタにおける精度セクションの一実施例を示 す。このインクリメンタは入力a′(図示なし)のみを有する。増分ビット・ス ライスASビ〜A34′は、一方から他方へ転送される発生器ビットGenを存 していない点で、加算器ビット・スライスと異なる。増分ビット・スライスAS 4’からの反転出力Pr及び前隅のセクションからの反転キャリーC1a*は、 2つの反転入力を存するANDゲー)90の2つの反転入力の各一つに供給され る。第1のセクションG7に対するライン上のキャリー・インC1mが“1”で あるということは、増加を実行することを意味する。ANDゲート90の出力及 びビットB15kl+1は、ORゲート92の各入力に供給され、ORゲート9 2は次のセクションに出力キャリ−Cや1.を供給する。インクリメンタのキャ リー出力は加算器と同様に供給される。リップル・キャリー・チェーンC1,/ CoIは、和が2に等しいか、又は2より大きいことを表わしている。リップル ・キャリー・チェーンP、′は、和が1に等しいか、又はlより大きいことを表 わしている。
加算器どして、インクリメンタは信号B15kl□により制御された仮数キャリ ー出力バスc3を有する。制御ビットc1g又はC2*は、表示が整数であるか 、又は浮動少数点値であるかを表わしている。制御ビット01g又はC2*はト ライステート・ゲートを制御するものであり、このトライステート・ゲートは使 用されていないときは、仮数キャリー出力バスを定められた値に設定する(図示 なし)。
デクリメンタはインクリメンタと同一の構成を有するが、このデクリメンタはイ ンクリメンタ・スライスAS1′〜AS4’に対応するデクリメンタ・スライス に対して反転入力a′、*を有する。
一般的に、オペランド装置におけるセレクタは、1行のトランスミッション・ゲ ートにより構築される。セレクタは常に定められた出力を有する。このセレクタ は制御ワードのリスト及びアーギュメントとしての値入力を有する。一つを除い て全てオフである。各入力の制御は相補的な信号により制御される。セレクタの 全体はこのようなエレメントのリストにより制御される。これらのエレメントは 、所定のボートから入力を取り込むように異なる状態に制御されている。基本的 なセレクタのビット・スライスの一実施例を第16図に示す。セレクタS 1m s 、S 1mb SS lac及びS ladに対する各入力ボートのビット のうちの一つが、制御可能なスイッチS1、S、、Sc及びS、の入力にそれぞ れ接続されている。
一対の制御ワイヤScいS e bs S c c及びS cdは、各スイッチ 用に備えている。対応するスイッチに入力を転送する対の制御ワイヤは、情報“ 1,0”を存し、その他のものは情報“0、l”を有する。
ALUにおける大部分の回路は加算器に関連して説明した原理に従って構築され ており、従って当該技術分野に習熟する者がこれらの原理を利用している残りの 回路を容易に構築することかできることに注意すべきである。
従って、個々の回路について詳細に説明する必要があるとみなすべきではない。
ALU駆動回路の説明 付81は浮動少数点値に加えて指数の調整用の入力と出力との間の関係を示す。
この付録は異なるr制御ケース」に分けられている。
各制御ケースは1出力、即ち1マイクロ命令に対応する。
見出し「マイクロ命令ワイヤJの下に列挙されているALU駆動回路27の出力 は、バスCl−C5上の信号レベルである。バスCI、C2及びC3は、ALU における種々の点に接続されているより小さなバスCII、Cx2、Cx*等に 分割されている。
興なる組の入力は同一出力を発生させることがある。
同一出力を発生させる他の入力信号は、条件l、条件2等として列挙されている 。従って、「ステート、センス・ワイヤー条件4」として見出し「制御ケース1 」の下に列挙した入力は、以下の見出し「マイクロ命令ワイヤ」に従って出力を 発生させる。条件1,2及び3として列挙した入力は、条件4と同一出力を発生 させる。
各条件はいくつかワイヤ上の信号レベル(0/1)の一定の組合わせにより定め られ、−万能の状態のワイヤは定められていない値を有することができる(X= 任意)。
更に、信号cc) 11m1tl及びco 11m1t2を除き、付録に列挙し た全ての入力信号は、第6図にも示されている。
第6図において、信号co 11m1tlは2つの構成要素Bcamaxl及び B9゜m1m1に分割される。
更に、信号co l1m1t2も2つの構成要素Bc。1.82及びBe*ml a!に分割される。
出力AstAytはALU制御回路27に対する全ての入力の単なるコピーであ る。出力A8TATlは制御装置CUに接続されている。
付録2は、整数の乗算を実行しているときに、ALU制御回路27からの入出力 間の関係を示す。
第6図に示すALUf/1JI11回路27は、極めて複雑な構成のプール代数 ゲート・アレーである。その一実施例は示されていない。これは、有益な信号に 関連した制御信号の構成に係わる全てのアルゴリズムを備えているコンピュータ により、その構成か計算されるためである。このプール代数ゲート・アレーは、 本発明による全ALU用のチップのマスク・パターンとして直接提供される。
従って、この回路を詳細に示すことは不可能である。付録に、ALU制御回路2 7の入出力間の関係についてのリストを、整数の乗算及び浮動少数黒値の加算に おける指数の調整の場合について示す。
本発明を特定の実施例を参照して説明したが、当該技術分野に習熟する者は、本 発明の真の精神及び範囲から逸脱することなく、種々の変更及びを行ない得ると 共に、その構成要素を等価な物により置換し得ることを理解すべきである。更に 、本発明の本質的な教えから逸脱することなく、変更を行なうことがてきる。
値は、ゴール・レジスタ即ちGレジスタ(図示なし)、又はいくつかのALU内 部装置により、命令オペランド/乗算 商、又はボリノーム(po lynom e)として供給されてもよい。バス上の残りのビット・ストリングにおける表示 の種類に関する情報は、命令バスにおける情報により与えられてもよ(、またコ ード・フィールドにより与えられてもよい。
ステート、センスワイヤー条件1 iaa 16.O: IIJ O/ J/ Or o、5711ステート、セン スワイヤー条件2 ステート、センスワイヤー条PF3 1Aa (CHl oJ al uz @; O; Os 1]ステート、セン スワイヤー条件鴫 マイクロ命令ワイヤ al l to、[(0,11; (1,O1+、 10XO: Q; 01l a110 [070J Or Oz 工]c5 Lot O# l茅 制御ケース2 ステー1・、センスワイヤー条件1 ステート、センスワイヤ 条件2 ステ−1−、センスワイヤー勇゛「トコステート、センスワイヤー条件 4 マイクロ命令ワイヤ as (0,O,lν cs +O,0,11 ル11fllケース3 ステート、センスワイヤー条件 1 ステート、センスワイヤー条件2 !ステート、センスワイヤー条件 4 マイクロ命令ワイヤ c5 (’# ’−1) 、制閤′r−ス唱 ステート、センスワイヤー条件I Lns ((b Ox 6z O; lr l# (b Or ilステート、 センスワイヤー条件2 −一 [0; 0: 6t @; Lr 1; O; O: 11ステート、セ ンスワイヤ 条件 4 マイクロ命令ワイヤ c4 40. l> cs to、 o、 x+ 明ffi?−ス 5 ステート、センスワイヤー条件 工 ■−[0; 6+ 6: 0; 1: O: O; 0111ステート、センス ワイヤー条件 2 ins 10; Or O; O: l; ロ、Or O: 11マイクロ命令 ワイヤ cs (0−OI 1> 制御′r−ス6 ステート、センスワイヤー条件 1 ステート、センスワイヤー条件 2 マイクロ命令ワイヤ e5 (Or 0.11 1キq祷i−ス 7 ステート、センスワイヤー条件 l ステート、センスワイヤー条件 2 マイクロ命令ワイヤ c5 (0,0,11 制電ケーース 6 ステート、センスワイヤー条件 工 1fis to: Or OJ O; Is 1; C1; Q; 11ステー ト、センスワイヤー条件 2 Lns lo; O: 6: O,X、 ’−: OX O: 1+マイクロ命 令ワイヤ c4 (0,11 dIOe 0.11 制御テース 9 ステート、センスワイヤー条件 1 ins (OtOx O; tk; 1.Or O: Or 11ステート、セ ンスワイヤー条件 2 ins [0; O; Q: O: L: O: Q: Or IJステート、 センスワ・イヤ 条件 3 Iss [(b O; O,or 11 Or O: OJ l)ステート、セ ンスワイヤー条件 4 1m +O; Gy Qr O: 1; O; Or O: mlマイクロ命令 ワイヤ c5 1G、0. 1) 制−ケース 10 ステート、センスワイヤー条件 1 ステート、センスワイヤー条件 2 ステート、センスワイヤー条件 3 ins [0; O; Or ロi 1: O: 0; O; 1115m l et O: O; Or 1; Or 0; 111マイクロ命令ワイヤ cs (0,O,↓) 制御ケース 2、 ステート、センスワイヤー条件 1 15JIO;Q;Q;口jLr1+ToO;11ステート、センスワイヤー条件  2 Lns【0:O;O;orL;1;01C’+11ステート、センスワイヤー条 件 コ ”” 1ol(b Q; O; L; 1; O; O; 13ステート、セン スワイヤー条件 4 1n4+[0+ l Or Or 1+ 1r Or (111マイクロ命令ワ イヤ c4 (0,11 C5(Q、0. 11 祠御ケース 、2 ステート、センスワイヤー条件 1 ムLm IOJ O: O; O; 141. Oj Or 1]ステート、セ ンスワイヤー条件 2 ステート、センスワイヤー条件 コ Lag 10; O: 0; 07 工: l+ +l Or 1]ステート、 センスワイヤー条件 4 −m [0; Or O: O; IJ 1; O; Qr 11マイクロ命令 ワイヤ (4(J 11 c5 +0. 0. 11 綱詐ゲース l ステート、センスワイヤー条件 1 1m (L: O; aj 6. OF O: O,O; 11ステート、セン スワイヤー条件2 マイクロ命令ワイヤ c4 (0,11 cs 10,0,01 制御ケース よ ステート、センスワイヤー条件I LBs [i+ Or O; CD O: L (b O: 11ステート、セ ンスワイヤー条件2 ステート、センスワイヤー条件 コ ステート、センスワイヤー条件 マイクロ命令ワイヤ cs 1G、 0.01 創御ケース3 ステート、センスワイヤー条件1 ステート、センスワイヤー条件2 マイクロ命令ワイヤ cs 10t O−ロ) #4陣ケース4 ステート、センスワイヤ マイクロ命令ワイヤ cs (o、 O,J 制卸ケースS ステート、センスワイヤー条件l ステート、センスワイヤー条件2 1正 [1; 1; O: Q: o、o: e: er: 11ステート、セ ンスワイヤー条件3 ステート、センスワイヤー条件部 ステート、センスワイヤー条件 5 マイクロ命令ワイヤ cs (0,O,OH 制御ケースG ステート、センスワイヤー条件 l ステート、センスワイヤー条件2 ステート、センスワイヤー条件J Lns [1; lr Or Gy Or O: O; Q: 11ステート、 センスワイヤー条件 4 ステート、センスワイヤー条件5 Lns [170x 1; O; O; O: O; O; l]マイクロ命令 ワイヤ es 10. O,O) RII陣ケース7 ステート、センスワイヤー条件 1 ステート、センスワイヤー条件 2 ins ll+ l+ Or O; Or 07 0+ OL 11マイクロ命 令ワイヤ c5 (0,O,o+ M島ゲース ♂ ステート、センスワイヤー条件 l ステート、センスワイヤー条件 2 Lllll (L、1: Q+ O; O: 6. O,コ、−1マイクロ命令 ワイヤ c5 +O,0,01 @御ケース 9 ステート、センスワイヤ cs B1.Q、O: t4御ケース 10 ステート、センスワイヤ 条件 1 ステート、センスワイヤー条件2 マイクロ命令ワイヤ aコ U) J U) CLI OOOOOOOO+ + P−1+−1+ m F−1+−1(N N  I”l FI Q QF Ll’T u’1181j) m +”−(り Q ) (710’1 人出力バツフ?20のクロッキング 命令のクロック期間の第1の○相 次段への伝播遷移 FIG、7A タロツク期間の1相 多重サイクル命令のクロック期間の残りのO相法段への伝播遷移 FIG、 7C と 巳 ℃ 9 要 約 書 演算処理、論理処理及び関連する処理を実行する方法及び数値演算装置 要約 数値エレメント上で演算処理、論理処理及び関連する処理を実行する方法及び装 置に関する。処理されるべき前記数値エレメントと命令情報とを含む入力リスト が備えられる。前記入力リスト上の前記数値エレメントについての処理は前記命 令情報を用いて直接制御され、かつ実行される。ワードを供給する各数値エレメ ントが所定のビット長を有する。ワードの最大数が前記入力リストにおける最大 供給可能数のエレメントと同一である。前記入力リストにおけるエレメントを再 書き込みすることにより計算を実行する。その結果は出力リストとして提供され る。
国際調査報告 国際調査報告

Claims (1)

  1. 【特許請求の範囲】 1.数値エレメント上で演算処理、論理処理及び関連する処理を実行する方法に おいて、以下のステップ、即ち、 (a)処理されるべき前記数値エレメント、及び命令情報を含む入力リストを供 給するステップと、(b)前記命令情報を用いて前記入力リスト上で前記数値エ レメント上の処理を直接制御し、かつ実行するステップと、 (c)各数値エレメントが所定のビット長を有するワードを供給するステップで あって、ワードの最大数が前記入力リストにおける最大供給可能数のエレメント と同一であるステップと、 (d)前記入力リストにおけるエレメントを再書き込みすることにより計算する ステップと、(e)その結果を出力リストとして提供するステップとを含むこと を特徴とする前記方法。 2.前記入力リストは特定のリスト・エレメントに分割され、前記リスト・エレ メントの少なくとも一つは命令ワードを表わしており、前記リスト・エレメント の残りは数値ワード表示であることを特徴とする請求項1記載の方法。 3.全てのリスト・エレメントは数値ワード表示であることを特徴とする請求項 1又は2記載の方法。 4.前記リストは、そのリスト・エレメントのうちの一つが命令コードであり、 残りが前記命令に対するアーギュメントであり、命令は最終的な結果に到達する まで、前記結果の出力リストから前記入力リストまで前記命令コードの再書き込 み及び反復により実行されることを特徴とする前記請求項のうちのいずれか一つ に記載の方法。 5.各再書き込みに際して、前記リストは、実際の計算に適切なときに、値のワ ードが続く、更新された命令コード・ワードを含むように再書き込みされること を特徴とする請求項4に記載の方法。 6.前記結果に直接再書き込む際に、前記値は命令コードなしに、前記出力リス ト上に配置されることを特徴とする請求項4に記載の方法。 7.前記入力リスト及び前記出力リストにおけるエレメントの最大数は4である ことを特徴とする前記請求項のうちのいずれか一つに記載の方法。 8.前記数値ワードは実際の処理の前に符号化された形式により供給されること を特徴とする請求項2から請求項7までのうちのいずれか一つに記載の方法。 9.前記数値ワードを表わす前記ワードは、前記数値の緻密な表示を得るコード により供給されることを特徴とする請求項2から請求項8までのうちのいずれか 一つに記載の方法。 10.整数値を表わす二進数ワードについて第1の符号化を行なうことを特徴と する請求項2から請求項9までのうちのいずれか一つに記載の方法。 11.浮動少数点値を表わす二進数ワードについて第2の符号化を行なうことを 特徴とする請求項2から請求項10までのうちのいずれか一つに記載の方法。 12.整数値を表わす二進数ワードについて第1の符号化を行ない、かつ浮動少 数点値を表わす二進数ワードについて第2の符号化を行なうこと、及び前記符号 化は、その符号化後に前記浮動少数点値表示の数値が前記整数表示の数値と同一 程度で増加するものであることを特徴とする請求項2から請求項11までのうち のいずれか一つに記載の方法。 13.二進数ディジット符号化された浮動少数点値表示は、コード・フィールド 、指数フィールド及び仮数フィールドを含み、前記コード・フィールドは、前記 指数フィールド及び前記仮数フィールドが可変長を有するように、前記指数フィ ールドと前記仮数フィールドとの間の除算位置についての指示を有することを特 徴とする請求項2から請求項12までのうちのいずれか一つに記載の方法。 14.前記緻密な表示は、浮動少数点値表示の仮数部のためのワード・フィール ドの前で、前記緻密な表示に仮想的な“1”、即ち物理的に供給されていない“ 1”を含めて供給されることを特徴とする請求項9から請求項13までのうちの いずれか一つに記載の方法。 15.前記値は以下の方法、即ち (a)値の表示は、全てのビットが“0”か、又は“1”であり、かつ数値0か ら始まって二進数ディジット符号化されているビット・ストリングを含み、(b )前記表示において可能とする全ての値は浮動少数点値に対応する唯一の値を有 し、 (c)他の浮動少数点値より高い表示を有する浮動少数点値は前記他の値より高 い値を存し、(d)浮動少数点値の前記表示は、前記浮動少数点値の総計のため の符号ビット、前記浮動少数点値の指数符号ビット、可変長を有する前記指数の 長さを表わすコード、及び可変長を有する仮数により符号化され、前記表示の組 合わせの長さは一定であることを特徴とする請求項9から請求項14までのうち のいずれか一つに記載の方法。 16.“0”が続く最上位ビットとして“1”を有する前記表示は、特定の浮動 少数点値“0”を表わすことを特徴とする請求項15に記載の方法。 17.特定の浮動少数点値“0”の表示ではない全ての表示は、 2a+bias*仮数 に対応した値を有し、ここで、eは前記表示における前記指数の値であって、正 の浮動少数点値のときは1.0に等しいか又はより大きく、負の浮動少数点値の ときは−1.0より小さく、かつ1.0と−1.0との間の浮動少数点値のとき は指数が反転されること、及び特定の浮動少数点値“0”を表わしていない表示 のときは、前記仮数は、負の符号を有する表示のとき即ち負数を表わすときは− 1と−2との間で変化し、かつ正の符号を有する表示のとき、即ち正の数を表わ す表示のときは+1と+2との間で変化することを特徴とする請求項16に記載 の方法。 18.計算された最終的な値により中間段として用いられる前記値の多数の可能 組合わせの並列計算により命令を実行し、必要ならば、更に処理されるべき前記 計算された中間段のうちの一つを選択して最終的な結果を得ることを特徴とする 前記いずれかの請求項に記載の方法。 19.第1の浮動少数点値A及び第2の浮動少数点値Bの加算/引算の際に、以 下の処理:前記浮動少数点値Aが前記浮動少数点値Bより小さな指数を有すると きは、前記浮動少数点値Bに対して前記浮動少数点値Aを調整すること、前記浮 動少数点値Bが前記浮動少数点値Aより小さな指数を有するときは、前記浮動少 数点値Aに対して前記浮動少数点値Bを調整することを実行し、前記浮動少数点 値の加算/引算は互いに調整され、前記加算/引算の結果を正規化していること を特徴とする請求項9から請求項18までのうちのいずれかに記載の方法。 20.加算/引算の際の前記処理は各加算/引算処理段において並列に計算され ること、及び前記処理は、実際の加算/引算処理段用に予定されている前記並列 に計算された処理の中から選択されることを特徴とする請求項19に記載の方法 。 21.以下の処理:即ち前記浮動少数点値Aが前記浮動少数点値Bより小さな指 数を有するときは、前記浮動少数点値Bに対する前記浮動少数点値Aの調整及び その仮数の精度の増加/減少の処理、前記浮動少数点値Bが前記浮動少数点値A より小さな指数を有するときは、前記浮動少数点値Aに対する前記浮動少数点値 Bの調整及びその仮数の精度の増加/減少の処理、互いに調整されている前記浮 動少数点値の加算/引算の処理、前記加算/引算の結果の正規化の処理は、第1 の浮動少数点値A及び第2の浮動少数点値Bの加算/引算用に設けられているこ とを特徴とする請求項15から請求項20までのうちのいずれかに記載の方法。 22.加算/引算の際の前記処理は、各加算/引算処理段において並列に計算さ れること、及び前記処理は、実際の加算/引算処理段用に予定されている前記並 列に計算された処理の中から選択されることを特徴とする請求項21に記載の方 法。 23.2つの浮動少数点値Bと浮動少数点値Cとの間の乗算は0.0+B*C= Vに対する乗算を再書き込みすることにより行なわれ、ここでVはA+B1*C 1=Vを有するいくつかの段において再書き込みされる定数値であり、Aは前隣 の値Vであり、かつ前記C1用の指数は、前記B1が最終的に“0”となるよう に加算/引算することにより調整され、最終的な結果における前記指数は前記値 C1の最終的な指数となることを特徴とする請求項9から請求項22までのうち のいずれかに記載の方法。 24.数値エレメントについて演算処理、論理処理及び関連する処理を実行する 数値算術演算装置において、(a)一組のバスを含む入力であって、各バスがリ ストにおけるリスト・エレメントを供給するように処理可能であり、前記リスト がそのリストにワードに関する命令情報を含む前記入力と、 (b)前記一組のバスが接続され、前記リストにおける前記ワード上の処理を、 前記命令情報を用い、前記命令に従って前記ワードを再書き込みすることにより 、実行する処理装置と、 (c)再書き込みされた結果を、前記入力組のバスと同一数及び構成を有する一 組のバスを備えた出力に、送出することと を含むことを特徴とする数値算術演算装置。 25.前記リストにおける少なくとも一つのリスト・エレメントは、命令情報の 表示を含むように確保されると共に、前記入力組のバスの特定のものに供給され るように確保され、かつ計算されるべき数字表示は前記入力組のバスの他方に供 給されること、及び前記処理装置は前記入力リストにおける前記数値表示を再書 き込みすることにより計算を実行するようにされていることを特徴とする請求項 24に記載の数値算術演算装置。 26.それぞれ前記入力バス上の前記数値表示について特定の処理を実行するよ うにされたいくつかの回路(21、22、221、23、24、25、28、2 9、30、35、36、37)は、前記処理の結果を並列に送出するように供給 されること、及び前記命令情報が供給される制御駆動手段(27)は、実際の命 令の実行に適した全ての実行結果のうちから実行結果(複数の実行結果)を選択 して実行させることを特徴とする請求項24又は25に記載の数値算術演算装置 。 27.前記リストは、そのエレメントのうちの一つが命令コードであり、その残 りが前記命令に対するアーギュメントである関数アプリケーションを含み、前記 処理装置は最終的な結果に到達するまで、前記出力から前記入力に前記命令を再 書き込みすると共に、循環させることにより命令を実行すること、及び各再書き 込みに際して、前記処理装置は、実際の計算に適当なときは前記リストを再書き 込みをして、適当なときは値ワードが続く、改定した命令コード・ワードを含む ようにされることを特徴とする請求項26に記載の数値算術演算装置。 28.前記数値ワードの前記表示は、実際の処理前に符号化された形式により前 記処理装置に供給されること、及び前記制御駆動装置(27)は前記表示の符号 化の実際の種類に関する情報が供給されることを特徴とする請求項26又は27 に記載の数値算術演算装置。 29.前記処理装置は前記数値を緻密な表示にする符号化を用いるようにされた ものであって、あらゆる符号化された値の表示は解釈された唯一の値に対応する ことを特徴とする請求項28に記載の数値算術演算装置。 30.前記処理装置は整数表示を表わす二進数ワードについて第1の種類の符号 化を用いるようにされていることを特徴とする請求項28又は29に記載の数値 算術演算装置。 31.前記処理装置は浮動少数点表示を表わす二進数ワードについて第2の種類 の符号化を用いるようにされていることを特徴とする請求項29又は30に記載 の数値算術演算装置。 32.前記処理装置は、整数表示を表わす二進数ワードについて第1の符号化と 、浮動少数点値を表わす二進数ワードについて第2の符号化とを用いるようにさ れること、及び前記符号化は、符号化の後に整数表示と同一の順序により浮動少 数点表示を供給するものであることを特徴とする請求項29又は31に記載の数 値算術演算装置。 33.二進数ディジット符号化された浮動少数点値表示は、符号、指数符号及び コード・フィールドと、指数フィールドと、仮数フィールドとを含み、前記指数 符号及びコード・フィールドは、前記指数フィールド及び仮数フィールドが可変 長を有するように、前記指数フィールドと前記仮数フィールドとの間の除算位置 についての指示を有することを特徴とする請求項31又は32に記載の数値算術 演算装置。 34.前記数値ワードを表わす前記ワードは、前記数値を緻密な表示にする符号 化により供給されるものであって、あらゆる符号化された値の表示は唯一の解釈 値に対応することを特徴とする請求項32又は33に記載の数値算術演算装置。 35.前記緻密な表示は、前記浮動少数点値の仮数部用のワード・フィールドの 前に、仮想の“1”、即ち前記表示に物理的に供給されない“1”を含むように 供給されることを特徴とする請求項34に記載の数値算術演算装置。 36,前記数値の表示は、精度グループと呼ばれるビット・グループに分割され 、それぞれは、所定数のビットと、前記表示が2つの精度グループ間に形成され ている浮動少数点値を表わしているときに、前記表示の指数部と仮数部との間の 分割とを有することを特徴とする請求項33又は34に記載の数値算術演算装置 。 37.前記少なくとも2つの前記数値ワード及び数値ワードが前記処理を実行す る回路のうちの回路(35、36、37)から供給される複数の入力を有し、前 記処理装置の結果の出力値に対して更に処理をさせるようにした出力を有した少 なくとも一つのオペランド装置(r1、r2、r3)を備え、前記オペランド装 置は更に前記オペランド装置の入力におけるデータを処理するように前記制御駆 動手段により制御されて前記数値ワードを再書き込みさせることを特徴とする請 求項26から請求項36までのいずれかに記載の数値算術演算装置。 38.前記処理を実行する回路の出力は、前記制御駆動手段(27)の入力に供 給され、前記命令情報と共に前記制御駆動手段において処理されて少なくとも一 つのオペランド装置を制御するためのディジタル制御信号を形成させることを特 徴とする請求項26から請求項36までのいずれかに記載の数値算術演算装置。 39.前記制御駆動手段(27)は、前記入力から前記出力へ前記処理装置内の 1データの転送中に少なくとも第1の処理フェーズ期間、及び出力処理フェーズ 期間を設定すること、及び前記第1の処理フェーズ期間中に制御されている前記 オペランド回路におけるエレメントからの可能キャリー信号が前記制御駆動手段 (27)に供給され、その制御出力が前記出力処理フェーズ期間前に前記可能キ ャリー信号により変更され、前記出力処理フェーズ期間に前記エレメントからの 出力に対してアクセスを有する前記オペランド回路における内部エレメントが制 御されることを特徴とする請求項37又は38に記載の数値算術演算装置。 40.前記制御駆動手段(27)は、ブール代数ゲート・アレーであることを特 徴とする請求項26から請求項39までのいずれかに記載の数値算術演算装置。 41.前記入力リスト及び出力リストの最大数は、バス上にそれぞれ供給される 4つのエレメントであることを特徴とする請求項26から請求項40までのいず れかに記載の数値算術演算装置。 42.前記数値の表示は、精度グループと呼ばれるビット・グループに分割され 、それぞれは、所定数のビットと、前記表示が2つの精度グループ間に形成され ている浮動少数点値を表わしているときに、前記表示の指数部と仮数部との間の 分割とを有すること、及び少なくとも一つの精度デコーダは前記指数/仮数部の 情報を供給し、かつ浮動少数点値上の処理を行なうエレメントに対する前記分割 を原因とする制御出力を供給する入力を介する前記表示の少なくとも一部を有す るようにされていることを特徴とする請求項26から請求項41までのいずれか に記載の数値算術演算装置。 43.精度デコーダの数は2であることを特徴とする請求項42に記載の数値算 術演算装置。 44.前記精度グループの数は、32ビットを有する表示のときは、8であるこ とを特徴とする請求項42又は43に記載の数値算術演算装置。 45.前記浮動少数点値の前記表示の情報は可変コード長のコード・フィールド により与えられることを特徴とする請求項33又は請求項44までのいずれかに 記載の数値算術演算装置。
JP91513501A 1990-08-02 1991-08-01 算術処理、論理処理及び関連する処理を実行する方法及び数値演算装置 Pending JPH05508952A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SE9002558A SE9002558D0 (sv) 1990-08-02 1990-08-02 Processor
SE9002558-6 1990-08-02
PCT/SE1991/000515 WO1992002875A1 (en) 1990-08-02 1991-08-01 A method for performing arithmetic, logical and related operations and a numerical arithmetic unit

Publications (1)

Publication Number Publication Date
JPH05508952A true JPH05508952A (ja) 1993-12-09

Family

ID=20380081

Family Applications (6)

Application Number Title Priority Date Filing Date
JP91513500A Pending JPH05508730A (ja) 1990-08-02 1991-08-01 連想メモリ
JP91513502A Pending JPH05508722A (ja) 1990-08-02 1991-08-01 リダクションプロセッサ
JP91514005A Pending JPH05508725A (ja) 1990-08-02 1991-08-01 構造演算用演算装置
JP91513499A Pending JPH05508729A (ja) 1990-08-02 1991-08-01 ビット記憶セル
JP91513503A Pending JPH05508723A (ja) 1990-08-02 1991-08-01 リダクションプロセッサにおける能動記憶装置
JP91513501A Pending JPH05508952A (ja) 1990-08-02 1991-08-01 算術処理、論理処理及び関連する処理を実行する方法及び数値演算装置

Family Applications Before (5)

Application Number Title Priority Date Filing Date
JP91513500A Pending JPH05508730A (ja) 1990-08-02 1991-08-01 連想メモリ
JP91513502A Pending JPH05508722A (ja) 1990-08-02 1991-08-01 リダクションプロセッサ
JP91514005A Pending JPH05508725A (ja) 1990-08-02 1991-08-01 構造演算用演算装置
JP91513499A Pending JPH05508729A (ja) 1990-08-02 1991-08-01 ビット記憶セル
JP91513503A Pending JPH05508723A (ja) 1990-08-02 1991-08-01 リダクションプロセッサにおける能動記憶装置

Country Status (23)

Country Link
US (6) US5379387A (ja)
EP (6) EP0541678B1 (ja)
JP (6) JPH05508730A (ja)
KR (1) KR930701818A (ja)
CN (6) CN1030018C (ja)
AT (5) ATE116455T1 (ja)
AU (6) AU8333191A (ja)
BG (3) BG97381A (ja)
CA (6) CA2086591A1 (ja)
DE (5) DE69102065T2 (ja)
ES (3) ES2051129T3 (ja)
FI (3) FI930434A (ja)
HU (3) HUT63710A (ja)
IL (6) IL99056A (ja)
LT (6) LTIP379A (ja)
NO (3) NO930302L (ja)
NZ (3) NZ239240A (ja)
RO (1) RO109487B1 (ja)
SE (1) SE9002558D0 (ja)
SK (2) SK402592A3 (ja)
TW (5) TW199213B (ja)
WO (6) WO1992002876A1 (ja)
ZA (6) ZA916121B (ja)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993024888A1 (en) * 1992-05-22 1993-12-09 Massachusetts Institute Of Technology Response resolver for associative memories and parallel processors
JP3376604B2 (ja) * 1992-07-20 2003-02-10 カシオ計算機株式会社 情報管理装置
IT1270230B (it) 1994-06-16 1997-04-29 Enichem Sintesi Composizione catalitica e processo per l'alchilazione di composti aromatici
US5619711A (en) * 1994-06-29 1997-04-08 Motorola, Inc. Method and data processing system for arbitrary precision on numbers
GB2293468B (en) * 1994-09-21 1999-09-29 Sony Uk Ltd Data processing systems
JP3037089B2 (ja) * 1994-12-14 2000-04-24 川崎製鉄株式会社 連想メモリ
FR2736737B1 (fr) * 1995-07-12 1997-08-14 Alcatel Nv Dispositif de gestion de relations entre des objets
US5943242A (en) * 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US6750107B1 (en) 1996-01-31 2004-06-15 Micron Technology, Inc. Method and apparatus for isolating a SRAM cell
US6103579A (en) * 1996-01-31 2000-08-15 Micron Technology, Inc. Method of isolating a SRAM cell
US5964825A (en) * 1996-02-09 1999-10-12 Texas Instruments Incorporated Manipulation of boolean values and conditional operation in a microprocessor
US5706224A (en) * 1996-10-10 1998-01-06 Quality Semiconductor, Inc. Content addressable memory and random access memory partition circuit
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
DE19654593A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit
DE19654595A1 (de) * 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
DE19654846A1 (de) * 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE59710317D1 (de) 1996-12-27 2003-07-24 Pact Inf Tech Gmbh VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.)
US6374346B1 (en) 1997-01-24 2002-04-16 Texas Instruments Incorporated Processor with conditional execution of every instruction
DE19704044A1 (de) * 1997-02-04 1998-08-13 Pact Inf Tech Gmbh Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704728A1 (de) * 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
DE19704742A1 (de) 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
DE59802537D1 (de) * 1997-04-15 2002-01-31 Gmd Gmbh Frei programmierbares, universelles parallel-rechnersystem zur durchführung von allgemeinen berechnungen
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
US5943492A (en) * 1997-12-05 1999-08-24 Digital Equipment Corporation Apparatus and method for generating external interface signals in a microprocessor
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
DE19807872A1 (de) 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
US6236585B1 (en) * 1998-05-13 2001-05-22 Texas Instruments Incorporated Dynamic, data-precharged, variable-entry-length, content addressable memory circuit architecture with multiple transistor threshold voltage extensions
EP1228440B1 (de) 1999-06-10 2017-04-05 PACT XPP Technologies AG Sequenz-partitionierung auf zellstrukturen
US6097651A (en) * 1999-06-30 2000-08-01 Quicklogic Corporation Precharge circuitry in RAM circuit
SE516171C2 (sv) * 1999-07-21 2001-11-26 Ericsson Telefon Ab L M Processorarkitektur anpassas för programspråk med sekventiellt instruktionsflöde
US6934795B2 (en) * 1999-09-23 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with programmable word width and programmable priority
US6801981B1 (en) 2000-06-14 2004-10-05 Netlogic Microsystems, Inc. Intra-row configurability of content addressable memory
US6751701B1 (en) 2000-06-14 2004-06-15 Netlogic Microsystems, Inc. Method and apparatus for detecting a multiple match in an intra-row configurable CAM system
US6944709B2 (en) * 1999-09-23 2005-09-13 Netlogic Microsystems, Inc. Content addressable memory with block-programmable mask write mode, word width and priority
US6799243B1 (en) 2000-06-14 2004-09-28 Netlogic Microsystems, Inc. Method and apparatus for detecting a match in an intra-row configurable cam system
US6542391B2 (en) * 2000-06-08 2003-04-01 Netlogic Microsystems, Inc. Content addressable memory with configurable class-based storage partition
US6813680B1 (en) 2000-06-14 2004-11-02 Netlogic Microsystems, Inc. Method and apparatus for loading comparand data into a content addressable memory system
EP1107107A1 (en) * 1999-12-10 2001-06-13 Koninklijke Philips Electronics N.V. Parallel data processing and shuffling
IL144901A0 (en) * 2000-01-13 2002-06-30 Yasukura Yutaka Electronic information inquiry process
EP1342158B1 (de) 2000-06-13 2010-08-04 Richter, Thomas Pipeline ct-protokolle und -kommunikation
US6560670B1 (en) 2000-06-14 2003-05-06 Netlogic Microsystems, Inc. Inter-row configurability of content addressable memory
US6246601B1 (en) * 2000-06-14 2001-06-12 Netlogic Microsystems, Inc. Method and apparatus for using an inter-row configurable content addressable memory
US6963882B1 (en) * 2000-10-02 2005-11-08 International Business Machines Corporation Method and apparatus for processing a list structure
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
KR100413384B1 (ko) * 2000-10-24 2004-01-03 주식회사 삼양제넥스 옥피로부터 수용성 식이섬유의 제조 방법
GB2370380B (en) 2000-12-19 2003-12-31 Picochip Designs Ltd Processor architecture
US6990555B2 (en) * 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7058637B2 (en) * 2001-05-15 2006-06-06 Metatomix, Inc. Methods and apparatus for enterprise application integration
WO2005029365A2 (en) * 2003-07-07 2005-03-31 Metatomix, Inc. Surveillance, monitoring and real-time events platform
US7302440B2 (en) * 2001-07-27 2007-11-27 Metatomix, Inc. Methods and apparatus for statistical data analysis and reduction for an enterprise application
US6925457B2 (en) * 2001-07-27 2005-08-02 Metatomix, Inc. Methods and apparatus for querying a relational data store using schema-less queries
US6856992B2 (en) * 2001-05-15 2005-02-15 Metatomix, Inc. Methods and apparatus for real-time business visibility using persistent schema-less data storage
US20030208499A1 (en) * 2002-05-03 2003-11-06 David Bigwood Methods and apparatus for visualizing relationships among triples of resource description framework (RDF) data sets
US7890517B2 (en) * 2001-05-15 2011-02-15 Metatomix, Inc. Appliance for enterprise information integration and enterprise resource interoperability platform and methods
ATE557344T1 (de) 2001-06-20 2012-05-15 Krass Maren Verfahren und gerät zum partitionieren von grossen rechnerprogrammen
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
EP1483682A2 (de) 2002-01-19 2004-12-08 PACT XPP Technologies AG Reconfigurierbarer prozessor
EP1514193B1 (de) 2002-02-18 2008-07-23 PACT XPP Technologies AG Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
US7394284B2 (en) 2002-09-06 2008-07-01 Pact Xpp Technologies Ag Reconfigurable sequencer structure
WO2004034625A2 (en) * 2002-10-07 2004-04-22 Metatomix, Inc. Methods and apparatus for identifying related nodes in a directed graph having named arcs
US7130229B2 (en) 2002-11-08 2006-10-31 Intel Corporation Interleaved mirrored memory systems
US7017017B2 (en) 2002-11-08 2006-03-21 Intel Corporation Memory controllers with interleaved mirrored memory modes
EP1676208A2 (en) 2003-08-28 2006-07-05 PACT XPP Technologies AG Data processing device and method
DE102004013180A1 (de) * 2004-03-17 2005-10-06 Giesecke & Devrient Gmbh Speicherbereinigung (Garbage Collection) für Smart Cards
US7665063B1 (en) 2004-05-26 2010-02-16 Pegasystems, Inc. Integration of declarative rule-based processing with procedural programming
US8335704B2 (en) * 2005-01-28 2012-12-18 Pegasystems Inc. Methods and apparatus for work management and routing
US7570503B1 (en) 2005-05-20 2009-08-04 Netlogic Microsystems, Inc. Ternary content addressable memory (TCAM) cells with low signal line numbers
JP2009524134A (ja) 2006-01-18 2009-06-25 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト ハードウェア定義方法
US20090132232A1 (en) * 2006-03-30 2009-05-21 Pegasystems Inc. Methods and apparatus for implementing multilingual software applications
US8924335B1 (en) 2006-03-30 2014-12-30 Pegasystems Inc. Rule-based user interface conformance methods
US7827451B2 (en) * 2006-05-24 2010-11-02 International Business Machines Corporation Method, system and program product for establishing decimal floating point operands for facilitating testing of decimal floating point instructions
US8250525B2 (en) 2007-03-02 2012-08-21 Pegasystems Inc. Proactive performance management for multi-user enterprise software systems
US7697444B2 (en) * 2007-09-07 2010-04-13 Fujitsu Limited Testing a circuit using a shared bandwidth test bus
GB2454865B (en) 2007-11-05 2012-06-13 Picochip Designs Ltd Power control
JP4529098B2 (ja) * 2008-07-29 2010-08-25 ソニー株式会社 演算処理装置および方法、並びにプログラム
US10481878B2 (en) * 2008-10-09 2019-11-19 Objectstore, Inc. User interface apparatus and methods
US8843435B1 (en) 2009-03-12 2014-09-23 Pegasystems Inc. Techniques for dynamic data processing
US8468492B1 (en) 2009-03-30 2013-06-18 Pegasystems, Inc. System and method for creation and modification of software applications
GB2470037B (en) 2009-05-07 2013-07-10 Picochip Designs Ltd Methods and devices for reducing interference in an uplink
GB2470771B (en) 2009-06-05 2012-07-18 Picochip Designs Ltd A method and device in a communication network
GB2470891B (en) 2009-06-05 2013-11-27 Picochip Designs Ltd A method and device in a communication network
US8666720B2 (en) * 2009-08-04 2014-03-04 Henry Chung-herng Chang Software extensions to a high level description language simulator to provide infrastructure for analog, mixed-signal, RF modeling and verification
GB2474071B (en) 2009-10-05 2013-08-07 Picochip Designs Ltd Femtocell base station
GB2482869B (en) 2010-08-16 2013-11-06 Picochip Designs Ltd Femtocell access control
US8880487B1 (en) 2011-02-18 2014-11-04 Pegasystems Inc. Systems and methods for distributed rules processing
GB2489919B (en) 2011-04-05 2018-02-14 Intel Corp Filter
GB2489716B (en) 2011-04-05 2015-06-24 Intel Corp Multimode base system
GB2491098B (en) 2011-05-16 2015-05-20 Intel Corp Accessing a base station
US9195936B1 (en) 2011-12-30 2015-11-24 Pegasystems Inc. System and method for updating or modifying an application without manual coding
JP2013242700A (ja) * 2012-05-21 2013-12-05 Internatl Business Mach Corp <Ibm> コード最適化方法、プログラム及びシステム
US11150721B2 (en) * 2012-11-07 2021-10-19 Nvidia Corporation Providing hints to an execution unit to prepare for predicted subsequent arithmetic operations
US9519804B2 (en) * 2013-02-05 2016-12-13 Hackproof Technologies, Inc. Domain-specific hardwired symbolic machine that validates and maps a symbol
US10303881B2 (en) 2013-02-05 2019-05-28 Hackproof Technologies Inc. Soft-wired radio (SWR) web machine
KR102259406B1 (ko) * 2014-07-30 2021-06-03 모비디어스 리미티드 명령어 사전인출을 위한 방법 및 장치
US10469396B2 (en) 2014-10-10 2019-11-05 Pegasystems, Inc. Event processing with enhanced throughput
WO2017066427A1 (en) 2015-10-13 2017-04-20 Hackproof Technologies, Inc. Soft-wired radio (swr) web machine
US10698599B2 (en) 2016-06-03 2020-06-30 Pegasystems, Inc. Connecting graphical shapes using gestures
US10698647B2 (en) 2016-07-11 2020-06-30 Pegasystems Inc. Selective sharing for collaborative application usage
WO2018015848A2 (en) * 2016-07-17 2018-01-25 Gsi Technology Inc. Finding k extreme values in constant processing time
KR102467698B1 (ko) * 2016-07-26 2022-11-16 삼성전자주식회사 적층형 메모리 장치, 이를 포함하는 시스템 및 그 동작 방법
US10956572B2 (en) 2016-08-22 2021-03-23 Hackproof Technologies Inc. Domain-specific hardwired web browser machine
GB2562520A (en) 2017-05-17 2018-11-21 John Hamlin Derrick Digital processing connectivity
US10514914B2 (en) * 2017-08-29 2019-12-24 Gsi Technology Inc. Method for min-max computation in associative memory
US11048488B2 (en) 2018-08-14 2021-06-29 Pegasystems, Inc. Software code optimizer and method
CN110690991B (zh) * 2019-09-10 2021-03-19 无锡江南计算技术研究所 一种基于逻辑树的无阻塞网络归约计算装置、方法
US11567945B1 (en) 2020-08-27 2023-01-31 Pegasystems Inc. Customized digital content generation systems and methods
CN113919580B (zh) * 2021-10-19 2024-10-29 南方电网科学研究院有限责任公司 一种多省区电网周运行计划编制方法

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL272844A (ja) * 1960-12-22
US3253265A (en) * 1961-12-29 1966-05-24 Ibm Associative memory ordered retrieval
DE1921577B2 (de) * 1969-04-28 1972-04-06 Nixdorf Computer Ag, 4790 Paderborn Trommelartige vorrichtung zn buchungs- und schreibautomaten mit greifeinrichtung zum erfassen und einziehen von kontokarten o dgl
SE374973B (ja) * 1970-02-17 1975-03-24 Western Electric Co
US3610967A (en) * 1970-02-27 1971-10-05 Ibm Integrated memory cell circuit
US3634833A (en) * 1970-03-12 1972-01-11 Texas Instruments Inc Associative memory circuit
US4503511A (en) * 1971-08-31 1985-03-05 Texas Instruments Incorporated Computing system with multifunctional arithmetic logic unit in single integrated circuit
US3878513A (en) * 1972-02-08 1975-04-15 Burroughs Corp Data processing method and apparatus using occupancy indications to reserve storage space for a stack
US3953866A (en) * 1974-05-10 1976-04-27 Signetics Corporation Cross coupled semiconductor memory cell
DE2460150C2 (de) * 1974-12-19 1984-07-12 Ibm Deutschland Gmbh, 7000 Stuttgart Monolitisch integrierbare Speicheranordnung
GB1540299A (en) * 1975-02-15 1979-02-07 Mathematik Datenverarbeitung G Computer employing reduction language
FR2337398A1 (fr) * 1975-12-30 1977-07-29 Ibm France Dispositif d'ecriture rapide pour cellules de memoire
DE3105503A1 (de) * 1981-02-14 1982-09-02 Brown, Boveri & Cie Ag, 6800 Mannheim Assoziativer zugriffsspeicher
EP0069525B1 (en) * 1981-06-30 1986-04-16 Fujitsu Limited Data processing system
US4502118A (en) * 1981-07-07 1985-02-26 Burroughs Corporation Concurrent network of reduction processors for executing programs stored as treelike graphs employing variable-free applicative language codes
US4447875A (en) * 1981-07-07 1984-05-08 Burroughs Corporation Reduction processor for executing programs stored as treelike graphs employing variable-free applicative language codes
JPS58147889A (ja) * 1982-02-26 1983-09-02 Mitsubishi Electric Corp 半導体装置
US4709327A (en) * 1983-05-31 1987-11-24 Hillis W Daniel Parallel processor/memory circuit
DE3335423A1 (de) * 1983-09-29 1985-04-04 Siemens AG, 1000 Berlin und 8000 München Schaltung zur spannungsvervielfachung
US4644464A (en) * 1984-06-05 1987-02-17 Burroughs Corporation Graph manager for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
US4615003A (en) * 1984-06-05 1986-09-30 Burroughs Corporation Condition concentrator and control store for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
US4654780A (en) * 1984-06-05 1987-03-31 Burroughs Corporation Parallel register transfer mechanism for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
US4785393A (en) * 1984-07-09 1988-11-15 Advanced Micro Devices, Inc. 32-Bit extended function arithmetic-logic unit on a single chip
US4734848A (en) * 1984-07-17 1988-03-29 Hitachi, Ltd. Combination reduction processing method and apparatus
JPS61107596A (ja) * 1984-10-31 1986-05-26 Nec Corp 連想記憶装置
US4616315A (en) * 1985-01-11 1986-10-07 Burroughs Corporation System memory for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
US4598361A (en) * 1985-01-11 1986-07-01 Burroughs Corporation Allocator for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
US5173872A (en) * 1985-06-13 1992-12-22 Intel Corporation Content addressable memory for microprocessor system
US4847755A (en) * 1985-10-31 1989-07-11 Mcc Development, Ltd. Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
US5021945A (en) * 1985-10-31 1991-06-04 Mcc Development, Ltd. Parallel processor system for processing natural concurrencies and method therefor
US4777622A (en) * 1985-11-26 1988-10-11 Max-Planck-Gesellschaft Zur Foerderung Der Wissenschaften E.V. Associative data storage system
JPS62134890A (ja) * 1985-12-05 1987-06-17 Matsushita Electric Ind Co Ltd 半導体記憶装置
EP0227348A3 (en) * 1985-12-11 1991-09-25 Advanced Micro Devices, Inc. Content addressable memory circuit and method
JPH0810553B2 (ja) * 1986-06-13 1996-01-31 松下電器産業株式会社 記憶回路
GB2211638A (en) * 1987-10-27 1989-07-05 Ibm Simd array processor
US4922413A (en) * 1987-03-24 1990-05-01 Center For Innovative Technology Method for concurrent execution of primitive operations by dynamically assigning operations based upon computational marked graph and availability of data
GB8718056D0 (en) * 1987-07-30 1987-09-03 Int Computers Ltd Data processing system
JPH01223697A (ja) * 1988-03-01 1989-09-06 Mitsubishi Electric Corp 内容番地付け記憶装置
US4890260A (en) * 1988-05-11 1989-12-26 Advanced Micro Devices Content addressable memory array with maskable and resettable bits
US4928260A (en) * 1988-05-11 1990-05-22 Advanced Micro Devices, Inc. Content addressable memory array with priority encoder
US5099450A (en) * 1988-09-22 1992-03-24 Syracuse University Computer for reducing lambda calculus expressions employing variable containing applicative language code
JPH02187993A (ja) * 1989-01-13 1990-07-24 Mitsubishi Electric Corp 連想メモリ装置
GB8901924D0 (en) * 1989-01-28 1989-03-15 Int Computers Ltd Data processing system
KR910009445B1 (ko) * 1989-02-02 1991-11-16 정호선 신경회로망을 이용한 연상메모리(Associative memory)
US5072422A (en) * 1989-05-15 1991-12-10 E-Systems, Inc. Content-addressed memory system with word cells having select and match bits
US5175843A (en) * 1989-10-30 1992-12-29 General Electric Company Computer-aided design method for restructuring computational networks to minimize shimming delays
US5201056A (en) * 1990-05-02 1993-04-06 Motorola, Inc. RISC microprocessor architecture with multi-bit tag extended instructions for selectively attaching tag from either instruction or input data to arithmetic operation output
US5014195A (en) * 1990-05-10 1991-05-07 Digital Equipment Corporation, Inc. Configurable set associative cache with decoded data element enable lines

Also Published As

Publication number Publication date
NO930301L (no) 1993-03-23
IL99056A (en) 1994-11-11
JPH05508725A (ja) 1993-12-02
HU9204177D0 (en) 1993-03-29
LTIP385A (en) 1994-11-25
NZ239240A (en) 1995-03-28
FI930434A0 (fi) 1993-02-01
DE69101640T2 (de) 1994-07-21
IL99052A (en) 1994-12-29
EP0541684A1 (en) 1993-05-19
LTIP381A (en) 1994-12-27
ES2051129T3 (es) 1994-06-01
CN1061865A (zh) 1992-06-10
WO1992002875A1 (en) 1992-02-20
DE69102065D1 (de) 1994-06-23
ZA916119B (en) 1992-05-27
CN1058667A (zh) 1992-02-12
DE69101242D1 (de) 1994-03-31
WO1992002874A1 (en) 1992-02-20
ZA916120B (en) 1993-01-27
CA2086592A1 (en) 1992-02-03
EP0541678A1 (en) 1993-05-19
CN1030019C (zh) 1995-10-11
KR930701818A (ko) 1993-06-12
LTIP384A (en) 1994-11-25
IL99053A0 (en) 1992-07-15
NZ239242A (en) 1994-12-22
JPH05508729A (ja) 1993-12-02
US5437049A (en) 1995-07-25
LTIP379A (en) 1994-11-25
CA2087023A1 (en) 1992-02-03
NO930302L (no) 1993-03-31
US5241491A (en) 1993-08-31
CN1059413A (zh) 1992-03-11
US5325501A (en) 1994-06-28
LTIP380A (en) 1994-12-27
SK402592A3 (en) 1993-09-09
US5379387A (en) 1995-01-03
DE69101242T2 (de) 1994-06-01
DE69101640D1 (de) 1994-05-11
LTIP382A (en) 1994-11-25
ES2050545T3 (es) 1994-05-16
ATE105952T1 (de) 1994-06-15
JPH05508722A (ja) 1993-12-02
EP0548094A1 (en) 1993-06-30
BG97385A (bg) 1993-12-24
WO1992002933A1 (en) 1992-02-20
IL99051A0 (en) 1992-07-15
IL99054A0 (en) 1992-07-15
ATE118640T1 (de) 1995-03-15
ZA916118B (en) 1992-05-27
ATE101933T1 (de) 1994-03-15
DE69107460T2 (de) 1995-10-05
RO109487B1 (ro) 1995-02-28
WO1992002876A1 (en) 1992-02-20
WO1992002932A1 (en) 1992-02-20
AU8325091A (en) 1992-03-02
ZA916116B (en) 1992-05-27
EP0541684B1 (en) 1994-04-06
TW215483B (ja) 1993-11-01
AU8332991A (en) 1992-03-02
CN1030018C (zh) 1995-10-11
CA2088577A1 (en) 1992-02-03
CA2086539A1 (en) 1992-02-03
SK391392A3 (en) 1994-06-08
NO930303D0 (no) 1993-01-28
IL99056A0 (en) 1992-07-15
JPH05508723A (ja) 1993-12-02
TW199213B (ja) 1993-02-01
AU654149B2 (en) 1994-10-27
AU8333191A (en) 1992-03-02
ZA916123B (en) 1992-04-29
NO930302D0 (no) 1993-01-28
AU654295B2 (en) 1994-11-03
CN1059799A (zh) 1992-03-25
IL99052A0 (en) 1992-07-15
EP0541682B1 (en) 1994-12-28
HUT63710A (en) 1993-09-28
EP0541685A1 (en) 1993-05-19
WO1992002877A1 (en) 1992-02-20
TW199926B (ja) 1993-02-11
FI930434A (fi) 1993-04-02
NO930301D0 (no) 1993-01-28
NO930303L (no) 1993-03-23
IL99055A (en) 1994-12-29
HU9300175D0 (en) 1993-04-28
JPH05508730A (ja) 1993-12-02
ATE116455T1 (de) 1995-01-15
CA2086591A1 (en) 1992-02-03
ES2056655T3 (es) 1994-10-01
CN1062426A (zh) 1992-07-01
FI930433A0 (fi) 1993-02-01
CA2087022A1 (en) 1992-02-03
FI930433A (fi) 1993-02-01
DE69106369D1 (de) 1995-02-09
US5239502A (en) 1993-08-24
SE9002558D0 (sv) 1990-08-02
FI930435A0 (fi) 1993-02-01
US5555434A (en) 1996-09-10
CN1027198C (zh) 1994-12-28
CN1059225A (zh) 1992-03-04
IL99055A0 (en) 1992-07-15
BG97386A (bg) 1993-12-24
ZA916121B (en) 1992-05-27
DE69107460D1 (de) 1995-03-23
HU9300263D0 (en) 1993-05-28
AU8331691A (en) 1992-03-02
EP0541682A1 (en) 1993-05-19
EP0541683A1 (en) 1993-05-19
EP0541683B1 (en) 1994-02-23
BG97381A (bg) 1993-12-24
TW215960B (ja) 1993-11-11
FI930435A (fi) 1993-04-02
TW215959B (ja) 1993-11-11
NZ239239A (en) 1994-08-26
DE69102065T2 (de) 1994-09-01
EP0541678B1 (en) 1994-05-18
HUT63505A (en) 1993-08-30
AU8331291A (en) 1992-03-02
EP0541685B1 (en) 1995-02-15
ATE104084T1 (de) 1994-04-15
AU8390291A (en) 1992-03-02

Similar Documents

Publication Publication Date Title
JPH05508952A (ja) 算術処理、論理処理及び関連する処理を実行する方法及び数値演算装置
US20210216318A1 (en) Vector Processor Architectures
US5946361A (en) Viterbi decoding method and circuit with accelerated back-tracing and efficient path metric calculation
US6151669A (en) Methods and apparatus for efficient control of floating-point status register
CN111656339B (zh) 存储器装置及其控制方法
US5371862A (en) Program execution control system
CN104204991A (zh) 将较小的已排序向量合并和排序为较大的已排序向量的指令的方法和装置
KR20190028426A (ko) Simd 아키텍처에서 레인 셔플을 위한 셔플러 회로
US9823689B2 (en) Variable clocked serial array processor
US6370639B1 (en) Processor architecture having two or more floating-point status fields
US20080148018A1 (en) Shift Processing Unit
CN112232499A (zh) 卷积神经网络加速器
US10877925B2 (en) Vector processor with vector first and multiple lane configuration
US5815697A (en) Circuits, systems, and methods for reducing microprogram memory power for multiway branching
US7587582B1 (en) Method and apparatus for parallel arithmetic operations
US11782711B2 (en) Dynamic precision bit string accumulation
JP2003241960A (ja) プロセッサ、該プロセッサにおける演算命令処理方法及び演算制御方法
CN109993276B (zh) 用于执行人工神经网络反向训练的装置和方法
JP5659772B2 (ja) 演算処理装置
US5327571A (en) Processor having decoder for decoding unmodified instruction set for addressing register to read or write in parallel or serially shift in from left or right
US6308262B1 (en) System and method for efficient processing of instructions using control unit to select operations
US20190073584A1 (en) Apparatus and methods for forward propagation in neural networks supporting discrete data
US20230297824A1 (en) Programmable non-linear activation engine for neural network acceleration
WO2023220537A1 (en) Simple and linear fast adder
CN110097181B (zh) 用于执行人工神经网络正向运算的装置和方法