Compression de code pour processeurs haute performance
Résumé
Les systèmes embarqués sont contraints, pour des raisons de coût et d’autonomie, en mémoire et en consommation d’énergie tout en requérant de plus en plus de performances. La compression de code permet d’optimiser la taille des codes embarqués mais aussi leur performance et leur consommation d’énergie. La quasi-totalité des travaux sur le sujet proposent des schémas de compression reposant sur une décompression entre la mémoire et le cœur du processeur (pré-cache ou post-cache) afin de ne pas modifier ce dernier. Mais ces méthodes sont soit très pénalisantes en temps d’exécution, soit très dures à mettre en œuvre pour des processeurs superscalaires. Dans cet article, nous proposons un schéma de compression reposant sur une décompression au sein du pipeline adapté aux processeurs embarqués haute performance ; nous montrons qu’il permet d’optimiser les trois critères simultanément et ce pour différentes caractéristiques architecturales.