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

 
 
> Передача данных - что выбрать?, ASI?
RHnd
сообщение Aug 15 2008, 12:10
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Спешно и неожиданно поставили задачу: есть два циклона, между ними два провода - общий и для передачи информации. Необходимо обеспечить передачу информации от одного к другому. Скорость - около 15 МБит. Средний объем информации для одного сеанса - около 2 Гб (т.е. сеанс длится минут 20). Нужно обеспечить всякие там помехозащищенности, подтверждение приема, перезапрос блока при необходимости и т.п. - т.е. канал будет полудуплексный. "Руководитель" проекта выдает набор слов "ASI, кодирование 8 в 10, манчестер, нужно было еще вчера".
Я глянул описание мегафункции ASI от альтеры - что-то там очень много чего, высокие частоты и т.п. - не уверен, что подходит для данной задачи.
Ах, еще момент. Потенциально, эти два провода между циклонами будут заменены радиоканалом.

Вообщем, подскажите, пожалуйста, с какой стороны подступиться, в сторону каких протоколов, готовых решений или мегафункций смотреть? Время поджимает, буду благодарен за любую помощь и советы.

Заранее спасибо!
help.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
slog
сообщение Aug 18 2008, 08:15
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489



Делал связь между 2-мя FPGA на 12 мегабит в полудуплексе. Физически через RS-485 метров на 10. Протокол самопальный. На основе RS-232 приёмников-передатчиков. Посылающий данные отправляет пакет стандартной структуры - заголовок, данные, CRC. Принимающий контролирует CRC и отправляет в ответ подтверждение. Никаких процессоров, готовых мегафункций и дополнительных кодировок не использовал, просто RS-232 приёмник-передатчик и автомат состояний.
Работает.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
ASN
сообщение Aug 19 2008, 17:30
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326



RHnd
Использовал передачу между двумя FPGA одному проводу на основе UART.Скорость - 10 Мбит через оптическую развязку. Можно было и больше, но не потребовалось. Работало надёжно. IMHO, кодировка 8/10 нужна при максимальном использовании полосы пропускания.
Go to the top of the page
 
+Quote Post
RHnd
сообщение Aug 19 2008, 20:37
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Всем большое спасибо!

Вообщем, решил делать на основе юарт. Планирую 15MHz в лини, в камне 75MHz - мажоритирование 3 из 5.

А пока я развлекаюсь, поясните мне, пожалуйста, а что такое 8-10 и для чего оно толком нужно? Как я понял из описание на альтеровскую мегафункцию, это кодирование просто позволяет в целом выровнять количество нулей и единиц. А зачем?
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Aug 20 2008, 01:19
Сообщение #5


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



Цитата(RHnd @ Aug 20 2008, 05:37) *
.....
А пока я развлекаюсь, поясните мне, пожалуйста, а что такое 8-10 и для чего оно толком нужно? Как я понял из описание на альтеровскую мегафункцию, это кодирование просто позволяет в целом выровнять количество нулей и единиц. А зачем?

тут коротенько http://en.wikipedia.org/wiki/8B10B


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
Syberian
сообщение Aug 22 2008, 02:44
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 68
Регистрация: 29-12-06
Из: Омск
Пользователь №: 23 999



Цитата(Postoroniy_V @ Aug 20 2008, 04:19) *
тут коротенько http://en.wikipedia.org/wiki/8B10B


мегафункция 8-10 есть в Квартусе. Избыточное кодирование с коррекцией ошибок.
Ее надо сериализировать и тупо туды-сюды по каналу гонять.
Проблемы в передаче данных, как тут уже упоминали, вылезут, и делать это непросто.
Если отойти от концепции Ви-Фи, имеем типичную задачу полудуплекса с коллизиями, задержками, арбитражом и проч. "прелестями". В случае радиоканала будем иметь еще и чудовищный джиттер + дефрейминг + помехи.

Предлагаю пакетную реализацию с подтверждениями. Естественно, покадрово. Разруливание коллизий - как в Ethernet, задержками на случайный квант.
Опыта, как сотворить все это чисто на ПЛИС, не имею. Я бы присоветовал использовать ПЛИС как PHY-адаптер со всякими коррекциями, манчестером и проч., а пакетирование проводить на DSP...
Go to the top of the page
 
+Quote Post
RHnd
сообщение Aug 22 2008, 04:51
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 518
Регистрация: 12-04-07
Из: Санкт-Петербург
Пользователь №: 26 997



Цитата(Syberian @ Aug 22 2008, 06:44) *
мегафункция 8-10 есть в Квартусе. Избыточное кодирование с коррекцией ошибок.

Она разве с коррекцией?
Цитата(Syberian @ Aug 22 2008, 06:44) *
Если отойти от концепции Ви-Фи, имеем типичную задачу полудуплекса с коллизиями, задержками, арбитражом и проч. "прелестями". В случае радиоканала будем иметь еще и чудовищный джиттер + дефрейминг + помехи.

Я весьма слаб в терминологии. Мне казалось, что задача арбитража возникает когда к одному ресурсу одновременно пытаются обратиться несколько потребителей. Где может возникнуть арбитраж при передаче point-to-point?
И что такое дефрейминг? 05.gif
Цитата(Syberian @ Aug 22 2008, 06:44) *
Предлагаю пакетную реализацию с подтверждениями. Естественно, покадрово. Разруливание коллизий - как в Ethernet, задержками на случайный квант.

Плохо как без терминологии-то. sad.gif Я собираюсь передавать весь объем данных порезав на куски по 128 (примерно) байт. К каждому куску добавляется CRC, на каждый кусок получается подтверждение. Кроме того, в начале каждого куска есть заголовок, покозывающий, что а) это кусок данных и б) номер этого куска в общем объеме (желательно по условиям задачи иметь возможность передавать только интересующую часть данных). Так же есть посылки без данных, только команды - сообщить статус и т.п.. Естественно, со своим CRC и с подтверждением. Так вот, мне казалось, что такие посылки и есть пакеты. С подтверждениями. Что тогда значит 'покадровость'?

Как я понимаю, коллизии это когда, скажем, оба поинта пытаются одновременно начать передачу? В моем случае это исключено - в конкретный момент только одно устройство из двух может инициировать сессию.
Цитата(Syberian @ Aug 22 2008, 06:44) *
Опыта, как сотворить все это чисто на ПЛИС, не имею. Я бы присоветовал использовать ПЛИС как PHY-адаптер со всякими коррекциями, манчестером и проч., а пакетирование проводить на DSP...

Не, мне это все надо засунуть в оставшиеся 3000 ячеек циклона, никакими дсп там и не пахнет. smile.gif
Кстати, на сколько реальна задача по объему?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- RHnd   Передача данных - что выбрать?   Aug 15 2008, 12:10
- - DmitryR   Вопрос, хотите ли вы сразу на плате сделать точно ...   Aug 15 2008, 13:06
|- - RHnd   Цитата(DmitryR @ Aug 15 2008, 17:06) Вопр...   Aug 15 2008, 13:40
|- - maxfox2k   Цитата(RHnd @ Aug 15 2008, 16:40) однако,...   Aug 18 2008, 02:46
|- - Михаил_K   Цитата(RHnd @ Aug 15 2008, 17:40) Хороший...   Aug 22 2008, 06:59
- - RHnd   Неужели никто не решал похожих задач передачи инфо...   Aug 16 2008, 07:10
|- - alexander55   Цитата(slog @ Aug 18 2008, 12:15) Делал с...   Aug 19 2008, 07:03
|- - DmitryR   Цитата(RHnd @ Aug 22 2008, 08:51) Не, мне...   Aug 22 2008, 05:39
|- - Syberian   Цитата(RHnd @ Aug 22 2008, 07:51) ...... ...   Aug 22 2008, 07:00
|- - slog   Цитата(Syberian @ Aug 22 2008, 11:00) эээ...   Aug 22 2008, 09:36
|- - des00   Цитата(slog @ Aug 22 2008, 04:36) Совсем ...   Aug 22 2008, 10:00
|- - RHnd   Хм. Надо будет таки разобраться и сделать для себя...   Aug 22 2008, 10:48
|- - slog   Цитата(des00 @ Aug 22 2008, 14:00) господ...   Aug 22 2008, 13:42
|- - des00   Цитата(slog @ Aug 22 2008, 08:42) От обре...   Aug 26 2008, 03:22
- - RHnd   Да не, не все так страшно. Там камень на 6k, из ни...   Aug 22 2008, 06:12


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

 


RSS Текстовая версия Сейчас: 18th August 2025 - 06:54
Рейтинг@Mail.ru


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