Страница 1 из 1
Дифференциальная импульсно-кодовая модуляция
Добавлено: Сб июл 13, 2019 17:12:42
SpeedFighter
Здарова, ребята.
Читал я некоторую литературу по ДИКМ, но так и не смог осилить эти вопросы:
1. Я правильно понимаю, что в цифровом виде ДИКМ можно реализовать так (
см. картинку ниже)?
Спойлер

2.1 Я правильно понимаю, что в схеме ниже вычитатель должен докидывать смещения, чтобы не было отр. значений?
2.2. Дискретизатор - АИМ2, а кодер - это же АЦП?
Спойлер

3. В чем вообще смысл ДИКМ? У меня получалось из 8-ми бит сделать 7-ми битный сигнал и все.
Благодарю за внимание.

Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Сб июл 13, 2019 19:44:39
B@R5uk
3. Смысл в том, чтобы сжать полученный разностный сигнал
каким-нибудь энтропийным компрессором.
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Сб июл 13, 2019 21:41:53
SpeedFighter
[uquote="B@R5uk",url="/forum/viewtopic.php?p=3665708#p3665708"]3. Смысл в том, чтобы сжать полученный разностный сигнал
каким-нибудь энтропийным компрессором.[/uquote]
Т.е. без энтропийного кодирования ДИКМ не годится ни для чего?
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Вс июл 14, 2019 10:03:43
B@R5uk
Какой смысл вы вкладываете в слово "годится"? Реализовать можно что угодно, вот только даст ли это какой-нибудь выигрыш в чём нибудь? Цель ДИКМ сэкономить на пропускной способности.
Потом, не любой сигнал будет хорошо жаться с помощью ДИКМ. Как правило она хороша для плавно меняющихся сигналов, когда не смотря на большую амплитуду самого сигнала, его разности являются малыми величинами. В противном случае разности будут в среднем до 2 раз больше по амплитуде и потребуется один лишний бит для передачи информации (без компрессора).
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Пн июл 15, 2019 13:57:56
SpeedFighter
вот только даст ли это какой-нибудь выигрыш в чём нибудь?
Признаюсь, это не инженерная разработка, а конь в вакууме.)
Потом, не любой сигнал будет хорошо жаться с помощью ДИКМ.
А где можно дополнительно прочитать про это? Я лично находил обрывки каких-то лекций, а при буржуйском запросе меня кидали на разные статьи, доступа к которым у меня нет.
Реализовать можно что угодно
Вообще, я хотел все реализовать полностью в цифре. В двух вариантах.
Сначала взять дешевый PIC с его встроенным многоканальным АЦП и оцифровывать один сигнал по двум каналам (A и B), в роли линии задержки будет переключение мультиплексора. И на МК самом же "снимать" лишние биты.
Второй вариант - использовать ради интереса для этого ПЛИС.
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Пн июл 15, 2019 14:53:07
B@R5uk
Можно почитать патент 50-х годов прошлого века. Между прочим, ДИКМ — это исключительно инженерное решение для сжатия сигнала в телефонии, как следствие экономящее полосу пропускания.
Однако, это примитивное решение, поэтому от него нельзя многого ожидать, как следствие, о нём нет никакой литературы.
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Пт авг 02, 2019 19:09:56
SpeedFighter
Оп, слегка задержался.
Честно говоря, не совсем понимаю, как можно применить энтропийное кодирование к жалким 8-ми битам. Пытался разобраться по
этой статье, но как-то не зашло.

Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Пт авг 02, 2019 20:17:36
B@R5uk
Если сигнал меняется плавно, то величины разностей 0, ±1, ±2, ±3 встречаются наиболее часто (пусть для примера 90%). На них можно потратить 3 бита (коды от 000b до 110b). Остальные разности с модулями от 4 до 255 встречаются редко (оставшиеся 10%), тратим на них 3 + 9 = 12 бит (коды вида 111xxxxxxxxx). В результате в среднем поток, который имел вес 9 бит на сэмпл, будет иметь вес 3 * 0.90 + 12 * 0.10 = 3,9 бит на сэмпл. Сжатие более чем в 2 раза. Это значит, что по линии, по которой раньше проходил 1 поток, сейчас можно пустить 2.
Проблема возникает, когда сигнал перестаёт удовлетворять нашим допущениям (90% + 10%). Решений здесь может быть два: 1) кодировать с потерями, 2) смириться и пускать через канал более весомый поток данных. Алгоритм Хаффмана кодирует без потерь. ДИКМ в оригинальном патенте кодирует с потерями. Там это даже в железо намертво вшито.
Добавлено after 9 minutes 49 seconds:
[uquote="SpeedFighter",url="/forum/viewtopic.php?p=3675713#p3675713"]...но как-то не зашло.[/uquote]Это не серьёзное заявление в наш цифровой век. Если вам действительно интересно, то зайдите на
Википедию, в конце куча ссылок на литературу, благо что этот код изъезжен вдоль и поперёк.
Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Пт авг 02, 2019 20:32:35
SpeedFighter
Если сигнал меняется плавно
Можно ли как-то математически описать условие плавности? Как я понимаю, частота дискретизации должна быть значительно больше, чем частота информационного сигнала (
т.е. минимум в десять раз)
Что-то типа такого должно получиться:
Спойлер

Завтра с утра посижу-подумаю, спасибо!

Re: Дифференциальная импульсно-кодовая модуляция
Добавлено: Сб авг 03, 2019 08:09:15
pasha_zv
советую покурить про АДИКМ. в связи давно она.