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

User Tag List

Страница 2 из 63 ПерваяПервая 123456 ... ПоследняяПоследняя
Показано с 11 по 20 из 625

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

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    все выложенные автором тесты прилепил в разделе ДВК одним архивом
    Заглянув в каталог с тестами я обнаружил там 77 файлов - см. TESTs.rar в приложении.


    Цитата Сообщение от hobot Посмотреть сообщение
    Это соответствует примерно производительности обычного ВМ2?
    В составе ДВК-1 и БК процессор 1801ВМ1 тратит очень много времени на ожидание памяти.

    Формулы быстродействия 1801ВМ2 выглядят так:


    В формате описания ВМ1 - формулы для ВМ2 будут выглядеть так:

    Код:
    Времена выполнения команд:
    
         одноадресных
    метод		время		   время
    адресации	выполнения ВМ1	   выполнения ВМ2
        0		8T+tn               8T+tn
        1		23T+3tn             23T+3tn
    Вообще, весьма похоже, что микропрограммы реализации большинства команд у ВМ1 и ВМ2 идентичны.
    Вложения Вложения
    • Тип файла: rar TESTs.rar (41.4 Кб, Просмотров: 576)

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    я обнаружил там 77 файлов
    Несмотря на совпадения в названиях файлов (т.е повторы) архив TESTs.RAR из этого сообщения просто добавлю в ту же папку (в один архив) как есть, без дополнительных комментариев, в текстовом файле есть ссылка на авторскую тему в форуме, думаю
    такой вариант вполне приемлем? Поскольку я просто сделал КОПИ/ПАСТ, а к дополнительным файлам никакой информацией не располагаю.

    Кстати говоря по поводу этой цифры в тестах для УК-НЦ, такой высокий показатель
    на живых платах не видел ни разу. Иногда он ниже 580, но никогда не видел больше
    610 (!) и то только на одной из плат, скрин естественно в эмуляторе был сделан.
    Вот такое расхождение в значениях говорит о несовершенстве теста (УКНЦшного) или ньюансах конкретного аппарата (платы) ?
    Архив программ для УК-НЦ, ДВК и БК.

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

  3. #13
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,554
    Спасибо Благодарностей отдано 
    1,217
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

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

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

    По умолчанию

    Тема (близкая) созданная ранее http://zx.pk.ru/showthread.php?t=18184
    Архив программ для УК-НЦ, ДВК и БК.

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

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

    По умолчанию

    Тесты продолжительности (в тактах) двухоперандных команд процессора 1801ВМ1 дали на ДВК-1 5.3 МГц следующие результаты:

    1801VM1 MOV Timings Test v1.1

    Код:
    Scale: 256
    Retry: 256
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    Mov     R1     14   37    41      49      41      50    49     49      64
    Mov    (R1)    30   45    49      59      49      59    59     59      72
    Mov    (R1)+   30   46    49      59      49      59    59     59      72
    Mov   @(R1)+   43   59    62      72      62      73    73     73      84
    Mov   -(R1)    30   47    49      59      49      60    59     59      73
    Mov  @-(R1)    44   60    63      73      63      73    73     73      86
    Mov    Addr    43   59    62      73      62      73    73     73      85
    Mov  @Tab(R1)  56   73    73      85      73      86    85     85      98
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    MovB    R1     14   37    41      49      41      51    49     49      64
    MovB   (R1)    30   46    49      59      49      60    59     59      73
    MovB   (R1)+   30   46    49      59      49      60    59     59      73
    MovB  @(R1)+   43   59    62      73      62      73    73     73      85
    MovB  -(R1)    30   47    49      59      49      60    59     59      73
    MovB @-(R1)    44   60    63      73      63      73    73     73      86
    MovB   Addr    43   59    62      73      62      73    73     73      85
    MovB @Tab(R1)  56   73    73      85      73      86    85     85      98

    1801VM1 ADD & SUB Timings Test v1.0

    Код:
    Scale: 256
    Retry: 400
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    Add     R1     14   47    47      60      49      61    60     60      73
    Add    (R1)    30   55    55      69      56      70    69     69      82
    Add    (R1)+   30   55    55      69      56      70    69     69      82
    Add   @(R1)+   43   68    68      82      70      83    82     82      95
    Add   -(R1)    30   56    56      69      56      70    69     69      82
    Add  @-(R1)    44   69    69      82      70      83    82     82      96
    Add    Addr    43   68    68      82      70      83    82     82      95
    Add  @Tab(R1)  56   81    81      95      82      95    95     95      108
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    Sub     R1     14   47    47      60      49      61    60     60      73
    Sub    (R1)    30   55    55      69      56      70    69     69      82
    Sub    (R1)+   30   55    55      69      56      70    69     69      82
    Sub   @(R1)+   43   68    68      82      70      83    82     82      95
    Sub   -(R1)    30   56    56      69      56      70    69     69      82
    Sub  @-(R1)    44   69    69      82      70      83    82     82      96
    Sub    Addr    43   68    68      82      70      83    82     82      95
    Sub  @Tab(R1)  56   81    81      95      82      95    95     95      108

    1801VM1 CMP & BIT Timings Test v1.0

    Код:
    Scale: 256
    Retry: 400
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiT     R1     14   35    35      49      36      49    49     49      61
    BiT    (R1)    30   43    43      56      44      58    57     57      70
    BiT    (R1)+   30   43    43      57      44      58    57     57      70
    BiT   @(R1)+   43   57    57      70      58      71    70     70      83
    BiT   -(R1)    31   44    44      57      45      58    57     57      71
    BiT  @-(R1)    44   57    57      71      58      72    71     71      84
    BiT    Addr    43   57    57      70      58      71    70     70      83
    BiT  @Tab(R1)  56   70    70      83      71      84    83     83      96
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiTB    R1     14   35    35      49      36      49    49     49      61
    BiTB   (R1)    30   43    43      57      44      58    57     57      70
    BiTB   (R1)+   30   43    43      57      44      58    57     57      70
    BiTB  @(R1)+   43   57    57      70      58      71    70     70      83
    BiTB  -(R1)    31   44    44      57      45      58    57     57      71
    BiTB @-(R1)    44   57    57      70      58      72    70     71      84
    BiTB   Addr    43   57    57      70      58      71    70     70      83
    BiTB @Tab(R1)  56   70    70      83      71      84    83     83      96
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    Cmp     R1     14   35    35      49      36      49    49     49      61
    Cmp    (R1)    30   43    43      57      44      58    57     57      70
    Cmp    (R1)+   30   43    43      57      44      58    57     57      70
    Cmp   @(R1)+   43   57    57      70      58      71    70     70      83
    Cmp   -(R1)    31   44    44      57      45      58    57     57      71
    Cmp  @-(R1)    44   57    57      71      58      72    71     71      84
    Cmp    Addr    43   57    57      70      57      71    70     70      83
    Cmp  @Tab(R1)  56   70    70      83      71      84    83     83      96
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    CmpB    R1     14   35    35      49      36      49    49     49      61
    CmpB   (R1)    30   43    43      56      44      58    56     56      70
    CmpB   (R1)+   30   43    43      56      44      58    57     57      70
    CmpB  @(R1)+   43   57    57      70      58      71    70     70      83
    CmpB  -(R1)    30   44    44      57      45      58    57     57      71
    CmpB @-(R1)    44   57    57      70      58      72    70     70      84
    CmpB   Addr    43   56    56      70      58      71    70     70      83
    CmpB @Tab(R1)  56   70    70      83      71      84    83     83      96


    1801VM1 BIS & BIC Timings Test v1.0

    Код:
    Scale: 256
    Retry: 400
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiC     R1     14   47    47      60      49      61    60     60      73
    BiC    (R1)    30   55    55      69      56      70    69     69      82
    BiC    (R1)+   30   55    55      69      56      70    69     69      82
    BiC   @(R1)+   43   68    68      82      70      83    82     82      95
    BiC   -(R1)    30   55    55      69      57      70    69     69      82
    BiC  @-(R1)    44   69    69      82      70      83    82     82      96
    BiC    Addr    43   68    68      82      70      83    82     82      95
    BiC  @Tab(R1)  56   82    82      95      82      95    95     95      109
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiCB    R1     14   47    47      60      49      61    60     60      73
    BiCB   (R1)    30   55    55      69      56      70    69     69      82
    BiCB   (R1)+   30   55    55      69      56      70    69     69      82
    BiCB  @(R1)+   43   68    68      82      70      83    82     82      95
    BiCB  -(R1)    31   55    55      69      57      70    69     69      82
    BiCB @-(R1)    44   69    69      82      70      83    82     82      96
    BiCB   Addr    43   68    68      82      70      83    82     82      95
    BiCB @Tab(R1)  56   82    82      95      82      96    95     95      109
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiS     R1     14   47    47      60      49      61    60     60      73
    BiS    (R1)    30   55    55      69      56      70    69     69      82
    BiS    (R1)+   30   55    55      69      56      70    69     69      82
    BiS   @(R1)+   43   68    68      82      70      83    82     82      95
    BiS   -(R1)    31   55    55      69      57      70    69     69      82
    BiS  @-(R1)    44   69    69      82      70      83    82     82      96
    BiS    Addr    43   68    68      82      70      83    82     82      95
    BiS  @Tab(R1)  56   82    82      95      82      96    95     95      109
    
                   R0  (R0)  (R0)+  @(R0)+  -(R0)  @-(R0)  Addr  @#Addr  @Tab(R0)
    
    BiSB    R1     14   47    47      60      49      61    60     60      73
    BiSB   (R1)    30   55    55      69      56      70    69     69      82
    BiSB   (R1)+   30   55    55      69      56      70    69     69      82
    BiSB  @(R1)+   43   68    68      82      70      83    82     82      95
    BiSB  -(R1)    31   55    55      69      57      70    69     69      82
    BiSB @-(R1)    44   69    69      82      70      83    82     82      96
    BiSB   Addr    43   68    68      82      70      83    82     82      95
    BiSB @Tab(R1)  56   82    82      95      82      96    95     95      109

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

    По умолчанию

    Если взять исправленную "официальную таблицу" таймингов команд процессора 1801ВМ1 для двухоперандных команд типа ADD и добавить туда измеренные значения - получится так:

    Код:
    Времена выполнения команд:
    
         двухадресных	предсказанное	измеренное	
    метод адресации		время		время		разница	
    источн.	приемн.		выполнения	выполнения
       0	   0		8T+tn		8T+tn		 0
       1	   0		18T+2tn		18T+2tn		 0
       2	   0		18T+2tn		18T+2tn		 0
       3	   0		25T+3tn		25T+3tn		 0
       4	   0		19T+2tn		19T+2tn		 0
       5	   0		26T+3tn		26T+3tn		 0
       6	   0		25T+3tn		25T+3tn		 0
       7	   0		32T+4tn		32T+4tn		 0
       0	   1		26T+3tn		29T+3tn		+3
       0	   2		28T+3tn		29T+3tn		+1
       0	   3		31T+4tn		36T+4tn		+5
       0	   4		28T+3tn		31T+3tn		+3
       0	   5		32T+4tn		37T+4tn		+5
       0	   6		31T+4tn		36T+4tn		+5
       0	   7		40T+5tn		43T+5tn		+3
       1	   1		28T+4tn		31T+4tn		+3
       2	   2		30T+4tn		31T+4tn		+1
       3	   3		40T+6tn		46T+6tn		+6
       4	   4		31T+4tn		32T+4tn		+1
       5	   5		42T+6tn		47T+6tn		+5
       6	   6		40T+6tn		46T+6tn		+6
       7	   7		56T+8tn		60T+8tn		+4
    Для команд, не пишущих результат в память - совпадение предсказанных и измеренных результатов идеальное.
    При выполнении завершающего команду цикла ЧТЕНИЕ-МОДИФИКАЦИЯ-ЗАПИСЬ ( цикл DATIO ) - реально команда выполняется немного медленнее, чем предсказано.

    ...
    P.S.
    В процессе изучения "официальной таблицы таймингов" из описания 1801ВМ1 - выяснилось, что её исходный вариант имеет ошибки с указанием числа ожиданий сигнала RPLY ( tn ) - практически в каждой строке.

    Для сравнения - исходный и исправленный варианты таблицы:

    Скрытый текст


    Код:
    Времена выполнения команд:
    
         одноадресных			     двухадресных
    метод		время		метод адресации		время
    адресации	выполнения	источн.	приемн.		выполнения
        0		8T+tn		0	0		8T+tn
        1		21T+3tn		1	0		18T+2tn
        2		20T+3tn		2	0		18T+2tn
        3		27T+3tn		3	0		25T+3tn
        4		21T+3tn		4	0		20T+2tn
        5		28T+4tn		5	0		26T+3tn
        6		27T+4tn		6	0		25T+3tn
        7		34T+5tn		7	0		32T+3tn
    				0	1		26T+2tn
    Время выполнения команд		0	2		28T+2tn
    управления HALT=54T+7tn		0	3		31T+3tn
    команд IOT,BPT,EMT,TRAP		0	4		28T+2tn
    42T+5tn; команд устано-		0	5		32T+3tn
    вки и очистки признаков		0	6		31T+3tn
    8T+tn;     максимальное		0	7		40T+4tn
    время ожидания ПДП  8T+		1	1		28T+3tn
    +2tn для цикла ввод-па-		2	2		30T+3tn
    уза-вывод; максимальное		3	3		40T+5tn
    время от момента запро-		4	4		31T+3tn
    са прерывания до выбор-		5	5		42T+5tn
    ки первой команды ново-		6	6		40T+5tn
    го  процесса   98T+12tn		7	7		56T+7tn
    (время выполнения самой
    длинной команды  + IOT)
    Код:
    Времена выполнения команд:
    
         одноадресных			     двухадресных
    метод		время		метод адресации		время
    адресации	выполнения	источн.	приемн.		выполнения
        0		8T+tn		0	0		8T+tn
        1		20T+3tn	<Испр.	1	0		18T+2tn
        2		20T+3tn		2	0		18T+2tn
        3		27T+4tn	<Испр.	3	0		25T+3tn
        4		21T+3tn		4	0		19T+2tn <Испр.
        5		28T+4tn		5	0		26T+3tn
        6		27T+4tn		6	0		25T+3tn
        7		34T+5tn		7	0		32T+4tn <Испр.
    				0	1		26T+3tn <Испр.
    Время выполнения команд		0	2		28T+3tn <Испр.
    управления HALT=54T+7tn		0	3		31T+4tn <Испр.
    команд IOT,BPT,EMT,TRAP		0	4		28T+3tn <Испр.
    42T+5tn; команд устано-		0	5		32T+4tn <Испр.
    вки и очистки признаков		0	6		31T+4tn <Испр.
    8T+tn;     максимальное		0	7		40T+5tn <Испр.
    время ожидания ПДП  8T+		1	1		28T+4tn <Испр.
    +2tn для цикла ввод-па-		2	2		30T+4tn <Испр.
    уза-вывод; максимальное		3	3		40T+6tn <Испр.
    время от момента запро-		4	4		31T+4tn <Испр.
    са прерывания до выбор-		5	5		42T+6tn <Испр.
    ки первой команды ново-		6	6		40T+6tn <Испр.
    го  процесса   98T+12tn		7	7		56T+8tn <Испр.
    (время выполнения самой
    длинной команды  + IOT)
    [свернуть]
    Так ( например ) авторы "официальной таблицы" ошибочно указали, что в ходе выполнения команды ADD @Tab(R1), @Tab(R0) процессор 1801ВМ1 ожидает сигнал RPLY - 7 раз, тогда как на самом деле - 8, чтобы:

    1 - прочитать код команды;
    2 - прочитать смещение первого аргумента
    3 - прочитать адрес первого аргумента
    4 - прочитать первый аргумент
    5 - прочитать смещение второго аргумента
    6 - прочитать адрес второго аргумента
    7 - прочитать второй аргумент
    8 - записать результат

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

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    2 - прочитать смещение первого аргумента
    3 - прочитать адрес первого аргумента
    Не совсем понимаю различие этих операций? Разве смещение не есть адрес?
    Может авторы эти две операции объединяли получая 7 а не 8 значение?

    А стоп! Тогда бы и для второго аргумента это было бы.
    Глупость написал. Но различие всё равно не совсем улавливаю,
    В любом случае.
    Архив программ для УК-НЦ, ДВК и БК.

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

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    Не совсем понимаю различие этих операций? Разве смещение не есть адрес?
    При косвенно-индексном методе адресации типа @Offset(Rn) - прибавление смещения к содержимому регистра даёт адрес адреса, поэтому, чтобы прочитать значение - нужно:

    1. Прочитать смещение.
    2. Прибавить смещение к регистру.
    3. Прочитать адрес.
    4. Прочитать значение.
    Последний раз редактировалось Patron; 29.10.2012 в 19:08.

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

    По умолчанию

    Если интересно, для сравнения могу отсканировать главу про время выполнения команд из документации от Э100-25
    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

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Если интересно, для сравнения могу отсканировать главу про время выполнения команд из документации от Э100-25
    Конечно интересно!

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

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

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

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

Похожие темы

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

Ваши права

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