Single Architected Compression Instruction Using History Buffer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computing environments face inefficiencies in compression and decompression operations due to the need for multiple primitive software instructions, which increase program complexity and require task switches to I/O devices, leading to reduced performance.
Innovation Solution
A single architected instruction is used on a general-purpose processor to perform compression and decompression functions, utilizing a circular buffer for history storage, which reduces program complexity and eliminates the need for task switches by processing data within the processor.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple primitive software instructions are used to perform compression and decompression operations, then the operations can be performed on general-purpose processors, but the program complexity increases and execution time is extended
Solution Approach 1:
The patent merges multiple primitive software instructions into a single specialized compression/decompression instruction. This single instruction integrates the functionality of numerous individual instructions, reducing program complexity while maintaining compatibility with general-purpose processor architectures through standardized instruction set integration.
Solution Approach 2:
The invention creates a universal compression instruction that can perform both compression and decompression operations within a single instruction framework. This multi-functional instruction eliminates the need for separate instruction sequences for different compression tasks, reducing overall program complexity while maintaining versatility.
2Adaptability or versatility
If multiple primitive software instructions are used to perform compression and decompression operations, then the operations can be performed, but the execution time is extended due to increased number of instructions
Solution Approach 1:
The patent combines multiple sequential instructions into a single integrated compression/decompression instruction. This merging reduces the total number of instruction cycles required, directly decreasing execution time while preserving the complete operational capability of the original multi-instruction sequence.
Solution Approach 2:
The instruction performs preliminary setup and configuration internally within the processor execution unit, eliminating the need for multiple separate instructions to prepare and execute compression operations. This preliminary action is embedded within the single instruction, reducing overall execution time.
3Adaptability or versatility
If task switches are performed to I/O devices for compression and decompression operations, then specialized processing can be utilized, but the performance is reduced due to task switching overhead
Solution Approach 1:
The patent introduces an intermediary execution unit within the processor that handles compression and decompression operations. This intermediary component provides specialized processing capabilities while remaining integrated within the processor architecture, eliminating the need for task switches to external I/O devices and maintaining high processing performance.
Solution Approach 2:
The invention merges specialized compression processing capabilities directly into the processor's execution pipeline. By combining general-purpose processing with specialized compression functionality in a unified execution unit, the system achieves specialized processing performance without the overhead of task switching to separate I/O devices.
Data Source
Figure 1A~1B
Figure 2
Figure 3A~3F
AI summary
An instruction to perform a function of a plurality of functions is obtained. The instruction is a single architected instruction of an instruction set architecture that complies to an industry standard for compression. The instruction is executed, and the executing includes performing the function specified by the instruction. The performing includes, based on the function being a compression function or a decompression function, transforming state of input data between an uncompressed form of the input data and a compressed form of the input data to provide a transformed state of data accessing. During performing the function, history relating to the function is accessed. The history is to be used in transforming the state of input data between the uncompressed form and the compressed form.