IP Library Granted Patent US 10,528,641
Granted Patent B2
US 10,528,641 · App. 15/979,257 · Granted Jan 7, 2020

Encoder and decoder for transmission of coefficients to a neural network

Inventor: Jay A. Chesavage (Palo Alto, CA)
Assignee: Redpine Signals, Inc.
G06F17/153G06F7/483G06N3/04
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 10,528,641
App. No.
15/979,257
Granted
Jan 7, 2020
Kind
B2
Abstract

A method for efficient transmission of coefficients examines a coefficient list, presents the coefficients as binary floating point representation, and transmits the list of coefficients as a header having an exponent prefix, a fractional suffix, and each coefficient value as an exponent suffix and fractional prefix. A method for reception of coefficients receives a header including an exponent prefix, a fractional suffix, thereafter receiving each value as a sign bit, an exponent suffix and a fractional prefix, reconstituting an approximation of the original value, in sequence, as a sign bit, exponent prefix exponent suffix, fraction prefix, and fraction suffix, thereby greatly reducing the amount of information to be transmitted or received.

Claims (46)

1. A method for transmission of a list of coefficients, each said coefficient comprising a sign, an exponent, and a fraction, the method comprising:

for a given precision, determining a number of significant bits;

determining a range of values from the list of coefficients;

forming an exponent prefix from the range of values, and forming a fraction suffix from the precision;

transmitting a header comprising at least the exponent prefix and fraction suffix;

for each coefficient, transmitting:

the sign;

an exponent suffix comprising the exponent without the exponent prefix part,

a fraction prefix comprising the number of significant bits of the most significant bits of the fraction.

2. The method of claim 1 where said sign is 1 bit, said exponent is 8 bits, and said fraction is 23 bits.

3. The method of claim 1 where said sign is 1 bit, said exponent is 11 bits, and said fraction is 52 bits.

4. The method of claim 1 where the number of bits of said fraction prefix is at least the largest number of significant bits of the coefficients of said coefficient list.

5. A method for decoding a stream of data preceded by a header into a list of coefficients, the method comprising:

extracting from the header an exponent prefix and a fraction suffix;

extracting from the stream of data a plurality of values, each value having:

a sign bit;

an exponent suffix;

a fraction prefix;

forming a coefficient in sequence from: said sign bit, said exponent prefix, said exponent suffix, said fraction prefix, and said fraction suffix;

adding said formed coefficient to said list of coefficients.

6. The method of claim 5 where said exponent prefix and said exponent suffix are a total of 8 bits in length.

7. The method of claim 5 where said fraction prefix and said fraction suffix are a total of 23 bits in length.

8. An encoder for encoding a list of coefficients, each coefficient having a sign bit, an exponent, and a fraction, the encoder comprising:

a range processor for determining an exponent prefix;

a precision processor for determining a fraction suffix and a number of significant digits k;

a header transmitter sending the exponent prefix and fraction suffix;

a compression processor, for each coefficient in said list of coefficients:

transmitting the sign bit;

removing the exponent prefix from the coefficient exponent and transmitting a remaining exponent suffix;

transmitting the first k bits of the fraction.

9. The encoder of claim 8 where said coefficients are float_32 coefficients.

10. The encoder of claim 8 where said k is either the number of significant bits of a coefficient of said list, or k is 1 or two greater than the number of significant bits of a coefficient of said list.

11. The encoder of claim 8 where a values smaller than 10 −8 are replaced by 10 −8 .

12. A decoder for decoding a stream of data preceded by a header containing an exponent prefix and a fraction suffix and forming a list of coefficients, the decoder comprising:

a header decoder for extracting an exponent prefix and a fraction suffix from a header;

the apparatus having a receive decoder, the receive decoder separating said stream of data into segments, each segment comprising a sign bit, an exponent suffix, and a fraction prefix;

for each segment, the receive decoder forming a coefficient from the sequence of:

said sign bit;

said exponent prefix;

said exponent suffix;

said fraction prefix;

said fraction suffix;

the receive decoder placing each coefficient into said coefficient list.

13. The decoder of claim 12 where said exponent prefix and said exponent suffix is 8 bits or 11 bits in total length.

14. The decoder of claim 12 where said fraction prefix and said fraction suffix is 23 bits or 52 bits in length.

15. The decoder of claim 12 where said coefficient is a float_32 value.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2021
From: REDPINE SIGNALS, INC.
To: CEREMORPHIC, INC.
Reel/Frame 059986/0968 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME IN ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 046063 FRAME 0855. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 13, 2019
From: CHESAVAGE, JAY A.
To: REDPINE SIGNALS, INC.
Reel/Frame 048699/0697 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 046063 FRAME 0855. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECTION OF ASSIGNEE FROM "REDPINE SIGNALS CORPORATION" TO "REDPINE SIGNALS, INC". Recorded Dec 17, 2018
From: CHESAVAGE, JAY A.
To: REDPINE SIGNALS, INC.
Reel/Frame 049142/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2018
From: CHESAVAGE, JAY A.
To: REDPINE SIGNALS, INC.
Reel/Frame 046063/0855 →
Continuity (1)
Related Publication 20190347309A1 · Nov 14, 2019