Если кому-то интересно, вот результаты небольшого теста скорости LPC2148 с включеным MAM и с выключеным.
Пояснения: DSBL - MAM выключен, FULL - включен, PART - только для последовательного доступа к коду. Проценты - проценты занятости процессора. Число - коэффициент "тормознутости" относительно работы из RAM.
Частота ядра 60МГц, переферия 15МГц.
Выполняется ядро ОС, 5 пользовательских потоков, 1 idle-поток. Переключение потоков раз в 1мс. Еще работает таймер, который прерывает программу раз в 62.5мкс и выполняет немножко кода.
В одном потоке выводится анимация на LCD через I2C (30 кадров/c), другие два суют в фифо данные примерно 25 раз в сек., четвертый эти данные вынимает (10 раз в сек.) и пишет в файл на MMC через SSP, пятый 20 раз в сек. мониторит стек (следит за переполнениями). Все они выводят отладку в UART. IDLE-поток заводит ядро в powersave.
Вот результат:
Код
RAM 12% 1
MAM DSBL 1clk ---
MAM DSBL 2clk 18% 1.50
MAM DSBL 3clk 23% 1.92
MAM DSBL 5clk 33% 2.75
MAM DSBL 7clk 40% 3.33
MAM FULL 1clk ---
MAM FULL 2clk 14% 1.17
MAM FULL 3clk 14% 1.17
MAM FULL 5clk 18% 1.50
MAM FULL 7clk 22% 1.83
MAM PART 1clk ---
MAM PART 2clk 15% 1.25
MAM PART 3clk 16% 1.33
MAM PART 5clk 18% 1.50
MAM PART 7clk 23% 1.92
Интересно посмотреть на результаты AT91SAM7 (на какую производителность стоит расчитывать?).