Столкнулся с необходимостью объединить платы высокоскоростной шиной.
Параметры задачи:
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мм).
Не подскажите другое более компактное и эффективное решение для данной задачи, перерыв инет - что-то не заметил готовых вариантов вообще.
Достаточно названий протоколов или микросхем.