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

 
 
 
Reply to this topicStart new topic
> Backplane Bus, Поиск контроллера шины
_4afc_
сообщение Jul 25 2006, 07:09
Сообщение #1


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

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Столкнулся с необходимостью объединить платы высокоскоростной шиной.
Параметры задачи:

16 плат, стойка 19", пропускная способность шины менее 100Мбит, возможность передать данные от любой платы к любой. Желательно синхронную шину.
Желательно не перегружать контроллеры плат большой скоростью обмена, т.е. если плата передаёт лишь 0.5Мбита, то пусть на такой скорости и передаёт в интерфейсную микросхему (с FIFO?).

Нравится идея CAN, но он к сожалению лишь до 1Мбита.
Посмотрел IEEE1394 - он вроде только до 12Мбит для многоточечного применения.
Может поставить Ethernet? Но как он будет работать на многоточке?
Да и не нравится его решение конфликтов на шине.
Пока остановился на LVDS (M-LVDS?), но к сожалению не вижу готовых решений для Backplane с адресами и FIFO.
Пока предполагаю такую систему: LVDS ->DS92LV18->ATF1508->I2S.
Параллельный 18+18 битный код получаемый от DS92LV18 будет представлять из себя 8 бит данных, 4 бита адреса источника, 4 бита адреса приёмника и синхру.
PLD ATF1508 сравнив адрес с адресом платы - преобразует параллельные данные в последовательные (если получится - с FIFO) и выдаёт в микроконтроллер (AT91SAM7S).
И хотя данный способ задачу решит, но выглядит коряво и громоздко (два кристала 16х16мм).

Не подскажите другое более компактное и эффективное решение для данной задачи, перерыв инет - что-то не заметил готовых вариантов вообще.
Достаточно названий протоколов или микросхем.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 25 2006, 07:23
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(_4afc_ @ Jul 25 2006, 11:09) *
Столкнулся с необходимостью объединить платы высокоскоростной шиной.
Параметры задачи:

16 плат, стойка 19", пропускная способность шины менее 100Мбит, возможность передать данные от любой платы к любой. Желательно синхронную шину.

Может поставить Ethernet? Но как он будет работать на многоточке?
Да и не нравится его решение конфликтов на шине.


Не подскажите другое более компактное и эффективное решение для данной задачи, перерыв инет - что-то не заметил готовых вариантов вообще.
Достаточно названий протоколов или микросхем.


Вопрос №1:
Можно ли применить кольцо. Т.е если модуль стоит, то он передает 2 канала. Если модуль не нужен, ставим заглушку.
При этом все вопросы уходят.
Если хотим готовое решение - Берем KSZ8842 - это 2 порта Ethernet и процессорная шина. Режим дуплекс. На стороне процессорной шины - режим синхронный. Задаем контроллеру МАС адрес, по которому он будет брать свои пакеты. Задаем режим отзеркаливания из порта1 в порт2 и из порта2 в порт1, чтобы пропускать информацию по кольцу. Если одного кольца мало, делаем резервное кольцо таким же образом.
Если гальваническая развязка не нужна, то вместо трансформаторов ставим конденсаторы.
Мастер опрашивает слэйвы и дает им разрешение на передачу данных, чтобы было меньше коллизий.

Если хотим немного помучаться, то берем FPGA, читаем ксайлинсовские или альтеровские аппаликухи по передаче данных и делаем кольцо. Стандарт пинов - LVDS.
Вот примерно так.
Если ко мне есть вопросы, то можно обсудить и по телефону.
А можете подъехать посмотреть на 8842....
Удачи!

Сообщение отредактировал iosifk - Jul 25 2006, 07:30


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Jul 26 2006, 07:53
Сообщение #3


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

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(iosifk @ Jul 25 2006, 11:23) *
Вопрос №1:
Можно ли применить кольцо. Т.е если модуль стоит, то он передает 2 канала. Если модуль не нужен, ставим заглушку. При этом все вопросы уходят.
Если хотим готовое решение - Берем KSZ8842 - это 2 порта Ethernet и процессорная шина. Мастер опрашивает слэйвы и дает им разрешение на передачу данных, чтобы было меньше коллизий.

Ну кольцо с заглушками - это уже не удобно как минимум с точки зрения монтажа. Кроме того я хотел ба уйти от мастера на шине, сведя его нагрузку на шину к минимуму. Если уж и городить шину на микросхемах требующих инициализацию процессорм, толучше поставить IEEE1394 - например TSB14AA1A, он вытягивает 50Мбит, но там хотябы есть возможность синхронной передачи в течении кадра с любой платы на любую, правда один раз.
Цитата(iosifk @ Jul 25 2006, 11:23) *
Если хотим немного помучаться, то берем FPGA, читаем ксайлинсовские или альтеровские аппаликухи по передаче данных и делаем кольцо. Стандарт пинов - LVDS.

Не хотелось бы заниматься отладкой временных процессов в данных микросхемах.
Мне бы что-то типа NEC uPD98441, в котором есть и FIFO и 8\10.
Вообще-то меня бы устроил и некий CMOS SERDES 1:10/10:1 с PLL, FIFO и 8\10.
А уж шинные уровни я сформирую. А то DS92LV18 - 80 ног, слишком жирная.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jul 26 2006, 09:19
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(_4afc_ @ Jul 26 2006, 11:53) *
Цитата(iosifk @ Jul 25 2006, 11:23) *

Вопрос №1:
Можно ли применить кольцо. Т.е если модуль стоит, то он передает 2 канала. Если модуль не нужен, ставим заглушку. При этом все вопросы уходят.
Если хотим готовое решение - Берем KSZ8842 - это 2 порта Ethernet и процессорная шина. Мастер опрашивает слэйвы и дает им разрешение на передачу данных, чтобы было меньше коллизий.

Ну кольцо с заглушками - это уже не удобно как минимум с точки зрения монтажа. Кроме того я хотел ба уйти от мастера на шине, сведя его нагрузку на шину к минимуму. Если уж и городить шину на микросхемах требующих инициализацию процессорм, толучше поставить IEEE1394 - например TSB14AA1A, он вытягивает 50Мбит, но там хотябы есть возможность синхронной передачи в течении кадра с любой платы на любую, правда один раз.
Цитата(iosifk @ Jul 25 2006, 11:23) *
Если хотим немного помучаться, то берем FPGA, читаем ксайлинсовские или альтеровские аппаликухи по передаче данных и делаем кольцо. Стандарт пинов - LVDS.

Не хотелось бы заниматься отладкой временных процессов в данных микросхемах.
Мне бы что-то типа NEC uPD98441, в котором есть и FIFO и 8\10.
Вообще-то меня бы устроил и некий CMOS SERDES 1:10/10:1 с PLL, FIFO и 8\10.
А уж шинные уровни я сформирую. А то DS92LV18 - 80 ног, слишком жирная.


А если без кольца, то как:
Шина на 16 абонентов на частоте 50 Мгц? а согласование?
Точка - точка? на мастере 16 контроллеров? Как плата "узнает" на какую линию ей вставать? Джамперами перекидывать 50 МГц или на каждой плате ставить 16 приемников?
И еще один тезис:
если у Вас платы работают хотя бы с МАС-кадрами, а мастер выполняет роль шлюза, то все карты будут видны в сети и их можно легко будет отлаживать дистанционно. В случае с IEEE1394 - надо будет делать преобразователь кадров.
По поводу "типа NEC uPD98441" - это в Элтех, он поставляет NEC.
И ведь кроме CMOS SERDES кто-то должен еще и с адресами разбираться, делать контроль линии и т.д.


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post

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

 


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


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