JP7269381B2 - 計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体 - Google Patents

計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体 Download PDF

Info

Publication number
JP7269381B2
JP7269381B2 JP2021576625A JP2021576625A JP7269381B2 JP 7269381 B2 JP7269381 B2 JP 7269381B2 JP 2021576625 A JP2021576625 A JP 2021576625A JP 2021576625 A JP2021576625 A JP 2021576625A JP 7269381 B2 JP7269381 B2 JP 7269381B2
Authority
JP
Japan
Prior art keywords
bit
component
value
computing device
bit width
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
JP2021576625A
Other languages
English (en)
Other versions
JP2022538236A (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.)
Anhui Cambricon Information Technology Co Ltd
Original Assignee
Anhui Cambricon Information Technology 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 Anhui Cambricon Information Technology Co Ltd filed Critical Anhui Cambricon Information Technology Co Ltd
Publication of JP2022538236A publication Critical patent/JP2022538236A/ja
Application granted granted Critical
Publication of JP7269381B2 publication Critical patent/JP7269381B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • 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/4824Methods 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 using signed-digit representation
    • 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
    • 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
    • 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/3816Accepting numbers of variable word length

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Neurology (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Image Processing (AREA)

Description

<関連出願の相互参照>
本願は、2020年3月17日に提出した、出願番号が2020101883356であり、発明の名称が「計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体」である中国特許出願に基づき優先権を主張し、ここで、その内容の全ては、援用により本願に組み込まれる。
本開示は、一般的に、データ処理に関する。より詳細には、本開示は、マルチビット幅値を処理するための計算装置、方法、集積回路用プリント基板、およびコンピュータ読み取り可能な記憶媒体に関する。
現在、異なるタイプのプロセッサによって処理されるデータのビット幅は異なる場合がある。特定のデータ型で演算を実行するプロセッサの場合、その処理するデータのビット幅は制限される場合が多い。たとえば、固定小数点演算器の場合、その通常処理できるデータのビット幅が16ビットを超えなく、例えば16ビットの整数型データを処理できる。しかし、計算コスト及びオーバヘッドを節約し、計算効率を向上させるために、ビット幅が制限されたプロセッサがより多くのビット幅のデータを処理できることをどのように実現するかは、解決しようとする技術的課題になっている。
少なくとも上記の技術的課題を解決するために、本開示は、複数の態様により、マルチビット幅のデータを分割するための方式を提案する。本開示の分割方式により、マルチビット幅のデータをビット幅の小さい少なくとも2つのデータに分割して表現することができ、これにより、プロセッサの処理ビット幅が限られているシナリオにおいて、ビット幅の小さい2つのデータを用いて計算に関与することができる。
第1の態様では、本開示は、上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための計算装置であって、前記マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信するように構成される入力回路と、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算して、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を取得する第1の成分計算回路と、マルチビット幅値と、少なくとも第1の成分に関する値とに基づいて計算して、前記マルチビット幅値のうちの前記下位ビット部分を表す第2の成分を取得するように構成される第2の成分計算回路と、前記第1の成分および前記第2の成分のうち少なくとも1つを出力するように構成される出力回路と、を備える計算装置を提供する。
第2の態様では、本開示は、前記計算装置を含む集積回路チップを提供する。
第3の態様では、本開示は、前記集積回路チップを含む集積回路用プリント基板を提供する。
第4の態様では、本開示は、上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための方法であって、前記マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信するステップと、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算して、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を取得するステップと、マルチビット幅値と、少なくとも第1の成分に関する値とに基づいて計算して、前記マルチビット幅値の前記下位ビット部分を表す第2の成分を取得するステップと、前記第1の成分および前記第2の成分のうち少なくとも1つを出力するステップとを含む方法を提供する。
第5の態様では、本開示は、マルチビット幅値を処理するための計算装置であって、プロセッサと、プログラム命令を記憶するためのメモリとを備え、前記プログラム命令が前記少なくとも1つのプロセッサによって実行されると、前記方法を実行させる計算装置を提供する。
第6の態様では、本開示は、ニューラルネットワーク演算に用いるようにマルチビット幅値を処理するためのプログラム命令が記憶されており、前記プログラム命令がプロセッサによって実行されると、前記方法を実行させるコンピュータ読み取り可能な記録媒体を提供する。
上記の提供される計算装置、集積回路用プリント基板、方法、およびコンピュータ読み取り可能な記録媒体により、本開示の技術案は、1つのマルチ(または上位)ビット幅値を複数の低(または下位)ビット幅値に分割して表現することができ、これにより、ニューラルネットワーク演算などの人工知能適用シナリオオやその他の共通シナリオでは、プロセッサの処理ビット幅に制限されず、プロセッサの計算能力を十分に発揮させることができる。さらに、下位ビット幅値を必要とするニューラルネットワーク演算のいくつかのシナリオでは、本開示の技術案は、マルチビット幅値を複数の下位ビット幅に分割して表現することによって、ニューラルネットワークの計算を簡単化して、計算の効率を高めることができる。
本開示の上記の特徴は、図面を組み合わせることによって、よりよく理解されることができ、且つ、その多くの目的、特徴および利点は、当業者にとって自明である。以下に説明する図面は、本開示のいくつかの実施形態に関するものに過ぎず、当業者にとって、創造的な労働をしない前提で、これらの図面に基づいて他の図面をさらに得ることができる。
は、本開示の実施形態による計算装置を示す概略ブロック図である。 は、本開示の実施形態による計算装置を示す詳細ブロック図である。 は、本開示の実施形態によるマルチビット幅値を処理するためのフローチャートである。 は、本開示の実施形態による組合せ処理装置を示す構造図である。 は、本開示の実施形態によるプリント基板を示す構造模式図である。
本開示の技術案は、マルチビット幅(例えば、24ビット)値を少なくとも2つの下位ビット(例えば、16ビットおよび8ビット)成分で表現することによって、プロセッサのビット幅が制限される障害を克服し、計算の複雑さを簡単化し、ニューラルネットワークのような演算の効率を向上させる。1つまたは複数の実施形態では、入力されたマルチビット幅値のビット分布および構成情報に基づいて、そのソース値または初期値を上位ビット部分および下位ビット部分に分割し、かつ当該上位ビット部分と下位ビット部分に対して分割計算を実行して、当該上位ビット部分と下位ビット部分に対応する第1の成分と第2の成分を取得することができる。これにより、実際の計算では、ソース値の代わりに第1の成分と第2の成分のうち少なくとも1つを使用して計算に関与することができる。別の実施形態では、本開示の技術案は、構成情報に基づいて、前記ソース値を所望の複数の成分に分解することもでき、例えば、前記第1の成分と前記第2の成分のうち少なくとも一つに対して類似する分割計算を繰り返し実行して、3つ以上の成分を取得する。
以下、図面を組み合わせて本開示の実施形態を詳しく説明する。
図1は、本開示の実施形態による計算装置100を示す概略ブロック図である。1つまたは複数の実施形態では、当該計算装置100は、さまざまな適用シナリオで使えるように、マルチビット幅値を処理することができる。例えば、ニューラルネットワーク演算を含む人工知能アプリケーションまたは計算の目的で値を分割する必要がある汎用シナリオに適用される。ここで、マルチビット幅値は、その後2つ以上の成分に分割するように、上位ビット部分と下位ビット部分との2つの部分を含むことができる。また、前記ニューラルネットワーク演算は、逆伝播の重み更新や勾配計算のようなニューラルネットワークを訓練する際の種々の演算を含む。
図1に示すように、計算装置100は、マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信するように構成される入力回路102を備える。例えば、マルチビット幅は、24ビットの整数型である場合、8ビットの上位ビット部分と16ビットの下位ビット部分に分割でき、すなわち、分割によって、1つの8ビット幅の成分と、1つの16ビット幅の成分とが得られる。1つまたは複数の実施形態では、構成情報は、下位ビット部分に符号ビットを含むか否かを示す情報を更に含む。例えば、ビットで表す場合、「1」は、下位ビット部分に符号ビットを含むことを示し、「0」は、下位ビット部分に符号ビットを含まないことを示す。更に、構成情報は、後続の分割計算において有効ビットを計算することができるように、例えば、前記マルチビット幅値のうちどのビットが有効ビットであるかを強制的に指定するような有効ビット情報も含んでもよい。
入力回路102に接続されているのは、第1の成分計算回路104および第2の成分計算回路106である。1つまたは複数の実施形態では、第1の成分計算回路は、下位ビット部分のビット幅情報に基づいて、前記マルチビット幅値を計算して、前記マルチビット幅値のうち前記上位ビット部分を表す第1の成分を取得するように構成することができる。1つのシナリオでは、第1の成分計算回路は、前記下位ビット部分のビット幅情報に基づいて、スケーリング係数を決定し、そして当該スケーリング係数を利用して前記マルチビット幅値を計算して、前記第1の成分を取得する。例えば、前記上位ビット部分のビット幅がn1であり、前記下位ビット部分のビット幅がn2である場合、n2に符号ビットが含まれていることを考慮しないと、スケーリング係数は2n2であってもよい。これに対して、n2に符号ビットが含まれていることを考慮すると、スケーリング係数は2n2-1であってもよい。
1つまたは複数の実施形態では、前記第2の成分計算回路は、マルチビット幅値および少なくとも第1の成分に関する値に基づいて計算して、前記マルチビット幅値のうち前記下位ビット部分を表す第2の成分を取得するように構成されることができる。1つのシナリオでは、構成情報のうち下位ビット幅を示す部分に符号ビットが含まれていることを考慮しない場合は、単純にマルチビット幅値から第1の成分に関する値を減算して、第2の成分を取得することができる。ここで、第1の成分に関する値は、第1の成分と前記スケーリング係数との積の値であり得る。別のシナリオでは、構成情報のうち下位ビット幅を示す部分に符号ビットが含まれていることを考慮する場合は、第2の成分計算回路は、前記下位ビット部分のビット幅情報に基づいて調整値を決定し、かつ前記マルチビット幅値、前記第1の成分に関する値および前記調整値に基づいて計算して前記第2の成分を取得するように構成されることができる。幾つかのシナリオでは、前記構成情報に符号ビット情報が含まなくてもよいことが理解できる。この場合、例えば、初期のデフォルト設定により、本開示の計算装置は、構成情報に基づいて符号ビットを考慮するか否かの判断を行わず、符号ビットを考慮した分割操作、または符号ビットを考慮しない分割操作を直接実行するように構成されることができる。
前記マルチビット幅値を表すことができる第1の成分と第2の成分を取得した後、本開示の計算装置は、前記第1の成分と前記第2の成分のうちの少なくとも1つを出力するに構成される出力回路108をさらに含む。前述したように、出力回路によって出力される第1の成分と第2の成分は、ニューラルネットワークの訓練における逆伝播の重み更新や勾配計算のような、ニューラルネットワークにおいて下位ビット幅のデータを使用する必要がある様々な計算に適用することができる。幾つかの適用シナリオでは、後で用いるように、マルチビット幅値の代わりに、取得された第1の成分と第2の成分をそのまま記憶することもできる。ニューラルネットワークが下位ビット幅をサポートする固定小数点プロセッサを用いて固定小数点演算を実行するシナリオでは、出力回路から出力される下位ビット幅の第1の成分と第2の成分を、固定小数点プロセッサの固定小数点演算に用いることによって、固定小数点プロセッサがマルチビット幅または上位ビット幅のデータを処理できないという制限を取除き、固定小数点プロセッサの演算シナリオを拡張し、演算を簡略化することができ、これにより、計算効率を向上させ、計算のオーバヘッドを低減させることができる。
図2は、本開示の実施形態による計算装置200を示す詳細なブロック図である。図2に示すように、計算装置200は、図1の計算装置100の入力回路102、第1の成分計算回路104、第2の成分計算回路106、および出力回路108を備えるだけではなく、第1および第2の成分計算回路に含まれる複数の回路、及び付加的な複数の他の素子をさらに備える。上記のように、図1を組み合わせて、入力回路、第1および第2の成分計算回路および出力回路の機能を詳しく記述したので、以下では、繰り返さない。
図2に示すように、第1の成分計算回路104は、スケーリング回路1041および丸め回路1042を備えることができる。1つの実施形態では、当該スケーリング回路は、スケーリングを完了するために前記スケーリング係数に基づいてマルチビット幅値に対してシフト動作を実行するように構成されるシフト回路によって実現できる。例えば、スケーリング係数が2n2の場合、シフト回路を使用してシフト動作を実行することは、マルチビット幅値をn2ビット分で上位ビット側に移動することである。マルチビット幅値に対して、上位ビットがその左側にあり、下位ビットがその右側にある場合、n2ビット分で上位ビット側に移動することは、n2ビット分で左側に移動することを意味する。具体的な実施の態様では、ここでのシフト回路は、乗算器で構築することができる。マルチビット幅値に対して対応するシフト動作を実行した後に、1つの実施形態では、第1の成分計算回路は、シフト動作を実行した後の前記マルチビット幅値に対して丸め操作を行って前記第1の成分を取得するように構成される丸め回路1042をさらに備える。異なる適用シナリオに応じて、ここでの丸め操作は、例えば、切り上げ、切り捨て、ゼロへの丸め等のさまざまな丸め演算を含めばよい。このような丸め操作により、前記マルチビット幅値のうちの上位ビット部分に関する第1の成分が得られる。
1つまたは複数の実施形態では、第2の成分計算回路106は、前記第2の成分を得る取得するために、前記マルチビット幅値から第1の成分に関する値および前記調整値を減算するように構成される減算回路1061を備えることができる。1つのシナリオでは、ここでの第1の成分に関する値は、第1の成分とスケーリング係数との積の値であり、前記調整値は、前述の下位ビット部分の符号ビットを考慮した値である。減算回路により、マルチビット幅値から前記積の値と調整値を減算することによって、前記マルチビット幅値のうちの下位ビット部分に関する第2の成分が得られる。
さらに、図2に示す入力回路102に接続されたタイプコンバータ110は、入力されたデータを前記マルチビット幅値と同じデータ型、すなわち第1の成分計算回路と第2の成分計算回路によりサポートされるデータ型に変換するように構成することができる。設置されたタイプコンバータによって、本開示の計算装置は、分割操作によってサポートされるデータ型とは異なるタイプのデータに対して分割を実行することができる。例えば、本開示の計算装置が固定小数点整数値の分割をサポートする場合、入力回路が浮動小数点数値を受信すると、第1の成分計算回路と第2の成分計算回路により分割されやすいように、タイプコンバータによって、当該浮動小数点数値を固定小数点整数データに変換することができる。
柔軟な出力を達成するために、本開示の計算装置200は、出力のために、前記第1の成分と前記第2の成分のうちの少なくとも1つを出力回路108に出力するように構成されるセレクタ112をさらに含む。1つの実施形態では、当該セレクタ112は、構成情報における入力項目に関する情報に従って、第1の成分、第2の成分、またはその両方を出力するように選択することができる。 このような選択的な出力は、幾つかの適用シナリオでは技術的な利点がある。例えば、後続の演算に関与するには第1の成分または第2の成分のみが必要な場合は、出力回路はその両方を出力する必要がないため、出力の面ではオーバヘッドを節約できる。また、第1の成分のみを出力する必要がある場合は、本開示の計算装置は、第1の成分のみを計算して出力することもでき、これにより、計算オーバヘッドをさらに節約することができる。
1つまたは複数の実施形態では、本開示の計算装置は、さらに、マルチビット幅値を、ユーザによって指定された、またはアルゴリズムに必要な複数の成分に分解して表現するために使用されることができる。このために、前記構成情報には、成分数に関する情報を含むことができる。成分数が2より大きい正の整数である場合、本開示の計算装置は、前記構成情報に基づいて、前記成分数に対応する成分を得るまで、第1の成分計算回路と第2の成分計算回路を繰り返し実行する。例えば、24ビット幅値の場合、構成情報が3つの8ビット幅の成分に分割することを示すと、第1の成分計算回路と第2の成分計算回路により、24ビット幅値を8ビット幅の第1の成分と16ビット幅の中間第2の成分に分割する。次に、得られた16ビット幅の中間第2の成分の値は、第1の成分計算回路と第2の成分計算回路に再入力され、8ビット幅の第2の成分と8ビット幅の第3の成分にさらに分割される。
図3は、本開示の実施形態によるマルチヒッド幅値を処理するための方法300の流れ図である。上述したように、構成情報に基づいて、ここで、マルチヒッド幅値は、高ヒッド部分と低ヒッド部分を含む。方法300の処理によって、少なくともマルチヒッド幅値を、それを表す第1の成分と第2の成分に分割することができる。
図3に示すように、ステップ302において、方法300は、前記マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信する。このような構成情報によって、方法300は、少なくとも、分割する第1の成分または第2の成分に対応するビット幅値を決定することができる。次に、ステップ304において、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算して、マルチビット幅値のうちの上位ビット部分を表す第1の成分を取得する。1つの実施形態では、方法300は、前記下位ビット部分のビット幅情報に基づいてスケーリング係数を決定し、かつ、前記スケーリング係数を使用して前記マルチビット幅値を計算して前記第1の成分を取得することができる。1つのシナリオでは、構成情報に含まれる下位ビット部分に符号ビットを含むか否かに関する符号情報に基づいて、スケーリング係数を決定する。
上位ビット部分を表す第1の成分を計算して得た後に、方法300はステップ306に進む。このステップ306では、方法300は、マルチビット幅値および少なくとも第1の成分に関する値に基づいて計算して、前記マルチビット幅値のうち前記下位ビット部分を表す第2の成分を取得する。1つの実施形態では、前記構成情報における前記符号情報が、前記下位ビット部分に符号ビットを含むことを示す場合、前記方法300は、前記下位ビット部分のビット幅に基づいて調整値を決定するステップ、および、前記マルチビット幅値、前記第1の成分に関する値および前記調整値に基づいて計算して、前記第2の成分を取得するステップを更に含んでもよい。
第1の成分および第2の成分を取得した後、方法300はステップ308に進む。ここで、方法300は、第1の成分および第2の成分のうち少なくとも1つを出力する。1つの実施形態では、構成情報に基づいて、第1の成分、第2の成分またはその両方を選択的に出力することができる。幾つかの実施形態では、構成情報に分割後の成分数に関する情報を含む場合、方法300は、マルチビット幅値を所望の数に分割するまで、構成情報における成分数に基づいて分割操作を繰り返し実行することができる。例えば、1つのシナリオでは、分割する必要のある成分数が2より大きい正の整数である場合、方法300は、構成情報に基づいて、前記第1の成分および前記第2の成分のうち少なくとも1つを次の処理する新しいマルチビット幅値として決定することを更に含んでもよい。次に、方法300は、前記新しいマルチビット幅値の上位ビット部分および下位ビット部分に基づいて計算ステップを実行して、前記新しいマルチビット幅値を表す第1の成分および前記第2の成分を取得することができる。所定の成分数に達成するために、方法300は、所定の数の成分を取得するまで、前記決定ステップおよび計算ステップを繰り返し実行することができる。
以下、数学的計算の面から、上述した本開示の計算装置または方法によって実行される分割操作を説明し、以下の一連の例示的な式および具体的な値の分割結果によって、当業者は本開示の技術案およびその実施を更に理解することができる。説明を簡単にするために、以下では、Iで、n0のヒッド幅を有するマルチビット幅の値を示し、Iで、分割後に得られる第1の成分を示し、Iで、分割後に得られる第2の成分を示し、Iの上位ビット部分はn1ビット幅であり、第1の成分Iで示され、Iの下位ビット部分はn2ビット幅であり、Iで示され、そのうち、n0=n1+n2。
まず、下記の式で第1の成分Iを算出することができる:
Figure 0007269381000001
そのうち、floorは下向き丸め関数であり、2n2は前記スケーリング係数を表す。前述のように、当該スケーリング係数は、下位ビット部分に符号ビットを含むか否かにも関連する。下位ビット部分に符号ビットを含まない場合、ここでのスケーリング係数は異なる表現になる(後で説明する)。
次に、下記の式で第2の成分Iを算出することができる:
Figure 0007269381000002
上記から、上記の式(2)中の「I1×2n2」という項は、前記第1の成分に関する値であることがわかる。Iにスケーリング係数2n2を乗じた場合、それを上位ビット側にn2ビット分で移動したことに相当し、式中の「2n2-1」は、前記調整値である。上述したように、構成情報が、下位ビット部に符号ビットを含むことを示している場合、当該調整値を減算することにより、I値の表示範囲を拡大することができる。異なる分割シナリオでは、式中のn0、n1およびn2は、たとえば、n0=24、n1=8、n2=16、又はn0=32、n1=16、n2=16のように、異なる正の整数値をとることができる。ここでの式は符号ビットを考慮しているため、上記の式で得られた第1の成分と第2の成分は、分割前のマルチビット幅値をより正確に表現でき、損失も小さい。
上記では、下位ビット部分に符号ビットを含む場合を示したが、以下、下位ビット部分に符号ビットを含まない数式を示し、そのうち、符号の意味は上記と同じである。
まず、下記の式で第1の成分Iを計算することができる。
Figure 0007269381000003
前述したように、本態様では、下位ビット部分の符号ビットを考慮していないため、ここで、式(1)の「2n2」ではなく、2n2-1にて前記スケーリング係数を表す。
次に、下記の式で第1の成分Iを計算することができる。
Figure 0007269381000004
上記から、符号ビットを考慮していないので、式(4)は式(2)中の調整値「2n2-1」を有しないことが分かる。さらに、ここでの「I1×2n2」の項は、第1の成分に関する値である。
異なる分割シナリオでは、上記の式中のn0、n1、n2は、例えば、n0=24、n 1=8、n2=16、又はn0=32、n1=16、n2=16、又はn0=25、n1=9、n2=16のように、正の整数値をとることができる。幾つかの分割シナリオでは、n0、n1、n2は、n0<=n1+n2、例えば、n0=25、n1=16、n2=16を満たすことができ、すなわち、25ビット幅値を2つの16ビット幅の成分に分割する。式(1)および式(2)にて計算して得た第1の成分および第2の成分については、前述したように、符号ビットを考慮したため、得られた第1の成分および第2の成分は、分割前のマルチビット幅値を表現する面では損失がより小さい。
以下、具体的な値に対する分割結果は、表(1)および表(2)に示し、そのうち、表(1)は符号ビットを考慮した分割結果を示し、表(2)は符号ビットを考慮しない分割結果を示す。


表1
Figure 0007269381000005
表2
Figure 0007269381000006
図4は、本開示の実施形態に係る組合せ合成処理装置400を示す構成図である。該図に示すように、当該組合せ合成処理装置400は、上述した図面を組み合わせて記述した分割方法を実行するように構成される計算装置402を備える。また、当該組合せ合成処理装置は、さらに、相互接続用共通インタフェース404および他の処理装置406も備える。本開示による計算装置402は、相互接続用共通インタフェース404を介して他の処理装置406とインタラクションを行い、ユーザによって指定された操作を共同で完了し、例えば、少なくとも第1の成分と第2の成分を取得するようにマルチビット幅値を分割することができる。
本開示の技術案によれば、当該他の処理装置は、中央演算処理装置(「CPU」)、グラフィックスプロセシングユニット(「GPU」)、人工知能プロセッサなどのおよび汎用/または専用プロセッサのうちの1つまたは複数のタイプのプロセッサを含めばよく、その数は制限せずに実際の必要に応じて決められばよい。一つまたは複数の実施形態では、当該他の処理装置は、本開示の計算装置(人工知能、例えばニューラルネットワーク演算に関する演算装置として具体化することができる)と、外部データとのインタラクションおよび制御用のインターフェースとして、データ伝送を含むがこれに限らない動作を実行し、計算装置のオープンや停止などの基本制御を完了することができる。他の処理装置は、当該計算装置と連携して演算タスクを共同完了することもできる。
本開示の技術案によれば、当該相互接続用共通インターフェースは、計算装置と他の処理装置との間でデータと制御コマンドを伝送するために用いることができる。例えば、計算装置は、前記相互接続用共通インターフェースを介して他の処理装置から分割される入力データを取得し、当該計算装置のオンチップ記憶装置(またはメモリともいう)に書き込むことができる。さらに、前記計算装置は、前記相互接続用共通インターフェースを介して他の処理装置から制御コマンドを取得し、計算装置のオンチップ制御バッファに書き込むことができる。選択的にまたは任意に、相互接続用共通インターフェースは、計算装置の記憶モジュールにおけるデータを読み取り、他の処理装置に送信することもできる。
任意に、当該組合せ処理装置は、それぞれ前記計算装置および前記他の処理装置に接続される記憶装置408をさらに備えてもよい。1つまたは複数の実施形態では、記憶装置は、前記計算装置および前記他の処理装置のデータ、特に計算装置または他の処理装置の内部またはオンチップ記憶装置で全部保存できないデータを格納するために用いることができる。
適用シナリオの違いによって、本開示の組合せ処理装置は、携帯電話、ロボット、ドローン、ビデオ監視装置などの機器のSOCオンチップシステムとして使用することができ、制御部分のコア面積を効果的に低減し、処理速度を高め、全体消費電力を減らすことができる。この場合では、当該組合せ処理装置の相互接続用共通インターフェースは、機器のある部材に接続される。ある部材は、例えば、カメラ、ディスプレイ、マウス、キーボード、ネットワークカードまたはwifiインターフェースなどである。
いくつかの実施形態では、本開示は、前記テスト装置または組合せ処理装置を含むチップを更に開示する。別の実施形態では、本開示は、前記チップを含むチップパッケージング構造を更に開示する。
いくつかの実施形態では、本開示は、前記チップパッケージ構造を含むプリント基板を更に開示する。図5を参照すると、前記例示的なプリント基板が提供され、前記プリント基板は、前記チップ502に加えて、他のセット部品を含んでもよく、前記セット部品は、メモリデバイス504、インターフェースデバイス506および制御デバイス508を含むが、これらに限定されない。
前記記憶デバイスは、バスを介して前記チップパッケージ構造内のチップに接続され、データを記憶するために用いられる。前記記憶デバイスは、複数組のメモリセル510を含むことができる。各組の前記メモリセルと、前記チップとはバスで接続される。各組の前記メモリセルは、DDR SDRAM(「Double Data Rate SDRAM、ダブルデータレート同期型ダイナミックランダムアクセスメモリ」)であればよいことが理解できる。
DDRは、クロック周波数を上げる必要がなく、SDRAMの速度を2倍にすることができる。DDRは、クロックパルスの立ち上がりエッジと立ち下がりエッジでデータを読み取ることを許容する。DDRの速度は標準SDRAMの2倍である。1つの実施形態では、前記記憶デバイスは、4組の前記メモリセルを含んでもよい。前記メモリセルの各組は、複数のDDR4粒子(チップ)を含んでもよい。1つの実施形態では、前記チップの内部は4つの72ビットのDDR4コントローラを含んでもよい。前記72ビットのDDR4コントローラでは、64ビットがデータ伝送に使用され、8ビットがECC検証に使用される。
1つの実施形態では、前記メモリセルの各組は、並列に配置されたダブルデータレート同期型ダイナミックランダムアクセスメモリを複数含む。DDRは、1つのクロックサイクルで2回データを伝送することができる。前記チップにはDDRを制御するためのコントローラが設けられ、各メモリセルのデータ伝送とデータ記憶を制御するために用いられる。
前記インターフェース装置は、前記チップパッケージ構造内のチップと電気的に接続される。前記インターフェース装置は、前記チップと外部デバイス512(例えば、サーバまたはコンピューター)との間のデータ伝送を実現するためのものである。例えば、1つの実施形態では、前記インターフェース装置は、標準PCIEインターフェースであればよい。たとえば、処理されるデータは、サーバにより、標準PCIEインターフェースを介して前記チップに転送され、データ転送を実現する。別の実施形態では、前記インターフェース装置は他のインターフェースであってもよく、本開示は、前記他のインターフェースの具体的な表現形式を限定するものではなく、前記インターフェースユニットは、転送機能を実現できるものであればよい。さらに、前記チップの計算結果は、前記インターフェイス装置によって外部デバイス(例えば、サーバ)に戻される。
前記制御デバイスは前記チップに電気的に接続される。前記制御デバイスは、前記チップの状態を監視するためのものである。具体的には、前記チップと前記制御デバイスは、SPIインターフェースを介して電気的に接続可能である。前記制御デバイスは、シングルチップマイクロコンピュータ(Micro Controller Unit、MCU)を含むことができる。1つまたは複数の実施形態では、前記チップは、複数の処理チップ、複数の処理コア、または複数の処理回路を含むことができ、複数の負荷を駆動することができる。そのため、前記チップは、多負荷と軽負荷などの異なる動作状態にありえる。前記制御デバイスによって、前記チップにおける複数の処理チップ、複数の処理コアおよび/または複数の処理回路の動作状態の調整および制御を実現することができる。
いくつかの実施形態では、本開示は、前記プリント基板を含む電子機器または装置をさらに開示する。異なる適用シナリオによって、電子機器または装置は、データ処理装置、ロボット、コンピューター、プリンター、スキャナー、タブレット、スマート端末、携帯電話、ドライビングレコーダー、ナビゲーター、センサー、カメラ、サーバ、クラウドサーバ、カメラ、ビデオカメラ、プロジェクター、時計、イヤホン、モバイルストレージ、ウェアラブルデバイス、交通手段、家電製品、および/または医療機器を含むことができる。前記交通手段は、飛行機、船舶、および/または車両を含む;前記家電製品は、テレビ、エアコン、電子レンジ、冷蔵庫、炊飯器、加湿器、洗濯機、電灯、ガスストーブ、レンジフードを含む;前記医療機器は、MRI、B超音波装置および/または心電計を含む。
なお、前述した方法の実施形態のそれぞれについて、説明を簡単にするために、それらを一連の動作の組合せとして記述したが、当業者であれば、本開示に従って、あるステップが他の順でまたは同時に行われるため、本開示は記載された動作の順によって限定されないことを理解するであろう。次に、当業者は、明細書に記載された実施形態が何れも選択可能なものに属し、関連する動作及びモジュールが本開示に必要なものではないことを理解するであろう。
上記の実施形態において、各実施形態に対する説明にはそれぞれ焦点が当てられているが、ある実施形態で詳細に記述されていない部分については、他の実施形態における関連説明を参照することができる。
本開示で提供されたいくつかの実施形態では、開示された装置は他の方式で実現できることが理解されるべきである。例えば、上述した装置に係る実施形態は、単に例示的なものであり、例えば、前記ユニットの分割は、論理機能の分割にすぎず、実際に実現するときに、他の分割方式があり得、例えば、複数のユニットまたは成分を組み合わせ、または別のシステムに統合するか、一部の機能を無視するか、または実行しないことができる。さらに、表示または説明されている相互間の結合または直接結合または通信接続は、幾つかのインターフェース、装置、またはユニットを介した間接結合または通信接続であればよく、電気、光学、音響、磁気または他の形態であり得る。
前記分離部材として説明されたユニットは、物理的に分離されても、または分離されなくてもよく、表示ユニットとする部材は、物理的ユニットであってもでなくてもよく、すなわち、一箇所に位置してもよく、複数のネットワーク要素に分散してもよい。また、本実施形態の技術案の目的を実現するように、実際の必要に応じて、そのうちの一部または全部のユニットを選択することができる。
さらに、本開示の各実施形態における各機能ユニットは、1つの処理ユニットに統合してもよく、各ユニットが物理的に単独で存在してもよく、2つ以上のユニットが1つのユニットに統合してもよい。上記の統合したユニットは、ハードウェアの形で実現でき、ソフトウェアプログラムモジュールの形でも実現することができる。
前記統合したユニットは、ソフトウェアプログラムモジュールの形式で実現され、かつ独立した製品として販売または使用される場合、1つのコンピュータ読み取り可能なメモリに記憶することができる。このような理解に基づいて、本開示の技術案がソフトウェア製品(例えば、コンピュータ読み取り可能な記録媒体)の形で具体化できる場合、当該コンピュータソフトウェア製品は1つのメモリに記憶され、1つのコンピュータデバイス(パーソナルコンピュータ、サーバまたはネットワークデバイスなどであればよい)に本開示の各実施形態に記載の方法のステップの全部または一部を実行させるように、幾つかのコマンドを含む。また、前記メモリは、Uディスク、読み出し専用メモリ(ROM、Read-Only Memory)、ランダムアクセスメモリ(RAM、Random Access Memory)、モバイルハードディスク、磁気ディスクまたは光ディスクなどプログラムコードを記憶可能な各種媒体を含む。
本開示の上記の実施形態において、各実施形態に対する説明にはそれぞれ焦点が当てられているが、ある実施形態で詳細に説明されていない部分については、他の実施形態における関連説明を参照することができる。上記の実施形態の各技術的特徴は、任意に組み合わせることができ、説明を簡潔にするため、上記の実施形態における各技術的特徴のすべての可能の組み合わせに対して説明していない。ただし、これらの技術的特徴の組み合わせは、矛盾がない限り、すべて本明細書に記載した範囲と見なされるべきである。
前述の内容は、次の条項に従ってよりよく理解できる。
条項1では、上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための計算装置であって、前記マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信するように構成される入力回路と、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算して、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を取得するように構成される第1の成分計算回路と、マルチビット幅値と少なくとも第1の成分に関する値とに基づいて計算して、前記マルチビット幅値のうちの前記下位ビット部分を表す第2の成分を取得するように構成される第2の成分計算回路と、前記第1の成分および前記第2の成分の少なくとも1つを出力するように構成される出力回路と、を備えることを特徴とする計算装置。
条項2では、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算するときに、前記第1の成分計算回路は、前記下位ビット部分のビット幅情報に基づいてスケーリング係数を決定し、前記スケーリング係数によって前記マルチビット幅値を計算して前記第1の成分を取得するように構成される、ことを特徴とする条項1に記載の計算装置。
条項3では、前記構成情報は、前記下位ビット部分に符号ビットを含むか否かに関する符号情報をさらに含み、前記第1の成分計算回路は、前記符号情報に基づいて前記スケーリング係数を決定するように構成されることを特徴とする条項2に記載の計算装置。
条項4では、前記第1の成分計算回路は、スケーリング回路および丸め回路をさらに含み、前記スケーリング回路は、前記スケーリング係数に基づいて、前記マルチビット幅値に対してシフト動作を実行するように構成され、かつ前記丸め回路は、シフト動作を実行した後の前記マルチビット幅値に対して丸め操作を行って前記第1の成分を取得するように構成されることを特徴とする条項1~3のいずれか1項に記載の計算装置。
条項5では、前記符号情報は、前記下位ビット部分に符号ビットを含むことを示し、前記第2の成分計算回路は、前記下位ビットのビット幅情報に基づいて調整値を決定し、前記マルチビット幅値、前記第1の成分に関する値および前記調整値に基づいて計算して前記第2の成分を取得するように構成されることを特徴とする条項3に記載の計算装置。
条項6では、前記第2の成分計算回路は、前記第2の成分を取得するために、前記マルチビット幅値から前記第1の成分に関する値および前記調整値を減算するように構成される減算回路を備えることを特徴とする条項5に記載の計算装置。
条項7では、入力されたデータを前記マルチビット幅値と同じデータ型に変換するように構成されるタイプコンバータをさらに備えることを特徴とする条項1に記載の計算装置。
条項8では、前記構成情報に基づいて、前記第1の成分と前記第2の成分のうち少なくとも1つを選択して、前記出力回路に出力するように構成されるセレクタをさらに備えることを特徴とする条項1に記載の計算装置。
条項9では、前記構成情報は、成分数に関する情報をさらに含み、かつ前記成分数が2より大きい正の整数である場合、前記計算装置は、前記構成情報に基づいて、前記成分数に対応する成分を得るまで、前記第1の成分計算回路と前記第2の成分計算回路を繰り返し実行することを特徴とする条項5~8のいずれか1項に記載の計算装置。
条項10では、条項1~9のいずれか1つに記載の計算装置を備える集積回路チップ。
条項11では、条項10に記載の集積回路チップを備える集積回路用プリント基板。
条項12では、上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための方法であって、前記マルチビット幅値と、少なくとも上位ビット部分または下位ビット部分のビット幅情報を含む構成情報とを受信するステップと、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算して、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を取得するステップと、マルチビット幅値と、少なくとも第1の成分に関する値とに基づいて計算して、前記マルチビット幅値の前記下位ビット部分を表す第2の成分を取得するステップと、前記第1の成分および前記第2の成分の少なくとも1つを出力するステップとを含むことを特徴とする方法。
条項13では、前記下位ビット部分のビット幅情報に基づいて前記マルチビット幅値を計算する時に、前記下位ビット部分のビット幅情報に基づいてスケーリング係数を決定するステップと、前記スケーリング係数により前記マルチビット幅値を計算して第1の成分を取得するステップとをさらに含むことを特徴とする条項12に記載の方法。
条項14では、前記構成情報は、前記下位ビット部分に符号ビットを含むか否かに関する符号情報をさらに含み、前記方法は、前記符号情報に基づいて前記スケーリング係数を決定するステップをさらに含むことを特徴とする条項13に記載の方法。
条項15では、前記符号情報は、前記下位ビット部分に符号ビットを含むことを示し、前記方法は、前記下位ビット部分のビット幅情報に基づいて調整値を決定するステップと、および前記マルチビット幅値、前記第1の成分に関する値、および前記調整値に基づいて計算して、第2の成分を取得するステップとをさらに含むことを特徴とする条項14に記載の方法。
条項16では、前記構成情報は、成分数に関する情報をさらに含み、前記成分数が2より大きい正の整数である場合、前記方法は、構成情報に基づいて前記第1の成分と第2の成分のうち少なくとも1つを次の処理される新しいマルチビット幅値として決定するステップと、前記新しいマルチビット値の上位ビット部分と下位ビット部分に基づいて計算ステップを実行して、前記新しいマルチビット幅値の第1の成分と第2の成分を取得するステップと、前記成分数に対応する成分を得るまで、前記決定ステップと前記計算ステップを繰り返し実行するステップをさらに含むことを特徴とする条項12~15のいずれか1項に記載の方法。
条項17では、マルチビット幅値を処理するための計算装置であって、プロセッサと、プログラム命令を記憶するためのメモリとを備え、前記プログラム命令が少なくとも1つのプロセッサによって実行されるときに、条項12~16に記載の方法を実行させることを特徴とする計算装置。
条項18では、マルチビット幅値を処理するためのプログラム命令が記憶されたコンピュータ読み取り可能な記録媒体であって、前記プログラム命令がプロセッサにより実行されると、条項12~16に記載の方法を実行するコンピュータ読み取り可能な記録媒体。
以上、本開示の実施形態を詳しく説明したが、明細書には、具体的な例を使用して、本開示の原理および実施形態を説明し、以上の実施形態の説明は、本開示の方法及びその中心となる思想を理解するためにのみ使用される。それに、当業者にとって、本開示の思想によれば、具体的な実施形態および適用範囲に変更があってもよい。要約すると、本明細書の内容は、本開示を制限するものではないと理解されるべきである。
本開示の特許請求の範囲、明細書および図面での「第1」、「第2」、「第3」および「第4」などの用語は、異なる対象を区別するために使用されるものであり、特定順序を説明するために使用されるものではないことを理解すべきである。本開示の明細書および特許請求の範囲で使用される「含む」および「備える」という用語は、説明する特徴、全体、ステップ、操作、要素および/またはアセンブリの存在を表し、一つまたは複数の他の特徴、全体、ステップ、操作、要素、アセンブリおよび/またはそのセットの存在または追加を除外しない。
ここで、本開示の明細書で使用される用語は、ただ、特定の実施形態を説明する目的に使用され、本開示を限定しようとするものではないことをさらに理解すべきである。本開示の明細書および特許請求の範囲で使用されるように、文脈で他の場合を明確に示していない限り、「一」、「一つの」および「当該」という単数形態は、複数形態を含むことを意図する。さらに、本開示明細書および特許請求の範囲で使用される「および/または」という用語は、関連してリストされた項目的中の一つまたは複数のいかなる組み合わせおよびすべての可能な組み合わせを表し、これら組み合わせを含むことをさらに理解すべきである。
本明細書および特許請求の範囲で使用されるように、「…場合」という用語は、文脈によって、「…とき」、「…と」、「確定されたことに応答して」、または、「検出されたことに応答して」と解釈されてもよい。同様に、「確定された場合」または「[記述された条件または事件]が検出された場合」という句は、文脈によって、「確定されると」、「確定されたことに応答して」、「[記述された条件または事件]が検出されると」、または、「[記述された条件または事件]が検出されたことに応答して」と解釈されてもよい。
以上、本開示の実施形態を詳細に説明し、本明細書では具体的な例を適用して本開示の原理および実施形態を説明した。以上の実施形態の説明は、本開示の方法およびその中心となる思想の理解を助けるためにのみ使用される。それに、当業者によって本開示の思想にしたがって本開示の具体的な実施形態および適用範囲内で行われた変更または変形は、いずれも本開示の保護しようとする範囲に属する。以上より、本明細書の内容を本開示を限定するものとして理解されるべきではない。

Claims (15)

  1. 上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための計算装置であって、
    前記マルチビット幅値と、位ビット部分および下位ビット部分のビット幅情報を少なくとも含む構成情報とを受信するように構成される入力回路と、
    前記下位ビット部分のビット幅情報と、前記マルチビット幅値とに基づいて、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を計算により取得するように構成される第1の成分計算回路と、
    前記マルチビット幅値と少なくとも第1の成分に関する値とに基づいて、前記マルチビット幅値のうちの前記下位ビット部分を表す第2の成分を計算により取得するように構成される第2の成分計算回路と、
    前記第1の成分および前記第2の成分の少なくとも1つを出力するように構成される出力回路と、を備えることを特徴とする計算装置。
  2. 前記下位ビット部分のビット幅情報と、前記マルチビット幅値とに基づいて、前記第1の成分を計算により取得するときに、前記第1の成分計算回路は、
    前記下位ビット部分のビット幅情報に基づいてスケーリング係数を決定し、
    前記スケーリング係数により前記マルチビット幅値を計算して前記第1の成分を取得するように構成されることを特徴とする請求項1に記載の計算装置。
  3. 前記構成情報は、前記下位ビット部分に符号ビットを含むか否かに関する符号情報をさらに含み、前記第1の成分計算回路は、前記符号情報に基づいて前記スケーリング係数を決定するように構成されることを特徴とする請求項2に記載の計算装置。
  4. 前記第1の成分計算回路は、スケーリング回路および丸め回路をさらに含み、前記スケーリング回路は、前記スケーリング係数に基づいて、前記マルチビット幅値に対してシフト動作を実行するように構成され、かつ前記丸め回路は、シフト動作を実行した後の前記マルチビット幅値に対して丸め操作を行って前記第1の成分を取得するように構成されることを特徴とする請求項2又は3に記載の計算装置。
  5. 前記符号情報は、前記下位ビット部分に符号ビットを含むことを示し、
    前記第2の成分計算回路は、
    前記下位ビット部分のビット幅情報に基づいて調整値を決定し、
    前記マルチビット幅値、前記第1の成分に関する値および前記調整値に基づいて計算する処理を行い、前記第2の成分を取得するように構成されることを特徴とする請求項3に記載の計算装置。
  6. 前記第2の成分計算回路は、前記第2の成分を取得するために、前記マルチビット幅値から前記第1の成分に関する値および前記調整値を減算するように構成される減算回路を備えることを特徴とする請求項5に記載の計算装置。
  7. 入力されたデータを前記マルチビット幅値と同じデータ型に変換するように構成されるタイプコンバータをさらに備えることを特徴とする請求項1に記載の計算装置。
  8. 前記構成情報に基づいて、前記第1の成分と前記第2の成分のうち少なくとも1つを選択して、前記出力回路に出力するように構成されるセレクタをさらに備えることを特徴とする請求項1に記載の計算装置。
  9. 請求項1~8のいずれか1項に記載の計算装置を備える集積回路チップ。
  10. 計算装置により上位ビット部分および下位ビット部分を含むマルチビット幅値を処理するための方法であって、
    前記計算装置が、前記マルチビット幅値と、位ビット部分および下位ビット部分のビット幅情報を少なくとも含む構成情報とを受信するステップと、
    前記計算装置が、前記下位ビット部分のビット幅情報と、前記マルチビット幅値とに基づいて、前記マルチビット幅値のうちの前記上位ビット部分を表す第1の成分を計算により取得するステップと、
    前記計算装置が、前記マルチビット幅値と少なくとも第1の成分に関する値とに基づいて、前記マルチビット幅値のうちの前記下位ビット部分を表す第2の成分を計算により取得するステップと、
    前記計算装置が、前記第1の成分および前記第2の成分の少なくとも1つを出力するステップとを含むことを特徴とする方法。
  11. 前記計算装置が、前記下位ビット部分のビット幅情報と、前記マルチビット幅値とに基づいて、前記第1の成分を計算により取得する時に、前記下位ビット部分のビット幅情報に基づいてスケーリング係数を決定するステップと、
    前記計算装置が、前記スケーリング係数により前記マルチビット幅値を計算する処理を行って第1の成分を取得するステップとをさらに含むことを特徴とする請求項10に記載の方法。
  12. 前記構成情報は、前記下位ビット部分に符号ビットを含むか否かに関する符号情報をさらに含み、
    前記方法は、前記計算装置が、前記符号情報に基づいて前記スケーリング係数を決定するステップをさらに含むことを特徴とする請求項11に記載の方法。
  13. 前記符号情報は、前記下位ビット部分に符号ビットを含むことを示し、
    前記方法は、
    前記計算装置が、前記下位ビット部分のビット幅情報に基づいて調整値を決定するステップと、
    前記計算装置が、前記マルチビット幅値、前記第1の成分に関する値、および前記調整値に基づいて計算する処理を行って第2の成分を取得するステップと、
    をさらに含むことを特徴とする請求項12に記載の方法。
  14. マルチビット幅値を処理するための計算装置であって、
    プロセッサと、
    プログラム命令を記憶するためのメモリとを備え、
    前記プログラム命令が少なくとも1つの前記プロセッサによって実行されるときに、請求項10~13のいずれか1項に記載の方法を実行させることを特徴とする計算装置。
  15. マルチビット幅値を処理するためのプログラム命令が記憶されたコンピュータ読み取り可能な記録媒体であって、
    前記プログラム命令がプロセッサによって実行されると、請求項10~13のいずれか1項に記載の方法実行されることを特徴とするコンピュータ読み取り可能な記録媒体。

JP2021576625A 2020-03-17 2021-03-16 計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体 Active JP7269381B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010188335.6 2020-03-17
CN202010188335.6A CN113408716A (zh) 2020-03-17 2020-03-17 计算装置、方法、板卡和计算机可读存储介质
PCT/CN2021/081189 WO2021185262A1 (zh) 2020-03-17 2021-03-16 计算装置、方法、板卡和计算机可读存储介质

Publications (2)

Publication Number Publication Date
JP2022538236A JP2022538236A (ja) 2022-09-01
JP7269381B2 true JP7269381B2 (ja) 2023-05-08

Family

ID=77677174

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021576625A Active JP7269381B2 (ja) 2020-03-17 2021-03-16 計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体

Country Status (5)

Country Link
US (1) US20220188071A1 (ja)
EP (1) EP4024197B1 (ja)
JP (1) JP7269381B2 (ja)
CN (1) CN113408716A (ja)
WO (1) WO2021185262A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114118387A (zh) * 2022-01-25 2022-03-01 深圳鲲云信息科技有限公司 数据处理方法、数据处理装置及计算机可读存储介质
CN115328846A (zh) * 2022-10-12 2022-11-11 中科声龙科技发展(北京)有限公司 一种实现数据操作的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109613A (ja) 1999-10-05 2001-04-20 Mitsubishi Electric Corp 演算装置
JP2020507844A (ja) 2017-01-30 2020-03-12 エイアールエム リミテッド 入力オペランド値を処理するための装置及び方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0831024B2 (ja) * 1989-02-03 1996-03-27 日本電気株式会社 演算プロセッサ
US20030065699A1 (en) * 2001-10-01 2003-04-03 Koninklijke Philips Electronics N.V. Split multiplier for efficient mixed-precision DSP
US8495125B2 (en) * 2009-05-27 2013-07-23 Microchip Technology Incorporated DSP engine with implicit mixed sign operands
CN102404673B (zh) * 2011-11-24 2013-12-18 苏州上声电子有限公司 数字化扬声器系统通道均衡与声场控制方法和装置
CN103152673B (zh) * 2011-12-07 2015-07-08 中国科学院声学研究所 基于四元码动态失配整形的数字扬声器驱动方法和装置
CN102684701B (zh) * 2012-04-27 2014-07-09 苏州上声电子有限公司 基于编码转换的数字扬声器驱动方法和装置
US10402932B2 (en) * 2017-04-17 2019-09-03 Intel Corporation Power-based and target-based graphics quality adjustment
CN110555450B (zh) * 2018-05-31 2022-06-28 赛灵思电子科技(北京)有限公司 人脸识别神经网络调整方法和装置
US10853067B2 (en) * 2018-09-27 2020-12-01 Intel Corporation Computer processor for higher precision computations using a mixed-precision decomposition of operations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109613A (ja) 1999-10-05 2001-04-20 Mitsubishi Electric Corp 演算装置
JP2020507844A (ja) 2017-01-30 2020-03-12 エイアールエム リミテッド 入力オペランド値を処理するための装置及び方法

Also Published As

Publication number Publication date
EP4024197A1 (en) 2022-07-06
EP4024197B1 (en) 2024-05-01
JP2022538236A (ja) 2022-09-01
WO2021185262A1 (zh) 2021-09-23
US20220188071A1 (en) 2022-06-16
CN113408716A (zh) 2021-09-17
EP4024197A4 (en) 2023-09-13

Similar Documents

Publication Publication Date Title
JP7269381B2 (ja) 計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記憶媒体
TW201935265A (zh) 一種計算裝置及方法
CN112101541B (zh) 对高位宽值数据进行拆分的装置、方法、芯片及板卡
TW202115560A (zh) 用於浮點運算的乘法器、方法、積體電路晶片和計算裝置
WO2021078210A1 (zh) 用于神经网络运算的计算装置、方法、集成电路和设备
WO2021083101A1 (zh) 数据处理方法、装置及相关产品
JP7269382B2 (ja) 計算装置、方法、プリント基板、およびコンピュータ読み取り可能な記録媒体
CN111258537B (zh) 一种防止数据溢出的方法、装置和芯片
WO2021073512A1 (zh) 用于浮点运算的乘法器、方法、集成电路芯片和计算装置
CN111523656A (zh) 处理装置及方法
CN113112009B (zh) 用于神经网络数据量化的方法、装置和计算机可读存储介质
CN114692865A (zh) 一种神经网络量化训练方法、装置及相关产品
CN111047030A (zh) 运算方法、装置、计算机设备和存储介质
CN111738428B (zh) 计算装置、方法及相关产品
CN111723920A (zh) 人工智能计算装置及相关产品
CN111047023B (zh) 一种计算装置及相关产品
WO2021169914A1 (zh) 数据量化处理方法、装置、电子设备和存储介质
WO2022001438A1 (zh) 一种计算装置、集成电路芯片、板卡、设备和计算方法
US20220083909A1 (en) Data processing method and apparatus, and related product
CN117724676A (zh) 数据比较器、数据处理方法、芯片及电子设备
CN117519636A (zh) 数据比较器、数据处理方法、芯片及电子设备
CN114282162A (zh) 矩阵乘运算方法、电子设备及存储介质
CN118333068A (zh) 矩阵乘设备
CN113111997A (zh) 用于神经网络数据量化的方法、装置和计算机可读存储介质
CN115794026A (zh) 数据移位方法及装置以及相关产品

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211223

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230421

R150 Certificate of patent or registration of utility model

Ref document number: 7269381

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150