G06F2207/4814

Adaptive settling time control for binary-weighted charge redistribution circuits
11681776 · 2023-06-20 · ·

A method and circuit for performing vector-matrix multiplication may include converting an input vector of binary-encoded values into analog signals using one-bit DACs, and sequentially performing a vector-matrix multiplication operation for each bit-order. The method may also include, for each sequentially performed operation, operating a switch that corresponds to a current bit-order. Operating the switch may cause a value corresponding to an output of the multiplier to be stored on a capacitor corresponding to the current bit-order. A time interval during which the switch is operated may be non-uniform with respect to time intervals for other switches, and the time interval may be based at least in part on a settling time of the capacitor. The method may also include performing a bit-order weighted summation of values stored on the plurality of capacitors to generate a result of the vector-matrix multiplication.

Device for computing the inner product of vectors
11500964 · 2022-11-15 · ·

A device for computing the inner product of vectors includes a vector data arranger, a vector data pre-accumulator, a number converter, and a post-accumulator. The vector data arranger stores a first vector and sequentially outputs a plurality of vector data based on the first vector. The vector data pre-accumulator stores a second vector, receives each of the vector data, and pre-accumulates the second vector, so as to generate a plurality accumulation results. The number converter and the post-accumulator receive and process all the accumulation results corresponding to each of the vector data to generate an inner product value. The present invention implements a lookup table with the vector data pre-accumulator and the number converter to increase calculation speed and reduce power consumption.

NEURAL NETWORK COMPUTATION METHOD USING ADAPTIVE DATA REPRESENTATION

A method for neural network computation using adaptive data representation, adapted for a processor to perform multiply-and-accumulate operations on a memory having a crossbar architecture, is provided. The memory comprises multiple input and output lines crossing each other, multiple cells respectively disposed at intersections of the input and output lines, and multiple sense amplifiers respectively connected to the output lines. In the method, an input cycle of kth bits respectively in an input data is adaptively divided into multiple sub-cycles, wherein a number of the divided sub-cycles is determined according to a value of k. The kth bits of the input data are inputted to the input lines with the sub-cycles and computation results of the output lines are sensed by the sense amplifiers. The computation results sensed in each sub-cycle are combined to obtain the output data corresponding to the kth bits of the input data.

Multiply and accumulate calculation device, neuromorphic device, and method for using multiply and accumulate calculation device
11429348 · 2022-08-30 · ·

A multiply and accumulate calculation device includes a multiple calculation unit and a accumulate calculation unit. The multiple calculation unit includes a plurality of multiple calculation elements, which are variable resistance elements, and at least one reference element. The accumulate calculation unit includes an output detector configured to detect a total value of at least outputs from the plurality of multiple calculation elements. Each of the plurality of multiple calculation elements is a magnetoresistance effect element including a magnetized free layer having a magnetic domain wall, a magnetization fixed layer in which a magnetization direction is fixed, and a nonmagnetic layer sandwiched between the magnetized free layer and the magnetized fixed layer. The reference element is a reference magnetoresistance effect element having a magnetization free layer that does not have the magnetic domain wall.

Device and method for reading data in memory

In a compute-in-memory (“CIM”) system, current signals, indicative of the result of a multiply-and-accumulate operation, from a CIM memory circuit are computed by comparing them with reference currents, which are generated by a current digital-to-analog converter (“DAC”) circuit. The memory circuit can include non-volatile memory (“NVM”) elements, which can be multi-level or two-level NVM elements. The characteristic sizes of the memory elements can be binary weighted to correspond to the respective place values in a multi-bit weight and/or a multi-bit input signal. Alternatively, NVM elements of equal size can be used to drive transistors of binary weighted sizes. The current comparison operation can be carried out at higher speeds than voltage computation. In some embodiments, simple clock-gated switches are used to produce even currents in the current summing branches. The clock-gated switches also serve to limit the time the cell currents are on, thereby reducing static power consumption.

COMPUTATION APPARATUS AND METHOD USING THE SAME

A computation apparatus includes a plurality of memory cells and a plurality of sense amplifiers, in which each of the memory cells includes a memory circuit and a calculation circuit. The memory circuits of the memory cells are configured to receive input values from a plurality of word lines, generate a computation result based on the input values and output the computation result to a bit line. The calculation circuits of the memory cells are configured to receive calculation input values from a plurality of calculation word lines, generate calculation output values based on the calculation input values, and output the calculation output values to a plurality of calculation bit lines. The sense amplifiers are configured to sense the calculation output values from the calculation bit lines to generate sensed values, wherein a value of the computation result is determined based on the sensed values and the calculation output values.

RESISTIVE MEMORY ARRAYS FOR PERFORMING MULTIPLY-ACCUMULATE OPERATIONS

In one example in accordance with the present disclosure a resistive memory array is described. The array includes a number of resistive memory elements to receive a common-valued read signal. The array also includes a number of multiplication engines to perform a multiply operation by receiving a memory element output from a corresponding resistive memory element, receiving an input signal, and generating a multiplication output based on a received memory element output and a received input signal. The array also includes an accumulation engine to sum multiplication outputs from the number of multiplication engines.

DISCRETE-TIME ANALOG FILTERING

According to an example, discrete-time analog filtering may include receiving an input signal, and sampling the input signal to determine sampled input signal values related to the input signal.

SEMICONDUCTOR DEVICE
20170263291 · 2017-09-14 ·

The circuit scale of a semiconductor device that can perform arithmetic processing of analog data is reduced. In the semiconductor device, a memory cell is configured to generate a first current corresponding to first analog data and to generate a second current corresponding to the first analog data and second analog data. A reference memory cell is configured to generate a reference current corresponding to reference data. A first circuit is configured to generate and hold a third current corresponding to the difference between the first current and the reference current when the first current is lower than the reference current. A second circuit is configured to generate and hold a fourth current corresponding to the difference between the first current and the reference current when the first current is higher than the reference current. One of the first circuit and the second circuit is configured to generate a fifth current corresponding to third analog data.

ARITHMETIC APPARATUS AND MULTIPLY-ACCUMULATE SYSTEM
20220236952 · 2022-07-28 ·

An arithmetic apparatus includes first and second arithmetic circuit units. Multiply-accumulate signals output from a plurality of output lines of the first arithmetic circuit unit or signals generated on the basis of the multiply-accumulate signals are input into a plurality of input lines of the second arithmetic circuit unit. An extending direction of the plurality of input lines of the first arithmetic circuit unit and an extending direction of the plurality of output lines of the second arithmetic circuit unit are parallel to each other. Assuming that end portions of two endmost output lines of the first arithmetic circuit unit are defined as first and second end portions and end portions of two endmost input lines of the second arithmetic circuit unit are defined as third and fourth end portions, the end portions of the two endmost output lines being located on a side of the second arithmetic circuit unit, the end portions of the two endmost input lines being located on a side of the first arithmetic circuit unit, a position in the first direction of at least one of the first or second end portion a position between a position of the third end portion a position of the fourth end portion. Or, a position in the first direction of at least one of the third or the fourth end portion is between a position of the first end portion and a position of the second end portion.