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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Передача данных - что выбрать?, ASI?
Syberian
сообщение Aug 22 2008, 07:00
Сообщение #16


Участник
*

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



Цитата(RHnd @ Aug 22 2008, 07:51) *
......
Плохо как без терминологии-то. sad.gif Я собираюсь передавать весь объем данных порезав на куски по 128 (примерно) байт. К каждому куску добавляется CRC, на каждый кусок получается подтверждение. Кроме того, в начале каждого куска есть заголовок, покозывающий, что а) это кусок данных и б) номер этого куска в общем объеме (желательно по условиям задачи иметь возможность передавать только интересующую часть данных). Так же есть посылки без данных, только команды - сообщить статус и т.п.. Естественно, со своим CRC и с подтверждением. Так вот, мне казалось, что такие посылки и есть пакеты. С подтверждениями. Что тогда значит 'покадровость'?
....
Как я понимаю, коллизии это когда, скажем, оба поинта пытаются одновременно начать передачу? В моем случае это исключено - в конкретный момент только одно устройство из двух может инициировать сессию.
....
Не, мне это все надо засунуть в оставшиеся 3000 ячеек циклона, никакими дсп там и не пахнет. smile.gif
Кстати, на сколько реальна задача по объему?



эээммм.. мде.. у меня терминология кажись, тоже хромает smile.gif
Ваша идея вполне правильная! Единственно, что 128 байт "полезки" в одном пакете - это слишком мало. Особенно для 2Г массивов.... Потому что "оверхед" (всякие синхрогруппы ,CRC, номер пакета - а их будет дофига) будет добавлять еще процентов 50 длины! Что снизит общую скорость передачи.
Рекомендую использовать пакеты переменной длины, с указанием длины в хедере. Пакеты данных пихать 32 килобайта. Служебные - 16 байт. Вместо номера пакета указывать офсет и ренж (offset & range) - т.е. диапазон передаваемых данных, чтобы система на том конце могла перезапросить пакет с произвольного диапазона.

Что касается "коллизии исключены" - они возникнут обязательно на такой скорости, если длина канала будет больше половины "длины волны". В вашем случае это 10 метров. Чисто физического характера, когда система контроля уровня "не успеет" засечь начало чужой передачи и начнет свою.


Если хорошо и с пивом подумать, все-таки, думаю, можно сделать чисто на циклоне smile.gif если нет многоканальных ФАПЧ и писать "в тексте", а не только рисовать ( как я гыгы) , система займет элементов 2000-2500...
Go to the top of the page
 
+Quote Post
slog
сообщение Aug 22 2008, 09:36
Сообщение #17


Знающий
****

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



Цитата(Syberian @ Aug 22 2008, 11:00) *
эээммм.. мде.. у меня терминология кажись, тоже хромает smile.gif
Ваша идея вполне правильная! Единственно, что 128 байт "полезки" в одном пакете - это слишком мало. Особенно для 2Г массивов.... Потому что "оверхед" (всякие синхрогруппы ,CRC, номер пакета - а их будет дофига) будет добавлять еще процентов 50 длины! Что снизит общую скорость передачи.
Рекомендую использовать пакеты переменной длины, с указанием длины в хедере. Пакеты данных пихать 32 килобайта. Служебные - 16 байт. Вместо номера пакета указывать офсет и ренж (offset & range) - т.е. диапазон передаваемых данных, чтобы система на том конце могла перезапросить пакет с произвольного диапазона.

Что касается "коллизии исключены" - они возникнут обязательно на такой скорости, если длина канала будет больше половины "длины волны". В вашем случае это 10 метров. Чисто физического характера, когда система контроля уровня "не успеет" засечь начало чужой передачи и начнет свою.
Если хорошо и с пивом подумать, все-таки, думаю, можно сделать чисто на циклоне smile.gif если нет многоканальных ФАПЧ и писать "в тексте", а не только рисовать ( как я гыгы) , система займет элементов 2000-2500...

Совсем не согласен.

128байт это нормально, оверхеад добавит ~10%. Вообще длина пакета выбирается исходя из кол-ва ошибок в канале.
Коллизии могут быть если есть несколько передатчиков. В данном случае вроде не актуально. тем более приёмное устройство можно сделать мастером, а слэйв передает нужные данные по запросу от мастера.
И займет это все со всей логикой протокола максимум 500 ЛЕ.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 22 2008, 10:00
Сообщение #18


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(slog @ Aug 22 2008, 04:36) *
Совсем не согласен.

128байт это нормально, оверхеад добавит ~10%. Вообще длина пакета выбирается исходя из кол-ва ошибок в канале.
Коллизии могут быть если есть несколько передатчиков. В данном случае вроде не актуально. тем более приёмное устройство можно сделать мастером, а слэйв передает нужные данные по запросу от мастера.
И займет это все со всей логикой протокола максимум 500 ЛЕ.


господа, я может быть что то не понимаю, а чем вам ethernet не угодил?
Ставим PHY, берем MAC от игоря мохора, вырезаем вишбон и все что с ним связано, отключаем всякие таймауты, PauseFrame, динамическое конфигурирование. имеем ~1k ячеек. (кста если с реверс инжинирингом плохо, могу дать обрезанную версию).

Пихать в ethernet кадр можно все что угодно. Ну и простой КА, который набивает эти кадры. Или чуть сложнее PicoBlaze который формирует заголовки и рулит протоклом + КА который набивает кадры.

между платами стандартная витуха.


--------------------
Go to the top of the page
 
+Quote Post
RHnd
сообщение Aug 22 2008, 10:48
Сообщение #19


Знающий
****

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



Хм. Надо будет таки разобраться и сделать для себя тестовый езернет, а то никогда с ним не работал, нифига о нем не знаю. Смущаю сложности со стороны PC - я в виндовском программировании не очень. smile.gif

Как я понимаю, PHY - дополнительная микросхема на плате? Если да, то это отпадает - плата не в моей юрисдикции. Фактически, это выглядит примерно так: "Вот на эту ножку циклона данные приходят, а отсюда уходят, одновременно нельзя. А чего мы к этим ножкам приделаем - сами еще не решили: провод, радио, оптика. Вообщем, канальный вопрос остается открытым."
Go to the top of the page
 
+Quote Post
slog
сообщение Aug 22 2008, 13:42
Сообщение #20


Знающий
****

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



Цитата(des00 @ Aug 22 2008, 14:00) *
господа, я может быть что то не понимаю, а чем вам ethernet не угодил?
Ставим PHY, берем MAC от игоря мохора, вырезаем вишбон и все что с ним связано, отключаем всякие таймауты, PauseFrame, динамическое конфигурирование. имеем ~1k ячеек. (кста если с реверс инжинирингом плохо, могу дать обрезанную версию).

Пихать в ethernet кадр можно все что угодно. Ну и простой КА, который набивает эти кадры. Или чуть сложнее PicoBlaze который формирует заголовки и рулит протоклом + КА который набивает кадры.

между платами стандартная витуха.


Мне - всем бы угодил, отличный вариант, но у меня опыта с эзернетом нет, а разбираться некогда. Поэтому делал как быстрее и чтоб работало.
С реверс инжинирингом у меня хорошо, но нет времени заниматься всем сразу. От обрезанной версии не отказался бы. Пока посмотреть, а на потом - есть куда пристроить такое решение.


--------------------
В действительности всё не так, как на самом деле.
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 26 2008, 03:22
Сообщение #21


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(slog @ Aug 22 2008, 08:42) *
От обрезанной версии не отказался бы. Пока посмотреть, а на потом - есть куда пристроить такое решение.


постараюсь на неделе выдернуть последний рабочий вариант из свна и выслать вам. Кстати куда вам выслать ?


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

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

 


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


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