CN110689126A - 一种用于执行神经网络运算的装置 - Google Patents
一种用于执行神经网络运算的装置 Download PDFInfo
- Publication number
- CN110689126A CN110689126A CN201911058910.4A CN201911058910A CN110689126A CN 110689126 A CN110689126 A CN 110689126A CN 201911058910 A CN201911058910 A CN 201911058910A CN 110689126 A CN110689126 A CN 110689126A
- Authority
- CN
- China
- Prior art keywords
- vector
- instruction
- memory
- unit
- data
- 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.)
- Granted
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 187
- 238000012545 processing Methods 0.000 claims abstract description 149
- 238000004891 communication Methods 0.000 claims abstract description 5
- 239000013598 vector Substances 0.000 claims description 400
- 230000015654 memory Effects 0.000 claims description 266
- 239000011159 matrix material Substances 0.000 claims description 187
- 238000004364 calculation method Methods 0.000 claims description 57
- 238000000034 method Methods 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 9
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 2
- 238000004148 unit process Methods 0.000 claims 1
- 239000010410 layer Substances 0.000 description 63
- 238000010586 diagram Methods 0.000 description 29
- 210000004205 output neuron Anatomy 0.000 description 14
- 210000002364 input neuron Anatomy 0.000 description 12
- 230000004044 response Effects 0.000 description 9
- 238000012549 training Methods 0.000 description 8
- 210000002569 neuron Anatomy 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000001419 dependent effect Effects 0.000 description 4
- 239000002356 single layer Substances 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 210000004027 cell Anatomy 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/544—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 for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/263—Language identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3824—Operand accessing
- G06F9/3826—Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
- G06T3/4046—Scaling the whole image or part thereof using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
- G06T3/4053—Super resolution, i.e. output image resolution higher than sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration by the use of local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/42—Data-driven translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- 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
Abstract
本申请提供了一种用于执行神经网络运算的装置,装置包括片上互联模块和与该片上互联单元通信连接的多个神经网络处理模块。
Description
技术领域
本申请属于神经网络运算领域,尤其涉及一种用于执行神经网络运算的装置。
背景技术
随着信息技术的不断发展和人们日益增长的需求,人们对信息的及时性要求也越来越高了。目前,终端设备对信息的获取均是基于通用处理器获得的,例如在通用处理器运行设定应用程序以获知物体当前的位置,或者在通用处理器上运行设定应用程序获知用户当前场景(如室内或室外)等等。但是,这种基于通用处理器运行软件程序来获知信息的方式,受限于通用处理器的运行速率,特别是在通用处理器负荷较大的情况下,信息获取效率较低、时延较长。
申请内容
有鉴于此,本申请提供一种用于执行神经网络运算的装置,能以低开销的方式实现一层或多层多核多层人工神经网络的运算,并且运算性能高效。
本申请提供一种用于执行神经网络运算的装置,包括片上互联模块和与该片上互联单元通信连接的多个神经网络处理模块,其中:
所述神经网络处理模块能够通过所述片上互联模块从其它神经网络处理模块中读写数据;
所述神经网络处理模块包括:存储单元、寄存器单元和向量运算单元;
所述存储单元,用于存储向量;
所述寄存器单元,用于存储向量地址;
矩阵运算单元,用于获取向量运算指令,根据向量运算指令在所述寄存器单元中获取向量地址,根据该向量地址在存储单元中获取相应的向量,根据获取的向量进行向量运算,得到向量运算结果。
附图说明
图1-1是本披露实施例提供的计算装置的结构示意图。
图1-2是本披露实施例提供的矩阵计算单元的结构示意图。
图1-3是本披露实施例提供的流水级的结构示意图。
图1-4是本披露实施例披露的一种矩阵计算方法的流程示意图。
图1-5是本披露实施例提供的正向和反向运算示意图。
图1-6是本披露实施例提供的指令集的格式示意图。
图1-7是本披露实施例提供的另一种计算装置的结构示意图。
图1-8是本披露实施例提供的计算装置执行矩阵乘向量指令的流程图。
图2-1是本披露提供的用于执行神经网络运算的装置的结构示意图;
图2-2是本披露中神经网络处理模块的结构示意图;
图2-3是本披露中外部存储模块的结构示意图;
图2-4是本披露中神经网络处理单元的结构示意图;
图2-5是本披露中片上互联单元的结构示意图;
图2-6是本披露执行一层全连接层运算实施例的流程图;
图3-1是本披露的指令集的格式示意图;
图3-2是本披露的神经网络运算指令的格式示意图;
图3-3是本披露的矩阵运算指令的格式示意图;
图3-4是本披露的向量运算指令的格式示意图;
图3-5是本披露的矩阵-向量运算指令的格式示意图;
图4-1是本披露提供的一种运算单元的结构示意图。
具体实施方式
本披露具体实施方式提供一种矩阵计算方法,该矩阵计算方法在如图1-1所示的计算装置内完成,如图1-1所示,该计算装置包括:
存储器201、用于存储矩阵。优选的该存储器可以是高速暂存存储器,能够支持不同长度的矩阵数据;本披露将必要的计算数据暂存在高速暂存存储器上(ScratchpadMemory),使本计算装置在进行矩阵运算过程中可以更加灵活有效地支持不同长度的数据。上述存储器还可以为片外数据库、数据库或其他的能够存储的介质等等。
寄存器单元202,用于存储标量数据,其中,该标量数据包括但不限于:矩阵数据在存储介质201的地址以及矩阵与标量运算时的标量。在一种实施方式中,寄存器单元可以是标量寄存器,提供运算过程中所需的标量寄存器,标量寄存器不只存放矩阵地址,还存放有标量数据。当涉及到矩阵与标量的运算时,运算单元不仅要从寄存器单元中获取矩阵地址,还要从寄存器单元中获取相应的标量。
运算单元203,用于获取并执行第一运算指令。如图1-2所示,该运算单元包括多个运算器,该运算器包括但不限于:矩阵加法运算器231、矩阵乘法运算器232、大小比较运算器233、非线性运算器234和矩阵标量乘法运算器235。
该矩阵计算方法如图1-4所示,包括如下步骤:
步骤S301、运算单元203获取第一运算指令,所述第一运算指令包括:执行该指令所需的矩阵读取指示。
在步骤S301中,上述执行该指令所需的矩阵读取指示具体可以为多种,例如,在本披露一个可选的技术方案中,上述执行该指令所需的矩阵读取指示可以为所需矩阵的存储地址。又如,在本披露另一个可选的技术方案中,上述执行该指令所需的矩阵读取指示可以为所需矩阵的标识,该标识的表现形式可以为多种,例如,矩阵的名称,又如,矩阵的识别号,再如该矩阵在寄存器单元的寄存器号或地址。
下面通过一个实际的例子来说明上述第一运算指令包含的执行该指令所需的矩阵读取指示,这里假设该矩阵运算公式为f(x)=A+B,其中,A、B均为矩阵。那么在第一运算指令中除了携带该矩阵运算公式外,还可以携带该矩阵运算公式所需矩阵的存储地址,具体的,例如A的存储地址为0000-0FFF,B的存储地址为1000-1FFF。又如,可以携带A以及B的标识,例如A的标识为0101,B的标识为1010。
步骤S302、运算单元203依据该矩阵读取指示向所述存储器201发送读取命令。
上述步骤S302的实现方法具体可以为:
如该矩阵读取指示可以为所需矩阵的存储地址,运算单元203向该存储器201发送该读取该存储地址的读取命令并采用批量读取方式获取对应的矩阵。
又如该矩阵读取指示可以为所需矩阵的标识时,运算单元203依据该标识从寄存器单元处采用单位读取方式读取该标识对应的存储地址,然后运算单元203向该存储器201发送该读取该存储地址的读取命令并采用批量读取方式获取对应的矩阵。
上述单个读取方式具体可以为,每次读取均为单位的数据,即1bit数据。此时设置单位读取方式即1位读取方式的原因为,对于标量数据来说,其占用的容量非常小,如果采用批量数据读取方式,那么读取的数据量容易大于所需的数据的容量,这样会导致带宽的浪费,所以对于标量的数据这里采用单位读取方式来读取以减少带宽的浪费。
步骤S303、运算单元203采用批量读取方式读取该指示对应的矩阵,对该矩阵执行所述第一运算指令。
上述步骤S303中批量读取方式具体可以为,每次读取均为多位的数据,例如每次读取的数据位数为16bit、32bit或64bit,即无论其所需的数据量是多少,其每次读取的均为固定多位数的数据,此批量读取的数据方式非常适合大数据的读取,对于矩阵来说,由于其所占用的容量大,如果采用单个读取方式,其读取的速度会非常慢,所以这里采用批量读取方式来获取多位的数据从而快速读取矩阵数据,避免因为读取矩阵数据过慢影响矩阵计算速度的问题。
本披露提供的技术方案的计算装置设置有寄存器单元了存储器,其分别存储标量数据以及矩阵数据,并且本披露为两种存储器分配了单位读取方式以及批量读取方式,通过对矩阵数据的特点分配匹配其特征的数据读取方式,能够很好的利用带宽,避免因为带宽的瓶颈对矩阵计算速度的影响,另外,对于标量数据存储单元来说,由于其存储的为标量数据,设置了标量数据的读取方式,提高了带宽的利用率,所以本披露提供的技术方案能够很好的利用带宽,避免带宽对计算速度的影响,所以其具有计算速度快,效率高的优点。
可选的,上述对该矩阵执行所述第一运算指令具体可以为:
对该矩阵执行n级流水级计算,具体的,对该矩阵执行第一流水级的计算得到第一结果,将第一结果输入到第二流水级执行第二流水级的计算得到第二结果,将第二结果输入到第三流水级执行第三流水级计算得到第三结果,一级一级向下执行后,将所述第n-1结果输入到第n流水级执行第n流水级的计算得到第n结果,将所述第n结果输入到所述存储器。n可以为大于等于2的整数。如n=3为例,上述流水级的操作流程图如图1-3所示。
上述第一流水级包括但不限于:矩阵乘法计算器等等。
上述第二流水级包括但不限于:矩阵加法计算器、大小比较计算器等等。
上述第三流水级包括但不限于:非线性运算器、矩阵标量乘法器等等。
上述三种流水级根据不同的运算指令可以进行调整,例如,在仅仅执行向量运算或矩阵运算时,由于没有比较运算以及非线性运算,所以只需要执行第一流水级即可,当然在实际应用中,也可以仅仅保留第一流水级以及第二流水级,本披露的三个流水级并不表示所有的运算指令均需要,厂家或用户可以根据实际的运算自行调整。将矩阵分三个流水级运算主要是为了提高运算的速度,对于矩阵的计算来说,例如采用现有的通用处理器在计算时,其运算的步骤具体可以为,处理器对矩阵进行计算得到第一结果,然后将第一结果存储在内存中,处理器从内存读取第一结果执行第二次计算得到第二结果,然后将第二结果存储在内存中,处理器从内从读取第二结果执行第三次计算得到第三结果,然后将第三结果存储在内存中。从上述计算的步骤可以看出,在通用处理器进行矩阵计算时,其并没有分流水级进行计算,那么每次计算完毕后均需要将计算完的数据进行保存,下次计算时需要再次读取,所以此方案需要重复存储读取多次数据,对于本披露的技术方案来说,第一流水级计算的第一结果直接进入第二流水级进行计算,第二流水级计算的第二结果直接进入到第三流水级进行计算,第一流水级与第二流水级计算的第一结果和第二结果无需存储,首先其减少了内存的占用空间,其次,其避免了结果的多次存储以及读取,提高了带宽的利用率,进一步提高了计算效率。
在本披露另一实施例中,可以自由组合各流水部件或者采取一级流水级。例如将第二个流水级和第三个流水级合并,或者将第一和第二以及第三个流水线都合并或者各个流水级负责不同的运算可以排列组合。例如,第一级流水负责比较运算,部分乘法运算,第二级流水负责非线性运算和矩阵标量乘法等组合。
可选的,上述计算装置还可以包括:缓存单元204,用于缓存第一运算指令。指令在执行过程中,同时也被缓存在缓存单元中,当一条指令执行完之后,如果该指令同时也是指令缓存单元中未被提交指令中最早的一条指令,该指令将被提交,一旦提交,该条指令进行的操作对装置状态的改变将无法撤销。在一种实施方式中,指令缓存单元可以是重排序缓存。
可选的,上述方法在步骤S301之前还可以包括:
确定该第一运算指令与第一运算指令之前的第二运算指令是否存在关联关系,如第一运算指令与第一运算指令之前的第二运算指令存在关联关系,则在第二运算指令执行完毕以后,从缓存单元中提取出该第一运算指令传递至运算单元203。如第一运算指令与该第一运算指令之前的指令无关联关系,则直接将第一运算指令传递至运算单元。
上述确定该第一运算指令与第一运算指令之前的第二运算指令是否存在关联关系的具体实现方法可以为:
依据该第一运算指令提取该第一运算指令中所需矩阵的第一存储地址区间,依据该第二运算指令提取该第二运算指令中所需矩阵的第二存储地址区间,如第一存储地址区间与第二存储地址区间具有重叠的区域,则确定第一运算指令与第二运算指令具有关联关系。如第一存储地址区间与第二存储地址区间无重叠的区域,则确定第一运算指令与第二运算指令不具有关联关系。
此存储地区区间中有重叠区域出现说明第一运算指令与第二运算指令访问了相同的矩阵,对于矩阵来说,由于其存储的空间比较大,比如采用相同的存储区域作为判断是否为关联关系的条件,可能出现的情况是,第二运算指令访问的存储区域包含了第一运算指令访问的存储区域,例如,第二运算指令访问A矩阵存储区域、B矩阵存储区域和C矩阵存储区域,如果A、B存储区域相邻或A、C存储区域相邻,则第二运算指令访问的存储区域为,A、B存储区域以及C存储区域,或A、C存储区域以及B存储区域。这种情况下,如果第一运算指令访问的为A矩阵与D矩阵的存储区域,那么第一运算指令访问的矩阵的存储区域无法与第二运算指令范文的矩阵的存储区域相同,如果采用相同的判断条件,则确定第一运算指令与第二运算指令不关联,但是实践证明,此时第一运算指令与第二运算指令属于关联关系,所以本披露通过是否有重叠区域来判断是否为关联关系的条件,能够避免上述情况的误判。
下面以一个实际的例子来说明何种情况属于关联关系,何种情况属于非关联关系。这里假设第一运算指令所需的矩阵为A矩阵和D矩阵,其中A矩阵的存储区域为【0001,0FFF】,D矩阵的存储区域为【A000,AFFF】,对于第二运算指令所需的矩阵为A矩阵、B矩阵和C矩阵,其分别对应的存储区域为【0001,0FFF】、【1000,1FFF】、【B000,BFFF】,对于第一运算指令来说,其对应的存储区域为:【0001,0FFF】、【A000,AFFF】,对于第二运算指令来说,其对应的存储区域为:【0001,1FFF】、【B000,BFFF】,所以第二运算指令的存储区域与第一运算指令的存储区域具有重叠区域【0001,0FFF】,所以第一运算指令与第二运算指令具有关联关系。
这里假设第一运算指令所需的矩阵为E矩阵和D矩阵,其中A矩阵的存储区域为【C000,CFFF】,D矩阵的存储区域为【A000,AFFF】,对于第二运算指令所需的矩阵为A矩阵、B矩阵和C矩阵,其分别对应的存储区域为【0001,0FFF】、【1000,1FFF】、【B000,BFFF】,对于第一运算指令来说,其对应的存储区域为:【C000,CFFF】、【A000,AFFF】,对于第二运算指令来说,其对应的存储区域为:【0001,1FFF】、【B000,BFFF】,所以第二运算指令的存储区域与第一运算指令的存储区域不具有重叠区域,所以第一运算指令与第二运算指令无关联关系。
使用人工神经网络运算装置(即如图1-3所示计算装置、如图1-7所示的计算装置,如图1-1所示的计算装置中的任意一种)实现神经网络训练的方法;具体来说,包括以下主要内容:
神经网络训练的步骤:是对一个(多层)神经网络中的各层依次执行正向运算,然后按照相反的层的顺序依次执行反向运算,最后用计算得到的权值的梯度去更新权值;这就是神经网络的训练的依次迭代,整个训练过程需要重复执行这个过程多次;
层的反向运算:每一层的反向运算需要执行两部分运算:一部分是使用输出神经元梯度和输入神经元计算出权值的梯度(用于在“权值更新”步骤更新本层的权值),另一部分是使用输出神经元梯度和权值,计算出输入神经元梯度(用于作为反向运算中下一层的输出神经元梯度以供其进行反向运算);
权值更新:在执行完神经网络的反向运算之后,就计算出了各层的权值的梯度,在这个步骤中,所述装置的第一输入缓存和第二输入缓存分别用于存储本层的权值和权值的梯度,然后在运算单元中使用权值梯度对权值进行更新;
人工神经网络运算装置具体为稀疏神经网络运算装置的时候,即装置中多一个映射单元,处理的神经网络为稀疏神经网络:
使用稀疏神经网络运算装置实现神经网络训练的方法;具体来说,包括以下三个主要内容:
神经网络训练的步骤是对一个(多层)神经网络中的各层依次执行正向运算,然后按照相反的层的顺序依次执行反向运算,最后用计算得到的权值的梯度去更新权值;这就是神经网络的训练的依次迭代,整个训练过程需要重复执行这个过程多次;
层的反向运算每一层的反向运算需要执行两部分运算:一部分是使用可能是稀疏表示的输出神经元梯度和可能是稀疏表示的输入神经元计算出权值的梯度(用于在“权值更新”步骤更新本层的权值),另一部分是使用可能是稀疏表示的输出神经元梯度和可能是稀疏表示的权值,计算出输入神经元梯度(用于作为反向运算中下一层的输出神经元梯度以供其进行反向运算);
权值更新在执行完神经网络的反向运算之后,就计算出了各层的权值的梯度,在这个步骤中,所述装置的第一输入缓存和第二输入缓存分别用于存储本层的权值和权值的梯度,然后在运算单元中使用权值梯度对权值进行更新。本披露中提到的输入神经元和输出神经元并非是指整个神经网络的输入层中神经元和输出层中神经元,而是对于网络中任意相邻的两层,处于网络前馈运算下层中的神经元即为输入神经元,处于网络前馈运算上层中的神经元即为输出神经元。以卷积神经网络为例,设一个卷积神经网络有L层,K=1,2,...,L-1,对于第K层和第K+1层来说,我们将第K层称为输入层,其中的神经元为所述输入神经元,第K+1层称为输出层,其中的神经元为所述输出神经元。即除最顶层外,每一层都可以作为输入层,其下一层为对应的输出层。
上文中提到的运算都是神经网络中的一层的运算,对于多层神经网络,其实现过程是,在正向运算中,当上一层人工神经网络执行完成之后,下一层的运算指令会将运算单元中计算出的输出神经元作为下一层的输入神经元进行运算(或者是对该输出神经元进行某些操作再作为下一层的输入神经元),同时,将权值也替换为下一层的权值;在反向运算中,当上一层人工神经网络的反向运算执行完成后,下一层运算指令会将运算单元中计算出的输入神经元梯度作为下一层的输出神经元梯度进行运算(或者是对该输入神经元梯度进行某些操作再作为下一层的输出神经元梯度),同时将权值替换为下一层的权值。具体如图1-5所示,图1-5中虚线的箭头表示反向运算,实现的箭头表示正向运算。
本披露中,如图1-6是本披露提供的矩阵操作指令的指令集的格式示意图,如图1-6所示,运算指令包括一操作码和至少一操作域,其中,操作码用于指示该运算指令的功能,运算单元通过识别该操作码可进行不同的矩阵运算,操作域用于指示该运算指令的数据信息,其中,数据信息可以是立即数或寄存器号,例如,要获取一个矩阵时,根据寄存器号可以在相应的寄存器中获取矩阵起始地址和矩阵长度,再根据矩阵起始地址和矩阵长度在存储介质中获取相应地址存放的矩阵。
指令集包含有不同功能的运算指令:
矩阵乘向量指令(MMV),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出设定长度的矩阵数据和向量数据,在运算单元中进行矩阵乘向量的乘法运算,并将结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;值得说明的是,向量可以作为特殊形式的矩阵(只有一行元素的矩阵)存储于存储器(优选的高速暂存存储器或者标量寄存器)中。
向量乘矩阵指令(VMM),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出设定长度的向量数据和矩阵数据,在运算单元中进行向量乘矩阵的乘法运算,并将结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;值得说明的是,向量可以作为特殊形式的矩阵(只有一行元素的矩阵)存储于存储器(优选的高速暂存存储器或者标量寄存器)中。
矩阵乘标量指令(VMS),根据该指令,装置存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出设定长度的矩阵数据,从标量寄存器的指定地址中取出指定大小的矩阵数据,在运算单元中进行标量乘矩阵的乘法运算,并将计算结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址,需要说明的是,标量寄存器不仅存储有矩阵的地址,还存储有标量数据。
张量运算指令(TENS),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的两个指定地址取出分别取出设定长度的两块矩阵数据,在运算单元中对两矩阵数据进行张量运算,并将计算结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址。
矩阵加法指令(MA),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的两个指定地址取出分别取出设定长度的两块矩阵数据,在运算单元中对两矩阵进行加法运算,并将计算结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址。
矩阵减法指令(MS),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的两个指定地址取出分别取出设定长度的两块矩阵数据,在运算单元中对两矩阵进行减法运算,并将计算结果写回。优选的,并将计算结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址。
矩阵检索指令(MR),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出设定长度的向量数据,从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出指定大小的矩阵数据,在运算单元中,该向量是索引向量,输出的向量中的第i个元素是以索引向量的第i个元素作为索引,在矩阵的第i列中找到的数,该输出向量写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址。
矩阵加载指令(ML),根据该指令,装置从指定外部源地址载入设定长度的数据至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址。
矩阵存储指令(MS),根据该指令,装置将存储器(优选的高速暂存存储器或者标量寄存器)的指定地址的设定长度的矩阵数据存至外部目的地址处。
矩阵搬运指令(MMOVE),根据该指令,装置将存储器(优选的高速暂存存储器或者标量寄存器)的指定地址的设定长度的矩阵数据存至存储器(优选的高速暂存存储器或者标量寄存器)的另一指定地址处。
上述指令中的设定长度可以由用户自行设定,在一个可选的实施方案中,用户可以将该设置长度设置为一个值,当然在实际应用中,用户也可以将该设置长度设置为多个值。本披露具体实施方式并不限定该设定长度的具体值以及个数。为使本披露的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本披露进一步详细说明。
参阅图1-7,图1-7为本披露具体实施方式提供的另一种计算装置50。图1-7所示,计算装置50包括:存储器501、标量数据存储单元502(优选的为标量寄存器单元)、矩阵计算单元503和控制单元504;
存储器501,用于存储矩阵;
标量数据存储单元502,用于存储标量数据,所述标量数据至少包括:所述矩阵在所述存储器内的存储地址;
控制单元504,用于控制所述矩阵计算单元获取第一运算指令,所述第一运算指令包括执行所述指令所需的矩阵读取指示;
运算单元503,用于依据所述矩阵读取指示向所述存储器发送读取命令;依据采用批量读取方式读取所述矩阵读取指示对应的矩阵,对该矩阵执行所述第一运算指令。
可选的,上述矩阵读取指示包括:所述指令所需的矩阵的存储地址或所述指令所需矩阵的标识。
可选的如所述矩阵读取指示为所述指令所需矩阵的标识时,
控制单元504,用于控制所述运算单元依据所述标识从所述寄存器单元出采用单位读取方式读取所述标识对应的存储地址,控制所述运算单元向所述存储器发送读取所述存储地址的读取命令并采用批量读取方式获取所述矩阵。
可选的,运算单元503,具体用于对该矩阵执行第一流水级的计算得到第一结果,将第一结果输入到第二流水级执行第二流水级得到第二结果,将所述第二结果输入到第三流水级执行第三流水级得到第三结果,一级一级向下执行后,将所述第n-1结果输入到第n流水级执行第n流水级的计算得到第n结果,将所述第n结果输入到所述存储器。n可以为大于等于2的整数。
可选的,所述计算装置还包括:
缓存单元505,用于缓存待执行的运算指令;
所述控制单元504,用于将待执行的运算指令缓存于所述缓存单元504内。
可选的,控制单元504,用于确定所述第一运算指令与所述第一运算指令之前的第二运算指令是否存在关联关系,如所述第一运算指令与所述第二运算指令存在关联关系,则将所述第一运算指令缓存与所述缓存单元内,在所述第二运算指令执行完毕后,从所述缓存单元提取所述第一运算指令传输至所述运算单元;
所述确定该第一运算指令与第一运算指令之前的第二运算指令是否存在关联关系包括:
依据所述第一运算指令提取所述第一运算指令中所需矩阵的第一存储地址区间,依据所述第二运算指令提取所述第二运算指令中所需矩阵的第二存储地址区间,如所述第一存储地址区间与所述第二存储地址区间具有重叠的区域,则确定所述第一运算指令与所述第二运算指令具有关联关系,如所述第一存储地址区间与所述第二存储地址区间不具有重叠的区域,则确定所述第一运算指令与所述第二运算指令不具有关联关系。
可选的,上述控制单元503,可以用于从指令缓存单元获取运算指令,并对该运算指令进行处理后,提供给所述运算单元。其中,控制单元503可以划分为三个模块,分别为:取指模块5031、译码模块5032和指令队列模块5033,
取指模5031,用于从指令缓存单元中获取运算指令;
译码模块5032,用于对获取的运算指令进行译码;
指令队列5033,用于对译码后的运算指令进行顺序存储,考虑到不同指令在包含的寄存器上有可能存在依赖关系,用于缓存译码后的指令,当依赖关系被满足之后发射指令。
参阅图1-5,图1-5是本披露实施例提供的计算装置执行矩阵乘向量指令的流程图,如图1-5所示,该计算装置的硬件结构参阅图1-4所示的结构,如图1-4所示的存储器以高速暂存存储器为例,执行矩阵乘向量指令的过程包括:
步骤S601,计算装置控制取指模块取出矩阵乘向量指令,并将该矩阵乘向量指令送往译码模块。
步骤S602,译码模块对该矩阵乘向量指令译码,并将该矩阵乘向量指令送往指令队列。
步骤S603,在指令队列中,该矩阵乘向量指令需要从标量寄存器中获取指令中五个操作域所对应的标量寄存器里的数据,该数据包括输入向量地址、输入向量长度、输入矩阵地址、输出向量地址和输出向量长度。
步骤S604,控制单元确定所述矩阵乘向量指令与矩阵乘向量指令之前的运算指令是否存在关联关系,如存在关联关系,将矩阵乘向量指令存入到缓存单元,如不存在关联管理,将该矩阵乘向量指令传输至运算单元。
步骤S605,运算单元根据五个操作域所对应的标量寄存器里的数据从高速暂存器中取出需要的矩阵和向量数据,然后在运算单元中完成乘法运算。
步骤S606,运算单元运算完成后,将结果写入存储器(优选的高速暂存存储器或者标量寄存器)的指定地址,重排序缓存中的该矩阵乘向量指令被提交。
上述图1-4中的矩阵计算指令以矩阵乘向量指令为例,在实际应用中,如图1-4所示实施例中的矩阵乘向量指令可以用向量乘矩阵指令、矩阵乘标量指令、张量运算指令、矩阵加法指令、矩阵减法指令、矩阵检索指令、矩阵加载指令、矩阵存储指令或矩阵搬运指令替换,这里不一一赘述。
图2-1是本披露提供的用于执行神经网络运算的装置的结构示意图,如图2-1所示,装置包括多个神经网络处理模块10及一个片上互联模块20,多个神经网络处理模块10与该片上互联单元20通信连接,上述神经网络处理单元具体可以为如图1-1所示的运算单元,当然在实际应用中,也可以为如图1-2所示的运算单元或如图1-3或能支持不同位宽运算数据的运算单元,当然在实际应用中,用于执行神经网络运算的装置还可以设置在人工神经网络正向运算的装置或用于稀疏连接的人工神经网络计算装置或其他的神经网络领域的计算装置、芯片或处理器内,其中:
神经网络处理模块10能够通过片上互联模块30从其它神经网络处理模块10中读写数据,还可从本地读写数据。当要执行神经网络运算时,每个神经网络处理模块10作为一个核执行相应的运算,其运算所需的数据可直接从本地直接获取,也可通过片上互联模块20与其他神经网络处理模块10通信,以从其他神经网络处理模块10处读取运算所需的数据。各个神经网络处理模块10读取运算所需的数据后,执行相应的运算,得到各自的运算结果数据,在单层神经网络运算中,各个神经网络处理模块10可将各自的运算结果数据汇总至一个神经网络处理模块10中进行累加,以得到最终结果数据。在多层神经网络运算中,当层各个神经网络处理模块10计算得到运算结果数据,可能在下一层作为运算所需的数据被其他神经网络处理模块10使用,这样在当层神经网络运算完毕后,各个神经网络处理模块10会进行数据交互,以准备进行下一层神经网络运算。
图2-2是本披露中神经网络处理模块的结构示意图,神经网络处理模块10包括神经网络处理单元11和存储单元12(具体的可以为高速存储单元,例如高速暂存存储器);神经网络处理模块10在进行神经网络运算时,神经网络处理单元11直接从与其对应的高速储存单元12中读取数据,和/或通过片上互联单元20从其它神经网络处理模块10中的神经网络处理单元11中读取数据,和/或通过片上互联单元20从其它神经网络处理模块10中的高速存储单元12中读取数据;每个神经网络处理模块10中的神经网络处理单元11根据读取的数据进行神经网络运算,得到各自的运算结果数据;在完成运算后,神经网络处理单元11将运算结果数据直接写入至与其对应的高速储存单元12中,和/或通过片上互联单元20将运算结果数据写入至其它神经网络处理模块10中的神经网络处理单元11中,和/或通过片上互联单元20将运算结果数据写入至其它神经网络处理模块10中的高速存储单元12中。总之,神经网络处理单元11可直接从其对应的高速储存单元获取数据,也可以通过片上互联模块20获取其它位置的数据,这样避免了反复向内存读取数据,降低了内存访问带宽。
如图2-3所示,本披露提供的用于执行神经网络运算的装置还包括外部存储模块30,其与片上互联单元20通信连接,神经网络处理模块10还能够通过片上互联单元从外部存储模块中读写数据,利用外部存储模块30,可以从外界向装置中导入新的数据,装置执行的最终执行结果数据也可以写入至外部存储模块30,以供外部导出。其中,外部存储模块30可以通过硬件来实现(包括但不限于FPGA、CGRA、专用集成电路ASIC、模拟电路或忆阻器等)。
图2-4是本披露中神经网络处理单元11的结构示意图,如图2-4所示,神经网络处理单元11包括指令队列111、神经网络运算单元112、IO读取单元113、高速缓存单元114和同步关系单元115。指令队列111存储有多种类型的指令,神经网络处理单元11根据不同的指令执行不同的操作。
下表为各类指令的描述:
指令包括指令名称以及多个操作码:
数据送达指令,指令名称为ACK,其中各个操作码分别表示是否向该神经网络处理单元11发送数据送达信号(ACK信号),神经网络处理单元11向其他神经网络处理单元11写入数据后,执行数据送达指令以发送数据送达信号给对应的神经网络处理单元11,以表明数据已经传输到位;
数据依赖指令,指令名称为FENCE,其中各个操作码表示是否检查来自该神经网络处理单元11的ACK信号;神经网络处理单元11执行数据依赖指令以检测其所有依赖的数据是否已经到达本神经网络处理单元。
数据同步指令,指令名称为SYNC,其中各个操作码表示该神经网络处理单元是否参与同步操作,神经网络处理单元11执行数据同步指令用以强制多个神经网络处理单元11做同步操作,即当多个神经网络都执行到当前指令后,这些神经网络处理单元才可以执行之后的指令;
COMPUTE(运算指令),其中第一个操作码表示具体的计算任务,如MLP,CONV,POOL等,其余操作码用来表示输入输出数据的地址和大小,以及神经网络计算指令的配置信息。该COMPUTE指令也可以包括其他的运算指令,进行非线性激活和线性激活操作。当然在实际应用中,也可以是其他的神经网络的指令,例如,向量指令或矩阵指令,本申请并不限制上述COMPUTE指令具体包含的指令的具体表现形式。
输入输出指令,指令名称为IO,其中的操作码分别表示搬运数据的起始地址,结束地址以及数据大小的信息,神经网络处理单元11执行输入输出指令以与其余模块之间进行通信数据。
IO读取单元根据113根据指令队列111中的运算指令从该神经网络处理单元11的外部(如高速存储单元12、其他神经网络处理单元11等)读取数据,并将读取的数据缓存至高速缓存单元114中,神经网络运算单元112根据该运算指令从高速缓存单元114中读取所缓存的数据,并执行神经网络运算,得到相应的运算结果数据;
神经网络运算单元112将运算结果数据写入至高速缓存单元114中,当需要将运算结果数据发送中外部(其他神经网络处理单元11等)时,IO读取单元113从高速缓存单元114中读取运算结果数据,并将运算结果数据写入到该神经网络处理单元11的外部。
图2-5是本披露中片上互联单元的结构示意图。其中,所述片上互联单元包括相互级联的N级互联模块组成,且每一级互联模块的个数并不做限定。具体的,如图2-5仅示出由一个一级互联模块和多个二级互联模块互联的片上互联模块。如图2-5所示,片上互联模块20包括一级互联模块21和与该一级互联模块通信连接的多个二级互联模块22,一级互联模块21还与外部存储模块30通信连接,多个二级互联模块22与多个神经网络处理模块10一一对应,其中,每个二级互联模块22分别与相应神经网络处理模块中的神经网络处理单元11和高速存储单元12通信连接。具体的,二级的互联模块22一个端口连接神经网络处理单元11,一个端口连接该神经网络处理单元对应的高速存储单元12,另一个端口连接一级互联模块21,一级互联模块21将多个二级互联模块22和外部存储模块30连接,用以保证这些模块之间的数据通路。这样,可以在保证各个神经网络处理单元11以及高速存储单元12和外部存储模块30之间相互通信,并且占用较小的面积开销。
采用本披露以上所描述的装置,可执行单层神经网络运算,包括:
S1,每个神经网络处理模块10根据其自身指令队列11中存储的计算指令,根据指令中操作码所指示的地址,直接从本地读取数据,和/或通过片上互联模块20从其它神经网络处理模块10中读取数据;
S2,每个神经网络处理模块10根据读取的数据进行单层神经网络的部分运算,得到各自的运算结果数据;
S3,每个神经网络处理模块10将各自的运算结果数据进行本地存储和/或通过片上互联模块20将各自的运算结果数据写入至其他神经网络处理模块10中。
对于多层神经网络运算,其实现过程与单层神经网络类似,当上一层人工神经网络执行完毕后,在下一层运算时,每个神经网络处理模块10根据新的运算指令从新的地址读取新的数据进行计算,并且依据新的指令在多核(即多个神经网络处理模块10)之间分配计算任务。对于每一层神经网络运算,执行上述步骤S1-S3,并将该层各神经网络处理模块10得到的运算结果数据用于下一层神经网络运算。
为使本披露的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本披露进一步详细说明。
图2-6是本披露执行一层全连接层运算实施例的流程图,其执行过程如图2-6所示:
步骤1:依据全连接运算指令,每个神经网络处理单元11从对应的高速存储单元12中读取数据,分别计算得到全连接层的部分运算结果数据。
在每个神经网络处理单元11中,指令队列111将运算指令COMPUTE发送至神经网络运算单元112和IO读取单元113,神经网络运算单元112根据全连接运算指令的第一操作码确定全连接运算操作,确定将要执行一层全连接层运算,具体的,IO读取单元113根据运算指令COMPUTE中的地址从其对应的高速存储单元12中读取运算所需数据,并将读取的数据存储于高速缓存单元114中,神经网络运算单元112从高速缓存单元114中读取相应的数据,然后根据读取的数据全连接运算操作,以进行全连接层的部分运算,得到全连接层的部分运算结果数据作为输出数据。
步骤2:依据输入输出指令IO,每个神经网络处理单元11将自己计算的到的部分运算结果数据通过片上互联模块20发送给相应的神经网络处理单元11。由于每个神经网络处理单元11只计算出部分运算结果数据,因此其需要将该部分输出数据发送给相应的神经网络处理单元11进行加和运算。
具体的,步骤1中神经网络运算单元112将计算得到的部分运算结果数据存储于高速缓存单元114中,指令队列111将输入输出指令IO发送给IO读取单元113后,IO读取单元113执行输出指令IO,以将存储于高速缓存单元114中的部分运算结果数据读取,并发送至外部的相应的神经网络处理单元11。这里需要说明的是,每个神经网络处理单元11可能会将部分运算结果数据发送至一个对应的神经网络处理单元11中,也可能发送至多个对应的神经网络处理单元11中,也就是说,每个神经网络处理单元11也可能收到一个神经网络处理单元11发送的部分运算结果数据,也可能收到多个神经网络处理单元11发送的部分运算结果数据。
步骤3:每个神经网络处理单元11将自己计算的到的部分运算结果数据发送给相应的神经网络处理单元11后,需要执行数据送达指令ACK,以向对应的神经网络处理单元11发送数据送达信号。每个神经网络处理单元11需要向接受其发送数据的神经网络处理单元11发送数据送达信号,用以表明其数据依赖关系。
步骤4:依据数据依赖指令FENCE,每个神经网络处理单元11检测其发送数据送达信号是否到达相应的神经网络处理单元11,如果没有到达,则等待对应的数据送达信号到达相应的神经网络处理单元11。对于每个将要进行加和运算神经网络处理单元11,只有其收到所有其他神经网络处理单元11所发送的数据送达信号时,才表明其所需要的输入数据全部到达,从而执行加和运算。
步骤5:依据运算指令COMPUTE,每个的神经网络处理单元11汇集其他神经网络处理单元11的部分运算结果数据后,联合上自身运算所得的部分运算结果数据进行加和运算,得到最终的运算结果数据。
步骤6:依据输入输出指令IO,每个神经网络处理单元11将计算得到的最终的运算结果数据作为输出数据写入外部存储模块30中。在每个神经网络处理单元11中,将最终的运算结果数据写入外部存储模块30中的执行过程与步骤2类似,在此就不再赘述。
综上所述,本披露提供的装置和指令集,解决了CPU和GPU运算性能不足、前端译码开销大的问题,能有效支持多层人工神经网络运算,同时,针对多核多层人工神经网络运算采用专用片上存储,充分挖掘了神经元和权值数据的重用性,避免了反复向内存读取这些数据,降低了内存访问带宽,避免了内存带宽成为多层人工神经网络全连接层正向运算性能瓶颈的问题。
向量内积指令(VP)。根据该指令,装置分别从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行内积(张量)运算,并将结果写回。优选的,结果写会至存储器(优选的高速暂存存储器或者标量寄存器)得指定地址。
向量外积指令(TENS)。根据该指令,装置分别从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行外积运算,并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;
向量四则运算,包括:向量加标量指令(VAS),根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,从存储器标量寄存器的指定地址取出标量数据,在标量运算单元中将向量的每一个元素加上该标量值,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;
标量减向量指令(SSV)。根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)标量寄存器的指定地址取出标量数据,从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出向量数据,在向量计算单元中用该标量减去向量中的相应元素,并将结果写回并将结果写回。优选的,并将结果写回存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;
向量除法指令(VD)。根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相除,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;
标量除向量指令(SDV)。根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)标量寄存器的指定位置取出标量数据,从存储器(优选的高速暂存存储器)的指定位置取出指定大小的向量数据,在向量计算单元中用标量分别除以向量中的相应元素,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定位置;
向量逻辑指令,包括:
向量间与指令(VAV)。根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相与,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)的指定地址;
向量内与指令(VAND)。根据该指令,装置从存储器(优选的高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相与,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)标量寄存器的指定地址;
向量间或指令(VOV)。根据该指令,装置从存储器(优选的,高速暂存存储器)的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相或,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)的指定地址;
向量内或指令(VOR)。根据该指令,装置从存储器(优选的,高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相或,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)标量寄存器的指定地址;
超越函数指令,根据该指令,装置从存储器(优选的,高速暂存存储器或者标量寄存器)的指定地址取出指定大小的向量数据,在运算单元中对向量数据做超越函数运算,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的高速暂存存储器或者标量寄存器)存储单元的指定地址。优选的,将结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)的指定地址。
向量比较运算指令,包括
大于等于运算指令(GE),根据该指令,装置可以直接从指令中或者通过访问指令提供的寄存器存储器(优选的,高速暂存存储器或者标量寄存器)的编号号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)的指定存储地址。
小于等于运算指令(LE),根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的,高速暂存存储器或者标量寄存器)的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回到存储器(优选的,高速暂存存储器或者标量寄存器)值的指定存储地址。
大于运算指令(GT),根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的,高速暂存存储器或者标量寄存器)的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回值到存储器(优选的高速暂存存储器或者标量寄存器)的指定存储地址。
小于运算指令(LT),根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的,高速暂存存储器或者标量寄存器)的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回到存储器(优选的,高速暂存存储器或者标量寄存器)值的指定存储地址。
等于运算指令(EQ),根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的高速暂存存储器或者标量寄存器)的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回值到存储器(优选的,高速暂存存储器或者标量寄存器)的编号的指定存储地址。
不等于运算指令(UEQ),根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的,高速暂存存储器或者标量寄存器)的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值不等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0。最后将比较结果写回值到存储器(优选的,高速暂存存储器或者标量寄存器)的指定存储地址。
向量最大值指令(VMAX)。根据该指令,装置从存储器(优选的,高速暂存存储器或者标量寄存器)高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最大的元素作为结果,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)标量寄存器的指定地址;
向量最小值指令(VMIN)。根据该指令,装置从存储器(优选的,高速暂存存储器或者标量寄存器)高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最小的元素作为结果,并将结果写回并将结果写回。优选的,并将结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)标量寄存器的指定地址;
循环移位运算指令:根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器(优选的,高速暂存存储器或者标量寄存器)的编寄存器号来获得指令的参数,然后在向量移位单元(可以是独立的向量移位单元也可以是使用计算单元)中进行循环移位移位,并将移位后的结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)高速暂存存储器的指定存储地址。循环移位运算指令,包含四个操作域,向量的起始地址和长度,移位步长,以及输出向量的存储地址,
随机向量生成指令,根据该指令,装置从指令或从存储器(优选的,高速暂存存储器或者标量寄存器)寄存器中读取一个或多个随机分布参数,以及要生成的随机向量的大小和存储地址,然后在随机向量生成单元中生成服从随机分布的随机向量,并将生成的随机向量结果写回至指定的存储器(优选的,高速暂存存储器或者标量寄存器)的存储地址。
随机向量生成指令具体可以为:
均匀分布指令(UNIF),根据该指令,装置从指令或从存储器(优选的,高速暂存存储器或者标量寄存器)寄存器中读取均匀分布的上界参数和下界参数,以及要生成的随机向量的大小和存储地址,然后在随机向量生成单元中生成服从该均匀分布的随机向量,并将生成的随机向量结果写回至指定的存储器(优选的,高速暂存存储器或者标量寄存器)的存储地址。
高斯分布指令(GAUS),根据该指令,装置从指令或从寄存器存储器(优选的,高速暂存存储器或者标量寄存器)堆中读取高斯分布的均值参数和方差参数,以及要生成的随机向量的大小和存储地址,然后在随机向量生成单元中生成服从该高斯分布的随机向量,并将生成的随机向量结果写回至指定的存储器(优选的,高速暂存存储器或者标量寄存器)的存储地址。
上述指令的格式示意图如图3-1所示,神经网络运算指令的格式示意图如图3-2所示,矩阵运算指令的格式示意图如图3-3所示;向量运算指令的格式示意图如图3-4所示;矩阵-向量运算指令的格式示意图如图3-5所示。需要说明的是,上述指令的格式示意图仅仅只是一种可能存在的实施例,本披露对上述指令的格式并不限定在上述图示中的表现形式。
在另一可选的实施例中,所述运算单元可以包括一个主处理电路以及多个从处理电路。
所述主处理电路,用于将将一个输入数据分配成多个数据块,将所述多个数据块中的至少一个数据块以及多个运算指令中的至少一个运算指令发送给所述从处理电路;
所述多个从处理电路,用于依据该运算指令对接收到的数据块执行运算得到中间结果,并将运算结果传输给所述主处理电路;
所述主处理电路,用于将多个从处理电路发送的中间结果进行处理得到该运算指令的结果,将该运算指令的结果发送给所述数据控制单元。
在一种可选实施例中,运算单元如图4-1所示,可以包括分支处理电路;其中,
主处理电路与分支处理电路连接,分支处理电路与多个从处理电路连接;
分支处理电路,用于执行转发主处理电路与从处理电路之间的数据或指令。
以上所述的具体实施例,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施例而已,并不用于限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种用于执行神经网络运算的装置,其特征在于,包括片上互联模块和与该片上互联单元通信连接的多个神经网络处理模块,其中:
所述神经网络处理模块能够通过所述片上互联模块从其它神经网络处理模块中读写数据;
所述神经网络处理模块包括:存储单元、寄存器单元和向量运算单元;
所述存储单元,用于存储向量;
所述寄存器单元,用于存储向量地址;
运算单元,用于获取向量运算指令,根据向量运算指令在所述寄存器单元中获取向量地址,根据该向量地址在存储单元中获取相应的向量,根据获取的向量进行向量运算,得到向量运算结果。
2.根据权利要求1所述的方法,其特征在于,所述装置还包括:外部存储模块;所述外部存储模块与所述片上互联单元通信连接,所述神经网络处理模块通过所述片上互联单元从所述外部存储模块中读写数据。
3.根据权利要求1-2任意一项所述的方法,其特征在于,所述向量运算指令包括:
向量内积指令,根据该指令,装置分别从存储器的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行内积运算,并将结果写回;
向量外积指令,根据该指令,装置分别从存储器的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行外积运算,并将结果写回;
向量四则运算包括:向量加标量指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,从存储器标量寄存器的指定地址取出标量数据,在标量运算单元中将向量的每一个元素加上该标量值,并将结果写回并将结果写回;
标量减向量指令,根据该指令,装置从存储器标量寄存器的指定地址取出标量数据,从存储器的指定地址取出向量数据,在向量计算单元中用该标量减去向量中的相应元素,并将结果写回并将结果写回;
向量除法指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相除,并将结果写回并将结果写回;
标量除向量指令,根据该指令,装置从存储器标量寄存器的指定位置取出标量数据,从存储器的指定位置取出指定大小的向量数据,在向量计算单元中用标量分别除以向量中的相应元素,并将结果写回并将结果写回;
向量逻辑指令,包括:
向量间与指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相与,并将结果写回并将结果写回;
向量内与指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相与,并将结果写回并将结果写回;
向量间或指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相或,并将结果写回并将结果写回;
向量内或指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相或,并将结果写回并将结果写回;
超越函数指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在运算单元中对向量数据做超越函数运算,并将结果写回并将结果写回;
向量比较运算指令,包括
大于等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的寄存器存储器的编号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回至存储器的指定存储地址;
小于等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回到存储器值的指定存储地址;
大于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的指定存储地址;
小于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回到存储器值的指定存储地址;
等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的编号的指定存储地址;
不等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值不等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的指定存储地址;
向量最大值指令,根据该指令,装置从存储器高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最大的元素作为结果,并将结果写回并将结果写回;
向量最小值指令,根据该指令,装置从存储器高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最小的元素作为结果,并将结果写回并将结果写回;
循环移位运算指令:根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编寄存器号来获得指令的参数,然后在向量移位单元中进行循环移位移位,并将移位后的结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)高速暂存存储器的指定存储地址;
随机向量生成指令,根据该指令,装置从指令或从存储器寄存器中读取一个或多个随机分布参数,以及要生成的随机向量的大小和存储地址,然后在随机向量生成单元中生成服从随机分布的随机向量,并将生成的随机向量结果写回至指定的存储器的存储地址。
4.根据权利要求1-2任意一项所述的用于执行神经网络运算的装置,其特征在于,所述神经网络处理模块还包括:存储单元、寄存器单元和矩阵运算单元;
所述存储单元,用于存储矩阵;
所述寄存器单元,用于存储矩阵地址;
矩阵运算单元,用于获取矩阵运算指令,根据矩阵运算指令在所述寄存器单元中获取矩阵地址,根据该矩阵地址在存储单元中获取相应的矩阵,根据获取的矩阵进行矩阵运算,得到矩阵运算结果。
5.根据权利要求1-2任意一项所述的用于执行神经网络运算的装置,其特征在于,所述神经网络处理模块用于依据所述寄存器单元的矩阵地址从所述存储单元读写数据;
所述存储单元为高速存储单元。
6.根据权利要求1-2任意一项所述的用于执行神经网络运算的装置,其特征在于,所述的所述神经网络处理模块还包括:
依赖关系处理单元,用于在所述矩阵运算单元获取矩阵运算指令前,判断该矩阵运算指令与前一矩阵运算指令是否访问相同的矩阵,若是,则等待前一矩阵运算指令执行完毕后,将该矩阵运算指令提供给所述矩阵运算单元;否则,直接将该矩阵运算指令提供给所述矩阵运算单元。
7.根据权利要求5所述的用于执行神经网络运算的装置,其特征在于,所述神经网络处理单元包括指令队列、高速缓存单元、IO读取单元和神经网络运算单元,其中:
所述指令队列存储有运算指令,所述IO读取单元根据所述运算指令从该神经网络处理单元的外部读取数据,并将读取的数据缓存至所述高速缓存单元中,所述神经网络运算单元根据该运算指令从所述高速缓存单元中读取所缓存的数据,并执行神经网络运算,得到运算结果数据;
所述神经网络运算单元将所述运算结果数据写入至所述高速缓存单元中,所述IO读取单元从所述高速缓存单元中读取所述运算结果数据,并将所述运算结果数据写入到该神经网络处理单元的外部。
8.根据权利要求1所述的用于执行神经网络运算的装置,其特征在于,
所述运算单元包括:一个主运算单元和多个从运算单元,
所述主运算单元,用于将将一个输入数据分配成多个数据块,将所述多个数据块中的至少一个数据块以及多个运算指令中的至少一个运算指令发送给所述多个从运算单元;
所述多个从处理单元,用于依据该运算指令对接收到的数据块执行运算得到中间结果,并将运算结果传输给所述主处理单元;
所述主处理单元,用于将多个从处理单元发送的中间结果进行处理得到该运算指令的结果,将该运算指令的结果发送给所述控制单元。
9.根据权利要求8所述的用于执行神经网络运算的装置,其特征在于,所述运算单元还包括:分支处理电路;其中,
主处理单元与分支处理电路连接,分支处理电路与多个从处理单元连接;
分支处理电路,用于执行转发主处理单元与从处理单元之间的数据或指令。
10.一种执行神经网络运算的方法,其特征在于,所述方法用于执行神经网络运算的装置,所述装置包括片上互联模块和与该片上互联单元通信连接的多个神经网络处理模块,所述神经网络处理模块包括:存储单元、寄存器单元和向量运算单元;所述方法包括:
所述神经网络处理模块通过所述片上互联模块从其它神经网络处理模块中读写数据;
所述存储单元存储向量;
所述寄存器单元存储向量地址;
运算单元获取向量运算指令,根据向量运算指令在所述寄存器单元中获取向量地址,根据该向量地址在存储单元中获取相应的向量,根据获取的向量进行向量运算,得到向量运算结果。
11.根据权利要求10所述的方法,其特征在于,所述向量运算指令包括:
向量内积指令,根据该指令,装置分别从存储器的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行内积运算,并将结果写回;
向量外积指令,根据该指令,装置分别从存储器的指定地址取出指定大小的向量数据,在向量计算单元中将两向量进行外积运算,并将结果写回;
向量四则运算包括:向量加标量指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,从存储器标量寄存器的指定地址取出标量数据,在标量运算单元中将向量的每一个元素加上该标量值,并将结果写回并将结果写回;
标量减向量指令,根据该指令,装置从存储器标量寄存器的指定地址取出标量数据,从存储器的指定地址取出向量数据,在向量计算单元中用该标量减去向量中的相应元素,并将结果写回并将结果写回;
向量除法指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相除,并将结果写回并将结果写回;
标量除向量指令,根据该指令,装置从存储器标量寄存器的指定位置取出标量数据,从存储器的指定位置取出指定大小的向量数据,在向量计算单元中用标量分别除以向量中的相应元素,并将结果写回并将结果写回;
向量逻辑指令,包括:
向量间与指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相与,并将结果写回并将结果写回;
向量内与指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相与,并将结果写回并将结果写回;
向量间或指令,根据该指令,装置从存储器的指定地址取出分别取出指定大小的向量数据,在向量运算单元中将两向量对位相或,并将结果写回并将结果写回;
向量内或指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在向量运算单元中向量中每一位相或,并将结果写回并将结果写回;
超越函数指令,根据该指令,装置从存储器的指定地址取出指定大小的向量数据,在运算单元中对向量数据做超越函数运算,并将结果写回并将结果写回;
向量比较运算指令,包括
大于等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的寄存器存储器的编号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回至存储器的指定存储地址;
小于等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回到存储器值的指定存储地址;
大于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值大于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的指定存储地址;
小于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值小于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回到存储器值的指定存储地址;
等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的编号的指定存储地址;
不等于运算指令,根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编号寄存器号来获得指令的参数,包括向量的长度、两向量的起始地址以及输出向量的存储地址,然后读取两向量数据,在向量比较运算单元中对向量中所有位置上的元素进行比较,若某位置行前一向量的值不等于后一向量的值,则将比较结果向量在该位置上的值置为1,否则置为0,最后将比较结果写回值到存储器的指定存储地址;
向量最大值指令,根据该指令,装置从存储器高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最大的元素作为结果,并将结果写回并将结果写回;
向量最小值指令,根据该指令,装置从存储器高速暂存存储器的指定地址取出指定大小的向量数据,从中选出最小的元素作为结果,并将结果写回并将结果写回;
循环移位运算指令:根据该指令,装置可以直接从指令中或者通过访问指令提供的存储器的编寄存器号来获得指令的参数,然后在向量移位单元中进行循环移位移位,并将移位后的结果写回至存储器(优选的,高速暂存存储器或者标量寄存器)高速暂存存储器的指定存储地址;
随机向量生成指令,根据该指令,装置从指令或从存储器寄存器中读取一个或多个随机分布参数,以及要生成的随机向量的大小和存储地址,然后在随机向量生成单元中生成服从随机分布的随机向量,并将生成的随机向量结果写回至指定的存储器的存储地址。
12.根据权利要求10或11所述的方法,其特征在于,所述运算单元包括:一个主运算单元和多个从运算单元,所述方法具体包括:
所述主运算单元将一个输入数据分配成多个数据块,将所述多个数据块中的至少一个数据块以及多个运算指令中的至少一个运算指令发送给所述多个从运算单元;
所述多个从处理单元依据该运算指令对接收到的数据块执行运算得到中间结果,并将运算结果传输给所述主处理单元;
所述主处理单元将多个从处理单元发送的中间结果进行处理得到该运算指令的结果,将该运算指令的结果发送给所述控制单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911058910.4A CN110689126B (zh) | 2017-10-30 | 2018-09-13 | 一种用于执行神经网络运算的装置 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711036374.9A CN109726806A (zh) | 2017-10-30 | 2017-10-30 | 信息处理方法及终端设备 |
CN2017110363749 | 2017-10-30 | ||
CN201880002336.8A CN109997154A (zh) | 2017-10-30 | 2018-09-13 | 信息处理方法及终端设备 |
PCT/CN2018/105463 WO2019085655A1 (zh) | 2017-10-30 | 2018-09-13 | 信息处理方法及终端设备 |
CN201911058910.4A CN110689126B (zh) | 2017-10-30 | 2018-09-13 | 一种用于执行神经网络运算的装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880002336.8A Division CN109997154A (zh) | 2017-10-30 | 2018-09-13 | 信息处理方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110689126A true CN110689126A (zh) | 2020-01-14 |
CN110689126B CN110689126B (zh) | 2023-04-07 |
Family
ID=61645528
Family Applications (48)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811440484.6A Active CN109522254B (zh) | 2017-10-30 | 2017-10-30 | 运算装置及方法 |
CN201711212122.7A Pending CN107833176A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849483.0A Active CN109062606B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量缩放指令的方法 |
CN201711212991.XA Pending CN107992486A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810801236.3A Active CN109117948B (zh) | 2017-10-30 | 2017-10-30 | 画风转换方法及相关产品 |
CN201711212656.XA Active CN107832843B (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849497.2A Active CN109086074B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量复制指令的方法 |
CN201810849496.8A Active CN109062607B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量最小值指令的方法 |
CN201810849498.7A Active CN108958801B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行向量最大值指令的方法 |
CN201810849484.5A Active CN109117183B (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量交换指令的方法 |
CN201810849485.XA Pending CN108874444A (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量外积指令的方法 |
CN201811440571.1A Active CN109542515B (zh) | 2017-10-30 | 2017-10-30 | 运算装置及方法 |
CN201711244020.3A Active CN109725936B (zh) | 2017-10-30 | 2017-10-30 | 扩展计算指令的实现方法以及相关产品 |
CN201810801238.2A Pending CN109003603A (zh) | 2017-10-30 | 2017-10-30 | 语音识别方法及相关产品 |
CN201810849480.7A Active CN108984211B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行吉文斯旋转指令的方法 |
CN201711212660.6A Active CN107895191B (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810799988.0A Active CN109003132B (zh) | 2017-10-30 | 2017-10-30 | 广告推荐方法及相关产品 |
CN201811436410.5A Active CN109542514B (zh) | 2017-10-30 | 2017-10-30 | 运算指令的实现方法以及相关产品 |
CN201711212995.8A Pending CN107832845A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201711036374.9A Pending CN109726806A (zh) | 2017-10-30 | 2017-10-30 | 信息处理方法及终端设备 |
CN201810849509.1A Pending CN109117184A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行平面旋转指令的方法 |
CN201810799987.6A Pending CN109117947A (zh) | 2017-10-30 | 2017-10-30 | 轮廓检测方法及相关产品 |
CN201810799954.1A Pending CN108986022A (zh) | 2017-10-30 | 2017-10-30 | 图像美化方法及相关产品 |
CN201810800665.9A Pending CN108898554A (zh) | 2017-10-30 | 2017-10-30 | 提高图像分辨率的方法及相关产品 |
CN201711211933.5A Pending CN107844832A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201711212125.0A Pending CN107832804A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849492.XA Pending CN108874445A (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行向量点积指令的方法 |
CN201810849499.1A Active CN109086075B (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行矩阵乘向量指令的方法 |
CN201810800001.2A Pending CN108875926A (zh) | 2017-10-30 | 2017-10-30 | 语言翻译方法及相关产品 |
CN201810800664.4A Pending CN109064384A (zh) | 2017-10-30 | 2017-10-30 | 物体检测方法及相关产品 |
CN201810801239.7A Pending CN109034382A (zh) | 2017-10-30 | 2017-10-30 | 场景或物体的识别方法及相关产品 |
CN201711212994.3A Pending CN107832844A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849479.4A Pending CN109063830A (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量范数指令的方法 |
CN201810849491.5A Pending CN109063831A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量加和指令的方法 |
CN201711212123.1A Pending CN107993206A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849486.4A Pending CN109062539A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量乘加指令的方法 |
CN201810849488.3A Active CN109034383B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行矩阵相乘指令的方法 |
CN201880002336.8A Pending CN109997154A (zh) | 2017-10-30 | 2018-09-13 | 信息处理方法及终端设备 |
CN201911058910.4A Active CN110689126B (zh) | 2017-10-30 | 2018-09-13 | 一种用于执行神经网络运算的装置 |
CN201911062123.7A Active CN110610236B (zh) | 2017-10-30 | 2018-09-13 | 一种用于执行神经网络运算的装置及方法 |
CN202010190142.4A Active CN111160548B (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及计算方法 |
CN201910070501.XA Active CN110084361B (zh) | 2017-10-30 | 2018-09-13 | 一种运算装置和方法 |
CN202010190143.9A Pending CN111160549A (zh) | 2017-10-30 | 2018-09-13 | 互连电路的数据处理装置以及方法 |
CN202010336354.9A Active CN111310910B (zh) | 2017-10-30 | 2018-09-13 | 一种计算装置及方法 |
CN201911058839.XA Pending CN110689125A (zh) | 2017-10-30 | 2018-09-13 | 计算装置 |
CN201910067288.7A Pending CN109523020A (zh) | 2017-10-30 | 2018-09-13 | 一种运算装置和方法 |
CN202010309559.8A Pending CN111291880A (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及计算方法 |
CN202010189354.0A Pending CN111178521A (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及方法 |
Family Applications Before (38)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811440484.6A Active CN109522254B (zh) | 2017-10-30 | 2017-10-30 | 运算装置及方法 |
CN201711212122.7A Pending CN107833176A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849483.0A Active CN109062606B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量缩放指令的方法 |
CN201711212991.XA Pending CN107992486A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810801236.3A Active CN109117948B (zh) | 2017-10-30 | 2017-10-30 | 画风转换方法及相关产品 |
CN201711212656.XA Active CN107832843B (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849497.2A Active CN109086074B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量复制指令的方法 |
CN201810849496.8A Active CN109062607B (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量最小值指令的方法 |
CN201810849498.7A Active CN108958801B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行向量最大值指令的方法 |
CN201810849484.5A Active CN109117183B (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量交换指令的方法 |
CN201810849485.XA Pending CN108874444A (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量外积指令的方法 |
CN201811440571.1A Active CN109542515B (zh) | 2017-10-30 | 2017-10-30 | 运算装置及方法 |
CN201711244020.3A Active CN109725936B (zh) | 2017-10-30 | 2017-10-30 | 扩展计算指令的实现方法以及相关产品 |
CN201810801238.2A Pending CN109003603A (zh) | 2017-10-30 | 2017-10-30 | 语音识别方法及相关产品 |
CN201810849480.7A Active CN108984211B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行吉文斯旋转指令的方法 |
CN201711212660.6A Active CN107895191B (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810799988.0A Active CN109003132B (zh) | 2017-10-30 | 2017-10-30 | 广告推荐方法及相关产品 |
CN201811436410.5A Active CN109542514B (zh) | 2017-10-30 | 2017-10-30 | 运算指令的实现方法以及相关产品 |
CN201711212995.8A Pending CN107832845A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201711036374.9A Pending CN109726806A (zh) | 2017-10-30 | 2017-10-30 | 信息处理方法及终端设备 |
CN201810849509.1A Pending CN109117184A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行平面旋转指令的方法 |
CN201810799987.6A Pending CN109117947A (zh) | 2017-10-30 | 2017-10-30 | 轮廓检测方法及相关产品 |
CN201810799954.1A Pending CN108986022A (zh) | 2017-10-30 | 2017-10-30 | 图像美化方法及相关产品 |
CN201810800665.9A Pending CN108898554A (zh) | 2017-10-30 | 2017-10-30 | 提高图像分辨率的方法及相关产品 |
CN201711211933.5A Pending CN107844832A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201711212125.0A Pending CN107832804A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849492.XA Pending CN108874445A (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行向量点积指令的方法 |
CN201810849499.1A Active CN109086075B (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行矩阵乘向量指令的方法 |
CN201810800001.2A Pending CN108875926A (zh) | 2017-10-30 | 2017-10-30 | 语言翻译方法及相关产品 |
CN201810800664.4A Pending CN109064384A (zh) | 2017-10-30 | 2017-10-30 | 物体检测方法及相关产品 |
CN201810801239.7A Pending CN109034382A (zh) | 2017-10-30 | 2017-10-30 | 场景或物体的识别方法及相关产品 |
CN201711212994.3A Pending CN107832844A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849479.4A Pending CN109063830A (zh) | 2017-10-30 | 2017-10-30 | 机器学习处理器及使用处理器执行向量范数指令的方法 |
CN201810849491.5A Pending CN109063831A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量加和指令的方法 |
CN201711212123.1A Pending CN107993206A (zh) | 2017-10-30 | 2017-10-30 | 一种信息处理方法及相关产品 |
CN201810849486.4A Pending CN109062539A (zh) | 2017-10-30 | 2017-10-30 | 人工智能处理器及使用处理器执行向量乘加指令的方法 |
CN201810849488.3A Active CN109034383B (zh) | 2017-10-30 | 2017-10-30 | 神经网络处理器及使用处理器执行矩阵相乘指令的方法 |
CN201880002336.8A Pending CN109997154A (zh) | 2017-10-30 | 2018-09-13 | 信息处理方法及终端设备 |
Family Applications After (9)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911062123.7A Active CN110610236B (zh) | 2017-10-30 | 2018-09-13 | 一种用于执行神经网络运算的装置及方法 |
CN202010190142.4A Active CN111160548B (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及计算方法 |
CN201910070501.XA Active CN110084361B (zh) | 2017-10-30 | 2018-09-13 | 一种运算装置和方法 |
CN202010190143.9A Pending CN111160549A (zh) | 2017-10-30 | 2018-09-13 | 互连电路的数据处理装置以及方法 |
CN202010336354.9A Active CN111310910B (zh) | 2017-10-30 | 2018-09-13 | 一种计算装置及方法 |
CN201911058839.XA Pending CN110689125A (zh) | 2017-10-30 | 2018-09-13 | 计算装置 |
CN201910067288.7A Pending CN109523020A (zh) | 2017-10-30 | 2018-09-13 | 一种运算装置和方法 |
CN202010309559.8A Pending CN111291880A (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及计算方法 |
CN202010189354.0A Pending CN111178521A (zh) | 2017-10-30 | 2018-09-13 | 计算装置以及方法 |
Country Status (4)
Country | Link |
---|---|
US (5) | US20210182077A1 (zh) |
EP (1) | EP3709224A4 (zh) |
CN (48) | CN109522254B (zh) |
WO (1) | WO2019085655A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832718A (zh) * | 2020-06-24 | 2020-10-27 | 上海西井信息科技有限公司 | 芯片架构 |
CN111860818A (zh) * | 2020-07-23 | 2020-10-30 | 哈尔滨工业大学(威海) | 基于智能芯片的som神经网络算法处理方法 |
Families Citing this family (249)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018126073A1 (en) * | 2016-12-30 | 2018-07-05 | Lau Horace H | Deep learning hardware |
US11037330B2 (en) * | 2017-04-08 | 2021-06-15 | Intel Corporation | Low rank matrix compression |
KR102258414B1 (ko) * | 2017-04-19 | 2021-05-28 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 처리 장치 및 처리 방법 |
EP3657398A1 (en) * | 2017-05-23 | 2020-05-27 | Shanghai Cambricon Information Technology Co., Ltd | Weight quantization method for a neural network and accelerating device therefor |
WO2019114842A1 (zh) * | 2017-12-14 | 2019-06-20 | 北京中科寒武纪科技有限公司 | 一种集成电路芯片装置 |
JP6454397B1 (ja) * | 2017-12-20 | 2019-01-16 | Nttエレクトロニクス株式会社 | 誤り訂正装置、誤り訂正方法及び光通信システム |
US11636327B2 (en) * | 2017-12-29 | 2023-04-25 | Intel Corporation | Machine learning sparse computation mechanism for arbitrary neural networks, arithmetic compute microarchitecture, and sparsity for training mechanism |
US20190244080A1 (en) * | 2018-02-02 | 2019-08-08 | Wisconsin Alumni Research Foundation | Neural Network Processor with On-Chip Convolution Kernel Storage |
CN108388446A (zh) | 2018-02-05 | 2018-08-10 | 上海寒武纪信息科技有限公司 | 运算模块以及方法 |
CN110222833B (zh) * | 2018-03-01 | 2023-12-19 | 华为技术有限公司 | 一种用于神经网络的数据处理电路 |
CN108470211B (zh) * | 2018-04-09 | 2022-07-12 | 郑州云海信息技术有限公司 | 一种卷积计算的实现方法、设备和计算机存储介质 |
CN110399976B (zh) * | 2018-04-25 | 2022-04-05 | 华为技术有限公司 | 计算装置和计算方法 |
CN108629409B (zh) * | 2018-04-28 | 2020-04-10 | 中国科学院计算技术研究所 | 一种基于主成分分析减少io开销的神经网络处理系统 |
CN110472734B (zh) * | 2018-05-11 | 2024-03-29 | 上海寒武纪信息科技有限公司 | 一种计算装置及相关产品 |
CN108804223A (zh) * | 2018-05-16 | 2018-11-13 | 努比亚技术有限公司 | 内存优化方法、移动终端及计算机可读存储介质 |
CN108831475B (zh) * | 2018-05-24 | 2020-09-29 | 广州市千钧网络科技有限公司 | 一种文本消息提取方法及系统 |
WO2019227322A1 (zh) * | 2018-05-30 | 2019-12-05 | 深圳市大疆创新科技有限公司 | 池化装置和池化方法 |
US11880762B2 (en) * | 2018-06-26 | 2024-01-23 | International Business Machines Corporation | Choosing execution mode of a neural network based on total memory usage |
CN110728364A (zh) * | 2018-07-17 | 2020-01-24 | 上海寒武纪信息科技有限公司 | 一种运算装置和运算方法 |
CN110647973A (zh) * | 2018-06-27 | 2020-01-03 | 北京中科寒武纪科技有限公司 | 运算方法及相关方法和产品 |
CN110647356A (zh) * | 2018-06-27 | 2020-01-03 | 北京中科寒武纪科技有限公司 | 运算装置及相关产品 |
CN109165728B (zh) * | 2018-08-06 | 2020-12-18 | 浪潮集团有限公司 | 一种卷积神经网络的基本计算单元及计算方法 |
CN110874343B (zh) * | 2018-08-10 | 2023-04-21 | 北京百度网讯科技有限公司 | 基于深度学习芯片进行语音处理的方法和深度学习芯片 |
US20200104716A1 (en) * | 2018-08-23 | 2020-04-02 | Samsung Electronics Co., Ltd. | Method and system with deep learning model generation |
CN110865792B (zh) * | 2018-08-28 | 2021-03-19 | 中科寒武纪科技股份有限公司 | 数据预处理方法、装置、计算机设备和存储介质 |
CN109242091B (zh) * | 2018-09-03 | 2022-03-22 | 郑州云海信息技术有限公司 | 图像识别方法、装置、设备及可读存储介质 |
CN109065076B (zh) * | 2018-09-05 | 2020-11-27 | 深圳追一科技有限公司 | 音频标签的设置方法、装置、设备和存储介质 |
US20210097647A1 (en) * | 2018-09-13 | 2021-04-01 | Shanghai Cambrico Information Technology Co., Ltd. | Information processing method and terminal device |
CN110897626A (zh) * | 2018-09-14 | 2020-03-24 | 杭州脉流科技有限公司 | 基于深度神经网络的心电图分析方法、装置、计算机设备和系统 |
US11703939B2 (en) | 2018-09-28 | 2023-07-18 | Shanghai Cambricon Information Technology Co., Ltd | Signal processing device and related products |
CN110968285A (zh) * | 2018-09-28 | 2020-04-07 | 上海寒武纪信息科技有限公司 | 信号处理装置及相关产品 |
CN110969246A (zh) * | 2018-09-28 | 2020-04-07 | 上海寒武纪信息科技有限公司 | 信号处理装置及相关产品 |
WO2020070916A1 (ja) * | 2018-10-02 | 2020-04-09 | 日本電信電話株式会社 | 算出装置、算出方法及び算出プログラム |
CN111353124A (zh) * | 2018-12-20 | 2020-06-30 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111222633A (zh) * | 2018-11-23 | 2020-06-02 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111275197B (zh) * | 2018-12-05 | 2023-11-10 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111353125B (zh) * | 2018-12-20 | 2022-04-22 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111047027A (zh) * | 2018-10-12 | 2020-04-21 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN110096309B (zh) * | 2018-11-14 | 2020-04-14 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111339060B (zh) * | 2018-12-19 | 2024-03-12 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111353595A (zh) * | 2018-12-20 | 2020-06-30 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111290788B (zh) * | 2018-12-07 | 2022-05-31 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111338694B (zh) * | 2018-12-19 | 2022-05-31 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111047005A (zh) * | 2018-10-11 | 2020-04-21 | 上海寒武纪信息科技有限公司 | 运算方法、装置、计算机设备和存储介质 |
CN111047021B (zh) * | 2018-10-12 | 2023-11-24 | 中科寒武纪科技股份有限公司 | 一种计算装置及相关产品 |
CN111045728B (zh) * | 2018-10-12 | 2022-04-12 | 上海寒武纪信息科技有限公司 | 一种计算装置及相关产品 |
CN111047024B (zh) * | 2018-10-12 | 2023-05-23 | 上海寒武纪信息科技有限公司 | 一种计算装置及相关产品 |
CN111047022B (zh) * | 2018-10-12 | 2023-11-24 | 中科寒武纪科技股份有限公司 | 一种计算装置及相关产品 |
CN111079907B (zh) * | 2018-10-19 | 2021-01-26 | 安徽寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111079911B (zh) * | 2018-10-19 | 2021-02-09 | 中科寒武纪科技股份有限公司 | 运算方法、系统及相关产品 |
US11294985B2 (en) * | 2018-10-30 | 2022-04-05 | Intel Corporation | Efficient analog in-memory matrix multiplication processor |
US11526759B2 (en) * | 2018-11-05 | 2022-12-13 | International Business Machines Corporation | Large model support in deep learning |
KR102462910B1 (ko) * | 2018-11-12 | 2022-11-04 | 한국전자통신연구원 | 배치 정규화 레이어의 웨이트들에 대한 양자화 방법 및 그 장치 |
CN109491938A (zh) * | 2018-11-27 | 2019-03-19 | 济南浪潮高新科技投资发展有限公司 | 一种面向卷积神经网络加速的多通道dma控制器和卷积神经网络加速方法 |
US11537853B1 (en) | 2018-11-28 | 2022-12-27 | Amazon Technologies, Inc. | Decompression and compression of neural network data using different compression schemes |
CN109583579B (zh) * | 2018-11-30 | 2021-04-09 | 上海寒武纪信息科技有限公司 | 计算装置及相关产品 |
CN111381871B (zh) * | 2018-12-28 | 2022-12-09 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111258641B (zh) * | 2018-11-30 | 2022-12-09 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN109543833B (zh) * | 2018-11-30 | 2021-08-03 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111382390B (zh) * | 2018-12-28 | 2022-08-12 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111399905B (zh) * | 2019-01-02 | 2022-08-16 | 上海寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN109543825B (zh) * | 2018-11-30 | 2020-12-01 | 安徽寒武纪信息科技有限公司 | 神经网络模型算法编译方法、装置及相关产品 |
CN109685201B (zh) * | 2018-12-14 | 2020-10-30 | 安徽寒武纪信息科技有限公司 | 运算方法、装置及相关产品 |
CN111383638A (zh) * | 2018-12-28 | 2020-07-07 | 上海寒武纪信息科技有限公司 | 信号处理装置、信号处理方法及相关产品 |
CN111193916B (zh) * | 2018-12-29 | 2022-03-29 | 中科寒武纪科技股份有限公司 | 运算方法 |
CN109635937B (zh) * | 2018-12-30 | 2023-07-11 | 南京大学 | 一种面向低位宽卷积神经网络的低功耗系统 |
WO2020142973A1 (en) * | 2019-01-10 | 2020-07-16 | Alibaba Group Holding Limited | Matrix-based instruction set architecture for neural network |
US11475285B2 (en) * | 2019-01-28 | 2022-10-18 | Samsung Electronics Co., Ltd. | Neural network accelerator and operating method thereof |
JP7353772B2 (ja) * | 2019-03-07 | 2023-10-02 | キヤノン株式会社 | データ処理装置及びその方法、プログラム |
CN110049200A (zh) * | 2019-03-07 | 2019-07-23 | 永德利硅橡胶科技(深圳)有限公司 | 基于会议的语言翻译方法及相关产品 |
CN109902201A (zh) * | 2019-03-08 | 2019-06-18 | 天津理工大学 | 一种基于cnn和bp神经网络的推荐方法 |
CN111723921A (zh) * | 2019-03-22 | 2020-09-29 | 中科寒武纪科技股份有限公司 | 人工智能计算装置及相关产品 |
CN111723920A (zh) * | 2019-03-22 | 2020-09-29 | 中科寒武纪科技股份有限公司 | 人工智能计算装置及相关产品 |
US11704573B2 (en) * | 2019-03-25 | 2023-07-18 | Here Global B.V. | Method, apparatus, and computer program product for identifying and compensating content contributors |
CN111738021B (zh) * | 2019-03-25 | 2023-10-31 | 株式会社理光 | 神经机器翻译模型的词向量处理方法、装置及存储介质 |
CN110009021B (zh) * | 2019-03-26 | 2021-06-15 | 深兰科技(上海)有限公司 | 一种目标识别方法及设备 |
CN109919312B (zh) * | 2019-03-29 | 2021-04-23 | 北京智芯微电子科技有限公司 | 卷积神经网络的运算方法、装置及dpu |
CN111782577B (zh) * | 2019-04-04 | 2023-03-24 | 安徽寒武纪信息科技有限公司 | 数据处理装置及方法以及相关产品 |
CN111831337B (zh) * | 2019-04-19 | 2022-11-29 | 安徽寒武纪信息科技有限公司 | 数据同步方法及装置以及相关产品 |
CN110135462B (zh) * | 2019-04-18 | 2022-12-20 | 南开大学 | 一种基于上下文信息的艺术画风格分类方法 |
US11455466B2 (en) * | 2019-05-01 | 2022-09-27 | Microsoft Technology Licensing, Llc | Method and system of utilizing unsupervised learning to improve text to content suggestions |
EP3948590A4 (en) * | 2019-05-01 | 2022-11-16 | Microsoft Technology Licensing, LLC | METHOD AND SYSTEM FOR USING UNSUPERVISED LEARNING TO IMPROVE CONTENT TEXT SUGGESTIONS |
CN111930681B (zh) * | 2019-05-13 | 2023-10-10 | 中科寒武纪科技股份有限公司 | 一种计算装置及相关产品 |
CN110210612B (zh) * | 2019-05-14 | 2021-04-16 | 北京中科汇成科技有限公司 | 基于自适应分段线性逼近曲线的集成电路加速方法及系统 |
US11610390B2 (en) * | 2019-05-15 | 2023-03-21 | Getac Technology Corporation | System for detecting surface type of object and artificial neural network-based method for detecting surface type of object |
CN110198164B (zh) * | 2019-05-17 | 2023-04-04 | 山东科技大学 | 一种绝对值流控忆阻器模拟电路 |
CN112346781A (zh) * | 2019-08-07 | 2021-02-09 | 上海寒武纪信息科技有限公司 | 指令处理方法、装置及相关产品 |
CN111966403A (zh) * | 2019-05-20 | 2020-11-20 | 上海寒武纪信息科技有限公司 | 指令处理方法、装置及相关产品 |
CN111966400A (zh) * | 2019-05-20 | 2020-11-20 | 上海寒武纪信息科技有限公司 | 指令处理方法、装置及相关产品 |
CN111966398A (zh) * | 2019-05-20 | 2020-11-20 | 上海寒武纪信息科技有限公司 | 指令处理方法、装置及相关产品 |
CN110298441B (zh) * | 2019-05-24 | 2022-01-11 | 深圳云天励飞技术有限公司 | 一种数据处理方法、电子装置及计算机可读存储介质 |
CN110277100A (zh) * | 2019-06-19 | 2019-09-24 | 南京邮电大学 | 基于Alexnet改进的声纹识别方法、存储介质和终端 |
CN110390626A (zh) * | 2019-07-02 | 2019-10-29 | 深兰科技(上海)有限公司 | 一种卷积神经网络的图像处理方法及装置 |
KR20210004702A (ko) | 2019-07-05 | 2021-01-13 | 삼성전자주식회사 | Ai 프로세서 및 이의 신경망 연산 수행 방법 |
CN110427578B (zh) * | 2019-07-16 | 2020-06-02 | 盐城师范学院 | 一种基于深度机器学习的数字内容投放方法 |
CN110532205B (zh) * | 2019-07-17 | 2021-04-06 | 浙江大华技术股份有限公司 | 数据传输方法、装置、计算机设备和计算机可读存储介质 |
CN112308198A (zh) * | 2019-07-26 | 2021-02-02 | 中科寒武纪科技股份有限公司 | 循环神经网络的计算方法及相关产品 |
US11870804B2 (en) * | 2019-08-01 | 2024-01-09 | Akamai Technologies, Inc. | Automated learning and detection of web bot transactions using deep learning |
CN110598858A (zh) * | 2019-08-02 | 2019-12-20 | 北京航空航天大学 | 基于非易失性存内计算实现二值神经网络的芯片和方法 |
CN112333222A (zh) * | 2019-08-05 | 2021-02-05 | 中润普达(深圳)大数据技术有限公司 | 一种基于大数据的云计算服务系统 |
CN110489356B (zh) * | 2019-08-06 | 2022-02-22 | 上海商汤智能科技有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN110569275A (zh) * | 2019-08-14 | 2019-12-13 | 清华大学山西清洁能源研究院 | 支持相似性检索的高纬缺失时间序列的压缩方法及装置 |
CN112394887A (zh) * | 2019-08-17 | 2021-02-23 | 森大(深圳)技术有限公司 | Onepass打印数据高效率处理方法、装置、设备及存储介质 |
CN112434781A (zh) * | 2019-08-26 | 2021-03-02 | 上海寒武纪信息科技有限公司 | 用于处理数据的方法、装置以及相关产品 |
CN110780921B (zh) * | 2019-08-30 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置、存储介质及电子装置 |
CN112445523A (zh) * | 2019-09-02 | 2021-03-05 | 中科寒武纪科技股份有限公司 | 数据处理方法、相关设备及计算机可读介质 |
US11409654B2 (en) * | 2019-09-05 | 2022-08-09 | Micron Technology, Inc. | Intelligent optimization of caching operations in a data storage device |
CN110426965A (zh) * | 2019-09-17 | 2019-11-08 | 苏州百宝箱科技有限公司 | 一种基于云平台的智能家居远程控制方法 |
CN110647718B (zh) * | 2019-09-26 | 2023-07-25 | 中昊芯英(杭州)科技有限公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN110766155A (zh) * | 2019-09-27 | 2020-02-07 | 东南大学 | 一种基于混合精度存储的深度神经网络加速器 |
CN112579042B (zh) * | 2019-09-29 | 2024-04-19 | 广州希姆半导体科技有限公司 | 计算装置及方法、芯片、电子设备及计算机可读存储介质 |
CN110673823B (zh) * | 2019-09-30 | 2021-11-30 | 上海寒武纪信息科技有限公司 | 乘法器、数据处理方法及芯片 |
CN110837483B (zh) * | 2019-09-30 | 2021-07-23 | 厦门星宸科技有限公司 | 张量维度变换的方法以及装置 |
WO2021077283A1 (zh) * | 2019-10-22 | 2021-04-29 | 深圳鲲云信息科技有限公司 | 神经网络计算压缩方法、系统及存储介质 |
CN112712172B (zh) * | 2019-10-25 | 2023-12-26 | 安徽寒武纪信息科技有限公司 | 用于神经网络运算的计算装置、方法、集成电路和设备 |
CN110796246A (zh) * | 2019-10-29 | 2020-02-14 | 南京宁麒智能计算芯片研究院有限公司 | 一种基于线性分段的激活函数的硬件实现电路和方法 |
WO2021081739A1 (en) * | 2019-10-29 | 2021-05-06 | Intel Corporation | Device capability aware technology to execute deep learning computation graphs in web applications |
US11475311B2 (en) | 2019-10-30 | 2022-10-18 | Raytheon Company | Neural network instruction streaming |
CN110807522B (zh) * | 2019-10-31 | 2022-05-06 | 合肥工业大学 | 一种神经网络加速器的通用计算电路 |
CN112784207B (zh) * | 2019-11-01 | 2024-02-02 | 中科寒武纪科技股份有限公司 | 运算方法及相关产品 |
CN112817638A (zh) * | 2019-11-18 | 2021-05-18 | 北京希姆计算科技有限公司 | 一种数据处理装置及方法 |
CN111027690B (zh) * | 2019-11-26 | 2023-08-04 | 陈子祺 | 执行确定性推理的组合处理装置、芯片和方法 |
US11610102B1 (en) * | 2019-11-27 | 2023-03-21 | Amazon Technologies, Inc. | Time-based memory allocation for neural network inference |
US20210224658A1 (en) * | 2019-12-12 | 2021-07-22 | Texas Instruments Incorporated | Parametric Power-Of-2 Clipping Activations for Quantization for Convolutional Neural Networks |
CN110996171B (zh) * | 2019-12-12 | 2021-11-26 | 北京金山云网络技术有限公司 | 视频类任务的训练数据生成方法、装置及服务器 |
CN111026445A (zh) * | 2019-12-17 | 2020-04-17 | 湖南长城银河科技有限公司 | 一种智能识别方法及芯片 |
CN111178087B (zh) * | 2019-12-20 | 2023-05-09 | 沈阳雅译网络技术有限公司 | 一种基于离散型注意力机制的神经机器翻译解码加速方法 |
US11755683B2 (en) | 2019-12-23 | 2023-09-12 | Western Digital Technologies, Inc. | Flexible accelerator for sparse tensors (FAST) in machine learning |
CN111125617A (zh) * | 2019-12-23 | 2020-05-08 | 中科寒武纪科技股份有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN111176725B (zh) * | 2019-12-27 | 2022-05-06 | 北京市商汤科技开发有限公司 | 数据处理方法、装置、设备和存储介质 |
CN113128673B (zh) * | 2019-12-31 | 2023-08-11 | Oppo广东移动通信有限公司 | 数据处理方法、存储介质、神经网络处理器及电子设备 |
CN111144556B (zh) * | 2019-12-31 | 2023-07-07 | 中国人民解放军国防科技大学 | 面向深度神经网络训练和推理的范围批处理归一化算法的硬件电路 |
CN111242293B (zh) * | 2020-01-13 | 2023-07-18 | 腾讯科技(深圳)有限公司 | 一种处理部件、数据处理的方法以及电子设备 |
CN111240747B (zh) * | 2020-01-13 | 2022-05-06 | Oppo广东移动通信有限公司 | 指令生成方法、装置、测试架构和电子设备 |
US20210223987A1 (en) * | 2020-01-20 | 2021-07-22 | SK Hynix Inc. | Controller with smart scheduling and method of operating the controller |
CN113222126B (zh) * | 2020-01-21 | 2022-01-28 | 上海商汤智能科技有限公司 | 数据处理装置、人工智能芯片 |
TWI727641B (zh) * | 2020-02-03 | 2021-05-11 | 華邦電子股份有限公司 | 記憶體裝置及其操作方法 |
CN111241204B (zh) * | 2020-02-14 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种梯度数据的同步方法、装置、设备及存储介质 |
US20210256384A1 (en) * | 2020-02-14 | 2021-08-19 | Northeastern University | Computer-implemented methods and systems for achieving real-time dnn execution on mobile devices with pattern-based weight pruning |
KR20210105053A (ko) * | 2020-02-18 | 2021-08-26 | 에스케이하이닉스 주식회사 | 연산 회로 및 그것을 포함하는 딥 러닝 시스템 |
US20210256092A1 (en) * | 2020-02-19 | 2021-08-19 | Nvidia Corporation | Application programming interface to accelerate matrix operations |
US11562235B2 (en) | 2020-02-21 | 2023-01-24 | International Business Machines Corporation | Activation function computation for neural networks |
US11727270B2 (en) | 2020-02-24 | 2023-08-15 | Microsoft Technology Licensing, Llc | Cross data set knowledge distillation for training machine learning models |
EP3872710A1 (en) * | 2020-02-27 | 2021-09-01 | Aptiv Technologies Limited | Method and system for determining information on an expected trajectory of an object |
CN111311707B (zh) * | 2020-03-05 | 2023-05-05 | 云知声智能科技股份有限公司 | 一种作画方法及装置 |
US20210287074A1 (en) * | 2020-03-12 | 2021-09-16 | Semiconductor Components Industries, Llc | Neural network weight encoding |
US11526743B2 (en) * | 2020-03-13 | 2022-12-13 | Arm Limited | Artificial neural network optical hardware accelerator |
US20210295134A1 (en) * | 2020-03-18 | 2021-09-23 | Infineon Technologies Ag | Artificial neural network activation function |
WO2021189294A1 (zh) * | 2020-03-25 | 2021-09-30 | 华为技术有限公司 | 卷积运算系统和卷积运算方法 |
US11797830B2 (en) * | 2020-03-25 | 2023-10-24 | Western Digital Technologies, Inc. | Flexible accelerator for sparse tensors in convolutional neural networks |
CN111488969B (zh) * | 2020-04-03 | 2024-01-19 | 北京集朗半导体科技有限公司 | 基于神经网络加速器的执行优化方法及装置 |
CN111522657B (zh) * | 2020-04-14 | 2022-07-22 | 北京航空航天大学 | 一种分散设备协同深度学习推理方法 |
CN111539462B (zh) * | 2020-04-15 | 2023-09-19 | 苏州万高电脑科技有限公司 | 模仿生物视觉神经元的图像分类方法、系统、装置及介质 |
US11748623B2 (en) * | 2020-04-15 | 2023-09-05 | Mipsology SAS | Modifying structure of artificial neural networks by collocating parameters |
CN111581593B (zh) * | 2020-04-21 | 2023-09-05 | 天津大学 | 可配置重用的分段式查找表激活函数实现装置 |
CN111522776B (zh) * | 2020-04-27 | 2022-04-05 | 西安交通大学 | 一种计算架构 |
CN111565180B (zh) * | 2020-04-28 | 2021-01-29 | 广州锦行网络科技有限公司 | 一种虚拟端口的保护系统及方法 |
CN111563898B (zh) * | 2020-04-29 | 2023-05-16 | 万翼科技有限公司 | 图像分割方法、电子设备及相关产品 |
US11604976B2 (en) * | 2020-04-29 | 2023-03-14 | International Business Machines Corporation | Crossbar arrays for computations in memory-augmented neural networks |
US11527089B2 (en) * | 2020-04-29 | 2022-12-13 | Conduent Business Services, Llc | Building light-weight single shot refinement neural network for vehicle passenger detection system |
CN111553466B (zh) * | 2020-04-30 | 2024-03-22 | 上海商汤智能科技有限公司 | 信息处理方法、装置及设备 |
US11455143B2 (en) * | 2020-05-07 | 2022-09-27 | Meta Platforms, Inc. | Using a low-bit-width dot product engine to sum high-bit-width numbers |
CN113626080B (zh) * | 2020-05-08 | 2023-10-03 | 安徽寒武纪信息科技有限公司 | 数据处理装置以及相关产品 |
CN111525921B (zh) * | 2020-05-15 | 2023-09-08 | 矽力杰半导体技术(杭州)有限公司 | 用于神经网络中信号转换的系统和方法 |
CN111598227B (zh) * | 2020-05-20 | 2023-11-03 | 字节跳动有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
CN111914612B (zh) * | 2020-05-21 | 2024-03-01 | 淮阴工学院 | 一种基于改进的卷积神经网络的施工图图元自适应识别方法 |
JP2021190011A (ja) * | 2020-06-04 | 2021-12-13 | 株式会社東海理化電機製作所 | 処理装置、プログラム、およびシステム |
US11782685B2 (en) * | 2020-06-17 | 2023-10-10 | Bank Of America Corporation | Software code vectorization converter |
US11435941B1 (en) * | 2020-06-24 | 2022-09-06 | Amazon Technologies, Inc. | Matrix transpose hardware acceleration |
CN113867792A (zh) * | 2020-06-30 | 2021-12-31 | 上海寒武纪信息科技有限公司 | 计算装置、集成电路芯片、板卡、电子设备和计算方法 |
CN111767508B (zh) * | 2020-07-09 | 2024-02-23 | 地平线(上海)人工智能技术有限公司 | 计算机实现张量数据计算的方法、装置、介质和设备 |
CN111913744A (zh) * | 2020-07-15 | 2020-11-10 | 博流智能科技(南京)有限公司 | Ai深度学习数据处理方法及系统 |
KR20220009126A (ko) | 2020-07-15 | 2022-01-24 | 삼성전자주식회사 | 뉴럴 네트워크 연산 처리 장치 및 방법 |
CN111857833A (zh) * | 2020-07-16 | 2020-10-30 | 中国科学院计算技术研究所 | 并行计算智能处理器及并行计算智能处理方法 |
CN111831582B (zh) * | 2020-07-16 | 2024-03-29 | 中国科学院计算技术研究所 | 用于智能处理器的内存管理装置、方法及电子设备 |
CN111857834A (zh) * | 2020-07-16 | 2020-10-30 | 中国科学院计算技术研究所 | 分形计算智能处理器、分形计算智能处理方法 |
CN111984189B (zh) * | 2020-07-22 | 2022-05-17 | 深圳云天励飞技术股份有限公司 | 神经网络计算装置和数据读取、数据存储方法及相关设备 |
US11163571B1 (en) * | 2020-07-29 | 2021-11-02 | International Business Machines Corporation | Fusion to enhance early address generation of load instructions in a microprocessor |
CN114070563B (zh) * | 2020-07-31 | 2023-09-05 | 中移(苏州)软件技术有限公司 | 一种数据处理方法、装置、终端及存储介质 |
CN112102816A (zh) * | 2020-08-17 | 2020-12-18 | 北京百度网讯科技有限公司 | 语音识别方法、装置、系统、电子设备和存储介质 |
JP2022034897A (ja) * | 2020-08-19 | 2022-03-04 | 富士通株式会社 | 情報処理装置、機械学習方法及び機械学習プログラム |
TWI746126B (zh) * | 2020-08-25 | 2021-11-11 | 創鑫智慧股份有限公司 | 矩陣乘法裝置及其操作方法 |
CN112052149B (zh) * | 2020-09-06 | 2022-02-22 | 厦门理工学院 | 一种大数据信息采集系统及使用方法 |
CN112200299B (zh) * | 2020-09-09 | 2024-04-12 | 星宸科技股份有限公司 | 神经网络计算装置、数据处理方法及装置 |
KR102466257B1 (ko) * | 2020-09-10 | 2022-11-14 | 주식회사 더웨이브톡 | 다중 광원을 활용한 분광 장치 |
US20220092408A1 (en) * | 2020-09-23 | 2022-03-24 | Facebook, Inc. | Neural network weight distribution using a tree direct-memory access (dma) bus |
CN112181492A (zh) * | 2020-09-23 | 2021-01-05 | 北京奕斯伟计算技术有限公司 | 一种指令处理方法、指令处理装置和芯片 |
CN112991358A (zh) * | 2020-09-30 | 2021-06-18 | 北京字节跳动网络技术有限公司 | 风格图像生成方法、模型训练方法、装置、设备和介质 |
CN111931937B (zh) * | 2020-09-30 | 2021-01-01 | 深圳云天励飞技术股份有限公司 | 图像处理模型的梯度更新方法、装置及系统 |
US11620818B2 (en) * | 2020-10-01 | 2023-04-04 | Intel Corporation | Spatially sparse neural network accelerator for multi-dimension visual analytics |
TWI748679B (zh) * | 2020-10-08 | 2021-12-01 | 大陸商星宸科技股份有限公司 | 神經網路計算裝置、資料處理方法及裝置 |
CN112256801B (zh) * | 2020-10-10 | 2024-04-09 | 深圳力维智联技术有限公司 | 抽取实体关系图中关键实体的方法、系统和存储介质 |
CN112287222B (zh) * | 2020-10-29 | 2023-12-15 | 深圳大学 | 一种基于异质特征深度残差网络的内容推荐方法 |
US20220147680A1 (en) * | 2020-11-12 | 2022-05-12 | Samsung Electronics Co., Ltd. | Method for co-design of hardware and neural network architectures using coarse-to-fine search, two-phased block distillation and neural hardware predictor |
CN112540996B (zh) * | 2020-11-12 | 2023-11-24 | Oppo(重庆)智能科技有限公司 | 一种业务数据的校验方法、装置、电子设备及存储介质 |
KR20220073306A (ko) * | 2020-11-26 | 2022-06-03 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
CN112306500B (zh) * | 2020-11-30 | 2022-06-07 | 上海交通大学 | 一种针对粗粒度可重构结构的降低多类访存冲突编译方法 |
CN112666860A (zh) * | 2020-12-15 | 2021-04-16 | 合肥中感微电子有限公司 | 数字信号的扩展处理系统、其处理方法和处理器 |
CN112631955B (zh) * | 2020-12-18 | 2024-01-19 | 北京地平线机器人技术研发有限公司 | 数据处理方法、装置、电子设备以及介质 |
CN112488908B (zh) * | 2020-12-18 | 2021-08-27 | 时擎智能科技(上海)有限公司 | 一种计算装置、计算方法、存储介质及终端 |
US20220206989A1 (en) * | 2020-12-24 | 2022-06-30 | Intel Corporation | Apparatuses, methods, and systems for instructions for loading a tile of a matrix operations accelerator |
CN112633505B (zh) | 2020-12-24 | 2022-05-27 | 苏州浪潮智能科技有限公司 | 一种基于risc-v的人工智能推理方法和系统 |
CN112528224B (zh) * | 2020-12-28 | 2022-09-13 | 上海微波技术研究所(中国电子科技集团公司第五十研究所) | 一种矩阵特征值分解分组循环迭代流水实现方法及系统 |
CN116710930A (zh) * | 2020-12-31 | 2023-09-05 | 北京希姆计算科技有限公司 | 执行程序的编译方法、芯片、电子设备及计算机可读存储介质 |
CN112328511B (zh) * | 2021-01-04 | 2021-05-04 | 统信软件技术有限公司 | 一种数据处理方法、计算设备及可读存储介质 |
CN112766477B (zh) * | 2021-01-13 | 2023-05-30 | 天津智模科技有限公司 | 神经网络运算电路 |
CN112905591B (zh) * | 2021-02-04 | 2022-08-26 | 成都信息工程大学 | 一种基于机器学习的数据表连接顺序选择方法 |
CN112967188B (zh) * | 2021-03-04 | 2024-04-02 | 中国科学技术大学 | 结合结构化语义码流的空间自适应图像超分辨重建方法 |
US20220300816A1 (en) * | 2021-03-19 | 2022-09-22 | Rebellions Inc. | Neural processing device and method for pruning thereof |
CN113138804B (zh) * | 2021-04-20 | 2022-10-04 | 清华大学 | 在传输过程中提取流数据特征的流处理器及其实现方法 |
CN113284512B (zh) * | 2021-05-25 | 2022-05-27 | 重庆大学 | 一种基于深度稀疏迁移学习的帕金森语音分类方法 |
CN113256497B (zh) * | 2021-06-21 | 2021-09-24 | 中南大学 | 图像重建方法及系统 |
CN113254648B (zh) * | 2021-06-22 | 2021-10-22 | 暨南大学 | 一种基于多层次图池化的文本情感分析方法 |
CN115600659A (zh) * | 2021-07-08 | 2023-01-13 | 北京嘉楠捷思信息技术有限公司(Cn) | 一种神经网络运算的硬件加速装置和加速方法 |
CN113485951B (zh) * | 2021-07-31 | 2022-02-11 | 郑州信大捷安信息技术股份有限公司 | 一种基于fpga的dma读操作实现方法、fpga设备以及通信系统 |
CN113724127B (zh) * | 2021-08-02 | 2023-05-05 | 成都统信软件技术有限公司 | 一种图像矩阵卷积的实现方法、计算设备及储存介质 |
CN113688352B (zh) * | 2021-08-20 | 2023-08-04 | 上海思朗科技有限公司 | 一种数据处理系统、方法及装置 |
CN113709495B (zh) * | 2021-08-24 | 2023-11-24 | 天津津航计算技术研究所 | 一种基于pcie缓冲机制的同步解码方法 |
CN113704689B (zh) * | 2021-08-25 | 2022-11-11 | 北京大学 | 一种基于昇腾ai处理器的矩阵乘算子的处理方法及装置 |
CN113489619B (zh) * | 2021-09-06 | 2021-11-19 | 中国人民解放军国防科技大学 | 一种基于时间序列分析的网络拓扑推断方法及装置 |
US20230091581A1 (en) * | 2021-09-21 | 2023-03-23 | Bank Of America Corporation | Personal Data Discovery |
CN113869495B (zh) * | 2021-09-30 | 2024-02-06 | 苏州浪潮智能科技有限公司 | 神经网络卷积权重layout优化的方法、装置、设备及可读介质 |
CN113988280B (zh) * | 2021-10-26 | 2023-05-05 | 电子科技大学 | 一种基于二值化神经网络的阵列计算加速器架构 |
CN113918883B (zh) * | 2021-11-03 | 2022-05-27 | 海光信息技术股份有限公司 | 数据处理方法、装置以及设备和计算机可读存储介质 |
CN114116547B (zh) * | 2021-11-12 | 2024-03-26 | 成都立思方信息技术有限公司 | 一种可重构的电子对抗设备模拟器架构 |
CN113791889B (zh) * | 2021-11-18 | 2022-03-11 | 中国科学院成都文献情报中心 | 一种基于多级轮询队列控制器部署学习模型的方法 |
CN114217710B (zh) * | 2021-12-20 | 2023-07-21 | 平安付科技服务有限公司 | 弹框控制方法、装置、存储介质及系统 |
CN114372012B (zh) * | 2021-12-21 | 2024-02-20 | 中国科学院深圳先进技术研究院 | 一种通用、可配置的高能效池化计算单行输出系统和方法 |
CN114340097A (zh) * | 2021-12-30 | 2022-04-12 | 合肥市芯海电子科技有限公司 | 一种控制灯带的方法、装置、芯片和电子设备 |
CN114359683B (zh) * | 2021-12-31 | 2023-10-20 | 电子科技大学 | 一种面向文本定位的单内核hog高效异构加速方法 |
CN114567596B (zh) * | 2022-01-24 | 2024-04-05 | 浙江数秦科技有限公司 | 一种用于区块链的数据快速交换方法 |
CN114567670B (zh) * | 2022-01-25 | 2024-04-05 | 浙江数秦科技有限公司 | 一种区块链网络数据传输方法 |
CN114168522B (zh) * | 2022-02-14 | 2022-04-29 | 北京微核芯科技有限公司 | 一种数据传输方法、装置及传输部件 |
CN114692060A (zh) * | 2022-03-04 | 2022-07-01 | 支付宝(杭州)信息技术有限公司 | 数据处理方法和装置 |
CN114615207B (zh) * | 2022-03-10 | 2022-11-25 | 四川三思德科技有限公司 | 推流前的数据定向化处理方法及装置 |
CN114595173A (zh) * | 2022-03-18 | 2022-06-07 | 山东云海国创云计算装备产业创新中心有限公司 | 一种数据传输方法、系统及计算机可读存储介质 |
TWI795254B (zh) * | 2022-03-30 | 2023-03-01 | 天擎積體電路股份有限公司 | 支持廣播的模組系統、模組單元與廣播方法 |
WO2024004221A1 (ja) * | 2022-07-01 | 2024-01-04 | 日本電信電話株式会社 | 演算処理装置、演算処理方法、及び演算処理プログラム |
WO2024049568A1 (en) * | 2022-08-31 | 2024-03-07 | Microsoft Technology Licensing, Llc | Increased computation efficiency with multi-stage 8-bit floating point matrix multiplication with format conversion |
CN115412758B (zh) * | 2022-09-01 | 2023-11-14 | 北京奇艺世纪科技有限公司 | 一种视频处理方法及相关装置 |
CN115248701B (zh) * | 2022-09-21 | 2022-12-20 | 进迭时空(杭州)科技有限公司 | 一种处理器寄存器堆之间的零拷贝数据传输装置及方法 |
CN115269205B (zh) * | 2022-09-27 | 2022-12-27 | 之江实验室 | 一种面向神经网络计算的内存优化方法和装置 |
CN115629579B (zh) * | 2022-10-13 | 2023-11-07 | 南京天洑软件有限公司 | 一种cstr系统的控制方法及装置 |
CN115638833B (zh) * | 2022-12-23 | 2023-03-31 | 保定网城软件股份有限公司 | 一种监控数据处理方法及系统 |
CN116188247B (zh) * | 2023-02-06 | 2024-04-12 | 格兰菲智能科技有限公司 | 寄存器信息处理方法、装置、计算机设备、存储介质 |
CN116679988B (zh) * | 2023-08-02 | 2023-10-27 | 武汉芯必达微电子有限公司 | 硬件加速单元、硬件加速方法、芯片及存储介质 |
CN116720554B (zh) * | 2023-08-11 | 2023-11-14 | 南京师范大学 | 一种基于fpga技术的多段线性拟合的神经元电路实现方法 |
CN117202242B (zh) * | 2023-11-08 | 2024-02-06 | 南京邮电大学 | 一种基于粒子滤波模型的车联网中节点失效检测方法 |
CN117313803B (zh) * | 2023-11-28 | 2024-02-02 | 进迭时空(杭州)科技有限公司 | 基于risc-v向量处理器架构的滑动窗口2d卷积计算方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488565A (zh) * | 2015-11-17 | 2016-04-13 | 中国科学院计算技术研究所 | 加速深度神经网络算法的加速芯片的运算装置及方法 |
CN105721354A (zh) * | 2016-01-18 | 2016-06-29 | 云南磊奥明科技有限公司 | 片上网络互联方法及装置 |
CN106991476A (zh) * | 2016-01-20 | 2017-07-28 | 南京艾溪信息科技有限公司 | 用于执行人工神经网络正向运算的装置和方法 |
CN107301453A (zh) * | 2016-04-15 | 2017-10-27 | 北京中科寒武纪科技有限公司 | 支持离散数据表示的人工神经网络正向运算装置和方法 |
Family Cites Families (265)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3382806T2 (de) * | 1982-06-11 | 1996-11-14 | Mitsubishi Electric Corp | Vektorquantisierer |
EP0184791A1 (en) * | 1984-12-07 | 1986-06-18 | Nec Corporation | Information processing device capable of rapidly processing instructions of different groups |
US5047954A (en) * | 1986-01-17 | 1991-09-10 | International Business Machines Corporation | Graphics vector generator setup technique |
JP2785155B2 (ja) * | 1990-09-10 | 1998-08-13 | 富士通株式会社 | ニューロコンピュータの非同期制御方式 |
JPH04195251A (ja) * | 1990-10-03 | 1992-07-15 | Fujitsu Ltd | ニューラルネットの学習計算方法 |
US5283839A (en) * | 1990-12-31 | 1994-02-01 | Neurosciences Research Foundation, Inc. | Apparatus capable of figure-ground segregation |
JP3398673B2 (ja) * | 1994-08-31 | 2003-04-21 | エヌイーシーコンピュータテクノ株式会社 | ベクトルデータ処理装置 |
US7085710B1 (en) * | 1998-01-07 | 2006-08-01 | Microsoft Corporation | Vehicle computer system audio entertainment system |
US6477555B1 (en) * | 1999-07-07 | 2002-11-05 | Lucent Technologies Inc. | Method and apparatus for performing rapid convolution |
DE19948373A1 (de) * | 1999-10-06 | 2001-05-17 | Infineon Technologies Ag | Verfahren zur Kanalentzerrung |
DE60039587D1 (de) * | 2000-05-31 | 2008-09-04 | St Microelectronics Srl | Schaltungsanordnung zum Programmieren von Daten in Referenzzellen einer nichtflüchtigen Multibitspeicheranordnung |
GB2382887B (en) * | 2001-10-31 | 2005-09-28 | Alphamosaic Ltd | Instruction execution in a processor |
CN1142484C (zh) * | 2001-11-28 | 2004-03-17 | 中国人民解放军国防科学技术大学 | 微处理器向量处理方法 |
US6889216B2 (en) * | 2002-03-12 | 2005-05-03 | Knowm Tech, Llc | Physical neural network design incorporating nanotechnology |
US6670895B2 (en) * | 2002-05-01 | 2003-12-30 | Analog Devices, Inc. | Method and apparatus for swapping the contents of address registers |
US7065545B2 (en) * | 2002-05-07 | 2006-06-20 | Quintero-De-La-Garza Raul Gera | Computer methods of vector operation for reducing computation time |
US7475101B2 (en) * | 2003-09-29 | 2009-01-06 | International Business Machines Corporation | Method and structure for producing high performance linear algebra routines using streaming |
US7680208B2 (en) * | 2004-02-25 | 2010-03-16 | Nokia Corporation | Multiscale wireless communication |
US20050268195A1 (en) * | 2004-04-29 | 2005-12-01 | Lund Morten W | Apparatus and method for improving emulation speed of high-level languages in on-chip emulation systems |
JP4586443B2 (ja) * | 2004-07-16 | 2010-11-24 | トヨタ自動車株式会社 | 情報提供装置 |
WO2006074289A2 (en) * | 2005-01-07 | 2006-07-13 | Gesturetek, Inc. | Detecting and tracking objects in images |
US7490230B2 (en) * | 2005-02-04 | 2009-02-10 | Mips Technologies, Inc. | Fetch director employing barrel-incrementer-based round-robin apparatus for use in multithreading microprocessor |
US20070005248A1 (en) * | 2005-06-29 | 2007-01-04 | Intel Corporation | Data reconstruction in link-based interconnects |
US20070156685A1 (en) * | 2005-12-28 | 2007-07-05 | Hiroshi Inoue | Method for sorting data using SIMD instructions |
CN103646009B (zh) * | 2006-04-12 | 2016-08-17 | 索夫特机械公司 | 对载明并行和依赖运算的指令矩阵进行处理的装置和方法 |
US7574534B2 (en) * | 2006-05-23 | 2009-08-11 | International Business Machines Corporation | Method for using device enumeration information to identify an operating system running on a computer system |
US20080071851A1 (en) * | 2006-09-20 | 2008-03-20 | Ronen Zohar | Instruction and logic for performing a dot-product operation |
US8340795B2 (en) * | 2007-03-26 | 2012-12-25 | Google Inc. | Small removable audio player that attaches to a host media player |
US20080201234A1 (en) * | 2007-02-16 | 2008-08-21 | Microsoft Corporation | Live entities internet store service |
CN100588172C (zh) * | 2007-04-28 | 2010-02-03 | 腾讯科技(深圳)有限公司 | 一种实现网络预订存储的系统和方法 |
US8644151B2 (en) * | 2007-05-22 | 2014-02-04 | Cisco Technology, Inc. | Processing packet flows |
JP4325708B2 (ja) * | 2007-07-05 | 2009-09-02 | ソニー株式会社 | データ処理装置、データ処理方法およびデータ処理プログラム、符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム |
CN101369233A (zh) * | 2007-08-14 | 2009-02-18 | 国际商业机器公司 | 程序编译方法和编译器 |
JP2009200713A (ja) * | 2008-02-20 | 2009-09-03 | Sony Corp | 画像処理装置、画像処理方法、プログラム |
CN101315770B (zh) * | 2008-05-27 | 2012-01-25 | 北京承芯卓越科技有限公司 | 语音识别片上系统及采用其的语音识别方法 |
CN101295405A (zh) * | 2008-06-13 | 2008-10-29 | 西北工业大学 | 人像与车辆识别报警跟踪方法 |
EP2313847A4 (en) * | 2008-08-19 | 2015-12-09 | Digimarc Corp | METHODS AND SYSTEMS FOR PROCESSING CONTENT |
CN101685388B (zh) * | 2008-09-28 | 2013-08-07 | 北京大学深圳研究生院 | 执行比较运算的方法和装置 |
JP5376920B2 (ja) * | 2008-12-04 | 2013-12-25 | キヤノン株式会社 | コンボリューション演算回路、階層的コンボリューション演算回路及び物体認識装置 |
CN101782893B (zh) * | 2009-01-21 | 2014-12-24 | 上海芯豪微电子有限公司 | 可重构数据处理平台 |
CN101556565B (zh) * | 2009-01-22 | 2010-09-29 | 杭州中天微系统有限公司 | 嵌入式处理器的片上高性能dma |
CN101819570B (zh) * | 2009-02-27 | 2012-08-15 | 国际商业机器公司 | 网络环境中的用户信息处理和资源推荐的方法和系统 |
US8331168B2 (en) * | 2009-04-30 | 2012-12-11 | International Business Machines Corporation | Increased capacity heterogeneous storage elements |
CN101620524B (zh) * | 2009-07-03 | 2011-08-10 | 中国人民解放军国防科学技术大学 | 支持矩阵整体读写操作的矩阵寄存器文件 |
CN101615113A (zh) * | 2009-07-31 | 2009-12-30 | 清华大学 | 一条指令完成一次蝶形运算的微处理器实现方法 |
US8577950B2 (en) | 2009-08-17 | 2013-11-05 | International Business Machines Corporation | Matrix multiplication operations with data pre-conditioning in a high performance computing architecture |
CN101710272B (zh) * | 2009-10-28 | 2012-09-05 | 龙芯中科技术有限公司 | 指令调度装置和方法 |
US8996845B2 (en) * | 2009-12-22 | 2015-03-31 | Intel Corporation | Vector compare-and-exchange operation |
US8984043B2 (en) | 2009-12-23 | 2015-03-17 | Intel Corporation | Multiplying and adding matrices |
CN102014475B (zh) * | 2010-01-08 | 2012-01-04 | 华为技术有限公司 | 资源映射、码分复用方法及装置 |
JP5110098B2 (ja) * | 2010-02-08 | 2012-12-26 | カシオ計算機株式会社 | 表示処理装置、及び、プログラム |
CN101794239B (zh) * | 2010-03-16 | 2012-11-14 | 浙江大学 | 一种基于数据流模型的多处理器任务调度管理方法 |
CN101833468B (zh) * | 2010-04-28 | 2013-05-08 | 中国科学院自动化研究所 | 在高性能计算系统中生成向量处理指令集结构的方法 |
CN101833441B (zh) * | 2010-04-28 | 2013-02-13 | 中国科学院自动化研究所 | 并行向量处理引擎结构 |
CN101876892B (zh) * | 2010-05-20 | 2013-07-31 | 复旦大学 | 面向通信和多媒体应用的单指令多数据处理器电路结构 |
JP5408037B2 (ja) * | 2010-05-28 | 2014-02-05 | カシオ計算機株式会社 | 画像処理装置及び方法、並びにプログラム |
CN102346894B (zh) * | 2010-08-03 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 推荐信息的输出方法、系统及服务器 |
JP2012073998A (ja) * | 2010-08-31 | 2012-04-12 | Casio Comput Co Ltd | 画像配信システム、画像表示装置、画像配信サーバー、及びプログラム |
GB2483903A (en) * | 2010-09-24 | 2012-03-28 | Advanced Risc Mach Ltd | Instruction which specifies the type of the next instruction to be executed |
CN102005743A (zh) * | 2010-11-25 | 2011-04-06 | 沈阳工业大学 | 基于径向基神经网络的自适应继电保护装置 |
CN102012893B (zh) * | 2010-11-25 | 2012-07-18 | 中国人民解放军国防科学技术大学 | 一种可扩展向量运算装置 |
US8635431B2 (en) * | 2010-12-08 | 2014-01-21 | International Business Machines Corporation | Vector gather buffer for multiple address vector loads |
CN102541814B (zh) * | 2010-12-27 | 2015-10-14 | 北京国睿中数科技股份有限公司 | 用于数据通信处理器的矩阵计算装置和方法 |
CN102098623B (zh) * | 2011-01-27 | 2013-06-12 | 大唐移动通信设备有限公司 | 一种mbsfn操作域动态生成方法和mce |
US8892788B2 (en) * | 2011-02-22 | 2014-11-18 | Red Hat Israel, Ltd. | Exposing a DMA engine to guests in a virtual machine system |
CN102103479B (zh) * | 2011-03-02 | 2015-06-10 | 中兴通讯股份有限公司 | 浮点运算器及浮点运算的处理方法 |
PL3422178T3 (pl) * | 2011-04-01 | 2023-06-26 | Intel Corporation | Przyjazny dla wektorów format instrukcji i jego wykonanie |
CN102156637A (zh) * | 2011-05-04 | 2011-08-17 | 中国人民解放军国防科学技术大学 | 向量交叉多线程处理方法及向量交叉多线程微处理器 |
US8620853B2 (en) * | 2011-07-19 | 2013-12-31 | Smartsignal Corporation | Monitoring method using kernel regression modeling with pattern sequences |
CN102262525B (zh) * | 2011-08-29 | 2014-11-19 | 孙瑞玮 | 基于矢量运算的矢量浮点运算装置及方法 |
CN102360344B (zh) * | 2011-10-10 | 2014-03-12 | 西安交通大学 | 矩阵处理器及其指令集和嵌入式系统 |
CN102375805B (zh) * | 2011-10-31 | 2014-04-02 | 中国人民解放军国防科学技术大学 | 面向向量处理器的基于simd的fft并行计算方法 |
CN102508643A (zh) * | 2011-11-16 | 2012-06-20 | 刘大可 | 一种多核并行数字信号处理器及并行指令集的运行方法 |
CN102520906A (zh) * | 2011-12-13 | 2012-06-27 | 中国科学院自动化研究所 | 支持定浮点可重构的向量长度可配置的向量点积累加网络 |
CN104011651B (zh) * | 2011-12-22 | 2017-10-20 | 英特尔公司 | 用于执行向量计算指令的方法、装置和系统 |
CN107133018B (zh) * | 2011-12-22 | 2020-12-22 | 英特尔公司 | 执行groestl散列的指令 |
US9960917B2 (en) * | 2011-12-22 | 2018-05-01 | Intel Corporation | Matrix multiply accumulate instruction |
CN103999037B (zh) * | 2011-12-23 | 2020-03-06 | 英特尔公司 | 用于响应于单个指令来执行横向相加或相减的系统、装置和方法 |
US9798541B2 (en) * | 2011-12-23 | 2017-10-24 | Intel Corporation | Apparatus and method for propagating conditionally evaluated values in SIMD/vector execution using an input mask register |
CN104081337B (zh) * | 2011-12-23 | 2017-11-07 | 英特尔公司 | 用于响应于单个指令来执行横向部分求和的系统、装置和方法 |
CN104094182B (zh) * | 2011-12-23 | 2017-06-27 | 英特尔公司 | 掩码置换指令的装置和方法 |
CN104040482B (zh) * | 2011-12-28 | 2018-02-16 | 英特尔公司 | 用于在打包数据元素上执行增量解码的系统、装置和方法 |
KR20130090147A (ko) * | 2012-02-03 | 2013-08-13 | 안병익 | 신경망 컴퓨팅 장치 및 시스템과 그 방법 |
US8706971B1 (en) * | 2012-03-14 | 2014-04-22 | Netapp, Inc. | Caching and deduplication of data blocks in cache memory |
US9715383B2 (en) * | 2012-03-15 | 2017-07-25 | International Business Machines Corporation | Vector find element equal instruction |
US9575753B2 (en) * | 2012-03-15 | 2017-02-21 | International Business Machines Corporation | SIMD compare instruction using permute logic for distributed register files |
CN102629913B (zh) * | 2012-04-11 | 2014-12-24 | 浙江大学 | 适用于全局异步局部同步片上互连网络的路由器装置 |
CN104411911B (zh) * | 2012-05-31 | 2016-08-17 | 界标制图有限公司 | 钻井台的优化定位的系统和方法 |
CN102750127B (zh) * | 2012-06-12 | 2015-06-24 | 清华大学 | 一种协处理器 |
CN102724482B (zh) * | 2012-06-18 | 2015-08-26 | 西安电子科技大学 | 基于gps和gis的智能视觉传感网络运动目标接力跟踪系统 |
US10095516B2 (en) * | 2012-06-29 | 2018-10-09 | Intel Corporation | Vector multiplication with accumulation in large register space |
US9342479B2 (en) * | 2012-08-23 | 2016-05-17 | Qualcomm Incorporated | Systems and methods of data extraction in a vector processor |
CN102880341B (zh) * | 2012-08-29 | 2015-08-05 | 北京集创北方科技有限公司 | 触摸屏数据处理系统、方法及专用alu |
CN103699360B (zh) * | 2012-09-27 | 2016-09-21 | 北京中科晶上科技有限公司 | 一种向量处理器及其进行向量数据存取、交互的方法 |
CN103064086B (zh) * | 2012-11-04 | 2014-09-17 | 北京工业大学 | 一种基于深度信息的车辆跟踪方法 |
CN103002147A (zh) * | 2012-11-29 | 2013-03-27 | 广东欧珀移动通信有限公司 | 一种移动终端自动应答方法和装置 |
US9405538B2 (en) * | 2012-12-28 | 2016-08-02 | Intel Corporation | Functional unit having tree structure to support vector sorting algorithm and other algorithms |
US9419792B2 (en) * | 2012-12-28 | 2016-08-16 | Intel Corporation | Instruction for accelerating SNOW 3G wireless security algorithm |
US9804840B2 (en) * | 2013-01-23 | 2017-10-31 | International Business Machines Corporation | Vector Galois Field Multiply Sum and Accumulate instruction |
US9513906B2 (en) * | 2013-01-23 | 2016-12-06 | International Business Machines Corporation | Vector checksum instruction |
US9823924B2 (en) | 2013-01-23 | 2017-11-21 | International Business Machines Corporation | Vector element rotate and insert under mask instruction |
US9231898B2 (en) * | 2013-02-08 | 2016-01-05 | Machine Zone, Inc. | Systems and methods for multi-user multi-lingual communications |
US9430164B1 (en) * | 2013-02-08 | 2016-08-30 | Emc Corporation | Memory efficient sanitization of a deduplicated storage system |
JP5852601B2 (ja) * | 2013-02-26 | 2016-02-03 | 日本電信電話株式会社 | ネットワーク設計装置およびネットワーク設計プログラム |
US9349386B2 (en) * | 2013-03-07 | 2016-05-24 | Analog Device Global | System and method for processor wake-up based on sensor data |
US9542933B2 (en) | 2013-03-08 | 2017-01-10 | Analog Devices Global | Microphone circuit assembly and system with speech recognition |
US9094576B1 (en) * | 2013-03-12 | 2015-07-28 | Amazon Technologies, Inc. | Rendered audiovisual communication |
US9250916B2 (en) * | 2013-03-12 | 2016-02-02 | International Business Machines Corporation | Chaining between exposed vector pipelines |
US9417880B2 (en) * | 2013-03-15 | 2016-08-16 | Intel Corporation | Instruction for performing an overload check |
US20140317333A1 (en) * | 2013-04-17 | 2014-10-23 | Microchip Technology Incorporated | Direct Memory Access Controller with Hybrid Scatter-Gather Functionality |
CN104123250B (zh) * | 2013-04-25 | 2019-02-01 | 上海联影医疗科技有限公司 | 基于dma的数据传输方法 |
CN103294648B (zh) * | 2013-05-08 | 2016-06-01 | 中国人民解放军国防科学技术大学 | 支持多mac运算部件向量处理器的分块矩阵乘法向量化方法 |
CN104157285B (zh) * | 2013-05-14 | 2016-01-20 | 腾讯科技(深圳)有限公司 | 语音识别方法、装置及电子设备 |
CN103368701B (zh) * | 2013-07-12 | 2016-06-08 | 中国科学技术大学 | 一种基于吉文斯旋转的物理层多播多流数据传输方法 |
CN104376842A (zh) * | 2013-08-12 | 2015-02-25 | 清华大学 | 神经网络语言模型的训练方法、装置以及语音识别方法 |
US9405728B2 (en) * | 2013-09-05 | 2016-08-02 | Altera Corporation | Floating-point adder circuitry |
US9542626B2 (en) * | 2013-09-06 | 2017-01-10 | Toyota Jidosha Kabushiki Kaisha | Augmenting layer-based object detection with deep convolutional neural networks |
CN104461970B (zh) * | 2013-09-18 | 2019-06-11 | 中兴通讯股份有限公司 | Dma控制器、移动终端以及数据搬运方法 |
EP2851786A1 (en) * | 2013-09-23 | 2015-03-25 | Telefonaktiebolaget L M Ericsson (publ) | Instruction class for digital signal processors |
CN103530276B (zh) * | 2013-09-25 | 2016-06-22 | 中国科学技术大学 | 一种基于龙芯3b的自适应矩阵乘法优化方法 |
US20160293167A1 (en) * | 2013-10-10 | 2016-10-06 | Google Inc. | Speaker recognition using neural networks |
CN103646007A (zh) | 2013-12-18 | 2014-03-19 | 北京经纬恒润科技有限公司 | 数据处理方法、装置及系统 |
US11132328B2 (en) * | 2013-12-20 | 2021-09-28 | Rambus, Inc. | High level instructions with lower-level assembly code style primitives within a memory appliance for accessing memory |
US9507595B2 (en) * | 2014-02-28 | 2016-11-29 | International Business Machines Corporation | Execution of multi-byte memory access instruction specifying endian mode that overrides current global endian mode |
US9740659B2 (en) * | 2014-03-19 | 2017-08-22 | International Business Machines Corporation | Merging and sorting arrays on an SIMD processor |
CN103856727B (zh) * | 2014-03-24 | 2017-01-25 | 北京工业大学 | 一种多路实时视频拼接处理系统 |
CN105446970A (zh) * | 2014-06-10 | 2016-03-30 | 华为技术有限公司 | 推荐项目的方法和装置 |
CN104158753B (zh) * | 2014-06-12 | 2017-10-24 | 南京工程学院 | 基于软件定义网络的动态流调度方法及系统 |
CN104077138B (zh) * | 2014-06-27 | 2017-08-29 | 中国科学院计算技术研究所 | 一种集成网络路由器的众核处理器系统及其集成方法和实现方法 |
CN105849690B (zh) * | 2014-07-02 | 2019-03-15 | 上海兆芯集成电路有限公司 | 融合乘积-累加运算的处理器与方法 |
KR101844932B1 (ko) * | 2014-09-16 | 2018-04-03 | 한국전자통신연구원 | 신호처리 알고리즘이 통합된 심층 신경망 기반의 음성인식 장치 및 이의 학습방법 |
US10061746B2 (en) * | 2014-09-26 | 2018-08-28 | Intel Corporation | Instruction and logic for a vector format for processing computations |
CN104219505A (zh) * | 2014-09-29 | 2014-12-17 | 济南中维世纪科技有限公司 | 一种基于PCIe的多路高清模拟音视频采集系统 |
CN104376326B (zh) * | 2014-11-02 | 2017-06-16 | 吉林大学 | 一种用于图像场景识别的特征提取方法 |
US20160139921A1 (en) * | 2014-11-14 | 2016-05-19 | Intel Corporation | Vector instruction to compute coordiante of next point in a z-order curve |
CN105703978A (zh) * | 2014-11-24 | 2016-06-22 | 武汉物联远科技有限公司 | 智能家居控制系统和方法 |
EP3035204B1 (en) * | 2014-12-19 | 2018-08-15 | Intel Corporation | Storage device and method for performing convolution operations |
CN105787888A (zh) * | 2014-12-23 | 2016-07-20 | 联芯科技有限公司 | 人脸图像美化方法 |
US9851970B2 (en) * | 2014-12-23 | 2017-12-26 | Intel Corporation | Method and apparatus for performing reduction operations on a set of vector elements |
CN104537630A (zh) * | 2015-01-22 | 2015-04-22 | 厦门美图之家科技有限公司 | 一种基于年龄估计的图像美颜方法和装置 |
CN106034145B (zh) * | 2015-03-12 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 数据处理的方法和系统 |
CN106302837B (zh) * | 2015-05-12 | 2019-08-06 | 青岛海信宽带多媒体技术有限公司 | 一种光网络单元的mac地址表管理方法及装置 |
CN104834747B (zh) * | 2015-05-25 | 2018-04-27 | 中国科学院自动化研究所 | 基于卷积神经网络的短文本分类方法 |
CN104850845B (zh) * | 2015-05-30 | 2017-12-26 | 大连理工大学 | 一种基于非对称卷积神经网络的交通标志识别方法 |
CN104915322B (zh) * | 2015-06-09 | 2018-05-01 | 中国人民解放军国防科学技术大学 | 一种卷积神经网络硬件加速方法 |
US11755484B2 (en) * | 2015-06-26 | 2023-09-12 | Microsoft Technology Licensing, Llc | Instruction block allocation |
KR102371188B1 (ko) * | 2015-06-30 | 2022-03-04 | 삼성전자주식회사 | 음성 인식 장치 및 방법과 전자 장치 |
CN105068998B (zh) * | 2015-07-29 | 2017-12-15 | 百度在线网络技术(北京)有限公司 | 基于神经网络模型的翻译方法及装置 |
DE102015009981A1 (de) * | 2015-07-31 | 2017-02-02 | Eberhard Karls Universität Tübingen | Verfahren und Vorrichtung zur Bildsynthese |
US10198872B2 (en) * | 2015-08-10 | 2019-02-05 | The Board Of Trustees Of The Leland Stanford Junior University | 3D reconstruction and registration of endoscopic data |
CN105069304B (zh) * | 2015-08-18 | 2019-04-05 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种基于机器学习的评估预测asd的装置 |
CN106484682B (zh) * | 2015-08-25 | 2019-06-25 | 阿里巴巴集团控股有限公司 | 基于统计的机器翻译方法、装置及电子设备 |
CN105160340A (zh) * | 2015-08-31 | 2015-12-16 | 桂林电子科技大学 | 一种车辆品牌识别系统及方法 |
CN108027735B (zh) * | 2015-09-19 | 2021-08-27 | 微软技术许可有限责任公司 | 用于操作处理器的装置、方法和计算机可读存储介质 |
US10789525B2 (en) * | 2015-10-02 | 2020-09-29 | Adobe Inc. | Modifying at least one attribute of an image with at least one attribute extracted from another image |
US10409767B2 (en) | 2015-10-08 | 2019-09-10 | Via Alliance Semiconductors Co., Ltd. | Neural network unit with neural memory and array of neural processing units and sequencer that collectively shift row of data received from neural memory |
CN105405443A (zh) * | 2015-10-23 | 2016-03-16 | 福州瑞芯微电子股份有限公司 | 基于ape格式的音频信号压缩处理系统及方法 |
WO2017077121A1 (en) * | 2015-11-06 | 2017-05-11 | Thomson Licensing | Method for transfer of a style of a reference visual object to another visual object, and corresponding electronic device, computer readable program products and computer readable storage medium |
US10691456B2 (en) * | 2015-11-13 | 2020-06-23 | International Business Machines Corporation | Vector store instruction having instruction-specified byte count to be stored supporting big and little endian processing |
CN105468546B (zh) * | 2015-11-17 | 2017-04-12 | 中国科学院计算技术研究所 | 互连电路的数据处理装置和方法 |
CN105468335B (zh) * | 2015-11-24 | 2017-04-12 | 中国科学院计算技术研究所 | 流水级运算装置、数据处理方法及片上网络芯片 |
CN105354006B (zh) * | 2015-11-27 | 2017-11-21 | 中国科学院计算技术研究所 | 一种非线性函数的快速运算装置及其方法 |
CN105512676A (zh) * | 2015-11-30 | 2016-04-20 | 华南理工大学 | 一种智能终端上的食物识别方法 |
CN106844368B (zh) * | 2015-12-03 | 2020-06-16 | 华为技术有限公司 | 用于人机对话的方法、神经网络系统和用户设备 |
CN105609141B (zh) * | 2015-12-18 | 2018-08-10 | 中国科学院计算技术研究所 | 一种用于自动校正访问存储装置数据的装置及方法 |
US20170177348A1 (en) * | 2015-12-21 | 2017-06-22 | Intel Corporation | Instruction and Logic for Compression and Rotation |
US10467201B1 (en) * | 2015-12-23 | 2019-11-05 | Massachusetts Mutual Life Insurance Company | Systems and methods for integration and analysis of data records |
US10482380B2 (en) * | 2015-12-30 | 2019-11-19 | Amazon Technologies, Inc. | Conditional parallel processing in fully-connected neural networks |
US20170193397A1 (en) * | 2015-12-30 | 2017-07-06 | Accenture Global Solutions Limited | Real time organization pulse gathering and analysis using machine learning and artificial intelligence |
US20170193361A1 (en) * | 2015-12-31 | 2017-07-06 | Microsoft Technology Licensing, Llc | Neural network training performance optimization framework |
US9760807B2 (en) * | 2016-01-08 | 2017-09-12 | Siemens Healthcare Gmbh | Deep image-to-image network learning for medical image analysis |
CN108427990B (zh) * | 2016-01-20 | 2020-05-22 | 中科寒武纪科技股份有限公司 | 神经网络计算系统和方法 |
CN106991073B (zh) * | 2016-01-20 | 2020-06-05 | 中科寒武纪科技股份有限公司 | 用于向量运算的数据读写调度器及保留站 |
CN107704433A (zh) * | 2016-01-20 | 2018-02-16 | 南京艾溪信息科技有限公司 | 一种矩阵运算指令及其方法 |
CN107609642B (zh) * | 2016-01-20 | 2021-08-31 | 中科寒武纪科技股份有限公司 | 计算装置和方法 |
CN111580865B (zh) * | 2016-01-20 | 2024-02-27 | 中科寒武纪科技股份有限公司 | 一种向量运算装置及运算方法 |
CN106991478B (zh) * | 2016-01-20 | 2020-05-08 | 中科寒武纪科技股份有限公司 | 用于执行人工神经网络反向训练的装置和方法 |
CN105787557B (zh) * | 2016-02-23 | 2019-04-19 | 北京工业大学 | 一种计算机智能识别的深层神经网络结构设计方法 |
KR101784944B1 (ko) * | 2016-02-26 | 2017-10-12 | 삼성중공업 주식회사 | 과전압 억제필터의 구성방법 |
CN105719327B (zh) * | 2016-02-29 | 2018-09-07 | 北京中邮云天科技有限公司 | 一种艺术风格化图像处理方法 |
CN205582481U (zh) * | 2016-03-16 | 2016-09-14 | 中航华东光电(上海)有限公司 | 可加载个性化特征模型的语音识别系统 |
CN107203775B (zh) * | 2016-03-18 | 2021-07-27 | 斑马智行网络(香港)有限公司 | 一种图像分类的方法、装置和设备 |
CN105844330B (zh) * | 2016-03-22 | 2019-06-28 | 华为技术有限公司 | 神经网络处理器的数据处理方法及神经网络处理器 |
CN105892989B (zh) * | 2016-03-28 | 2017-04-12 | 中国科学院计算技术研究所 | 一种神经网络加速器及其运算方法 |
CN105869117B (zh) * | 2016-03-28 | 2021-04-02 | 上海交通大学 | 一种针对深度学习超分辨率技术的gpu加速方法 |
CN105912476A (zh) * | 2016-04-06 | 2016-08-31 | 中国科学院计算技术研究所 | 片上重复寻址的方法及装置 |
CN105912667A (zh) * | 2016-04-12 | 2016-08-31 | 玉环看知信息科技有限公司 | 一种信息推荐方法、装置及移动终端 |
EP3444757B1 (en) * | 2016-04-15 | 2021-07-07 | Cambricon Technologies Corporation Limited | Discrete data representation supported device and method for forward operation of artificial neural network |
CN107301454B (zh) * | 2016-04-15 | 2021-01-22 | 中科寒武纪科技股份有限公司 | 支持离散数据表示的人工神经网络反向训练装置和方法 |
CN108416437B (zh) * | 2016-04-18 | 2021-08-03 | 中国科学院计算技术研究所 | 用于乘加运算的人工神经网络的处理系统及方法 |
CN107305484B (zh) * | 2016-04-19 | 2021-11-05 | 中科寒武纪科技股份有限公司 | 一种非线性函数运算装置及方法 |
CN105869024A (zh) * | 2016-04-20 | 2016-08-17 | 北京小米移动软件有限公司 | 商品的推荐方法及装置 |
CN105956608A (zh) * | 2016-04-21 | 2016-09-21 | 恩泊泰(天津)科技有限公司 | 一种基于深度学习的目标定位、分类算法 |
CN105913039B (zh) * | 2016-04-26 | 2020-08-18 | 北京光年无限科技有限公司 | 基于视觉和语音的对话数据交互处理方法及装置 |
CN106022468B (zh) * | 2016-05-17 | 2018-06-01 | 成都启英泰伦科技有限公司 | 人工神经网络处理器集成电路及该集成电路的设计方法 |
CN106067031B (zh) * | 2016-05-26 | 2019-05-24 | 北京新长征天高智机科技有限公司 | 基于人工纠错机制与深度学习网络协作机器视觉识别系统 |
CN105895082A (zh) * | 2016-05-30 | 2016-08-24 | 乐视控股(北京)有限公司 | 声学模型训练方法、语音识别方法及装置 |
CN106095834A (zh) * | 2016-06-01 | 2016-11-09 | 竹间智能科技(上海)有限公司 | 基于话题的智能对话方法及系统 |
CN106066783A (zh) * | 2016-06-02 | 2016-11-02 | 华为技术有限公司 | 基于幂次权重量化的神经网络前向运算硬件结构 |
CN106096542B (zh) * | 2016-06-08 | 2020-02-11 | 中国科学院上海高等研究院 | 基于距离预测信息的图像视频场景识别方法 |
CN106127672B (zh) * | 2016-06-21 | 2019-03-12 | 南京信息工程大学 | 基于fpga的图像纹理特征提取算法 |
CN106126507B (zh) * | 2016-06-22 | 2019-08-09 | 哈尔滨工业大学深圳研究生院 | 一种基于字符编码的深度神经翻译方法及系统 |
CN106227507B (zh) * | 2016-07-11 | 2019-10-18 | 北京深鉴智能科技有限公司 | 计算系统及其控制器 |
CN106228512A (zh) * | 2016-07-19 | 2016-12-14 | 北京工业大学 | 基于学习率自适应的卷积神经网络图像超分辨率重建方法 |
CN106228162B (zh) | 2016-07-22 | 2019-05-17 | 王威 | 一种基于深度学习的移动机器人快速物体识别方法 |
CN106296667A (zh) * | 2016-08-01 | 2017-01-04 | 乐视控股(北京)有限公司 | 手形检测方法和系统 |
CN106250103A (zh) * | 2016-08-04 | 2016-12-21 | 东南大学 | 一种卷积神经网络循环卷积计算数据重用的系统 |
US9864933B1 (en) * | 2016-08-23 | 2018-01-09 | Jasmin Cosic | Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation |
CN106408595A (zh) * | 2016-08-31 | 2017-02-15 | 上海交通大学 | 一种基于神经网络画风学习的图像渲染方法 |
US9922432B1 (en) * | 2016-09-02 | 2018-03-20 | Artomatix Ltd. | Systems and methods for providing convolutional neural network based image synthesis using stable and controllable parametric models, a multiscale synthesis framework and novel network architectures |
CN106408086A (zh) * | 2016-09-12 | 2017-02-15 | 上海影城有限公司 | 用于图像优化的深度学习神经网络处理方法及系统 |
CN106503055B (zh) * | 2016-09-27 | 2019-06-04 | 天津大学 | 一种从结构化文本到图像描述的生成方法 |
CN106650922B (zh) * | 2016-09-29 | 2019-05-03 | 清华大学 | 硬件神经网络转换方法、计算装置、软硬件协作系统 |
WO2018058509A1 (en) * | 2016-09-30 | 2018-04-05 | Intel Corporation | Dynamic neural network surgery |
CN109863537B (zh) * | 2016-10-21 | 2023-07-04 | 谷歌有限责任公司 | 风格化输入图像 |
CN106447034B (zh) * | 2016-10-27 | 2019-07-30 | 中国科学院计算技术研究所 | 一种基于数据压缩的神经网络处理器、设计方法、芯片 |
CN106548208B (zh) * | 2016-10-28 | 2019-05-28 | 杭州米绘科技有限公司 | 一种照片图像快速智能风格化方法 |
CN106778472A (zh) * | 2016-11-17 | 2017-05-31 | 成都通甲优博科技有限责任公司 | 基于深度学习的输电走廊常见侵入物目标检测与识别方法 |
CN106780367B (zh) * | 2016-11-28 | 2019-11-15 | 上海大学 | 基于字典学习的hdr照片风格转移方法 |
US10916001B2 (en) * | 2016-11-28 | 2021-02-09 | Adobe Inc. | Facilitating sketch to painting transformations |
CN107239824A (zh) * | 2016-12-05 | 2017-10-10 | 北京深鉴智能科技有限公司 | 用于实现稀疏卷积神经网络加速器的装置和方法 |
CN106778928B (zh) * | 2016-12-21 | 2020-08-04 | 广州华多网络科技有限公司 | 图像处理方法及装置 |
CN106815321A (zh) * | 2016-12-27 | 2017-06-09 | 深圳前海勇艺达机器人有限公司 | 基于智能聊天机器人的聊天方法及装置 |
CN106782501B (zh) * | 2016-12-28 | 2020-07-24 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音特征提取方法和装置 |
CN106604216A (zh) * | 2016-12-31 | 2017-04-26 | 广州博冠光电技术有限公司 | 一种双向语音与操作控制数据的传输控制方法及系统 |
CN106775599B (zh) * | 2017-01-09 | 2019-03-01 | 南京工业大学 | 递归神经网络的多计算单元粗粒度可重构系统及方法 |
CN106898350A (zh) * | 2017-01-16 | 2017-06-27 | 华南理工大学 | 一种基于深度学习的智能工业机器人语音交互与控制方法 |
CN106844627B (zh) * | 2017-01-20 | 2020-06-19 | 竹间智能科技(上海)有限公司 | 基于对话系统的在线学习方法及装置 |
CN106845549B (zh) * | 2017-01-22 | 2020-08-21 | 珠海习悦信息技术有限公司 | 一种基于多任务学习的场景与目标识别的方法及装置 |
CN106709532B (zh) * | 2017-01-25 | 2020-03-10 | 京东方科技集团股份有限公司 | 图像处理方法和装置 |
CN106952235B (zh) * | 2017-02-10 | 2019-07-26 | 维沃移动通信有限公司 | 一种图像处理方法和移动终端 |
US10482639B2 (en) * | 2017-02-21 | 2019-11-19 | Adobe Inc. | Deep high-resolution style synthesis |
CN106951961B (zh) * | 2017-02-24 | 2019-11-26 | 清华大学 | 一种粗粒度可重构的卷积神经网络加速器及系统 |
CN107066239A (zh) * | 2017-03-01 | 2017-08-18 | 智擎信息系统(上海)有限公司 | 一种实现卷积神经网络前向计算的硬件结构 |
CN106850673A (zh) * | 2017-03-09 | 2017-06-13 | 福建省汽车工业集团云度新能源汽车股份有限公司 | 基于声纹识别的汽车用户登入方法及装置 |
CN107038159B (zh) * | 2017-03-09 | 2019-07-12 | 清华大学 | 一种基于无监督领域自适应的神经网络机器翻译方法 |
CN106920545B (zh) * | 2017-03-21 | 2020-07-28 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音特征提取方法和装置 |
CN106887225B (zh) * | 2017-03-21 | 2020-04-07 | 百度在线网络技术(北京)有限公司 | 基于卷积神经网络的声学特征提取方法、装置和终端设备 |
CN106898353A (zh) * | 2017-03-23 | 2017-06-27 | 东华理工大学 | 一种智能家居语音控制系统及其语音识别方法 |
CN107169503B (zh) * | 2017-03-27 | 2020-05-22 | 中国科学院深圳先进技术研究院 | 一种室内场景的分类方法及装置 |
CN106952224B (zh) * | 2017-03-30 | 2019-08-13 | 电子科技大学 | 一种基于卷积神经网络的图像风格转移方法 |
CN106970896B (zh) * | 2017-03-30 | 2020-05-12 | 中国人民解放军国防科学技术大学 | 面向向量处理器的二维矩阵卷积的向量化实现方法 |
US10152768B2 (en) * | 2017-04-14 | 2018-12-11 | Facebook, Inc. | Artifact reduction for image style transfer |
CN107133222A (zh) * | 2017-04-17 | 2017-09-05 | 中译语通科技(北京)有限公司 | 一种基于异质架构的实时语言转换装置及转换方法 |
CN107194938A (zh) * | 2017-04-17 | 2017-09-22 | 上海大学 | 基于深度卷积神经网络的图像轮廓检测方法 |
CN107092883A (zh) | 2017-04-20 | 2017-08-25 | 上海极链网络科技有限公司 | 物体识别追踪方法 |
CN107193773A (zh) * | 2017-04-20 | 2017-09-22 | 北京安云世纪科技有限公司 | 一种数据处理方法、装置及移动终端 |
CN107171932B (zh) * | 2017-04-27 | 2021-06-08 | 腾讯科技(深圳)有限公司 | 一种图片风格转换方法、装置及系统 |
CN107067825A (zh) * | 2017-04-27 | 2017-08-18 | 四川九洲空管科技有限责任公司 | 一种机载防撞系统的语音告警系统及其语音告警方法 |
CN107124609A (zh) * | 2017-04-27 | 2017-09-01 | 京东方科技集团股份有限公司 | 一种视频图像的处理系统、其处理方法及显示装置 |
DE112017007492T5 (de) * | 2017-04-28 | 2020-02-13 | MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. | System und Verfahren zur Erfassung von Objekten in einem digitalen Bild und System und Verfahren zur Neubewertung von Objekterfassungen |
CN107247930A (zh) * | 2017-05-26 | 2017-10-13 | 西安电子科技大学 | 基于cnn和选择性注意机制的sar图像目标检测方法 |
CN107291704B (zh) * | 2017-05-26 | 2020-12-11 | 北京搜狗科技发展有限公司 | 处理方法和装置、用于处理的装置 |
US10504267B2 (en) * | 2017-06-06 | 2019-12-10 | Adobe Inc. | Generating a stylized image or stylized animation by matching semantic features via an appearance guide, a segmentation guide, and/or a temporal guide |
CN107301383B (zh) * | 2017-06-07 | 2020-11-24 | 华南理工大学 | 一种基于Fast R-CNN的路面交通标志识别方法 |
CN109036446B (zh) * | 2017-06-08 | 2022-03-04 | 腾讯科技(深圳)有限公司 | 一种音频数据处理方法以及相关设备 |
CN107240185B (zh) * | 2017-06-23 | 2019-09-20 | 深圳怡化电脑股份有限公司 | 一种冠字号识别方法、装置、设备及存储介质 |
US9959272B1 (en) * | 2017-07-21 | 2018-05-01 | Memsource a.s. | Automatic classification and translation of written segments |
US11227108B2 (en) * | 2017-09-11 | 2022-01-18 | Nec Corporation | Convolutional neural network architecture with adaptive filters |
CN113837939A (zh) * | 2017-10-09 | 2021-12-24 | 华为技术有限公司 | 一种图像处理方法及设备 |
KR102434729B1 (ko) * | 2017-10-20 | 2022-08-19 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 처리방법 및 장치 |
CN107730474B (zh) * | 2017-11-09 | 2022-02-22 | 京东方科技集团股份有限公司 | 图像处理方法、处理装置和处理设备 |
CN107977704B (zh) * | 2017-11-10 | 2020-07-31 | 中国科学院计算技术研究所 | 权重数据存储方法和基于该方法的神经网络处理器 |
US11501153B2 (en) * | 2017-12-28 | 2022-11-15 | Intel Corporation | Methods and apparatus for training a neural network |
US11113578B1 (en) * | 2020-04-13 | 2021-09-07 | Adobe, Inc. | Learned model-based image rendering |
-
2017
- 2017-10-30 CN CN201811440484.6A patent/CN109522254B/zh active Active
- 2017-10-30 CN CN201711212122.7A patent/CN107833176A/zh active Pending
- 2017-10-30 CN CN201810849483.0A patent/CN109062606B/zh active Active
- 2017-10-30 CN CN201711212991.XA patent/CN107992486A/zh active Pending
- 2017-10-30 CN CN201810801236.3A patent/CN109117948B/zh active Active
- 2017-10-30 CN CN201711212656.XA patent/CN107832843B/zh active Active
- 2017-10-30 CN CN201810849497.2A patent/CN109086074B/zh active Active
- 2017-10-30 CN CN201810849496.8A patent/CN109062607B/zh active Active
- 2017-10-30 CN CN201810849498.7A patent/CN108958801B/zh active Active
- 2017-10-30 CN CN201810849484.5A patent/CN109117183B/zh active Active
- 2017-10-30 CN CN201810849485.XA patent/CN108874444A/zh active Pending
- 2017-10-30 CN CN201811440571.1A patent/CN109542515B/zh active Active
- 2017-10-30 CN CN201711244020.3A patent/CN109725936B/zh active Active
- 2017-10-30 CN CN201810801238.2A patent/CN109003603A/zh active Pending
- 2017-10-30 CN CN201810849480.7A patent/CN108984211B/zh active Active
- 2017-10-30 CN CN201711212660.6A patent/CN107895191B/zh active Active
- 2017-10-30 CN CN201810799988.0A patent/CN109003132B/zh active Active
- 2017-10-30 CN CN201811436410.5A patent/CN109542514B/zh active Active
- 2017-10-30 CN CN201711212995.8A patent/CN107832845A/zh active Pending
- 2017-10-30 CN CN201711036374.9A patent/CN109726806A/zh active Pending
- 2017-10-30 CN CN201810849509.1A patent/CN109117184A/zh active Pending
- 2017-10-30 CN CN201810799987.6A patent/CN109117947A/zh active Pending
- 2017-10-30 CN CN201810799954.1A patent/CN108986022A/zh active Pending
- 2017-10-30 CN CN201810800665.9A patent/CN108898554A/zh active Pending
- 2017-10-30 CN CN201711211933.5A patent/CN107844832A/zh active Pending
- 2017-10-30 CN CN201711212125.0A patent/CN107832804A/zh active Pending
- 2017-10-30 CN CN201810849492.XA patent/CN108874445A/zh active Pending
- 2017-10-30 CN CN201810849499.1A patent/CN109086075B/zh active Active
- 2017-10-30 CN CN201810800001.2A patent/CN108875926A/zh active Pending
- 2017-10-30 CN CN201810800664.4A patent/CN109064384A/zh active Pending
- 2017-10-30 CN CN201810801239.7A patent/CN109034382A/zh active Pending
- 2017-10-30 CN CN201711212994.3A patent/CN107832844A/zh active Pending
- 2017-10-30 CN CN201810849479.4A patent/CN109063830A/zh active Pending
- 2017-10-30 CN CN201810849491.5A patent/CN109063831A/zh active Pending
- 2017-10-30 CN CN201711212123.1A patent/CN107993206A/zh active Pending
- 2017-10-30 CN CN201810849486.4A patent/CN109062539A/zh active Pending
- 2017-10-30 CN CN201810849488.3A patent/CN109034383B/zh active Active
-
2018
- 2018-09-13 CN CN201880002336.8A patent/CN109997154A/zh active Pending
- 2018-09-13 CN CN201911058910.4A patent/CN110689126B/zh active Active
- 2018-09-13 CN CN201911062123.7A patent/CN110610236B/zh active Active
- 2018-09-13 CN CN202010190142.4A patent/CN111160548B/zh active Active
- 2018-09-13 EP EP18873474.3A patent/EP3709224A4/en active Pending
- 2018-09-13 CN CN201910070501.XA patent/CN110084361B/zh active Active
- 2018-09-13 CN CN202010190143.9A patent/CN111160549A/zh active Pending
- 2018-09-13 CN CN202010336354.9A patent/CN111310910B/zh active Active
- 2018-09-13 CN CN201911058839.XA patent/CN110689125A/zh active Pending
- 2018-09-13 CN CN201910067288.7A patent/CN109523020A/zh active Pending
- 2018-09-13 CN CN202010309559.8A patent/CN111291880A/zh active Pending
- 2018-09-13 CN CN202010189354.0A patent/CN111178521A/zh active Pending
- 2018-09-13 WO PCT/CN2018/105463 patent/WO2019085655A1/zh unknown
- 2018-09-13 US US16/760,235 patent/US20210182077A1/en active Pending
-
2020
- 2020-12-11 US US17/119,029 patent/US20210157992A1/en active Pending
- 2020-12-11 US US17/119,148 patent/US11922132B2/en active Active
- 2020-12-11 US US17/119,309 patent/US11762631B2/en active Active
- 2020-12-11 US US17/119,234 patent/US20210158484A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488565A (zh) * | 2015-11-17 | 2016-04-13 | 中国科学院计算技术研究所 | 加速深度神经网络算法的加速芯片的运算装置及方法 |
CN105721354A (zh) * | 2016-01-18 | 2016-06-29 | 云南磊奥明科技有限公司 | 片上网络互联方法及装置 |
CN106991476A (zh) * | 2016-01-20 | 2017-07-28 | 南京艾溪信息科技有限公司 | 用于执行人工神经网络正向运算的装置和方法 |
CN107301453A (zh) * | 2016-04-15 | 2017-10-27 | 北京中科寒武纪科技有限公司 | 支持离散数据表示的人工神经网络正向运算装置和方法 |
Non-Patent Citations (1)
Title |
---|
TAO LUO ET AL.: "DaDianNao:A Machine-Learning Supercomputer", 《IEEE TRANSACTIONS ON COMPUTERS》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832718A (zh) * | 2020-06-24 | 2020-10-27 | 上海西井信息科技有限公司 | 芯片架构 |
CN111832718B (zh) * | 2020-06-24 | 2021-08-03 | 上海西井信息科技有限公司 | 芯片架构 |
CN111860818A (zh) * | 2020-07-23 | 2020-10-30 | 哈尔滨工业大学(威海) | 基于智能芯片的som神经网络算法处理方法 |
CN111860818B (zh) * | 2020-07-23 | 2022-11-08 | 哈尔滨工业大学(威海) | 基于智能芯片的som神经网络算法处理方法 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110689126B (zh) | 一种用于执行神经网络运算的装置 | |
CN107729990B (zh) | 支持离散数据表示的用于执行正向运算的装置及方法 | |
CN109104876B (zh) | 一种运算装置及相关产品 | |
CN109543832B (zh) | 一种计算装置及板卡 | |
CN106990940B (zh) | 一种向量计算装置及运算方法 | |
CN111656367A (zh) | 神经网络加速器的系统和体系结构 | |
US11366998B2 (en) | Neuromorphic accelerator multitasking | |
WO2017185347A1 (zh) | 用于执行循环神经网络和lstm运算的装置和方法 | |
WO2022046570A1 (en) | Vector processor architectures | |
CN111199275B (zh) | 用于神经网络的片上系统 | |
EP3444757A1 (en) | Discrete data representation supported device and method for forward operation of artificial neural network | |
CN110059797B (zh) | 一种计算装置及相关产品 | |
US9047069B2 (en) | Computer implemented method of electing K extreme entries from a list using separate section comparisons | |
EP3444758B1 (en) | Discrete data representation-supporting apparatus and method for back-training of artificial neural network | |
CN109582364B (zh) | 基于忆阻器的精简指令集处理器 | |
CN111930681A (zh) | 一种计算装置及相关产品 | |
CN111178492B (zh) | 计算装置及相关产品、执行人工神经网络模型的计算方法 | |
CN113222126B (zh) | 数据处理装置、人工智能芯片 | |
WO2020125092A1 (zh) | 计算装置及板卡 | |
CN111222632A (zh) | 计算装置、计算方法及相关产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |