Сейчас в DsDos чтение ROM - 80т на байт. а классический цикл - 61 такт на байт. Тело цикла - всего 46 тактов на байт, и если читать по 4 байта, то будет 50 тактов на байт. Итого можно ускорить в 1.3 раз просто и в 1.6 раза - потеряв компактность кода (ну как потеряв: лишние 27 байт; для f3xx не желательно, но можно по страницам распихать).
На самом деле многое будет работать пропорционально быстрее. Для Ориона файл на 8 кб уже большой. Какой-нибудь Kort$ на 32 кб грузится целую секунду. Если процедура чтения ROM у Вас универсальная и используется везде, то есть не плохая мотивания оптимизировать её по-максимуму.
Конечно, 1.3 раза не много - но только потому, что обычное чтение ПЗУ не быстрое (тело 46 тактов). А если читается напрямую "флэш-диск" или Ваш быстрый RAM7, где тело цикла 19 тактов? Тут терять 34 такта на организацию цикла не хорошо...
Не, тогда как раз придётся подключаться к системной шине. А мне пока боязно. "Флэш-диск" на F5 этого не требует, хотя по скорости оказывается не хуже (при пробросе только CS ППА F5).
Если уж подключаться к шине - то как сказал LeoN65816, вместо ППА F5. Тогда будет 100% рабочий на любой частоте Ориона большой ROM-диск (с умным Wait выше 5 МГц) + возможноть подключения современной переферии. Уж очень симпатичный вариант...
Ну если старый софт работать будет - значит формально Орион. Только видеосистема на ПЛИС - совсем уже не орион в плане простоты...





Ответить с цитированием