Nie potrzebujesz MMU dla zewnętrznej pamięci RAM, decydujący czynnik, jeśli potrzebujesz, jest zupełnie odrębnym zagadnieniem niż po prostu potrzeba więcej miejsca. Jeśli kodowałeś bezpośrednio do metalu, może ci to ułatwić życie bez posiadania MMU. Chciałbym również zauważyć, że MMU praktycznie nigdy nie jest zewnętrznym komponentem, a raczej kością SoC.
Możesz znaleźć ARM SoCs w wielu rodzinach, które pozwalają na pamięć zewnętrzną od ARM7 w górę, na przykład NXP LPC2212 Series nie mówi, że jest najlepszy, tylko pierwszy ARM7 SoC, który pojawił się w Google z interfejsem pamięci zewnętrznej, istnieje wiele opcji .
Zwróciłbym większą uwagę na funkcje różnych rdzeni w rodzinach ARM, ponieważ prawie wszystkie z nich można znaleźć w SoC z zewnętrznymi kontrolerami pamięci.
Teraz, jaki typ pamięci potrzebujesz i jak ją uruchomić, zależy to od wybranego SoC i jakiej pamięci obsługuje zewnętrzny kontroler pamięci. Na przykład podłączony ARM7 SoC i obsługuje zewnętrzną pamięć SRAM oraz pamięć flash i ROM i obsługuje do 4 banków 16 MB, dzięki czemu można podłączyć do niej zewnętrzną pamięć flash i pamięć SRAM.
Możesz użyć oddzielnej pamięci RAM i pamięci flash. Istnieją również pakiety o nazwie MCP (Multi Chip Package), które mogą zawierać zarówno pamięć flash, jak i ram w 1 pakiecie. To, jak wybierzesz te urządzenia, zależy od wielu czynników, musisz dokładniej określić swoją aplikację.
To, jak łatwo jest to podłączyć, zależy od potrzebnej prędkości. Większość zewnętrznych kontrolerów pamięci ma programowalne częstotliwości zegara. Częstotliwości zegara interfejsu pamięci mogą być bardzo wysokie, co najmniej 10 MHz i prawdopodobnie znacznie wyższe. Krótko mówiąc, najprawdopodobniej coś takiego nie ma, musisz zaprojektować płytkę drukowaną i zwrócić szczególną uwagę na problemy z integralnością sygnału dla tych linii.
Najlepszym wyborem jest wybranie rdzenia, z którym chcesz grać, i znalezienie jednej z wielu dostępnych tam kart rozwoju z pamięcią zewnętrzną.