|
Обмен данными с компьютером, Принимаю советы и замечания по модернизации старого проекта |
|
|
|
Mar 13 2009, 15:46
|
Злополезный
   
Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188

|
Тему создал в этой ветке конференции, ибо надо заменить старое ПЛИС решение на новое или на что-то вообще другое.
Как лучше модифицировать имеющееся решение:
Имеется система сбора данных - ящик 19 дюймовый 4U. Внутри ящика самопальный cross на 10 плат расширения и 1 плата управления. От платы управления шел самопальный канал связи (6 диф. пар по 50МГц) к PCI плате (32бита 5V), втыкаемой в обычный компьютер.
Назрела необходимость изменить ввод данных в компьютер (отказаться от самопальной PCI платы, да и аналогичного канала передачи данных).
Cross и пачки различных плат расширения переделывать ой как неохота, а поэтому имеем такое схемно-убогое решение: от каждой платы расширения (ввода и обработки данных) к блоку управления тянется по 6 LVPECL пар (если быть более точным, то Xilinx LVPECL аля Virtex-E/Spartan-2E) - по 4 к плате расширения и по 2 к блоку управления, итого 60 пар.
Груды LVPECL пар, заходящих на блок управления, подаются на 2 XCV50E-7PQ240, каждый Virtex-E занимался работой со своей половиной шины. Первый мультиплексировал поточные данные от плат расширения и заливал эти данные в PC (по однонаправленной шине). Второй обрабатывал запросы от PC (записать конфигурационную информацию/считать оную из плат расширения). При таком построении системы получалось 2 независимых шины, простое решение в ПЛИС (почти что одни мультиплексоры и коммутаторы). Особенностью аппарата является то, сбор данных необходимо производить с привязкой к пространственной координате, т.е. весьма шустро реагировать на изменения скорости подвижного объекта, в котором собран измерительный комплекс - в том числе и из-за этой особенности стандартные платы ввода данных в PC не использовались (может быть зря ?).
Конструктивно блок управления может быть полноразмерной ISA (PCI) платой – с местом проблем нет – задняя планка ISA (KHPC) Bracket.
Поток (по, как я это безобразие назвал, «Control Bus») данных управления в обе стороны не превышает 1 Мбит/с. Поток данных (по, как я это безобразие назвал, «Data Bus») от плат расширения к PC пока не превышает 16 Мбит/с, но хочется развивать (потихонечку) одну из модификаций плат расширения... и раздуть поток до 105 Мбит/с, а затем и до 210 Мбит/с (из-за возрастающих пожеланий заказчика).
Думаю надо бы переделать передачу данных на Ethernet (а лучше бы с полной поддержкой TCP/IP). А вот тут и возникают вопросы как бы это получше сделать... Т.к. изделия не серийные, то можно использовать компоненты (в т.ч. ПЛИС) ценой в несколько тысяч рублей. 1. Может собрать почти как и было: поставить 2 Startan-3AN TQ144 (теоретически запаять BGA корпуса можно у соседей, но разводкой печатной платы под BGA пока не занимался, а чувствую, что это не делается с наскоку)... и приторочить к каждому Spartan’у по некоей фиговине (у которой с одной стороны какая-то шина, а с другой Ethernet (а лучше сразу TCP/IP) - знать бы еще как оные зовутся ?) ? 2. А может быть поставить одну ПЛИС и собрать там могучий мультиплексор, разгребающий данные к/от Ethernet ? 3. Может есть другие варианты - получше гигабитного Ethernet ???
P.S. работаю только с ПЛИС Xilinx. С EDK пока еще не работал...
|
|
|
|
|
 |
Ответов
|
Mar 24 2009, 14:50
|
Злополезный
   
Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188

|
Цитата(SM @ Mar 24 2009, 16:48)  Народ, вы все позабывали то, откуда берутся данные. Собрать их оттуда без ПЛИС решения вообще не видно. Точно. Сейчас прорабатываю варианты реализации - какую Eth PHY проще купить (и использовать), какое внешнее ОЗУ легче достать и т.п. Но архитектура уже более или менее определилась: две груды LVPECL линий заходят на Spartan-3AN (благо, хоть это и не документированно для этой ПЛИС, но при желании, можно собрать LVPECL выходы аналогичные "Virtex-E LVPECL"), благополучно преобразуются в 2 потока (данных и команд), далее запихиваются во внешнее ОЗУ. При освобождении Eth Gigabit MAC, данные из ОЗУ заталкиваются в MAC, и в служебном массивчике метятся как переданные (но пока еще без подтверждения о получении), после получения такого подтверждения для конкретного пакета, место, занимаемое в ОЗУ этим пакетом, считается свободным. Ну и в таком духе дальше принимать/передавать данные. Еще раз напомню, т.к. не прозвучало достаточных (для меня) доводов: почему надо пухнуть с поддержкой UDP/IP, то предполагаю обойтись голым Ethernet'ом и соединение сделать по меди аппаратно точно-точка (без коммутаторов и прочей дряни). Также не может не радовать и то, что выступившим удалось передать более 100МБайт/с по Gigabit Ethernet, мне же всего-то требуется только 15МБайт/с (или, если очень захочется заказчику увеличить количество датчиков - ну никак не более 30МБайт/с - только для меня остается загадной: нафига ставить еще больше датчиков - их и так в полноценной системе их дофига, а обычно заказывают с 50%-60% каналов сбора данных).
|
|
|
|
|
Mar 25 2009, 07:15
|
iBuilder©
   
Группа: Свой
Сообщений: 519
Регистрация: 14-07-04
Из: Минск
Пользователь №: 322

|
Цитата(Boris_TS @ Mar 24 2009, 18:50)  Еще раз напомню, т.к. не прозвучало достаточных (для меня) доводов: почему надо пухнуть с поддержкой UDP/IP, то предполагаю обойтись голым Ethernet'ом и соединение сделать по меди аппаратно точно-точка (без коммутаторов и прочей дряни). Один из плюсов UDP - стандартные возможности програмирования, например в винде стандартно можно работать только с TCP и UDP, если ниже, придётся использовать WinPCap: http://netgroup-serv.polito.it/winpcap/Если WinPCap допустим, можно и без UDP попробовать. Цитата(Boris_TS @ Mar 24 2009, 18:50)  Сейчас прорабатываю варианты реализации - какую Eth PHY проще купить (и использовать), какое внешнее ОЗУ легче достать и т.п. И к чему склоняетесь? Цитата(Boris_TS @ Mar 24 2009, 18:50)  преобразуются в 2 потока (данных и команд), далее запихиваются во внешнее ОЗУ. При освобождении Eth Gigabit MAC, данные из ОЗУ заталкиваются в MAC, и в служебном массивчике метятся как переданные (но пока еще без подтверждения о получении), после получения такого подтверждения для конкретного пакета, место, занимаемое в ОЗУ этим пакетом, считается свободным. Ну и в таком духе дальше принимать/передавать данные. Кстати, как-то пролистал стандарт на TCP, и меня терзают смутные мысли, что если начать делать такой протокол, получится почти тот-же TCP, только без уровня функций пользователя. Ни кто не пробовал, насколько это так?
|
|
|
|
|
Mar 25 2009, 07:49
|
Гуру
     
Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261

|
Цитата(Builder @ Mar 25 2009, 10:15)  Кстати, как-то пролистал стандарт на TCP, и меня терзают смутные мысли, что если начать делать такой протокол, получится почти тот-же TCP, только без уровня функций пользователя. Ни кто не пробовал, насколько это так? Есть ещё древний RDP ( rfc908+ rfc1151): Цитата The Reliable Data Protocol (RDP) is designed to provide a reliable data transport service for packet-based applications such as remote loading and debugging. The protocol is intended to be simple to implement but still be efficient in environments where there may be long transmission delays and loss or non- sequential delivery of message segments.
|
|
|
|
Сообщений в этой теме
Boris_TS Обмен данными с компьютером Mar 13 2009, 15:46 rezident После прочтения "много слов" у меня возн... Mar 13 2009, 17:00 Boris_TS Цитата(rezident @ Mar 13 2009, 21:00) Пос... Mar 13 2009, 17:52  rezident Цитата(Boris_TS @ Mar 13 2009, 22:52) Соб... Mar 13 2009, 20:34   Boris_TS На всякий случай опишу чуть подробнее работу имеющ... Mar 14 2009, 08:33 murmel1 Рекомендую задуматся о USB - сложность на порядок ... Mar 13 2009, 18:45 Boris_TS Цитата(murmel1 @ Mar 13 2009, 22:45) Реко... Mar 13 2009, 20:17  SM Цитата(Boris_TS @ Mar 13 2009, 23:17) Мож... Mar 13 2009, 20:57 zltigo Цитата(murmel1 @ Mar 13 2009, 21:45) Реко... Mar 13 2009, 21:06  SM Цитата(zltigo @ Mar 14 2009, 00:06) Все с... Mar 14 2009, 06:20   zltigo Цитата(SM @ Mar 14 2009, 09:20) CY7C68013... Mar 14 2009, 08:34    murmel1 Цитата(zltigo @ Mar 14 2009, 11:34) помян... Mar 14 2009, 17:24    SM Цитата(zltigo @ Mar 14 2009, 11:34) Оказы... Mar 14 2009, 17:49     zltigo Цитата(SM @ Mar 14 2009, 20:49) не требую... Mar 14 2009, 20:10      SM Цитата(zltigo @ Mar 14 2009, 23:10) В дан... Mar 14 2009, 20:47       zltigo Цитата(SM @ Mar 14 2009, 23:47) аналогичн... Mar 14 2009, 21:58        SM Цитата(zltigo @ Mar 15 2009, 00:58) Если-... Mar 15 2009, 09:50         zltigo Цитата(SM @ Mar 15 2009, 12:36) Вы опять ... Mar 15 2009, 09:55          SM Цитата(zltigo @ Mar 15 2009, 12:55) Прост... Mar 15 2009, 10:06           zltigo Цитата(SM @ Mar 15 2009, 13:06) 1) Обеспе... Mar 15 2009, 10:27         zltigo Цитата(SM @ Mar 15 2009, 12:50) Делаете с... Mar 15 2009, 10:11          SM Цитата(zltigo @ Mar 15 2009, 13:11) А кто... Mar 15 2009, 10:20           zltigo Цитата(SM @ Mar 15 2009, 13:20) В софте..... Mar 15 2009, 10:32            SM Цитата(zltigo @ Mar 15 2009, 13:32) В общ... Mar 15 2009, 10:54             zltigo Цитата(SM @ Mar 15 2009, 13:36) Причем я ... Mar 15 2009, 11:04              SM Цитата(zltigo @ Mar 15 2009, 14:04) Не ви... Mar 15 2009, 11:16      Михаил_K Цитата(zltigo @ Mar 14 2009, 23:10) Вы хо... Mar 15 2009, 06:44       zltigo Цитата(Михаил_K @ Mar 15 2009, 09:44) Кон... Mar 15 2009, 08:42        Михаил_K Цитата(zltigo @ Mar 15 2009, 11:42) IP ст... Mar 15 2009, 11:36         zltigo Цитата(Михаил_K @ Mar 15 2009, 14:36) Это... Mar 15 2009, 12:11          Михаил_K Цитата(zltigo @ Mar 15 2009, 15:03) Следу... Mar 15 2009, 12:12          SM Цитата(zltigo @ Mar 15 2009, 15:11) Следу... Mar 15 2009, 14:39           zltigo Цитата(SM @ Mar 15 2009, 17:39) поднятие ... Mar 15 2009, 15:51            a123-flex Цитата(zltigo @ Mar 15 2009, 18:51) Понял... Mar 15 2009, 18:06            Boris_TS Фуххх... Вернулся из 2 дневной командировки.
Цита... Mar 16 2009, 10:34             blackfin Цитата(Boris_TS @ Mar 16 2009, 13:34) Мож... Mar 16 2009, 10:45             DmitryR Цитата(Boris_TS @ Mar 16 2009, 13:34) 1. ... Mar 16 2009, 10:51             Boris_TS Подведу очередные итоги обсуждения:
Цитата(Boris_... Mar 19 2009, 09:39              SM Цитата(Boris_TS @ Mar 19 2009, 12:39) Воп... Mar 19 2009, 10:19              Aprox Цитата(Boris_TS @ Mar 19 2009, 12:39) Воп... Mar 19 2009, 11:22              DmitryR Цитата(Boris_TS @ Mar 19 2009, 12:39) но ... Mar 20 2009, 19:27               Boris_TS Цитата(DmitryR @ Mar 20 2009, 23:27) Micr... Mar 20 2009, 19:53                SM Цитата(Boris_TS @ Mar 20 2009, 22:53) Сей... Mar 21 2009, 15:04                 Boris_TS Цитата(SM @ Mar 21 2009, 19:04) Я Вам уже... Mar 21 2009, 16:07              AlexandrY Странно вы решаете эту проблему.
Траблы у вас в PC... Mar 20 2009, 20:16               Boris_TS Цитата(AlexandrY @ Mar 21 2009, 00:16) Ст... Mar 21 2009, 08:33      islavv Цитата(zltigo @ Mar 15 2009, 00:10) Эквив... Mar 17 2009, 13:13 des00 Цитата(Boris_TS @ Mar 13 2009, 09:46) Гру... Mar 14 2009, 03:59 RobFPGA Приветствую!
На USB в таких системах лутше не... Mar 14 2009, 18:09 rsv проще, по моему, все таки ethernet сделать через ж... Mar 14 2009, 18:35 Михаил_K Здравствуйте!
Добавлю своего мнения
Когда-то... Mar 14 2009, 18:52 SM Цитата(Михаил_K @ Mar 14 2009, 21:52) И н... Mar 14 2009, 19:34 RobFPGA Приветствую!
При выборе интерфейса для систем... Mar 14 2009, 21:17 SM Цитата(RobFPGA @ Mar 15 2009, 00:17) Реал... Mar 14 2009, 21:23 SM То, что нет проблем с местом на плате, и то, что м... Mar 15 2009, 10:32 Alex11 Тут уже много чего сказано, но можно добавить, что... Mar 15 2009, 18:19 SM Цитата(Alex11 @ Mar 15 2009, 21:19) но мо... Mar 15 2009, 22:03 SM IMHO тогда так:
внешний PHY, например RTL8211.
ПЛ... Mar 16 2009, 11:05 DmitryR Цитата(SM @ Mar 16 2009, 14:05) Ну и оста... Mar 16 2009, 14:05  SM Цитата(DmitryR @ Mar 16 2009, 17:05) Оста... Mar 16 2009, 19:33   DmitryR В этом проекте без программиста все равно вряд ли ... Mar 17 2009, 07:55   Михаил_K Цитата(SM @ Mar 16 2009, 22:33) Для специ... Mar 17 2009, 09:14    SM Цитата(Михаил_K @ Mar 17 2009, 12:14) ИМХ... Mar 17 2009, 10:45  zltigo Цитата(DmitryR @ Mar 16 2009, 17:05) Я во... Mar 21 2009, 09:35   DmitryR Цитата(zltigo @ Mar 21 2009, 12:35) Вы хо... Mar 23 2009, 06:47    zltigo Цитата(DmitryR @ Mar 23 2009, 09:47) Пред... Mar 24 2009, 06:58     AlexandrY Ага, народ даже не подозревает, что в большинстве ... Mar 24 2009, 07:48      blackfin Цитата(AlexandrY @ Mar 24 2009, 10:48) Эт... Mar 24 2009, 08:02      Aprox Цитата(AlexandrY @ Mar 24 2009, 10:48) Ни... Mar 24 2009, 08:20      Builder Цитата(AlexandrY @ Mar 24 2009, 11:48) CU... Mar 24 2009, 10:13       Aprox Цитата(Builder @ Mar 24 2009, 13:13) Може... Mar 24 2009, 11:23        Builder Цитата(Aprox @ Mar 24 2009, 14:23) И не н... Mar 24 2009, 12:01 jojo Внешний PHY 10/100/1000
Древний, зато купить легко... Mar 16 2009, 14:50 Михаил_K Наши делали так. Интеловский сетевой процессор. На... Mar 16 2009, 19:18 SM Да, а что Вас так ксилинксом приплющило? Ведь есть... Mar 19 2009, 11:58 jojo >Для того, чтобы не возникало ненужных вопросов... Mar 21 2009, 19:04 Builder Цитата(jojo @ Mar 21 2009, 23:04) По пово... Mar 22 2009, 22:02  jojo Цитата(Builder @ Mar 23 2009, 01:02) Не п... Mar 23 2009, 08:18   Builder Цитата(jojo @ Mar 23 2009, 12:18) NIOS2.
... Mar 23 2009, 09:37 SM Все так, трансивер -> SFP -> волокно. Если м... Mar 21 2009, 19:19 Muxa По поводу USB переходников, не всё так просто.
бо... Mar 23 2009, 00:11 jojo Стек сам писал. Это же "наивная реализация... Mar 23 2009, 10:11 jojo В нормальных процессорах DMA таки ускоряет пересыл... Mar 24 2009, 08:59 AlexandrY Цитата(jojo @ Mar 24 2009, 10:59) В норма... Mar 24 2009, 09:43  jojo >Лучше расскажите где вы этот миф прочитали
В ... Mar 24 2009, 11:12   SM Цитата(Builder @ Mar 25 2009, 10:15) Один... Mar 25 2009, 08:14 :-) Хотелось бы продолжить данную тему.
Есть желание... Nov 19 2009, 13:14 o_khavin Цитата(:-) @ Nov 19 2009, 17... Nov 22 2009, 16:40  :-) Цитата(o_khavin @ Nov 22 2009, 19:40) Для... Nov 23 2009, 07:57   o_khavin Цитата(:-) @ Nov 23 2009, 11... Nov 23 2009, 20:56 :-) Ethernet нравится тем, что, во-первых, имеются нек... Nov 24 2009, 07:53 Aprox Цитата(:-) @ Nov 24 2009, 11... Nov 27 2009, 14:00 XVR ЦитатаГлавная сложность продумать реализацию алгор... Nov 24 2009, 08:36 warrior-2001 В данной ветке проскакивало упоминание о "Vid... Oct 11 2011, 06:42
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|