[go: up one dir, main page]

CN111176727B - 计算装置以及计算方法 - Google Patents

计算装置以及计算方法 Download PDF

Info

Publication number
CN111176727B
CN111176727B CN202010189355.5A CN202010189355A CN111176727B CN 111176727 B CN111176727 B CN 111176727B CN 202010189355 A CN202010189355 A CN 202010189355A CN 111176727 B CN111176727 B CN 111176727B
Authority
CN
China
Prior art keywords
data
instruction
chip
storage medium
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010189355.5A
Other languages
English (en)
Other versions
CN111176727A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Cambricon Information Technology Co Ltd
Original Assignee
Shanghai Cambricon Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Cambricon Information Technology Co Ltd filed Critical Shanghai Cambricon Information Technology Co Ltd
Publication of CN111176727A publication Critical patent/CN111176727A/zh
Application granted granted Critical
Publication of CN111176727B publication Critical patent/CN111176727B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30079Pipeline control instructions, e.g. multicycle NOP
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0495Quantised networks; Sparse networks; Compressed networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Optimization (AREA)
  • Neurology (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Complex Calculations (AREA)
  • Advance Control (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本申请提供了一种计算装置及神经网络的处理系统,所述计算装置包括:存储器、寄存器单元、互联模块、运算单元、控制单元和数据访问单元。

Description

计算装置以及计算方法
技术领域
本申请属于神经网络运算领域,尤其涉及一种计算装置以及计算方法。
背景技术
数据处理是大部分算法需要经过的步骤或阶段,在计算机引入数据处理领域后,越来越多的数据处理通过计算机来实现,现有的算法中有计算设备在进行神经网络的数据计算时速度慢,效率低。
申请内容
有鉴于此,本申请提供一种计算装置以及计算方法,能够提高计算速度,并且运算性能高效。
本申请提供一种一种计算装置,所述计算装置包括:片内存储器、片外存储介质、片内地址索引单元、片内处理单元,所述片内处理单元包括:互联模块、运算单元;其中,
数据划分模块,用于根据预定的数据划分原则将片上存储介质和/或片外存储介质的数据划分为不同的数据块,所述数据划分原则包括将重用距离低于预定距离阈值的数据划分在同一个数据块;
数据索引模块,用于根据预定的替换策略的顺序关系,依次载入不同的所述数据块到至少一个片上处理单元的互联模块,被载入的所述数据块中的重复数据在片内重复寻址;
互联模块、用于将所述数据块发送至运算单元;
运算单元,用于执行指令调用计算器对所述数据块执行运算操作得到运算结果。
附图说明
图1-1是本申请实施例提供的计算装置的另一种结构示意图。
图1-2是本申请实施例提供的卷积计算指令的流程示意图。
图2-1是本申请片上重复寻址的装置的优选实施例的总体结构的示例的框图;
图2-2是本申请片上重复寻址的方法的优选实施例的数据地址划分图;
图2-3是本申请片上重复寻址的方法的优选实施例的数据划分示意图之一;
图2-4是本申请片上重复寻址的方法的优选实施例的数据划分示意图之二;
图2-5是本申请片上重复寻址的方法的优选实施例的替换策略示意图;
图2-6是本申请片上重复寻址的方法的一种具体实施例的流程图;
图2-7是本申请片上重复寻址的方法的片上重复索引优选实施例示意图。
具体实施方式
参阅图1-1,图1-1提供了一种计算装置,该计算装置包括:存储器611(可选的)、寄存器单元612、互联模块613、运算单元614、控制单元615和数据访问单元616;
其中,运算单元614包括:加法计算器、乘法计算器、比较器、激活运算器中至少二种。
互联模块613,用于控制运算单元614中计算器的连接关系使得该至少二种计算器组成不同的计算拓扑结构。
指令存储单元(可以是寄存器单元,指令缓存,高速暂存存储器)612,用于存储该运算指令、数据块的在存储介质的地址、运算指令对应的计算拓扑结构。
该运算指令可以包括:操作域以及操作码,以卷积计算指令为例,如下表所示,其中,寄存器0、寄存器1、寄存器堆2、寄存器3、寄存器4可以为操作域。其中,每个寄存器0、寄存器1、寄存器2、寄存器3、寄存器4可以是一个或者多个寄存器。
Figure BDA0002414669130000021
存储器611可以为片外存储器,当然在实际应用中,参见图1-1,当为片内存储器时,该片内存储器可以为缓存,具体的,可以为高速暂存缓存,用于存储数据块,该数据块具体可以为n维数据,n为大于等于1的整数,例如,n=1时,为1维数据,即向量,如n=2时,为2维数据,即矩阵,如n=3或3以上时,为多维数据。
控制单元615,用于从寄存器单元612内提取运算指令、该运算指令对应的操作域以及该运算指令对应的第一计算拓扑结构,将该运算指令译码成执行指令,该执行指令用于控制运算单元执行运算操作,将该操作域传输至数据访问单元616。
数据访问单元616,用于从存储器611中提取该操作域对应的数据块,并将该数据块传输至互联模块613。
互联模块613、用于接收数据块,将该数据块发送至运算单元614。
运算单元614,用于该执行指令调用运算单元614的计算器对该数据块执行运算操作得到运算结果,将该运算结果传输至数据访问单元存储在存储器内。一个实施例里,运算单元614,用于按第一计算拓扑结构以及该执行指令调用计算器对数据块执行运算操作得到运算结果,将该运算结果传输至数据访问单元存储在存储器内。
可选的,互连模块构成主运算模块和所述多个从运算模块之间的连续或离散化数据的数据通路,互连模块为以下任一种结构:树状结构、环状结构、网格状结构、分级互连、总线结构。
在一种可选的实施例中,上述第一计算拓扑结构可以为:乘法运算器-加法运算器-加法运算器 -激活运算器。
下面通过不同的运算指令来说明如图1-1所示的计算装置的具体计算方法,这里的运算指令以卷积计算指令为例,该卷积计算指令可以应用在神经网络中,所以该卷积计算指令也可以称为卷积神经网络。对于卷积计算指令来说,其实际需要执行的公式可以为:s=s(∑wxi+b),其中,即将卷积核w乘以输入数据xi,进行求和,然后加上偏置b后做激活运算,得到最终的输出结果s。依据该公式即可以得到该计算拓扑结构为,乘法运算器-加法运算器-(可选的)激活运算器。
上述运算指令可以包括指令集,该指令集包括:卷积神经网络指令,有不同功能的卷积神经网络COMPUTE指令以及CONFIG指令、IO指令、NOP指令、JUMP指令和MOVE指令。在一种实施例中,COMPUTE指令包括:
卷积神经网络指令,根据该指令,装置分别从存储器(优选的高速暂存存储器或者标量寄存器堆)的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积运算直接得到输出结果。即该指令不执行后续的操作,直接做卷积运算得到输出结果。
卷积神经网络sigmoid指令,根据该指令,装置分别从存储器(优选的高速暂存存储器或者标量寄存器堆)的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,优选的,然后将输出结果做sigmoid激活;
卷积神经网络TanH指令,根据该指令,装置分别从存储器(优选的高速暂存存储器)的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,优选的,然后将输出结果做TanH激活;
卷积神经网络ReLU指令,根据该指令,装置分别从存储器(优选的高速暂存存储器)的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,优选的,然后将输出结果做ReLU激活;以及
卷积神经网络group指令,根据该指令,装置分别从存储器(优选的高速暂存存储器)的指定地址取出指定大小的输入数据和卷积核,划分group之后,在卷积运算部件中做卷积操作,优选的,然后将输出结果做激活。
CONFIG指令在每层人工神经网络计算开始前配置当前层计算需要的各种常数。
IO指令实现从外部存储空间读入计算需要的输入数据以及在计算完成后将数据存回至外部空间。
NOP指令负责清空当前装置内部所有控制信号缓存队列中的控制信号,保证NOP指令之前的所有指令全部指令完毕。NOP指令本身不包含任何计算操作;
JUMP指令负责控制将要从指令存储单元读取的下一条指令地址的跳转,用来实现控制流的跳转;
MOVE指令负责将装置内部地址空间某一地址的数据搬运至装置内部地址空间的另一地址,该过程独立于运算单元,在执行过程中不占用运算单元的资源。
如图1-1所示的计算装置执行卷积计算指令的方法具体可以为:
控制单元615从寄存器单元612内提取卷积计算指令、卷积计算指令对应的操作域,控制单元将该操作域传输至数据访问单元。
数据访问单元从存储器内提取该操作域对应的卷积核w和偏置b(当b为0时,不需要提取偏置b),将卷积核w和偏置b传输至运算单元。
运算单元的乘法运算器将卷积核w与输入数据Xi执行乘法运算以后得到第一结果,将第一结果输入到加法运算器执行加法运算得到第二结果,将第二结果和偏置b执行加法运算得到第三结果,将第三结果输到激活运算器执行激活运算得到输出结果s,将输出结果s传输至数据访问单元存储至存储器内。其中,每个步骤后都可以直接输出结果传输到数据访问存储至存储器内。另外,将第二结果和偏置b执行加法运算得到第三结果这一步骤为可选步骤,即当b为0时,不需要这个步骤。
本申请提供的技术方案通过一个指令即卷积计算指令即实现了卷积的计算,在卷积计算的中间数据(例如第一结果、第二结果、第三结果)均无需存储或提取,减少了中间数据的存储以及提取操作,所以其具有减少对应的操作步骤,提高卷积的计算效果的优点。
图1-2是本申请实施例提供的卷积神经网络运算装置执行卷积神经网络的流程图,如图1-2所示,执行卷积神经网络指令的过程包括:
在步骤S6B1,在指令存储单元的首地址处预先存入一条IO指令。
在步骤S6B2,控制器单元从指令存储单元的首地址读取该条IO指令,根据译出的控制信号,数据访问单元从存储器读取相应的所有卷积神经网络运算指令,并将其缓存在指令存储单元中。
在步骤S6B3,控制器单元接着从指令存储单元读入下一条IO指令,根据译出的控制信号,数据访问单元从存储器读取运算单元需要的所有数据块(例如,包括输入数据、用于作快速的激活函数运算的插值表、用于配置运算器件参数的常数表、偏置数据等)。
在步骤S6B4,控制器单元接着从指令存储单元读入下一条CONFIG指令,根据译出的控制信号,装置配置该层神经网络计算需要的各种常数。例如,运算单元根据控制信号里的参数配置单元内部寄存器的值,所述参数包括例如激活函数需要的数据。
在步骤S6B5,控制器单元接着从指令存储单元读入下一条COMPUTE指令,根据译出的控制信号,互连模块将卷积窗口内的输入数据发给计算单元内的各计算器。
在步骤S6B6,根据COMPUTE指令译出的控制信号,互联模块将乘法计算器、加法计算器和激活计算器连接形成第一计算拓扑结构。
在步骤S6B7,乘法运算器将卷积核w与输入数据Xi执行乘法运算以后得到第一结果,将第一结果输入到加法运算器执行加法运算得到第二结果,将第二结果和偏置b执行加法运算得到第三结果,将第三结果输入到激活运算器执行激活运算得到输出结果s,将输出结果s传输至数据访问单元存储至存储介质内。其中,将第二结果和偏置b执行加法运算得到第三结果这一步骤可选,即当b为0时,不需要这个步骤。
图2-1是优选实施例的总体结构的示例框图。如图2-1所示的实施例,在实际应用中,还可以包括如图1-1所示的互联模块以及运算单元,该运算单元包括多个计算器。对于如图2-1所示的总体结构,举例说明,对于异构平台来说,处理器的片上存储器20能够存储的数据十分有限,通常来讲片上有限的资源限制了将所有数据放置在片上的可能性,所以将大存储器(廉价,速度稍慢) 放在片外,小存储器(昂贵,速度快)集成在片上,需要将所有的数据划分成为大小可以存储在片上存储器20的数据块,通过存储容量大的片外存储介质10和存储容量小的片上存储介质20上的数据交互将所需数据块读入或者写出。其间,片内地址索引单元40将片内数据地址按需提供给片上处理单元30。本申请的存储器并不限定,可以是静态随机存储器(Static Random Access Memory, SRAM),动态随机存储器(Dynamic Random Access Memory,DRAM),增强动态随机存取存储器 (Enhanced DynamicRandom Access Memory,eDRAM),寄存器堆(Register file,RF)等常见存储介质,也可是新型的存储器件,如非易失存储器(Non-Volatile Memory,NVM)或3D存储器件等。
本申请提供一种片上重复寻址的方法,是一种当总数据过大,大于片上存储介质20的存储容量时所使用的数据管理策略,从而可以把片外的数据读取至片内进行快速重复寻址,当然,也可以实现片外重复寻址,然而高效的做法是将集中访问的数据放在一起,一次搬至片内,然后直接在片内快速寻址。该方法包括:
数据划分步骤,根据预定的数据划分原则将片上存储介质和/或片外存储介质的数据划分为不同的数据块,所述数据划分原则包括将重用距离低于预定距离阈值的数据划分在同一个数据块。重用距离指的是一个数据两次使用的距离,距离是指访存次数,重用距离近的数据在运行短期内就会被访问,也即就有很强的时间上的相关性。这些数据划分在同一数据块上可以一次载入片内存储然后使用尽可能多的次数,从而访存更加高效。在每个数据块中,数据则按照预定的规则存储介质内,例如,顺序存储。
数据索引步骤,根据预定的替换策略的顺序关系,依次载入不同的所述数据块到至少一个片上处理单元,被载入的所述数据块中的重复数据在片内重复寻址。该数据块里的数据可在片内直接重复寻址,避免从片外存储或IO多次读写(速度慢,功耗高)。采用有效的数据划分原则,从而使得上述替换发生次数尽可能的少(有效的数据划分原则可减少替换次数,有效的数据替换策略在此基础上可进一步减少替换次数)。优选的是,图2-2所示即为数据地址划分图,所述数据的索引地址50包括数据块地址51与块内地址52;即每个数据的地址为当前数据块地址51与块内地址52拼接而成。将数据划分成为合理的数据块后,通过将地址划分成为片内和片外使得片内重复寻址更加高效。地址索引所采用的技术并不局限于简单的数据索引,也包括codebook(码本)等划分实施方案。
所述数据索引步骤包括:根据所述替换策略的顺序关系和数据块地址51,依次载入不同的所述数据块到至少一个片上处理单元30,被载入的所述数据块中的重复数据在片内重复寻址,当所述数据块的块内地址52全部索引完成后才替换新的数据块,直至没有数据块被需要载入为止。在数据块内进行索引时,只有数据的块内地址52有用,则索引的硬件单元不需要使用数据块地址51,然而数据块地址51仍然需要记录从而可以被后续使用。
优选的是,片上存储介质20与片上处理单元30通过片内数据通路进行数据交换;片上存储介质20与片外存储介质10通过片内外数据通路进行数据交换,片上存储介质20或片外存储介质 10至少一次从内部或外部进行读写;所述数据以数据块为单位在片上存储介质20、片外存储介质 10和/或片上处理单元30两两之间搬运。
优选的是,所述数据块的数据量小于片上存储介质20的容量,优选能够被其整除。
优选的是,片上存储介质20采用读写端口分离设计,从而使得数据的读出和写入相互独立,可以同时进行。
优选的是,所述方法应用于学习类处理器。
优选的是,所述方法应用于异构环境。
优选的是,片上处理单元30为片上运算模块,所述根据预定条件选取数据,满足所述预定条件的所述数据被划分在相同的所述数据块中。具体的是,所述预定条件包括简单划分条件、平均为预定数目的数据块条件、与不同输出神经元相关条件或者满足预定数学关系条件。这些是针对不同情况下具体的数据划分准则,仍在数据划分原则限定的范围内。
如图2-3所示为一个优选实施例的数据划分示意图。以常见的神经网络为例(向量运算),不同输出神经元所需的权值数据存储在不同的数据块,运算时,需要在不同的时刻载入不同的数据块进行索引。输入神经元的值是被复用,计算两个输出神经元用的是同样的输入。在计算输出神经元的时候需要载入相关的权值,计算完成后则这部分权值完全不需要了;计算输出神经元时,需要载入相关的权值。其中相同输入神经元的值只存了一份,也即计算时需要重复寻址。相同的权值也只存了一份,也需要重复寻址获得。
如图2-4所示为一个优选实施例的数据划分示意图。同样以常见的神经网络为例(向量运算),满足指定条件的权值连接被划分存储在同样的数据块中,如实线权值连接和虚线权值连接。在不同的时刻,不同数据块被载入,运算单元根据指定条件选取数据,如所有的输出神经元先计算与实线权值连接的相关计算,在数据块替换后再计算与虚线权值连接的相关计算。
优选的是,所述替换策略包括顺序替换、逆序替换或者乱序替换;图2-5所示即为一个优选实施例的替换策略示意图,数据被划分成为不同的数据块,在不同时刻,根据不同的替换策略载入不同的数据块。如顺序替换,数据块按照#1、#2、#3以此类推的顺序载入;逆序替换,数据块按照#N、#(N-1)、#(N-2)的顺序载入;乱序替换,则根据指定的顺序读入数据块。或者,所述替换策略包括数据写回,在数据处理完成后将最终结果或中间结果写回所述片上存储介质、所述片外存储介质和/或所述片上处理单元。不同的替换策略应当考虑到数据的一致性。
本申请相应提供一种实现片上重复寻址的方法的装置,该装置包括:
数据划分模块,用于根据预定的数据划分原则将片上存储介质和/或片外存储介质的数据划分为不同的数据块,所述数据划分原则包括将重用距离低于预定距离阈值的数据划分在同一个数据块;
数据索引模块,用于根据预定的替换策略的顺序关系,依次载入不同的所述数据块到至少一个片上处理单元,被载入的所述数据块中的重复数据在片内重复寻址。
优选的是,所述数据的索引地址包括数据块地址与块内地址;
所述数据索引模块用于根据所述替换策略的顺序关系和所述数据块地址,依次载入不同的所述数据块到至少一个所述片上处理单元,被载入的所述数据块中的重复数据在片内重复寻址,当所述数据块的所述块内地址全部索引完成后才替换新的数据块,直至没有数据块被需要载入为止。
优选的是,所述片上存储介质与所述片上处理单元通过片内数据通路进行数据交换;
所述片上存储介质与所述片外存储介质通过片内外数据通路进行数据交换,所述片上存储介质或所述片外存储介质至少一次从内部或外部进行读写;所述数据以数据块为单位在所述片上存储介质、所述片外存储介质和/或所述片上处理单元两两之间搬运。
优选的是,所述数据块的数据量小于所述片上存储介质的容量。
优选的是,所述片上存储介质采用读写端口分离设计。
优选的是,所述装置应用于学习类处理器。
优选的是,所述装置应用于异构环境。
优选的是,所述片上处理单元为片上运算模块,所述根据预定条件选取数据,满足所述预定条件的所述数据被划分在相同的所述数据块中。
优选的是,所述预定条件包括简单划分条件、平均为预定数目的数据块条件、与不同输出神经元相关条件或者满足预定数学关系条件。
优选的是,所述替换策略包括顺序替换、逆序替换或者乱序替换;或者
所述替换策略包括数据写回,在数据处理完成后将最终结果或中间结果写回所述片上存储介质、所述片外存储介质和/或所述片上处理单元。
图2-6所示即为一个优选实施例的利用片上数据重复寻址降低访存带宽需求装置使用的流程图。开始计算后,
步骤S101,数据按照数据划分原则划分成为不同的数据块。
步骤S102,将数据块载入片上存储介质20。在某一时刻,只有一块数据块被载入片上存储介质20用于片上计算,根据不同的替换策略,不同的数据块按不同的顺序被载入用于运算。
步骤S103,对获取的数据进行片上计算。
步骤S104,判断是否所有的计算完毕没有数据块需要再次载入,如果是则全部计算结束,否则,回到步骤S102。
图2-7所示即为一个优选实施例的计算单元根据地址进行重复寻址的框图。根据地址索引,存储于地址DA的数据被计算单元#0、#2、#4所需要,则实施例索引至地址DA,并将DA中的数据传播给所需的计算单元,即#0、#2和#4。这个例子中,三个计算单元所需要的数据因为是一样的,所以在片上只存储了一份,也即同一个数据要被重复寻址三次。图2-5中数据传递给片上计算单元的方式并不局限于BUS总线的连接方式,也包括Crossbar结构、FAT-TREE、H-TREE等其他连接方式。
综上所述,本申请将重用距离小于预定的距离阈值的数据划分在同一个数据块,重用距离指的是一个数据两次使用的距离,距离是指访存次数,重用距离近的数据在运行短期内就会被访问,也即就有很强的时间上的相关性。这些数据划分在同一数据块上可以一次载入片内存储然后使用尽可能多的次数,从而访存更加高效。本申请旨在利用片上的重复寻址用于降低访存带宽。本申请的装置及其相关使用方法可以有效的提供数据的复用性和其灵活寻址的需求,能够适用于不同场景,并不仅仅局限于机器学习类处理器。
在一些实施例里,公开了一种芯片封装结构,其包括了上述芯片。
在一些实施例里,公开了一种板卡,其包括了上述芯片封装结构。
在一些实施例里,公开了一种电子装置,其包括了上述板卡。
电子装置包括数据处理装置、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、手机、行车记录仪、导航仪、传感器、摄像头、云端服务器、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备交通工具、家用电器、和/或医疗设备。
所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。
以上所述的具体实施例,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施例而已,并不用于限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种计算装置,其特征在于,所述计算装置包括:片内存储器、片外存储介质、片内地址索引单元、片内处理单元,所述片内处理单元包括:互联模块、运算单元;其中,
数据划分模块,用于根据预定的数据划分原则将片上存储介质和/或片外存储介质的数据划分为不同的数据块,所述数据划分原则包括将重用距离低于预定距离阈值的数据划分在同一个数据块;
数据索引模块,用于根据预定的替换策略的顺序关系,依次载入不同的所述数据块到至少一个片上处理单元的互联模块,被载入的所述数据块中的重复数据在片内重复寻址;
互联模块、用于将所述数据块发送至运算单元;
运算单元,用于执行指令调用计算器对所述数据块执行运算操作得到运算结果;
所述指令为卷积计算指令,所述计算指令包括:操作域和操作码;
所述卷积计算指令包括:卷积神经网络sigmoid指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做sigmoid激活;
卷积神经网络TanH指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做TanH激活;
卷积神经网络ReLU指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做ReLU激活;以及
卷积神经网络group指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,划分group之后,在卷积运算部件中做卷积操作,然后将输出结果做激活;运算指令还包括:
IO指令实现从外部存储空间读入计算需要的输入数据以及在计算完成后将数据存回至外部空间;
NOP指令负责清空当前装置内部所有控制信号缓存队列中的控制信号,保证NOP指令之前的所有指令全部指令完毕;
JUMP指令负责控制将要从指令存储单元读取的下一条指令地址的跳转,用来实现控制流的跳转;
MOVE指令负责将装置内部地址空间某一地址的数据搬运至装置内部地址空间的另一地址,该过程独立于运算单元,在执行过程中不占用运算单元的资源。
2.根据权利要求1所述的计算装置,其特征在于,
所述数据索引模块,具体用于根据所述替换策略的顺序关系和所述数据块地址,依次载入不同的所述数据块到至少一个所述片上处理单元,被载入的所述数据块中的重复数据在片内重复寻址,当所述数据块的块内地址全部索引完成后替换新的数据块,直至没有数据块被需要载入为止。
3.根据权利要求1所述的计算装置,其特征在于,所述片上存储介质与所述片上处理单元通过片内数据通路进行数据交换;
所述片上存储介质与所述片外存储介质通过片内外数据通路进行数据交换,所述片上存储介质或所述片外存储介质至少一次从内部或外部进行读写;
所述数据以数据块为单位在所述片上存储介质、所述片外存储介质和/或所述片上处理单元两两之间搬运;所述数据块的数据量小于所述片上存储介质的容量。
4.根据权利要求1所述的计算装置,其特征在于,
所述片上存储介质采用读写端口分离设计;所述计算装置应用于学习类加速器和/或异构环境。
5.根据权利要求1所述的计算装置,其特征在于,
所述运算单元,用于根据预定条件选取数据,满足所述预定条件的所述数据被划分在相同的所述数据块中;所述预定条件包括简单划分条件、平均为预定数目的数据块条件、与不同输出神经元相关条件或者满足预定数学关系条件;
所述替换策略包括顺序替换、逆序替换或者乱序替换;或者
所述替换策略包括数据写回,在数据处理完成后将最终结果或中间结果写回所述片上存储介质、所述片外存储介质和/或所述片上处理单元。
6.根据权利要求1所述的计算装置,其特征在于,
所述运算单元包括:一个主运算单元和多个从运算单元,所述互联模块连接所述主运算单元和多个从运算单元,所述互联模块为:树状结构、环状结构、网格状结构、分级互连或总线结构。
7.一种片上寻址方法,其特征在于,所述方法应用于计算装置,总体结构包括:片内存储器、片外存储介质、片内地址索引单元、片内处理单元,所述片内处理单元包括:互联模块、运算单元;所述方法包括如下步骤:
数据划分模块根据预定的数据划分原则将片上存储介质和/或片外存储介质的数据划分为不同的数据块,所述数据划分原则包括将重用距离低于预定距离阈值的数据划分在同一个数据块;
数据索引模块根据预定的替换策略的顺序关系,依次载入不同的所述数据块到至少一个片上处理单元的互联模块,被载入的所述数据块中的重复数据在片内重复寻址;
互联模块将所述数据块发送至运算单元;运算单元执行指令调用计算器对所述数据块执行运算操作得到运算结果;
所述指令为卷积计算指令,所述计算指令包括:操作域和操作码;
所述卷积计算指令包括:卷积神经网络sigmoid指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做sigmoid激活;
卷积神经网络TanH指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作,然后将输出结果做TanH激活;
卷积神经网络ReLU指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,在卷积运算部件中做卷积操作然后将输出结果做ReLU激活;以及
卷积神经网络group指令,根据该指令,装置分别从存储器的指定地址取出指定大小的输入数据和卷积核,划分group之后,在卷积运算部件中做卷积操作然后将输出结果做激活;
运算指令还包括:
IO指令实现从外部存储空间读入计算需要的输入数据以及在计算完成后将数据存回至外部空间;
NOP指令负责清空当前装置内部所有控制信号缓存队列中的控制信号,保证NOP指令之前的所有指令全部指令完毕;
JUMP指令负责控制将要从指令存储单元读取的下一条指令地址的跳转,用来实现控制流的跳转;
MOVE指令负责将装置内部地址空间某一地址的数据搬运至装置内部地址空间的另一地址,该过程独立于运算单元,在执行过程中不占用运算单元的资源。
8.根据权利要求7所述的方法,其特征在于,所述方法具体包括:
所述数据索引模块根据所述替换策略的顺序关系和所述数据块地址,依次载入不同的所述数据块到至少一个所述片上处理单元,被载入的所述数据块中的重复数据在片内重复寻址,当所述数据块的块内地址全部索引完成后替换新的数据块,直至没有数据块被需要载入为止。
CN202010189355.5A 2017-07-20 2018-07-13 计算装置以及计算方法 Active CN111176727B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201710595951.1A CN107992329B (zh) 2017-07-20 2017-07-20 一种计算方法及相关产品
CN2017105959511 2017-07-20
CN201880004680.0A CN110036369B (zh) 2017-07-20 2018-07-13 一种计算方法及相关产品
PCT/CN2018/095706 WO2019015541A1 (zh) 2017-07-20 2018-07-13 一种计算方法及相关产品

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201880004680.0A Division CN110036369B (zh) 2017-07-20 2018-07-13 一种计算方法及相关产品

Publications (2)

Publication Number Publication Date
CN111176727A CN111176727A (zh) 2020-05-19
CN111176727B true CN111176727B (zh) 2022-05-31

Family

ID=61067110

Family Applications (18)

Application Number Title Priority Date Filing Date
CN201710928125.4A Active CN107807819B (zh) 2017-07-20 2017-07-20 一种支持离散数据表示的用于执行人工神经网络正向运算的装置及方法
CN201710927144.5A Active CN109284822B (zh) 2017-07-20 2017-07-20 一种神经网络运算装置及方法
CN201710927336.6A Active CN107729989B (zh) 2017-07-20 2017-07-20 一种用于执行人工神经网络正向运算的装置及方法
CN201710595951.1A Active CN107992329B (zh) 2017-07-20 2017-07-20 一种计算方法及相关产品
CN201710928261.3A Active CN107729990B (zh) 2017-07-20 2017-07-20 支持离散数据表示的用于执行正向运算的装置及方法
CN201710927338.5A Active CN107608715B (zh) 2017-07-20 2017-07-20 用于执行人工神经网络正向运算的装置及方法
CN201710927307.XA Active CN109284130B (zh) 2017-07-20 2017-07-20 神经网络运算装置及方法
CN201710927526.8A Active CN107844322B (zh) 2017-07-20 2017-07-20 用于执行人工神经网络正向运算的装置和方法
CN201710927267.9A Active CN107832082B (zh) 2017-07-20 2017-07-20 一种用于执行人工神经网络正向运算的装置和方法
CN202010189417.2A Active CN111221578B (zh) 2017-07-20 2018-07-13 计算装置以及计算方法
CN202010189355.5A Active CN111176727B (zh) 2017-07-20 2018-07-13 计算装置以及计算方法
CN201911058836.6A Active CN110688158B (zh) 2017-07-20 2018-07-13 计算装置以及神经网络的处理系统
CN201911069248.2A Active CN110597559B (zh) 2017-07-20 2018-07-13 计算装置以及计算方法
CN201911058837.0A Active CN110688159B (zh) 2017-07-20 2018-07-13 神经网络任务处理系统
CN201911058620.XA Active CN110688157B (zh) 2017-07-20 2018-07-13 一种计算装置及计算方法
CN201911058840.2A Active CN110825434B (zh) 2017-07-20 2018-07-13 计算装置及计算方法
CN201880004680.0A Active CN110036369B (zh) 2017-07-20 2018-07-13 一种计算方法及相关产品
CN201911057705.6A Active CN110597558B (zh) 2017-07-20 2018-07-13 一种神经网络任务处理系统

Family Applications Before (10)

Application Number Title Priority Date Filing Date
CN201710928125.4A Active CN107807819B (zh) 2017-07-20 2017-07-20 一种支持离散数据表示的用于执行人工神经网络正向运算的装置及方法
CN201710927144.5A Active CN109284822B (zh) 2017-07-20 2017-07-20 一种神经网络运算装置及方法
CN201710927336.6A Active CN107729989B (zh) 2017-07-20 2017-07-20 一种用于执行人工神经网络正向运算的装置及方法
CN201710595951.1A Active CN107992329B (zh) 2017-07-20 2017-07-20 一种计算方法及相关产品
CN201710928261.3A Active CN107729990B (zh) 2017-07-20 2017-07-20 支持离散数据表示的用于执行正向运算的装置及方法
CN201710927338.5A Active CN107608715B (zh) 2017-07-20 2017-07-20 用于执行人工神经网络正向运算的装置及方法
CN201710927307.XA Active CN109284130B (zh) 2017-07-20 2017-07-20 神经网络运算装置及方法
CN201710927526.8A Active CN107844322B (zh) 2017-07-20 2017-07-20 用于执行人工神经网络正向运算的装置和方法
CN201710927267.9A Active CN107832082B (zh) 2017-07-20 2017-07-20 一种用于执行人工神经网络正向运算的装置和方法
CN202010189417.2A Active CN111221578B (zh) 2017-07-20 2018-07-13 计算装置以及计算方法

Family Applications After (7)

Application Number Title Priority Date Filing Date
CN201911058836.6A Active CN110688158B (zh) 2017-07-20 2018-07-13 计算装置以及神经网络的处理系统
CN201911069248.2A Active CN110597559B (zh) 2017-07-20 2018-07-13 计算装置以及计算方法
CN201911058837.0A Active CN110688159B (zh) 2017-07-20 2018-07-13 神经网络任务处理系统
CN201911058620.XA Active CN110688157B (zh) 2017-07-20 2018-07-13 一种计算装置及计算方法
CN201911058840.2A Active CN110825434B (zh) 2017-07-20 2018-07-13 计算装置及计算方法
CN201880004680.0A Active CN110036369B (zh) 2017-07-20 2018-07-13 一种计算方法及相关产品
CN201911057705.6A Active CN110597558B (zh) 2017-07-20 2018-07-13 一种神经网络任务处理系统

Country Status (4)

Country Link
US (2) US11481215B2 (zh)
EP (2) EP3686734B1 (zh)
CN (18) CN107807819B (zh)
WO (1) WO2019015541A1 (zh)

Families Citing this family (226)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3637325B1 (en) 2017-05-23 2025-02-12 Shanghai Cambricon Information Technology Co., Ltd Processing method and accelerating device
CN109426553A (zh) 2017-08-21 2019-03-05 上海寒武纪信息科技有限公司 任务切分装置及方法、任务处理装置及方法、多核处理器
CN110413551B (zh) 2018-04-28 2021-12-10 上海寒武纪信息科技有限公司 信息处理装置、方法及设备
CN110502330A (zh) 2018-05-16 2019-11-26 上海寒武纪信息科技有限公司 处理器及处理方法
CN109214616B (zh) 2017-06-29 2023-04-07 上海寒武纪信息科技有限公司 一种信息处理装置、系统和方法
EP3637272A4 (en) 2017-06-26 2020-09-02 Shanghai Cambricon Information Technology Co., Ltd DATA-SHARING SYSTEM AND RELATED DATA-SHARING PROCESS
CN110619390A (zh) * 2018-06-20 2019-12-27 上海寒武纪信息科技有限公司 用于执行生成对抗网络的处理装置及应用其进行机器创作的方法
CN107807819B (zh) * 2017-07-20 2021-06-25 上海寒武纪信息科技有限公司 一种支持离散数据表示的用于执行人工神经网络正向运算的装置及方法
US11437032B2 (en) 2017-09-29 2022-09-06 Shanghai Cambricon Information Technology Co., Ltd Image processing apparatus and method
CN109902817B (zh) * 2017-12-11 2021-02-09 安徽寒武纪信息科技有限公司 板卡和神经网络运算方法
WO2019114842A1 (zh) * 2017-12-14 2019-06-20 北京中科寒武纪科技有限公司 一种集成电路芯片装置
CN108229671B (zh) * 2018-01-16 2022-03-04 华南理工大学 一种降低加速器外部数据存储带宽需求的系统和方法
CN108388446A (zh) * 2018-02-05 2018-08-10 上海寒武纪信息科技有限公司 运算模块以及方法
CN110163349B (zh) * 2018-02-12 2021-03-23 上海寒武纪信息科技有限公司 一种网络模型的计算方法及装置
CN110147249B (zh) * 2018-02-12 2021-02-09 上海寒武纪信息科技有限公司 一种网络模型的计算方法及装置
CN110163353B (zh) * 2018-02-13 2021-05-11 上海寒武纪信息科技有限公司 一种计算装置及方法
CN110163350B (zh) * 2018-02-13 2021-06-08 上海寒武纪信息科技有限公司 一种计算装置及方法
US11106598B2 (en) 2018-02-13 2021-08-31 Shanghai Cambricon Information Technology Co., Ltd. Computing device and method
US11630666B2 (en) 2018-02-13 2023-04-18 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11704125B2 (en) 2018-02-13 2023-07-18 Cambricon (Xi'an) Semiconductor Co., Ltd. Computing device and method
EP3617959B1 (en) 2018-02-13 2021-08-04 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
CN110162162B (zh) 2018-02-14 2023-08-18 上海寒武纪信息科技有限公司 处理器的控制装置、方法及设备
CN110197272B (zh) * 2018-02-27 2020-08-25 上海寒武纪信息科技有限公司 集成电路芯片装置及相关产品
CN111626413A (zh) * 2018-03-14 2020-09-04 上海寒武纪信息科技有限公司 一种计算装置及方法
CN108520296B (zh) * 2018-03-20 2020-05-15 福州瑞芯微电子股份有限公司 一种基于深度学习芯片动态cache分配的方法和装置
CN110363279B (zh) * 2018-03-26 2021-09-21 华为技术有限公司 基于卷积神经网络模型的图像处理方法和装置
CN110413255B (zh) * 2018-04-28 2022-08-19 赛灵思电子科技(北京)有限公司 人工神经网络调整方法和装置
CN108647184B (zh) * 2018-05-10 2022-04-12 杭州雄迈集成电路技术股份有限公司 一种动态比特位卷积乘法实现方法
CN110472734B (zh) * 2018-05-11 2024-03-29 上海寒武纪信息科技有限公司 一种计算装置及相关产品
CN110147872B (zh) * 2018-05-18 2020-07-17 中科寒武纪科技股份有限公司 编码存储装置及方法、处理器及训练方法
EP3796189B1 (en) 2018-05-18 2025-08-06 Cambricon Technologies Corporation Limited Video retrieval method, and method and apparatus for generating video retrieval mapping relationship
CN110503179B (zh) * 2018-05-18 2024-03-01 上海寒武纪信息科技有限公司 计算方法以及相关产品
CN111368987B (zh) * 2018-12-25 2023-03-24 上海寒武纪信息科技有限公司 一种神经网络计算装置和方法
WO2019218896A1 (zh) 2018-05-18 2019-11-21 上海寒武纪信息科技有限公司 计算方法以及相关产品
CN110728364B (zh) 2018-07-17 2024-12-17 上海寒武纪信息科技有限公司 一种运算装置和运算方法
CN113190791A (zh) * 2018-08-06 2021-07-30 华为技术有限公司 矩阵的处理方法、装置及逻辑电路
CN108960418A (zh) * 2018-08-08 2018-12-07 上海寒武纪信息科技有限公司 神经网络处理装置及其执行矩阵向量乘指令的方法
CN109189715B (zh) * 2018-08-16 2022-03-15 北京算能科技有限公司 可编程人工智能加速器执行单元及人工智能加速方法
WO2020042739A1 (zh) * 2018-08-28 2020-03-05 中科寒武纪科技股份有限公司 数据预处理方法、装置、计算机设备和存储介质
KR102740541B1 (ko) * 2018-09-03 2024-12-09 삼성전자주식회사 인공 신경망 시스템 및 인공 신경망의 고정 소수점 제어 방법
CN109242091B (zh) * 2018-09-03 2022-03-22 郑州云海信息技术有限公司 图像识别方法、装置、设备及可读存储介质
KR102633139B1 (ko) * 2018-09-07 2024-02-02 삼성전자주식회사 데이터를 추출하는 집적 회로, 그것을 포함하는 뉴럴 네트워크 프로세서 및 뉴럴 네트워크 장치
US20200082269A1 (en) * 2018-09-12 2020-03-12 Nvidia Corporation Memory efficient neural networks
EP3850517A4 (en) * 2018-09-15 2022-06-01 Quantum Star Technologies Inc. BINARY-LEVEL DATA GENERATION AND ARTIFICIAL INTELLIGENCE TECHNIQUES AND ARCHITECTURES FOR DATA PROTECTION
CN110929838B (zh) * 2018-09-19 2023-09-26 杭州海康威视数字技术股份有限公司 神经网络中位宽定点化方法、装置、终端和存储介质
CN110941789B (zh) * 2018-09-21 2023-12-15 北京地平线机器人技术研发有限公司 张量运算方法和装置
EP3859488B1 (en) 2018-09-28 2024-10-09 Shanghai Cambricon Information Technology Co., Ltd Signal processing device, signal processing method and related product
CN110968532B (zh) * 2018-09-29 2021-09-21 上海寒武纪信息科技有限公司 数据传输方法及相关产品
EP3839781B1 (en) * 2018-10-02 2024-09-11 Nippon Telegraph And Telephone Corporation Calculation device, calculation method, and calculation program
US11494625B2 (en) 2018-10-03 2022-11-08 Maxim Integrated Products, Inc. Systems and methods for energy-efficient analog matrix multiplication for machine learning processes
CN111290788B (zh) * 2018-12-07 2022-05-31 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111047005A (zh) * 2018-10-11 2020-04-21 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111290789B (zh) * 2018-12-06 2022-05-27 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111026440B (zh) * 2018-10-09 2022-03-29 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111061507A (zh) * 2018-10-16 2020-04-24 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN110096310B (zh) * 2018-11-14 2021-09-03 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111353124A (zh) * 2018-12-20 2020-06-30 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111222633A (zh) * 2018-11-23 2020-06-02 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111275197B (zh) * 2018-12-05 2023-11-10 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN110096283A (zh) * 2018-10-12 2019-08-06 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111045729A (zh) * 2018-10-12 2020-04-21 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111353125B (zh) * 2018-12-20 2022-04-22 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111047030A (zh) * 2018-10-11 2020-04-21 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
WO2020073925A1 (zh) * 2018-10-09 2020-04-16 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111353595A (zh) * 2018-12-20 2020-06-30 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN110096309B (zh) * 2018-11-14 2020-04-14 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111047028A (zh) * 2018-10-12 2020-04-21 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111124497B (zh) * 2018-10-11 2022-03-29 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
WO2020073923A1 (zh) * 2018-10-09 2020-04-16 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
CN111047027A (zh) * 2018-10-12 2020-04-21 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111047024B (zh) * 2018-10-12 2023-05-23 上海寒武纪信息科技有限公司 一种计算装置及相关产品
CN111047023B (zh) * 2018-10-12 2023-11-24 上海寒武纪信息科技有限公司 一种计算装置及相关产品
CN111078624B (zh) * 2018-10-18 2022-03-25 上海寒武纪信息科技有限公司 片上网络处理系统和片上网络数据处理方法
CN111078623B (zh) * 2018-10-18 2022-03-29 上海寒武纪信息科技有限公司 片上网络处理系统和片上网络数据处理方法
CN111209245B (zh) * 2018-11-21 2021-11-16 上海寒武纪信息科技有限公司 数据处理装置、方法及相关产品
CN111079908B (zh) * 2018-10-18 2024-02-13 上海寒武纪信息科技有限公司 片上网络数据处理方法、存储介质、计算机设备和装置
CN111210011B (zh) * 2018-11-21 2022-12-02 上海寒武纪信息科技有限公司 数据处理装置及相关产品
EP4009183A1 (en) * 2018-10-18 2022-06-08 Shanghai Cambricon Information Technology Co., Ltd Network-on-chip data processing method and device
CN111209230B (zh) * 2018-11-21 2021-08-31 上海寒武纪信息科技有限公司 数据处理装置、方法及相关产品
CN111209243B (zh) * 2018-11-21 2022-12-02 上海寒武纪信息科技有限公司 数据处理装置、方法及相关产品
CN111209231B (zh) * 2018-11-21 2021-05-11 上海寒武纪信息科技有限公司 数据处理方法、装置及相关产品
CN111210012B (zh) * 2018-11-21 2022-12-09 上海寒武纪信息科技有限公司 数据处理方法、装置及相关产品
CN111078625B (zh) * 2018-10-18 2022-03-29 上海寒武纪信息科技有限公司 片上网络处理系统和片上网络数据处理方法
CN111209244B (zh) * 2018-11-21 2022-05-06 上海寒武纪信息科技有限公司 数据处理装置及相关产品
CN111078291B (zh) * 2018-10-19 2021-02-09 中科寒武纪科技股份有限公司 运算方法、系统及相关产品
CN111078286B (zh) * 2018-10-19 2023-09-01 上海寒武纪信息科技有限公司 数据通信方法、计算系统和存储介质
CN111078284B (zh) * 2018-10-19 2021-02-05 中科寒武纪科技股份有限公司 运算方法、系统及相关产品
CN111079913B (zh) * 2018-10-19 2021-02-05 中科寒武纪科技股份有限公司 运算方法、装置及相关产品
CN111079909B (zh) * 2018-10-19 2021-01-26 安徽寒武纪信息科技有限公司 运算方法、系统及相关产品
CN111078282B (zh) * 2018-10-19 2020-12-22 安徽寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111079912B (zh) * 2018-10-19 2021-02-12 中科寒武纪科技股份有限公司 运算方法、系统及相关产品
CN111078280B (zh) * 2018-10-19 2021-01-26 中科寒武纪科技股份有限公司 运算方法、装置及相关产品
CN109669773B (zh) * 2018-11-12 2024-03-08 平安科技(深圳)有限公司 金融数据处理方法、装置、设备和存储介质
CN111191774B (zh) * 2018-11-14 2023-04-07 上海富瀚微电子股份有限公司 面向精简卷积神经网络的低代价加速器架构及其处理方法
US12450485B2 (en) * 2018-11-21 2025-10-21 Nvidia Corporation Pruning neural networks that include element-wise operations
CN111260070B (zh) * 2018-11-30 2022-11-29 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN109558110B (zh) * 2018-11-30 2021-06-01 上海寒武纪信息科技有限公司 数据转换装置及相关产品
CN109583579B (zh) * 2018-11-30 2021-04-09 上海寒武纪信息科技有限公司 计算装置及相关产品
CN111258935B (zh) * 2018-11-30 2022-01-25 上海寒武纪信息科技有限公司 数据传输装置和方法
CN111381871B (zh) * 2018-12-28 2022-12-09 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111258641B (zh) * 2018-11-30 2022-12-09 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
US11573765B2 (en) * 2018-12-13 2023-02-07 Advanced Micro Devices, Inc. Fused convolution and batch normalization for neural networks
CN109684087B (zh) * 2018-12-17 2020-01-10 中科寒武纪科技股份有限公司 运算方法、装置及相关产品
CN109635944B (zh) * 2018-12-24 2020-10-27 西安交通大学 一种稀疏卷积神经网络加速器及实现方法
CN111368985B (zh) * 2018-12-25 2023-11-28 上海寒武纪信息科技有限公司 一种神经网络计算装置和方法
CN111368967B (zh) * 2018-12-25 2023-04-07 上海寒武纪信息科技有限公司 一种神经网络计算装置和方法
CN111367567B (zh) * 2018-12-25 2023-03-07 上海寒武纪信息科技有限公司 一种神经网络计算装置和方法
CN111368990B (zh) * 2018-12-25 2023-03-07 上海寒武纪信息科技有限公司 一种神经网络计算装置和方法
CN111385462A (zh) 2018-12-28 2020-07-07 上海寒武纪信息科技有限公司 信号处理装置、信号处理方法及相关产品
CN111488976B (zh) * 2019-01-28 2023-06-30 中科寒武纪科技股份有限公司 神经网络计算装置、神经网络计算方法及相关产品
CN111506522B (zh) * 2019-01-31 2023-04-18 阿里巴巴集团控股有限公司 数据处理设备及方法
CN111523652B (zh) * 2019-02-01 2023-05-02 阿里巴巴集团控股有限公司 处理器及其数据处理方法、摄像装置
CN109902819B (zh) * 2019-02-12 2023-04-18 Oppo广东移动通信有限公司 神经网络计算方法、装置、移动终端及存储介质
US20200264891A1 (en) * 2019-02-20 2020-08-20 Nanjing Iluvatar CoreX Technology Co., Ltd. (DBA “Iluvatar CoreX Inc. Nanjing”) Constant scalar register architecture for acceleration of delay sensitive algorithm
CN109993293B (zh) * 2019-02-28 2021-04-13 中山大学 一种适用于堆叠式沙漏网络的深度学习加速器
CN109885407B (zh) * 2019-03-05 2021-09-21 上海商汤智能科技有限公司 数据处理方法和装置、电子设备、存储介质
CN111695686B (zh) * 2019-03-15 2022-11-01 上海寒武纪信息科技有限公司 地址分配方法及装置
WO2020192587A1 (zh) * 2019-03-22 2020-10-01 中科寒武纪科技股份有限公司 人工智能计算装置及相关产品
CN111723920B (zh) * 2019-03-22 2024-05-17 中科寒武纪科技股份有限公司 人工智能计算装置及相关产品
WO2020200250A1 (zh) * 2019-04-02 2020-10-08 上海寒武纪信息科技有限公司 运算方法、装置及相关产品
US10698842B1 (en) * 2019-04-10 2020-06-30 Xilinx, Inc. Domain assist processor-peer for coherent acceleration
CN111832738B (zh) 2019-04-18 2024-01-09 中科寒武纪科技股份有限公司 一种数据处理方法及相关产品
US20200334522A1 (en) 2019-04-18 2020-10-22 Cambricon Technologies Corporation Limited Data processing method and related products
WO2020220935A1 (zh) * 2019-04-27 2020-11-05 中科寒武纪科技股份有限公司 运算装置
CN111860798A (zh) * 2019-04-27 2020-10-30 中科寒武纪科技股份有限公司 运算方法、装置及相关产品
CN111966402A (zh) * 2019-05-20 2020-11-20 上海寒武纪信息科技有限公司 指令处理方法、装置及相关产品
CN111966401A (zh) * 2019-05-20 2020-11-20 上海寒武纪信息科技有限公司 指令处理方法、装置及相关产品
CN110298441B (zh) * 2019-05-24 2022-01-11 深圳云天励飞技术有限公司 一种数据处理方法、电子装置及计算机可读存储介质
CN112068799B (zh) * 2019-06-11 2022-08-02 云南大学 一种最优带符号二进制快速计算方法以及椭圆曲线标量乘法
EP3770823B1 (en) 2019-06-12 2025-07-16 Shanghai Cambricon Information Technology Co., Ltd Quantization parameter determination method for neural network, and related product
US11676028B2 (en) 2019-06-12 2023-06-13 Shanghai Cambricon Information Technology Co., Ltd Neural network quantization parameter determination method and related products
CN110245750B (zh) * 2019-06-14 2022-07-15 西南科技大学 一种基于fpga的神经网络数值模拟方法
CN110390383B (zh) * 2019-06-25 2021-04-06 东南大学 一种基于幂指数量化的深度神经网络硬件加速器
WO2021004076A1 (zh) * 2019-07-05 2021-01-14 山东大学 基于人工智能芯片的适形穿戴式生物信息监测设备及系统
CN112168140B (zh) * 2019-07-05 2021-07-13 山东大学齐鲁医院 基于人工智能芯片的穿戴式生物信息监测设备及方法
CN110348021B (zh) * 2019-07-17 2021-05-18 湖北亿咖通科技有限公司 基于命名实体模型的字符串识别方法、电子设备、存储介质
WO2021022441A1 (zh) * 2019-08-05 2021-02-11 华为技术有限公司 数据传输方法、装置、电子设备及可读存储介质
CN112346707A (zh) * 2019-08-07 2021-02-09 上海寒武纪信息科技有限公司 指令处理方法、装置及相关产品
CN112346784A (zh) * 2019-08-07 2021-02-09 上海寒武纪信息科技有限公司 指令处理方法、装置及相关产品
CN112395006B (zh) * 2019-08-13 2024-07-26 上海寒武纪信息科技有限公司 运算方法、装置、计算机设备和存储介质
EP4020321A4 (en) 2019-08-23 2024-01-17 Anhui Cambricon Information Technology Co., Ltd. Data processing method, apparatus, computer device, and storage medium
CN112434781B (zh) 2019-08-26 2024-09-10 上海寒武纪信息科技有限公司 用于处理数据的方法、装置以及相关产品
CN110728365B (zh) * 2019-09-12 2022-04-01 东南大学 多位宽pe阵列计算位宽的选择方法及计算精度控制电路
US11579802B2 (en) * 2019-10-04 2023-02-14 Fungible, Inc. Pipeline using match-action blocks
CN112667288B (zh) * 2019-10-15 2024-10-22 广州希姆半导体科技有限公司 数据运算电路、数据处理装置、芯片、卡板及电子设备
CN114365147A (zh) * 2019-10-22 2022-04-15 深圳鲲云信息科技有限公司 神经网络计算压缩方法、系统及存储介质
CN111080400B (zh) * 2019-11-25 2023-04-18 中山大学 一种基于门控图卷积网络的商品推荐方法及系统、存储介质
CN110989970B (zh) * 2019-11-27 2023-04-11 广州海格通信集团股份有限公司 一种双精度浮点矩阵运算处理器及方法
CN111091181B (zh) * 2019-12-09 2023-09-05 Oppo广东移动通信有限公司 卷积处理单元、神经网络处理器、电子设备及卷积运算方法
CN111124500B (zh) * 2019-12-12 2022-03-08 浪潮(北京)电子信息产业有限公司 一种指令执行方法、装置、设备及存储介质
CN111104513B (zh) * 2019-12-13 2023-05-02 中山大学 一种游戏平台用户问答业务的短文本分类方法
CN111026445A (zh) * 2019-12-17 2020-04-17 湖南长城银河科技有限公司 一种智能识别方法及芯片
CN111242293B (zh) * 2020-01-13 2023-07-18 腾讯科技(深圳)有限公司 一种处理部件、数据处理的方法以及电子设备
CN111221479B (zh) * 2020-01-19 2022-08-05 苏州浪潮智能科技有限公司 一种判断存储容量变化量异常的方法、系统及存储介质
CN113298843B (zh) 2020-02-24 2024-05-14 中科寒武纪科技股份有限公司 数据量化处理方法、装置、电子设备和存储介质
CN113408717B (zh) 2020-03-17 2025-09-09 安徽寒武纪信息科技有限公司 计算装置、方法、板卡和计算机可读存储介质
US12039432B2 (en) * 2020-03-18 2024-07-16 Infineon Technologies Ag Artificial neural network activation function
CN111507473B (zh) * 2020-04-20 2023-05-12 上海交通大学 一种基于Crossbar架构的剪枝方法及系统
US11450672B2 (en) * 2020-04-27 2022-09-20 Intel Corporation Ultra-deep compute static random access memory with high compute throughput and multi-directional data propagation
CN111522776B (zh) * 2020-04-27 2022-04-05 西安交通大学 一种计算架构
CN113626080B (zh) * 2020-05-08 2023-10-03 安徽寒武纪信息科技有限公司 数据处理装置以及相关产品
CN113626082B (zh) * 2020-05-08 2025-09-12 安徽寒武纪信息科技有限公司 数据处理方法及装置以及相关产品
US20210357739A1 (en) * 2020-05-14 2021-11-18 Micron Technology, Inc. Memory device to train neural networks
CN113807507B (zh) * 2020-06-16 2024-09-27 安徽寒武纪信息科技有限公司 数据处理方法及装置以及相关产品
CN111832718B (zh) * 2020-06-24 2021-08-03 上海西井信息科技有限公司 芯片架构
CN113867793A (zh) * 2020-06-30 2021-12-31 上海寒武纪信息科技有限公司 计算装置、集成电路芯片、板卡、电子设备和计算方法
CN113867800B (zh) * 2020-06-30 2025-06-06 上海寒武纪信息科技有限公司 计算装置、集成电路芯片、板卡、电子设备和计算方法
CN113867799B (zh) * 2020-06-30 2025-05-02 上海寒武纪信息科技有限公司 计算装置、集成电路芯片、板卡、电子设备和计算方法
CN111783954B (zh) * 2020-06-30 2023-05-02 安徽寒武纪信息科技有限公司 一种用于确定神经网络的性能的方法、电子设备和存储介质
CN113867790A (zh) * 2020-06-30 2021-12-31 上海寒武纪信息科技有限公司 计算装置、集成电路芯片、板卡和计算方法
CN113867798B (zh) * 2020-06-30 2025-12-02 上海寒武纪信息科技有限公司 集成计算装置、集成电路芯片、板卡和计算方法
CN113867797A (zh) 2020-06-30 2021-12-31 上海寒武纪信息科技有限公司 计算装置、集成电路芯片、板卡、电子设备和计算方法
US11823035B2 (en) 2020-07-07 2023-11-21 Qualcomm Incorporated Power-efficient compute-in-memory pooling
CN111651207B (zh) * 2020-08-06 2020-11-17 腾讯科技(深圳)有限公司 一种神经网络模型运算芯片、方法、装置、设备及介质
CN111930506A (zh) * 2020-08-13 2020-11-13 山东云海国创云计算装备产业创新中心有限公司 一种矩阵调度方法及相关装置
WO2022040643A1 (en) * 2020-08-21 2022-02-24 Fu Zhi Sing Processing unit architectures and techniques for reusable instructions and data
KR102893029B1 (ko) * 2020-09-11 2025-11-27 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
CN112259071A (zh) * 2020-09-22 2021-01-22 北京百度网讯科技有限公司 语音处理系统、语音处理方法、电子设备和可读存储介质
KR20220040234A (ko) * 2020-09-23 2022-03-30 삼성전자주식회사 뉴럴 네트워크의 파라미터들을 양자화하는 방법 및 장치
US20220101110A1 (en) * 2020-09-25 2022-03-31 Advanced Micro Devices, Inc. Persistent weights in training
CN112270399B (zh) * 2020-09-29 2022-03-11 北京百度网讯科技有限公司 基于深度学习的算子注册处理方法、装置及电子设备
CN112257859B (zh) * 2020-10-30 2024-07-05 地平线(上海)人工智能技术有限公司 特征数据处理方法及装置、设备、存储介质
CN112036554B (zh) * 2020-11-04 2021-04-06 深圳追一科技有限公司 神经网络模型的处理方法、装置、计算机设备和存储介质
CN114492723A (zh) * 2020-11-13 2022-05-13 华为技术有限公司 神经网络模型的训练方法、图像处理方法及装置
KR20220078819A (ko) * 2020-12-04 2022-06-13 삼성전자주식회사 딥러닝 연산 수행 방법 및 장치
CN112711218B (zh) * 2020-12-08 2022-03-15 杭州电子科技大学上虞科学与工程研究院有限公司 一种工业设备数据采集的方法
CN112506436B (zh) * 2020-12-11 2023-01-31 西北工业大学 用于卷积神经网络加速器的高效率数据动态存储分配方法
CN114626514A (zh) * 2020-12-11 2022-06-14 华为技术有限公司 一种神经网络计算装置及计算方法
CN112783556B (zh) * 2021-01-06 2023-04-07 南阳理工学院 信息处理方法、信息处理装置及终端设备
US20220269784A1 (en) 2021-02-25 2022-08-25 Quantum Star Technologies Inc. N-dimensional model techniques and architectures for data protection
CN115271047A (zh) * 2021-04-29 2022-11-01 华为技术有限公司 一种数据处理方法及装置
CN113469326B (zh) * 2021-06-24 2024-04-02 上海寒武纪信息科技有限公司 在神经网络模型中执行剪枝优化的集成电路装置及板卡
CN115600657A (zh) * 2021-07-09 2023-01-13 中科寒武纪科技股份有限公司(Cn) 一种处理装置、设备、方法及其相关产品
US12481718B2 (en) * 2021-09-10 2025-11-25 Xilinx, Inc. Hardware acceleration of affine transformations
CN113806285B (zh) * 2021-09-18 2024-06-25 北京爱芯科技有限公司 一种数据处理模组、芯片和数据处理方法
CN114281874B (zh) * 2021-11-19 2024-12-10 北京大学 一种基于昇腾ai处理器的索引转换方法及装置
CN114237612B (zh) * 2021-12-03 2024-09-17 龙芯中科技术股份有限公司 程序代码的编译方法、装置、电子设备及存储介质
CN114139693B (zh) * 2021-12-03 2024-08-13 安谋科技(中国)有限公司 神经网络模型的数据处理方法、介质和电子设备
CN114296798B (zh) 2021-12-10 2024-08-13 龙芯中科技术股份有限公司 向量移位方法、处理器及电子设备
CN114218127B (zh) * 2021-12-10 2025-07-15 中山大学 一种混合内存多核cpu系统上的深度学习数据管理方法
CN114372012B (zh) * 2021-12-21 2024-02-20 中国科学院深圳先进技术研究院 一种通用、可配置的高能效池化计算单行输出系统和方法
US12190150B2 (en) 2021-12-23 2025-01-07 SambaNova Systems, Inc. Dependency-based queuing of work requests in dataflow applications
CN114491167B (zh) * 2021-12-31 2026-01-02 安谋科技(中国)有限公司 神经网络模型的运行方法、可读介质和电子设备
CN114428675A (zh) * 2022-01-26 2022-05-03 深圳鲲云信息科技有限公司 一种基于数据流架构的人工智能芯片和数据处理方法
CN115374922B (zh) * 2022-01-30 2025-09-05 西安交通大学 一种神经网络处理器复杂指令集微架构
CN114265872B (zh) * 2022-02-24 2022-05-24 苏州浪潮智能科技有限公司 一种用于总线的互联装置
CN114726512B (zh) * 2022-03-08 2024-03-26 支付宝(杭州)信息技术有限公司 数据处理方法和装置
CN114692833B (zh) * 2022-03-30 2023-11-21 广东齐芯半导体有限公司 一种卷积计算电路、神经网络处理器以及卷积计算方法
CN114612996B (zh) * 2022-03-31 2025-03-21 安谋科技(中国)有限公司 神经网络模型的运行方法、介质、程序产品以及电子设备
CN114818803B (zh) * 2022-04-25 2024-11-05 上海韶脑传感技术有限公司 基于神经元优化的单侧肢体患者运动想象脑电建模方法
CN115390654A (zh) * 2022-08-11 2022-11-25 Oppo广东移动通信有限公司 降低功耗的方法、处理器、电子设备及存储介质
KR102839211B1 (ko) * 2022-09-05 2025-07-28 리벨리온 주식회사 뉴럴 프로세싱 장치, 그에 포함되는 프로세싱 엘리먼트 및 뉴럴 프로세싱 장치의 다양한 포맷 연산 방법
US20240095226A1 (en) * 2022-09-15 2024-03-21 Rodney Kuhn Haffnerson King Methods and related devices for storing and accessing data using multi-level fractal grids
CN115203126B (zh) * 2022-09-15 2023-04-18 太初(无锡)电子科技有限公司 一种算子融合处理方法、装置、设备及存储介质
CN115934768A (zh) * 2022-12-01 2023-04-07 摩尔线程智能科技(北京)有限责任公司 数据的处理方法、显示适配器、电子设备及存储介质
CN115826910B (zh) * 2023-02-07 2023-05-02 成都申威科技有限责任公司 一种向量定点的alu处理系统
CN116055049B (zh) * 2023-04-03 2023-07-04 富算科技(上海)有限公司 多方安全计算方法、装置、系统、电子设备和存储介质
CN116360858B (zh) * 2023-05-26 2023-08-29 摩尔线程智能科技(北京)有限责任公司 数据的处理方法、图形处理器、电子设备及存储介质
KR102653745B1 (ko) * 2023-06-02 2024-04-02 라이프앤사이언스주식회사 최적화된 연산속도를 가지는 교육용 로봇제어기
WO2025054261A1 (en) * 2023-09-05 2025-03-13 Texas Instruments Incorporated Neural network operation instructions
US20250123802A1 (en) * 2023-10-11 2025-04-17 Taalas Inc. Large Parameter Set Computation Accelerator Using Configurable Connectivity Mesh
CN117992396B (zh) * 2024-03-29 2024-05-28 深存科技(无锡)有限公司 流式张量处理器
US20250377860A1 (en) * 2024-06-10 2025-12-11 Sparsemind Technology Labs Privitive Limited Circuit for efficiently performing operations on input data to compute an interpretable and differentiable function
CN119963402B (zh) * 2025-04-08 2025-06-20 浪潮(北京)电子信息产业有限公司 图像列化器及电子设备
CN120670030B (zh) * 2025-08-21 2025-11-28 北京开源芯片研究院 指令执行方法、装置、电子设备及可读存储介质
CN120803971B (zh) * 2025-09-15 2025-11-14 上海为旌科技有限公司 一种数据缓存装置、集成电路及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5327537A (en) * 1990-03-13 1994-07-05 At&T Bell Laboratories Apparatus for controlling instruction execution in a pipelined processor
CN101770515A (zh) * 2010-01-18 2010-07-07 杭州顺网科技股份有限公司 一种基于数据块比较的数据更新方法
CN105912476A (zh) * 2016-04-06 2016-08-31 中国科学院计算技术研究所 片上重复寻址的方法及装置
CN106250103A (zh) * 2016-08-04 2016-12-21 东南大学 一种卷积神经网络循环卷积计算数据重用的系统
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN106951961A (zh) * 2017-02-24 2017-07-14 清华大学 一种粗粒度可重构的卷积神经网络加速器及系统

Family Cites Families (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1013070B (zh) * 1988-01-09 1991-07-03 北京信通电脑技术公司 直接处理接近数学公式的″机器表达式″的计算机系统
US5083285A (en) * 1988-10-11 1992-01-21 Kabushiki Kaisha Toshiba Matrix-structured neural network with learning circuitry
GB2288521B (en) * 1994-03-24 1998-10-14 Discovision Ass Reconfigurable process stage
US5956703A (en) * 1995-07-28 1999-09-21 Delco Electronics Corporation Configurable neural network integrated circuit
US5717891A (en) * 1995-10-12 1998-02-10 Analog Devices, Inc. Digital signal processor with caching of instructions that produce a memory conflict
US5889985A (en) * 1996-08-07 1999-03-30 Elbrus International Array prefetch apparatus and method
CN1302403A (zh) * 1998-05-22 2001-07-04 弗兰普顿·E·埃利斯三世 全球网络计算机
US6941289B2 (en) * 2001-04-06 2005-09-06 Sas Institute Inc. Hybrid neural network generation system and method
JP2005534120A (ja) * 2002-07-26 2005-11-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 並列に複数のベクトル要素にアクセスするための装置及び方法
US7236995B2 (en) * 2002-12-27 2007-06-26 Arm Limited Data processing apparatus and method for converting a number between fixed-point and floating-point representations
US9555052B2 (en) * 2003-06-13 2017-01-31 Sumathi Paturu Intrauterine fetal growth restriction—the biochemical rationale of treatment modalities including extraperitoneal transamniotic fetal supplements
US7539714B2 (en) * 2003-06-30 2009-05-26 Intel Corporation Method, apparatus, and instruction for performing a sign operation that multiplies
US7020769B2 (en) * 2003-09-30 2006-03-28 Starcore, Llc Method and system for processing a loop of instructions
CN101211341A (zh) * 2006-12-29 2008-07-02 上海芯盛电子科技有限公司 图像智能模式识别搜索方法
CN101611380A (zh) * 2007-01-30 2009-12-23 尼玛实验室公司 推测性吞吐量计算
CN101021832A (zh) * 2007-03-19 2007-08-22 中国人民解放军国防科学技术大学 支持局部寄存和条件执行的64位浮点整数融合运算群
CN101399977A (zh) * 2007-09-29 2009-04-01 智多微电子(上海)有限公司 解码装置中控制片内存储器的数据并行读写的方法及装置
US8181003B2 (en) * 2008-05-29 2012-05-15 Axis Semiconductor, Inc. Instruction set design, control and communication in programmable microprocessor cores and the like
US20100047768A1 (en) * 2008-08-18 2010-02-25 J. Craig Venter Institute, Inc. Amplification of single viral genomes
US20100122070A1 (en) * 2008-11-07 2010-05-13 Nokia Corporation Combined associative and distributed arithmetics for multiple inner products
CN101644921B (zh) * 2009-08-05 2011-07-20 无锡信捷电气有限公司 一种改进型板料数控折弯设计方法
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
CN101667114B (zh) * 2009-09-30 2012-07-04 西安电子科技大学 适于矩阵求逆的超长指令集微处理系统
CN101783805B (zh) * 2010-03-01 2013-04-17 田耕 一种利用动态矢量矩阵的加密通信方法
CN101833441B (zh) * 2010-04-28 2013-02-13 中国科学院自动化研究所 并行向量处理引擎结构
US9129220B2 (en) * 2010-07-07 2015-09-08 Qualcomm Incorporated Methods and systems for digital neural processing with discrete-level synapes and probabilistic STDP
CN101916180B (zh) * 2010-08-11 2013-05-29 中国科学院计算技术研究所 Risc处理器中执行寄存器类型指令的方法和其系统
CN101963983A (zh) * 2010-09-28 2011-02-02 江苏瑞蚨通软件科技有限公司(中外合资) 一种粗集优化神经网络的数据挖掘方法
SG180028A1 (en) * 2010-10-12 2012-05-30 St Electronics Info Software Systems Pte Ltd Information management system and device
US8515885B2 (en) * 2010-10-29 2013-08-20 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
CN102541814B (zh) * 2010-12-27 2015-10-14 北京国睿中数科技股份有限公司 用于数据通信处理器的矩阵计算装置和方法
CN102637157B (zh) * 2011-02-15 2014-12-03 郑磊 一种片上数字模板系统dtsoc
US8843425B2 (en) * 2011-07-29 2014-09-23 International Business Machines Corporation Hierarchical routing for two-way information flow and structural plasticity in neural networks
US9916538B2 (en) * 2012-09-15 2018-03-13 Z Advanced Computing, Inc. Method and system for feature detection
FR2980905B1 (fr) * 2011-09-29 2014-03-14 Continental Automotive France Procede d'effacement d'informations memorisees dans une memoire reinscriptible non volatile, support de memorisation et calculateur de vehicule automobile
CN102510282B (zh) * 2011-10-25 2014-07-09 中国科学院空间科学与应用研究中心 一种时间分辨单光子计数二维成像系统及方法
CN103975302B (zh) * 2011-12-22 2017-10-27 英特尔公司 矩阵乘法累加指令
CN102609378B (zh) * 2012-01-18 2016-03-30 中国科学院计算技术研究所 一种消息式内存访问装置及其访问方法
KR20130090147A (ko) * 2012-02-03 2013-08-13 안병익 신경망 컴퓨팅 장치 및 시스템과 그 방법
CN103377033B (zh) * 2012-04-12 2016-01-13 无锡江南计算技术研究所 运算核心及其指令管理方法
CN102880341B (zh) * 2012-08-29 2015-08-05 北京集创北方科技有限公司 触摸屏数据处理系统、方法及专用alu
CN103699360B (zh) * 2012-09-27 2016-09-21 北京中科晶上科技有限公司 一种向量处理器及其进行向量数据存取、交互的方法
CN103023839B (zh) * 2012-12-04 2016-12-28 温州大学 基于输出反馈偏置型复连续反馈神经网络结构的无线光通信系统盲均衡方法
US9171029B2 (en) * 2013-01-31 2015-10-27 International Business Machines Corporation Performing batches of selective assignments in a vector friendly manner
CN103246541B (zh) * 2013-04-27 2016-03-23 中国人民解放军信息工程大学 一种自动并行化多级并行代价评估方法
CN103399486B (zh) * 2013-07-05 2016-04-06 杭州电子科技大学 塑料烘干器温度优化节能控制方法
EP2858024A1 (en) * 2013-10-01 2015-04-08 Enyx SA An asset management device and method in a hardware platform
US9582248B2 (en) * 2014-09-26 2017-02-28 Arm Limited Standalone floating-point conversion unit
US20160124651A1 (en) * 2014-11-03 2016-05-05 Texas Instruments Incorporated Method for performing random read access to a block of data using parallel lut read instruction in vector processors
US9996350B2 (en) * 2014-12-27 2018-06-12 Intel Corporation Hardware apparatuses and methods to prefetch a multidimensional block of elements from a multidimensional array
US20170061279A1 (en) * 2015-01-14 2017-03-02 Intel Corporation Updating an artificial neural network using flexible fixed point representation
US10223635B2 (en) * 2015-01-22 2019-03-05 Qualcomm Incorporated Model compression and fine-tuning
US11544214B2 (en) * 2015-02-02 2023-01-03 Optimum Semiconductor Technologies, Inc. Monolithic vector processor configured to operate on variable length vectors using a vector length register
CN104699629B (zh) * 2015-03-16 2017-09-22 清华大学 共享片上缓存划分装置
CN104778026A (zh) * 2015-04-28 2015-07-15 浪潮电子信息产业股份有限公司 一种带simd的高速数据格式转换部件及转换方法
US9633306B2 (en) * 2015-05-07 2017-04-25 Siemens Healthcare Gmbh Method and system for approximating deep neural networks for anatomical object detection
US10083395B2 (en) * 2015-05-21 2018-09-25 Google Llc Batch processing in a neural network processor
US9805303B2 (en) * 2015-05-21 2017-10-31 Google Inc. Rotating data for neural network computations
CN104915322B (zh) * 2015-06-09 2018-05-01 中国人民解放军国防科学技术大学 一种卷积神经网络硬件加速方法
EP3345108B1 (en) * 2015-09-01 2020-11-04 Flex Logix Technologies, Inc. Block memory layout and architecture for programmable logic ic, and method of operating same
US10776690B2 (en) * 2015-10-08 2020-09-15 Via Alliance Semiconductor Co., Ltd. Neural network unit with plurality of selectable output functions
CN106528047B (zh) * 2015-10-08 2019-04-09 上海兆芯集成电路有限公司 一种处理器、神经网络单元及其运作方法
CN106570559A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 一种基于神经网络的数据处理方法和装置
CN105224505B (zh) * 2015-10-29 2018-05-25 中国人民解放军国防科学技术大学 基于矩阵转置操作的fft加速器装置
CN105550749A (zh) * 2015-12-09 2016-05-04 四川长虹电器股份有限公司 一种新型网络拓扑结构的卷积神经网络的构造方法
WO2017105517A1 (en) * 2015-12-18 2017-06-22 Hewlett Packard Enterprise Development Lp Memristor crossbar arrays to activate processors
CN105630680B (zh) * 2015-12-28 2018-12-18 中国科学院微电子研究所 一种随机测试程序生成方法
CN105512723B (zh) * 2016-01-20 2018-02-16 南京艾溪信息科技有限公司 一种用于稀疏连接的人工神经网络计算装置和方法
US10762164B2 (en) * 2016-01-20 2020-09-01 Cambricon Technologies Corporation Limited Vector and matrix computing device
CN105844330B (zh) * 2016-03-22 2019-06-28 华为技术有限公司 神经网络处理器的数据处理方法及神经网络处理器
CN105843775B (zh) * 2016-04-06 2018-12-04 中国科学院计算技术研究所 片上数据划分读写方法、系统及其装置
US20170337156A1 (en) * 2016-04-26 2017-11-23 Onnivation Llc Computing machine architecture for matrix and array processing
US11740903B2 (en) * 2016-04-26 2023-08-29 Onnivation, LLC Computing machine using a matrix space and matrix pointer registers for matrix and array processing
CN105930281B (zh) * 2016-05-12 2019-01-15 清华大学 以配置信息驱动数据访存模式匹配的片上缓存预取机制
CN106022614A (zh) * 2016-05-22 2016-10-12 广州供电局有限公司 一种基于最近邻聚类的神经网络数据挖掘方法
CN106066783A (zh) * 2016-06-02 2016-11-02 华为技术有限公司 基于幂次权重量化的神经网络前向运算硬件结构
CN105976024B (zh) * 2016-06-03 2018-12-25 福州大学 基于rbf的模式分类器及其工作方法
CN106203622B (zh) * 2016-07-14 2018-12-25 杭州华为数字技术有限公司 神经网络运算装置
CN106650922B (zh) * 2016-09-29 2019-05-03 清华大学 硬件神经网络转换方法、计算装置、软硬件协作系统
US10175980B2 (en) * 2016-10-27 2019-01-08 Google Llc Neural network compute tile
CN106599840A (zh) * 2016-12-13 2017-04-26 郑州云海信息技术有限公司 一种图像识别协处理器、图像识别系统及方法
CN106845631B (zh) * 2016-12-26 2020-05-29 上海寒武纪信息科技有限公司 一种流执行方法及装置
CN106775599B (zh) * 2017-01-09 2019-03-01 南京工业大学 递归神经网络的多计算单元粗粒度可重构系统及方法
CN106909971A (zh) * 2017-02-10 2017-06-30 华南理工大学 一种面向多核计算环境的bp神经网络并行化方法
JP6865847B2 (ja) * 2017-04-19 2021-04-28 シャンハイ カンブリコン インフォメーション テクノロジー カンパニー リミテッドShanghai Cambricon Information Technology Co.,Ltd. 処理装置、チップ、電子設備及び方法
CN107807819B (zh) * 2017-07-20 2021-06-25 上海寒武纪信息科技有限公司 一种支持离散数据表示的用于执行人工神经网络正向运算的装置及方法
US10223114B1 (en) * 2017-09-29 2019-03-05 Intel Corporation Fixed point to floating point conversion
US11210063B2 (en) * 2019-03-27 2021-12-28 Intel Corporation Machine learning training architecture for programmable devices
US11983530B2 (en) * 2020-03-27 2024-05-14 Intel Corporation Reconfigurable digital signal processing (DSP) vector engine

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5327537A (en) * 1990-03-13 1994-07-05 At&T Bell Laboratories Apparatus for controlling instruction execution in a pipelined processor
CN101770515A (zh) * 2010-01-18 2010-07-07 杭州顺网科技股份有限公司 一种基于数据块比较的数据更新方法
CN105912476A (zh) * 2016-04-06 2016-08-31 中国科学院计算技术研究所 片上重复寻址的方法及装置
CN106250103A (zh) * 2016-08-04 2016-12-21 东南大学 一种卷积神经网络循环卷积计算数据重用的系统
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN106951961A (zh) * 2017-02-24 2017-07-14 清华大学 一种粗粒度可重构的卷积神经网络加速器及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Synthesizing neural network applications using computer algebra;C.P. Tsang. etc;《Proceedings of 1993 International Conference on Neural Networks (IJCNN-93-Nagoya, Japan)》;20020806;第1-4页 *
计算神经网络与智能计算机;赵松年;《物理》;19940831;第1-6页 *

Also Published As

Publication number Publication date
CN107608715B (zh) 2020-07-03
CN107992329A (zh) 2018-05-04
CN109284822A (zh) 2019-01-29
EP4693103A2 (en) 2026-02-11
WO2019015541A1 (zh) 2019-01-24
CN109284130A (zh) 2019-01-29
CN111221578A (zh) 2020-06-02
EP3686734A4 (en) 2021-08-18
CN110688159B (zh) 2021-12-14
CN107729990A (zh) 2018-02-23
CN109284130B (zh) 2021-03-23
CN110597559A (zh) 2019-12-20
CN110825434A (zh) 2020-02-21
CN107992329B (zh) 2021-05-11
CN110688157B (zh) 2022-02-22
CN110688158A (zh) 2020-01-14
CN111221578B (zh) 2022-07-15
US20230024840A1 (en) 2023-01-26
EP3686734A1 (en) 2020-07-29
CN110036369A (zh) 2019-07-19
CN107844322A (zh) 2018-03-27
US11983534B2 (en) 2024-05-14
CN107608715A (zh) 2018-01-19
US20210224069A1 (en) 2021-07-22
CN110597558B (zh) 2021-11-12
CN110688158B (zh) 2022-02-22
CN107807819B (zh) 2021-06-25
US11481215B2 (en) 2022-10-25
CN107832082A (zh) 2018-03-23
CN107729990B (zh) 2021-06-08
CN110597559B (zh) 2021-10-19
CN109284822B (zh) 2021-09-21
CN110688159A (zh) 2020-01-14
CN107807819A (zh) 2018-03-16
CN110825434B (zh) 2021-12-21
CN110036369B (zh) 2023-11-24
CN107729989B (zh) 2020-12-29
EP3686734B1 (en) 2025-12-24
CN107844322B (zh) 2020-08-04
CN107832082B (zh) 2020-08-04
CN110688157A (zh) 2020-01-14
CN110597558A (zh) 2019-12-20
CN107729989A (zh) 2018-02-23
CN111176727A (zh) 2020-05-19

Similar Documents

Publication Publication Date Title
CN111176727B (zh) 计算装置以及计算方法
CN109284817B (zh) 深度可分离卷积神经网络处理架构/方法/系统及介质
CN109062611B (zh) 神经网络处理装置及其执行向量缩放指令的方法
CN107632965B (zh) 可重构的s型运算装置及运算方法
CN110717583B (zh) 卷积电路、处理器、芯片、板卡和电子设备
CN111047022B (zh) 一种计算装置及相关产品
WO2022161318A1 (zh) 数据处理装置、方法及相关产品
CN111353591A (zh) 一种计算装置及相关产品
CN112686379B (zh) 集成电路装置、电子设备、板卡和计算方法
CN111079908B (zh) 片上网络数据处理方法、存储介质、计算机设备和装置
CN111488963B (zh) 神经网络计算装置和方法
CN107678781A (zh) 处理器以及用于在处理器上执行指令的方法
CN111047021B (zh) 一种计算装置及相关产品
CN109389213B (zh) 存储装置及方法、数据处理装置及方法、电子装置
CN111368986B (zh) 一种神经网络计算装置和方法
CN112801276B (zh) 数据处理方法、处理器及电子设备
CN111368967A (zh) 一种神经网络计算装置和方法
CN111047030A (zh) 运算方法、装置、计算机设备和存储介质
CN111382848A (zh) 一种计算装置及相关产品
CN111291871A (zh) 一种计算装置及相关产品
CN115438777A (zh) 对神经元数据执行Winograd卷积正变换的装置
CN111368987B (zh) 一种神经网络计算装置和方法
CN111384944B (zh) 全加器、半加器、数据处理方法、芯片及电子设备
CN111367567B (zh) 一种神经网络计算装置和方法
CN111368990B (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