16+
Среда
18 июля
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Средства и методы разработки

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Evgeny_CD  (13.06.2018 21:22, ссылка, ссылка, просмотров: 135)
Новые dsPIC33CK256MP508 -> содержат инструкцию BFINS --> Bit Field Insert from Wb into Ws. И это гениально, поскольку позволяет легко сделать [схему кодирования с переменным числом битов]! Они копались в моей голове :) 
Пусть у нас физический канал связи умеет передавать 8 бит (как пример) за один раз. Нам надо с максимальной эффективностью передать биты, и 4 управляющих слова - начало пакета - конец пакета - заполнитель между пакетами - синхросигнал (резерв) Делаем так. Если старший бит ==0, то байт несет 8 информационных битов. == 1, то 5 информационных бит. Старший - признак командного слова, и 2 следующих бита - само слово (4 варианта). Можно также выбрать другие биты, это не важно (возможно, тактовая эффективность будет хуже). Эффективнее этой схемы нет по КПД канала. Но как все это декодировать? Больного много суеты на приемном конце. Чтобы сложить принятое в байтовый буфер, придется сдвигать все принятые байты и разделять принятые биты между двумя байтами в буфере. В ПЛИСке то все ок, а вот процессором муторно. А вот с операцией BFINS Bit Field Insert from Wb into Ws за 2 такта! декодер кратно ускоряется! Для операций сжатия/восстановления это тоже должно быть очень эффективно!
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7526 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII