|
Много устройств на одной SPI шине |
|
|
|
 |
Ответов
|
Nov 10 2014, 15:59
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
Цитата(Pasha_a13 @ Nov 10 2014, 18:43)  А вообще можете подсказать какие могут быть подводные камни в подобных решениях как у меня? Да никаких особо не вижу, за исключением того, что результат от первого контроллера вернется в процессор значительно позже. Получается, что для контроллера в мастере нужно включить некий режим, при котором у него разрядность данных будет равна 25*<разрядность одного контроллера>, причем нужно еще указать, что поток состоит из 25 частей, и каждая попадет в разный слейв. Сомневаюсь, что такой режим там есть...
|
|
|
|
|
Nov 10 2014, 18:56
|
Частый гость
 
Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244

|
Цитата(vitan @ Nov 10 2014, 19:59)  Да никаких особо не вижу, за исключением того, что результат от первого контроллера вернется в процессор значительно позже. Получается, что для контроллера в мастере нужно включить некий режим, при котором у него разрядность данных будет равна 25*<разрядность одного контроллера>, причем нужно еще указать, что поток состоит из 25 частей, и каждая попадет в разный слейв. Сомневаюсь, что такой режим там есть... такого режима там действительно нет, это все будет делаться программно. Цитата(MiklPolikov @ Nov 10 2014, 20:36)  Что бы не гадать на кофейной гуще, правду ли я написал про гибель тактового сигнала, возьмите провод 50см, повесьте по его длинне несколько конденсаторов, имитирующих суммарную ёмкость входов 30 процессоров, подайте тактовый сигнал 12МГц, и посмотрите осциллографом, что получилось. Ставлю на то, что там будет чистая синусоида и биения. Вы совершенно правы. Я сегодня уже нагрузил небольшой емкостью (меньше чем 30 процессоров) и уже получилась почти синусоида. Вот подобные подводные камни меня и интересовали. Надеюсь получиться с ними справиться используя дополнительные буферы. Цитата(Plain @ Nov 10 2014, 21:36)  Достаточно регулярных буферов на тактовый и выборку, а тактовый и выход хвоста вернуть второму (ведомому) модулю мастера одинаковыми линиями, и такой "колбасой" можно хоть экватор обогнуть на 1 ГГц. А что имееться ввиду под "регулярным" буфером? Я читал что именно так делать правильно, возвращать на другой SPI вместе с тактовой частотой, однако , к сожалению, у меня на мастере выделяется всего один SPI на всю цепочку контроллеров. Есть ли какие-то методы чтобы засинхронизировать входные в мастер данные (MISO) с его исходящей тактовой частотой?
|
|
|
|
|
Nov 11 2014, 12:12
|
Частый гость
 
Группа: Участник
Сообщений: 166
Регистрация: 8-09-09
Из: Украина
Пользователь №: 52 244

|
Цитата(Plain @ Nov 11 2014, 05:34)  Тогда тяните все тактовые и данные "звездой", т.е. линиями с одинаковой задержкой. Так данные идут цепочкой, как же я их сделаю звездой.... По поводу тактовых звездой я думал, но неудобно очень получается.. Цитата(Maverick @ Nov 11 2014, 15:47)  что за процессор будет собирать данные с 25-30 SPI ? и на какой тактовой частоте он будет работать? разрядность данных у SPI одинаковая?
в принципе я не видел процессора с таким количеством SPI - Вы будете делать SPI програмно, правильно понял Вашу фразу? Процессоры сами не поддерживают на хардварном уровне этой самой цепочки, потому разгребать всю эту последовательность будет уже софт...задача слейва пропускать через себя посылку, в которой содержится информация для 30 процессоров, вставляя свои данные (либо извлекая их) из соответствующего участка этой посылки. Т.е. здесь SPI будет работать программно-аппаратно. Разрядность данных у всех процессоров одинаковая. Главный процессор будет стоять более шустрый чем слейвы, он еще пока выбирается. Смысл в том чтобы он слал не частые небольшие пакеты по SPI, а редкие но с большим кол-вом данных сразу(сразу всем слейвам).
|
|
|
|
Сообщений в этой теме
Pasha_a13 Много устройств на одной SPI шине Nov 10 2014, 11:10 vitan Цитата(Pasha_a13 @ Nov 10 2014, 15:10) ка... Nov 10 2014, 12:31 iosifk Цитата(Pasha_a13 @ Nov 10 2014, 15:10) До... Nov 10 2014, 12:38 Pasha_a13 Да, микроконтроллеры cortex M4 вполне нормально вы... Nov 10 2014, 13:01 vitan Цитата(Pasha_a13 @ Nov 10 2014, 17:01) А ... Nov 10 2014, 13:38  Pasha_a13 Цитата(vitan @ Nov 10 2014, 17:38) Выбор ... Nov 10 2014, 13:52   vitan Цитата(Pasha_a13 @ Nov 10 2014, 17:52) Пл... Nov 10 2014, 14:00  Pasha_a13 Каким образом правильно произвести моделирование? Nov 10 2014, 13:55     Lmx2315 QUOTE (Pasha_a13 @ Nov 11 2014, 15:04) Та... Nov 11 2014, 12:13      Pasha_a13 Цитата(Lmx2315 @ Nov 11 2014, 16:13) ..из... Nov 11 2014, 12:21     Xenia Почему бы не использовать дополнительные микросхем... Nov 11 2014, 12:22      Pasha_a13 Цитата(Xenia @ Nov 11 2014, 16:22) Почему... Nov 11 2014, 12:26       Xenia Цитата(Pasha_a13 @ Nov 11 2014, 15:26) ну... Nov 11 2014, 12:39        Maverick может стоит взять какую-то STM32 (для примера) c 6... Nov 11 2014, 14:56     Plain Цитата(Pasha_a13 @ Nov 11 2014, 15:12) Ци... Nov 11 2014, 17:15   Maverick Цитата(Pasha_a13 @ Nov 10 2014, 20:56) та... Nov 11 2014, 11:47 Maverick Цитата(Pasha_a13 @ Nov 10 2014, 13:10) До... Nov 10 2014, 14:45 Xenia Цитата(Pasha_a13 @ Nov 10 2014, 14:10) Ра... Nov 10 2014, 14:47 Pasha_a13 Цитата(Xenia @ Nov 10 2014, 18:47) А коль... Nov 10 2014, 14:52  Maverick Цитата(Pasha_a13 @ Nov 10 2014, 16:52) Да... Nov 10 2014, 14:57   Pasha_a13 Цитата(Maverick @ Nov 10 2014, 18:57) ТЗ ... Nov 10 2014, 15:04   MiklPolikov Я бы с такой схемой не стал связываться. Можно уйт... Nov 10 2014, 15:04    Pasha_a13 Цитата(MiklPolikov @ Nov 10 2014, 19:04) ... Nov 10 2014, 15:10     MiklPolikov Цитата(Pasha_a13 @ Nov 10 2014, 19:10) У ... Nov 10 2014, 16:36 Plain Достаточно регулярных буферов на тактовый и выборк... Nov 10 2014, 17:36 vitan А как насчет мультиплексоров? Судя по буферам внеш... Nov 11 2014, 14:06
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|