Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба Есть данные, поступающие по последовательному синхронному каналу т.е. две линии - Data + Clock. Частота клока - 6МГц. Нужно их задержать во времени. Задержка должна быть программно регулируемая, до 10мс с шагом около 0.1мс (точность шага не очень важна). Напрашивается проц с двумя SPI и общим внешним клоком и буфером меду ними - один принимает, пишет в память, другой из памяти читает и передает дальше. Десятка килобайт вроде хватит. Регулирование задержки можно организовать извне, любым способом (SPI, I2C, UART, да хоть кодом с 7-ми ножек). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 14 minutes ago, Allregia said: Нужно их задержать во времени. Задержать на физическом уровне? Т.е. канальный (протокольный) уровень остаётся тем же самым? Тогда почти любой доступный микроконтрллер с двумя аппаратными шинами SPI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 223 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба Лучше разумеется на ПЛИС, но если эти SPI смогут прикинуться "последовательным синхронным каналом", тогда проблем нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 4 minutes ago, Plain said: если эти SPI смогут прикинуться "последовательным синхронным каналом", Не понял - зачем тут чем-то "прикидываться"? Разве SPI в симплексе это не сихнронный последовательный канал на передачу или на прием? 6 minutes ago, haker_fox said: Задержать на физическом уровне? Т.е. канальный (протокольный) уровень остаётся тем же самым? Просто задержать во времени, ну типа оооочень длиииинный сдвиговый регистр. 7 minutes ago, Plain said: Лучше разумеется на ПЛИС Я сейчас в основном с МК и немного с CPLD, с FPGA работал не много, и то было лет 15 назад. Но очень может быть что FPGA с внешней памятью будет лучше, особенно в силу этого: P.S. Меня отвлекли когда писал начальное сообщение, забыл дописать самое главное - таких каналов восемь. Тоесть линий данных 8, а клок у всех общий. И задержку нади иметь индивидуально для каждого канала свою (то есть принимать/оправлять параллельным портом байт не получится, слишком много будет битовых перестановок). Поскольку МК с 16-ю SPI я не знаю, (да даже и с 8), то если не смотреть на FPGA, то вариант может быть восемь маленьких МК в соик8 с 2хSPI, но таких с десятком килобайт ОЗУ что-то не видно. Или четыре МК побольше, с 4-мя портами. Может надо было все это в разделе про МК? Хотя, публика везде так-же самая 🙂 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 20 minutes ago, Allregia said: FPGA с внешней памятью Памяти нужно 6*10^6 Гц * 0.01 с * 8 линий = 480 кбит. Можно и внутренней обойтись. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба Зачем тут процессор? Обработки данных же нет... Простейший автомат который пишет в кольцевой буфер и читает с неким сдвигом... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 7 minutes ago, MegaVolt said: Зачем тут процессор? Исключително из-за простоты реализации для не профи в fpga 😞 Боюсь в них запустаться уже на этапе выбора чипа. (usb byteblaster с али у меня есть) 18 minutes ago, aaarrr said: Можно и внутренней обойтись. Ну это наверное смотря какая fpga, хотелось бы уложиться долларов в 15-20, на десятке экземпляров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 20 минут назад, Allregia сказал: Исключително из-за простоты реализации для не профи в fpga 😞 Боюсь в них запустаться уже на этапе выбора чипа. (usb byteblaster с али у меня есть) Ну это наверное смотря какая fpga, хотелось бы уложиться долларов в 15-20, на десятке экземпляров. При выборе плис основным вопросом будет память. Т.е. на борту должно быть гарантированно 60 кБайт. Лучше чуть больше чтобы можно было ресурсы памяти поделить на 8 частей нацело. 8 Процев это уже может и не влезть в ПЛИС за 15-20$ Плюс процам нужна будет своя память... XC6SLX9 без процев должно хватить. На алике как раз отдают платки по 15-20$ Правда я не очень понял как данные о вермени сдвига попадают в ПЛИС. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 223 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 1 час назад, Allregia сказал: зачем тут чем-то "прикидываться"? Разве SPI в симплексе это не сихнронный последовательный канал на передачу или на прием? В теории да, но не у каждого первого МК реализовано именно так безусловно. Если надо подешевле, тогда самую примитивную ПЛИС и к ней параллельное ОЗУ. Для одноканального варианта, нужен МК с двумя SPI и последовательное ОЗУ SPI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 3 hours ago, MegaVolt said: 8 Процев это уже может и не влезть в ПЛИС за 15-20$ Плюс процам нужна будет своя память... Если уж делать на ПЛИС, зачем в них вообще процы засовывать?! 3 hours ago, MegaVolt said: Правда я не очень понял как данные о вермени сдвига попадают в ПЛИС. Да, поскольку я не профи в ПЛИС, этот момент мне пока тоже не очень понятен. Но если это время можно задавать в виде какой-то переменной, то как ее менять можно придумать (можно ведь на той-же ПЛИСке еще uart, или еще один SPI, для управления). В проце там это просто - один кольцевой буфер, куда пишет по ПДП приемный SPI и из которого читает (также по ПДП) передающий. Стартуем приемный, а затем через заданное время стартуем передающий. Надо изменить время - в прерывании по концу заполнения буфера приемником, выключаем передающий, ждем новое время, и включаем опять. Или если контроллер ПДП позволяет задать текущее значение счетчика - сразу устанавливаем для передатчика смещение. 2 hours ago, Plain said: Для одноканального варианта, нужен МК с двумя SPI и последовательное ОЗУ SPI. Не, это плохая идея - где третий SPI для этого ОЗУ взять? Да и проц тут довольно шустрый понадобится, чтобы без ПДА читать из одного порта, писать в другой, потом из второго читать и писать в третий. Тут проц с памятью нужен, типа STM32G050F6 TSSOP20. По деньгам 8шт нормально, хо как-то не очень красиво. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 49 минут назад, Allregia сказал: Если уж делать на ПЛИС, зачем в них вообще процы засовывать?! Похоже я не правильно вас понял когда вы сказали что проц для тех кто хорошо плис не знает... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 38 minutes ago, MegaVolt said: Похоже я не правильно вас понял когда вы сказали что проц для тех кто хорошо плис не знает... Так я же не имел ввиду в ПЛИСку ядро проца засовывать, я имел ввиду какой-нибудь PIC или STM32, или чего похожее. Но, судя по всему, придется fpga углубленнее изучать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 223 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 42 минуты назад, Allregia сказал: придется fpga углубленнее изучать Изучать там немного, но вот может быть проблемой, что корпуса только BGA, поэтому и советуют готовые модули брать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 2 hours ago, Plain said: что корпуса только BGA, Разве? ICE40UP5K-SG48I в QFN-48 за $9 не подойдет? Памяти вроде больше мегабита. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xvr 12 17 ноября, 2022 Опубликовано 17 ноября, 2022 · Жалоба 51 minutes ago, Allregia said: ICE40UP5K-SG48I в QFN-48 за $9 не подойдет? А где ТС её брать будет? По ссылке '0 in Stock'. Ну и по ресурсам она впритык (хотя это самое простое - сделать схему и попробовать отсинтезировать - синтезатор сам скажет, подойдёт или нет) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться