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

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> LVDS под одной паре (без клока), Cyclone10LP и Spartan7
Leka
сообщение Sep 26 2018, 08:39
Сообщение #46


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

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



По преамбуле калиброваться нет смысла, тк слишком короткая.
Можно другое - по ошибкам выделять биения разностной частоты, и подстраиваться по фазе этой частоты.
Пробовал, работает. Но это имеет смысл для жестко заданных протоколов, например ethernet.
Для самопального много проще и компактнее по ресурсам будет принимать по всем фазам и выбрать правильные.
1Кбит*8фаз=1Кбайт, это 1 блок памяти в Циклоне. Пишем 8 потоков, а дальше пускаем только 1 из них с правильным контрольным кодом.

Сообщение отредактировал Leka - Sep 26 2018, 08:41
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 26 2018, 08:56
Сообщение #47


Гуру
******

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



Цитата(AVR @ Sep 26 2018, 11:24) *
А что значит откалиброваться по преамбуле? Допустим, принимаю преамбулу, вижу ее смещение (у меня уже есть такое решение в модели) - определив величину битового смещения, начинаю кушать пакет. Что защищает от ситуации, чтобы не попасть на зону перехода, когда после приема 1250 бит пойдет зона на десятки бит, где битовое положение будет колбаситься туда-сюда из-за джиттера???

Ну, я ориентируюсь на xapp523. Там каждый бит данных семплируется четыре раза. При таком семплировании наибольшая ошибка в определении положения максимума в линии данных не будет превышать 0.25*UI. Далее вы начинаете принимать пакет, но поскольку клок на приемной стороне имеет систематическую ошибку, со временем возникает сдвиг между центром бита и временем семплирования этого бита. Джиттер здесь влияния не оказывает, так как его величина мала по сравнению с длительностью одного бита на частоте 400 МГц и он не приводит к систематическому смещению фронта данных.

Цитата(AVR @ Sep 26 2018, 11:24) *
Таково жесткое требование на данное устройство.
...
Но теперь я обязан убрать общий клок на приемной и передающей стороне, и не давать клок в параллель с данными.

А чем вызвано столь "жесткое требование"?

Цитата(Leka @ Sep 26 2018, 11:39) *
Для самопального много проще и компактнее по ресурсам будет принимать по всем фазам и выбрать правильные.
Пишем 8 потоков, а дальше пускаем только 1 из них с правильным контрольным кодом.

Не соглашусь. Проще и компактнее то, как описано у Xilinx'а в xapp523. Один конечный автомат на четыре состояния, один триггер для граничных условий и немного логики для управления этим автоматом. Этот метод, кроме всего прочего, позволяет подстраивать момент выборки бита на интервале меньшем десяти бит (для кодировки 8/10) и не зависеть от длины пакета в принципе. Ваш же метод при большой длине пакета может привести к ситуации, когда во всех восьми блоках памяти будут лежать данные с неверными CRC.
Go to the top of the page
 
+Quote Post
AVR
сообщение Sep 26 2018, 13:50
Сообщение #48


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

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



Цитата(blackfin @ Sep 26 2018, 11:56) *
Не соглашусь. Проще и компактнее то, как описано у Xilinx'а в xapp523. Один конечный автомат на четыре состояния, один триггер для граничных условий и немного логики для управления этим автоматом. Этот метод, кроме всего прочего, позволяет подстраивать момент выборки бита на интервале меньшем десяти бит (для кодировки 8/10) и не зависеть от длины пакета в принципе. Ваш же метод при большой длине пакета может привести к ситуации, когда во всех восьми блоках памяти будут лежать данные с неверными CRC.

Скачал xapp523.zip размером 5138659 байт 75138e67fc7f40fda0e89e998214e645
Но там много пустых каталогов, нет файлов проекта, нет PDF-файлов с описанием. Вроде качал с официального сайта, но это странно очень.

xapp224.zip не могу нигде скачать, но подозреваю там другой метод и другая идея, которая не так хороша, как в xapp523 - верно?

Мне нравится xapp523, я почти уловил мысль, но не до конца. Там пример на 1250 мегабит SGMII, но я ожидаю, что могу взять не 8 а всего 4 фазы для этой идеи и обойтись лишь одним десериализатором (а не двумя, сдвинутыми на сколько-то пс при помощи IDELAY). Но нужно посимулить и понять идею глубже.


--------------------
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Sep 26 2018, 14:30
Сообщение #49


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

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Можно попробовать сделать 4 параллельные семы приема на вс длину пакета. Каждая сема тактируется частотами 400МГ, сдвинутыx на 90 градусов. Потребуется 3 вещи:
1. Сxема решения - с какой именно забирать данные (подобные реализаии видел, потребутся служебные символы вначале/коне пакета).
2. орошего выравнивания по времени для водныx триггеров сем и частот (вручну точно придется прибивать).
3. Плавание частоты передащей части от приемной за интервал передачи пакета не более чем на четверть периода символа.

Каким образом все ляжет на конкретно Ваш чип - ответить не могу - не работал с ним.

ЗЫ.. Извинясь за написание - проблема с ПО - часть символов не печатается.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 26 2018, 16:45
Сообщение #50


Гуру
******

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



Цитата(AVR @ Sep 26 2018, 16:50) *
Там пример на 1250 мегабит SGMII, но я ожидаю, что могу взять не 8 а всего 4 фазы для этой идеи и обойтись лишь одним десериализатором (а не двумя, сдвинутыми на сколько-то пс при помощи IDELAY). Но нужно посимулить и понять идею глубже.

С четырьмя семплами и одним десериализатором не получится следить за направлением смещения фронта данных относительно точек семплирования. В этом случае алгоритм "Bit Skip" работать не будет.

Иными словами FSM из рисунка 9 должен шагать строго по кругу - либо по часовой стрелке, либо против. Недопустимы переходы между состояниями "по диагонали"..
Go to the top of the page
 
+Quote Post
AVR
сообщение Sep 27 2018, 04:33
Сообщение #51


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

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



Цитата(blackfin @ Sep 26 2018, 19:45) *
С четырьмя семплами и одним десериализатором не получится следить за направлением смещения фронта данных относительно точек семплирования. В этом случае алгоритм "Bit Skip" работать не будет.
Иными словами FSM из рисунка 9 должен шагать строго по кругу - либо по часовой стрелке, либо против. Недопустимы переходы между состояниями "по диагонали"..

Так, похоже идея работать не будет, потому что в C10LP нет такого элемента как задержка входного сигнала на X пикосекунд. Где-то даже читал на форумах альтеры ответ сотрудника что типа "а нафига это теоретически было бы надо". К тому же не знаю, можно ли подать с одного входа на два десериализатора в C10LP задав соответствующие констрейны чтоб не расползалось.


--------------------
Go to the top of the page
 
+Quote Post
blackfin
сообщение Sep 27 2018, 04:43
Сообщение #52


Гуру
******

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



Цитата(AVR @ Sep 27 2018, 07:33) *
Так, похоже идея работать не будет, потому что в C10LP нет такого элемента как задержка входного сигнала на X пикосекунд.

А в чем смысл скрещивать ужа Altera и ежа Xilinx в одном проекте? Страсть к мазохизму?
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Sep 27 2018, 19:54
Сообщение #53


Местный
***

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



Дык, если есть обратная пара так по ней клок и передавайте (в обратную сторону). И по этому клоку выставляйте данные в передатчике. CDC или или FIFO еще в помощь.
Go to the top of the page
 
+Quote Post
Plain
сообщение Sep 28 2018, 07:17
Сообщение #54


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



А собрать трёхфазный генератор 200 МГц на ножках — политические убеждения не позволяют? Или это ещё хуже, чем асинхронщина?
Go to the top of the page
 
+Quote Post

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

 


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


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