Patents Examined by David H. Malzahn
  • Patent number: 10713011
    Abstract: Examples of the present disclosure provide apparatuses and methods for performing multiplication operations in a memory. An example method comprises performing a multiplication operation on a first element stored in a group of memory cells coupled to a first access line and a number of sense lines of a memory array and a second element stored in a group of memory cells coupled to a second access line and the number of sense lines of the memory array. The method can include a number operations performed without transferring data via an input/output (I/O) line.
    Type: Grant
    Filed: September 9, 2019
    Date of Patent: July 14, 2020
    Assignee: Micron Technology, Inc.
    Inventor: Sanjay Tiwari
  • Patent number: 10705799
    Abstract: An optical system uses a multi-layered birefringent structure that receives an input beam that may be non-coherent or coherent, and produces a randomization energy from the input beam, by creating birefringent induced beam subdivisions as the beam passes through each birefringent layer, where after the beam has passed through a threshold number of birefringent layers, a randomized energy distribution is created. That randomized energy distribution is read by a photodetector and converted into a random number by a randomization processing device.
    Type: Grant
    Filed: August 26, 2019
    Date of Patent: July 7, 2020
    Inventor: Carol Y. Scarlett
  • Patent number: 10705798
    Abstract: Examples of the present disclosure provide apparatuses and methods for performing multi-variable bit-length multiplication operations in a memory. An example method comprises performing a multiplication operation on a first vector and a second vector. The first vector includes a number of first elements stored in a group of memory cells coupled to a first access line and a number of sense lines of a memory array. The second vector includes a number of second elements stored in a group of memory cells coupled to a second access line and the number of sense lines of the memory array. The example multiplication operation can include performing a number of AND operations, OR operations and SHIFT operations without transferring data via an input/output (I/O) line.
    Type: Grant
    Filed: September 6, 2019
    Date of Patent: July 7, 2020
    Assignee: Micron Technology, Inc.
    Inventor: Sanjay Tiwari
  • Patent number: 10698655
    Abstract: Hardware logic arranged to normalise (or renormalise) an n-bit input number is described in which at least a proportion of a left shifting operation is performed in parallel with a leading zero count operation. In various embodiments the left shifting and the leading zero count are performed independently. In various other embodiments, a subset of the bits output by a leading zero counter are input to a left shifter and the output from the left shifter is input to a renormalisation block which completes the remainder of the left shifting operation independently of any further input from the leading zero counter.
    Type: Grant
    Filed: January 18, 2019
    Date of Patent: June 30, 2020
    Assignee: Imagination Technologies Limited
    Inventor: Theo Alan Drane
  • Patent number: 10691772
    Abstract: A method includes storing a sparse triangular matrix as a compressed sparse row (CSR) dataset. For each factor of a plurality of factors in a first vector, a value of the factor is calculated by identifying for the factor a set of one or more antecedent factors in the first vector, where the value of the factor is dependent on each of the one or more antecedent factors. In response to a completion array indicating that all of the one or more antecedent factor values are solved, the value of the factor is calculated based on one or more elements in a row of the matrix and a product value corresponding to the row. In the completion array, a first completion flag for the factor is asserted, indicating that the factor is solved.
    Type: Grant
    Filed: April 20, 2018
    Date of Patent: June 23, 2020
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Joseph Lee Greathouse
  • Patent number: 10685421
    Abstract: Embodiments relate to a configurable convolution engine that receives configuration information to perform convolution and other deep machine learning operations on streaming input data of various formats. The convolution engine may include two convolution circuits that each generate a stream of values by applying convolution kernels to input data. The stream of values may each define one or more channels of image data. A channel merge circuit combines the streams of values from each convolution circuit in accordance with a selected mode of operation. In one mode, the first and second streams from the convolution circuits are merged into an output stream having the combined channels of the first and second streams in an interleaved manner. In another mode, the first stream from the first convolution circuit is fed into the input of the second convolution circuit.
    Type: Grant
    Filed: October 25, 2019
    Date of Patent: June 16, 2020
    Assignee: Apple Inc.
    Inventors: Sung Hee Park, Muge Wang, Junji Sugisawa
  • Patent number: 10684982
    Abstract: A print controller includes a processor and a memory. When an instruction to execute a specific calculation function is received, the processor obtains a calculation result related to the specific calculation function. When an instruction to print is received, if the instruction to execute the specific calculation function has been received a plurality of times without printing the calculation result related to the specific calculation function, which was obtained when the instruction to execute the calculation function was received one or more times before the instruction received at a last time of the plurality of times, the processor causes a printing device to print the calculation result related to the specific calculation function, which was obtained when the instruction to execute the specific calculation function was received at the last time of the plurality of times.
    Type: Grant
    Filed: October 3, 2019
    Date of Patent: June 16, 2020
    Assignee: CASIO COMPUTER CO., LTD.
    Inventors: Hiroaki Yoshizawa, Hironori Yoshikawa
  • Patent number: 10673662
    Abstract: A method for generating M parallel pseudorandom binary sequences (PRBSs), each comprising a 2n?1 sequence of pseudorandom bits, includes loading into the circuit an initial M-bit word, the initial M-bit word comprising M sequential bits selected from a pre-determined PRBS-n sequence, wherein n>1 and M>n. The method includes generating, using a plurality of logic gates of the circuit, a next M-bit word using at least n+1 of the M sequential bits of the initial M-bit word. The method includes repeatedly generating, using the logic gates of the circuit, the next M-bit word from a previous M-bit word using the at least n+1 of M sequential bits of the previous M-bit word, resulting in M parallel sequences of the PRBS-n sequence. The method includes transmitting the generated next M-bit words on an M-bit wide parallel bus.
    Type: Grant
    Filed: May 11, 2018
    Date of Patent: June 2, 2020
    Assignee: KEYSIGHT TECHNOLOGIES, INC.
    Inventor: Colin Johnstone
  • Patent number: 10656942
    Abstract: Embodiments of instructions and methods of execution of said instructions and resources to execute said instructions are detailed. For example, in an embodiment, a processor comprising: decode circuitry to decode an instruction having fields for an opcode, a packed data source operand identifier, and a packed data destination operand identifier; and execution circuitry to execute the decoded instruction to convert a data element from a least significant packed data element position of the identified packed data source operand from a fixed-point representation to a floating point representation, store the floating point representation into a 32-bit least significant packed data element position of the identified packed data destination operand, and zero all remaining packed data elements of the identified packed data destination operand is described.
    Type: Grant
    Filed: March 4, 2019
    Date of Patent: May 19, 2020
    Assignee: Intel Corporation
    Inventors: Venkateswara Madduri, Elmoustapha Ould-Ahmed-Vall, Robert Valentine, Jesus Corbal, Mark Charney
  • Patent number: 10656913
    Abstract: Techniques for operating on and calculating binary floating-point numbers using an enhanced floating-point number format are presented. The enhanced format can comprise a single sign bit, six bits for the exponent, and nine bits for the fraction. Using six bits for the exponent can provide an enhanced exponent range that facilitates desirably fast convergence of computing-intensive algorithms and low error rates for computing-intensive applications. The enhanced format can employ a specified definition for the lowest binade that enables the lowest binade to be used for zero and normal numbers; and a specified definition for the highest binade that enables it to be structured to have one data point used for a merged Not-a-Number (NaN)/infinity symbol and remaining data points used for finite numbers. The signs of zero and merged NaN/infinity can be “don't care” terms. The enhanced format employs only one rounding mode, which is for rounding toward nearest up.
    Type: Grant
    Filed: June 5, 2018
    Date of Patent: May 19, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Silvia Melitta Mueller, Ankur Agrawal, Bruce Fleischer, Kailash Gopalakrishnan, Dongsoo Lee
  • Patent number: 10649731
    Abstract: Integrated circuits with specialized processing blocks are provided. A specialized processing block may include one real addition stage and one real multiplier stage. The multiplier stage may simultaneously feed its output to the addition stage and directly to an adjacent specialized processing block. The addition stage may also produce sum and difference outputs in parallel. A group of four such specialized processing blocks may be connected in a chain to implement a radix-2 fast Fourier transform (FFT) butterfly. Multiple radix-2 butterflies may be stacked to form yet higher order radix butterflies. If desired, the specialized processing block may also be used to implement a complex multiply operation. Three or four specialized processing blocks may be chained together and along with one or more adders outside the specialized processing blocks, real and imaginary portions of a complex product can be generated.
    Type: Grant
    Filed: October 23, 2018
    Date of Patent: May 12, 2020
    Assignee: Altera Corporation
    Inventor: Martin Langhammer
  • Patent number: 10642578
    Abstract: A binary logic circuit for approximating a mathematical function over a predefined range as a series of linear segments, each linear segment having one of a predetermined set of fixed gradients and a corresponding base value, the binary logic circuit comprising: an input for receiving an input variable in the predefined range; a plurality of logic chains each comprising: a binary multiplier adapted to perform multiplication by a respective one of the set of fixed gradients using h?1 binary adders, where h is the extended Hamming weight; and a binary adder adapted to add a base value to the input or output of the binary multiplier; and selection logic configured to select one of the logic chains in dependence on the input variable so as to provide, for the received input variable, an approximate value of the mathematical function.
    Type: Grant
    Filed: July 23, 2019
    Date of Patent: May 5, 2020
    Assignee: Imagination Technologies Limited
    Inventor: Tim Lee
  • Patent number: 10635396
    Abstract: A multiplier circuit includes a partial product generation circuit, a truncation circuit, and a summation circuit. The partial product generation circuit is configured to generate a plurality of partial products for multiplying two values. The truncation circuit is coupled to the partial product generation circuit. The truncation circuit is configured to shorten at least some of the partial products by removing a least significant bit from the at least some of the partial products. The summation circuit coupled to the truncation circuit. The summation circuit is configured to sum the truncated partial products produced by the truncation circuit.
    Type: Grant
    Filed: June 27, 2019
    Date of Patent: April 28, 2020
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Jawaharlal Tangudu, Suvam Nandi, Pooja Sundar, Jaiganesh Balakrishnan
  • Patent number: 10635740
    Abstract: Methods, systems, and apparatus for a matrix multiply unit implemented as a systolic array of cells are disclosed. The matrix multiply unit may include cells arranged in columns of the systolic array. Two chains of weight shift registers per column of the systolic array are in the matrix multiply unit. Each weight shift register is connected to only one chain and each cell is connected to only one weight shift register. A weight matrix register per cell is configured to store a weight input received from a weight shift register. A multiply unit is coupled to the weight matrix register and configured to multiply the weight input of the weight matrix register with a vector data input in order to obtain a multiplication result.
    Type: Grant
    Filed: May 17, 2018
    Date of Patent: April 28, 2020
    Assignee: Google LLC
    Inventors: Andrew Everett Phelps, Norman Paul Jouppi
  • Patent number: 10613829
    Abstract: A full adder is provided in which a sum logic circuit for producing the sum signal and a carry-out logic circuit for producing the carry-out output paths do not share internal nodes. In addition, the sum logic circuit and the carry-out logic circuit are both configured to obviate the need for transmission gates with respect to forming the sum signal and the carry-out signal.
    Type: Grant
    Filed: May 17, 2018
    Date of Patent: April 7, 2020
    Assignee: QUALCOMM Incorporated
    Inventors: Manish Srivastava, Esakkimuthu Dhakshinamoorthy, Neha Gupta
  • Patent number: 10613833
    Abstract: The present relates to invention deals with an execution unit configured to execute a computer program instruction to generate random numbers based on a predetermined probability distribution. The execution unit comprises a hardware pseudorandom number generator configured to generate at least randomised bit string on execution of the instruction and adding circuitry which is configured to receive a number of bit sequences of a predetermined bit length selected from the randomised bit string and to sum them to produce a result.
    Type: Grant
    Filed: February 1, 2018
    Date of Patent: April 7, 2020
    Assignee: Graphcore Limited
    Inventors: Stephen Felix, Godfrey Da Costa
  • Patent number: 10606560
    Abstract: Deterministic asymmetry in a random number generator can be mitigated by a circuit that includes a first inverter, a second inverter, a first capacitor, a second capacitor, a first switch, and a second switch. The first inverter can include a first input terminal and a first output terminal. The first inverter can have a first inverter threshold voltage. The second inverter can include a second input terminal and a second output terminal. The second inverter can have a second inverter threshold voltage. The first capacitor can be conductively coupled between the first output terminal and the second output terminal. The second capacitor can be conductively coupled between the second output terminal and the first input terminal. The first switch can be conductively coupled between the first input terminal and the first output terminal. The second switch can be conductively coupled between the second input terminal and the second output terminal.
    Type: Grant
    Filed: May 9, 2018
    Date of Patent: March 31, 2020
    Assignee: VERILY LIFE SCIENCES LLC
    Inventors: Nathan Pletcher, Robert Wiser, Alireza Dastgheib
  • Patent number: 10599608
    Abstract: A calculator includes: a plurality of numeric keys; a plurality of operation keys; a delimiter key; a memory; and a processor, wherein said processor is configured to: when a first numerical data having at least a first integer, a delimiter, and a second integer arranged in that order has been received, upon receiving a prescribed operation of one of said plurality of operation keys, registers said first integer in said memory as a first operand, and registers said second integer in said memory as a second operand; and registers in said memory a target-operand that has been inputted via an operation or operations of at least one of said plurality of numeric keys, and performs a prescribed arithmetic operation on said target-operand registered in said memory using a plurality of registered operands that include the registered first and second operands.
    Type: Grant
    Filed: January 18, 2018
    Date of Patent: March 24, 2020
    Assignee: CASIO COMPUTER CO., LTD.
    Inventors: Hironori Yoshikawa, Hiroaki Yoshizawa
  • Patent number: 10579334
    Abstract: A system for block floating point computation in a neural network receives a plurality of floating point numbers. An exponent value for an exponent portion of each floating point number of the plurality of floating point numbers is identified and mantissa portions of the floating point numbers are grouped. A shared exponent value of the grouped mantissa portions is selected according to the identified exponent values and then removed from the grouped mantissa portions to define multi-tiered shared exponent block floating point numbers. One or more dot product operations are performed on the grouped mantissa portions of the multi-tiered shared exponent block floating point numbers to obtain individual results. The individual results are shifted to generate a final dot product value, which is used to implement the neural network. The shared exponent block floating point computations reduce processing time with less reduction in system accuracy.
    Type: Grant
    Filed: May 8, 2018
    Date of Patent: March 3, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Daniel Lo, Eric Sen Chung
  • Patent number: 10579336
    Abstract: Examples of the present disclosure provide apparatuses and methods for performing division operations in a memory. An example apparatus comprises a first address space comprising a first number of memory cells coupled to a sense line and to a first number of select lines wherein the first address space stores a dividend value. A second address space comprises a second number of memory cells coupled to the sense line and to a second number of select lines wherein the second address space stores a divisor value. A third address space comprises a third number of memory cells coupled to the sense line and to a third number of select lines wherein the third address space stores a remainder value. Sensing circuitry can be configured to receive the dividend value and the divisor value, divide the dividend value by the divisor value, and store a remainder result in the third number of memory cells.
    Type: Grant
    Filed: August 20, 2018
    Date of Patent: March 3, 2020
    Assignee: Micron Technology, Inc.
    Inventor: Kyle B. Wheeler