Никто не успел заметить - а я успел доработать. Теперь кеш (теперь 4 Кб) обновляется не только при записи, но и при чтении.
Сейчас еще более "агрессивный" вариант попробую.

---------- Post added at 21:50 ---------- Previous post was at 21:35 ----------

Время прогона оптимизированного эксисайзера для SDRAM 144/CPU 48:
без кеша - 9:30
с кешем (первый вариант) - 9:10
Тут я подумал - WTF? Что ж такая низкая эффективность?
После вышеописанной доработки
с кешем (второй вариант) - 8:20
Это уже на что-то похоже.
Если не бояться кеш-промахов, то можно не начинать параллельно чтение из SDRAM (которое в случае кеш-попадания долго завершать), а сначала попробовать найти в кеше и только если там нет тогда читать из SDRAM. При кеш-промахе будем терять 2 такта, но, как известно из литературы, кеш-промахи д.б. не очень частыми (это если не делать как я в первом варианте).
с кешем ("агрессивный вариант") - 7:10
Вот это я понимаю! У меня на стареньком атлоне оригинальный эксисайзер только чуть быстрее в emu работал

---------- Post added at 22:17 ---------- Previous post was at 21:50 ----------

Но все равно пока что кеш туповатый, можно и сам контроллер улучшить и снаружи.