Patents Examined by Emily E. Larocque
  • Patent number: 11977856
    Abstract: Methods are provided for generating a random bit-string from an array of SRAM cells. Such a method includes reading the start-up value of each cell over multiple power-ups of the array, and calculating, from the multiple start-up values of each cell, a bias value indicative of entropy of that cell. The method also includes generating, based on the bias values, an address list in which addresses of cells in the array are listed in order of entropy of the cells. This address list is stored in non-volatile memory. The method further comprises, on a subsequent power-up of the array, generating a random bit-string by reading the start-up values of a set of cells selected in decreasing entropy order of the address list. Hardware random number generators exploiting such methods are also provided.
    Type: Grant
    Filed: January 25, 2021
    Date of Patent: May 7, 2024
    Assignee: International Business Machines Corporation
    Inventors: Miguel Angel Prada Delgado, Gero Dittmann
  • Patent number: 11962305
    Abstract: A true random number generator circuit includes a ring oscillator and a plurality of sampling circuits. The ring oscillator includes a plurality of series-connected stages coupled together in a ring. An output of a last stage of the ring oscillator is coupled to an input of a first stage of the ring oscillator. A sampling circuit of the plurality of sampling circuits has an input coupled to a node located between two adjacent stages of the plurality of series-connected stages. Every node of the ring oscillator is coupled to a corresponding sampling circuit of the plurality of sampling circuits. In another embodiment, a method for generating a random number is provided.
    Type: Grant
    Filed: June 9, 2021
    Date of Patent: April 16, 2024
    Assignee: NXP B.V.
    Inventor: Björn Fay
  • Patent number: 11958635
    Abstract: A dual solution candidate searcher receives an input of information about a constraint coefficient matrix and a cost vector, determines a dual problem of a linear programming problem being a primal problem and all active sets representing combinations of active formulas in constraints of the dual problem, finds, for each of the active sets, a feasible dual solution candidate meeting constraints, and stores the dual solution candidate into a storage in a manner associated with a corresponding one of the active sets. An optimal solution calculation device receives an input of a constraint vector as, selects an optimal one of the active sets as an optimal active set based on an inner product of the constraint vector and the dual solution candidate stored in the storage, and finds and outputs a basic feasible solution corresponding to the selected active set as an optimal solution.
    Type: Grant
    Filed: May 23, 2018
    Date of Patent: April 16, 2024
    Assignee: MITSUBISHI ELECTRIC CORPORATION
    Inventors: Yuta Asano, Takehiro Nishiyama
  • Patent number: 11960999
    Abstract: A neural network apparatus configured to perform a deconvolution operation includes a memory configured to store a first kernel; and a processor configured to: obtain, from the memory, the first kernel; calculate a second kernel by adjusting an arrangement of matrix elements comprised in the first kernel; generate sub-kernels by dividing the second kernel; perform a convolution operation between an input feature map and the sub-kernels using a convolution operator; and generate an output feature map, as a deconvolution of the input feature map, by merging results of the convolution operation.
    Type: Grant
    Filed: April 21, 2023
    Date of Patent: April 16, 2024
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Joonho Song, Sehwan Lee, Junwoo Jang
  • Patent number: 11960854
    Abstract: A multiply-accumulate computation is performed using digital logic circuits. To perform the computation, a plurality of target signals are received at a respective plurality of ripple counters. The counter outputs of the respective ripple counters are scaled by setting stop count values. Counter outputs of the respective ripple counters are adjusted with respective constant values by setting counter reset values at the respective ripple counters. Each count pulses of the target signals for an adjusted period. The count values of the ripple counters are summed. The results may be used to calculate an average value for an adaptive voltage and frequency scaling process.
    Type: Grant
    Filed: September 22, 2020
    Date of Patent: April 16, 2024
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Ravinder Reddy Rachala, Stephen Victor Kosonocky, Miguel Rodriguez
  • Patent number: 11960857
    Abstract: A four-input lookup table (“LUT4”) is modified to operate in a first mode as an ordinary LUT4 and in a second mode as a 1-bit adder providing a sum output and a carry output. A six-input lookup table (“LUT6”) is modified to operate in a first mode as an ordinary LUT6 with a single output and in a second mode as a 2-bit adder providing a sum output and a carry output. Both possible results for the two different possible carry inputs can be determined and selected between when the carry input is available, implementing a 2-bit carry-select adder when in the second mode and retaining the ability to operate as an ordinary LUT6 in the first mode. Using the novel LUT6 design in a circuit chip fabric allows a 2-bit adder slice to be built that efficiently makes use of the LUT6 without requiring additional logic blocks.
    Type: Grant
    Filed: May 8, 2023
    Date of Patent: April 16, 2024
    Assignee: Achronix Semiconductor Corporation
    Inventors: Christopher C. LaFrieda, Virantha N. Ekanayake
  • Patent number: 11954456
    Abstract: A binary logic circuit for determining the ratio x/d where x is a variable integer input, the binary logic circuit comprising: a logarithmic tree of modulo units each configured to calculate x[a: b]mod d for respective block positions a and b in x where b>a with the numbering of block positions increasing from the most significant bit of x up to the least significant bit of x, the modulo units being arranged such that a subset of M?1 modulo units of the logarithmic tree provide x[0: m]mod d for all m?{1, M}, and, on the basis that any given modulo unit introduces a delay of 1: all of the modulo units are arranged in the logarithmic tree within a delay envelope of [log2 M]; and more than M?2u of the subset of modulo units are arranged at the maximal delay of [log2 M], where 2u is the power of 2 immediately smaller than M.
    Type: Grant
    Filed: April 27, 2023
    Date of Patent: April 9, 2024
    Assignee: Imagination Technologies Limited
    Inventors: Jonas Kallen, Sam Elliott
  • Patent number: 11954583
    Abstract: In one example, a neural network accelerator can execute a set of instructions to: load a first weight data element from a memory into a systolic array, the first weight data element having first coordinates; extract, from the instructions, information indicating a first subset of input data elements to be obtained from the memory, the first subset being based on a stride of a transposed convolution operation and second coordinates of first weight data element in a rotated array of weight data elements; based on the information, obtain the first subset of input data elements from the memory; load the first subset of input data elements into the systolic array; and control the systolic array to perform first computations based on the first weight data element and the first subset of input data elements to generate output data elements of an array of output data elements.
    Type: Grant
    Filed: April 14, 2023
    Date of Patent: April 9, 2024
    Assignee: Amazon Technologies, Inc.
    Inventors: Jeffrey T Huynh, Vignesh Vivekraja
  • Patent number: 11941077
    Abstract: According to one embodiment, a calculating device includes a processor repeating a processing procedure. The processing procedure includes a first variable update and a second variable update. The first variable update includes updating an ith entry of a first variable xi by adding a first function to the ith entry of the first variable xi before the first variable update. The second variable update includes updating the ith entry of the second variable yi by adding a second function and a third function to the ith entry of the second variable yi before the second variable update. The processor performs at least an output of at least one of the ith entry of the first variable xi obtained after the repeating of the processing procedure or a function of the ith entry of the first variable xi obtained after the repeating of the processing procedure.
    Type: Grant
    Filed: October 3, 2022
    Date of Patent: March 26, 2024
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Hayato Goto, Kosuke Tatsumura
  • Patent number: 11941370
    Abstract: An arithmetic apparatus includes input lines and multiply-accumulate devices. An electrical signal for an input value is input into each of the input lines. Multiplication units include a positive weight multiplication unit that generates a positive weight charge for a product value obtained by multiplying the input value by a positive weight value and/or a negative weight multiplication unit that generates a negative weight charge for a product value obtained by multiplying the input value by a negative weight value. An output unit of the multiply-accumulate device includes an accumulation unit that accumulates the positive weight charge and the negative weight charge, generates a voltage signal representing a sum of the product values by a voltage on the basis of the voltage of the accumulation unit, and outputs the multiply-accumulate signal on the basis of the voltage signal.
    Type: Grant
    Filed: January 27, 2020
    Date of Patent: March 26, 2024
    Assignee: Sony Group Corporation
    Inventor: Hiroshi Yoshida
  • Patent number: 11941371
    Abstract: Systems, apparatuses, and methods related to bit string accumulation are described. A method for bit string accumulation can include performing an iteration of a recursive operation using a first bit string and a second bit string and modifying a quantity of bits of a result of the iteration of the recursive operation, wherein the modified quantity of bits is less than a threshold quantity of bits. The method can further include writing a first value comprising the modified bits indicative of the result of the iteration of the recursive operation to a first register and writing a second value indicative of the factor corresponding to the result of the iteration of the recursive operation to a second register.
    Type: Grant
    Filed: January 31, 2022
    Date of Patent: March 26, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Vijay S. Ramesh, Katie Blomster Park
  • Patent number: 11928578
    Abstract: A method of processing of a sparsity-aware neural processing unit includes receiving a plurality of input activations (IA); obtaining a weight having a non-zero value in each weight output channel; storing the weight and the IA in a memory, and obtaining an input channel index comprising a memory address location in which the weight and the IA are stored; and arranging the non-zero weight of each weight output channel according to a row size of an index matching unit (IMU) and matching the IA to the weight in the IMU comprising a buffer memory storing the input channel index.
    Type: Grant
    Filed: December 1, 2020
    Date of Patent: March 12, 2024
    Assignee: POSTECH RESEARCH AND BUSINESS DEVELOPMENT FOUNDATION
    Inventors: Sungju Ryu, Jae-Joon Kim, Youngtaek Oh
  • Patent number: 11922130
    Abstract: In an approach for optimization of integer arithmetic expressions implemented as a Boolean logic circuit, a processor converts arithmetic operators in an arithmetic expression into adders. A processor identifies a topological order of the adders. A processor merges the adders based on the topological order into a multi-operand adder. A processor converts the multi-operand adder to a compressor tree and a two-operand adder. A processor performs the arithmetic expression based on the converted multi-operand adder.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: March 5, 2024
    Assignee: International Business Machines Corporation
    Inventors: Mihir Choudhury, Ayesha Akhter, Alexander Ivrii, Robert Lowell Kanzelman
  • Patent number: 11922240
    Abstract: A multiplier-accumulator accepts A and B digital inputs and generates a dot product P by applying the bits of the A input and the bits of the B inputs to unit elements comprised of groups of AND gates coupled to charge transfer lines through a capacitor Cu. The number of bits in the B input is a number of AND-groups and the number of bits in A is the number of AND gates in an AND-group. Each unit element receives one bit of the B input applied to all of the AND gates of the unit element, and each unit element having the bits of A applied to each associated AND gate input of each unit element. The AND gates are coupled to charge transfer lines through a capacitor Cu, and the charge transfer lines couple to binary weighted charge summing capacitors which sum and scale the charges from the charge transfer lines, the charge coupled to an analog to digital converter which forms the dot product output. The charge transfer lines may span multiple unit elements.
    Type: Grant
    Filed: December 31, 2020
    Date of Patent: March 5, 2024
    Assignee: Ceremorphic, Inc.
    Inventors: Ryan Boesch, Martin Kraemer, Wei Xiong
  • Patent number: 11922133
    Abstract: A method includes processing, by an arithmetic and logic unit of a processor, masked data, and keeping, by the arithmetic and logic unit of the processor, the masked data masked throughout their processing by the arithmetic and logic unit. A processor includes an arithmetic and logic unit configured to keep masked data masked throughout processing of the masked data in the arithmetic and logic unit.
    Type: Grant
    Filed: September 30, 2020
    Date of Patent: March 5, 2024
    Assignees: STMicroelectronics (Rousset) SAS, STMicroelectronics (Grenoble 2) SAS
    Inventors: Rene Peyrard, Fabrice Romain, Jean-Michel Derien, Christophe Eichwald
  • Patent number: 11914973
    Abstract: A compute-memory circuit included in a computer system includes multiple data storage cells and multiplier circuits. The data storage cells store weight values associated with a first operand. The multiplier circuits are coupled to a global bit line and receive the weight values via local bit lines coupled to the data storage cells. Using the received weight values and activation signals indicative of a second operand, the multiplier circuits modify a voltage level of the global bit line. The resultant voltage level on the global bit line is indicative of a product of the first and second operands, and can be converted to a digital value using an analog-to-digital converter circuit.
    Type: Grant
    Filed: November 19, 2020
    Date of Patent: February 27, 2024
    Assignee: Apple Inc.
    Inventors: Shahzad Nazar, Bharan Giridhar, Mohamed H. Abu-Rahma, Ajay Bhatia, Mayur V. Joshi, Yildiz Sinangil, Aravind Kandala
  • Patent number: 11915117
    Abstract: A method for convolution in a convolutional neural network (CNN) is provided that includes accessing a coefficient value of a filter corresponding to an input feature map of a convolution layer of the CNN, and performing a block multiply accumulation operation on a block of data elements of the input feature map, the block of data elements corresponding to the coefficient value, wherein, for each data element of the block of data elements, a value of the data element is multiplied by the coefficient value and a result of the multiply is added to a corresponding data element in a corresponding output block of data elements comprised in an output feature map.
    Type: Grant
    Filed: May 24, 2021
    Date of Patent: February 27, 2024
    Assignee: Texas Instruments Incorporated
    Inventors: Manu Mathew, Kumar Desappan, Pramod Kumar Swami
  • Patent number: 11909422
    Abstract: A deep neural network (“DNN”) module compresses and decompresses neuron-generated activation data to reduce the utilization of memory bus bandwidth. The compression unit receives an uncompressed chunk of data generated by a neuron in the DNN module. The compression unit generates a mask portion and a data portion of a compressed output chunk. The mask portion encodes the presence and location of the zero and non-zero bytes in the uncompressed chunk of data. The data portion stores truncated non-zero bytes from the uncompressed chunk of data. A decompression unit receives a compressed chunk of data from memory in the DNN processor or memory of an application host. The decompression unit decompresses the compressed chunk of data using the mask portion and the data portion.
    Type: Grant
    Filed: November 11, 2022
    Date of Patent: February 20, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Joseph Leon Corkery, Benjamin Eliot Lundell, Larry Marvin Wall, Chad Balling McBride, Amol Ashok Ambardekar, George Petre, Kent D. Cedola, Boris Bobrov
  • Patent number: 11907327
    Abstract: Provided is an arithmetic method of performing convolution operation in convolutional layers of a neutral network by calculating matrix products. The arithmetic method includes: determining, for each of the convolutional layers, whether an amount of input data to be inputted to the convolutional layer is smaller than or equal to a predetermined amount of data; selecting a first arithmetic mode and performing convolution operation in the first arithmetic mode, when the amount of input data is determined to be smaller than or equal to the predetermined amount of data in the determining; selecting a second arithmetic mode and performing convolution operation in the second arithmetic mode, when the amount of input data is determined to be larger than the predetermined amount of data in the determining; and outputting output data which is a result obtained by performing convolution operation.
    Type: Grant
    Filed: December 1, 2020
    Date of Patent: February 20, 2024
    Assignee: SOCIONEXT INC.
    Inventor: Makoto Yamakura
  • Patent number: 11907684
    Abstract: A system and method of generating a series of random number; from a source of random numbers in a computing system. Steps includes: loading a data loop (a looped array of stored values with an index) with random data from a source of random data; then repeating the following: reading a value from the data loop in relation to the index; operating on the multi-bit value thereby outputting a derived random number; and moving the index in relation to the looped array. The data loop may be a simple feedback loop which may be a shift register loaded by direct memory access (DMA). The operation may be performed by one or more arithmetic logic units (ALU) which may be fed by one or more data feeds and may perform XOR, Mask Generator, Data MUX, and/or MOD.
    Type: Grant
    Filed: February 15, 2022
    Date of Patent: February 20, 2024
    Assignee: CASSY HOLDINGS LLC
    Inventor: Patrick D. Ross