CN113835676A - 使用电路执行运算的方法和设备 - Google Patents
使用电路执行运算的方法和设备 Download PDFInfo
- Publication number
- CN113835676A CN113835676A CN202011597038.3A CN202011597038A CN113835676A CN 113835676 A CN113835676 A CN 113835676A CN 202011597038 A CN202011597038 A CN 202011597038A CN 113835676 A CN113835676 A CN 113835676A
- Authority
- CN
- China
- Prior art keywords
- resistor group
- time
- power supply
- supply unit
- sampling capacitor
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 239000003990 capacitor Substances 0.000 claims abstract description 143
- 238000005070 sampling Methods 0.000 claims abstract description 133
- 230000003071 parasitic effect Effects 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 24
- 230000002441 reversible effect Effects 0.000 claims abstract description 23
- 238000007667 floating Methods 0.000 claims abstract description 5
- 238000012545 processing Methods 0.000 claims description 32
- 238000013528 artificial neural network Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 238000009825 accumulation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 30
- 210000000225 synapse Anatomy 0.000 description 8
- 230000015654 memory Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000007792 addition Methods 0.000 description 5
- 239000013256 coordination polymer Substances 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000007599 discharging Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 150000004770 chalcogenides Chemical class 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003302 ferromagnetic material Substances 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000012782 phase change material Substances 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 229910000314 transition metal oxide Inorganic materials 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
-
- 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
- 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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R19/00—Arrangements for measuring currents or voltages or for indicating presence or sign thereof
- G01R19/165—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
- G01R19/16533—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application
- G01R19/16538—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application in AC or DC supplies
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R27/00—Arrangements for measuring resistance, reactance, impedance, or electric characteristics derived therefrom
- G01R27/02—Measuring real or complex resistance, reactance, impedance, or other two-pole characteristics derived therefrom, e.g. time constant
-
- G—PHYSICS
- G04—HOROLOGY
- G04F—TIME-INTERVAL MEASURING
- G04F10/00—Apparatus for measuring unknown time intervals by electric means
- G04F10/005—Time-to-digital converters [TDC]
-
- 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/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/62—Performing operations exclusively by counting total number of pulses ; Multiplication, division or derived operations using combined denominational and incremental processing by counters, i.e. without column shift
-
- 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/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/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
- 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
- G06N3/065—Analogue means
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0007—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02M—APPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
- H02M3/00—Conversion of dc power input into dc power output
- H02M3/02—Conversion of dc power input into dc power output without intermediate conversion into ac
- H02M3/04—Conversion of dc power input into dc power output without intermediate conversion into ac by static converters
- H02M3/06—Conversion of dc power input into dc power output without intermediate conversion into ac by static converters using resistors or capacitors, e.g. potential divider
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/22—Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
- H03K5/24—Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being amplitude
-
- 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
- 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/4828—Negative resistance devices, e.g. tunnel diodes, gunn effect devices
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Power Engineering (AREA)
- Nonlinear Science (AREA)
- Computer Hardware Design (AREA)
- Chemical & Material Sciences (AREA)
- Materials Engineering (AREA)
- Analogue/Digital Conversion (AREA)
- Electronic Switches (AREA)
- Semiconductor Integrated Circuits (AREA)
- Dc-Dc Converters (AREA)
Abstract
提供了使用电路执行运算的方法和设备。所述电路包括电阻器组和寄生电容,电阻器组的一端被配置为连接到电源单元,电阻器组的另一端被配置为连接到采样电容器,寄生电容存在于电阻器组的电阻器之间的每个节点处。所述方法包括:在前向处理中,将施加到采样电容器的采样电容器电压达到第一参考电压时的时间确定为切换时间;在切换时间,将采样电容器连接到地或预定电压并使电源单元浮置;在切换时间之后的反向处理中,将施加到电源单元的电源单元电压达到第二参考电压时的时间确定为结束时间;和基于结束时间执行预定运算。
Description
本申请要求于2020年6月24日在韩国知识产权局提交的第10-2020-0077377号韩国专利申请的权益,所述韩国专利申请的公开通过引用全部包含于此。
技术领域
本公开涉及使用电路执行运算的方法和设备。
背景技术
乘积累加(MAC)运算影响各种领域中(例如,多个层的MAC运算可被执行的机器学习中)的应用的性能。
输入信号可形成输入向量,并且可以是用于图像、字节流或另一数据集的数据。输入信号与值或权重的矩阵相乘。输出信号是对输入信号和对应输出向量的MAC运算的结果。输出向量可作为MAC运算的下一层的输入向量而被提供,并且该处理可针对许多层重复。
由于大量的MAC运算被执行,应用的性能受MAC运算的性能的影响。因此,期望以低功率并且以高速度高效且可靠地执行MAC运算。
寄生电容存在于执行MAC运算的电路中,这可能导致错误的MAC运算结果。因此,存在对减少由于寄生电容引起的运算结果的错误的研究的期望。
发明内容
提供本发明内容以简化的形式介绍在以下具体实施方式中进一步描述的构思的选择。本发明内容不意在确定要求保护的主题的关键特征或必要特征,也不意在用于帮助确定要求保护的主题的范围。
在一个总体方面,一种包括电阻器组和寄生电容的电路的执行预定运算的方法,电阻器组包括串联连接的多个电阻器,电阻器组的一端被配置为连接到电源单元,电阻器组的另一端被配置为连接到采样电容器,寄生电容存在于所述多个电阻器之间的每个节点处。所述方法包括:在前向处理中,将施加到采样电容器的采样电容器电压达到第一参考电压时的时间确定为切换时间;在切换时间,将采样电容器连接到地或预定电压并使电源单元浮置;在切换时间之后的反向处理中,将施加到电源单元的电源单元电压达到第二参考电压时的时间确定为结束时间;和基于结束时间执行预定运算。
第一参考电压可从供应给电源单元的直流(DC)电压减少了预定百分比,并且第二参考电压可从供应给电源单元的DC电压减少了100减去所述预定百分比。
预定运算可包括:基于结束时间的乘积累加(MAC)运算或基于结束时间计算电阻器组的总电阻值。
神经网络的节点之间传输的加权输入可由MAC运算确定。
一种存储指令的非暂时性计算机可读存储介质,所述指令在由一个或多个处理器执行时,可配置所述一个或多个处理器执行所述方法。
在另一总体方面,一种包括电阻器组和寄生电容的电路的执行预定运算的方法,电阻器组包括串联连接的多个电阻器,电阻器组的一端被配置为连接到电源单元,电阻器组的另一端被配置为连接到采样电容器,寄生电容存在于所述多个电阻器之间的每个节点处,电阻器组被划分为第一电阻器组和第二电阻器组,第一电阻器组和第二电阻器组彼此并联连接,并且第一电阻器组的电阻器布置次序与第二电阻器组的电阻器布置次序相反。所述方法包括:将施加到采样电容器的采样电容器电压达到参考电压时的时间确定为结束时间;和基于结束时间执行预定运算。
参考电压可从供应给电源单元的直流(DC)电压减少了预定百分比。
预定运算包括:基于结束时间的乘积累加(MAC)运算或基于结束时间计算电阻器组的总电阻值。
神经网络的节点之间传输的加权输入可由MAC运算确定。
一种存储指令的非暂时性计算机可读存储介质,所述指令在由一个或多个处理器执行时,可配置所述一个或多个处理器执行所述方法。
在另一总体方面,一种用于执行电路的预定运算的设备,所述设备包括连接到所述电路的一端的电源单元、电阻器组、采样电容器、寄生电容、第一比较器、一个或多个处理器和第二比较器。电阻器组包括串联连接在所述电路的一端与所述电路的另一端之间的多个电阻器。采样电容器串联连接到所述多个电阻器。寄生电容存在于所述多个电阻器之间的每个节点处。第一比较器被配置为:在前向处理中,将施加到采样电容器的采样电容器电压与第一参考电压进行比较,并且输出采样电容器电压达到第一参考电压时的时间的第一时间信息。所述一个或多个处理器被配置为:当第一时间信息被输出时,将采样电容器连接到地或预定电压并使电源单元浮置。第二比较器被配置为:在第一时间信息被输出之后的反向处理中,将施加到电源单元的电源单元电压与第二参考电压进行比较,并且输出电源单元电压达到第二参考电压时的时间的第二时间信息。所述一个或多个处理器还被配置为:基于第二时间信息执行预定运算。
第一参考电压可从施加到电源单元的直流(DC)电压减少了预定百分比,并且第二参考电压可从施加到电源单元的DC电压减少了100减去所述预定百分比。
预定运算可以是基于第二时间信息的乘积累加(MAC)运算或基于第二时间信息计算电阻器组的总电阻值。
神经网络的节点之间传输的加权输入可由MAC运算确定。
在另一总体方面,一种包括用于执行预定运算的电路的设备,所述设备包括电源单元、电阻器组、采样电容器、寄生电容、比较器和一个或多个处理器。电源单元连接到电路的一端。电阻器组包括串联连接在所述电路的一端与所述电路的另一端之间的多个电阻器。采样电容器串联连接到所述多个电阻器。寄生电容存在于所述多个电阻器之间的每个节点处。比较器被配置为:将施加到采样电容器的采样电容器电压与参考电压进行比较,并且输出采样电容器电压达到参考电压时的时间信息。所述一个或多个处理器被配置为:基于时间信息执行预定运算。电阻器组被划分为第一电阻器组和第二电阻器组,第一电阻器组和第二电阻器组彼此并联连接,并且第一电阻器组的电阻器布置次序与第二电阻器组的电阻器布置次序相反。
参考电压可从供应给电源单元的直流(DC)电压减少了预定百分比。
预定运算可以是基于时间信息的乘积累加(MAC)运算或基于时间信息计算电阻器组的总电阻值。
神经网络的节点之间传输的加权输入由预定运算确定。
从下面的具体实施方式、附图和权利要求,其他特征和方面将是清楚的。
附图说明
图1是示出根据一个或多个实施例的用于执行预定运算的电路的示图。
图2是用于描述根据一个或多个实施例的使用电阻式存储器装置执行乘积累加(MAC)运算的示例的示图。
图3是描述根据一个或多个实施例的包括多条输入线和多条输出线的MAC电路的示图。
图4是用于描述根据一个或多个实施例的时间-数字转换器(TDC)的示图。
图5是用于描述根据一个或多个实施例的TDC的转换运算的示图。
图6是用于描述根据一个或多个实施例的由不存在寄生电容的电路测量的采样电容器电压的示图。
图7A和图7B是用于描述根据一个或多个实施例的由存在寄生电容的电路测量的采样电容器电压的示图。
图8A和图8B是用于描述根据一个或多个实施例的使用存在寄生电容的电路执行预定运算的方法的示图。
图9是示出根据一个或多个实施例的用于通过前向处理和反向处理执行预定运算的电路的示图。
图10是示出根据一个或多个实施例的用于通过前向处理执行预定运算的电路的示图。
图11是用于描述根据一个或多个实施例的使用电路执行预定运算的方法的流程图。
图12是用于描述根据一个或多个实施例的使用电路执行预定运算的方法的流程图。
图13是用于描述根据一个或多个实施例的可使用MAC电路执行的神经网络运算的示图。
贯穿附图和具体实施方式,相同的参考标号表示相同的元件。附图可不按比例,并且为了清楚、说明和方便,附图中的元件的相对尺寸、比例和描绘可被夸大。
具体实施方式
提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作顺序仅是示例,并不限于在此阐述的那些顺序,而是除了必须以特定次序发生的操作之外,可如在理解本申请的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,可省略在理解本申请的公开之后已知的特征的描述。
在此描述的特征可以以不同的形式被实现,而不应被解释为限于在此描述的示例。相反,在此描述的示例已被提供,以仅示出实现在理解本申请的公开之后将是清楚的在此描述的方法、设备和/或系统的许多可行方式中的一些可行方式。
贯穿说明书,当元件(诸如,层、区域或基底)被描述为“在”另一元件“上”、“连接到”或“结合到”另一元件时,该元件可直接“在”所述另一元件“上”、“连接到”或“结合到”所述另一元件,或者可存在介于它们之间的一个或多个其他元件。相反,当元件被描述为“直接在”另一元件“上”、“直接连接到”或“直接结合到”另一元件时,可不存在介于它们之间的其他元件。
如在此使用的,术语“和/或”包括相关所列项的任何一个和任何两个或更多个的任何组合。
尽管在此可使用诸如“第一”、“第二”和“第三”的术语来描述各种构件、组件、区域、层或部分,但是这些构件、组件、区域、层或部分不应受这些术语限制。相反,这些术语仅用于将一个构件、组件、区域、层或部分与另一构件、组件、区域、层或部分区分开。因此,在不脱离示例的教导的情况下,在此描述的示例中所称的第一构件、第一组件、第一区域、第一层或第一部分也可被称为第二构件、第二组件、第二区域、第二层或第二部分。
为了易于描述,在此可使用空间相对术语(诸如,“在……上方”、“上方的”、“在……下方”和“下方的”)来描述如附图中所示的一个元件与另一元件的关系。除了附图中所描绘的方位之外,这样的空间相对术语意在包括装置在使用或操作中的不同方位。例如,如果附图中的装置被翻转,则被描述为相对于另一元件“在上方”或“上方的”的元件将相对于所述另一元件“在下方”或“下方的”。因此,术语“在……上方”根据装置的空间方位而包括以上和以下方位两者。装置也可以以其他方式方位(例如,旋转90度或在以其他方位处),并且在此使用的空间相对术语应被相应地解释。
在此使用的术语仅用于描述各种示例,而不应用于限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在陈述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其他特征、数量、操作、构件、元件和/或它们的组合。
在此描述的示例的特征可以以如在理解本申请的公开之后将是清楚的各种方式被组合。此外,尽管在此描述的示例具有各种配置,但是如在理解本申请的公开之后将是清楚的那样,其他配置是可行的。
图1是示出根据一个或多个实施例的用于执行预定运算的电路的示图。
在图1中,电路100可包括电阻器组110和采样电容器120。
电阻器组110可包括串联连接的多个电阻器。电阻器组110的一端可连接到电源单元150,电阻器组110的另一端可连接到采样电容器120。
包括在电阻器组110中的多个电阻器中的每个可以是电阻式存储器装置。电阻式存储器装置可基于施加到两端的电压或电流在不同的电阻状态之间切换,并且可具有单层或多层结构,单层或多层结构包括以下各种材料中的任何一种:过渡金属氧化物、金属氧化物(诸如,基于钙钛矿的材料)、相变材料(诸如,基于硫属化物的材料)、铁电材料或铁磁材料。电阻式存储器装置从高阻态切换到低阻态的操作可被称为置位操作,电阻式存储器装置从低阻态切换到高阻态的操作可被称为复位操作。
下面将参照图2进一步描述包括在电阻器组110中的多个电阻器中的每个作为电阻式存储器装置进行操作的特定示例。
采样电容器120可串联连接到包括在电阻器组110中的多个电阻器。当直流(DC)电压被施加到电源单元150时,采样电容器120可被充电。与采样电容器120中充电的电荷量对应的采样电容器电压Vbot可基于由电阻器组110的总电阻值和采样电容器(C)120的电容确定的时间常数而随时间改变。
更详细地,可使用等式1来表示随时间变化的采样电容器电压Vbot。在等式1中,VDD表示施加到电源单元150的DC电压,CS表示采样电容器120的电容,并且Ri表示包括在电阻器组110中的多个电阻器的各自的电阻,τideal表示理想的时间常数。
等式1:
τideal=Cs∑Ri
在一个或多个实施例中,电路100还可包括比较器130。比较器130可包括运算(OP)放大器。比较器130的一个输入节点可接收采样电容器电压Vbot,并且比较器130的另一输入节点可接收参考电压Vref。
比较器130可将与采样电容器120中充电的电荷量对应的采样电容器电压Vbot与参考电压Vref进行比较,然后可输出比较结果。
例如,在采样电容器120被充电的状态下,比较器130可将采样电容器电压Vbot与参考电压Vref进行比较,并且可在采样电容器电压Vbot达到参考电压Vref时生成输出信号。比较器130的输出信号可被发送到时间-数字转换器(TDC)140。
当TDC 140接收到来自比较器130的输出信号时,TDC 140可将从参考时间t0到结束时间t1所花费的时间转换成数字值,并且可输出数字值。
可基于从TDC 140输出的数字值来执行预定运算。在一个或多个实施例中,运算结果可以是乘积累加(MAC)结果。在另一实施例中,运算结果可以是电路900的总电阻值。
图2是用于描述根据一个或多个实施例的使用电阻式存储器装置执行MAC运算的示例的示图。
在图2中,多个电阻器中的每个可作为电阻式存储器装置进行操作。
在初始状态下,多个电阻器中的所有电阻器可处于相对低的电导率状态(即,高阻态)。当多个电阻器中的至少一些处于低阻态时,可能另外需要用于将电阻器切换到高阻态的初始化操作。
多个电阻器中的每个可具有改变其电阻值和/或电导率所需的预定阈值。更详细地,当幅度小于预定阈值的电压或电流被施加到多个电阻器中的每个的两端时,多个电阻器中的每个的电导率不会被改变,相反,当幅度大于预定阈值的电压或电流被施加到多个电阻器中的每个时,多个电阻器中的每个的电导率可被改变。
在这种状态下,为了执行输出作为列布线220的结果的特定数据的操作,与特定数据对应的输入信号可被施加到行布线210。在这种情况下,输入信号可作为电脉冲被施加到行布线210。例如,当与数据“0011”对应的输入信号被施加到行布线210时,电脉冲不会被施加到与“0”对应的行布线210(例如,第一行布线210A和第二行布线210B),并且电脉冲可仅被施加到与“1”对应的行布线210(例如,第三行布线210C和第四行布线210D)。在这种情况下,可利用适当的电压或电流驱动列布线220以输出结果。
例如,当用于输出特定数据的列布线220已经被确定时,列布线220的一些列布线可被驱动,使得位于与对应于“1”的行布线210的交叉点处的多个电阻器接收幅度等于或大于在置位操作期间所需的电压(下文中,被称为置位电压)的电压,并且列布线220的剩余列布线可被驱动,使得剩余电阻器接收幅度小于置位电压的电压。
例如,当置位电压的幅度为Vset并且第三列布线220C被确定为用于输出数据‘0011’的列布线220时,施加到第三行布线210C和第四行布线210D的电脉冲的幅度可等于或大于置位电压Vset,并且施加到第三列布线220C的电压可为0V,使得位于第三列布线220C与第三行布线210C和第四行布线210D之间的交叉点处的第一突触231和第二突触232接收等于或大于置位电压Vset的电压。因此,第一突触231和第二突触232可处于低阻态。
处于低阻态的第一突触231和第二突触232的电导率可随着电脉冲的数量增加而逐渐增大。施加的电脉冲的幅度和宽度可基本上恒定。施加到剩余列布线(即,第一列布线220A、第二列布线220B和第四列布线220D)的电压可具有0V与置位电压Vset之间的值(例如,1/2Vset),使得除第一突触231和第二突触232之外的剩余电阻器接收小于置位电压Vset的电压。因此,除了第一突触231和第二突触232之外的剩余电阻器的电阻状态可以不改变。在这种情况下的电流或电子的流动由虚线箭头指示。
图3是描述根据一个或多个实施例的包括多条输入线和多条输出线的MAC电路的示图。
根据一个或多个实施例,MAC电路300可包括能够单独接收输入信号的多条输入线以及能够单独输出输出信号的多条输出线。多条输出线中的每条可包括多个电阻器、采样电容器320和比较器330。多条输入线中的每条与多条输出线相交。
图3的MAC电路300可包括m条输入线和k条输出线。MAC电路300可包括多个电阻器、多个电容器、多个比较器、TDC 340和输出单元350。例如,m和k可以是大于1的整数。
多个电阻器可沿多条输出线和多条输入线布置。例如,可沿输出线针对各条输入线布置多个电阻器。多个电阻器中的每个可被配置为通过电阻器310所位于的输入线接收电压。
例如,沿第j输入线391布置的电阻器可被配置为响应于开始信号而接收第j输入电压信号bj。在图3中,输入电压信号b1至bm可各自具有指示二元值的电压。例如,指示位值1的输入电压信号可表示任意电压,指示位值0的输入电压信号可表示浮置电压(floatingvoltage)。电阻器以m×k矩阵布置的结构可被称为存储器阵列390。
可针对各条输出线单独地布置多个电容器。多个电容器中的每个可连接到沿多条输出线之中的采样电容器320所位于的输出线布置的电阻器的相应的另一端和比较器330。
多个电容器中的每个可响应于通过对应的电阻器接收的电压而被充电。例如,位于第i输出线392中的采样电容器320可基于施加到位于第i输出线392中的电阻器的电压而被充电。
在一个或多个实施例中,多个电容器可具有相同的电容。这可能是由于多条输出线共享单个全局计数器的输出,因此,输出线可能需要具有相同比例(scale)的充电时间或放电时间。充电时间和放电时间可表示与和电容以及合成电阻值对应的时间常数成比例的比例。
可针对各条输出线单独地布置多个比较器。多个比较器中的每个可连接到沿多条输出线之中的比较器330所位于的输出线布置的电阻器的另一端和采样电容器320。
多个比较器中的每个可输出在将采样电容器320的采样电容器电压与参考电压进行比较之后获得的结果。例如,位于第i输出线392中的比较器330可将位于第i输出线392中的采样电容器320的采样电容器电压与参考电压进行比较。响应于采样电容器电压超过参考电压的情况,位于第i输出线392中的比较器330可输出第i计数结束信号STOPi。
TDC 340可接收输出线的计数结束信号,并且可将时间信息(例如,Tout)转换为数字值。例如,TDC 340可输出与针对k条输出线中的每条输出线单独接收的时间信息对应的数字值。TDC 340可输出与时间信息对应的k个数字值。例如,TDC 340可响应于接收到第i计数结束信号STOPi生成第i时间信息Tout,i,第i时间信息Tout,i指示与开始信号START对应的开始时间和与第i计数结束信号STOPi对应的结束时间之间的时间差。第i时间信息Tout,i可被称为第i充电时间。
输出单元350可输出映射到由TDC 340生成的数字值的值作为每条输出线的输出值OUT。因此,输出单元350可输出指示时间信息的数字值作为指示与乘积累加结果对应的数字的输出值OUT。例如,MAC电路可通过映射表(例如,查找表)输出映射到第i时间信息Tout,i的第i输出值OUTi。因为输出值针对每条输出线被输出,所以输出单元350可针对k条输出线输出k个输出值。
现在将描述包括在TDC 340中的单个全局计数器。
图4是用于描述根据一个或多个实施例的TDC的示图。
将进一步描述图3的TDC 340的配置。TDC 340可包括单个全局计数器441和参考单元442。
单个全局计数器441可输出指示在参考时间之后经过的时间的数字值。单个全局计数器441可连接到多条输出线的比较器。例如,单个全局计数器441可对从参考时间生成的时钟CLK的数量进行计数。因此,即使在不存在附加同步操作时,单个全局计数器441也可以以时钟为单位对各条输出线的从同一参考时间起所经过的时间(例如,充电时间或放电时间)进行计数。
参考单元442可在比较结果被输出时的时间参考由单个全局计数器441输出的数字值。参考单元442可包括参考多条输出线的比较器的比较结果的多个保持电路。多个保持电路中的每个可参考从在多条输出线之中的对应输出线中包括的比较器输出比较结果时的时间。
例如,与第i输出线对应的第i保持电路可连接到第i比较器的输出。第i保持电路可响应于从第i比较器接收到第i计数结束信号STOPi而输出第i时间信息Tout,i。例如,每个保持电路可在计数结束信号被接收到时的结束时间保持由单个全局计数器441计数的时钟CLK的数量。在结束时间保持的时钟CLK的数量可对应于时间信息(例如,充电时间信息或放电时间信息)。
无论多个保持电路是否执行保持,单个全局计数器441也可对参考时钟CLK进行计数,并且多个保持电路中的每个可独立于其他保持电路进行操作。例如,即使当保持电路保持与计数结束信号被接收到时的时间对应的时间信息时,单个全局计数器441也可独立于保持电路连续地对时钟CLK进行计数。
图5是用于描述根据一个或多个实施例的TDC的转换操作的示图。
如参照图5所述,位于任意输出线中的采样电容器的采样电容器电压510(例如,Vs)可根据与时间常数对应的自然响应(natural response)而逐渐增大。那是因为电荷在电容器中逐渐充电。
在一个示例中,参照图4描述的时钟生成器可生成时钟,并且单个全局计数器可对从开始时间START的时钟的数量进行计数。即使在采样电容器电压510等于参考电压Vref时的结束时间STOP之后,单个全局计数器也可连续地对时钟的数量进行计数。
参考单元的保持电路可保持指示从开始时间START到结束时间STOP计数的时钟的数量的数字值。
例如,在图5中,从开始时间START到结束时间STOP可生成六个时钟,并且保持电路可输出数字值“6”。
图6是用于描述根据一个或多个实施例的由不存在寄生电容的电路测量的采样电容器电压的示图。
图6示出不存在寄生电容的第一电路600。第一电路600可包括电阻器组610和采样电容器620。
电阻器组610可包括串联连接的多个电阻器。电阻器组610的一端可连接到电源单元630,并且电阻器组610的另一端可连接到采样电容器620。
采样电容器620可串联连接到包括在电阻器组610中的多个电阻器。当DC电压被施加到电源单元630时,采样电容器620可被充电。采样电容器电压Vbot(与采样电容器620中充电的电荷量对应的电压)可基于由电阻器组610的总电阻值和采样电容器620的电容确定的时间常数而随时间改变。
详细地,随时间变化的采样电容器电压Vbot可如等式1中那样所示。当包括在电阻器组610中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,采样电容器电压Vbot具有相同的时间常数。也就是说,在具有大电阻值的电阻器被设置得靠近电源单元630以及具有小电阻值的电阻器被设置得靠近电源单元630的两种情况下,当多个电阻器的总电阻值相同时,等式1的τideal相同,因此采样电容器电压Vbot具有相同的曲线图。这也可通过等式1确定。
图7A和图7B是用于描述根据一个或多个实施例的由存在寄生电容的电路测量的采样电容器电压的示图。
图7A是示出根据一个或多个实施例的存在寄生电容的第二电路700的示图。第二电路700可包括电阻器组710和采样电容器720。当与图6的第一电路600相比时,寄生电容存在于图7A的第二电路700中。如在第二电路700中那样,寄生电容存在于实际使用的电路中。
由于第二电路700中存在寄生电容,随时间变化的采样电容器电压Vbot可如等式2中那样所示。等式2基于Elmore延迟模型。
在等式2中,VDD表示施加到电源单元730的DC电压,CS表示采样电容器720的电容,Ri表示包括在电阻器组710中的多个电阻器的各自的电阻,τreal表示实际的时间常数。此外,Cp表示寄生电容。
等式2:
τreal=R1Cp+(R1+R2)Cp+(R1+R2+R3)Cp+(∑Ri)(Cp+Cs)
=(nR1+(n-1)R2+…+2Rn-1+Rn)Cp+(∑Ri)Cs
在等式1和等式2中,可发现,由于寄生电容CP的影响,第二电路700的时间常数τreal与第一电路600的时间常数τideal不同。
当包括在电阻器组710中的多个电阻器的总电阻值相同但多个电阻器中的至少一些具有不同的电阻值时,采样电容器电压Vbot可具有不同的曲线图。
更详细地,在等式2中,当多个电阻器的总电阻值相同但是具有大电阻值的电阻器被设置得靠近电源单元730时,τreal增大,因此采样电容器电压曲线图的延迟增大。相反,当具有小电阻值的电阻器被设置得靠近电源单元730时,τreal减小,因此采样电容器电压曲线图的延迟减小。
假设电路的总电阻值相同,不管具有大电阻值的电阻器被设置得靠近电源单元还是被设置得靠近采样电容器,当采样电容器电压曲线图的延迟相同时都不会发生误差。然而,寄生电容存在于实际使用的电路中,并且由于寄生电容,时间常数τreal根据具有大电阻值的电阻器是否被设置得靠近电源单元而变化。结果,采样电容器电压曲线图的延迟变化,这意味着发生输出误差。
图7B是描述根据一个或多个实施例的存在寄生电容的电路的输出误差的示图。
在图7B中,施加到电源单元730的DC电压为1V,并且参考电压被设置为0.67V。第一电阻器和第二电阻器用作电阻器组710的电阻器。假设第一电阻器的值(Ω)小于第二电阻器的值(Ω)。
第一曲线图751和第二曲线图752示出由不同电路测量的采样电容器电压Vbot。详细地,第一曲线图751示出在从电源单元730到采样电容器720的方向上设置32个第一电阻器然后设置32个第二电阻器的情况。第二曲线图752示出在从电源单元730到采样电容器720的方向上设置32个第二电阻器然后设置32个第一电阻器的情况。
在第一曲线图751和第二曲线图752中,虽然包括在电阻器组710中的多个电阻器(32个第一电阻器和32个第二电阻器)的总电阻值相同,但是第二曲线图752的延迟比第一曲线图751的延迟长。这是因为,在这个示例中,当与第一曲线图751相比时,在第二曲线图752中,具有大电阻值的电阻器被设置得靠近电源单元730。
如参照图3至图5所述,比较器可响应于采样电容器电压Vbot超过参考电压的情况而输出结束信号。此外,TDC可基于与开始信号对应的开始时间和与结束信号对应的结束时间之间的时间差来输出数字值,并且输出单元可输出与数字值对应的乘积累加结果作为运算结果。
也就是说,基于采样电容器电压(Vbot)超过参考电压时的结束时间来确定从输出单元输出的运算结果。因为第一曲线图751的第一结束时间和第二曲线图752的第二结束时间彼此不同,所以从第一曲线图751得到的运算结果与从第二曲线图752得到的运算结果不同。
图8A和图8B是用于描述根据一个或多个实施例的使用存在寄生电容的电路执行预定运算的方法的示图。
图8A示出根据一个或多个实施例的存在寄生电容的电路800。电路800可包括电阻器组810和采样电容器820。
电阻器组810包括串联连接的多个电阻器R1、…、Rn(例如,n可以是大于1的整数)。电阻器组810的一端连接到电源单元830,电阻器组810的另一端连接到采样电容器820。此外,寄生电容CP存在于多个电阻器R1、…、Rn之间的每个节点处。
在采样电容器820复位之后,DC电压VDD被施加到电源单元830。
在前向处理中,处理器可将采样电容器电压Vbot达到第一参考电压时的时间确定为切换时间(例如,图8A中的t1)。处理器可从参考时间测量采样电容器电压Vbot。参考时间可以是DC电压VDD被施加到电源单元830时的时间,或者是在DC电压VDD被施加之后经过预定时间的时间。
在切换时间,处理器可将采样电容器820连接到地或预定电压,并且可使电源单元830浮置。例如,尽管预定电压可以是1mV,但是预定电压不限于特定值。
如参照图7A所述,由于电路800中存在寄生电容,前向处理的采样电容器电压Vbot可表示为等式2。此外,前向延迟τ1可表示为等式3。
等式3:
τ1=(nR1+(n-1)R2+…+2Rn-1+Rn)Cp+(∑Ri)Cs
在切换时间之后的反向处理中,处理器可将电源单元电压Vtop达到第二参考电压时的时间确定为结束时间(例如,图8A中的t2)。由于电路800中存在寄生电容,用于确定反向处理的电源单元电压Vtop的反向延迟τ2可表示为等式4。
等式4:
τ2=(nRn+(n-1)Rn-1+…+2R2+R1)Cp
可通过将前向延迟τ1和反向延迟τ2相加得到等式5。
等式5:
τ1+τ2=((n+1)R1+(n+1)R2+…+(n+1)Rn)Cp+(∑Ri)Cs
=(n+1)(∑Ri)Cp+(∑Ri)Cs
=(∑Ri)((n+1)Cp+Cs)
在等式5中,可发现,当前向延迟τ1和反向延迟τ2相加时,最终延迟τ1+τ2仅受总电阻值∑Ri、寄生电容CP和采样电容Cs的影响。
也就是说,假设寄生电容CP存在于电路800中并且前向延迟τ1和反向延迟τ2两者被使用,当包括在电阻器组810中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,电源单元电压Vtop达到第二参考电压时的结束时间相同。
作为用于确定切换时间的标准的第一参考电压可通过从供应给电源单元830的DC电压VDD减少预定比率(%)被获得。此外,作为用于确定结束时间的标准的第二参考电压可通过从供应给电源单元830的DC电压VDD减少“100%-预定比率(%)”被获得。
例如,当DC电压VDD为1V且预定比率(%)为33%时,第一参考电压可以为0.67V并且第二参考电压可以为0.33V。可选地,当DC电压VDD为1V且预定比率(%)为50%时,第一参考电压可以为0.5V并且第二参考电压可以为0.5V。具体地,当预定比率(%)为50%时,因为第一参考电压和第二参考电压具有相同的值,所以可仅使用一个参考电压来确定切换时间和结束时间。
处理器可基于结束时间执行预定运算。处理器可基于从参考时间到结束时间所需的时间来执行预定运算。如参照图7A和图7B所述,处理器可基于所需的时间输出运算结果。在一个或多个实施例中,运算结果可以是乘积累加结果。在另一实施例中,运算结果可以是电阻器组810的总电阻值。
运算结果基于结束时间被确定。假设前向延迟τ1和反向延迟τ2两者被使用,当包括在电阻器组810中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,运算结果相同。
即使当等式5中的采样电容CS为0时,电路800也可进行操作。换句话说,电路800可仅使用寄生电容Cp执行操作,而无需将采样电容器820单独添加到电路800。以上描述可表示为等式6。
等式6:
τ1+τ2=(∑Ri)(n+1)Cp
图8B是描述根据一个或多个实施例的存在寄生电容的电路的输出误差的示图。
在图8B中,施加到电源单元830的DC电压为1V,第一参考电压860被设置为0.67V,并且第二参考电压870被设置为0.33V。第一电阻器和第二电阻器用作电阻器组810的电阻器。假设第一电阻器的值(Ω)小于第二电阻器的值(Ω)。
第一电路对应于在从电源单元830到采样电容器820的方向上设置48个第一电阻器然后设置16个第二电阻器的情况。第二电路对应于在从电源单元830到采样电容器820的方向上设置16个第二电阻器然后设置48个第一电阻器的情况。
第1-1曲线图851a和第1-2曲线图851b分别示出在第一电路中执行的前向处理和反向处理。第1-1曲线图851a示出在第一电路中执行的前向处理中随时间变化的采样电容器电压Vbot。第1-2曲线图851b示出在第一电路中执行的反向处理中随时间变化的电源单元电压Vtop。
第2-1曲线图852a和第2-2曲线图852b分别示出在第二电路中执行的前向处理和反向处理。第2-1曲线图852a示出在第二电路中执行的前向处理中随时间变化的采样电容器电压Vbot。第2-2曲线图852b示出在第二电路中执行的反向处理中随时间变化的电源单元电压Vtop。
在第一电路和第二电路中,包括在电阻器组810中的多个电阻器(48个第一电阻器和16个第二电阻器)的总电阻值相同。
在第一电路的前向处理中,根据第1-1曲线图851a的采样电容器电压Vbot达到第一参考电压860时的时间是第一切换时间851c。在第一切换时间851c之后的反向处理中,根据第1-2曲线图851b的电源单元电压Vtop达到第二参考电压870时的时间是结束时间880。
在第二电路的前向处理中,根据第2-1曲线图852a的采样电容器电压Vbot达到第一参考电压860的时间是第二切换时间852c。在第二切换时间852c之后的反向处理中,根据第2-2曲线图852b的电源单元电压Vtop达到第二参考电压870时的时间是结束时间880。
在前向处理中,可发现第2-1曲线图852a的延迟比第1-1曲线图851a的延迟长。这是因为第1-1曲线图851a和第2-1曲线图852a示出采样电容器电压Vbot,并且在第2-1曲线图852a中具有大电阻值的电阻器被设置得靠近电源单元830。也就是说,第1-1曲线图851a比第2-1曲线图852a更早地达到第一参考电压860。
在反向处理中,可发现第2-2曲线图852b的延迟比第1-2曲线图851b的延迟短。这是因为第1-2曲线图851b和第2-2曲线图852b示出电源单元电压Vtop,并且在第2-2曲线图852b中具有大电阻值的电阻器被设置得靠近电源单元830。
然而,在前向处理和反向处理二者中,可发现第一电路和第二电路中的结束时间880是相同的。
基于结束时间880确定使用第一电路和第二电路执行的运算的结果。假设前向处理和反向处理一起执行,当包括在电阻器组810中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,由第一电路和第二电路执行的运算的结果相同。
图9是示出根据一个或多个实施例的用于通过前向处理和反向处理执行预定运算的电路的示图。
在图9中,电路900可包括电阻器组910和采样电容器920。
电阻器组910可包括串联连接的多个电阻器R1、…、Rn。电阻器组910的一端可连接到电源单元950,电阻器组910的另一端可连接到采样电容器920。此外,寄生电容CP可存在于多个电阻器R1、…、Rn之间的每个节点处。
在一个或多个实施例中,电路900还可包括第一比较器931和第二比较器932。第一比较器931和第二比较器932中的每个可包括运算放大器。
第一比较器931可输出在将采样电容器电压Vbot与第一参考电压Vref1进行比较之后获得的结果。第二比较器932可输出在将电源单元电压Vtop与第二参考电压Vref2进行比较之后获得的结果。
更详细地,在采样电容器920被复位之后,DC电压VDD被施加到电源单元950。在参考时间t0之后的前向处理中,第一比较器931可输出指示采样电容器电压Vbot达到第一参考电压Vref1时的时间的第一时间信息t1。参考时间t0可以是DC电压VDD被施加到电源单元950时的时间,或者是在DC电压VDD被施加之后经过预定时间的时间。
当第一时间信息t1被输出时,采样电容器920连接到地或预定电压,并且电源单元950被浮置。
在反向处理中,第二比较器932可输出指示电源单元电压Vtop达到第二参考电压Vref2时的时间的第二时间信息t2。
TDC 940可基于参考时间t0和第二时间信息t2输出数字值。详细地,TDC940可输出参考时间t0和第二时间信息t2之间的时间差作为数字值。
输出单元(未示出)可输出映射到由TDC 940输出的数字值的运算结果。在一个或多个实施例中,运算结果可以是乘积累加结果。在另一实施例中,运算结果可以是电路900的总电阻值。
尽管在图9中使用两个比较器,但是因为在将采样电容器电压Vbot和第一参考电压Vref1彼此进行比较时的时间与将电源单元电压Vtop和第二参考电压Vref2彼此进行比较时的时间之间存在时间差,所以可使用一个比较器。
图10是示出根据一个或多个实施例的用于通过前向处理执行预定运算的电路的示图。
图10是示出根据一个或多个实施例的存在寄生电容的电路1000的示图。为了便于说明,在图10中未示出电路1000中的寄生电容。
电路1000可包括第一电阻器组1011和第二电阻器组1012。第一电阻器组1011和第二电阻器组1012包括串联连接的多个电阻器R1、…、Rn。第一电阻器组1011和第二电阻器组1012的一端连接到电源单元1030,并且第一电阻器组1011和第二电阻器组1012的另一端连接到采样电容器1020。此外,寄生电容CP存在于多个电阻器R1、…、Rn之间的每个节点处。
第一电阻器组1011的总电阻值与第二电阻器组1012的总电阻值相同。然而,第一电阻器组1011的电阻器布置次序与第二电阻器组1012的电阻器布置次序相反。
详细地,在图10中,在从电源单元1030到采样电容器1020的方向上,第一电阻器组1011的电阻器以R1、R2、…Rn-1、Rn的次序布置,并且第二电阻器组1012的电阻器以Rn、Rn-1、…R2、R1的次序布置。在一个示例中,第一电阻器组1011或第二电阻器组1012的多个电阻器中的至少一些电阻器具有不同的电阻值。
使用图10的电路1000执行预定运算的方法如下。
在采样电容器1020被复位之后,DC电压VDD被施加到电源单元1030。
在参考时间之后,处理器可将采样电容器电压Vbot达到参考电压时的时间确定为结束时间。在这个示例中,参考电压可通过从供应给电源单元1030的DC电压VDD减少预定比率(%)被获得。参考时间可以是DC电压VDD被施加到电源单元1030时的时间,或者是在DC电压VDD被施加之后经过预定时间的时间。
处理器可基于结束时间执行预定运算。处理器可基于从参考时间到结束时间所需的时间来执行预定运算。如参照图7A和图7B所述,处理器可基于所需的时间输出运算结果。在一个或多个实施例中,运算结果可以是乘积累加结果。在另一实施例中,运算结果可以是电阻器组的总电阻值。
在图8A中,通过对电路800执行前向处理和反向处理来执行预定运算。相比之下,在图10中,可通过使用具有相反电阻器布置次序的第一电阻器组1011和第二电阻器组1012仅执行前向处理而不执行反向处理,来执行预定运算。
图11是用于描述根据一个或多个实施例的使用电路执行预定运算的方法的流程图。
电路可包括电阻器组和采样电容器。电阻器组包括串联连接的多个电阻器。电阻器组的一端连接到电源单元,并且电阻器组的另一端连接到采样电容器。此外,寄生电容存在于多个电阻器之间的每个节点处。
在图11中,在操作1110中,将复位采样电容器,并且将DC电压施加到电源单元。
在操作1120中,执行前向处理。详细地,在操作1120中,比较器可将施加到采样电容器的采样电容器电压Vbot与第一参考电压Vref1进行比较。
当采样电容器电压Vbot等于或小于第一参考电压Vref1作为在将采样电容器电压Vbot与第一参考电压Vref1进行比较之后获得的结果时,重复执行操作1120。
当采样电容器电压Vbot超过第一参考电压Vref1作为在将采样电容器电压Vbot与第一参考电压Vref1进行比较之后获得的结果时,方法进行到操作1130。
在操作1130中,将采样电容器连接到地或预定电压,并且使电源单元浮置。
在操作1140中,执行反向处理。详细地,在操作1140中,比较器可将施加到电源单元的电源单元电压Vtop与第二参考电压Vref2进行比较。
当电源单元电压Vtop等于或大于第二参考电压Vref2作为在将电源单元电压Vtop与第二参考电压Vref2进行比较之后获得的结果时,重复执行操作1140。
当电源单元电压Vtop小于第二参考电压Vref2作为在将电源单元电压Vtop与第二参考电压Vref2进行比较之后获得的结果时,方法进行到操作1150。电源单元电压Vtop达到第二参考电压Vref2时的时间是结束时间。
在操作1150中,比较器可输出与结束时间对应的时间信息。
处理器可基于与结束时间对应的时间信息来执行预定运算。在一个或多个实施例中,处理器可基于与结束时间对应的时间信息来执行MAC运算。在另一实施例中,处理器可基于与结束时间对应的时间信息来计算电路的总电阻值。
图12是用于描述根据一个或多个实施例的使用电路执行预定运算的方法的流程图。
电路可包括电阻器组和采样电容器。电阻器组包括串联连接的多个电阻器。电阻器组的一端连接到电源单元,并且电阻器组的另一端连接到采样电容器。此外,寄生电容存在于多个电阻器之间的每个节点处。
在图12中,在操作1210中,执行前向处理。详细地,在操作1210中,处理器可将施加到采样电容器的采样电容器电压达到第一参考电压时的时间确定为切换时间。
处理器可从参考时间测量采样电容器电压。参考时间可以是DC电压VDD被施加到电源单元时的时间,或者是在DC电压VDD被施加之后经过预定时间的时间。
在操作1220中,在切换时间,处理器可将采样电容器连接到地或预定电压,并且可使电源单元浮置。
在操作1230中,执行反向处理。详细地,处理器可在切换时间之后的反向处理中确定施加到电源单元的电源单元电压达到第二参考电压时的时间作为结束时间。
操作1210的第一参考电压可通过从供应给电源单元的DC电压减少预定比率(%)被获得。此外,操作1230的第二参考电压可通过从供应给电源单元的DC电压减少“100%-预定比率(%)”被获得。
在操作1240中,处理器可基于结束时间执行预定运算。
处理器可基于结束时间执行MAC运算或者可计算电阻器组的总电阻值。
假设前向处理和反向处理一起被执行,当包括在电阻器组中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,运算结果相同。
图13是描述根据一个或多个实施例的可使用MAC电路执行的神经网络运算的示图。
神经网络1300可对应于深度神经网络(DNN)。DNN可包括全连接网络、深度卷积网络和循环神经网络。神经网络1300可通过基于深度学习对在输入数据与输出数据之间具有非线性关系的输入数据和输出数据进行映射来执行对象分类、对象识别、语音识别、图像识别等。作为用于解决来自大数据集的图像识别或语音识别的限制的机器学习方法的深度学习可通过有监督学习或无监督学习对输入数据和输出数据进行映射。
尽管为了便于说明,在图13中隐藏层包括两个层(例如,隐藏层1和隐藏层2),但是隐藏层可包括任何数量的层。此外,尽管在图13中,神经网络1300包括用于接收输入数据的输入层1310,但是输入数据可直接输入到隐藏层。在神经网络1300中,除了输出层之外的层的人工节点可经由用于传输输出信号的链路连接到下一层的人工节点。链路的数量可对应于包括在下一层中的人工节点的数量。
关于包括在前一层中的人工节点的加权输入的激活函数的输出可被输入到包括在隐藏层中的每个人工节点。通过将权重与包括在前一层中的人工节点的输入相乘来获得加权输入。权重可被称为神经网络1300的参数。激活函数可包括S型(sigmoid)、双曲正切(tanh)和整流线性单元(ReLU),并且由于激活函数,非线性可在神经网络1300中被形成。包括在前一层中的人工节点的加权输入可被输入到包括在输出层中的每个人工节点。
上述MAC电路可应用于用于驱动深度学习算法的存储器内计算。例如,在神经网络1300的节点之间传输的加权输入可使用重复执行乘法和加法的MAC运算来计算。神经网络1300的任意节点(例如,第i节点1321)的输出可如等式7中那样被表示。
等式7:
等式7可表示针对任意层中的m个输入值的第i节点1321的输出值yi。xj可表示前一层的第j输入值(例如,节点值),并且wj,i可表示施加到第j输入值和第i节点1321的权重。f()可表示激活函数。如等式7所示,节点值xj和权重wj,i的乘积累加结果可用于激活函数。换句话说,在期望的时间加载节点值xj和权重wj,i的存储器访问操作以及将节点值xj和权重wj,i相乘并相加的MAC运算可被重复地执行。
根据一个或多个实施例,在包括包含多个节点的一个或多个层的神经网络1300中,MAC电路的多个电阻器可具有连接到用于连接多个节点的连接线的连接权重的电阻。沿设置有多个电阻器的输入线提供的输入电压信号可表示与节点值xj对应的值。因此,MAC电路可执行实施神经网络1300所需的至少一些操作。作为参考,MAC电路中的电阻器的电阻值可不是固定的,并且可改变为与如上所述的存储在存储器中的权重对应的电阻值。
然而,根据实施例的MAC电路的应用不限于此,并且MAC电路还可应用于使用模拟电路特性以低功率快速地处理多个输入数据的运算。
根据一个或多个实施例的MAC电路可具有与使用TDC的存储器内计算结构的模拟加法器和数字转换电路组合的低功率结构。如上所述,MAC电路可使用一个TDC(进一步地,单个全局计数器)来计算多列数据(例如,与多条输出线对应的数据)。这是因为,开始信号START被同步,因此针对每列,仅与结束信号STOP对应的计数值可被独立地参考。因此,存储器内计算中的所有阵列的并行运算可由一个TDC覆盖。
在现有的模数转换(ADC)结构中,因为每个单独的列需要ADC,并且需要复杂的结构以提高位精度,所以需要的功率和面积是大的。然而,因为根据一个或多个实施例的TDC结构(诸如,MAC电路)使用简单的计数器将加法值数字化,所以电路是简单的。此外,因为所有阵列运算由单个TDC覆盖,所以功耗和大小可被降低。
实施例可被实现为包括可在计算机中执行的指令(例如,在计算机中执行的程序模块)的记录介质。计算机可读介质可包括可由计算机访问的任何可用介质、易失性介质和非易失性介质、以及可分离介质和不可分离介质。此外,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质的示例包括已经通过任意方法或技术实现的用于存储信息(诸如,计算机可读指令、数据结构、程序模块或其他数据)的所有易失性介质和非易失性介质以及可分离介质和不可分离介质。通信介质通常包括计算机可读指令、数据结构、程序模块、调制数据信号的其他数据或另一传输机制,并且通信介质的示例包括任意信息传输介质。
此外,在此使用的术语“单元”可以是硬件组件(诸如,处理器或电路)和/或由硬件组件(诸如,处理器)执行的软件组件。
虽然已经参照本公开的实施例具体示出和描述了本公开,但是本领域普通技术人员将理解,在不脱离本公开的精神或必要特征的情况下,可容易地在其中进行形式和细节上的各种改变。因此,将理解,上述实施例不限制本公开的范围。例如,以单个类型描述的每个组件可以以分布式方式被执行,并且描述的分布式的组件也可以以集成形式被执行。
根据本公开的技术问题的解决方案,由于电路中存在的寄生电容而发生的操作误差可降低。
根据公开的技术问题的解决方案,因为在存在寄生电容的电路中顺序地执行前向处理和反向处理,所以当电路中的多个电阻器中的至少一些电阻器具有不同的电阻值但多个电阻器的总电阻值相同时,可获得相同的运算结果。
图1至图13中执行在本申请中描述的操作的电路100、700、1000、电阻器组110、采样电容器120、320、电源单元150、730、MAC电路300、比较器330、TDC 340、输出单元350、单个全局计数器441、参考单元442、第一电路600、电阻器组610、采样电容器620、电路800、电阻器组810和神经网络1300由硬件组件实现,硬件组件被配置为执行由硬件组件执行的在本申请中描述的操作。可用于执行在本申请中描述的操作的硬件组件的示例在适当的情况包括:控制器、传感器、生成器、驱动器、存储器、比较器、算术逻辑单元、加法器、减法器、乘法器、除法器、积分器、以及被配置为执行在本申请中描述的操作的任何其他电子组件。在其他示例中,通过计算硬件(例如,通过一个或多个处理器或计算机)来实现执行在本申请中描述的操作的硬件组件中的一个或多个硬件组件。处理器或计算机可由一个或多个处理元件(诸如,逻辑门阵列、控制器和算术逻辑单元、数字信号处理器、微型计算机、可编程逻辑控制器、现场可编程门阵列、可编程逻辑阵列、微处理器、或者被配置为以限定的方式响应并执行指令以实现期望的结果的任何其他装置或装置的组合)来实现。在一个示例中,处理器或计算机包括或者连接到存储由处理器或计算机执行的指令或软件的一个或多个存储器。由处理器或计算机实现的硬件组件可执行用于执行在本申请中描述的操作的指令或软件(诸如,操作系统(OS)和在OS上运行的一个或多个软件应用)。硬件组件还可响应于指令或软件的执行来访问、操控、处理、创建和存储数据。为了简单起见,单数术语“处理器”或“计算机”可用于在本申请中描述的示例的描述中,但是在其他示例中,多个处理器或计算机可被使用,或者处理器或计算机可包括多个处理元件、或多种类型的处理元件、或两者。例如,单个硬件组件、或者两个或更多个硬件组件可由单个处理器、或者两个或更多个处理器、或者处理器和控制器来实现。一个或多个硬件组件可由一个或多个处理器、或者处理器和控制器来实现,并且一个或多个其他硬件组件可由一个或多个其他处理器、或者另外的处理器和另外的控制器来实现。一个或多个处理器、或者处理器和控制器可实现单个硬件组件、或者两个或更多个硬件组件。硬件组件可具有不同的处理配置中的任何一个或多个,不同的处理配置的示例包括:单个处理器、独立处理器、并行处理器、单指令单数据(SISD)多处理、单指令多数据(SIMD)多处理、多指令单数据(MISD)多处理和多指令多数据(MIMD)多处理。
执行在本申请中描述的操作的图1至图13中示出的方法由计算硬件(例如,由一个或多个处理器或计算机)来执行,计算硬件被实现为上面描述的执行指令或软件以执行在本申请中描述的由该方法执行的操作。例如,单个操作、或者两个或更多个操作可由单个处理器、或者两个或更多个处理器、或者处理器和控制器来执行。一个或多个操作可由一个或多个处理器、或者处理器和控制器来执行,并且一个或多个其他操作可由一个或多个其他处理器、或者另外的处理器和另外的控制器来执行。一个或多个处理器、或者处理器和控制器可执行单个操作、或者两个或更多个操作。
用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件可被编写为计算机程序、代码段、指令或它们的任何组合,以单独地或共同地指示或配置一个或多个处理器或计算机作为机器或专用计算机进行操作,以执行由如上所述的硬件组件和方法执行的操作。在一个示例中,指令或软件包括由一个或多个处理器或计算机直接执行的机器代码(诸如,由编译器产生的机器代码)。在另一示例中,指令或软件包括由一个或多个处理器或计算机使用解释器执行的高级代码。可基于附图中示出的框图和流程图以及说明书中的相应的描述使用任何编程语言来编写指令或软件,附图中示出的框图和流程图以及说明书中的相应的描述公开了用于执行由如上所述的硬件组件和方法执行的操作的算法。
用于控制计算硬件(例如,一个或多个处理器或计算机)以实现硬件组件并执行如上所述的方法的指令或软件以及任何相关联的数据、数据文件和数据结构可被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中,或者被记录、存储或固定在一个或多个非暂时性计算机可读存储介质上。非暂时性计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取存储器(RAM)、闪存、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘和任何其他装置,任何其他装置被配置为以非暂时性方式存储指令或软件以及任何相关联的数据、数据文件和数据结构并将指令或软件以及任何相关联的数据、数据文件和数据结构提供给一个或多个处理器或计算机,使得一个或多个处理器或计算机能够执行指令。在一个示例中,指令或软件以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得指令和软件以及任何相关联的数据、数据文件和数据结构由一个或多个处理器或计算机以分布式方式存储、访问和执行。
虽然本公开包括特定示例,但是在理解本申请的公开之后将清楚的是,在不脱离权利要求和它们的等同物的精神和范围的情况下,可在这些示例中做出形式和细节上的各种改变。在此描述的示例应仅被认为是描述性的,而不是出于限制的目的。每个示例中的特征或方面的描述应被认为可适用于其他示例中的相似的特征或方面。如果描述的技术以不同的顺序被执行、和/或如果描述的系统、架构、装置或电路中的组件以不同的方式被组合、和/或由其他组件或它们的等同物替代或补充,则可实现合适的结果。因此,公开的范围不是由具体实施方式限定,而是由权利要求和它们的等同物限定,并且在权利要求和它们的等同物的范围内的所有变化应被解释为包括在公开中。
Claims (17)
1.一种包括电阻器组和寄生电容的电路的执行预定运算的方法,电阻器组包括串联连接的多个电阻器,电阻器组的一端被配置为连接到电源单元,电阻器组的另一端被配置为连接到采样电容器,寄生电容存在于所述多个电阻器之间的每个节点处,所述方法包括:
在前向处理中,将施加到采样电容器的采样电容器电压达到第一参考电压时的时间确定为切换时间;
在切换时间,将采样电容器连接到地或预定电压并使电源单元浮置;
在切换时间之后的反向处理中,将施加到电源单元的电源单元电压达到第二参考电压时的时间确定为结束时间;和
基于结束时间执行预定运算。
2.根据权利要求1所述的方法,其中,
第一参考电压通过从供应给电源单元的直流电压减少预定百分比被获得,并且
第二参考电压通过从供应给电源单元的直流电压减少100%与所述预定百分比之差被获得。
3.根据权利要求1或2所述的方法,其中,预定运算包括:
基于结束时间的乘积累加运算或基于结束时间计算电阻器组的总电阻值。
4.根据权利要求3所述的方法,其中,神经网络的节点之间传输的加权输入由乘积累加运算确定。
5.一种包括电阻器组和寄生电容的电路的执行预定运算的方法,电阻器组包括串联连接的多个电阻器,电阻器组的一端被配置为连接到电源单元,电阻器组的另一端被配置为连接到采样电容器,寄生电容存在于所述多个电阻器之间的每个节点处,
电阻器组被划分为第一电阻器组和第二电阻器组,第一电阻器组和第二电阻器组彼此并联连接,并且第一电阻器组的电阻器布置次序与第二电阻器组的电阻器布置次序相反,
所述方法包括:
将施加到采样电容器的采样电容器电压达到参考电压时的时间确定为结束时间;和
基于结束时间执行预定运算。
6.根据权利要求5所述的方法,其中,参考电压通过从供应给电源单元的直流电压减少预定百分比被获得。
7.根据权利要求5或6所述的方法,其中,预定运算包括:基于结束时间的乘积累加运算或基于结束时间计算电阻器组的总电阻值。
8.根据权利要求7所述的方法,其中,神经网络的节点之间传输的加权输入由乘积累加运算确定。
9.一种存储指令的非暂时性计算机可读存储介质,所述指令在由一个或多个处理器执行时,配置所述一个或多个处理器执行权利要求1至8中的任意一项所述的方法。
10.一种用于执行电路的预定运算的设备,所述设备包括:
电源单元,连接到所述电路的一端;
电阻器组,包括串联连接在所述电路的一端与所述电路的另一端之间的多个电阻器;
采样电容器,串联连接到所述多个电阻器;
寄生电容,存在于所述多个电阻器之间的每个节点处;
第一比较器,被配置为:在前向处理中,将施加到采样电容器的采样电容器电压与第一参考电压进行比较,并且输出指示采样电容器电压达到第一参考电压时的时间的第一时间信息;
一个或多个处理器,被配置为:当第一时间信息被输出时,将采样电容器连接到地或预定电压并使电源单元浮置;和
第二比较器,被配置为:在第一时间信息被输出之后的反向处理中,将施加到电源单元的电源单元电压与第二参考电压进行比较,并且输出指示电源单元电压达到第二参考电压时的时间的第二时间信息,
其中,所述一个或多个处理器还被配置为:基于第二时间信息执行预定运算。
11.根据权利要求10所述的设备,其中,
第一参考电压通过从施加到电源单元的直流电压减少预定百分比被获得,并且
第二参考电压通过从施加到电源单元的直流电压减少100%与所述预定百分比之差被获得。
12.根据权利要求10或11所述的设备,其中,预定运算是基于第二时间信息的乘积累加运算或基于第二时间信息计算电阻器组的总电阻值。
13.根据权利要求12所述的设备,其中,神经网络的节点之间传输的加权输入由乘积累加运算确定。
14.一种包括用于执行预定运算的电路的设备,所述设备包括:
电源单元,连接到电路的一端;
电阻器组,包括串联连接在所述电路的一端与所述电路的另一端之间的多个电阻器;
采样电容器,串联连接到所述多个电阻器;
寄生电容,存在于所述多个电阻器之间的每个节点处;
比较器,被配置为:将施加到采样电容器的采样电容器电压与参考电压进行比较,并且输出采样电容器电压达到参考电压时的时间信息;和
一个或多个处理器,被配置为:基于时间信息执行预定运算,
其中,电阻器组被划分为第一电阻器组和第二电阻器组,第一电阻器组和第二电阻器组彼此并联连接,并且第一电阻器组的电阻器布置次序与第二电阻器组的电阻器布置次序相反。
15.根据权利要求14所述的设备,其中,参考电压通过从供应给电源单元的直流电压减少预定百分比被获得。
16.根据权利要求14或15所述的设备,其中,预定运算是基于时间信息的乘积累加运算或基于时间信息计算电阻器组的总电阻值。
17.根据权利要求16所述的设备,其中,神经网络的节点之间传输的加权输入由乘积累加运算确定。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200077377A KR20210158698A (ko) | 2020-06-24 | 2020-06-24 | 회로를 이용하여 소정의 연산을 수행하는 장치 및 방법 |
KR10-2020-0077377 | 2020-06-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113835676A true CN113835676A (zh) | 2021-12-24 |
Family
ID=74586904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011597038.3A Pending CN113835676A (zh) | 2020-06-24 | 2020-12-29 | 使用电路执行运算的方法和设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11816447B2 (zh) |
EP (1) | EP3929725A1 (zh) |
JP (1) | JP2022008142A (zh) |
KR (1) | KR20210158698A (zh) |
CN (1) | CN113835676A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220004430A (ko) * | 2020-07-03 | 2022-01-11 | 삼성전자주식회사 | 인-메모리 프로세싱을 수행하는 장치 및 이를 포함하는 컴퓨팅 장치 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6356475B1 (en) * | 1995-09-08 | 2002-03-12 | Fujitsu Limited | Ferroelectric memory and method of reading out data from the ferroelectric memory |
US20040032759A1 (en) * | 2002-08-14 | 2004-02-19 | Intel Corporation | Memory device, circuits and methods for operating a memory device |
EP1568044A2 (en) * | 2002-11-14 | 2005-08-31 | Fyre Storm, Inc. | Power converter circuitry and method |
US20110156942A1 (en) * | 2009-12-31 | 2011-06-30 | Qunying Li | Reduced area digital-to-analog converter |
US20190034201A1 (en) * | 2016-01-30 | 2019-01-31 | Hewlett Packard Enterprise Development Lp | Dot product engine with negation indicator |
WO2020075272A1 (ja) * | 2018-10-11 | 2020-04-16 | Tdk株式会社 | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI320996B (en) * | 2006-07-06 | 2010-02-21 | Tatung Co | Pop sound prevention module and speaker apparatus thereof |
AU2012284113B2 (en) | 2011-07-20 | 2013-11-28 | The Regents Of The University Of California | Compensated patch-clamp amplifier for nanopore polynucleotide sequencing and other applications |
JP5474114B2 (ja) | 2012-03-16 | 2014-04-16 | 三菱電機株式会社 | 車載高電圧機器の漏電抵抗検出装置およびその漏電抵抗検出方法 |
JP5705382B1 (ja) | 2013-11-22 | 2015-04-22 | 三菱電機株式会社 | 絶縁検出器及び電気機器 |
US9230649B2 (en) | 2014-01-20 | 2016-01-05 | National Tsing Hua University | Non-volatile ternary content-addressable memory 4T2R cell with RC-delay search |
KR102264162B1 (ko) * | 2014-10-29 | 2021-06-11 | 삼성전자주식회사 | 저항성 메모리 장치 및 저항성 메모리 장치의 동작 방법 |
JP2020009123A (ja) * | 2018-07-06 | 2020-01-16 | ソニー株式会社 | 積和演算装置、積和演算回路及び積和演算方法 |
JP2020126426A (ja) * | 2019-02-04 | 2020-08-20 | ソニー株式会社 | 演算装置、及び積和演算システム |
US11573792B2 (en) | 2019-09-03 | 2023-02-07 | Samsung Electronics Co., Ltd. | Method and computing device with a multiplier-accumulator circuit |
-
2020
- 2020-06-24 KR KR1020200077377A patent/KR20210158698A/ko active Search and Examination
- 2020-11-10 US US17/093,889 patent/US11816447B2/en active Active
- 2020-12-29 CN CN202011597038.3A patent/CN113835676A/zh active Pending
-
2021
- 2021-02-10 EP EP21156290.5A patent/EP3929725A1/en active Pending
- 2021-06-07 JP JP2021094975A patent/JP2022008142A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6356475B1 (en) * | 1995-09-08 | 2002-03-12 | Fujitsu Limited | Ferroelectric memory and method of reading out data from the ferroelectric memory |
US20040032759A1 (en) * | 2002-08-14 | 2004-02-19 | Intel Corporation | Memory device, circuits and methods for operating a memory device |
EP1568044A2 (en) * | 2002-11-14 | 2005-08-31 | Fyre Storm, Inc. | Power converter circuitry and method |
US20110156942A1 (en) * | 2009-12-31 | 2011-06-30 | Qunying Li | Reduced area digital-to-analog converter |
US20190034201A1 (en) * | 2016-01-30 | 2019-01-31 | Hewlett Packard Enterprise Development Lp | Dot product engine with negation indicator |
WO2020075272A1 (ja) * | 2018-10-11 | 2020-04-16 | Tdk株式会社 | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 |
Non-Patent Citations (1)
Title |
---|
杨清宝: "嵌入式 SRAM 的高速、低功耗设计及优化", 中国优秀博硕士学位论文全文数据库 (硕士), 15 June 2007 (2007-06-15), pages 137 - 36 * |
Also Published As
Publication number | Publication date |
---|---|
US11816447B2 (en) | 2023-11-14 |
US20210405967A1 (en) | 2021-12-30 |
KR20210158698A (ko) | 2021-12-31 |
JP2022008142A (ja) | 2022-01-13 |
EP3929725A1 (en) | 2021-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11348002B2 (en) | Training of artificial neural networks | |
US10692570B2 (en) | Neural network matrix multiplication in memory cells | |
US11587616B2 (en) | Apparatus and method with in-memory processing | |
EP3789870B1 (en) | Method and computing device with a multiplier-accumulator circuit | |
US11188825B2 (en) | Mixed-precision deep-learning with multi-memristive devices | |
US9466362B2 (en) | Resistive cross-point architecture for robust data representation with arbitrary precision | |
EP3637326A1 (en) | Shifting architecture for data reuse in a neural network | |
AU2020274862B2 (en) | Training of artificial neural networks | |
KR102542532B1 (ko) | 혼합-신호 연산 시스템 및 방법 | |
US11188815B2 (en) | Weight shifting for neuromorphic synapse array | |
US11756610B2 (en) | Apparatus and method with in-memory delay dependent processing | |
US10891108B2 (en) | Calculation device | |
US11386319B2 (en) | Training of artificial neural networks | |
US20210365765A1 (en) | Neuromorphic device and method | |
CN113835676A (zh) | 使用电路执行运算的方法和设备 | |
CN115796252A (zh) | 权重写入方法及装置、电子设备和存储介质 | |
US20220101142A1 (en) | Neural network accelerators resilient to conductance drift | |
US20230298663A1 (en) | Neural network based method and device | |
US20230053948A1 (en) | Apparatus and method with in-memory computing | |
Mehonic | Algorithmic Optimisation for Memristive Deep Learning Accelerators | |
KR20230112353A (ko) | 데이터 처리 시스템 및 그 동작 방법과, 이를 이용한 컴퓨팅 시스템 | |
CN116523014A (zh) | 一种可片上学习的物理rc网络的实现装置及方法 | |
CN116128035A (zh) | 训练方法及装置、电子设备和计算机存储介质 | |
CN116266279A (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 |