Именно "И", потому что тормозить проц приходится именно тогда, когда проц нуждается в пересылке данных, но в это же время идет выборка данных видеоконтроллером.
Вид для печати
Если память способна выдать данные за один такт процессора (РУ5 вполне это может на 3.5 мгц, на 7мгц - могут симмы) - то проблем возникнуть не может. Причина: когда процессор обращается к памяти, это обращение длится минимум два такта (чтение опкода). Один из этих тактов точно - видеопроцессорский, один - процессорский. Т.е. коллизий не бывает
Добавлено через 1 минуту
Схему магик-5 я уже выкладывал в теме "список отечественного спекки-железа". Если надо - выложу снова.
Схему турбирования нашел, попытаюсь (если время будет) сегодня вечером слегка очеловечить и выложить.
Что-то кто-то пытается все запутать...
Цитата:
2. Если применяется быстрое ОЗУ которое за один такт процессора может успеть выдать данные и CPU и видеоконтроллеру;
Цитата:
Надо читать "выдать данные или CPU или видеоконтроллеру".
Еще раз. Причина по которой нам приходится притормаживать процессор это разная длина машинного цикла для разных команд (3-4 такта). Следствие причины - проц не может работать синхронно с видеоконтроллером, переодически возникает ситуация при которой проц обращается к ОЗУ не в свое время. Притормаживать приходится только в системах в которых ОЗУ за такт процессора способно считать-записать только один байт (это классическая РУ5 с периодом обращения 280нс). Выход из ситуации применять память которая способна за такт процессора обрабатывать запрос и от процессора и от видеоконтроллера. Если считать схему видеоконтроллера неизменной, то при 3,5Мгц тактовой частоты процессора память должна работать на частоте 7Мгц, при 7Мгц частоты проца память должна работать на частоте 10,5Мгц.Цитата:
Именно "И", потому что тормозить проц приходится именно тогда, когда проц нуждается в пересылке данных, но в это же время идет выборка данных видеоконтроллером.
Да, быть может объясняю я не совсем понятно, но всё же попробую еще раз.
Неверно. Можно достичь равенства частоты памяти и ЦП. Это доказано в схеме Magic5 - компьютер собран на РУ5, при этом не используется ни сигнал Wait, ни замораживание тактовой частоты, ни прочие приемы "торможения" процессора. За одно прерывание имеем РОВНО 69888 тактов (312 строк - т.е. нормальный видеостандарт).
============================================
Мои изначальные утверждения:
1. Для полностью безваитовой работы в режиме 3.5 Мгц достаточно памяти, работающей на частоте 3.5 Мгц. Доказано разработчиками Magic5
2. Для полностью безваитовой работы в режиме 7 Мгц достаточно памяти, работающей на частоте 7 Мгц. Следует из (1), доказано моими доработками Magic5 5-летней давности.
Объясняю утверждение №1 (тактовая частота процессора 3.5 Мгц).
Видеопроцессору за одну горизонтальную строчку экрана (не бордюра) (256 пикселов, 128 тактов ЦП) нужно 32 байта пикселов и 32 байта аттрибутов. Т.е. 64 байта. Т.е. один байт раз в два такта.
У процессора обращение к памяти занимает или 2 (чтение опкода) или 3 такта (чтение/запись данных) . Т.е. в худшем случае (которого, впрочем, не бывает), процессору нужно получать данные раз в два такта.
Теперь поделим все такты между ЦП и видео "по справедливости" через один, т.е. один такт процессору, а следующий - видео. Предположим, что видеоконтроллер полностью использует все свои такты (что на самом деле не так - есть бордюр), и в каждый свой такт обращается к памяти.
А сейчас для улучшения понимания рассмотрим все возможные варианты действий процессора с памятью в разные моменты времени (по тактам):
---------------------------------------------------------
http://pages.plotinka.ru/~crush/turbo/M1_1.PNG
---------------------------------------------------------
http://pages.plotinka.ru/~crush/turbo/M1_2.PNG
---------------------------------------------------------
http://pages.plotinka.ru/~crush/turbo/RD1_1.PNG
---------------------------------------------------------
http://pages.plotinka.ru/~crush/turbo/RD1_2.PNG
---------------------------------------------------------
(Картинки продублированы во вложении "TurboDescriptionsPictures.zip").
Т.е. в любом случае, процессор и видеоконтроллер друг другу не мешают. Каждый обращается к памяти исключительно в свой такт.
Бывает так, что процессор читает (или записывает) данные из памяти по два раза (см "чтение или запись данных, вариант 1"). Ничего страшного в этом нет.
Таким образом, частота сигналов RAS и CAS равняется 3.5 Mhz.
В турборежиме ничего принципиально не менеяется. Все частоты поднимаются в два раза за исключением частот видеосчетчиков (включая строчную и кадровую синхру). А видеоконтроллер читает данные из памяти не каждый второй такт, а лишь каждый 4-й.
Во вложениях:
TurboDescriptionsPictures.zip (11.3 Кб) - картинки из этого поста
Magic5_DJVU.zip (329.8 Кб) - схема Magic 5, оригинал, 3.5 Мгц
TurboScheme.zip (58.2 Кб) - схема турбирования.
Картинка Turbo.djvu - это скан моих "записей" (скудно, да ведь? :) ) о турбировании magic5. Это просто изменения, которые нужно внести в схему магика чтобы он полностью стал 7 Мгц (без wait). Здесь нет системы "выключения" турбы, так же не приведен генератор wait-ов при обращении к медленным портам (ВГ93) - пока что я не нашел схему :( .
Картинка TurboM5.djvu - это измененная схема Magic5 (изменяется только вторая страница схемы). Изменения касаются элементов D11,D12,D13 и D22.
P.S. Если я опять не смог кого-либо убедить в возможности существования безваитового обращения к памяти, которая работает на частоте процессора, то прошу обратить внимание, на то что это уже сделано 16-17 лет назад в Magic5.