Цитата(yuri.job @ Jan 18 2018, 20:39)

а я тоже за эзернет. например, если хочется до 10 устройств иметь с неким общим, как бы расшареным, как бы дисковым пространством, и чтобы данные между модулями как то расшаривались, то самое простое это взять 11 портовый FE свич от того же марвела что нибудь из серии link street, и вкорячить в него 10 равноправных модулей. а 11й модуть будет
Если не зацикливаться на топологии "звезда" и применяемые на слэйвах МК имеют по два каких-то интерфейса (SPI или Ethernet или ещё какие), то топология "кольцо" возможно будет выгоднее.
Каждый слэйв, если пакет адресован не ему, пропускает его с одного своего порта на 2-й насквозь, если адресован ему - обрабатывает и формирует ответный пакет.
Если слот пуст, то конструкция разъёма должна обеспечивать замыкание контактов принадлежащих этим двум портам, чтобы сохранялась целостность кольца.
Такая топология:
а) экономична (нет никаких дополнительных МК, свичей и т.п.);
б) обеспечивает высокую скорость (нет "бутылочного горлышка" куда лезут все слэйвы);
в) программная реализация проще (есть только одно ПО, не нужно писать отдельное ПО для центрального МК);
г) арбитраж прост до безобразия.
Если автору так уж хочется именно разделяемой памяти, он может считать что в заголовке пакета (в поле адреса) передаётся стартовый адрес памяти, причём - старшие скажем 4 бита - это номер слэйва, младшие биты - адрес памяти внутри слэйва. Т.е. - вся "разделяемая память" - это набор одинаковых блоков памяти в каждом слэйве.
Тогда арбитраж получается сам собой: так как каждый кусок памяти находится в своём МК, а этот МК получает запросы на доступ к нему строго последовательно, то собственно и арбитража никакого более не нужно. И требования к памяти скромнее получаются - блок "разделяемой памяти" размазан по всем слэйвам.
Скорость передачи в такой топологии может быть очень высокой, сигнальных линий - минимум. Ну задержка доступа конечно будет побольше, но и в топологии "звезда" задержка доступа при одновременной работе всех слэйвов может быть ещё больше.
Конечно есть и недостатки: при вставленном в слот неисправном слэйве - всё кольцо рушится.

Чтобы восстановить связь, достаточно выдернуть слэйв из слота.
Хотя данная проблема решается дополнительным мультиплексором возле каждого слота.
Я бы конечно такую топологию строил на двух quad-SPI-портах (в любом МК есть SPI и не один), но если хочется можно и на 2-х Etherтуе, если они есть в МК.
При реализации на SPI можно обойтись без CS, сэкономив таким образом на пинах.