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

 
 
> LVDS протокол для передачи на 50-100 МБ/с, Можно ли использовать SPI через LVDS на скорости 50-100 МБ/с
Олег Гаврильченк...
сообщение Dec 25 2017, 14:31
Сообщение #1


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Требуется передавать данные от одного устройства на несколько других. В оба направления. Передатчик и приемник - ПЛИС. Для последовательной передачи достаточно скорости 50-100 Мб/с. Устройства связаны кабелем или шлейфом и расстояние между ними до 0,5 м.
В качестве физического протокола я выбрал LVDS. У меня возникли такие вопросы:
1. Можно ли передавать данные по обычному SPI. Т.е. использовать 3 линии SCK, MOSI, MISO(через LVDS)? Или это слишком высокая скорость?
2. Можно ли использовать синхронный или асинхронный UART на 50-100 Мб/с?
3. Какие еще варианты посоветуете?

Я работал с SPI только на скоростях до 25 Мб/с и только через КМОП. Разумеется, есть быстрые последовательные протоколы(RapidIO, PCI-E, Aurora и др). Но в спецификациях на них указано что они разработаны для скоростей в 10 раз выше нужной мне, и для их использования нужна будет более дорогая ПЛИС на стороне приемника. И отлаживать их дольше.

Еще хочу задать вопрос по протоколам. Мне известны протоколы для низких скоростей: RS-4.., CAN, SPI, I2C и др. И известны высокоскоростные: PCI-E, Ethernet. Существуют ли решения для скоростей именно 25-~ 200 Мб/с?
МБ/с - это мегабит в секунду.

Сообщение отредактировал Олег Гаврильченко - Dec 25 2017, 16:14
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
a123-flex
сообщение Dec 25 2017, 23:09
Сообщение #2


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

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



Цитата(Олег Гаврильченко @ Dec 25 2017, 18:31) *
Требуется передавать данные от одного устройства на несколько других. В оба направления. Передатчик и приемник - ПЛИС. Для последовательной передачи достаточно скорости 50-100 Мб/с. Устройства связаны кабелем или шлейфом и расстояние между ними до 0,5 м.
В качестве физического протокола я выбрал LVDS. У меня возникли такие вопросы:
1. Можно ли передавать данные по обычному SPI. Т.е. использовать 3 линии SCK, MOSI, MISO(через LVDS)? Или это слишком высокая скорость?

да можно.

Цитата(Олег Гаврильченко @ Dec 25 2017, 18:31) *
2. Можно ли использовать синхронный или асинхронный UART на 50-100 Мб/с?

uart до 50 не разогнать. без извращений

Цитата(Олег Гаврильченко @ Dec 25 2017, 18:31) *
3. Какие еще варианты посоветуете?

по простому - double или quad spi.

Цитата(Олег Гаврильченко @ Dec 25 2017, 18:31) *
Еще хочу задать вопрос по протоколам. Мне известны протоколы для низких скоростей: RS-4.., CAN, SPI, I2C и др. И известны высокоскоростные: PCI-E, Ethernet. Существуют ли решения для скоростей именно 25-~ 200 Мб/с?
МБ/с - это мегабит в секунду.

Ethernet 100 - как раз оно. Возможно идеальный путь, если места на плате не жалко под phy и пинов на плисе. Или SpaceWire. Или перепиливать UART. Или в личку.


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
FakeDevice
сообщение Dec 27 2017, 06:07
Сообщение #3


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

Группа: Свой
Сообщений: 81
Регистрация: 31-10-14
Из: Воронеж
Пользователь №: 83 452



Цитата(a123-flex @ Dec 26 2017, 02:09) *
uart до 50 не разогнать. без извращений

делали на 128 МБит/с, отлично работает без каких-либо извращений. Но при условии, что это действительно UART, а не какой-то синхронный мутант. Единственное ограничение -- на приёмной стороне должна быть возможность работать на тактах 2x.
Go to the top of the page
 
+Quote Post
Олег Гаврильченк...
сообщение Dec 27 2017, 15:00
Сообщение #4


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Цитата(FakeDevice @ Dec 27 2017, 09:07) *
делали на 128 МБит/с, отлично работает без каких-либо извращений. Но при условии, что это действительно UART, а не какой-то синхронный мутант. Единственное ограничение -- на приёмной стороне должна быть возможность работать на тактах 2x.

Можно Вас попросить подробнее описать, как Вы это делали?
Go to the top of the page
 
+Quote Post
FakeDevice
сообщение Dec 27 2017, 20:08
Сообщение #5


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

Группа: Свой
Сообщений: 81
Регистрация: 31-10-14
Из: Воронеж
Пользователь №: 83 452



Цитата(jcxz @ Dec 27 2017, 22:31) *
И каков был oversampling интересно знать? Обычно он == 16, ну или в худшем случае == 8.
Даже для oversampling == 8 получаем тактовую частоту UART = 1024 МГц.
Так сколько у вас было?

поток 128 МБит/с, тактовая на приёме 2x = 256 МГц, но! некоторые триггеры, которые ловят старт-бит, работают по другому фронту. в результате имеется один (если правильно помню) переход между некоторыми триггерами, где получается t=(1/256MHz) / 2, эквивалент ~ 512 МГц. Грубо говоря, oversampling получается 4. Но с учётом того, что на этом переходе только клоковый домен меняется, нету ни логики или еще чего-то, разводится норм. ну на свежих поколениях, как минимум.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Dec 27 2017, 20:42
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(FakeDevice @ Dec 27 2017, 22:08) *
Грубо говоря, oversampling получается 4.

Это если тактовая - строго меандр.
Но даже если меандр, всё равно - точность определения точки стробирования в 4 раза ниже стандарта UART. Ну и соответственно - помехоустойчивость.
Можно ли это назвать полноценным UART? Вопрос....

Я бы делал по-другому:
Разбил поток на блоки некоей длины, с маркерами начала и конца блока, добавил в блок информацию для контроля целостности.
В передатчике выдвигал биты как в UART, только без стартового и стоповых битов - синхронизируемся в начале блока, макс.длина блока выбирается такой, чтобы точка стробирования не ушла за пределы бита при максимальных отношениях частот приёмника/передатчика.
В приёмнике сделать oversampling любой насколько позволяет макс.тактовая, но не менее 3. Завести N приёмников (где: N - величина oversampling-а) с точками стробирования в каждом такте.
Все приёмники работают независимо принимая параллельно один и тот же блок. В конце блока проверяем его валидность (по контрольной информации). Если блок валиден - передаём его на выход.
Ну и сделать между приёмниками необходимую синхронизацию для удаления лишних копий блоков.
Делал когда-то давно подобное только на DSP - работало стабильно. Да и сейчас ещё работает - устройство уже десяток лет в коммерческой эксплуатации.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Олег Гаврильченко   LVDS протокол для передачи на 50-100 МБ/с   Dec 25 2017, 14:31
- - Lmx2315   Цитата(Олег Гаврильченко @ Dec 25 2017, 17...   Dec 25 2017, 14:55
|- - a123-flex   Цитата(FakeDevice @ Dec 27 2017, 09:07) д...   Dec 27 2017, 14:59
||- - FakeDevice   Цитата(a123-flex @ Dec 27 2017, 17:5...   Dec 27 2017, 19:51
||- - a123-flex   Цитата(FakeDevice @ Dec 27 2017, 23:51) с...   Dec 27 2017, 20:08
||- - FakeDevice   Цитата(Олег Гаврильченко @ Dec 27 2017, 18...   Dec 27 2017, 20:32
||- - a123-flex   Цитата(FakeDevice @ Dec 28 2017, 00:32) р...   Dec 27 2017, 20:36
||- - FakeDevice   Цитата(a123-flex @ Dec 27 2017, 23:3...   Dec 27 2017, 20:59
||- - a123-flex   Цитата(FakeDevice @ Dec 28 2017, 00:59) н...   Dec 27 2017, 21:06
|||- - FakeDevice   Цитата(a123-flex @ Dec 28 2017, 00:0...   Dec 27 2017, 21:12
||- - jcxz   Цитата(FakeDevice @ Dec 27 2017, 22:59) п...   Dec 27 2017, 21:14
||- - a123-flex   Цитата(jcxz @ Dec 28 2017, 01:14) Зато ма...   Dec 27 2017, 21:26
|||- - jcxz   Цитата(a123-flex @ Dec 27 2017, 23:2...   Dec 27 2017, 21:29
|||- - a123-flex   Цитата(jcxz @ Dec 28 2017, 01:29) Чем име...   Dec 27 2017, 21:33
|||- - jcxz   Цитата(a123-flex @ Dec 27 2017, 23:3...   Dec 27 2017, 21:40
|||- - a123-flex   Цитата(jcxz @ Dec 28 2017, 01:40) Очень у...   Dec 27 2017, 21:42
||- - FakeDevice   Цитата(jcxz @ Dec 28 2017, 00:14) Сам ove...   Dec 27 2017, 21:29
||- - Студент заборстроительного   Цитата(Олег Гаврильченко @ Dec 27 2017, 18...   Dec 27 2017, 16:23
|||- - a123-flex   Цитата(Студент заборстроительного @ Dec 27 20...   Dec 27 2017, 17:07
|||- - Студент заборстроительного   Цитата(a123-flex @ Dec 27 2017, 20:0...   Dec 27 2017, 18:27
|||- - a123-flex   Цитата(Студент заборстроительного @ Dec 27 20...   Dec 27 2017, 18:56
|- - jcxz   Цитата(FakeDevice @ Dec 27 2017, 08:07) д...   Dec 27 2017, 19:31
- - andk   Манчестер можно попробовать   Dec 26 2017, 04:30
- - arhiv6   Можно понизить частоту SPI, используя больше линий...   Dec 26 2017, 05:49
- - Alex11   SPI стандартный работать не будет на 100 МГц. На 5...   Dec 26 2017, 12:34
|- - alexadmin   Цитата(Alex11 @ Dec 26 2017, 15:34) SPI с...   Dec 26 2017, 13:06
|- - lembrix   Цитата(alexadmin @ Dec 26 2017, 16:06) SP...   Dec 26 2017, 13:51
|- - alexadmin   Цитата(lembrix @ Dec 26 2017, 16:51) Завя...   Dec 27 2017, 07:38
||- - FakeDevice   Цитата(alexadmin @ Dec 27 2017, 10:38) Да...   Dec 27 2017, 09:56
||- - Lmx2315   Цитата(FakeDevice @ Dec 27 2017, 12:56) а...   Dec 27 2017, 10:35
|||- - FakeDevice   Цитата(Lmx2315 @ Dec 27 2017, 13:35) ..мо...   Dec 27 2017, 10:38
||- - blackfin   Цитата(FakeDevice @ Dec 27 2017, 12:56) ....   Dec 27 2017, 11:01
||- - FakeDevice   Цитата(blackfin @ Dec 27 2017, 14:01) Нап...   Dec 27 2017, 11:28
|- - Tpeck   Цитата(lembrix @ Dec 26 2017, 16:51) Завя...   Dec 27 2017, 11:21
|- - Lmx2315   Цитата(Tpeck @ Dec 27 2017, 14:21) Так го...   Dec 27 2017, 11:28
|- - Tpeck   Цитата(Lmx2315 @ Dec 27 2017, 14:28) вы с...   Dec 27 2017, 12:40
- - Студент заборстроительного   Народ. А если 32 уровня сигнала использовать можно...   Dec 27 2017, 20:07
|- - a123-flex   Цитата(Студент заборстроительного @ Dec 28 20...   Dec 27 2017, 20:10
- - Студент заборстроительного   Рекомендую почитать тему: Обмен инфой между микрок...   Dec 28 2017, 05:19
- - Maverick   посмотрите еще это - использование внешнего серили...   Dec 30 2017, 19:43


Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 23:47
Рейтинг@Mail.ru


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