|
Десять УАРТов, гулять так гулять |
|
|
|
Dec 13 2017, 10:46
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(pvman @ Dec 13 2017, 12:41)  Для одной задачи нужно собрать девайс с 10 уартами.
Понадобится как минимум два контроллера STM32, у которых по 6 уартов на борту. Как осуществить обмен между ними? Есть ли грамотные решения для быстрого доступа к данным другого мк?
скорость по уартам - 250килобит/с Вопросов достаточно... 10 УАРТов, и что данные так и прут потоком? Тогда применяя 2 процессора - считаем. С одной стороны на каждый подвешено 5 УАРТов и надо данные от них получать. А с другой стороны надо получать еще столько же данных из второго процессора и еще столько же туда отдать. Ну это если алгоритм требует полной картины. И при этом, данные от входов могут идти потоком, но данные между процессорами потребуют либо аппаратных сигналов, стробирующих кадры, либо при программной синхронизации потребуется протокол передачи данных. Сборка данных в кадры и разборка полученных данных. Да еще метки времени, наверняка и они понадобятся.... И мне кажется, что весь процессор на это и рухнет... Или с такой скоростью надо опрашивать датчики, чтобы выловить изменения каких-то данных в потоке? Вот тогда здесь другие правила игры. Тогда можно сделать несколько дешевых контроллеров, чтобы они обрабатывали входные потоки на предмет изменений. И уже сжатый поток передавать на обработку... Вот почему сказано "STM32"? Только потому что у него есть УАРТы? Типа это "Гайка М3".... Почему бы не нарисовать алгоритм в виде блок-схемы. На нем указать потоки данных, объемы памяти, требуемые для обмена. И только потом из алгоритма рисовать блок-схему "вычислителя"... И в варианте с отдельным контроллером в ПЛИС или с гроздью 8-ми битных контроллеров для обработки УАРТов... Так что скажете?
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Dec 13 2017, 11:55
|
Знающий
   
Группа: Участник
Сообщений: 688
Регистрация: 13-05-16
Пользователь №: 91 710

|
Цитата(pvman @ Dec 13 2017, 12:41)  Здравствуйте, коллеги! Для одной задачи нужно собрать девайс с 10 уартами... Чтобы получить толковые советы, вам придется раскрыть постановку задачи. Когда вся картина будет понята, тогда и можно будет предлагать решения. Сейчас слишком много неизвестных подробностей, которые кардинально могут все изменить...
Сообщение отредактировал @Ark - Dec 13 2017, 11:56
|
|
|
|
|
Dec 15 2017, 19:42
|
Местный
  
Группа: Свой
Сообщений: 327
Регистрация: 30-10-05
Пользователь №: 10 288

|
Цитата(pvman @ Dec 15 2017, 22:17)  MAX14830 не очень подходит, т.к. нет произвольного доступа к данным соседнего МК, придется городить протокол, не впишусь во временные рамки.. Протокол чего с чем? MAX14830 - это 4 UARTа на i2c/spi, никакого микроконтроллера, обрабатывайте что хотите и как хотите.
|
|
|
|
|
Dec 16 2017, 16:23
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(jcxz @ Dec 16 2017, 14:12)  Не нужен программатор. При отладке - загрузка через JTAG. И в состав программы включить функцию прошивки себя во внешнюю флешь. вот именно, пусть один мк программирует другие Цитата(jcxz @ Dec 16 2017, 14:12)  Написание/отладка/поддержка программы для одного МК будет на порядок проще чем то же самое для связки из двух МК, пускай даже одинаковых. если функции разделены, то два разных - не сложнее два одинаковых - проще в два раза десять одинаковых - проще в десять раз
|
|
|
|
|
Dec 17 2017, 08:28
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(skripach @ Dec 17 2017, 10:10)  У Renesas полно контроллеров имеющих 10 - 18 юартов, например. Посмотрите внимательней там. UART-ы там без FIFO, а у DMA всего 7-мь каналов. UART-ы разные по функциональности. Как вы с этим будете бороться?
|
|
|
|
|
Dec 17 2017, 09:30
|
■ ■ ■ ■
    
Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443

|
Цитата(AlexandrY @ Dec 17 2017, 11:28)  Посмотрите внимательней там. UART-ы там без FIFO, а у DMA всего 7-мь каналов. UART-ы разные по функциональности. Как вы с этим будете бороться? Я никак не буду, ТС просил 10 юартов я Renesas дал их ему.
--------------------
Делай что должен и будь что будет.
|
|
|
|
|
Dec 21 2017, 09:45
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 5-05-17
Пользователь №: 96 902

|
Цитата(pvman @ Dec 15 2017, 20:17)  Вариант с плис, возможно будет разумным решением, но я не соображаю в verilog. ( Можно решить эту задачу на плис не зная верилог. Собрать в плис (в гуях галочками) процессор (в некоторых ядро уже встроено) и всю периферию включить в процессор. Хоть 10, хоть 20 уартов, лишь бы мяса у плис хватило. И внешний процессор не нужен.
|
|
|
|
|
Dec 21 2017, 10:51
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 4-07-08
Из: Россия
Пользователь №: 38 751

|
Цитата(razrab83 @ Dec 21 2017, 12:45)  Можно решить эту задачу на плис не зная верилог. Собрать в плис (в гуях галочками) процессор (в некоторых ядро уже встроено) и всю периферию включить в процессор. Хоть 10, хоть 20 уартов, лишь бы мяса у плис хватило. И внешний процессор не нужен. сколько такая плис будет стоить? может там цена космос )
|
|
|
|
|
Dec 23 2017, 12:35
|
Профессионал
    
Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848

|
Цитата(pvman @ Dec 13 2017, 12:41)  (1) Здравствуйте, коллеги! Для одной задачи нужно собрать девайс с 10 уартами. . . . (2) скорость по уартам - 250килобит/с (1) Если есть хоть какая-то аналогия с коммутацией пакетов (тобишь свичем) То предлагаю рассмотреть такую структуру: - канал UART входит на "контроллер канала" (по кол-ву каналов, преобразователь "тупого" UART во внутрисхемную "пакетную" скоростную шину) - мощный процессор для обработки пакетов по внутрисхемной шине. (2) свичи как-то умудряются работать с 100 Мбит и более
|
|
|
|
|
Dec 23 2017, 14:50
|

Voltage Control Output
     
Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436

|
Цитата(pvman @ Dec 15 2017, 22:17)  Вариант с плис, возможно будет разумным решением, но я не соображаю в verilog. ( Да он там и не нужен. Достаточно знать схемотехнику UART. После этого можно просто нарисовать схемотехнику: Параллельный порт МК - 10 UART. В режиме Shematic САПР для ПЛИС сами проверят схему, оптимизируют и сгенерируют код прошивки без участия HDL (аппаратных языков программирования) типа VHDL или Verilog. Цитата(pvman @ Dec 21 2017, 13:51)  сколько такая плис будет стоить? может там цена космос ) Если наша - дорого (это FPGA Intel(Altera) в нашем корпусе). Если импортная - то это CPLD от Xilinx, Altera или Lattice, стоят недорого  Вся прелесть в том, что Вы можете начать проект на CPLD уже сейчас на бесплатном ПО от производителя, а затем определиться с минимально-достаточным кристаллом и корпусом
--------------------
Слово - не воробей, вылетит - не пощадит
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|