User Tag List

Страница 81 из 120 ПерваяПервая ... 777879808182838485 ... ПоследняяПоследняя
Показано с 801 по 810 из 1199

Тема: Эмулятор УКНЦ - EmuStudio

  1. #801

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Команды EIS характерны тем, что приёмник всегда регистр, поэтому после загрузки операндов и начала операции - можно начинать предвыборку, т.к. запись результата операции в память гарантированно не потребуется.

    Учитывая, что команды EIS были в военных версиях ВМ1 - весьма похоже, что и предвыборка у ВМ1 мало чем отличается от предвыборки ВМ2.

    А чем вообще предвыборка у ВМ2 может отличаться от предвыборки у ВМ1 ?

  2. #802

    Регистрация
    06.05.2006
    Адрес
    Ливны, Орловская обл
    Сообщений
    1,169
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот кстати пишут на http://en.wikipedia.org/wiki/PDP-11_architecture#Speed про PDP-11/70
    Any case where addressed memory was not in the cache added 1.02 microseconds.
    То есть кэш всё-таки встречался.

  3. #803

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NovaStorm Посмотреть сообщение
    added 1.02 microseconds
    Это 10 тактов шины 10 МГц.
    Т.е. при полном попадании в кеш - команда
    Код:
    	ADD	@TAB1(R0), @TAB2(R1)
    использующая 8 обращений к памяти - выполнится на таком процессоре на 80 тактов быстрее, чем на 1801ВМ2.

  4. #804

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Не вполне. У ВМ2 в принципе невозможна предвыборка данных, а команды предзагружаются только при выполнении команд EIS. При выполнении обычных команд предвыборка у ВМ2 ( насколько я понял ) такая же, как и у ВМ1 ( весьма похоже, что у ВМ1 предвыборка тоже есть, только без дополнительного буфера - сразу в основной ).
    Не знаю, какая предвыборка у ВМ1, но явно иная. А у ВМ2 действительно есть предвыборка слова команд. И я это даже реализовывал в своем эмуляторе.
    Подробно об этом можно почитать в доках на ВМ2, которые я выкладывал.

  5. #805

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Не знаю, какая предвыборка у ВМ1, но явно иная. А у ВМ2 действительно есть предвыборка слова команд. И я это даже реализовывал в своем эмуляторе. Подробно об этом можно почитать в доках на ВМ2, которые я выкладывал.
    Подробного описания алгоритма предвыборки в доках ВМ2 мне найти не удалось. То, что там написано о предвыборке - довольно малоинформативно.

    Достаточно представить себе ( или нарисовать ), как фазы выполнения различных команд соотносятся с тем, что происходит в этот момент на шине, чтобы стало ясно, что большой разницы в алгоритмах предвыборки команд у ВМ1 и ВМ2 быть не может.

    Главная причина в том, что цикл чтения занимает кучу тактов, поэтому начать предвыборку до завершения любой команды, которая работает с операндами в памяти - невозможно. Но это значит, что предвыборку нельзя начать и до того момента, пока текущая команда не будет раскодирована и не станет ясно, потребуются ли ей дальнейшие циклы шины или нет.

    Процессор ВМ1 выполняет две последовательных команды TST R0 быстрее, чем одну команду TST (R0). Такое возможно только при наличии предвыборки регистровых команд.

  6. #806

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Подробного описания алгоритма предвыборки в доках ВМ2 мне найти не удалось. То, что там написано о предвыборке - довольно малоинформативно.

    Процессор ВМ1 выполняет две последовательных команды TST R0 быстрее, чем одну команду TST (R0). Такое возможно только при наличии предвыборки регистровых команд.
    Ну нифига себе) Там несколько листов на эту тему, причем как в томе-1, так и в том-2. Когда я писал эмулятор, у меня был только первый том. Да еще и в схемах все это есть.

    Еще раз повторюсь, ничего не знаю о предвыборке на ВМ1, но она явно должна отличаться. Иначе вообще какой смысл было городить ВМ2) Только из-за нескольких расширенных команд?

  7. #807

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Там несколько листов на эту тему, причем как в томе-1, так и в том-2.
    Значит я плохо смотрел и Вы меня где надо поправите.

    И ВМ1 и ВМ2 выполняют регистровые команды ( например, команды TST R0 ) фактически со скоростью чтения памяти - это достигается за счёт того, что пока арифметический блок "переваривает" текущую команду - управляющий блок уже заказывает у интерфейсного блока чтение кода следующей команды. При этом циклы чтения идут на шине непрерывно.

    Если же команде нужно прочитать операнд ( как, например - в команде TST (R0) ) - то между циклом чтения кода команды и циклом чтения операнда у ВМ1 появляется "просвет" в 1 дополнительный такт. Поэтому, процессор 1801ВМ1 выполняет две команды TST R0 быстрее, чем одну команду TST (R0).

    Вряд ли у ВМ2 может быть как-то иначе.

    Возьмём для примера другую команду: MOV (R0),(R1)
    Где там "внутри команды" ВМ2 может успеть выполнить предвыборку, если во время выполнения этой команды шинные циклы идут почти "без зазора", а после выполнения последнего из них ( запись результата по адресу, находящемуся в R1 ) - команда уже завершена ?

    Получается, что и в процессе выполнения этой команды механизм предвыборки ВМ1 и ВМ2 работает одинаково.

    А когда они работают по-разному? Когда процессор ВМ2 может успеть "впихнуть" цикл чтения предвыборки "внутрь" выполнения любой команды, кроме команды EIS.. Не вижу таких вариантов.

  8. #808

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    А когда они работают по-разному? Когда процессор ВМ2 может успеть "впихнуть" цикл чтения предвыборки "внутрь" выполнения любой команды, кроме команды EIS.. Не вижу таких вариантов.
    А если один из операндов - это непосредственные данные, следующие за кодом команды? ВМ1 - будет их читать все равно из памяти или же возьмет из прекешированного слова? У ВМ2 - второй вариант, на сколько я помню.

  9. #809

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    А если один из операндов - это непосредственные данные, следующие за кодом команды? ВМ1 - будет их читать все равно из памяти или же возьмет из прекешированного слова? У ВМ2 - второй вариант, на сколько я помню.
    Такой вариант исключён и для ВМ1 и для ВМ2. Они хранят только одно прочитанное слово и это слово всегда команда.

    Дело в том, что предвыборка у ВМ1 и ВМ2 начинается только тогда, когда точно известно, что больше обращений к шине у текущей команды не будет. Такое бывает лишь в 2х случаях:

    1. Операция начата, а приёмник результата операции - регистр.
    2. Запись результата операции в память уже выполнена.

    Легко заметить, что в обоих этих случаях следующее слово, загружаемое из памяти - команда.

  10. #810

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Такой вариант исключён и для ВМ1 и для ВМ2. Они хранят только одно прочитанное слово и это слово всегда команда.

    Дело в том, что предвыборка у ВМ1 и ВМ2 начинается только тогда, когда точно известно, что больше обращений к шине у текущей команды не будет. Такое бывает лишь в 2х случаях:

    1. Операция начата, а приёмник результата операции - регистр.
    2. Запись результата операции в память уже выполнена.

    Легко заметить, что в обоих этих случаях следующее слово, загружаемое из памяти - команда.
    Мощь!
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

Страница 81 из 120 ПерваяПервая ... 777879808182838485 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Эмулятор УКНЦ - UKNCBTL
    от nzeemin в разделе Эмуляторы отечественных компьютеров
    Ответов: 1114
    Последнее: 08.01.2025, 01:15
  2. PS/2 клавиатура в УКНЦ
    от balu_dark в разделе ДВК, УКНЦ
    Ответов: 83
    Последнее: 10.01.2021, 10:51
  3. Как проверить УКНЦ и КМД ? Help
    от Andrey_Ak в разделе ДВК, УКНЦ
    Ответов: 37
    Последнее: 23.07.2020, 15:50
  4. УКНЦ и шина МПИ
    от KALDYH в разделе ДВК, УКНЦ
    Ответов: 18
    Последнее: 14.03.2014, 14:30
  5. Продаю УКНЦ
    от Gryphon в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 01.04.2009, 10:22

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •