Покращення стиснення коду для мікроконтролерів ARM Cortex M за допомогою попередньої фільтрації - Щербина, Микола; Shcherbyna, Mykola (Видавництво Львівської політехніки, 2023)
Протягом останніх десятиліть розмір коду уже не є обмеженням, за винятком малих вбудованих систем. ARM Cortex M – типова архітектура мікроконтролерів у таких системах. Запропоновано простий, але ефективний підхід для покращення стиснення коду алгоритмом загального призначення Deflate, оснований на попередній фільтрації двійкового коду Thumb2. Він перетворює перед стисненням інструкції BL (перехід зі збереженням адреси повернення), що вказують на ту саму ефективну адресу, і відновлює оригінальні коди операцій після декомпресії. Тести, виконані на реальному вбудованому програмному забезпеченні, показують, що запропонований алгоритм покращує стиснення коду приблизно на 3 %.

For last decades code size is no longer a concern except small embedded systems. ARM Cortex M is a typical microcontroller architecture of such systems. A simple yet effective approach based on pre- filtering Thumb2 binary code is proposed to improve code compression by the general purpose Deflate algorithm. It transforms BL (branch and link) instructions pointing to the same effective address before compression, and restores original opcodes after decompression. Tests performed on real-life embedded software show that the proposed algorithm improves code compression by approximately 3 %.
Improving code compression for ARM cortex M microcontrollers using pre- filtering
Keywords: стиснення коду; вбудовані системи; ARM Cortex M; Thumb2; фільтрація; deflate; code compression; embedded systems; ARM Cortex M; Thumb2; filtering; deflate; 621.396.67