US 12,224,772 B2
Compression/decompression apparatus, storage system, and compression/decompression method
Tomoyuki Kamazuka, Tokyo (JP); Kenshiro Himoto, Tokyo (JP); Shoji Kato, Tokyo (JP); and Yuusaku Kiyota, Tokyo (JP)
Assigned to HITACHI VANTARA, LTD., Yokohama (JP)
Filed by Hitachi, Ltd., Tokyo (JP)
Filed on Mar. 23, 2023, as Appl. No. 18/125,188.
Claims priority of application No. 2022-145303 (JP), filed on Sep. 13, 2022.
Prior Publication US 2024/0088919 A1, Mar. 14, 2024
Int. Cl. H03M 13/00 (2006.01); H03M 7/30 (2006.01)
CPC H03M 13/6312 (2013.01) [H03M 7/6041 (2013.01)] 5 Claims
OG exemplary drawing
 
1. A compression/decompression apparatus configured to perform compression of plaintext data and decompression of compressed data, the compression/decompression apparatus comprising:
an error detection code generating unit configured to generate error detection code with respect to plaintext data;
a compression circuit configured to compress plaintext data;
a decompression circuit configured to decompress compressed data; and
a comparing unit configured to generate error detection code with respect to plaintext data and compare this error detection code with other error detection code, wherein
in a compression mode in which input plaintext data is taken as input, and the input plaintext data is to be compressed,
the error detection code generating unit generates a first code that is an error detection code with respect to the input plaintext data, the compression circuit generates compressed data in which the input plaintext data is compressed, the decompression circuit generates restored plaintext data in which the compressed data is decompressed, the comparing unit generates a second code that is an error detection code with respect to the restored plaintext data and compares the second code with the first code, and in a case in which the first code and the second code agree, outputs the compressed data and the first code or the second code, and
in a decompression mode in which input compressed data, and an input code that is an error detection code with respect to original plaintext data of the input compressed data, are taken as input, and the input compressed data is decompressed,
the decompression circuit generates plaintext data in which the input compressed data is decompressed, the comparing unit generates a third code that is an error detection code with respect to the plaintext data and compares the third code with the input code, and in a case in which the input code and the third code agree, outputs the plaintext data,
wherein the compression/decompression apparatus further comprises:
a compression/decompression control unit configured including the error detection code generating unit, the compression circuit, the decompression circuit, and the comparing unit;
a decompression control unit configured including the decompression circuit and the comparing unit, the decompression circuit being configured to generate plaintext data in which input compressed data that is compressed data that has been input is decompressed, and the comparing unit being configured to generate the third code that is an error detection code with respect to the plaintext data and compare the third code with an input code that is an error detection code that has been input, and to output the plaintext data in a case in which the input code and the third code agree; and
a selecting unit configured to, upon receiving a request for data compression or data decompression, allocate the request to the compression/decompression control unit or the decompression control unit, wherein
the selecting unit is configured to,
upon receiving a request for data compression, allocate this request to the compression/decompression control unit, and
upon receiving a request for data decompression, allocate this request to the decompression control unit in a case in which the decompression control unit is available for acceptance thereof, and allocate this request to the compression/decompression control unit in a case in which the decompression control unit is unavailable for acceptance thereof.