Вам не нужен MMU для внешней оперативной памяти, определяющий фактор, если он вам нужен, - это совершенно отдельная проблема, а не просто больше места. Если вы программируете прямо на металл, это может фактически облегчить вашу жизнь без MMU. Я также хотел бы отметить, что MMU практически никогда не является внешним компонентом, а скорее на кристалле SoC.
Во многих семействах можно найти SoC ARM, которые позволяют использовать внешнюю память от ARM7, например, серии NXP LPC2212, не говоря о своем лучшем, просто первая ARM7 SoC, которая появилась в Google с интерфейсом внешней памяти, есть много вариантов ,
Я бы уделил больше внимания возможностям различных ядер в семействе ARM, поскольку почти все из них можно найти в SoC с внешними контроллерами памяти.
Теперь вопрос о том, какой тип памяти вам нужен и как он работает, зависит от выбранного вами SoC и от того, какую память поддерживает внешний контроллер памяти. Например, подключенный к ARM7 SoC i поддерживает внешнюю SRAM, а также флэш-диски и диски и поддерживает до 4 банков по 16 МБ, поэтому вы можете подключить к ней внешнюю флэш-память и SRAM одновременно.
Вы можете использовать отдельные ОЗУ и флэш-микросхемы. Есть также пакеты, называемые MCP (Multi Chip Package), которые могут включать в себя как флэш-память, так и оперативную память в одном пакете. То, как вы выбираете эти устройства, зависит от многих факторов, вам нужно быть более конкретным в отношении вашего приложения.
Насколько легко это сделать, зависит от скорости, которая вам нужна. Большинство контроллеров внешней памяти имеют программируемые тактовые частоты. Тактовые частоты интерфейса памяти могут быть очень высокими, по крайней мере, 10 МГц и, вероятно, намного выше. Короче говоря, вы, скорее всего, не макетируете что-то подобное, вам нужно спроектировать печатную плату и обратить особое внимание на проблемы целостности сигналов для этих линий.
Лучше всего выбрать ядро, с которым вы хотите играть, и найти одну из множества плат для разработки с внешней памятью.