[an error occurred while processing this directive]
сжатие кода для BF, некоторые соображения
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено yes 23 июня 2005 г. 12:34

в ЕЕ-257(?) вобщем то полная ерунда - линковать zlib и т.п. при его размере имеет смысл только для какого-нибудь монстра, ну а там уже есть u-boot, который при тех же размерах позволяет не только [раз]жать, но и много остального.

тем более LZ-лайк сжатие не очень хорошо жмет экзешники (у меня rar меньше чем вдвое)

но если посмотреть на код BF, то вероятность 1 значительно меньше, чем 50% (причем взависимости от бита 20-40%). ИНТЕРЕСНО БЫ ПРОВЕРИТЬ НА ДРУГИХ ИСХОДНИКАХ.
для ленивых, но интересующихся - могу дать программку

то есть напрашивается применение арифметического кодера, тем более mq кодер можно скачать с analog.com (примеры для JPEG2000)

но, увы, следует отметить, что карма индуса, который этот пример написал была не очень хорошей... и написано кривовато и кодер повисает иногда.

для самых ленивых (собственно мой вариант :), можно закачать выход лоадера в симулятор (fill memory), прогнать через кодер (контекст - номер бита), и выкачать (dump memory)

практика подтвердила теорию и получается приблизительно 60% от исходного и при этом декодер восстанавливает файл ! (причем глюков в декодере не было, но может потому, что вызывающий глюк файл не прошел через кодер)

то есть почти такое же сжатие как и в LZ при размере декодера ~200 комманд + 50 слов констант (код можно улучшить)

----------
если кому еще это интересно - было бы неплохо написать кодер на С для ПК (может у кого уже есть?), поправить код для BF (там и косметически можно и можно выбросить бит стуфинг, который совсем не нужен). ну и всяческие линкер скрипты сделать...

у меня будет(?) проект в котором код BF хотелось бы засунуть в 25lc640 - вот я заранее озаботился :)

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru