реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> LVDS под одной паре (без клока), Cyclone10LP и Spartan7
AVR
сообщение Sep 25 2018, 14:05
Сообщение #31


фанат 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 - это оно?


--------------------
Go to the top of the page
 
+Quote Post
Zig
сообщение Sep 25 2018, 14:21
Сообщение #32


Частый гость
**

Группа: Свой
Сообщений: 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.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 25 2018, 14:22
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(MegaVolt @ Sep 25 2018, 16:59) *
ISERDES работает штатно просто как сериализатор. С внешней PLL и логикой становится возможным слежение за фазой. Т.е. это не аппаратная фича.

Ну, понятно, что ручками что-то сделать всё же придется. biggrin.gif

Аппаратная фича состоит в том, что к каждому дифференциальному входу IBUFDS плисины можно одновременно(!) подключить две(!) линии задержки IDELAY и два(!) набора регистров IDDR тактируемых от сдвинутых на 90 градусов клоков, что дает четыре семпла данных на каждый бит входного потока. Остальное - дело техники и простенькой FSM.. Понятно, что про кодировку 8/10 эта схема ничего не знает и аппаратно не учитывает.
Go to the top of the page
 
+Quote Post
Leka
сообщение Sep 25 2018, 16:32
Сообщение #34


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(AVR @ Sep 25 2018, 17:05) *
На какой пример Вы ссылаетесь? Есть ли статья на этот волшебный метод?

Статьи нет. Из практического опыта, на Циклонах можно делать многофазную выборку.
Кроме того, задачу можно решить через измерение интервалов между переходами входного сигнала, те через TDC.
В итоге, ограничение будет обусловлено передатчиком, а не приемником - из-за большой емкости пина в Циклонах.
Go to the top of the page
 
+Quote Post
AVR
сообщение Sep 25 2018, 17:58
Сообщение #35


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(Leka @ Sep 25 2018, 19:32) *
Статьи нет. Из практического опыта, на Циклонах можно делать многофазную выборку.

Выше кинули ссылку: https://www.xilinx.com/support/documentatio...tes/xapp224.pdf
Видимо это и есть подобный метод.

Про TDC почитаю.


--------------------
Go to the top of the page
 
+Quote Post
RobFPGA
сообщение Sep 25 2018, 18:02
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!
Цитата(AVR @ Sep 25 2018, 15:50) *
1. Я понимаю что такое манчестер, только не очень ясно - так что там с этим манчестером на входе делать? Что если биты манчестера встанут неудобно относительно клока? В какой блок принимать этот манчестер?
Не совсем значит понимаете - из манчестера клок выделяется на раз - причем если уж совсем хардкорно то для этого даже внешний клок не нужен - пару задержек на цепочке lcell или триггеров, и пару элементов and и xor.
И вы получаете клок привязанный к данным (ну или наоборот). Этим клоком капчите данные и через fifo или cdc переносите на рабочий клок.
Понятное дело вся эта садо-мазо асинхронщина должна быть жестко прибита constrain при P&R . Ну и рассчитывать задержки нужно с учетом гуляния от температуры и вольтажа.
Но зато нарисовать все это можно за пол дня, на любой FPGA.

Удачи! Rob.




Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Sep 25 2018, 20:26
Сообщение #37


Местный
***

Группа: Участник
Сообщений: 306
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



У Lattice есть дешевые чипы с SERDES. А на спартанах только манчестер в помощь. По крайней мере не нужно будет выравнивать по постоянке данные. Одним геморроем меньше)
Go to the top of the page
 
+Quote Post
Leka
сообщение Sep 25 2018, 20:34
Сообщение #38


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(AVR @ Sep 25 2018, 20:58) *
Выше кинули ссылку... Видимо это и есть подобный метод.

М/б и другие методы. Например, декодировать пакеты по всем каналам(фазам), и брать с правильными контрольными кодами (сам делал похожее).

Сообщение отредактировал Leka - Sep 25 2018, 20:36
Go to the top of the page
 
+Quote Post
MegaVolt
сообщение Sep 25 2018, 21:32
Сообщение #39


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Цитата(Leka @ Sep 25 2018, 23:34) *
М/б и другие методы. Например, декодировать пакеты по всем каналам(фазам), и брать с правильными контрольными кодами (сам делал похожее).
Это не решит проблемы если разбежка за пакет больше пары бит.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 26 2018, 03:54
Сообщение #40


Гуру
******

Группа: Свой
Сообщений: 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 и подстраивать момент выборки бита на лету..
Go to the top of the page
 
+Quote Post
Leka
сообщение Sep 26 2018, 07:22
Сообщение #41


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



2Кбайта, это логический пакет, на физическом уровне пакеты м/б меньше, например по 1Кбиту (те вставлять контрольные коды через каждые 1Кбит).
Go to the top of the page
 
+Quote Post
ViKo
сообщение Sep 26 2018, 07:27
Сообщение #42


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Протянули бы уже тактовый сигнал. Ради связи на 15 см столько фантазий.
Go to the top of the page
 
+Quote Post
AVR
сообщение Sep 26 2018, 08:03
Сообщение #43


фанат 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 и подстраивать момент выборки бита на лету..

Т.е. не надо никакого реклокинга, так получается? Я опасаюсь, а не вылезет ли в месте перехода цепочка из десятков бит, раскиданных по обе стороны от граничной ситуации?


--------------------
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 26 2018, 08:15
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(AVR @ Sep 26 2018, 11:03) *
Т.е. не надо никакого реклокинга, так получается? Я опасаюсь, а не вылезет ли в месте перехода цепочка из десятков бит, раскиданных по обе стороны от граничной ситуации?

Если вы откалибровались по преамбуле и длина пакета не превышает 2500 бит, то "реклокинг" внутри пакета уже не нужен. Можно также поставить более дорогие TXCO с лучшей начальной точностью и стабильностью. Скажем, 10 ppm будет не сильно дороже, а расхождение клоков на обеих сторонах линка будет в пять раз меньше. Как следствие, допустимый размер пакета будет тоже в пять раз больше.
Go to the top of the page
 
+Quote Post
AVR
сообщение Sep 26 2018, 08:24
Сообщение #45


фанат 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 см столько фантазий.

Таково жесткое требование на данное устройство. Пока макет - у меня есть клок уже, причем общий для приемной и передающей стороны - вообще халява. Но теперь я обязан убрать общий клок на приемной и передающей стороне, и не давать клок в параллель с данными.


--------------------
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th April 2024 - 23:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01542 секунд с 7
ELECTRONIX ©2004-2016