US 11,886,719 B2
Memory circuit for storing parsimonious data
Vincent Lorrain, Gif sur Yvette (FR); Olivier Bichler, Gif sur Yvette (FR); David Briand, Gif sur Yvette (FR); and Johannes Christian Thiele, Gif sur Yvette (FR)
Assigned to COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
Filed by COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
Filed on Jun. 18, 2022, as Appl. No. 17/843,975.
Claims priority of application No. 2106832 (FR), filed on Jun. 25, 2021.
Prior Publication US 2023/0030058 A1, Feb. 2, 2023
Int. Cl. G06F 3/00 (2006.01); G06F 3/06 (2006.01)
CPC G06F 3/0626 (2013.01) [G06F 3/064 (2013.01); G06F 3/0653 (2013.01); G06F 3/0683 (2013.01)] 11 Claims
OG exemplary drawing
 
1. A FIFO memory circuit for storing parsimonious data, said circuit being configured to receive an input data vector of size Iz at least equal to 1, and comprising:
an encoder,
a memory block comprising a first memory region dedicated to encoder information and a second memory region dedicated to the data, the second memory region being divided into a number Iz of FIFO memories, each FIFO memory being associated with one component of the input vector, only non-zero data being saved in the FIFO memories,
a decoder,
the encoder being configured to generate an indicator of non-zero data (Cn) for each component of the input vector,
the memory circuit being configured to write the non-zero data of the input data vector to the respective FIFO memories and to write the indicator of non-zero data (Cn) to the first memory region,
the decoder being configured to read the outputs of the FIFO memories and the associated indicator (Cn) in the first memory region to reconstruct the data vector,
the encoder further being configured to rearrange the order of the non-zero data in the data vector so as to balance the number of non-zero data saved in each FIFO memory and the decoder further being configured to apply the inverse operation of the encoder to the outputs of the FIFO memories.