Flip-fl0p 4 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 4 минуты назад, turnip сказал: Во-первых эту задачу надо решить на начальном уровне, иначе может получится что потратил время на разработку сделал процессор, а потом в итоге получится, что он работать с внешней памятью не сможет.. Во-вторых я привык делать всё и стразу, без лишних телодвижений Привыкли делать все и сразу - забудьте работу с FPGA. С FPGA такой подход не работает. В FPGA нужно все делать поэтапно, обкладываясь тестами. Чтобы каждый "кирпичик" был отлажен в симуляторе. Ну ежели Вам интересен процесс ради процесса - то на кой ляд вы вообще сюда зашли и вместо того, чтобы прислушиваться к советам более опытных коллег стоите на своем ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба Хорошо, уговорили, раз так настаиваете - возьмите в качестве отправной точки планку памяти сколько желаете (4-8 Гбайт) для ноутбука DDR3 с питанием 1,35В. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
turnip 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 1 минуту назад, Yuri124 сказал: Хорошо, уговорили, раз так настаиваете - возьмите в качестве отправной точки планку памяти сколько желаете (4-8 Гбайт) для ноутбука DDR3 с питанием 1,35В. И как же её подключить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 (изменено) · Жалоба 10 minutes ago, turnip said: как же её подключить? в соответствии с даташитом... Если подробнее - берете готовый КИТ (вернее - документацию к нему) с установленной подобной памятью - и изучаете, как оно уже сделано там. Затем - в документации же разбираетесь, как на плате эта память подключена (разведена)... Если в будущем собираетесь разрабатывать свою плату, чтобы - не совсем уж с нуля. Изменено 22 сентября, 2021 пользователем Yuri124 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
turnip 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 25 минут назад, Yuri124 сказал: Если подробнее - берете готовый КИТ (вернее - документацию к нему) с установленной подобной памятью - и изучаете, как оно уже сделано там. Затем - в документации же разбираетесь, как на плате эта память подключена (разведена)... Если в будущем собираетесь разрабатывать свою плату, чтобы - не совсем уж с нуля. Опять же мне не нужно подключение напрямую к FPGA, я хочу сделать это через контроллер STM32, к FPGA(процессору) будет подключено несколько периферийных контроллеров STM32&Arduino. Поэтому мне нужно работать с памятью через STM32, в нём есть FSMC для работы с внешней памятью. Вот только он слабоват конечно, не может работать с DDR Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_su 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба В прикрепленном файле описание одной из демо плат на базе STM32. Схема с 56-й стр. На листе 5 схемы подключение FLASH памяти MX25LM51245GXDI00 и MT35XL512ABA1G12-0SIT на листе 11 подключение памяти S66WVC2M16ECLL-7010BLI и IS66WV1M16EBLL-55BLI Можно легко найти схемы для других моделей процессоров с подключением другой памяти. en.DM00421316.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 (изменено) · Жалоба 33 minutes ago, turnip said: нём есть FSMC для работы с внешней памятью поступаете аналогично - смотрите документацию (user manual) со схемой и списком деталюшек - и клепаете аналогично Например - STM32H743I-EVAL Evaluation board Но, возможно, по таким вопросам - лучше смогут посоветовать на страницах про работу с этими микроконтроллерами. Изменено 22 сентября, 2021 пользователем Yuri124 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 34 minutes ago, turnip said: Поэтому мне нужно работать с памятью через STM32, в нём есть FSMC для работы с внешней памятью. Вот только он слабоват конечно, не может работать с DDR Вы так и не рассказали, каким образом FPGA будет работать с памятью через STM32. Интерфейс-то какой? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 17 minutes ago, aaarrr said: каким образом FPGA будет работать с памятью через STM32. Интерфейс-то какой? присоединяюсь. По моим прикидкам - тот же FSMC быстрее всего и будет. Тогда - зачем костыль в виде STM32 (уже не раз об этом писали)... Можно и по SPI 4-битному, или по USB HS подключить, конечно, если нужно еще больше замедлить общение самодельного процессора с внешней памятью... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
turnip 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 3 часа назад, aaarrr сказал: Интерфейс-то какой? В FPGA сделаю устройство шины данных с выводом на пины. В STM32 сделаю loop сканирования этой шины и если есть сигнал записи или чтения, то соответственно будет записывать в память или получать из памяти и передавать в FPGA. Это если один МК, но надо продумать возможность подключения нескольких. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 13 minutes ago, turnip said: В STM32 сделаю loop сканирования этой шины а какая эта шина будет со стороны STM32? Это будет что-то самописное из GPIO или имеющийся на борту контроллер? Если самописная из GPIO - какая пропускная способность предполагается? 17 minutes ago, turnip said: В FPGA сделаю устройство шины данных с выводом на пины так а по-другому же никак... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
turnip 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 (изменено) · Жалоба 6 минут назад, Yuri124 сказал: Если самописная из GPIO - какая пропускная способность предполагается? Самописный loop(бесконечный цикл), будет брать значения пинов и обратно передавать. Пропускную способность надо тестировать на прототипе, а для этого ещё надо с чипами памяти определится и как с ними работать. Изменено 22 сентября, 2021 пользователем turnip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SII 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 5 minutes ago, Yuri124 said: а какая эта шина будет со стороны STM32? Это будет что-то самописное из GPIO или имеющийся на борту контроллер? Если самописная из GPIO - какая пропускная способность предполагается? так а по-другому же никак... Да как ни делай, скорость обмена будет в разы или в десятки раз ниже, чем при прямом подключении памяти к ПЛИС. Собственно, память всегда должна подключаться к процессору как можно более прямым образом, а раз предполагается сделать процессор на ПЛИС -- то к ней и надо цеплять память. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
turnip 0 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 1 минуту назад, SII сказал: Да как ни делай, скорость обмена будет в разы или в десятки раз ниже, чем при прямом подключении памяти к ПЛИС. Собственно, память всегда должна подключаться к процессору как можно более прямым образом, а раз предполагается сделать процессор на ПЛИС -- то к ней и надо цеплять память. Это понятно. Но я за скоростью передачи данных не гонюсь. Во-первых данные будут передаваться порционно по несколько килобайт, в самом FPGA есть память с ней процессор и будет работать, а в это же время шина данных будет получать\передавать следующую порцию данных и тд. Во-вторых видео контроллер например тоже на STM32 будет и ему проще читать свою память и выдавать сигналы на монитор, так же и контроллер памяти напрямую будет работать с внешними запоминающими устройствами, всё это реализовать на одной FPGA с нужными характеристиками не реально. Поэтому в FPGA будет только логика вычислений, выполнения программ, ну и приём передача данных через шину. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Yuri124 1 22 сентября, 2021 Опубликовано 22 сентября, 2021 · Жалоба 12 minutes ago, SII said: скорость обмена будет в разы или в десятки раз ниже, чем при прямом подключении памяти к ПЛИС так я и пытаюсь это донести до ТС - чтобы если уж он в этом не доверяет опытным отметившимся в теме разработчикам на ПЛИС (себя к таковым не отношу) - то хотя бы путем собственных оценок. Передача данных и выбор программного кода посредством "ножек процессора" STM32 в качестве обычного GPIO - это за гранью моего понимания целесообразности сего действа. Если даже и делать этот костыль из STM32 - то у него на борту есть же гораздо более скоростной интерфейс, к которому при необходимости можно и DMA прикрутить... А в FPGA сделать кэш в его внутренней памяти... [но это - для поиграться на начальном этапе, чтобы потом всё же сделать выводы и выбросить этот костыль] Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться