реклама на сайте
подробности

 
 
> быстрый(простой) интерфейс STM32 F0 (F1) с внешней RAM, как добавить 32 или 64 килобайта RAM к простому(дешевому) STM32
Ruslan1
сообщение Jul 9 2015, 19:20
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Здравствуйте,

Есть задача, которая требует активной работы с большим объемом данных (FFT по массиву 32 килобайта).
Сейчас работаю с PIC24, к которому подцепил последовательную SRAM по SPI интерфейсу.
Компилятор позволяет описать эту память, и далее работать с расположенными в ней данными как с внутренней памятью (только медленнее, но оптимизирован доступ к 1,2,4-байтным данным). Это всего лишь вызов моих функций общения с внешней RAM, то есть могу вставить не SPI a любой другой интерфейс.

Хочу перейти на STM32 F0 или F1: при прочих равных у них, по сравнению с PIC24, больше внутреннего RAM и меньше цена, да и 12-бит АЦП везде, а не иногда как это в PIC (мне нужно не меньше чем 12 бит).

Пока что вопросы вот какие:
1. Есть ли возможность прицепить внешнее RAM объемом до 64 кБайт к младшим моделям и сделать эту память прозрачной на уровне компилятора для процедур записи-чтения? То есть я пишу A = Im[i]*Re[i], а компилятор сам поймет что нужно достать 4-байтовые величины из внешней SPI памяти и вставить обращение к нужным подпрограммам.
2. Как еще можно подцепить память? взять 4-битную или 8-битную? какие механизмы быстрого доступа есть в STM32? например, может есть внешняя шина адреса-данных для параллельной SRAM?
3. Что-нибудь еще для подключения внешней памяти, специфическое для STM32 ? Например, вижу недорогие модели с RAM 16 к, вероятно смогу что-то соптимизировать для минимизации обращений во внешнее RAM. Ну и какое-то DMA присутствеут, может поможет.

Сильным стимулом к переходу от 16-битного PIC24 на 32-битный STM32 будет, если скорость обработки возможно увеличить ну хоть в несколько раз. Сейчас у меня обработка FFT 4096 точек в формате плавающей запятой ординарной точности занимает около 20 секунд (благодаря внешней SPI RAM памяти, внутренняя RAM всего 2к). Чего можно ожидать от STMF0 ? Я вижу выигрыш засчет 32-битного ALU. Ну, тактовую от 32 МГц до 48 МГц поднять могу (30% выигрыш). надеюсь на оптимизацию засчет того что внутренняя RAM может быть больше. Что еще?

Ну и как вариант- взять F3 с RAM 40 килобайт и перестрелять всех зайцев с одним внутренним ОЗУ. А к нему можно цивильно внешнюю RAM подключить "на вырост"?
Еще обнаружил на дижикее STM32F411RCT6 - он почему-то дешевле чем F3, хотя имеет аж 128К ОЗУ, почему так?

Заранее спасибо за идеи и подсказки.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 16:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01482 секунд с 7
ELECTRONIX ©2004-2016