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