Object code compression using different schemes for different instruction types

   
   

A code compression method for system-level power optimization that lessens the requirements imposed on main memory size. The method reduces the power consumption of a complete system comprising a CPU, instruction cache, data cache, main memory, data buses and address bus. The method includes extracting compressible instruction and data portions from executable code, creating a mathematical model of the extracted code portions, class the individual instructions in the extracted portions based upon their operation codes and compressing the instructions. The compressed instructions are further compressed when extracted from memory by using bus compaction. The method is also embodied in a computer system with a processor and a memory adapted to perform the steps of the method to compress the extracted instruction portions. Additionally, the method is embodied on a computer program product bearing software instructions adapted to perform the steps of the method to compress the extracted instruction portions. The invention also has an apparatus utilizing a post-cache architecture that has a decompression engine that decompresses instructions that have been compressed using the method of the invention. The apparatus extracts the compressed instructions from memory or the instruction/data cache using a bus compression technique to save power as the compressed instructions/data traverses the bus.

Een methode van de codecompressie voor systeem-vlakke machtsoptimalisering die de vereisten vermindert legde aan hoofdgeheugengrootte op. De methode vermindert de machtsconsumptie van een volledig systeem bestaand uit een cpu, uit een instructiegeheim voorgeheugen, uit een gegevensgeheim voorgeheugen, uit een hoofdgeheugen, uit gegevensbussen en uit adresbus. De methode omvat het halen van samendrukbare instructie en gegevensgedeelten uit uitvoerbare code die, die tot een wiskundig model van de gehaalde codegedeelten leidt, klasse de individuele instructies in de gehaalde gedeelten die op hun verrichtingscodes worden gebaseerd en de instructies samenperst. De samengeperste instructies worden verder samengeperst wanneer gehaald uit geheugen door het bussamenpersen te gebruiken. De methode wordt ook in een computersysteem met een bewerker opgenomen en een geheugen dat wordt aangepast om de stappen van de methode uit te voeren om de gehaalde instructiegedeelten samen te persen. Bovendien, wordt de methode opgenomen op een dragende softwareinstructies van het computerprogrammaproduct die worden aangepast om de stappen van de methode uit te voeren om de gehaalde instructiegedeelten samen te persen. De uitvinding heeft ook een apparaat dat een post-geheim voorgeheugenarchitectuur gebruikt die een decompressiemotor heeft die instructies decompresseert die gebruikend de methode van de uitvinding zijn samengeperst. Het apparaat haalt de samengeperste instructies uit geheugen of het instructie/gegevensgeheime voorgeheugen gebruikend een techniek van de buscompressie om macht te bewaren aangezien de samengeperste instructies/de gegevens de bus oversteken.

 
Web www.patentalert.com

< Method and system for handling production problems in an extended enterprise environment

< Methodology for stitching reduced-order models of interconnects together

> Method and system for dynamic proxy classes

> General access system

~ 00100