Страница 1 из 1
Декодер Манчестерского кода на ПЛИС
Добавлено: Пн янв 18, 2016 17:14:15
Killation
Добрый день,
Необходимо сделать декодер Манчестерского кода.
Частота кода Манчестера на порядок ниже частоты генератора. У плис нет примочек, вроде фапч (и все должно быть реализовано на логике внутри плис).
Трудность заключается с синхронизацией.

Сверху сам код, снизу clock.
Если передний фронт clk'a будет попадать на фронт кодирующего сигнала, то данные будут выбраны неверно.
Как в таком случае избежать ошибок? Спасибо!
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 08:42:01
GARMIN
Синхронизация по срабатыванию таймера1 больше 3/4 периода на паузе между 1 и 0 или между 0 и 1 и следующим перепадом сигнала. В любом символе посредине есть перепад - это синхронизация таймера чтения. Таймер2 на четверть периода после перепада - чтение данных. Перепады между символами игнорируем таймером1.
Подсмотрите аппаратный декодер Манчестера.
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 12:10:59
Killation
Сигнал может прийти с любой задержкой, а из-за девиации частоты могут быть неверные выборки данных
Вопрос в том как выловить фронт сигнала
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 12:49:15
viiv
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 17:53:15
GARMIN
Killation писал(а):Вопрос в том как выловить фронт сигнала
Обычный XOR на двухбитовый последовательный регистр входных данных.
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 19:30:20
Killation
А что если

Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Вт янв 19, 2016 20:51:46
GARMIN
Вы неправильно понимаете смысл приёмника. Посмотрите на эту картинку:

И вот: всё разжёвано:
http://www.signalpro.biz/mandec.pdf
Re: Декодер Манчестерского кода на ПЛИС
Добавлено: Ср янв 20, 2016 19:53:17
Killation
Задача решена.
Поставил несколько d-триггеров для ликвидации аномальных состояний перед приемником.
Они тактируются высокой частотой.
Всем спасибо!