JP6382577B2 - 関数モデルを純粋にハードウェア上で計算するモデル計算ユニット内での利用ためのfmaユニット - Google Patents

関数モデルを純粋にハードウェア上で計算するモデル計算ユニット内での利用ためのfmaユニット Download PDF

Info

Publication number
JP6382577B2
JP6382577B2 JP2014106814A JP2014106814A JP6382577B2 JP 6382577 B2 JP6382577 B2 JP 6382577B2 JP 2014106814 A JP2014106814 A JP 2014106814A JP 2014106814 A JP2014106814 A JP 2014106814A JP 6382577 B2 JP6382577 B2 JP 6382577B2
Authority
JP
Japan
Prior art keywords
exponent
mantissa
result
bit resolution
multiplication
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.)
Active
Application number
JP2014106814A
Other languages
English (en)
Other versions
JP2014229318A (ja
Inventor
フィッシャー、ヴォルフガング
グントロ、アンドレ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2014229318A publication Critical patent/JP2014229318A/ja
Application granted granted Critical
Publication of JP6382577B2 publication Critical patent/JP6382577B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)

Description

本発明は、制御装置内のハードウェアで実現されたユニット、特に、FMA(Floating Point Multiply and Add Operation(浮動小数点乗加算演算)、Fused Multiply Add Operation(融合乗加算演算))ユニットに関する。
従来技術として、主演算ユニットと、データに基づく関数モデルを計算するための別体のモデル計算ユニットと、を備えた制御装置が公知である。例えば、特許文献1は、1つ以上のループ計算において乗算、加算、指数関数を純粋にハードウェア上で計算するよう構成されたモデル計算ユニットとして追加的な論理回路を備えた制御装置を示している。これにより、ガウス過程モデル(Gauss−Prozessmodell)の計算のために特に必要なベイズ回帰(Bayes−Regression)法を、ハードウェアユニット内でサポートすることが可能である。
モデル計算ユニットは、パラメータ及びサンプルポイント又は訓練データ(Trainingsdaten)に基づいて、データに基づく関数モデルを計算するための数学的プロセスを実行するよう全体で設計されている。特に、モデル計算ユニットは、2つの演算ループにおいて指数関数をハードウェア上で効率良く計算するよう構成されているため、ソフトウェアにより駆動される主演算ユニット内で行われるよりも速い計算速度で、ガウス過程モデルを計算することが可能となる。ロジックユニット内での計算を加速させるために、加算演算及び乗算演算のハードウェア実現を特に効率の良い形で提供する共有のMAK(Multiplikationsakkumulator、乗算累算器)ユニット内又はFMAユニット内で、乗算プロセスと加算プロセスとを組み合わせることが可能である。
例えば、特許文献2には、入力側及び出力側での32ビットの分解のためのこのようなFMAユニットが記載されている。特許文献3もこのようなFMAユニットを示しているが、ここでは精度が改善されている。
独国特許出願公開第102010028266号明細書 米国特許第7080111号明細書 米国特許第7346642号明細書
本発明に基づいて、請求項1に記載の制御装置内のモデル計算ユニット内で算術演算を実行するFMAユニット、並びに、同等の独立請求項に記載のモデル計算ユニット及び制御装置が構想される。
本発明の更なる別の有利な構成は、従属請求項に示される。
モデル計算ユニットを備えた制御装置の概略図を示す。 モデル計算ユニットの演算コアの概略図を示す。 図1のモデル計算ユニット内のFMA計算の概略図を示す。
第1の観点によれば、制御装置内のモデル計算ユニット内での算術演算を実行するFMAユニットであって、入力変数として、2個の被乗数と1個の被加数とがそれぞれ浮動小数点数値の形態により処理可能であり、出力変数として、計算結果が浮動小数点数値の形態により、仮数結果及び指数結果に対応して提供され、FMAユニットは、乗算と、後に続く加算と、を実行するように構成され、被乗数に対応する入力のビット分解能(Bitaufloesung)は、被加数に対応する入力のビット分解能よりも低く、及び、出力変数のビット分解能よりも低い、上記FMAユニットが設けられる。
上記のFMAユニットは、2個の被乗数の乗算と、当該乗算の結果と1個の被加数との加算と、を実行する。上記のFMAユニットは、被乗数が、被加数及びFMAユニット内での計算結果よりも低い精度で提供されて計算されるという点で、公知のFMAユニットとは異なっている。さらに、精度が損なわれることなく、乗算の中間結果が提示される。個々のビット分解能の選択の際には重み付け(Abwaegung)を行う必要があり、その際には、1つ以上の演算ループを有するモデル計算ユニット内でFMAユニットを使用する際は、和形成を繰り返し累積的に行う必要があり、及びその際に十分な精度に達しなければならないことが考慮される。特に、累算された値が非常に小さく、即ち値が0に近い際又は被加数が非常に大きい際の数値的な問題に基づいて、十分なビット分解能が提供される必要がある。
その一方で、被乗数及び被加数のビット分解能として非常に大きい値が選択される場合には、アルゴリズムのハードウェア実現に基づいて、更に多くのロジック(Logik)部が必要となり、従って、一体化された構造形態においてFMAユニットを実現するために必要な面積が明らかに拡大され、これに加えて、ハードウェアの性能も下がる。
上記のFMAユニットは、精度が下げられた、FMAユニットの乗算部を利用することを提案する。即ち、被乗数を、後続の和形成のビット分解能よりも小さいビット分解能で予め設定し、計算することが可能である。このことによって、必要なチップ面積が著しく節約される。なぜならば、乗算部は、FMAユニットの中で最も大きな面積を必要とする構成要素だからである。特に、半分又は半分より少ない乗算についての、被乗数のビット分解能又は被乗数の仮数値のビット分解能が、出力値のビット分解能及び被加数のビット分解能又は被加数の仮数値のビット分解能に対応する場合には、加算を実行しうるために、従来では必要であったような、ビット分解能が下げられた値への乗算結果の内部変換がもはや必要ではない。
むしろ、精度を下げないように、乗算の中間結果のビット分解能を選択することが可能である。例えば、指数部(以下、単に指数とも言う。)が8ビットで仮数部(以下、単に仮数とも言う。)が23ビットの32ビットの浮動小数点形式の精度(Single−Precision、単精度)で被乗数を提供することが可能である。24ビット×24ビットの整数乗算が適用可能であり、これにより、48ビットの小数部の精度(fraktionale Genauigkeit)がもたらされる。さらに、被乗数のビット分解能が下げられることによって、入力変数として提供すべきデータ量が削減されうる。なぜならば、例えば64ビット分解能での最終結果が望まれる際には、上記2個の被乗数を32ビット分解能で提供すればよいからである。
さらに、FMAユニットは、
−被乗数の指数を、当該指数の積形成のために加算し、対応する指数中間結果を提供するように構成された指数加算ブロックと、
−被乗数の仮数値を乗算し、仮数乗算結果を獲得するように構成された乗算ブロックと、
−指数中間結果Eと被加数の指数との間の差分を定め、指数結果を提供するように構成された指数評価ブロックと、
−指数中間結果Eと被加数の指数との間の定められた差分に従って、仮数乗算結果又は被加数の仮数に右シフト演算を行い、続いて、仮数結果を獲得するために、仮数乗算結果及び被加数の仮数を加算するよう構成された加算ブロックと、
を備えることが可能であり、
仮数結果と指数結果とは、出力変数を示し、
指数加算ブロックの入力のビット分解能は、指数評価ブロック及び加算ブロックの入力のビット分解能よりも低い。
一実施形態によれば、被乗数は、仮数の第1のビット分解能と、指数の第1のビット分解能と、を有し、被加数及び出力変数は、仮数の第2のビット分解能と、指数の第2のビット分解能と、を有してもよく、仮数の第2のビット分解能は、仮数の第1のビット分解能の少なくとも2倍に相当する。被加数及び出力変数の仮数のビット分解能は、被乗数の仮数のビット分解能の少なくとも2倍であってよい。
指数評価ブロックは、指数中間結果Eと被加数の指数とのうちのより大きな指数の値として指数結果を提供するよう構成され、加算ブロックは、指数中間結果Eと被加数の指数との間の定められた差分に従って、対応付けられたその指数がより小さい指数である仮数乗算結果又は被加数の仮数に、右シフト演算を行うように構成される。
特に、指数結果及び仮数結果を正規化し、適切な浮動小数点表示にして提供するために正規化ブロックを設けることが可能である。
一の観点によれば、ハードウェアで実装されたアルゴリズムを計算するためにロジックユニットを有する演算コアを備えた、制御装置のためのモデル計算ユニットであって、加算演算及び/又は乗算演算を実行するFMAユニットが設けられた、上記モデル計算ユニットが構想される。
特に、ロジックユニットは、ベイズ回帰を計算するよう構成されうる。
一の観点によれば、
−ソフトウェアにより制御される主演算ユニットと、
−上記のモデル計算ユニットと、
を備えた、制御装置が設けられる。
一実施形態によれば、ハイパーパラメータ及びサンプルポイントデータを格納するためにメモリが設けられ、ハイパーパラメータ及びサンプルポイントデータは、より小さいビット分解能で提供される。
以下では、好適な実施形態が添付の図面を用いてより詳細に解説される。
以下の明細書の記載で利用される浮動小数点形式はIEEE754規格に基づいている。
図1は、組み込まれた制御装置1のハードウェア構造の概略図を示しており、この制御装置1内には、主演算ユニット2と、データに基づく関数モデルをハードウェア上で計算するモデル計算ユニット3と、が一体になった形で設けられている。主演算ユニット2とモデル計算ユニット3とは、内部の通信接続4を介して、例えばシステムバスを介して、互いに通信接続されている。さらに、制御装置1は、内部の通信接続4を介して相互接続された内部のメモリ5及びDMA(Direct Memory Access、直接メモリアクセス)ユニット6を備えてもよい。
基本的に、モデル計算ユニット3はハードワイヤードされており、これに対応して、ソフトウェア・コード(Softwarecode)を実行するよう構成されていない。この理由から、モデル計算ユニット3内にプロセッサを設けることも必要ではない。この理由から、リソースが最適化されたこのようなモデル計算ユニット3の実現、又は、一体化された設計での面積が最適化された構造が可能となる。モデル計算ユニット3は、予め設定されたアルゴリズムの計算をハードウェアで実現する演算コア31を有する。これについて演算コア31は、論理回路43と、指数関数をハードウェア上で計算する指数関数ユニット41と、組み合わされた乗算演算と加算演算とをハードウェア上で計算するFMAユニット42と、を備える。
非パラメータ的な、データに基づく関数モデルの利用は、ベイズ回帰方法に基づいている。ベイズ回帰の基礎は、例えば、C.E.Rasmussenらによる「Gaussian Processes for Machine Learning」(MIT Press、2006年)に記載されている。ベイズ回帰は、データに基づく方法であって、モデルに基づいている。モデルの作成のためは、訓練データの測定点、及び、出力変数の対応する出力データが必要である。訓練データに完全に又は部分的に対応し又は訓練データから生成されるサンプルポイントデータを利用して、このモデルは作成される。さらに、抽象的なハイパーパラメータ(Hyperparameter)が決定され、このハイパーパラメータは、モデル関数の空間をパラメータ化し、後のモデル予測への、訓練データの個々の測定点の影響に効果的に重み付けする。
計算の開始に際して、主演算ユニット2は、DMAユニット6に対して、計算すべき関数モデルに該当する設定データを、モデル計算ユニット3内へと伝送し、設定データを用いて実行する計算を開始するよう命令する。設定データは、ガウス過程モデルのハイパーパラメータ及びサンプルポイントデータを含み、ハイパーパラメータ及びサンプルポイントデータは、好適に、モデル計算ユニット3に割り当てられたメモリ5のアドレス範囲を指すアドレスポインタによって示される。
モデル計算ユニット3内での計算は、モデル計算ユニット3内の、以下の疑似Cコード(Pseudo−C−Code)により実現されたハードウェア構造において行われ、このハードウェア構造は上記の計算命令に対応している。疑似Cコードから、計算が内側のループと外側のループとで行われ、その部分結果が累算されることが分かる。

Figure 0006382577
ハードウェア実現の際には、a+b×cという形態の演算が、特に効率良いやり方でFMAユニットを用いて可能である。このようなFMAユニットは、少数のクロック周期内に対応する計算を実行しうるために、ハードウェアで実現される。状況によっては、上記計算は、1クロック周期内に行われうる。上記計算は、添付の疑似Cコードで示すように、ハードウェアで実現される。
上記のアルゴリズムの計算は、図2で詳細に示される演算コア31内の後続のユニットによって実行されうる。これについて、演算コア31は、論理回路43(ロジックユニット43)、指数関数ユニット41、及び、入力変数への組み合わされた乗算演算と加算演算とを浮動小数点形式で提供するFMAユニット42を備える。
先に疑似Cコードで示した計算過程は、アルゴリズムをハードウェアとして実現する適切な論理回路43によって制御される。論理回路43は、対応する配線とフロー制御を提示する。
図3は、FMAユニット42内での計算を概略的に示している。FMAユニット42には、a×b+cの計算のための入力変数a、b、c、即ち、被乗数a、bと、被加数cと、が提供される。入力変数a、b、cは、浮動小数点形式により提供される。特に、被乗数a、bに対応する入力が第1のビット分解能で提供され、被加数cに対応する入力、及び、出力が第2のビット分解能で提供される。第1のビット分解能は、第2のビット分解能よりも小さい。一例では、第1のビット分解能は32ビットであり、第2のビット分解能は64ビットである。
FMAユニット42は、入力変数(被乗数)a、bの指数E、Eを当該指数の積形成のために加算して、対応する指数中間結果Eを指数評価ブロック52に提供するために、指数加算ブロック51を含む。さらに、被乗数a、bの仮数値M、Mが乗算ブロック53内で乗算され、対応する仮数乗算結果Mが、加算ブロック54に提供される。
指数評価ブロック52にはさらに、被加数cの指数Eが供給される。指数加算ブロック51の指数中間結果Eは、被加数cの指数Eに調整される。このために、被加数の指数Eと、指数中間結果Eと、の差分が計算されて、加算ブロック54に伝えられる。指数値E、Eのうちの大きい方の指数値が、指数結果Eとして、後に配置された正規化ブロック55へと転送される
加算ブロック54にはさらに、被加数cの仮数Mが供給される。加算ブロック54に供給された仮数M、Mのうちの1つに対して、上記定められた差分に対応する数のビットの分だけ右シフトが行われる。特に、仮数の値、即ち、被加数cの仮数M又は仮数乗算結果Mの値であって、対応するその指数がより低い方の値が、右シフト演算によって上げられる。続いて、即ち右シフト演算の後で、存在する仮数値M、Mの(符号に従った)加算又は減算が行われて、仮数結果Mが獲得される。仮数結果Mは、後に配置された正規化ブロック55へと転送される。
その後で、仮数結果Mと指数結果Eとから形成された結果が、正規化ブロック55によって正規化されて、最終結果が形成される。好適に、最終結果の仮数値は、例えば[1.0;2.0]の間の値に正規化される。正規化は、計算の終了時にのみ必要であり、乗算の後では必要ではないことが分かる。これにより、後続の加算のビット分解能よりも小さいビット分解能での乗算を構想することによって、有利なやり方で、モデル計算のために利用されうる。
実行された乗算は、仮数乗算結果Mを獲得するために、24ビット×24ビットの仮数値(23ビットの仮数+隠しビット(Hidden−Bit))を利用し、48ビットの結果が得られる。乗算は、例えば、乗算器アレイ(Multiplizier−Array)、桁上げ保存加算器(Carry−Save−Addierer)、又は、高基数乗算器(hoeherer Radix−Multiplizierer)を用いて実行することが可能である。被加数cは、被乗数a又はbよりもビット分解能が高いため、仮数乗算結果Mを、32ビット値へと、即ち、24ビットの仮数値と8ビットの指数値とを有する値へと正規化する必要はない。被加数cが64ビット分解能である場合には、仮数値のビット分解能は53ビットである。従って、仮数値の48ビットの結果を利用し、加算の前に53ビットに拡張することが可能である。最も簡単な拡張は、最下位の5ビットを0で充填することである。
さらに、指数中間結果Eと被加数cの指数Eとを調整することで、事前調整も同様に可能であり、従って、上記の拡張は、より低い指数値が対応付けられた仮数値の右シフト演算を含みうる。これにより、例えば加算器の精度の改善のような様々な利点が実現されうる。なぜならば、乗算結果が24ビットに丸められないからである。
さらに、24ビット×24ビットの乗算器のみ必要であるため、FMAユニット42を一体化した構造形態において必要な面積を小さく抑えることが可能である。最終結果のビット分解能と比べて、乗算のための入力変数のビット分解能が低いことによって、ハードウェア計算の高い性能が実現されうる。

Claims (10)

  1. 制御装置内のモデル計算ユニット内での算術演算を実行するFMAユニットにおいて、入力変数として、2個の被乗数と1個の被加数とがそれぞれ浮動小数点数値の形態により処理可能であり、出力変数として、計算結果が浮動小数点数値の形態により提供され、
    前記FMAユニットは、前記2個の被乗数に対応する入力と、前記1個の被加数に対応する入力と、を有し、前記被乗数の乗算と、後に続く、前記乗算の計算結果と前記被加数との加算と、を実行するよう構成され、前記被乗数に対応する前記入力のビット分解能は、前記被加数に対応する前記入力のビット分解能よりも低く、及び、前記出力変数のビット分解能よりも低く、
    データに基づく関数モデルのハイパーパラメータおよびサンプルポイントデータを格納するように構成されたメモリを有し、前記ハイパーパラメータおよび前記サンプルポイントデータは、より小さいビット分解能で利用可能にされ、
    前記ハイパーパラメータおよび前記サンプルポイントデータを用いて算術演算を実行することによって、前記データに基づく関数モデルを少なくとも部分的に計算する、FMAユニット。
  2. 前記被乗数は、仮数の第1のビット分解能と、指数の第1のビット分解能と、を有し、前記被加数及び前記出力変数は、仮数の第2のビット分解能と、指数の第2のビット分解能と、を有し、前記仮数の第2のビット分解能は、前記仮数の第1のビット分解能の少なくとも2倍に相当する、請求項1に記載のFMAユニット。
  3. 前記FMAユニットは、
    −前記被乗数の指数を、当該指数の積形成のために加算し、対応する指数中間結果(E)を提供するように構成された指数加算ブロックと、
    −前記被乗数の仮数値(M、M)を乗算し、仮数乗算結果(M)を獲得するように構成された乗算ブロックと、
    −前記指数中間結果(E)と前記被加数の指数(E)との間の差分を定め、指数結果(E)を提供するように構成された指数評価ブロックと、
    −前記指数中間結果(E)と前記被加数の指数(E)との間の前記定められた差分に従って、前記仮数乗算結果(M)又は前記被加数の仮数(M)に右シフト演算を行い、続いて、仮数結果を獲得するために、前記仮数乗算結果(M)及び前記被加数の仮数(M)を加算するように構成された加算ブロックと、を備え、
    前記仮数結果(M)と前記指数結果(E)とは、前記出力変数を示し、
    前記乗算ブロックの前記入力の前記ビット分解能は、前記加算ブロックの前記入力の前記ビット分解能よりも低い、請求項2に記載のFMAユニット。
  4. 前記指数評価ブロックは、前記指数中間結果(E)と、前記被加数の指数(E)と、のうちのより大きな指数の値として、前記指数結果(E)を提供するように構成され、前記加算ブロックは、前記指数中間結果(E)と前記被加数の指数(E)との間の前記定められた差分に従って、前記仮数乗算結果(M)又は前記被加数の仮数(M)の値であって、対応付けられたその指数がより小さい指数である前記値に、右シフト演算を行うように構成される、請求項3に記載のFMAユニット。
  5. 前記指数結果(E)及び前記仮数結果(M)を正規化するために、正規化ブロックが設けられる、請求項3又は4に記載のFMAユニット。
  6. ハードウェアで実装されたアルゴリズムを計算するためにロジックユニットを有する演算コアを備えた、前記制御装置のためのモデル計算ユニットであって、加算演算及び/又は乗算演算を実行するために、請求項1〜5のいずれか1項に記載のFMAユニットが設けられる、モデル計算ユニット。
  7. 前記演算コアは、ベイズ回帰を計算するように構成される、請求項6に記載のモデル計算ユニット。
  8. −ソフトウェアにより制御される主演算ユニットと、
    −請求項6に記載のモデル計算ユニットと、
    を備えた、制御装置。
  9. データに基づく関数モデルのハイパーパラメータ及びサンプルポイントデータを格納するためにメモリが設けられ、前記ハイパーパラメータ及び前記サンプルポイントデータは、より小さいビット分解能で提供される、請求項8に記載の制御装置。
  10. 前記関数モデルはガウス過程モデルである、請求項9に記載の制御装置。
JP2014106814A 2013-05-24 2014-05-23 関数モデルを純粋にハードウェア上で計算するモデル計算ユニット内での利用ためのfmaユニット Active JP6382577B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102013209657.7 2013-05-24
DE102013209657.7A DE102013209657A1 (de) 2013-05-24 2013-05-24 FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen

Publications (2)

Publication Number Publication Date
JP2014229318A JP2014229318A (ja) 2014-12-08
JP6382577B2 true JP6382577B2 (ja) 2018-08-29

Family

ID=51863176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014106814A Active JP6382577B2 (ja) 2013-05-24 2014-05-23 関数モデルを純粋にハードウェア上で計算するモデル計算ユニット内での利用ためのfmaユニット

Country Status (5)

Country Link
US (1) US9569175B2 (ja)
JP (1) JP6382577B2 (ja)
KR (1) KR102208274B1 (ja)
CN (1) CN104182201A (ja)
DE (1) DE102013209657A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013213420A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102018209901A1 (de) * 2018-06-19 2019-12-19 Robert Bosch Gmbh Recheneinheit, Verfahren und Computerprogramm zum Multiplizieren zumindest zweier Multiplikanden
CN112685693B (zh) * 2020-12-31 2022-08-02 南方电网科学研究院有限责任公司 一种实现Softmax函数的设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69624578T2 (de) * 1995-08-31 2003-09-04 Intel Corp Multiplixier-addierungsvorrichtung für gepackte daten
US6542916B1 (en) * 1999-07-28 2003-04-01 Arm Limited Data processing apparatus and method for applying floating-point operations to first, second and third operands
US7080111B2 (en) 2001-06-04 2006-07-18 Intel Corporation Floating point multiply accumulator
US7346642B1 (en) 2003-11-14 2008-03-18 Advanced Micro Devices, Inc. Arithmetic processor utilizing multi-table look up to obtain reciprocal operands
US7499962B2 (en) * 2004-12-21 2009-03-03 Intel Corporation Enhanced fused multiply-add operation
DE102010028266A1 (de) * 2010-04-27 2011-10-27 Robert Bosch Gmbh Steuergerät und Verfahren zur Berechnung einer Ausgangsgröße für eine Steuerung
US8965945B2 (en) * 2011-02-17 2015-02-24 Arm Limited Apparatus and method for performing floating point addition
FR2974645A1 (fr) * 2011-04-28 2012-11-02 Kalray Operateur de multiplication et addition fusionnees a precision mixte
DE102013213420A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102013212840B4 (de) * 2013-07-02 2022-07-07 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells mit Daten in verschiedenen Zahlenformaten

Also Published As

Publication number Publication date
CN104182201A (zh) 2014-12-03
KR102208274B1 (ko) 2021-01-27
JP2014229318A (ja) 2014-12-08
DE102013209657A1 (de) 2014-11-27
US20140351309A1 (en) 2014-11-27
KR20140138053A (ko) 2014-12-03
US9569175B2 (en) 2017-02-14

Similar Documents

Publication Publication Date Title
JP5113089B2 (ja) 選択可能な副精度に対して、低減された電力要求を有する浮動小数点プロセッサ
US10318290B2 (en) Merged floating point operation using a modebit
JP5175379B2 (ja) 選択可能な下位精度を有する浮動小数点プロセッサ
Kansa et al. On the ill-conditioned nature of C∞ RBF strong collocation
JP4418578B2 (ja) 第1、第2、第3オペランドに浮動小数点演算を適用するためのデータ処理装置および方法
US8990282B2 (en) Apparatus and method for performing fused multiply add floating point operation
US10860050B2 (en) Apparatus and methods for non-linear function operations
US20140067889A1 (en) Datapath circuit for digital signal processors
JP2002108606A (ja) スティッキービット生成回路及び乗算器
JP5640081B2 (ja) 飽和を伴う整数乗算および乗算加算演算
CN113721884B (zh) 运算方法、装置、芯片、电子装置及存储介质
JP6382577B2 (ja) 関数モデルを純粋にハードウェア上で計算するモデル計算ユニット内での利用ためのfmaユニット
WO2013109532A1 (en) Algebraic processor
JP2006228190A (ja) 入力値に逆数演算を実施して結果値を作り出すデータ処理装置および方法
CN107220025B (zh) 处理乘加运算的装置和处理乘加运算的方法
JP6646350B2 (ja) 様々な数値フォーマットのデータを用いてデータに基づく関数モデルを計算するためのモデル計算ユニット、および制御装置
JPH0628155A (ja) 除算方法および除算装置
Buddhe et al. Design and verification of dadda algorithm based binary floating point multiplier
JPS5939774B2 (ja) 指数関数の演算方式
CN109947393B (zh) 基于求余器的运算方法及装置
JP3778489B2 (ja) プロセッサ、演算装置及び演算方法
CN105468566B (zh) 用于计算数据的方法和设备
Kerlooza et al. MSB-First Interval-Bounded Variable-Precision Real-Time Arithmetic Unit
Kumazawa et al. Hardware algorithm for computing reciprocal of euclidean norm of a 3-D vector
Tiriveedhi Low latency digit-recurrence reciprocal and square-root reciprocal algorithm and architecture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180608

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180802

R150 Certificate of patent or registration of utility model

Ref document number: 6382577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250