Parallel String Matching for Repeating-Character Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hardware compression accelerators face reduced data throughput and efficiency due to hash conflicts when processing consecutive repeating characters, as they are forced to process these characters in a serial manner despite being capable of parallel handling.

Innovation Solution

An accelerated compression method and apparatus that utilize a look-ahead buffer and string matching processing pipeline, where multiple instances of substrings are issued in parallel, and only identical substrings are sent for matching operations, preventing unnecessary processing and improving compression efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple instances of substrings are processed in parallel through the hash matcher, then processing throughput is improved, but hash conflicts occur when consecutive repeating characters produce identical hash values, forcing serial processing and reducing efficiency

Engineering Contradiction:
Improveprocessing throughputVSAvoidprocessing correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by checking whether P substrings are identical before sending them to the hash matcher. The control circuit determines if multiple instances correspond to the same substring content, and only sends one instance for hashing when duplicates are detected. This preliminary check prevents hash conflicts before they occur, maintaining both high throughput and processing correctness.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If all P instances are sent to the string matching processing pipeline, then processing completeness is maintained, but redundant processing of identical substrings reduces compression efficiency

Engineering Contradiction:
Improveprocessing completenessVSAvoidcompression efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and removes redundant identical substrings from the processing flow. When P substrings are found to be identical, the control circuit sends only one instance to the string matching processing pipeline and blocks the remaining P-1 instances. This extraction of duplicates maintains processing completeness for unique substrings while eliminating redundant operations, thereby improving compression efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If the hardware compression accelerator processes consecutive repeating characters in serial manner due to hash conflicts, then processing accuracy is maintained, but data throughput is reduced

Engineering Contradiction:
Improvematching accuracyVSAvoiddata throughput
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The control circuit performs a preliminary comparison of P substrings before they enter the hash matcher. When identical substrings are detected, only one instance is forwarded for accurate matching, while others are blocked. This preliminary action ensures that the hash matcher receives unique substrings, maintaining matching accuracy while preventing serial processing bottlenecks and preserving high data throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10637499B1Accelerated compression method and accelerated compression apparatus
Publication Date: 2020.04.28 VIA ALLIANCE SEMICON CO LTD
  • US10637499B1 patent drawing
  • US10637499B1 patent drawing
  • US10637499B1 patent drawing

AI summary

An accelerated compression method and apparatus are provided. The accelerated compression apparatus includes a look-ahead buffer, a string matching processing pipeline and a control circuit. The string to be compressed extracted from the data register is stored to the look-ahead buffer. P instances are issued in parallel from the look-ahead buffer in each issue cycle. When P substrings corresponding to the instances are identical to each other, one of the P instances is sent to the string matching processing pipeline for a matching operation by the control circuit, and the remaining instances of the P instances are prevent from being sent to the string matching processing pipeline.