JP7551665B2 - 高精度のニューラル処理要素 - Google Patents
高精度のニューラル処理要素 Download PDFInfo
- Publication number
- JP7551665B2 JP7551665B2 JP2021577355A JP2021577355A JP7551665B2 JP 7551665 B2 JP7551665 B2 JP 7551665B2 JP 2021577355 A JP2021577355 A JP 2021577355A JP 2021577355 A JP2021577355 A JP 2021577355A JP 7551665 B2 JP7551665 B2 JP 7551665B2
- Authority
- JP
- Japan
- Prior art keywords
- operand
- bit
- hardware
- binary
- output
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49994—Sign extension
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30029—Logical and Boolean instructions, e.g. XOR, NOT
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4818—Threshold devices
- G06F2207/4824—Neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Neurology (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Advance Control (AREA)
Description
Claims (13)
- 複数のニューラル処理要素を含むディープニューラルネットワーク(DNN)プロセッサであって、
前記複数のニューラル処理要素のそれぞれは、
第1の符号拡張信号と第1のオペランドの最上位ビット(MSB)との間で論理AND演算を実行するように構成された第1のハードウェアANDゲートと、
前記第1のハードウェアANDゲートの出力と前記第1のオペランドとを連結し、第1の出力をハードウェアバイナリ乗算器に提供するように構成された第1の連結器と、
第2の符号拡張信号と第2のオペランドのMSBとの間で論理AND演算を実行するように構成された第2のハードウェアANDゲートと、
前記第2のハードウェアANDゲートの出力と前記第2のオペランドとを連結し、第2の出力を前記ハードウェアバイナリ乗算器に提供するように構成された第2の連結器と
を含む、ディープニューラルネットワークプロセッサ。 - 前記第1のオペランド及び前記第2のオペランドは、符号付き又は符号なし8ビット2進数を含む、請求項1に記載のディープニューラルネットワークプロセッサ。
- 前記第1の出力及び前記第2の出力は、9ビット符号付き2進数を含む、請求項1に記載のディープニューラルネットワークプロセッサ。
- 前記ハードウェアバイナリ乗算器の出力は、符号付き18ビット2進数を含む、請求項1に記載のディープニューラルネットワークプロセッサ。
- 前記第1のオペランドの前記MSBは、8ビット符号付き又は符号なし2進数のビット7を含む、請求項1に記載のディープニューラルネットワークプロセッサ。
- コンピュータ実施方法であって、
第1の符号拡張信号と第1のオペランドの最上位ビット(MSB)との間で論理AND演算を実行するステップと、
第1のハードウェアANDゲートの出力と前記第1のオペランドとを連結するステップと、
第2の符号拡張信号と第2のオペランドのMSBとの間で論理AND演算を実行するステップと、
第2のハードウェアANDゲートの出力と前記第2のオペランドとを連結するステップと、
前記第1のハードウェアANDゲートの前記出力と前記第1のオペランドとの連結の結果と、前記第2のハードウェアANDゲートの前記出力と前記第2のオペランドとの連結の結果とをハードウェアバイナリ乗算器に伝達するステップと
を含むコンピュータ実施方法。 - 前記第1のオペランド及び第2のオペランドは、符号付き又は符号なし8ビット2進数を含む、請求項6に記載のコンピュータ実施方法。
- 前記第1のハードウェアANDゲートの前記出力と前記第1のオペランドとの前記連結の前記結果、及び第2のハードウェアANDゲートの前記出力と前記第2のオペランドとの前記連結の前記結果は、9ビット符号付き2進数を含む、請求項6に記載のコンピュータ実施方法。
- 前記ハードウェアバイナリ乗算器の出力は、符号付き18ビット2進数を含む、請求項8に記載のコンピュータ実施方法。
- 複数のニューラル処理要素を含むディープニューラルネットワーク(DNN)プロセッサであって、
前記ニューラル処理要素のそれぞれは、
符号付きバイナリ8ビットオペランド又は符号なし8ビットオペランドを含む8ビットオペランドを受信し、
前記8ビットオペランドの最上位ビット(MSB)と、符号拡張演算が前記8ビットオペランドに対して実行されるべきか否かを示すバイナリ信号とに対して論理AND演算を実行し、
前記8ビットオペランドに新たなMSBを追加して第1の9ビット符号付きバイナリ値を作成し、
前記論理AND演算の結果を前記第1の9ビット符号付きの値の前記新たなMSBに格納し、
符号付きバイナリ8ビットオペランド又は符号なし8ビットオペランドを含む第2の8ビットオペランドを受信し、
前記第2の8ビットオペランドの最上位ビット(MSB)と、符号拡張演算が前記第2の8ビットオペランドに対して実行されるべきか否かを示す第2のバイナリ信号とに対して論理AND演算を実行し、
前記第2の8ビットオペランドに新たなMSBを追加して第2の9ビット符号付きバイナリ値を作成し、
前記論理AND演算の結果を前記第2の9ビット符号付きの値の前記新たなMSBに格納し、
前記第1の9ビット符号付きの値と、前記第2の9ビット符号付きの値とを乗算器に伝達するように構成される、DNNプロセッサ。 - ハードウェアバイナリ乗算器の出力は、符号付き18ビット2進数を含む、請求項10に記載のDNNプロセッサ。
- 前記バイナリ信号の状態は、前記DNNプロセッサによって前に処理されたDNNの層のタイプに基づく、請求項11に記載のDNNプロセッサ。
- 前記DNNプロセッサによって前に処理された前記DNNの前記層は、Tanh層を含む、請求項12に記載のDNNプロセッサ。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/457,828 US11604972B2 (en) | 2019-06-28 | 2019-06-28 | Increased precision neural processing element |
| US16/457,828 | 2019-06-28 | ||
| PCT/US2020/032399 WO2020263439A1 (en) | 2019-06-28 | 2020-05-11 | Increased precision neural processing element |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2022539554A JP2022539554A (ja) | 2022-09-12 |
| JP7551665B2 true JP7551665B2 (ja) | 2024-09-17 |
Family
ID=70857295
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021577355A Active JP7551665B2 (ja) | 2019-06-28 | 2020-05-11 | 高精度のニューラル処理要素 |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US11604972B2 (ja) |
| EP (1) | EP3991023B1 (ja) |
| JP (1) | JP7551665B2 (ja) |
| KR (1) | KR102722476B1 (ja) |
| CN (1) | CN114008584A (ja) |
| WO (1) | WO2020263439A1 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102412872B1 (ko) * | 2021-06-17 | 2022-06-27 | 리벨리온 주식회사 | 프로세싱 엘리먼트, 이의 동작 방법, 및 이를 포함하는 가속기 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001100979A (ja) | 1999-07-27 | 2001-04-13 | Denso Corp | 符号付き整数乗算方法及び装置 |
| JP2018092560A (ja) | 2016-12-01 | 2018-06-14 | ヴィア アライアンス セミコンダクター カンパニー リミテッド | 効率的な3次元畳み込みを行うニューラルネットワークユニット |
Family Cites Families (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5572235A (en) | 1992-11-02 | 1996-11-05 | The 3Do Company | Method and apparatus for processing image data |
| US5717947A (en) | 1993-03-31 | 1998-02-10 | Motorola, Inc. | Data processing system and method thereof |
| US5956265A (en) * | 1996-06-07 | 1999-09-21 | Lewis; James M. | Boolean digital multiplier |
| US5880985A (en) | 1996-10-18 | 1999-03-09 | Intel Corporation | Efficient combined array for 2n bit n bit multiplications |
| US6014684A (en) | 1997-03-24 | 2000-01-11 | Intel Corporation | Method and apparatus for performing N bit by 2*N-1 bit signed multiplication |
| EP1031073B1 (en) * | 1997-10-23 | 2003-09-24 | Advanced Micro Devices, Inc. | A method and apparatus for multi-function arithmetic |
| RU2131145C1 (ru) | 1998-06-16 | 1999-05-27 | Закрытое акционерное общество Научно-технический центр "Модуль" | Нейропроцессор, устройство для вычисления функций насыщения, вычислительное устройство и сумматор |
| US6081823A (en) | 1998-06-19 | 2000-06-27 | Ati International Srl | Circuit and method for wrap-around sign extension for signed numbers |
| US6421698B1 (en) | 1998-11-04 | 2002-07-16 | Teleman Multimedia, Inc. | Multipurpose processor for motion estimation, pixel processing, and general processing |
| US20040010536A1 (en) | 2002-07-11 | 2004-01-15 | International Business Machines Corporation | Apparatus for multiplication of data in two's complement and unsigned magnitude formats |
| WO2016039651A1 (en) | 2014-09-09 | 2016-03-17 | Intel Corporation | Improved fixed point integer implementations for neural networks |
| US10353861B2 (en) | 2015-10-08 | 2019-07-16 | Via Alliance Semiconductor Co., Ltd. | Mechanism for communication between architectural program running on processor and non-architectural program running on execution unit of the processor regarding shared resource |
| US11036509B2 (en) | 2015-11-03 | 2021-06-15 | Intel Corporation | Enabling removal and reconstruction of flag operations in a processor |
| FR3045892B1 (fr) | 2015-12-21 | 2018-06-22 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Circuit neuronal optimise, architecture et procede pour l'execution des reseaux de neurones. |
| CN109416754B (zh) * | 2016-05-26 | 2020-06-23 | 多伦多大学管理委员会 | 用于深度神经网络的加速器 |
| CN107153522B (zh) * | 2017-04-21 | 2020-10-02 | 东南大学 | 一种面向人工神经网络计算的动态精度可配近似乘法器 |
| KR102452951B1 (ko) * | 2017-08-23 | 2022-10-11 | 삼성전자주식회사 | 뉴럴 네트워크의 컨볼루션 연산을 수행하는 방법 및 장치 |
| GB2568085B (en) * | 2017-11-03 | 2020-01-01 | Imagination Tech Ltd | Hardware unit for performing matrix multiplication with clock gating |
| KR102153791B1 (ko) * | 2017-12-20 | 2020-09-08 | 연세대학교 산학협력단 | 인공 신경망을 위한 디지털 뉴런, 인공 뉴런 및 이를 포함하는 추론 엔진 |
-
2019
- 2019-06-28 US US16/457,828 patent/US11604972B2/en active Active
-
2020
- 2020-05-11 KR KR1020217038458A patent/KR102722476B1/ko active Active
- 2020-05-11 CN CN202080044133.2A patent/CN114008584A/zh active Pending
- 2020-05-11 JP JP2021577355A patent/JP7551665B2/ja active Active
- 2020-05-11 EP EP20728650.1A patent/EP3991023B1/en active Active
- 2020-05-11 WO PCT/US2020/032399 patent/WO2020263439A1/en not_active Ceased
-
2023
- 2023-02-24 US US18/174,021 patent/US12154027B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001100979A (ja) | 1999-07-27 | 2001-04-13 | Denso Corp | 符号付き整数乗算方法及び装置 |
| JP2018092560A (ja) | 2016-12-01 | 2018-06-14 | ヴィア アライアンス セミコンダクター カンパニー リミテッド | 効率的な3次元畳み込みを行うニューラルネットワークユニット |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114008584A (zh) | 2022-02-01 |
| JP2022539554A (ja) | 2022-09-12 |
| KR102722476B1 (ko) | 2024-10-25 |
| US20230196086A1 (en) | 2023-06-22 |
| US20200410329A1 (en) | 2020-12-31 |
| EP3991023A1 (en) | 2022-05-04 |
| WO2020263439A1 (en) | 2020-12-30 |
| EP3991023B1 (en) | 2025-09-17 |
| KR20220022480A (ko) | 2022-02-25 |
| US11604972B2 (en) | 2023-03-14 |
| US12154027B2 (en) | 2024-11-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11205118B2 (en) | Power-efficient deep neural network module configured for parallel kernel and parallel input processing | |
| US11494237B2 (en) | Managing workloads of a deep neural network processor | |
| US12154027B2 (en) | Increased precision neural processing element | |
| US11507349B2 (en) | Neural processing element with single instruction multiple data (SIMD) compute lanes |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230404 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240229 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240402 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240628 |
|
| 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: 20240806 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240904 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7551665 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |