|
|
|
LVDS под одной паре (без клока), Cyclone10LP и Spartan7 |
|
|
|
Sep 25 2018, 14:05
|
фанат Linux'а
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008
|
Цитата(Leka @ Sep 25 2018, 16:22) Клок восстанавливать вовсе необязательно, это всего-лишь один из вариантов решения задачи. По докам С10LP по возможностям соответствует C4E, в этом случае потолок, по моим оценкам, д/б в районе 1Гбит/сек. Некоторое время назад хотел из спортивного интереса попробовать практически, но нет времени. Прошу тут немного подробнее. На какой пример Вы ссылаетесь? Есть ли статья на этот волшебный метод? Цитата(doom13 @ Sep 25 2018, 16:57) В старых версиях QII было ядро ASI, которое выполняло необходимую Вам функцию. Вижу у Xilinx DVB-ASI IP core, у Альтеры Altera IP-ASI: IP CORE - ASI Video Interface - это оно?
--------------------
|
|
|
|
|
Sep 25 2018, 14:21
|
Частый гость
Группа: Свой
Сообщений: 185
Регистрация: 30-12-04
Пользователь №: 1 761
|
Цитата(AVR @ Sep 25 2018, 17:05) Вижу у Xilinx DVB-ASI IP core, у Альтеры Altera IP-ASI: IP CORE - ASI Video Interface - это оно? Оно, только скорость там фиксированная 270 Мбит/с. У Xilinx многое делается на задержках в LUT и перестроить на другую скорость потока сложно. Про Altera не знаю, но думаю что аналогично. Три варианта приёма данных без восстановления тактов для 8B10B описаны в XAPP514, XAPP1014 и XAPP1015. Старая тема: Clock Recovery из 8B10B.
|
|
|
|
|
Sep 25 2018, 16:32
|
Профессионал
Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118
|
Цитата(AVR @ Sep 25 2018, 17:05) На какой пример Вы ссылаетесь? Есть ли статья на этот волшебный метод? Статьи нет. Из практического опыта, на Циклонах можно делать многофазную выборку. Кроме того, задачу можно решить через измерение интервалов между переходами входного сигнала, те через TDC. В итоге, ограничение будет обусловлено передатчиком, а не приемником - из-за большой емкости пина в Циклонах.
|
|
|
|
|
Sep 25 2018, 18:02
|
Профессионал
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643
|
Приветствую! Цитата(AVR @ Sep 25 2018, 15:50) 1. Я понимаю что такое манчестер, только не очень ясно - так что там с этим манчестером на входе делать? Что если биты манчестера встанут неудобно относительно клока? В какой блок принимать этот манчестер? Не совсем значит понимаете - из манчестера клок выделяется на раз - причем если уж совсем хардкорно то для этого даже внешний клок не нужен - пару задержек на цепочке lcell или триггеров, и пару элементов and и xor. И вы получаете клок привязанный к данным (ну или наоборот). Этим клоком капчите данные и через fifo или cdc переносите на рабочий клок. Понятное дело вся эта садо-мазо асинхронщина должна быть жестко прибита constrain при P&R . Ну и рассчитывать задержки нужно с учетом гуляния от температуры и вольтажа. Но зато нарисовать все это можно за пол дня, на любой FPGA. Удачи! Rob.
|
|
|
|
|
Sep 26 2018, 03:54
|
Гуру
Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261
|
Цитата(MegaVolt @ Sep 26 2018, 00:32) Это не решит проблемы если разбежка за пакет больше пары бит. Не будет там такой "разбежки".. У ТС клоки на обоих концах линка равны с точностью до 100 ppm. Из этого следует, что сдвиг на один бит случится после 10 тысяч бит. Меж тем, у ТС длина пакета 2048 бит. То есть, за время передачи пакета накопленная ошибка будет не больше 1/5 битового интервала. Цитата(AVR @ Sep 25 2018, 13:21) ... поток с LVDS (от 10 до 400 Мбит/с, но каждый раз это константа), учитывая что тактовые не синхронные (хотя их стабильность 50 ppm) и плавают, ... Цитата(AVR @ Sep 25 2018, 14:27) ... можно будет на основе преамбулы очередного пакета выбирать версию с наилучшим положением, и этого выбора хватит на весь пакет, пакеты у меня до 2048 байт. PS. Только сейчас заметил, что у ТС длина пакета указана в байтах. То есть, в битах это 16384. Так что ошибка в один бит вполне реальна. Тогда только кодировка 8/10 и подстраивать момент выборки бита на лету..
|
|
|
|
|
Sep 26 2018, 08:03
|
фанат Linux'а
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008
|
Цитата(blackfin @ Sep 26 2018, 06:54) Не будет там такой "разбежки".. У ТС клоки на обоих концах линка равны с точностью до 100 ppm. Из этого следует, что сдвиг на один бит случится после 10 тысяч бит. Меж тем, у ТС длина пакета 2048 бит. То есть, за время передачи пакета накопленная ошибка будет не больше 1/5 битового интервала. PS. Только сейчас заметил, что у ТС длина пакета указана в байтах. То есть, в битах это 16384. Так что ошибка в один бит вполне реальна. Тогда только кодировка 8/10 и подстраивать момент выборки бита на лету.. Т.е. не надо никакого реклокинга, так получается? Я опасаюсь, а не вылезет ли в месте перехода цепочка из десятков бит, раскиданных по обе стороны от граничной ситуации?
--------------------
|
|
|
|
|
Sep 26 2018, 08:24
|
фанат Linux'а
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008
|
Цитата(blackfin @ Sep 26 2018, 11:15) Если вы откалибровались по преамбуле и длина пакета не превышает 2500 бит, то "реклокинг" не нужен. Можно также поставить более дорогие TXCO с лучшей начальной точностью и стабильностью. Скажем, 10 ppm будет не сильно дороже, а расходжение клоков на обеих сторонах линка будет в пять раз меньше. Соответстенно, допустимый размер пакета будет тоже в пять раз больше. А что значит откалиброваться по преамбуле? Допустим, принимаю преамбулу, вижу ее смещение (у меня уже есть такое решение в модели) - определив величину битового смещения, начинаю кушать пакет. Что защищает от ситуации, чтобы не попасть на зону перехода, когда после приема 1250 бит пойдет зона на десятки бит, где битовое положение будет колбаситься туда-сюда из-за джиттера??? Цитата(ViKo @ Sep 26 2018, 10:27) Протянули бы уже тактовый сигнал. Ради связи на 15 см столько фантазий. Таково жесткое требование на данное устройство. Пока макет - у меня есть клок уже, причем общий для приемной и передающей стороны - вообще халява. Но теперь я обязан убрать общий клок на приемной и передающей стороне, и не давать клок в параллель с данными.
--------------------
|
|
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|