Algoritmos baseados em padrões de blocos e múltiplos dicionários para compressão de código em sistemas embarcados. - Dias, Wanderson Roger Azevedo (Universidade Federal do Amazonas, 2015)
As atuais aplicações embarcadas têm exigido cada vez mais dos sistemas embarcados que por sua vez apresentam inúmeras limitações físicas e de recursos computacionais, sendo a memória um dos recursos mais críticos, devido a sua capacidade de armazenamento ser limitada de acordo com sua área ocupada no sistema. Assim justifica-se o esforço para otimizar o seu uso. Pesquisas têm mostrado que as técnicas de compressão de código servem como uma alternativa para resolver alguns problemas como: espaço, desempenho e consumo de energia nos sistemas embarcados. Esta tese trata da compressão de código dos programas para execução em sistemas embarcados baseados em processadores RISC. Na tese mostra-se que a utilização dos quatro novos métodos propostos e desenvolvidos neste trabalho (CPBARM, HDPB, CCHPB e CC-MLD) resulta em boas taxas de compressão. Implementações eficientes e simples do hardware descompressor também são apresentados. Além disto, um novo tipo de dicionário dividido em níveis também é introduzido por esta tese. O paradigma aplicado por esse novo dicionário consiste em armazenar instruções unitárias e padrões de blocos encontrados no código dos programas ao mesmo tempo e por isto é chamado de Dicionário Multi-Nível. Nas simulações realizadas com os métodos desenvolvidos nesta tese usaram-se alguns programas do benchmark MiBench. As taxas de compressão média obtidas nos métodos variaram de 24,2% a 32%. Assim, os algoritmos propostos oferecem uma melhor exploração da tríade compressão-desempenho-consumo.