Genetic Algorithm Microcode Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current microcode compression techniques, such as the K-means algorithm, do not directly optimize for maximal microcode size reduction by minimizing redundancy between rows, leading to suboptimal reductions in microcode storage size, especially in processor designs requiring small footprint and low power consumption.
Innovation Solution
A genetic algorithm is employed to identify the best clustering of microcode storage columns for cluster-based compression, using an objective function to iteratively improve microcode size reduction by evolving a population of chromosomes representing candidate solutions, where each chromosome corresponds to a clustering assignment of columns to clusters.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the K-means algorithm is used for clustering microcode storage columns, then the clustering process is simple and fast, but the microcode size reduction is suboptimal because the distance metric does not directly relate to microcode size reductions
Solution Approach 1:
The patent changes the optimization parameter from distance metric (used in K-means) to microcode size reduction metric. The genetic algorithm evaluates clusterings based on their ability to minimize microcode storage size directly, rather than minimizing column distances. This parameter change enables the system to achieve optimal microcode compression by selecting clusterings that maximize redundancy exploitation between rows.
2Adaptability or versatility
If more advanced functionality is migrated to microcode, then processor functionality is enhanced, but microcode storage consumes up to 20% of die area
Solution Approach 1:
The patent extracts and removes redundancy from microcode storage by identifying and eliminating duplicate patterns across rows. Through cluster-based compression, the system separates unique column patterns from redundant repetitions, storing only the essential unique information. This extraction of redundancy reduces microcode storage size while preserving all processor functionality, directly addressing the die area consumption problem.
3Quantity of substance
If microcode storage size is reduced through compression, then die area and power consumption are reduced, but the clustering must optimize for maximal size reduction rather than simple distance metrics
Solution Approach 1:
The genetic algorithm performs self-service by automatically evolving clusterings that optimize microcode size reduction without requiring manual intervention or simple distance-based heuristics. The system self-adjusts the clustering assignments through iterative selection, crossover, and mutation operations, automatically discovering the optimal clustering structure that maximizes compression efficiency for the specific microcode dataset.
Data Source
AI summary
A method to compress microcode utilizing a genetic algorithm includes generating a population of chromosomes, each chromosome including one or more elements that indicate a cluster to which a portion of microcode memory belongs. The method further includes determining a fitness value of each chromosome and modifying the population of chromosomes based on the fitness values of the chromosomes to generate a new population of chromosomes. In addition, the method includes compressing the microcode memory using a cluster-based compression technique, wherein clusters are selected according to a chromosome from the new population with the best fitness value. Other embodiments are also disclosed.


