JP6302682B2 - 複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法 - Google Patents

複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法 Download PDF

Info

Publication number
JP6302682B2
JP6302682B2 JP2014013824A JP2014013824A JP6302682B2 JP 6302682 B2 JP6302682 B2 JP 6302682B2 JP 2014013824 A JP2014013824 A JP 2014013824A JP 2014013824 A JP2014013824 A JP 2014013824A JP 6302682 B2 JP6302682 B2 JP 6302682B2
Authority
JP
Japan
Prior art keywords
addition
data
input
region
adder
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
JP2014013824A
Other languages
English (en)
Other versions
JP2014146336A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2014146336A publication Critical patent/JP2014146336A/ja
Application granted granted Critical
Publication of JP6302682B2 publication Critical patent/JP6302682B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/40Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay
    • G06F7/42Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • 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/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • G06F7/503Half or full adders, i.e. basic adder cells for one denomination using carry switching, i.e. the incoming carry being connected directly, or only via an inverter, to the carry output under control of a carry propagate signal
    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/507Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using selection between two conditionally calculated carry or sum values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/382Reconfigurable for different fixed word lengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Electromagnetism (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Advance Control (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、キャリー伝達制御を通じて複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法に関する。
プロセッサへのベクトル演算能力の提供は、マルチメディア応用分野で重要な性能向上をもたらす。一般的なベクトル演算器は、一回に多様なデータを同時に処理することができる能力を提供するが、このために、相応する多様な演算器を備えなければならないために、非常に大きくなる。それを解消するための方案として、最小データ長を有する算術演算器を、同時に処理する個数ほど備え、これらを必要に応じて連結して共有することによって、多様なデータタイプを支援する構造を使う。この際、加算または減算演算のために、キャリー伝達を考慮するキャリー選択加算器(carry−select adder)が使われるが、一般的なキャリー選択加算器は、データ型別に演算を共有するために、複雑な制御信号と多数のマルチプレクサとを用いて、面積の効率性及び処理性能が減少する。
本発明は、複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法を提供することである。
本発明の一態様によれば、加算器は、被演算データが入力される複数の第1加算領域と、被演算データのタイプ及び演算の種類に基づいた制御データが入力される複数の第2加算領域と、を含み、前記複数の第1加算領域のそれぞれは、所定のビット単位を含み、前記複数の第2加算領域は、前記複数の第1加算領域の間に前記複数の第1加算領域と交互に配される。
この際、前記所定ビット単位は、前記加算器で演算を処理する最大ビットよりも小さな単位であり得る。
また、前記被演算データは、そのデータのタイプによって少なくとも1つの第1加算領域に所定ビット単位で入力されうる。
また、前記被演算データが複数の第1加算領域から入力される前に演算の種類に基づいて反転または非反転選択入力する複数の第1マルチプレクサをさらに含みうる。
また、前記制御データは、前記複数の第1加算領域のうち、下位第1加算領域の少なくとも1つのキャリー信号を前記複数の第1加算領域のうち、上位第1加算領域に伝達または遮断するように制御し、演算の種類が減算演算である場合、2の補数を取るための‘1’値を加算するように制御することができる。
また、1つの被演算データが2つのデータセグメントに分離され、該分離された2つのデータセグメントが、それぞれ下位第1加算領域と上位第1加算領域とに入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を伝達するビットである[0、1]または[1、0]であり得る。
また、演算の種類が加算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を遮断するビットである[0、0]であり得る。
また、演算の種類が減算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、2の補数を取るための‘1’値を加算するように制御するビットである[1、1]であり得る。
また、下位第1加算領域と上位第1加算領域とに入力された被演算データ及び演算の種類に基づいて、複数の第1加算領域のうち、下位第1加算領域と複数の第1加算領域とのうち、上位第1加算領域の間に配された、複数の第2加算領域のうちの第2加算領域に、制御データを選択的に入力する1つ以上の第2マルチプレクサをさらに含みうる。
本発明の他の態様によれば、加算器を用いて加減演算を支援する方法は、前記加算器に所定ビット単位で形成された複数の第1加算領域に被演算データを入力する段階と、前記複数の第1加算領域の間に形成された複数の第2加算領域に被演算データのタイプ及び演算の種類に基づいた制御データを入力する段階と、を含む。
この際、前記所定ビット単位は、前記加算器で演算を処理する最大ビットよりも小さな単位であり得る。
また、前記被演算データは、そのデータのタイプに基づいて1つ以上の第1加算領域に所定ビット単位で入力されうる。
また、前記被演算データ入力段階は、マルチプレクサを通じて前記被演算データのうち、後で入力されるデータを演算の種類に基づいて反転または非反転選択入力する段階を含みうる。
前記制御データは、前記複数の第1加算領域のうちの下位第1加算領域の少なくとも1つのキャリー信号を前記複数の第1加算領域のうちの上位第1加算領域に伝達または遮断するように制御するか、演算の種類が減算演算である場合、2の補数を取るための‘1’値を加算するように制御するデータであり得る。
また、1つの被演算データが2つのデータセグメントに分離され、該分離された2つのデータセグメントが、それぞれ下位第1加算領域と上位第1加算領域とに分離されて入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を伝達するビットである[0、1]または[1、0]であり得る。
また、演算の種類が加算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を遮断するビットである[0、0]であり得る。
また、演算の種類が減算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、2の補数を取るための‘1’値を加算するように制御するビットである[1、1]であり得る。
また、下位第1加算領域と上位第1加算領域とに入力された被演算データ及び演算の種類に基づいて、マルチプレクサを通じて前記下位第1加算領域と上位第1加算領域との間の第2加算領域に制御ビットを選択入力することができる。
本発明のさらに他の態様によれば、加算器は、第1加算領域タイプと第2加算領域タイプとのうちから択一的に加算領域タイプを含む加算部と、複数のマルチプレクサと、を含み、前記複数のマルチプレクサのうち少なくとも1つは、前記加算部の関連加算領域に入力を提供し、前記第1加算領域タイプは、被演算データを、前記第2加算領域タイプは、制御データを入力される。
この際、前記第2加算領域タイプは、前記被演算データ、前記演算タイプが加算であるか、減算であるかの有無、及び前記制御データのうち少なくとも1つのビットサイズに基づいて、前記第2加算領域タイプの間でキャリー伝達を制御することができる。
また、前記第2加算領域タイプの出力は無視され、前記第1加算領域タイプの出力が、前記加算器の全体出力になりうる。
本発明のさらに他の態様によれば、加算器の作動方法は、加算部内の加算領域を択一的に配置して、前記加算部が第1加算領域タイプと第2加算領域タイプとのうち何れか1つにする段階と、複数のマルチプレクサを用いて、前記加算部の加算領域に対応する入力を提供する段階と、被演算データを前記第1加算領域タイプの加算領域で入力として受信する段階と、制御データを前記第2加算領域タイプの加算領域で入力として受信する段階と、前記被演算データを前記制御データに基づいて加算する段階と、を含む。
この際、前記第2加算領域タイプは、前記被演算データ、前記演算タイプが加算であるか、減算であるかの有無、及び前記制御データのうち少なくとも1つのビットサイズに基づいて、前記第1加算領域タイプの間でキャリー伝達を制御することができる。
また、前記第2加算領域タイプの出力は無視され、前記第1加算領域タイプの出力が、前記加算器の全体出力になりうる。
一般的なキャリー選択加算器の例である。 一般的なキャリー選択加算器の例である。 本発明の一実施形態による加算器を示した図面である。 本発明の一実施形態による加算器の第2加算領域に入力される制御データの例である。 本発明の一実施形態による加算器の加減演算の一例である。 本発明の一実施形態による加算器の加減演算の一例である。 本発明の一実施形態による加算器の加減演算の一例である。 本発明の一実施形態による加算器の加減演算の一例である。 本発明の一実施形態による複数データ型の加減演算支援方法のフローチャートである。
その他の実施形態の具体的な事項は、詳細な説明及び図面に含まれている。記載の技術の利点及び特徴、そして、それらを果たす方法は、添付される図面と共に詳細に後述されている実施形態を参照すると、明確になる。明細書の全般に亘った同じ参照符号は、同じ構成要素を指称する。
以下、複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法の実施形態について図面を参考にして詳しく説明する。
図1A及び図1Bは、一般的なキャリー選択加算器の例である。
図1Aは、最大32ビット(bit)のデータ型を支援する一般的なキャリー選択加算器の一例であって、4つの加算器111、112、113、114を並列連結して、複数のデータ型(例:8、16、及び32ビット)の加算演算を支援する。この際、各加算器111、112、113、114は、図1Bに例示された何れか1つの加算器114のように減算演算時に、非反転入力に対する‘1’値加算のためのキャリーイン(carry−in)をあらかじめ考慮するために、内部に二重の9ビット領域の加算器114_a、114_bを備えている。
また、各加算器111、112、113、114に入力される二番目のデータを演算の種類によって反転または非反転選択入力するマルチプレクサ121、122、123、124と、各加算器111、112、113、114から出力された2つの結果(キャリーイン無、キャリーイン有)のうちから何れか1つを選択するキャリー選択マルチプレクサ131、132、133、134、及び下位加算器111、112、113から上位加算器112、113、114にキャリーを伝達するキャリー伝達マルチプレクサ141、142、143を含みうる。
例えば、16ビットデータに対する加算演算を行う場合、最初の加算器111にデータ(i0_3、i1_3)が入力され、二番目の加算器112にデータ(i0_2、i1_2)が入力される。最初の加算器111は、内部の二重の加算器を通じてキャリーインが含まれていない場合とキャリーインが含まれた場合とを考慮してデータ(o0_3、01_3)を出力し、二番目の加算器112は、同様にデータ(o0_2、01_2)を出力する。
最初のキャリー選択マルチプレクサ131は、最初の加算器111から出力された結果のうちからキャリーインが含まれていないデータ(o0_3)を選択して、その加算器111の加算結果(z3)として出力する。最初のキャリー伝達マルチプレクサ141は、最初の加算器111の加算結果(z3)の最上位ビット値と‘0’のうちから選択して、二番目の加算器112にキャリー伝達如何を決定する。
二番目のキャリー選択マルチプレクサ132は、二番目の加算器112から出力された結果のうちから最初のキャリー伝達マルチプレクサ141から入力された値によってキャリーインが含まれていないデータ(o0_2)とキャリーインが含まれたデータ(o0_2)とのうちから何れか1つを選択して、その加算器112の加算結果(z2)として出力する。
このように、一般的なキャリー選択加算器は、多様なデータ型の演算を支援するために、複数の加算器111、112、113、114を備え、各加算器111、112、113、114には、キャリーインをあらかじめ考慮するために、並列の加算器を備えていて、多くの面積を占める。また、キャリー伝達を考慮して多数のマルチプレクサを経なければならないので、制御が複雑になり、演算遅延が発生する。
図2は、本発明の一実施形態による加算器を示した図面である。図2を参照すれば、本発明の一実施形態による加算器200は、単一の加算部210からなり、その加算部210は、最大データ長内で多様なデータ型の演算を支援できるように、所定ビット単位からなる複数の第1加算領域211、212、213、214と、各第1加算領域211、212、213、214の間に演算の種類及び被演算データのタイプに基づいた制御データが入力される1つ以上の第2加算領域221、222、223と、を含みうる。
図2は、4つの第1加算領域211、212、213、214と各第1加算領域211、212、213、214の間に3つの第2加算領域221、222、223とを例示しているが、第1加算領域の数は、最大支援可能なデータ型、演算の最小データ処理単位などによって増減されうる。
例えば、第1加算領域211、212、213、214は、演算の最小データ処理単位ビットからなり、最小データ処理単位ビットが8ビットであれば、4つの第1加算領域211、212、213、214を通じて最大32ビットのデータ型の演算が可能である。この際、入力される被演算データのタイプによって、8ビット、16ビット、24ビット、及び32ビットのデータ型の演算を処理する。
被演算データは、そのデータのタイプによって第1加算領域211、212、213、214のうちの1つ以上に所定ビット(mビット)単位で入力されて、第1加算領域単位で加算演算が行われる。この際、被演算データのタイプによって二対以上の被演算データが同時に第1加算領域211、212、213、214に入力されることが可能である。
例えば、所定ビット(mビット)が8ビットであり、被演算データのタイプが16ビットであれば、その被演算データは、8ビット単位で分離されて2つの第1加算領域211、212に入力されうる。このような場合、一対の16ビット長の被演算データを8ビット単位に分離して、2つの第1加算領域213、214にさらに入力して、同時に二対以上のデータの加算演算を処理させうる。
実施形態では、8、16、32ビット単位で説明になっているが、さらに長いか、短いビット単位も可能である。さらに、ビット長は、8の倍数で制限されるものでもない。実施形態によっては、3、9、10または45ビットの倍数でビット長が適用されることもある。
一方、本発明の一実施形態による加算器200は、減算演算を支援することができる。減算演算は、二番目に入力された被演算データを反転入力して加算演算を行い、2の補数を取るための‘1’値を加算する方式を使う。加算器200は、このような方式の減算演算を支援するために、各第1加算領域211、212、213、214に対応する第1マルチプレクサ231、232、233、234をさらに含みうる。第1マルチプレクサ231、232、233、234は、行われる演算の種類によって被演算データのうち、後でマルチプレクサを経由して加算領域に直接入力される被演算データを反転または非反転選択して入力し、すなわち、演算の種類が減算演算である場合、後の被演算データを反転入力を選択して、対応する各第1加算領域211、212、213、214に入力することができる。
さらに、実施形態によっては、反転値が加算器以前のステージに存在する入力マルチプレクサに連結された特定の論理回路によって獲得され、減算演算を指示する命令に基づいて行われることもある。また、減算演算の場合、‘1’の補数である減数(subtrahend)に‘1’値が加えられて、‘2’の補数になりうる。‘1’を加えることは、一般的に減数のLSB(Least Significant Bit)で演算がなされる。しかし、本実施形態では、(1、1)を分割された加算領域223、222、221に入力した結果であるキャリーがLSBに加算される。すなわち、最初に‘1’を加える時に、この‘1’値はキャリーを通じて入力されるが、キャリーは、(1、1)を分割された加算領域223、222、221に入力した結果であり、キャリーは、生成された後にLSBに加算される。
実施形態によっては、2つの異なる長さの値が互いに加算されるか、減算されうる。短い値をパッディング(padding)して入力することによって、これが可能である。また、図2のシステムは、値を加算するか、減算するのに使うことができる。特に、被加算数(augend)の値と加数(addend)の値とが必ずしも同じ長さである必要はない。同様に、被減数(minuend)と減数(subtrahend)とが必ずしも同じ長さである必要はない。被加算数と加数、被減数と減数は、互いに異なる長さを有しうる。長さが異なる場合には、短いデータが長いデータ長ほどパッディングされる。長さが異なれば、符号タイプは同一でなければならない。特定データの符号タイプは、値が補数(complementary number)であるか、無符号数字(unsigned number)であるかなどによって定められる。
長さが短い数の値が2つの数に対する補数である実施形態では、符号ビットが拡張されうる。短い側の値が符号がいない値である実施形態では、‘0’が上位ビットまで拡張されうる。短い側の値がサインマグニチュード(sign−magnitude)である実施形態では、符号ビットがMSB(Most Significant Bit)に配され、‘0’が残りの拡張された長さに満たされうる。
実施形態によっては、加算領域214、213、212、211の上で説明された異なる長さを有する2つの値に使われ、それぞれの加算領域が、(i0_0、i1_0)、(i0_1、i1_1)、(i0_2、i1_2)、及び(i0_3、i1_3)を入力としてそれぞれ使うことができる。例えば、一実施形態で、(i0_0、i1_0)の対を成すi0_0が4ビット無符号値であり、i1_0が8ビット無符号値である場合に、4ビットの‘0’がi0_0のMSBに満たされうる。同様に、他の実施形態で、(i0_1、i1_1)の対を成すi0_1が4ビットの2の補数であり、i1_1が8ビットの2の補数である場合、i0_1のMSBが4ビットに拡張されうる。
第2加算領域221、222、223は、第1加算領域211、212、213、214の間ごとに1ビットで形成され、下位第1加算領域から発生したキャリー信号を上位第1加算領域に伝達または遮断するように制御するか、減算演算時に、‘2’の補数値を取るための‘1’値を加算するように制御する制御データが入力されうる。
また、実施形態によっては、第1加算領域211、212、213、214が互いに同じサイズになりうる。例えば、領域は、それぞれ8ビットサイズになることもあり、その他の互いに同じサイズになることもある。また、実施形態によっては、領域が互いにサイズが異なることもある。特に、領域211が8ビットの長さである一方、領域212は16ビット長であり、領域213は32ビット長になることもあり、または、その他の組合わせになることもある。データが領域223、222、221によって分割される以上、それぞれの加算領域は、互いに異なるビット長を有しうる。したがって、実施形態によれば、それぞれの加算領域のビット長は、変動可能である。
図3は、本発明の一実施形態による加算器200の第2加算領域221、222、223に入力される制御データの一例であって、図3を参照すれば、第2加算領域221、222、223に入力される制御データは、[0、1]、[1、0]、[0、0]、及び[1、1]のうちの何れか1つであり得る。
また、実施形態によっては、2つの入力が第1制御ビットと第2制御ビットとにそれぞれ入力されうる。特に、図2に示したものと類似した構成を利用すれば、第2加算領域221、222、223への入力は、2ビットになりうる。また、実施形態によっては、2つのマルチプレクサが配置されることもあるが、これは、図2で2ビット入力を第2加算領域に提供する1つのマルチプレクサのみが示したものとは異なる。
図3で示すように、下位第1加算領域と上位第1加算領域とに1つの被演算データが分離されて入力された場合、例えば、図2の第1加算領域211、212、213、214が8ビットからなり、16ビットの被演算データが下位第1加算領域211と上位第1加算領域212とに分離入力された場合、その間の第2加算領域221は、下位第1加算領域211の加算演算で発生したキャリー信号を伝達するために、[0、1]または[1、0]の値が入力されうる。
一方、下位第1加算領域と上位第1加算領域とに互いに異なる被演算データが同時に入力された場合には、演算の種類が加算演算であれば、その間の第2加算領域には、キャリー信号の伝達を遮断するために[0、0]が入力され、演算の種類が減算演算であれば、2の補数を取るための‘1’値を加算するために[1、1]が入力されうる。
例えば、16ビットの第1被演算データが8ビットからなる2つの第1加算領域211、212に分離入力され、16ビットの第2被演算データが残りの2つの第1加算領域213、214に分離入力された場合、演算の種類が加算演算であれば、第1被演算データが入力された第1加算領域212と第2被演算データが入力された第1加算領域213との間の第2加算領域222には、キャリー信号伝達を遮断するために[0、0]の値が入力されうる。もし、演算の種類が減算演算であれば、その第2加算領域222には、‘1’値加算のために[1、1]が入力されうる。
加算器200は、図2に示したように、各第2加算領域221、222、223に対応して被演算データのタイプ及び演算の種類に基づいた制御データを選択入力する第2マルチプレクサ241、242、243をさらに含みうる。例えば、何れか1つの第2マルチプレクサ241は、演算の種類、すなわち、加算演算であるか、または減算演算であるかと、隣接する第1加算領域211、212に入力された被演算データのタイプ、すなわち、1つのデータが分離入力された場合であるか、2つの互いに異なるデータが入力された場合であるかによって、0と1とのビット値を選択的に入力する。
図4Aないし図4Dは、図2の実施形態による加算器200の加減演算の一例であって、説明の便宜上、加算器200は、2ビットからなる4つの第1加算領域211、212、213、214と、1ビットからなる3つの第2加算領域221、222、223と、を含むものと仮定する。
図4Aは、2ビットデータ型を有した第1被演算データ(a1、b1)と、第2被演算データ(a2、b2)との加算演算を同時に行うことを例示したものである。
入力される各被演算データのタイプが2ビット長を有するので、上位第1加算領域212には、第1被演算データ(a1、b1)が順次に入力される。この際、演算の種類は、加算演算なので、第1マルチプレクサ232は、第1被演算データ(a1、b1)のうち、後で入力される第2データ(b1)をそのまま非反転入力する。同様に、下位第1加算領域211には、第2被演算データ(a2、b2)が入力され、第1マルチプレクサ231は、加算演算なので、第2データ(b2)を非反転入力する。
また、その間の第2加算領域221には、下位第1加算領域211で発生するキャリー信号の伝達を遮断するための[0、0]の制御データが入力される。その第2加算領域221に対応する第2マルチプレクサ241は、隣接する下位第1加算領域211と上位第1加算領域212とに入力されたデータが互いに異なる2つのデータであり、演算の種類が加算演算なので、0と0とを順次に選択入力する。
下位第1加算領域211は、入力された第1被演算データを加算して、その結果として‘00’を出力し、‘1’のキャリー信号を発生させる。キャリー信号は、第2加算領域221に伝達され、第2加算領域221は、キャリー信号を考慮して入力された制御データを加算して、‘1’の結果を出力し、キャリー信号を発生しない。上位第1加算領域212は、第2加算領域221から伝達されたキャリー信号がないために、その加算結果として‘11’を出力する。最終的に、第2加算領域の結果は捨て、下位第1加算領域211と上位第1加算領域212との結果のみを最終結果として取って、第1被演算データの加算結果‘11’と第2被演算データの加算結果‘00’とが得られる。
図4Bは、4ビットデータ型を有した被演算データ(a、b)の加算演算を行うことを例示したものである。
入力される被演算データのタイプが4ビット長を有するので、下位第1加算領域211と上位第1加算領域212とに2ビットずつ分離されて入力される。この際、演算の種類は、加算演算なので、対応する第1マルチプレクサ231、232は、第1被演算データ(a、b)のうち、後で入力される第2データ(b)をそのまま非反転入力する。
その間の第2加算領域221には、下位第1加算領域211で発生するキャリー信号を伝達するための[1、0]の制御データが入力される。第2加算領域221に対応する第2マルチプレクサ241は、隣接する下位第1加算領域211と上位第1加算領域212とに入力されたデータが1つのデータであり、演算の種類が加算演算なので、1と0とを順次に選択入力する。
下位第1加算領域211は、入力された被演算データを加算して、その結果として‘00’を出力し、‘1’のキャリー信号を発生させる。キャリー信号は、第2加算領域221に伝達され、第2加算領域221は、キャリー信号を考慮して入力された制御データを加算して、‘0’の結果を出力し、‘1’のキャリー信号を発生させる。上位第1加算領域212は、第2加算領域221から伝達されたキャリー信号に基づいて入力されたデータを加算して、その加算結果として‘00’を出力する。最終的に、第2加算領域221の結果は捨て、下位第1加算領域211と上位第1加算領域212との結果のみを取って、被演算データの加算結果‘0000’が得られる。
図4Cは、2ビットデータ型を有した第1被演算データ(a1、b1)と、第2被演算データ(a2、b2)との減算演算を同時に行うことを例示したものである。
図4Aと同様に、各被演算データのタイプが2ビット長を有するので、上位第1加算領域212と下位第1加算領域211には、それぞれ第1被演算データ(a1、b1)と第2被演算データ(a2、b2)とが入力される。この際、演算の種類が減算演算なので、第1マルチプレクサ231、232は、後で入力される第2データ(b1、b2)に対する反転入力を選択して、対応する下位第1加算領域211と上位第1加算領域212とに入力する。
第2マルチプレクサ241は、隣接する下位第1加算領域211と上位第1加算領域212とに入力されたデータが互いに異なる2つのデータであり、演算の種類が減算演算なので、対応する第2加算領域221に上位第1加算領域212の結果に‘1’値を加算するための制御データ[1、1]を入力する。この際、下位第1加算領域も減算演算が行われるので、演算結果に加算される‘1’値を入力することを前提とする。
下位第1加算領域211は、入力された‘1’値を考慮して第1被演算データを加算して、その結果として‘10’を出力し、‘1’のキャリー信号を発生させる。キャリー信号は、第2加算領域221に伝達され、第2加算領域221は、入力された制御データ1、1と伝達されたキャリー信号を考慮して、‘1’の結果を出力し、‘1’のキャリー信号を発生させる。上位第1加算領域212は、第2加算領域221から伝達されたキャリー信号を考慮して、その加算結果として‘11’を出力する。最終的に、第2加算領域221の結果は捨て、下位第1加算領域211と上位第1加算領域212との結果のみを最終結果として取って、第1被演算データの減算結果‘11’と第2被演算データの減算結果‘10’とが得られる。
図4Dは、4ビットデータ型を有した被演算データ(a、b)の減算演算を行うことを例示したものである。
被演算データのタイプが4ビット長を有するので、下位第1加算領域211と上位第1加算領域212とに2ビットずつ分離されて入力される。この際、演算の種類は、減算演算なので、対応する第1マルチプレクサ231、232は、第1被演算データ(a、b)のうち、後で入力される第2データ(b)を反転入力する。
第2マルチプレクサ241は、隣接する下位第1加算領域211と上位第1加算領域212とに入力されたデータが1つのデータなので、その間の第2加算領域212には、制御データとして[1、0]を入力する。この際、下位第1加算領域211には、2の補数を取るための‘1’値加算のために‘1’をさらに入力することを前提とする。
下位第1加算領域211は、被演算データとさらに入力された‘1’値を加算して、その結果として‘10’を出力し、‘1’のキャリー信号を発生させる。キャリー信号は、第2加算領域221に伝達され、第2加算領域221は、キャリー信号を考慮して入力された制御データ(1、0)を加算して、‘0’の結果を出力し、‘1’のキャリー信号を発生させる。上位第1加算領域212は、第2加算領域221から伝達されたキャリー信号と入力されたデータを加算して、その加算結果として‘11’を出力する。最終的に、第2加算領域221の結果は捨て、下位第1加算領域211と上位第1加算領域212との結果のみを取って、被演算データの加算結果‘1110’が得られる。
開示された実施形態によれば、加算器200は、キャリー選択のための多数のマルチプレクサを要さず、多様なデータ型を支援するために、複数の加算器を並列連結する必要なしに単一の加算器を通じて、複数のデータ型を支援することができるので、処理性能及び面積の効率性を増加させることができる。
図5は、本発明の一実施形態による複数データ型の加減演算支援方法のフローチャートである。図5を参照して、図2の実施形態による加算器200を利用した複数データ型の加減演算支援方法の一実施形態を説明する。
まず、加算器200は、被演算データのうちの第1データが1つ以上の第1加算領域211、212、213、214に所定ビット単位で入力する(段階511)。被演算データは、データのタイプによって1つの第1加算領域に入力されるか、2つ以上の第1加算領域に分離されて入力されうる。
次いで、加算器200の第1マルチプレクサ231、232、233、234は、演算の種類を判断し(段階512)、演算の種類が減算演算ではなければ、被演算データのうちの第2データを非反転して、そのまま入力し(段階513)、減算演算であれば、反転入力する(段階514)。
次いで、加算器200の第2マルチプレクサ241、242、243は、それぞれ対応する第2加算領域221、222、223に隣接する第1加算領域211、212、213、214に入力された被演算データを確認する(段階515)。もし、被演算データのタイプが所定ビットよりも大きければ、被演算データが隣接する第1加算領域211、212、213、214に分離されて入力されたか否かを判断する(段階516)。
判断の結果(段階516)、1つのデータが分離されて入力された場合、その間の第2加算領域には、下位第1加算領域から発生したキャリー信号を上位第1加算領域に伝達するための制御ビットである[1、0]または[0、1]を入力することができる(段階517)。
判断の結果(段階516)、2つの互いに異なるデータが入力された場合、演算の種類を判断し(段階518)、減算演算であれば、その間の第2加算領域には、上位第1加算領域の加算結果に‘1’値加算のための制御データ[1、1]を入力する(段階519)。判断の結果(段階518)、加算演算である場合、下位第1加算領域のキャリー信号が上位第1加算領域に伝達されることを遮断するための制御データである[0、0]を入力することができる(段階520)。
加算器200は、第1加算領域と第2加算領域とに入力されたデータを用いて加算演算を行った後、第2加算領域の出力結果は捨て、第1加算領域の結果のみを取れば、最終的に、加算または減算演算の結果が得られる。
一方、本実施形態は、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取れるデータが保存されるあらゆる種類の記録装置を含む。
コンピュータで読み取り可能な記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などがあり、また、キャリアウェーブ(例えば、インターネットを介した伝送)の形態で具現するものを含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークで連結されたコンピュータシステムに分散されて、分散方式でコンピュータで読み取り可能なコードとして保存されて実行可能である。そして、本発明を具現するための機能的な(functional)プログラム、コード及びコードセグメントは、本発明が属する技術分野のプログラマーによって容易に想到されうる。
当業者ならば、本発明がその技術的思想や必須的な特徴を変更せずとも、他の具体的な形態で実施可能であることを理解できるであろう。したがって、前述した実施形態は、あらゆる面で例示的なものであり、限定的ではないということを理解せねばならない。
本発明は、複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法関連の技術分野に適用可能である。
111 加算器
121 マルチプレクサ
200 加算器
210 加算部

Claims (24)

  1. 加算器であって、
    被演算データが入力される複数の第1加算領域であり、それぞれが所定ビット単位を含む、複数の第1加算領域と、
    被演算データのタイプ及び演算の種類に基づいた制御データが入力される複数の第2加算領域であり、それぞれが前記複数の第1加算領域の2つの隣接する第1加算領域の間に配置されている、第2加算領域と、を含み、
    前記加算器は、さらに、第1マルチプレクサを含み、
    前記第1マルチプレクサのそれぞれは、前記複数の第2加算領域のうち一つの関連する第2加算領域に対して接続されており、かつ、前記関連する第2加算領域に対して接続されている前記2つの隣接する第1加算領域のそれぞれについて入力される前記被演算データのタイプ及び前記演算の種類に基づいて、前記関連する第2加算領域に対して前記制御データを選択的に提供するように構成されている、
    加算器。
  2. 前記所定ビット単位は、前記加算器で演算を処理する最大ビットよりも小さな単位である請求項1に記載の加算器。
  3. 前記被演算データは、そのデータのタイプによって少なくとも1つの第1加算領域に所定ビット単位で入力される請求項1または2に記載の加算器。
  4. 前記被演算データが複数の第加算領域から入力される前に演算の種類に基づいて反転または非反転選択入力する複数の第1マルチプレクサをさらに含む請求項1乃至3いずれか一項に記載の加算器。
  5. 前記制御データは、
    前記複数の第1加算領域のうち、下位第1加算領域の少なくとも1つのキャリー信号を前記複数の第1加算領域のうち、上位第1、加算領域に伝達または遮断するように制御し、演算の種類が減算演算である場合、2の補数を取るための‘1’値を加算するように制御する請求項1乃至4いずれか一項に記載の加算器。
  6. 1つの被演算データが2つのデータセグメントに分離され、該分離された2つのデータセグメントが、それぞれ下位第1加算領域と上位第1加算領域とに入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を伝達するビットである[0、1]または[1、0]である請求項5に記載の加算器。
  7. 演算の種類が加算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を遮断するビットである[0、0]である請求項5または6に記載の加算器。
  8. 演算の種類が減算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、2の補数を取るための‘1’値を加算するように制御するビットである[1、1]である請求項5乃至7いずれか一項に記載の加算器。
  9. 下位第1加算領域と上位第1加算領域とに入力された被演算データ及び演算の種類に基づいて、複数の第1加算領域のうち、下位第1加算領域と複数の第1加算領域とのうち、上位第1加算領域の間に配された、複数の第2加算領域のうちの第2加算領域に、制御データを選択的に入力する1つ以上の第2マルチプレクサをさらに含む請求項1に記載の加算器。
  10. 加算器を用いて加減演算を支援する方法において、
    前記加算器において所定ビット単位でそれぞれが形成された複数の第1加算領域に被演算データを入力する段階と、
    複数の第2加算領域に前記被演算データのタイプ及び演算の種類に基づいて、制御データを入力する段階と、
    を含み、
    前記複数の第2加算領域のそれぞれは、前記複数の第1加算領域の2つの隣接する第1加算領域の間に配置されており、
    前記制御データを入力する段階は、マルチプレクサを通じて前記制御データを入力する段階を含み、
    前記マルチプレクサのそれぞれは、前記複数の第2加算領域のうち一つの関連する第2加算領域に対して接続されており、かつ、前記関連する第2加算領域に対して接続されている前記2つの隣接する第1加算領域のそれぞれについて入力される前記被演算データのタイプ及び前記演算の種類に基づいて、前記関連する第2加算領域に対して前記制御データを選択的に提供するように構成されている、
    加減演算支援方法。
  11. 前記所定ビット単位は、前記加算器で演算を処理する最大ビットよりも小さな単位である請求項10に記載の加減演算支援方法。
  12. 前記被演算データは、そのデータのタイプに基づいて1つ以上の第1加算領域に所定ビット単位で入力される請求項10または11に記載の加減演算支援方法。
  13. 前記被演算データ入力する段階は、
    マルチプレクサを通じて前記被演算データのうち、後で入力されるデータを演算の種類に基づいて反転または非反転選択入力する段階を含む請求項10乃至12いずれか一項に記載の加減演算支援方法。
  14. 前記制御データは、
    前記複数の第1加算領域のうちの下位第1加算領域の少なくとも1つのキャリー信号を前記複数の第1加算領域のうちの上位第1加算領域に伝達または遮断するように制御するか、演算の種類が減算演算である場合、2の補数を取るための‘1’値を加算するように制御するデータである請求項10乃至13いずれか一項に記載の加減演算支援方法。
  15. 1つの被演算データが2つのデータセグメントに分離され、該分離された2つのデータセグメントが、それぞれ下位第1加算領域と上位第1加算領域とに分離されて入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を伝達するビットである[0、1]または[1、0]である請求項14に記載の加減演算支援方法。
  16. 演算の種類が加算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、キャリー信号を遮断するビットである[0、0]である請求項14または15に記載の加減演算支援方法。
  17. 演算の種類が減算演算であり、下位第1加算領域と上位第1加算領域とに互いに異なる2つの被演算データが同時に入力された場合、その下位第1加算領域と上位第1加算領域との間の第2加算領域に入力される制御データは、2の補数を取るための‘1’値を加算するように制御するビットである[1、1]である請求項14乃至16いずれか一項に記載の加減演算支援方法。
  18. 下位第1加算領域と上位第1加算領域とに入力された被演算データ及び演算の種類に基づいて、マルチプレクサを通じて前記下位第1加算領域と上位第1加算領域との間の第2加算領域に制御ビットを選択入力する請求項14乃至17いずれか一項に記載の加減演算支援方法。
  19. 加算器であって、
    被演算データを受信するための第1加算領域と制御データを受信するための第2加算領域とを含む加算部を含み、
    前記第2加算領域のそれぞれは、前記第1加算領域の2つの隣接する第1加算領域の間に配置されており、
    前記加算器は、さらに、マルチプレクサを含み、
    前記マルチプレクサのそれぞれは、前記第2加算領域のうち一つの関連する第2加算領域に対して接続されており、かつ、前記関連する第2加算領域に対して接続されている前記2つの隣接する第1加算領域のそれぞれについて入力される被演算データのタイプ及び演算の種類に基づいて、前記関連する第2加算領域に対して前記制御データを選択的に提供するように構成されている、
    加算器。
  20. 前記第2加算領域は、前記被演算データ、演算タイプが加算であるか減算であるか、及び、前記制御データのうち少なくとも1つのビットサイズに基づいて、前記第1加算領域の間でキャリー伝達を制御する、請求項19に記載の加算器。
  21. 前記第2加算領域の出力は、無視される、請求項20に記載の加算器。
  22. 加算器の作動方法であって、
    加算部内の複数の加算領域配置を交替させる段階であり、前記加算部が第1加算領域と第2加算領域と間で交替させる段階と、
    演算データを前記第1加算領域で入力として受信する段階と、
    制御データを前記第2加算領域で前記入力として受信する段階と、
    前記被演算データについて前記制御データに基づいて演算を実行する段階と、
    を含み、
    前記第2加算領域のそれぞれは、前記第1加算領域の2つの隣接する第1加算領域の間に配置されており、
    前記制御データを受信する段階は、マルチプレクサを通じて前記制御データを受信する段階を含み、
    前記マルチプレクサのそれぞれは、前記第2加算領域のうち一つの関連する第2加算領域に対して接続されており、かつ、入力される被演算データのタイプ及び演算の種類に基づいて、前記関連する第2加算領域に対して前記制御データを選択的に提供するように構成されている、
    加算器の作動方法。
  23. 前記第2加算領域は、前記被演算データ、演算タイプが加算であるか減算であるか、及び、前記制御データのうち少なくとも1つのビットサイズに基づいて、前記第1加算領域の間でキャリー伝達を制御する、請求項22に記載の加算器の作動方法。
  24. 前記第2加算領域の出力は、無視される、請求項23に記載の加算器の作動方法。
JP2014013824A 2013-01-28 2014-01-28 複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法 Active JP6302682B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0009328 2013-01-28
KR1020130009328A KR102072543B1 (ko) 2013-01-28 2013-01-28 복수 데이터 형식을 지원하는 가산기 및 그 가산기를 이용한 복수 데이터 형식의 가감 연산 지원 방법

Publications (2)

Publication Number Publication Date
JP2014146336A JP2014146336A (ja) 2014-08-14
JP6302682B2 true JP6302682B2 (ja) 2018-03-28

Family

ID=50064415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014013824A Active JP6302682B2 (ja) 2013-01-28 2014-01-28 複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法

Country Status (5)

Country Link
US (1) US9842085B2 (ja)
EP (1) EP2759926A1 (ja)
JP (1) JP6302682B2 (ja)
KR (1) KR102072543B1 (ja)
CN (1) CN103970503B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512724B (zh) 2015-12-01 2017-05-10 中国科学院计算技术研究所 加法器装置、数据累加方法及数据处理装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1067427A (en) * 1964-08-19 1967-05-03 Soemmerda Bueromaschwerk Circuit arrangement for the parallel addition and subtraction of decimal digits
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
US5408670A (en) * 1992-12-18 1995-04-18 Xerox Corporation Performing arithmetic in parallel on composite operands with packed multi-bit components
US5883824A (en) * 1993-11-29 1999-03-16 Hewlett-Packard Company Parallel adding and averaging circuit and method
US5943251A (en) 1996-11-18 1999-08-24 Samsung Electronics Co., Ltd. Adder which handles multiple data with different data types
KR19980041753U (ko) 1996-12-24 1998-09-25 김영귀 자동차용 전면판재의 구조
US6408320B1 (en) * 1998-01-27 2002-06-18 Texas Instruments Incorporated Instruction set architecture with versatile adder carry control
US6140839A (en) * 1998-05-13 2000-10-31 Kaviani; Alireza S. Computational field programmable architecture
KR20000044663A (ko) 1998-12-30 2000-07-15 김영환 면적 개선을 위한 가산기
US6449629B1 (en) * 1999-05-12 2002-09-10 Agere Systems Guardian Corp. Three input split-adder
US7441105B1 (en) * 2004-01-02 2008-10-21 Altera Corporation Reducing multiplexer circuitry for operand select logic associated with a processor
TWI259398B (en) * 2004-02-04 2006-08-01 Sunplus Technology Co Ltd Device and method using operation mode in processor to switch register
US20060004902A1 (en) * 2004-06-30 2006-01-05 Siva Simanapalli Reconfigurable circuit with programmable split adder
US7516173B2 (en) 2004-08-04 2009-04-07 Intel Corporation Carry-skip adder having merged carry-skip cells with sum cells
EP1927046A2 (en) * 2005-09-05 2008-06-04 Nxp B.V. Full-adder modules and multiplier devices using the same
EP2141585A1 (en) * 2008-06-27 2010-01-06 Panasonic Corporation Combined adder circuit array and and/or plane

Also Published As

Publication number Publication date
US20140214913A1 (en) 2014-07-31
KR20140096588A (ko) 2014-08-06
US9842085B2 (en) 2017-12-12
EP2759926A1 (en) 2014-07-30
CN103970503A (zh) 2014-08-06
JP2014146336A (ja) 2014-08-14
CN103970503B (zh) 2019-03-01
KR102072543B1 (ko) 2020-02-03

Similar Documents

Publication Publication Date Title
US9519460B1 (en) Universal single instruction multiple data multiplier and wide accumulator unit
JP6744913B2 (ja) 浮動小数点数の丸め処理
TWI763079B (zh) 用於浮點運算的乘法器、方法、積體電路晶片和計算裝置
JPH07210368A (ja) 算術演算の結果として生じる正および負のオーバーフローのハードウェアによる効率的な取り扱い方法
JP6309196B2 (ja) 多項式演算のための部分積発生装置及び方法
US9678716B2 (en) Apparatus and method for performing absolute difference operation
US11734216B2 (en) Cascade communications between FPGA tiles
JPWO2007096982A1 (ja) 演算処理装置および演算処理方法
US8554822B2 (en) Decimal adder with end around carry
US10140090B2 (en) Computing and summing up multiple products in a single multiplier
JP3436994B2 (ja) シフト装置
JP6302682B2 (ja) 複数データ形式を支援する加算器、及びその加算器を利用した複数データ形式の加減演算支援方法
US9262123B2 (en) Data processing apparatus and method for performing a narrowing-and-rounding arithmetic operation
US20080071852A1 (en) Method to perform a subtraction of two operands in a binary arithmetic unit plus arithmetic unit to perform such a method
JP6979076B2 (ja) 回路、システム、および組合せ結果を演算するように再設定可能な複数の再設定可能ユニットを備えたプロセッサにより実装される方法
CN113485751A (zh) 执行伽罗瓦域乘法的方法、运算单元和电子装置
WO2022068327A1 (zh) 运算单元、浮点数计算的方法、装置、芯片和计算设备
US11455142B2 (en) Ultra-low precision floating-point fused multiply-accumulate unit
JPH08123664A (ja) 絶対値計算方法および回路
JP3198795B2 (ja) 加算器及び加算方法
JPH09190338A (ja) 論理演算装置での数学的オーバフロー・フラグ発生遅延の除去
US20090327388A1 (en) Static logic ling adder
TW202319909A (zh) 用於將輸入集相乘之硬體電路及方法,以及非暫時性機器可讀儲存裝置
WO2024144950A1 (en) Multi-modal systolic array for matrix multiplication
JP2024509062A (ja) シストリックアレイにおける乗算器および加算器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170104

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171225

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: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180305

R150 Certificate of patent or registration of utility model

Ref document number: 6302682

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250