CN112955878B - 实施神经网络的激活逻辑的装置及其方法 - Google Patents
实施神经网络的激活逻辑的装置及其方法 Download PDFInfo
- Publication number
- CN112955878B CN112955878B CN201980073120.5A CN201980073120A CN112955878B CN 112955878 B CN112955878 B CN 112955878B CN 201980073120 A CN201980073120 A CN 201980073120A CN 112955878 B CN112955878 B CN 112955878B
- Authority
- CN
- China
- Prior art keywords
- bits
- address translation
- translation look
- data values
- preset values
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
-
- 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/50—Adding; Subtracting
-
- 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
-
- 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
-
- 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
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Complex Calculations (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Multi Processors (AREA)
- Logic Circuits (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
一种实施神经网络的激活逻辑的装置,包含输入单元、第一地址转换查找表、中间存储单元、第二地址转换查找表、和输出单元。第一地址转换查找表包含(2^n1)个第一条目,其根据输入单元的n个比特映射到(2^n1)个比特地址,每一第一条目包含(n1‑1)个比特和对应存储在(n1‑1)个比特中的(n1‑1)个第一预设值,以及输入单元的n个比特的n1个输入数据值映射到存储在第一地址转换查找表的(2^n1)个第一条目的其中之一的(n1‑1)个第一预设值。中间存储单元包含(n‑1)个比特。第二地址转换查找表包含(2^(n‑1))个第二条目,其根据中间存储单元的(n‑1)个比特映射到(2^(n‑1))个比特地址,以及每一第二条目包含(n2+1)个比特和对应存储在(n2+1)个比特中的(n2+1)个第二预设值。中间存储单元的(n‑1)个比特的(n‑1)个中间数据值映射到存储在第二地址转换查找表的(2^(n‑1))个第二条目的其中之一的(n2+1)个第二预设值。输出单元用于输出n个输出数据值。
Description
技术领域
本申请涉及神经网络的技术领域,尤其是涉及一种实施神经网络的激活逻辑的装置及其方法。
背景技术
在神经网络中实施激活逻辑(activation logics)的最常用的方法是使用查找表。基本上,在电子装置的神经网络中执行查找表的方法会消耗存储器的许多比特。尤其是,即使与神经网络中的每个神经元共享相同的查找表数值,也会使用激活逻辑的多个多级多路多工器(multi-level multiplexer)的输出,以便并行地操作查找表的数值,进而增加了电子装置的硬件部件的负担。因此,有必要减小查找表所占用的存储器的比特大小以解决上述问题。
发明内容
本申请提供了一种实施神经网络的激活逻辑的装置及其方法,以减少神经网络的存储器大小。所述装置被配置为通过在多阶段模式(multi-stage mode)中映射(mapping)神经网络的输入值和输出值来减小地址转换的存储器大小。
基于上述目的,本申请阐述了实施神经网络的激活逻辑的装置。所述装置包含一输入单元、一第一地址转换查找表、一中间存储单元、一第二地址转换查找表、和一输出单元。所述输入单元包含n个比特和n个输入数据值,其中所述n个输入数据值对应存储在所述n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数。所述第一地址转换查找表包含(2^n1)个第一条目,其中所述(2^n1)个第一条目根据所述输入单元的所述n个比特映射到(2^n1)个比特地址,每一所述(2^n1)个第一条目包含(n1-1)个比特和(n1-1)个第一预设值,且所述(n1-1)个第一预设值对应存储在所述(n1-1)个比特中。所述输入单元的所述n个比特的n1个输入数据值映射到所述(n1-1)个第一预设值,且所述(n1-1)个第一预设值存储在所述第一地址转换查找表的所述(2^n1)个第一条目的其中之一。所述中间存储单元耦合到所述输入单元和所述第一地址转换查找表,其中所述中间存储单元包含(n-1)个比特和(n-1)个中间数据值,且所述(n-1)个比特是通过将所述第一地址转换查找表的所述(n1-1)个比特与所述输入单元的n2个比特组合而构成,以及所述(n-1)个中间数据值是通过将所述第一地址转换查找表的所述(n1-1)个第一预设值与所述输入单元的所述n个比特的n2个输入数据值组合而构成。所述第二地址转换查找表包含(2^(n-1))个第二条目,其中所述(2^(n-1))个第二条目根据所述中间存储单元的所述(n-1)个比特映射到(2^(n-1))个比特地址,以及每一所述(2^(n-1))个第二条目包含(n2+1)个比特和(n2+1)个第二预设值,且所述(n2+1)个第二预设值对应存储在所述(n2+1)个比特中。所述中间存储单元的所述(n-1)个比特的所述(n-1)个中间数据值映射到所述(n2+1)个第二预设值,且所述(n2+1)个第二预设值存储在所述第二地址转换查找表的所述(2^(n-1))个第二条目的其中之一。所述输出单元耦合到所述第一地址转换查找表和所述第二地址转换查找表,其中所述输出单元将所述第一地址转换查找表的所述(n1-1)个比特和所述第二地址转换查找表的所述(n2+1)个比特组合,以通过组合所述(n1-1)个第一预设值和所述(n2+1)个第二预设值而输出n个输出数据值。
在一实施例中,所述装置还包含一第一解码器,其耦合至所述输入单元和所述第一地址转换查找表,以及所述第一解码器用于解码所述n个比特的n1个比特以产生2的n1次方个的所述(2^n1)个比特地址。
在一实施例中,所述装置还包含一第二解码器,其耦合至所述中间存储单元和所述第二地址转换查找表,以及所述第二解码器用于解码所述中间存储单元的所述(n-1)个比特以产生2的(n-1)次方个的所述(2^(n-1))个比特地址。
在一实施例中,在所述输入单元中,所述n个比特的n1个比特定义为所述n1个输入数据值的多个高比特,以及所述n2个比特定义为所述n2个输入数据值的多个低比特。
在一实施例中,所述第二地址转换查找表的每一所述(2^(n-1))个第二条目的所述(n2+1)个比特包含一比特,且所述比特定义为所述(n1-1)个第一预设值和所述(n2+1)个第二预设值的组合的饱和点的指标比特。
在一实施例中,在所述输出单元中,所述(n1-1)个比特设置在所述饱和点的所述比特和所述(n2+1)个比特之间。
在一实施例中,所述中间存储单元的所述(n-1)个比特定义为n1个中间数据值的多个高比特,以及所述中间存储单元的所述n2个比特定义为所述输入单元的所述n2个输入数据值的多个高比特。
在一实施例中,所述第一地址转换查找表的(2^n1)个比特和所述(n1-1)个比特的乘积与所述第二地址转换查找表的(2^(n-1))个比特和所述(n2+1)个比特的乘积的内存大小总和小于(2^n)个比特和所述n个比特的乘积的内存大小总和。
在一实施例中,所述第一地址转换查找表的所述(2^n1)个比特和所述(n1-1)个比特的所述乘积小于所述第二地址转换查找表的所述(2^(n-1))个比特和所述(n2+1)个比特的所述乘积。
在一实施例中,所述输入单元的所述n个比特进一步包含一符号位。
在一实施例中,所述符号位为一负符号位,以及所述n个比特的所述n个输入数据值以二补数表示。
在一实施例中,本申请提供一种实施神经网络的激活逻辑的装置。所述装置包含一输入单元、一第一地址转换查找表、一中间存储单元、和一第二地址转换查找表。所述输入单元包含n个比特和n个输入数据值,其中所述n个输入数据值对应存储在所述n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数。所述第一地址转换查找表包含(2^n1)个第一条目,其中所述(2^n1)个第一条目根据所述输入单元的所述n个比特映射到(2^n1)个比特地址,每一所述(2^n1)个第一条目包含(n1-1)个比特和(n1-1)个第一预设值,且所述(n1-1)个第一预设值对应存储在所述(n1-1)个比特中。所述输入单元的所述n个比特的n1个输入数据值映射到所述(n1-1)个第一预设值,且所述(n1-1)个第一预设值存储在所述第一地址转换查找表的所述(2^n1)个第一条目的其中之一。所述中间存储单元耦合到所述输入单元和所述第一地址转换查找表,其中所述中间存储单元包含(n-1)个比特和(n-1)个中间数据值,且所述(n-1)个比特是通过将所述第一地址转换查找表的所述(n1-1)个比特与所述输入单元的n2个比特组合而构成,以及所述(n-1)个中间数据值是通过将所述第一地址转换查找表的所述(n1-1)个第一预设值与所述输入单元的所述n个比特的n2个输入数据值组合而构成。所述第二地址转换查找表包含(2^(n-1))个第二条目,其中所述(2^(n-1))个第二条目根据所述中间存储单元的所述(n-1)个比特映射到(2^(n-1))个比特地址,以及每一所述(2^(n-1))个第二条目包含(n2+1)个比特和(n2+1)个第二预设值,且所述(n2+1)个第二预设值对应存储在所述(n2+1)个比特中。所述中间存储单元的所述(n-1)个比特的所述(n-1)个中间数据值映射到所述(n2+1)个第二预设值,且所述(n2+1)个第二预设值存储在所述第二地址转换查找表的所述(2^(n-1))个第二条目的其中之一。所述输出单元耦合到所述第一地址转换查找表和所述第二地址转换查找表。所述第二地址转换查找表组合所述(n1-1)个第一预设值和所述(n2+1)个第二预设值而输出n个输出数据值。
基于上述目的,本申请阐述了实施神经网络的激活逻辑的方法。所述方法包含:
一输入单元输入n个输入数据值至n个比特,其中所述n个输入数据值对应存储在所述n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数;
一第一地址转换查找表根据所述输入单元的所述n个比特将(2^n1)个第一条目映射到(2^n1)个比特地址,其中每一所述(2^n1)个第一条目包含(n1-1)个比特和(n1-1)个第一预设值,且所述(n1-1)个第一预设值对应存储在所述(n1-1)个比特中,以及所述输入单元的所述n个比特的n1个输入数据值映射到所述(n1-1)个第一预设值,且所述(n1-1)个第一预设值存储在所述第一地址转换查找表的所述(2^n1)个第一条目的其中之一;
一中间存储单元组合所述第一地址转换查找表的所述(n1-1)个比特与所述输入单元的n2个比特;
所述中间存储单元组合所述第一地址转换查找表的所述(n1-1)个第一预设值与所述输入单元的所述n个比特的n2个输入数据值;
一第二地址转换查找表根据所述中间存储单元的所述(n-1)个比特将(2^(n-1))个第二条目映射到(2^(n-1))个比特地址;其中每一所述(2^(n-1))个第二条目包含(n2+1)个比特和(n2+1)个第二预设值,且所述(n2+1)个第二预设值对应存储在所述(n2+1)个比特中;
所述第二地址转换查找表将所述中间存储单元的所述(n-1)个比特的(n-1)个中间数据值映射到所述(n2+1)个第二预设值,其中所述(n2+1)个第二预设值存储在所述第二地址转换查找表的所述(2^(n-1))个第二条目的其中之一;以及
一输出单元组合所述第一地址转换查找表的所述(n1-1)个比特和所述第二地址转换查找表的所述(n2+1)个比特,以通过组合所述(n1-1)个第一预设值和所述(n2+1)个第二预设值而输出n个输出数据值。
本申请提供了一种实施神经网络的激活逻辑的装置及其方法,以减少神经网络的存储器大小。所述装置被配置为通过多阶段模式中映射神经网络的输入值和输出值来减小地址转换的存储器大小,使得当执行神经网络的激活逻辑时,通过减少查找表的存储器大小来映射输入数据值和输出数据值。
附图说明
以下实施例参考附图,用于举例说明在合适的计算机环境中本申请的具体实施例。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。
图1是根据本申请的一实施例的使用地址转换查找表实施神经网络的激活逻辑的装置的方块示意图。
图2是根据本申请的一实施例的比特配置的数字系统和多个数据范围的示意图。
图3是根据本申请的一实施例的具有半范围操作的地址转换查找表的映射配置的示意图。
图4是根据本申请的一实施例的使用地址转换查找表的两个激活器的方块示意图。
图5是根据本申请的一实施例的使用地址转换查找表来实现神经网络的激活逻辑的方法的流程图。
具体实施方式
以下实施例参考附图,用于举例说明在合适的计算机环境中本申请的具体实施例。应当注意,示例性描述的实施例用于描述和理解本申请,但是本申请不限于此。本示例中提到的方向术语(如上侧、下侧、前侧、后侧、左侧、右侧、内侧、外侧、和侧面)仅供参考。因此,方向术语仅用于描述和理解本申请而不是限制本申请。在图中,相同的附图标记用于表示具有相似结构的元件。
图1是根据本申请的一实施例的使用地址转换查找表实施神经网络的激活逻辑的装置的方块示意图。装置包括输入单元100、第一解码器102、第一地址转换查找表104、中间存储单元106、第二解码器108、第二地址转换查找表110、和输出单元112。在一个实施例中,输入单元100、第一解码器102、第一地址转换查找表104、中间存储单元106、第二解码器108、第二地址转换查找表110、以及输出单元112可以由电路、寄存器、或逻辑组件来实现。神经网络可以是软件的应用程序或硬件的电路。
如图1所示,第一解码器102将输入单元100耦合到第一地址转换查找表104。中间存储单元106将第一地址转换查找表104耦合到第二解码器108并且耦合到输入单元100。第一地址转换查找表104耦合到输出单元112。第二地址转换查找表110将第二解码器108耦合到输出单元112。
在图1中,输入单元100包括n个比特和n个输入数据值。n个输入数据值相应存储在n个比特中。n被定义为n1与n2的和,并且n、n1、和n2是正整数。如图1所示,在一个实施例中,n是8,n1是4,并且n2是3,但不限于上述比特数。在另一个实施例中,n可以大于8比特(例如,16比特)。第一地址转换查找表104包括(2^n1)个第一条目。(2^n1)个第一条目基于输入单元100的n个比特映射到(2^n1)个比特地址。每一第一条目包括(n1-1)个比特和(n1-1)个第一预设值。(n1-1)个第一预设值相应地存储在(n1-1)个比特中,其中输入单元112的n个比特的n1个输入数据值被映射到(n1-1)个第一预设值。(n1-1)个第一预设值存储在第一地址转换查找表104的(2^n1)个第一条目的其中之一。
如图1所示,中间存储单元106耦合到输入单元100和第一地址转换查找表104。中间存储单元106包括(n-1)个比特。(n-1)个比特是通过将第一地址转换查找表104的(n1-1)个比特与输入单元104的n2个比特组合而构成。中间存储单元106包括(n-1)个中间数据值。(n-1)个中间数据值是通过将第一地址转换查找表104的(n1-1)个第一预设值与输入单元100的n个比特的n2个输入数据值组合而构成。第二地址转换查找表110包括(2^(n-1))个第二条目。(2^(n-1))个第二条目基于中间存储单元106的(n-1)个比特映射到(2^(n-1))个比特地址。(2^(n-1))个第二条目中的每一个包括(n2+1)个比特和(n2+1)个第二预设值。(n2+1)个第二预设值对应存储在(n2+1)个比特中。中间存储单元106的(n-1)个比特的(n-1)个中间数据值被映射到(n2+1)个第二预设值。(n2+1)个第二预设值存储第二地址转换查找表110的(2^(n-1))个第二条目的其中之一。
在图1中,输出单元112耦合到第一地址转换查找表104和第二地址转换查找表110。输出单元112用于组合第一地址转换查找表104的(n1-1)个比特与第二地址转换查找表110的(n2+1)个比特,以通过组合(n1-1)个第一预设值和(n2+1)个第二预设值而输出n个输出数据值。
在一实施例中,第一解码器102耦合到输入单元100和第一地址转换查找表104,并且被配置为解码n个比特的n1个比特以用于生成2的n1次方个的(2^n1)个比特地址。例如,如果n1是4,对应于16个第一条目,则(2^n1)个比特地址在0到15的范围内。在一实施例中,第二解码器108耦合到中间存储单元106和第二地址转换查找表110,并且被配置为解码中间存储单元106的(n-1)个比特以用于生成2的(n-1)次方个的(2^(n-1))个比特地址。
在一实施例中,n个比特的n1个比特被定义为输入单元100的n1个输入数据值的高比特,并且n2个比特被定义为输入单元100的n2个输入数据值的低比特。
在一实施例中,第二地址转换查找表的每一(2^(n-1))个第二条目的(n2+1)个比特包含一比特,且所述比特定义为(n1-1)个第一预设值和(n2+1)个第二预设值的组合的饱和点的指标比特。在一实施例中,在输出单元112中,(n1-1)个比特设置在饱和点的所述比特和(n2+1)个比特之间。
在一实施例中,中间存储单元106的(n-1)个比特被定义为n1个中间数据值的高比特,并且中间存储单元106的n2个比特被定义为输入单元100的n2个输入数据值的高比特。
在一实施例中,第一地址转换查找表104的(2^n1)个比特和(n1-1)个比特的乘积与第二地址转换查找表110的(2^(n-1))个比特和(n2+1)个比特的乘积的内存大小总和小于(2^n)个比特和n个比特的乘积的内存大小总和。
在一实施例中,输入单元100的n个比特进一步包含一符号位。当符号位为一负符号位时,n个比特的n个输入数据值以二补数表示。
在本申请的实施例中,实施神经网络的激活逻辑的装置被配置为在多阶段模式(例如,第一阶段模式和第二阶段模式)中映射(mapping)神经网络的输入数据值和输出数据值来减小地址转换的存储器大小。举例来说,第一地址转换查找表104被定义为第一阶段模式,并且第二地址转换查找表110通过第一地址转换查找表104和第二解码器108被耦合到第一地址转换查找表104,使得当执行神经网络的激活逻辑时,通过减小查找表的存储器大小来映射输入数据值和输出数据值。
图2是根据本申请的一实施例的比特配置的数字系统和多个数据范围的示意图。Q(1.0)201被定义为2比特带有符号的整数,其没有分数比特(例如,从-2到1)。Q(1.2)202被定义为4比特带有符号的定点(fixed-point)有理数,其具有2分数比特(例如,从-2到1.75)。Q(1.6)203被定义为8比特带有符号的定点有理数,其具有6分数比特(例如,从-2到1.984)。执行激活逻辑后,数字系统相同且实际数据值在-1和+1之间压缩。举例来说,Q(1.6)被定义为8比特带有符号的定点有理数且具有6分数比特(例如,从-2到1.984),以及激活逻辑的实际输出数据值被转换为-1到1的范围(如参考符号204所示)。相似地,在二补数的数字系统中,激活器的输入和输出分数与Q(1.6)相同。
图3是根据本申请的一实施例的具有半范围操作的地址转换查找表的映射配置的示意图。参考图1和图3,输入单元100的n1个比特(例如,4个比特)的n1个输入数据值包括从0到2的第一范围300。第一地址转换查找表104的16个第一条基于输入单元100的4比特而映射到16个比特地址。举例来说,如果n1是4,对应于16个第一条目,则(2^n1)个比特地址在0到15的范围之间。具体地,第一地址转换查找表104的16个第一条目(即,16个第一预设值)使用16个第一条目中的每一个的3个比特而粗略地映射到中间存储单元106。
在图1和图3中,第二地址转换查找表110的64个条第二条目基于中间存储单元106的6个比特而映射到64个比特地址。举例来说,如果n是7,对应于64个第一条目,则(2^(n-1))个比特地址在0到63的范围内。具体地,第二地址转换查找表110的64个第二条目(即,64个第二预设值)除了指标比特“m”之外,使用64个第二条目中的每一个的3个比特精确地映射到输出单元112。输出单元112的n个比特(例如,7个比特)的n个输出数据值包括从0到1的第二范围302。
在图1和图3中,对应于从0到2的第一范围300的第一地址转换查找表104映射到对应于从0到1的第二范围302的第二地址转换查找表110,使得输入单元100的n个输出数据值由0到1来表示。最大数据值由指标比特确定。当输入单元100的n个输出数据值由-1到1来表示时,根据输出单元112处的符号位使用符号位的二补数。
图4是根据本申请的一实施例的使用地址转换查找表的两个激活器的方块示意图。每个激活器件由实施激活逻辑的装置来实现(如图1所示的第一多路多工器电路400和第二多路多工器电路400)。此外,当连接到行缓冲器401的输入单元100的n个比特还包括符号位时,第一多路多工器电路400设置在输入单元100、第一地址转换查找表104、和第二地址转换查找表110之间。第二多路多工器电路402设置在输出单元112和输出缓冲器404之间。
图5是根据本申请的一实施例的使用地址转换查找表来实现神经网络的激活逻辑的方法的流程图。方法包含以下步骤。
在步骤S500中,输入单元输入n个输入数据值至n个比特。所述n个输入数据值对应存储在n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数。在一实施例中,第一解码器解码n个比特的n1个比特以产生2的n1次方个的(2^n1)个比特地址。
在步骤S502中,第一地址转换查找表根据输入单元的n个比特将(2^n1)个第一条目映射到(2^n1)个比特地址。每一(2^n1)个第一条目包含(n1-1)个比特和(n1-1)个第一预设值,且(n1-1)个第一预设值对应存储在所述(n1-1)个比特中,以及输入单元的n个比特的n1个输入数据值映射到(n1-1)个第一预设值。(n1-1)个第一预设值存储在第一地址转换查找表的(2^n1)个第一条目的其中之一。
在步骤S504中,中间存储单元组合第一地址转换查找表的(n1-1)个比特与输入单元的n2个比特。
在步骤S506中,中间存储单元组合第一地址转换查找表的(n1-1)个第一预设值与输入单元的n个比特的n2个输入数据值。
在步骤S508中,第二地址转换查找表根据中间存储单元的(n-1)个比特将(2^(n-1))个第二条目映射到(2^(n-1))个比特地址。每一(2^(n-1))个第二条目包含(n2+1)个比特和(n2+1)个第二预设值,且(n2+1)个第二预设值对应存储在(n2+1)个比特中。在一实施例中,第二解码器将所述中间存储单元的(n-1)个比特解码以产生2的(n-1)次方个的(2^(n-1))个比特地址。
在步骤S510中,第二地址转换查找表将中间存储单元的(n-1)个比特的(n-1)个中间数据值映射到(n2+1)个第二预设值。(n2+1)个第二预设值存储在第二地址转换查找表的(2^(n-1))个第二条目的其中之一。
在步骤S512中,输出单元组合第一地址转换查找表的(n1-1)个比特和第二地址转换查找表的(n2+1)个比特,以通过组合(n1-1)个第一预设值和(n2+1)个第二预设值而输出n个输出数据值。
在一实施例中,n个比特的n1个比特定义为n1个输入数据值的高比特,以及n2个比特定义为n2个输入数据值的低比特。
在一实施例中,第二地址转换查找表的每一(2^(n-1))个第二条目的(n2+1)个比特包含一比特,且所述比特定义为(n1-1)个第一预设值和(n2+1)个第二预设值的组合的饱和点的指标比特。
在一实施例中,在输出单元中,(n1-1)个比特设置在所述饱和点的所述比特和(n2+1)个比特之间。
在一实施例中,中间存储单元的(n-1)个比特定义为n1个中间数据值的高比特,以及中间存储单元的n2个比特定义为输入单元的n2个输入数据值的高比特。
在一实施例中,第一地址转换查找表的(2^n1)个比特和(n1-1)个比特的乘积与第二地址转换查找表的(2^(n-1))个比特和(n2+1)个比特的乘积的内存大小总和小于(2^n)个比特和n个比特的乘积的内存大小总和。
在一实施例中,第一地址转换查找表的(2^n1)个比特和(n1-1)个比特的乘积小于第二地址转换查找表的(2^(n-1))个比特和(n2+1)个比特的乘积。
在一实施例中,输入单元的n个比特进一步包含一符号位。
在一实施例中,当符号位为一负符号位时,n个比特的n个输入数据值以二补数表示。
在一实施例中,实施神经网络的激活逻辑的装置包括处理器和存储器,其中存储器被配置为存储可执行程序指令,并且处理器被配置为执行包含上述步骤S500到步骤S512的可执行程序指令。
在本说明书的描述中,参考术语“一个实施例”,“某些实施例”,“示例性实施例”,“一些实施例”,“示例”,“特定示例”或“一些示例”等的描述意指结合所述实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本申请中,对上述术语的示意性表述不必须针对相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在本申请的任何的一个或多个实施例或示例中以合适的方式结合。本申请的实施例所公开的方法的动作可以直接由硬件的解码处理器体现并且由硬件的解码处理器直接执行,或者通过解码处理器中的硬件和软件代码的组合来直接实现。软件代码可以存储在由随机存取存储器、闪存、只读存储器、可编程只读存储器、电可擦除可编程存储器、和寄存器所组成的组合中选择的存储媒体中。处理器读取存储器中的信息(例如,指令),并结合硬件完成上述方法的动作。
根据以上描述,本申请提供了一种实施神经网络的激活逻辑的装置及其方法,用以减少神经网络的存储器大小。所述装置被配置为通过多阶段模式中映射神经网络的输入值和输出值来减小地址转换的存储器大小,使得当执行神经网络的激活逻辑时,通过减少查找表的存储器大小来映射输入数据值和输出数据值。
本领域的技术人员所理解的,本说明的前述优选实施例是说明性的而非用来限制本申请。它们目的在涵盖各种修改和类似的安排,包括在本申请的精神和范围内,其范围应当被赋予最广泛的解释,以包含所有这些修改和类似结构。
Claims (16)
1.一种实施神经网络的激活逻辑的装置,其特征在于,包含:
一输入单元,包含n个比特和n个输入数据值,其中所述n个输入数据值对应存储在所述n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数;
一第一地址转换查找表,包含2^n1个第一条目,其中所述2^n1个第一条目根据所述输入单元的所述n个比特映射到2^n1个比特地址,每一所述2^n1个第一条目包含n1-1个比特和n1-1个第一预设值,且所述n1-1个第一预设值对应存储在所述n1-1个比特中;以及所述输入单元的所述n个比特的n1个输入数据值映射到所述n1-1个第一预设值,且所述n1-1个第一预设值存储在所述第一地址转换查找表的所述2^n1个第一条目的其中之一;
一中间存储单元,耦合到所述输入单元和所述第一地址转换查找表,其中所述中间存储单元包含n-1个比特和n-1个中间数据值,且所述n-1个比特是通过将所述第一地址转换查找表的所述n1-1个比特与所述输入单元的n2个比特组合而构成,以及所述n-1个中间数据值是通过将所述第一地址转换查找表的所述n1-1个第一预设值与所述输入单元的所述n个比特的n2个输入数据值组合而构成;
一第二地址转换查找表,包含2^(n-1)个第二条目,其中所述2^(n-1)个第二条目根据所述中间存储单元的所述n-1个比特映射到2^(n-1)个比特地址,以及每一所述2^(n-1)个第二条目包含n2+1个比特和n2+1个第二预设值,且所述n2+1个第二预设值对应存储在所述n2+1个比特中;以及所述中间存储单元的所述n-1个比特的所述n-1个中间数据值映射到所述n2+1个第二预设值,且所述n2+1个第二预设值存储在所述第二地址转换查找表的所述2^(n-1)个第二条目的其中之一;
一输出单元,耦合到所述第一地址转换查找表和所述第二地址转换查找表,其中所述输出单元将所述第一地址转换查找表的所述n1-1个比特和所述第二地址转换查找表的所述n2+1个比特组合,以通过组合所述n1-1个第一预设值和所述n2+1个第二预设值而输出n个输出数据值;
一第一解码器,耦合至所述输入单元和所述第一地址转换查找表,以及所述第一解码器用于解码所述n个比特的n1个比特以产生2的n1次方个的所述2^n1个比特地址;以及
一第二解码器,耦合至所述中间存储单元和所述第二地址转换查找表,以及所述第二解码器用于解码所述中间存储单元的所述n-1个比特以产生2的n-1次方个的所述2^(n-1)个比特地址;
其中在所述输入单元中,所述n个比特的n1个比特定义为所述n1个输入数据值的多个高比特,以及所述n2个比特定义为所述n2个输入数据值的多个低比特。
2.如权利要求1所述的实施神经网络的激活逻辑的装置,其特征在于,所述第二地址转换查找表的每一所述2^(n-1)个第二条目的所述n2+1个比特包含一比特,且所述比特定义为所述n1-1个第一预设值和所述n2+1个第二预设值的组合的饱和点的指标比特。
3.如权利要求2所述的实施神经网络的激活逻辑的装置,其特征在于,在所述输出单元中,所述n1-1个比特设置在所述饱和点的所述比特和所述n2+1个比特之间。
4.如权利要求1所述的实施神经网络的激活逻辑的装置,其特征在于,所述中间存储单元的所述n-1个比特定义为n1个中间数据值的多个高比特,以及所述中间存储单元的所述n2个比特定义为所述输入单元的所述n2个输入数据值的多个高比特。
5.如权利要求1所述的实施神经网络的激活逻辑的装置,其特征在于,所述第一地址转换查找表的2^n1个比特和所述n1-1个比特的乘积与所述第二地址转换查找表的2^(n-1)个比特和所述n2+1个比特的乘积的内存大小总和小于2^n个比特和所述n个比特的乘积的内存大小总和。
6.如权利要求5所述的实施神经网络的激活逻辑的装置,其特征在于,所述第一地址转换查找表的所述2^n1个比特和所述n1-1个比特的所述乘积小于所述第二地址转换查找表的所述2^(n-1)个比特和所述n2+1个比特的所述乘积。
7.如权利要求1所述的实施神经网络的激活逻辑的装置,其特征在于,所述输入单元的所述n个比特进一步包含一符号位。
8.如权利要求7所述的实施神经网络的激活逻辑的装置,其特征在于,所述符号位为一负符号位,以及所述n个比特的所述n个输入数据值以二补数表示。
9.一种实施神经网络的激活逻辑的方法,其特征在于,包含:
一输入单元输入n个输入数据值至n个比特,其中所述n个输入数据值对应存储在所述n个比特中,以及n定义为n1与n2的和,且n、n1、和n2为正整数;
一第一地址转换查找表根据所述输入单元的所述n个比特将2^n1个第一条目映射到2^n1个比特地址,其中每一所述第一条目包含n1-1个比特和n1-1个第一预设值,且所述n1-1个第一预设值对应存储在所述n1-1个比特中,以及所述输入单元的所述n个比特的n1个输入数据值映射到所述n1-1个第一预设值,且所述n1-1个第一预设值存储在所述第一地址转换查找表的所述2^n1个第一条目的其中之一;
一中间存储单元组合所述第一地址转换查找表的所述n1-1个比特与所述输入单元的n2个比特,其中所述中间存储单元包含n-1个比特和n-1个中间数据值,且所述n-1个比特是通过将所述第一地址转换查找表的所述n1-1个比特与所述输入单元的n2个比特组合而构成;
所述中间存储单元组合所述第一地址转换查找表的所述n1-1个第一预设值与所述输入单元的所述n个比特的n2个输入数据值,其中所述n-1个中间数据值是通过将所述第一地址转换查找表的所述n1-1个第一预设值与所述输入单元的所述n个比特的n2个输入数据值组合而构成;
一第二地址转换查找表根据所述中间存储单元的所述n-1个比特将2^(n-1)个第二条目映射到2^(n-1)个比特地址;其中每一所述2^(n-1)个第二条目包含n2+1个比特和n2+1个第二预设值,且所述n2+1个第二预设值对应存储在所述n2+1个比特中;
所述第二地址转换查找表将所述中间存储单元的所述n-1个比特的所述n-1个中间数据值映射到所述n2+1个第二预设值,其中所述n2+1个第二预设值存储在所述第二地址转换查找表的所述2^(n-1)个第二条目的其中之一;以及
一输出单元组合所述第一地址转换查找表的所述n1-1个比特和所述第二地址转换查找表的所述n2+1个比特,以通过组合所述n1-1个第一预设值和所述n2+1个第二预设值而输出n个输出数据值;
其中所述方法还包含:一第一解码器将所述n个比特的所述n1个比特解码以产生2的n1次方个的所述2^n1个比特地址;
其中所述方法还包含:一第二解码器将所述中间存储单元的所述n-1个比特解码以产生2的n-1次方个的所述2^(n-1)个比特地址;
其中在所述输入单元中,所述n个比特的n1个比特定义为所述n1个输入数据值的多个高比特,以及所述n2个比特定义为所述n2个输入数据值的多个低比特。
10.如权利要求9所述的实施神经网络的激活逻辑的方法,其特征在于,所述第二地址转换查找表的每一所述2^(n-1)个第二条目的所述n2+1个比特包含一比特,且所述比特定义为所述n1-1个第一预设值和所述n2+1个第二预设值的组合的饱和点的指标比特。
11.如权利要求10所述的实施神经网络的激活逻辑的方法,其特征在于,在所述输出单元中,所述n1-1个比特设置在所述饱和点的所述比特和所述n2+1个比特之间。
12.如权利要求9所述的实施神经网络的激活逻辑的方法,其特征在于,所述中间存储单元的所述n-1个比特定义为n1个中间数据值的多个高比特,以及所述中间存储单元的所述n2个比特定义为所述输入单元的所述n2个输入数据值的多个高比特。
13.如权利要求9所述的实施神经网络的激活逻辑的方法,其特征在于,所述第一地址转换查找表的2^n1个比特和所述n1-1个比特的乘积与所述第二地址转换查找表的2^(n-1)个比特和所述n2+1个比特的乘积的内存大小总和小于2^n个比特和所述n个比特的乘积的内存大小总和。
14.如权利要求13所述的实施神经网络的激活逻辑的方法,其特征在于,所述第一地址转换查找表的所述2^n1个比特和所述n1-1个比特的所述乘积小于所述第二地址转换查找表的所述2^(n-1)个比特和所述n2+1个比特的所述乘积。
15.如权利要求9所述的实施神经网络的激活逻辑的方法,其特征在于,所述输入单元的所述n个比特进一步包含一符号位。
16.如权利要求15所述的实施神经网络的激活逻辑的方法,其特征在于,所述符号位为一负符号位,以及所述n个比特的所述n个输入数据值以二补数表示。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862756095P | 2018-11-06 | 2018-11-06 | |
US62/756095 | 2018-11-06 | ||
PCT/CN2019/087299 WO2020093676A1 (en) | 2018-11-06 | 2019-05-16 | Apparatus of implementing activation logic for neural network and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112955878A CN112955878A (zh) | 2021-06-11 |
CN112955878B true CN112955878B (zh) | 2023-10-27 |
Family
ID=70610684
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980073119.2A Active CN112970037B (zh) | 2018-11-06 | 2019-04-10 | 用于实施神经网络应用的多芯片系统、适用于多芯片系统的数据处理方法、和非暂时性计算机可读介质 |
CN201980073061.1A Active CN112970036B (zh) | 2018-11-06 | 2019-04-30 | 用于实施神经网络应用的卷积块阵列及其使用方法 |
CN201980073120.5A Active CN112955878B (zh) | 2018-11-06 | 2019-05-16 | 实施神经网络的激活逻辑的装置及其方法 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980073119.2A Active CN112970037B (zh) | 2018-11-06 | 2019-04-10 | 用于实施神经网络应用的多芯片系统、适用于多芯片系统的数据处理方法、和非暂时性计算机可读介质 |
CN201980073061.1A Active CN112970036B (zh) | 2018-11-06 | 2019-04-30 | 用于实施神经网络应用的卷积块阵列及其使用方法 |
Country Status (4)
Country | Link |
---|---|
US (3) | US20220004856A1 (zh) |
CN (3) | CN112970037B (zh) |
TW (3) | TWI766203B (zh) |
WO (3) | WO2020093654A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210130470A (ko) * | 2020-04-22 | 2021-11-01 | 에스케이하이닉스 주식회사 | 활성화 함수 처리 방법, 활성화 함수 처리 회로, 및 그것을 포함하는 신경망 시스템 |
CN113902111A (zh) * | 2021-12-09 | 2022-01-07 | 绍兴埃瓦科技有限公司 | 多芯片互连系统及神经网络加速处理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256536A (zh) * | 2007-03-01 | 2008-09-03 | 创惟科技股份有限公司 | 闪存地址转换层系统 |
CN105027213A (zh) * | 2013-03-12 | 2015-11-04 | 惠普发展公司,有限责任合伙企业 | 可编程地址映射和存储器访问操作 |
CN106056211A (zh) * | 2016-05-25 | 2016-10-26 | 清华大学 | 神经元计算单元、神经元计算模块及人工神经网络计算核 |
CN108595349A (zh) * | 2017-12-28 | 2018-09-28 | 贵阳忆芯科技有限公司 | 大容量存储设备的地址转换方法与装置 |
CN108647045A (zh) * | 2018-03-20 | 2018-10-12 | 科大讯飞股份有限公司 | 激活函数的实现方法及装置、存储介质、电子设备 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7752417B2 (en) * | 2006-06-05 | 2010-07-06 | Oracle America, Inc. | Dynamic selection of memory virtualization techniques |
US7685355B2 (en) * | 2007-05-07 | 2010-03-23 | Microsoft Corporation | Hardware memory management unit simulation using concurrent lookups for address translation data |
CN101661438B (zh) * | 2008-08-29 | 2013-08-28 | 鸿富锦精密工业(深圳)有限公司 | 电子装置及中央处理器寻址空间扩展方法 |
US8386747B2 (en) * | 2009-06-11 | 2013-02-26 | Freescale Semiconductor, Inc. | Processor and method for dynamic and selective alteration of address translation |
US8635430B2 (en) * | 2010-06-23 | 2014-01-21 | International Business Machines Corporation | Translation of input/output addresses to memory addresses |
CN103985083B (zh) * | 2014-05-21 | 2017-02-01 | 西安交通大学 | 一种可重构的一维卷积处理器 |
CN104333435B (zh) * | 2014-09-30 | 2017-11-07 | 扬智科技股份有限公司 | 迭代解映射译码装置 |
CN105844330B (zh) * | 2016-03-22 | 2019-06-28 | 华为技术有限公司 | 神经网络处理器的数据处理方法及神经网络处理器 |
WO2017185248A1 (zh) * | 2016-04-27 | 2017-11-02 | 北京中科寒武纪科技有限公司 | 用于执行人工神经网络自学习运算的装置和方法 |
GB2550859B (en) * | 2016-05-26 | 2019-10-16 | Advanced Risc Mach Ltd | Address translation within a virtualised system |
CN106201651A (zh) * | 2016-06-27 | 2016-12-07 | 鄞州浙江清华长三角研究院创新中心 | 神经形态芯片的模拟器 |
CN106650922B (zh) * | 2016-09-29 | 2019-05-03 | 清华大学 | 硬件神经网络转换方法、计算装置、软硬件协作系统 |
CN107992942B (zh) * | 2016-10-26 | 2021-10-01 | 上海磁宇信息科技有限公司 | 卷积神经网络芯片以及卷积神经网络芯片操作方法 |
US11003985B2 (en) * | 2016-11-07 | 2021-05-11 | Electronics And Telecommunications Research Institute | Convolutional neural network system and operation method thereof |
US10394929B2 (en) * | 2016-12-20 | 2019-08-27 | Mediatek, Inc. | Adaptive execution engine for convolution computing systems |
US11205120B2 (en) * | 2016-12-22 | 2021-12-21 | Samsung Electronics Co., Ltd | System and method for training deep learning classification networks |
CN106845635A (zh) * | 2017-01-24 | 2017-06-13 | 东南大学 | 基于级联形式的cnn卷积核硬件设计方法 |
CN106779060B (zh) * | 2017-02-09 | 2019-03-08 | 武汉魅瞳科技有限公司 | 一种适于硬件设计实现的深度卷积神经网络的计算方法 |
TWI630544B (zh) * | 2017-02-10 | 2018-07-21 | 耐能股份有限公司 | 卷積神經網路的運算裝置及方法 |
CN107633297B (zh) * | 2017-03-10 | 2021-04-06 | 南京风兴科技有限公司 | 一种基于并行快速fir滤波器算法的卷积神经网络硬件加速器 |
US10049323B1 (en) * | 2017-10-13 | 2018-08-14 | StradVision, Inc. | Method and device for performing activation and convolution operation at the same time and learning method and learning device for the same |
CN107862374B (zh) * | 2017-10-30 | 2020-07-31 | 中国科学院计算技术研究所 | 基于流水线的神经网络处理系统和处理方法 |
CN107844826B (zh) * | 2017-10-30 | 2020-07-31 | 中国科学院计算技术研究所 | 神经网络处理单元及包含该处理单元的处理系统 |
GB2568102B (en) * | 2017-11-06 | 2021-04-14 | Imagination Tech Ltd | Exploiting sparsity in a neural network |
CN108171317B (zh) * | 2017-11-27 | 2020-08-04 | 北京时代民芯科技有限公司 | 一种基于soc的数据复用卷积神经网络加速器 |
CN108334942B (zh) * | 2017-12-22 | 2020-08-04 | 清华大学 | 神经网络的数据处理方法、装置、芯片和存储介质 |
CN108229671B (zh) * | 2018-01-16 | 2022-03-04 | 华南理工大学 | 一种降低加速器外部数据存储带宽需求的系统和方法 |
-
2019
- 2019-04-10 US US17/290,761 patent/US20220004856A1/en active Pending
- 2019-04-10 WO PCT/CN2019/082128 patent/WO2020093654A1/en active Application Filing
- 2019-04-10 CN CN201980073119.2A patent/CN112970037B/zh active Active
- 2019-04-30 US US17/291,309 patent/US20220027714A1/en active Pending
- 2019-04-30 CN CN201980073061.1A patent/CN112970036B/zh active Active
- 2019-04-30 WO PCT/CN2019/085197 patent/WO2020093669A1/en active Application Filing
- 2019-05-16 WO PCT/CN2019/087299 patent/WO2020093676A1/en active Application Filing
- 2019-05-16 US US17/291,315 patent/US20220004850A1/en active Pending
- 2019-05-16 CN CN201980073120.5A patent/CN112955878B/zh active Active
- 2019-11-06 TW TW108140288A patent/TWI766203B/zh active
- 2019-11-06 TW TW108140289A patent/TWI715281B/zh active
- 2019-11-06 TW TW108140287A patent/TWI726476B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256536A (zh) * | 2007-03-01 | 2008-09-03 | 创惟科技股份有限公司 | 闪存地址转换层系统 |
CN105027213A (zh) * | 2013-03-12 | 2015-11-04 | 惠普发展公司,有限责任合伙企业 | 可编程地址映射和存储器访问操作 |
CN106056211A (zh) * | 2016-05-25 | 2016-10-26 | 清华大学 | 神经元计算单元、神经元计算模块及人工神经网络计算核 |
CN108595349A (zh) * | 2017-12-28 | 2018-09-28 | 贵阳忆芯科技有限公司 | 大容量存储设备的地址转换方法与装置 |
CN108647045A (zh) * | 2018-03-20 | 2018-10-12 | 科大讯飞股份有限公司 | 激活函数的实现方法及装置、存储介质、电子设备 |
Non-Patent Citations (2)
Title |
---|
Hierarchical Address Event Routing for Reconfigurable Large-Scale Neuromorphic Systems;Jongkil Park et al.;《IEEE Transactions on Neural Networks and Learning Systems》;2408-2422 * |
基于SDRAM的精确查找方法研究与设计;王华哲;《中国优秀硕士学位论文全文数据库信息科技辑》;I139-172 * |
Also Published As
Publication number | Publication date |
---|---|
WO2020093654A1 (en) | 2020-05-14 |
CN112970037A (zh) | 2021-06-15 |
TW202018597A (zh) | 2020-05-16 |
TWI715281B (zh) | 2021-01-01 |
TW202038142A (zh) | 2020-10-16 |
US20220004850A1 (en) | 2022-01-06 |
US20220004856A1 (en) | 2022-01-06 |
WO2020093669A1 (en) | 2020-05-14 |
TWI766203B (zh) | 2022-06-01 |
US20220027714A1 (en) | 2022-01-27 |
TWI726476B (zh) | 2021-05-01 |
WO2020093676A1 (en) | 2020-05-14 |
CN112970037B (zh) | 2024-02-02 |
CN112955878A (zh) | 2021-06-11 |
CN112970036B (zh) | 2024-02-23 |
CN112970036A (zh) | 2021-06-15 |
TW202038143A (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108021537B (zh) | 一种基于硬件平台的softmax函数计算方法 | |
US4163211A (en) | Tree-type combinatorial logic circuit | |
CN112955878B (zh) | 实施神经网络的激活逻辑的装置及其方法 | |
GB2537371B (en) | Modulo calculation using polynomials | |
US20210132910A1 (en) | Arithmetic devices for neural network | |
US9015429B2 (en) | Method and apparatus for an efficient hardware implementation of dictionary based lossless compression | |
CN109379191B (zh) | 一种基于椭圆曲线基点的点乘运算电路和方法 | |
US11100993B2 (en) | TCAM architecture where content-based search is conductible | |
CN115827555B (zh) | 数据处理方法、计算机设备、存储介质和乘法器结构 | |
US20090043956A1 (en) | Mapping an input data value to a resultant data value | |
US6898615B2 (en) | Signal processing unit and signal processing method including using an exponent part and a mantissa part for power generation | |
CN108805271B (zh) | 一种运算装置和方法 | |
CN113254072B (zh) | 数据处理器、数据处理方法、芯片、计算机设备及介质 | |
US11119732B2 (en) | Multi-addend adder circuit for stochastic computing | |
US20210141601A1 (en) | Digital calculation processing circuit | |
US20190325311A1 (en) | Neural network circuit | |
JPWO2005013105A1 (ja) | ルックアップテーブル及びデータ取得方法 | |
US8392491B2 (en) | Shift calculator | |
US7015839B1 (en) | Mapping method utilizing look-up table and related apparatus | |
US10409594B2 (en) | Processing circuit and control method of processing circuit | |
Rakitskiy | The efficient approach of calculating the predictors | |
KR20200002670A (ko) | 두 개의 얇은 삼각형들을 이용하여 라인 세그먼트를 표현하는 시스템 및 방법 | |
KR970049455A (ko) | 홀/짝수의 1-비트 가산기 셀을 구비하는 가산기 | |
CN111201559B (zh) | 置换装置、置换方法、以及记录介质 | |
CN107133330B (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 |