IP Library Granted Patent US 11,342,944
Granted Patent B2
US 11,342,944 · App. 17/029,652 · Granted May 24, 2022

Computational memory with zero disable and error detection

Inventor: William Martin Snelgrove (Toronto, CA)
Assignee: UNTETHER AI CORPORATION
H03M13/616G06F7/57G06F13/4009H03M13/157
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,342,944
App. No.
17/029,652
Granted
May 24, 2022
Kind
B2
Abstract

A processing element includes an input zero detector to detect whether the input from the neighbor processing element contains a zero. When the input from the neighbor processing element contains the zero, a zero disable circuit controls the input from the neighbor processing element and respective data of the memory to both appear as unchanged to the arithmetic logic unit for the operation. A controller of an array of processing elements adds a row of error-checking values to a matrix of coefficients, each error-checking value of the row of error-checking values being a negative sum of a respective column of the matrix of coefficients. The controller controls a processing element to perform an operation with the matrix of coefficients and an input vector to accumulate a result vector. Owing to the error-checking values, when a sum of elements of the result vector is non-zero, an error is detected.

Claims (12)

1. A controller of an array of processing elements, the controller configured to:

add a row of error-checking values to a matrix of coefficients, each error-checking value of the row of error-checking values being a negative sum of a respective column of the matrix of coefficients;

load the matrix of coefficients into the array of processing elements as serialized coefficients;

load an input vector into the array of processing elements; and

control the array of processing elements to perform an operation with the matrix of coefficients and the input vector by:

performing a parallel operation with the serialized coefficients in the array of processing elements and the input vector;

accumulating a result vector; and

rotating the input vector in the array of processing elements and repeating the performing of the parallel operation and the accumulating until the operation is complete;

wherein when the operation is complete, a sum of elements of the result vector is computed and an error in the operation is detected when the sum is non-zero.

2. The controller of claim 1 , wherein the controller is configured to repeat the operation using a different array of processing elements when the error is detected.

3. The controller of claim 1 , wherein the sum of elements of the result vector is computed over a finite field.

4. The controller of claim 3 , wherein the finite field is integers modulo a power of 2.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2026
From: UNTETHER AI CORPORATION
To: AT-MEMORY COMPUTING LP
Reel/Frame 075495/0905 →
RELEASE OF SECURITY INTEREST Recorded Jun 17, 2025
From: NATIONAL BANK OF CANADA
To: UNTETHER AI CORPORATION
Reel/Frame 071655/0897 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2022
From: SNELGROVE, WILLIAM MARTIN
To: UNTETHER AI CORPORATION
Reel/Frame 058862/0880 →
Continuity (4)
Provisional Application 62904142 · Sep 23, 2019
Provisional Application 62929233 · Nov 1, 2019
Provisional Application 62983076 · Feb 28, 2020
Related Publication 20210091794A1 · Mar 25, 2021