Важная информация

User Tag List

Страница 34 из 63 ПерваяПервая ... 303132333435363738 ... ПоследняяПоследняя
Показано с 331 по 340 из 625

Тема: Расчёт точного времени выполнения команд различными процессорами архитектуры PDP-11.

  1. #331
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Возможно дело в режиме адресации.
    Точно. Команды, использующие не операнд, а его адрес ( JMP и JSR ) - должны прервать получение операнда на стадии готовности адреса. Возможно, что из-за этого в процессорах ВМ1 и ВМ2 приходится блокировать интерфейс шинного блока, который отключается от шины и "внутри себя" быстренько прокручивает фиктивный шинный цикл.

  2. #331
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #332
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Patron, проясните мне по поводу теста на сбой-глюк?
    Вот на картинке последней (последней не по счёту, а по отчёту), вылет произошёл, если я правильно понимаю при RowLen=3122, я попытался ввести RowLen=2122 (т.е. -1000 по инструкц.) и Grow=1, но тогда тест не прекращается и всё время плюётся
    надписью BAD JMP!!! - как его гонять с таким ? Может нужно для исследования этого момента что переделать-написать заточенное? Или я просто не правильно что то ввожу? Да и мне совершенно не понятно значение других переменных (
    сделать прогон этого теста более понятным для меня , что такое параметр 11700?
    Откуда значение 8013 получено и насколько оно в целом идеально? Мерцалки к слову у ЦП на плате разные могут стоять ) У Titusa вообще есть разогнанный вариант, но как определить реальную частоту? Фактическую у каждой платы конкретной?

    ---------- Post added at 21:15 ---------- Previous post was at 21:09 ----------

    В очередной раз за последнии два дня убедился, что если УК-НЦшка рабочая - она (т.т.т.) рабочая. Повиснет или глюконёт если что то не отлаженное не проверенное
    начать запускать, компилировать что-нибудь экспериментальное, но если "допустим"
    вообще не трогать - просто запустить скажем часы или игрушки играть (только те которые сессию не убивают) - то время работы фактически очень большое.
    Я затрудняюсь сказать, но свою УК-НЦ в 90-х иногда не вырубал (перезагрузки не в счёт) целыми сутками.
    Архив программ для УК-НЦ, ДВК и БК.

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

  4. #333
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    всё время плюётся надписью BAD JMP!!! - как его гонять с таким ?
    Это нормально - так и должно быть.

    Странно, когда нет надписи про BAD JMP - наверное, это как-то связано с прерываниями таймера.

    Можно задать параметр MTPS = 340 и таким образом отключить таймер.

    ---------- Post added at 22:26 ---------- Previous post was at 22:24 ----------

    Цитата Сообщение от hobot Посмотреть сообщение
    как определить реальную частоту?
    При изучении глюков это не играет роли - только при измерении таймингов.

    ---------- Post added at 22:28 ---------- Previous post was at 22:26 ----------

    Возможно, BAD JMP возникает при чётной длине цепочки команд и не возникает при нечётной ( или наоборот ).

  5. #334
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Возможно, BAD JMP возникает при чётной длине цепочки команд и не возникает при нечётной ( или наоборот ).
    примерно так, поскольку надпись мелькает, то есть точно не на каждую цепочку возникает BAD JMP. в общем я этот тест в любом случае ещё погоняю.
    Значения у других тестов я заметил плавают в пределах +-0.3(иногда даже больше иногда меньше), это видно, если один и тот же тест запускать подряд и вводить одинаковую частоту при этом ( в моём случае 8013 я вводил).

    Цитата Сообщение от Patron Посмотреть сообщение
    Можно задать параметр MTPS = 340 и таким образом отключить таймер.
    Принято, а если таймер отключить в меню УСТ перед тестом?
    Да! Вчера то с первой платой BAD JMP не было ни разу, различия кроме плат в тестировании было ещё в том, что во вторую плату сегодня у меня был воткнут только один контроллер ЖД, а флоп за ненадобностью я не подключал.
    Архив программ для УК-НЦ, ДВК и БК.

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

  6. #335
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    Значения у других тестов я заметил плавают в пределах +-0.3(иногда даже больше иногда меньше)
    Для сбора статистики разброса времени выполнения команд потребуется специальный тест.

    если один и тот же тест запускать подряд и вводить одинаковую частоту при этом ( в моём случае 8013 я вводил).
    Если тест предлагает устраивающее значение - достаточно нажать [Enter].

    ---------- Post added at 22:52 ---------- Previous post was at 22:50 ----------

    а если таймер отключить в меню УСТ перед тестом?
    Лучше этого не делать.

  7. #336
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Универсальный тест: DIV.SAV позволяет определить число тактов, затрачиваемых любым процессором архитектуры PDP-11 на выполнение команды DIV с первым операндом в регистре.

    При первом запуске теста нужно ввести правильное значение тактовой частоты тестируемого процессора в килогерцах.

    При запуске на эмулируемой ДВК-1 (с запущенным драйвером EM.SYS) результат выглядит так:

    Код:
    .RU DIV
    DIV - v1.0
    Memory Top: 137564
    BUF words:   22896
    CPU KHz:  5300 >
     
    1: Nop                  Evt:  9 ;  Run:  7559 ;  Res:  7568 ;  CLC:   14.0
    R2/177772 ; R1/000005 ; R0/000005
    1: Div   R2, R0         Evt:  0 ;  Run:    39 ;  Res:    39 ;  CLC: 2789.#
    1: Div   R2, R1         Evt:  0 ;  Run:    21 ;  Res:    21 ;  CLC: 5300.#
    R2/177772 ; R1/000000 ; R0/000000
    1: Div   R2, R0         Evt:  0 ;  Run:    21 ;  Res:    21 ;  CLC: 5300.#
    R2/000177 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run:    42 ;  Res:    42 ;  CLC: 2585.#
    R2/000000 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run:    42 ;  Res:    42 ;  CLC: 2585.#
     
    Program completed.
     
    .
    Где:

    Evt - Число тестируемых команд, выполнившихся за промежуток времени между началом и концом первого прерывания таймера.
    Run - Число тестируемых команд, выполнившихся за промежуток времени между концом первого и началом второго прерывания таймера.
    Res - Общее число тестируемых команд, выполнившихся между началом первого и началом второго прерывания таймера.
    CLC - Подсчитанное число тактов.

    ...
    Вложения Вложения
    • Тип файла: zip DIV.zip (11.3 Кб, Просмотров: 147)

  8. #337
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Универсальный тест: DIV.SAV
    Копим собираем пачку тестов для прогона ! ) Ура! )
    Архив программ для УК-НЦ, ДВК и БК.

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

  9. #338
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    .RU DIV
    DIV - v1.0
    Memory Top:  65520
    BUF words:   12126
    CPU KHz:  5300 > 18000
    CPU KHz: 18000
    Это все. Здесь висит

    ---------- Post added at 13:51 ---------- Previous post was at 13:50 ----------

    А не, это я его из под ZM запустил...

    Код:
    .RU DIV
    DIV - v1.0
    Memory Top: 116334
    BUF words:   18468
    CPU KHz: 18000 > 
    
    2: Nop                  Evt:  6 ;  Run: 18936 ;  Res: 18942 ;  CLC:   19.0
    R2/177772 ; R1/000005 ; R0/000005
    1: Div   R2, R0         Evt:  0 ;  Run:  2309 ;  Res:  2309 ;  CLC:  155.9
    1: Div   R2, R1         Evt:  0 ;  Run:  2309 ;  Res:  2309 ;  CLC:  155.9
    R2/177772 ; R1/000000 ; R0/000000
    1: Div   R2, R0         Evt:  0 ;  Run:  2437 ;  Res:  2437 ;  CLC:  147.7
    R2/000177 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run:  2309 ;  Res:  2309 ;  CLC:  155.9
    R2/000000 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run: 13324 ;  Res: 13324 ;  CLC:   27.0
    
    Program completed.
    
    .


    ---------- Post added at 13:52 ---------- Previous post was at 13:51 ----------

    И без кэша:

    Код:
    .RU DIV
    DIV - v1.0
    Memory Top: 116334
    BUF words:   18468
    CPU KHz: 18000 > 
    
    1: Nop                  Evt:  8 ;  Run: 13835 ;  Res: 13843 ;  CLC:   26.0
    R2/177772 ; R1/000005 ; R0/000005
    1: Div   R2, R0         Evt:  0 ;  Run:  2221 ;  Res:  2221 ;  CLC:  162.1
    1: Div   R2, R1         Evt:  0 ;  Run:  2221 ;  Res:  2221 ;  CLC:  162.1
    R2/177772 ; R1/000000 ; R0/000000
    1: Div   R2, R0         Evt:  0 ;  Run:  2336 ;  Res:  2336 ;  CLC:  154.1
    R2/000177 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run:  2221 ;  Res:  2221 ;  CLC:  162.1
    R2/000000 ; R1/000000 ; R0/001777
    1: Div   R2, R0         Evt:  0 ;  Run: 10580 ;  Res: 10580 ;  CLC:   34.0
    
    Program completed.
    
    .


    ---------- Post added at 14:23 ---------- Previous post was at 13:52 ----------

    По таблице из приложения получается NOP - 3 микроцикла (24 CLK), DIV - 34 (272 CLK)
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  10. #339
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    По таблице из приложения получается NOP - 3 микроцикла (24 CLK)
    В файле KDJ11E-Timing.pdf написано, что 1 MC == 4 CLK. Поэтому NOP выполняется за [ 3*4 + время чтения памяти ] CLK.

  11. #340
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    В файле KDJ11E-Timing.pdf написано, что 1 MC == 4 CLK. Поэтому NOP выполняется за [ 3*4 + время чтения памяти ] CLK.
    Мне попалась строчка про 8. Правда я читал предварительную доку - там таблицы красивее
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

Страница 34 из 63 ПерваяПервая ... 303132333435363738 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 234
    Последнее: 26.02.2021, 11:05
  2. Время выполнения команд CPI/CPD/CPIR/CPDR
    от ARTi в разделе Программирование
    Ответов: 27
    Последнее: 18.12.2007, 16:32

Ваши права

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