Что выбрать для разработки SPI на 16 МГц?
-
AlexandrRa
- Открыл глаза
- Сообщения: 75
- Зарегистрирован: Чт ноя 26, 2020 13:19:49
Что выбрать для разработки SPI на 16 МГц?
Доброго времени суток коты и кошечки, а также котята
Есть проблема выбора МК или ПЛИС для разработки конвертора UART/SPI. SPI производит обмен на скорости 16 МГц. Есть у ког какие идеи? Или может готовые схемки?
Re: Что выбрать для разработки SPI на 16 МГц?
а UART сможет на 16 МГц?
ПЛИС, наверное, эффективнее всего. Но есть ли они (если в России)?
ПЛИС, наверное, эффективнее всего. Но есть ли они (если в России)?
Re: Что выбрать для разработки SPI на 16 МГц?
[uquote="AlexandrRa",url="/forum/viewtopic.php?p=4612436#p4612436"]Есть проблема выбора МК или ПЛИС для разработки конвертора UART/SPI. SPI производит обмен на скорости 16 МГц. Есть у ког какие идеи? Или может готовые схемки?[/uquote]
идеи?
ну можно собрать на простой логике))
для примера я вот собрал конвертор Ethernet/SPI на простой логике... аналогично можно сделать конвертора UART/SPI на простой логике...
надо только подумать...

идеи?
ну можно собрать на простой логике))
для примера я вот собрал конвертор Ethernet/SPI на простой логике... аналогично можно сделать конвертора UART/SPI на простой логике...
надо только подумать...
-
AlexandrRa
- Открыл глаза
- Сообщения: 75
- Зарегистрирован: Чт ноя 26, 2020 13:19:49
Re: Что выбрать для разработки SPI на 16 МГц?
Martian, UART вообще пофиг скорость. Проще было бы принять на МК с UART и выдать то же самое, но по SPI. МК с SPI 16 МГц найти чёт не могу. Гугл флэш память с SPI на 16 МГц мне постоянно пихает . Подумал, может кто уже делал на чём ни будь что-нибудь подобное...
Добавлено after 4 minutes 36 seconds:
roman.com, на простой логике... Проще уж ПЛИС какую ни будь воткнуть. Проблема ещё в том, что нужно только принять по UART и выдать/принять по SPI и ответ назад в UART. Т. е. нужно буквально 6 ног. Ну и пару на светодиоды, но не обязательно.
Добавлено after 4 minutes 36 seconds:
roman.com, на простой логике... Проще уж ПЛИС какую ни будь воткнуть. Проблема ещё в том, что нужно только принять по UART и выдать/принять по SPI и ответ назад в UART. Т. е. нужно буквально 6 ног. Ну и пару на светодиоды, но не обязательно.
Re: Что выбрать для разработки SPI на 16 МГц?
раз пофиг скорость, значит, это нестандартный UART, неизвестные протоколы, задача не имеет конкретного решения, неизвестно, что искать.
ну, по запросу fpga uart to spi вполне нормально гугл выдаёт у меня. ни одной флэшки. Навпример https://github.com/FaresMehanna/UART-to-SPI-bridge
ну, по запросу fpga uart to spi вполне нормально гугл выдаёт у меня. ни одной флэшки. Навпример https://github.com/FaresMehanna/UART-to-SPI-bridge
-
AlexandrRa
- Открыл глаза
- Сообщения: 75
- Зарегистрирован: Чт ноя 26, 2020 13:19:49
Re: Что выбрать для разработки SPI на 16 МГц?
Martian, не совсем то, точнее вообще не то. Накодить проблем нет, проблема железку правильно подобрать. Например если взять STM32, подключить к ней UART, а SPI сделать при помощи ногадрыга. Можно ли на 16 МГц этот SPI забубенить? Там ведь при разгоне, вроде начинает этот ногадрыг себя некорректно вести. Типа если сделать цикл поднять ногу - опустить ногу, осциллографом хорошо видно, что фронты у него дрожат очень сильно.
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1905
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Что выбрать для разработки SPI на 16 МГц?
[uquote="AlexandrRa",url="/forum/viewtopic.php?p=4612743#p4612743"]... а SPI сделать при помощи ногадрыга. Можно ли на 16 МГц этот SPI забубенить? ...[/uquote]
AlexandrRa, на STM32 (почти) все используем hardware SPI. Разница между AVR и STM32 заключается даже в способе распределения ресурсов МК. На "бедном" распространенном STM32F103C8T6, китайском: по цене чашки кофе, параметры под запрошенную задачу выполняются. Напр. изпользуйте GD32, будет x2. Без разгона. С разгона - так же повезло. А есть STM32x3хх, есть 4xx, 7xx ...
,

AlexandrRa, на STM32 (почти) все используем hardware SPI. Разница между AVR и STM32 заключается даже в способе распределения ресурсов МК. На "бедном" распространенном STM32F103C8T6, китайском: по цене чашки кофе, параметры под запрошенную задачу выполняются. Напр. изпользуйте GD32, будет x2. Без разгона. С разгона - так же повезло. А есть STM32x3хх, есть 4xx, 7xx ...
-
AlexandrRa
- Открыл глаза
- Сообщения: 75
- Зарегистрирован: Чт ноя 26, 2020 13:19:49
Re: Что выбрать для разработки SPI на 16 МГц?
veso74, 18 Мгц это хорошо, но теперь если посмотреть (М-3 например) в асме, понять ногу - 2 такта, опустить ещё 2 такта. Т. е. из 18 МГц получаем 9 (если не меньше). Аппаратное подключение SPI в GD даёт максимум 8 МГц (как и в STM). Так что походу остаётся ПЛИС использовать... Просто использовать ПЛИС как конвертор, это как цифровой микроскоп использовать для забивания гвоздей. Умножение частоты, или разгон через ФАПЧ приводит к нестабильности, о чём я и писал выше.
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1905
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Что выбрать для разработки SPI на 16 МГц?
Цифры приведены после учета этого. Прескалера - 2, тактовая частота - 72 MHz.
Там написано: 18 MBit/s.
Там написано: 18 MBit/s.
Последний раз редактировалось veso74 Пт авг 09, 2024 13:32:48, всего редактировалось 2 раза.
-
AlexandrRa
- Открыл глаза
- Сообщения: 75
- Зарегистрирован: Чт ноя 26, 2020 13:19:49
Re: Что выбрать для разработки SPI на 16 МГц?
О, нашёл. C8051F320-GQR. И ФАПЧ у них стабильный. Не раз пользовался. Забыл про SiliconLabs. Правда цена кусается...
Re: Что выбрать для разработки SPI на 16 МГц?
ТС, похоже, просто нравится обсуждать эту тему. Ему болгарский товарищ уже всё даже в цифрах расписал, на STM 4 и 7 намекнул, но нет, нужно стоять на своём, искать какую-то малоизвестную "дичь", чтобы, видимо, потом создать ещё одну тему "А почему C8051F320-GQR не работает так, как хочется" 
Последний раз редактировалось smacorp Сб авг 10, 2024 01:24:58, всего редактировалось 2 раза.
Платы для HLDI - установки лазерной засветки фоторезиста.
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (5 цветов).
Заказ печатных плат - pcbsmac@gmail.com
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (5 цветов).
Заказ печатных плат - pcbsmac@gmail.com
- >TEHb<
- Друг Кота
- Сообщения: 5728
- Зарегистрирован: Ср ноя 11, 2009 17:19:30
- Откуда: Воронеж
- Контактная информация:
Re: Что выбрать для разработки SPI на 16 МГц?
Где такое написано? модель 103 18 МГц, 334 модель уже может до 24 МГц как и 303, а 410, например, уже заявлена до скорости в 50 МГц!AlexandrRa писал(а):Аппаратное подключение SPI в GD даёт максимум 8 МГц (как и в STM).
"Привет!" - соврал он.
Re: Что выбрать для разработки SPI на 16 МГц?
сделал простой ногодрыг... всё работает идеально... ничего не дрожит))AlexandrRa писал(а):при разгоне, вроде начинает этот ногадрыг себя некорректно вести. Типа если сделать цикл поднять ногу - опустить ногу, осциллографом хорошо видно, что фронты у него дрожат очень сильно.
получаем 10 МГц...
подключаем второй МК... добавляем логику... получаем 20 МГц...
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1905
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Что выбрать для разработки SPI на 16 МГц?
Пробую и тестирую новый для меня тип MK CH32V. В младших подтипах читаем из документации (при Fhs 48 MHz):
Код: Выделить всё
Table 3-22 SPI interface characteristics
fSCK/tSCK SPI clock frequency: Master mode 24 MHz, Slave mode 24 MHzRe: Что выбрать для разработки SPI на 16 МГц?
У старого 15-летней давности PIC18F25K20 при тактовой 16 MHz и включенном PLL частота SPI тоже была 16.
С тех пор даже многие младшие PIC16 так умеют.
https://pikabu.ru/story/nemnogo_razgona_5307131
С тех пор даже многие младшие PIC16 так умеют.
https://pikabu.ru/story/nemnogo_razgona_5307131
>(*.*)<
Котище огромно, ушасто, пушисто, глазасто, зубасто, колючелапо и мявай. (c)
Котище огромно, ушасто, пушисто, глазасто, зубасто, колючелапо и мявай. (c)
- Eats
- Потрогал лапой паяльник
- Сообщения: 309
- Зарегистрирован: Сб фев 18, 2023 21:51:01
- Откуда: Санкт-Петербург
Re: Что выбрать для разработки SPI на 16 МГц?
[uquote="AlexandrRa",url="/forum/viewtopic.php?p=4612436#p4612436"]Есть проблема выбора МК или ПЛИС для разработки конвертора UART/SPI. SPI производит обмен на скорости 16 МГц. Есть у ког какие идеи? Или может готовые схемки?[/uquote] Я делал (и сделал) SPI на 100-МГцовом 32-разрядном процессоре (не называю, ибо не понравится ни цена, ни наличие на рынке), но в его системе команд есть команда, преобразующая параллельный формат в последовательный. Без неё тяжко. Про UART не говорю, это детские игрушки. А вот с SPI пришлось повозиться: имевшиеся у меня микросхемы ОЗУ с этим интерфейсом не могли работать непрерывно более нескольких минут, поэтому пришлось поднимать скорость обмена (ровно 16 из сотни не получить, но мне по техзаданию хватило и 12.5, хотя я разгонялся и до 25), чтобы между обращениями к странице памяти образовывались необходимые для "отдыха" микросхемы паузы.
Но это всё же была реализация по принципу "из пушки по воробьям". Из дешёвого же и доступного в некоторых контроллерах AVR тоже есть блок, преобразующий параллельный формат в последовательный, так что ЛГБТ-контроллер (lgt8f328), запущенный на 32 МГцах, должен бы обеспечить работу SPI на 16 МГцах, но только на протяжении 8 тактовых импульсов. Далее понадобится небольшая пауза на перезагрузку регистров, но формально это всё-таки будут 16 МГц. Но я на нём не пробовал, да у меня и программатора-то к нему нет. Само собой разумеется, что 32М на 9600 нацело не делится (100М, кстати, тоже), но там погрешность будет только в пятом знаке, так что на неё можно не обращать внимания.
Но это всё же была реализация по принципу "из пушки по воробьям". Из дешёвого же и доступного в некоторых контроллерах AVR тоже есть блок, преобразующий параллельный формат в последовательный, так что ЛГБТ-контроллер (lgt8f328), запущенный на 32 МГцах, должен бы обеспечить работу SPI на 16 МГцах, но только на протяжении 8 тактовых импульсов. Далее понадобится небольшая пауза на перезагрузку регистров, но формально это всё-таки будут 16 МГц. Но я на нём не пробовал, да у меня и программатора-то к нему нет. Само собой разумеется, что 32М на 9600 нацело не делится (100М, кстати, тоже), но там погрешность будет только в пятом знаке, так что на неё можно не обращать внимания.
Всего доброго.
Евгений.
Евгений.