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

User Tag List

Страница 149 из 170 ПерваяПервая ... 145146147148149150151152153 ... ПоследняяПоследняя
Показано с 1,481 по 1,490 из 1692

Тема: Реверс-инжиниринг УКНЦ (1515ХМ1&2, 1801ВП1, 1801ВМ2)

  1. #1481
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    4,229
    Спасибо Благодарностей отдано 
    107
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    179 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Достаточно проверить
    Согласен
    Но по любому
    Цитата Сообщение от Titus Посмотреть сообщение
    Rd=R7
    не понятно

  2. #1482
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    12,467
    Спасибо Благодарностей отдано 
    556
    Спасибо Благодарностей получено 
    789
    Поблагодарили
    428 сообщений
    Mentioned
    50 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А может всё-таки записываем в Rd, а не в Rs
    Я исходил из того, что поле 00R00 - это всегда источник, а поле 000NN - это приемник, поэтому так и назвал.
    Хотя, в командах расширенной арифметики получается, что наоборот.

    Можно переименовать в микрокоде, если смущает.

    - - - Добавлено - - -

    Проверка 'if (Rd=R7) GOTO 0x21' на шаге 0x0C - это универсальный рудимент от других команд, использующих же этот шаг.
    Для MUL он бессмысленный.

  3. #1483
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    2,758
    Спасибо Благодарностей отдано 
    212
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    213 сообщений
    Mentioned
    31 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Я исходил из того, что поле 00R00 - это всегда источник, а поле 000NN - это приемник, поэтому так и назвал.
    Хотя, в командах расширенной арифметики получается, что наоборот.
    Код команды 070RSS, так что SS - это источник, а регистр R - приёмник.

  4. #1484
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    12,467
    Спасибо Благодарностей отдано 
    556
    Спасибо Благодарностей получено 
    789
    Поблагодарили
    428 сообщений
    Mentioned
    50 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Код команды 070RSS, так что SS - это источник, а регистр R - приёмник.
    Это я вижу, но декодируется все универсально и одними и теми же методами. Правое поле универсализировано, как источник.
    Поэтому и проверка в конце команды Rd=R7, предполагая, что Rd закодирован правым полем.

    Перепишу микрокод для MUL, чтобы не путать общественность)

    - - - Добавлено - - -

    Поменял поля местами в описании

  5. #1485
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    2,758
    Спасибо Благодарностей отдано 
    212
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    213 сообщений
    Mentioned
    31 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Поменял поля местами в описании
    Так всё-таки проверяет Rs?

  6. #1486
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    12,467
    Спасибо Благодарностей отдано 
    556
    Спасибо Благодарностей получено 
    789
    Поблагодарили
    428 сообщений
    Mentioned
    50 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Так всё-таки проверяет Rs?
    Он проверяет тот регистр, который закодирован правым полем.
    Во всех командах там Rd, а в MUL - Rs. Поэтому проверяет он Rs, т.е. то, чего проверять не надо.

  7. Этот пользователь поблагодарил Titus за это полезное сообщение:

    Alex_K (01.12.2020)

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

  9. #1487
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    2,758
    Спасибо Благодарностей отдано 
    212
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    213 сообщений
    Mentioned
    31 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Он проверяет тот регистр, который закодирован правым полем.
    Во всех командах там Rd, а в MUL - Rs. Поэтому проверяет он Rs, т.е. то, чего проверять не надо.
    Забавный глюк должен получиться, если в качестве R будет R6 или R7. Надо попробовать на реале.

  10. #1488
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    12,467
    Спасибо Благодарностей отдано 
    556
    Спасибо Благодарностей получено 
    789
    Поблагодарили
    428 сообщений
    Mentioned
    50 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Забавный глюк должен получиться, если в качестве R будет R6 или R7. Надо попробовать на реале.
    Ну, как я уже говорил выше, в процессоре есть схема, которая отслеживает запись в R7 независимо от того, чего понаписано в микрокоманде.
    Я не разбирался в деталях еще, но судя по всему, она сбрасывает кеширование, так что все будет разрулено.

  11. #1489
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    2,758
    Спасибо Благодарностей отдано 
    212
    Спасибо Благодарностей получено 
    322
    Поблагодарили
    213 сообщений
    Mentioned
    31 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Ну, как я уже говорил выше, в процессоре есть схема, которая отслеживает запись в R7 независимо от того, чего понаписано в микрокоманде.
    Я не разбирался в деталях еще, но судя по всему, она сбрасывает кеширование, так что все будет разрулено.
    А зачем тогда проверка в микрокомандах идёт, и переход или на 0x01 или на 0x21?

  12. #1490
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    12,467
    Спасибо Благодарностей отдано 
    556
    Спасибо Благодарностей получено 
    789
    Поблагодарили
    428 сообщений
    Mentioned
    50 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А зачем тогда проверка в микрокомандах идёт, и переход или на 0x01 или на 0x21?
    Я думаю, что это сделано для ускорения.
    Если отдать все на откуп стандартной микропрограмме извлечения следующей инструкции, то будет:
    0x01 - попытка выборки кэшированного слова, но его нет. Тогда перейдем на 0x21
    0x21 - кэшировать слово
    0x01 - попытка номер два. Бинго!
    А если проверка будет в самом обработчике конкретной инструкции, то сразу пойдем на шаг 0x21, не делая лишних телодвижений через недействительный шаг 0x01.
    Таким образом, проверка в конце команды ускоряет выполнение на 4 такта, в случае, если кэш недействительный из-за записи результата в R7.

Страница 149 из 170 ПерваяПервая ... 145146147148149150151152153 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 3
    Последнее: 27.12.2019, 21:25
  2. Реверс-инжиниринг игры Boovie
    от Oleg N. Cher в разделе Программирование
    Ответов: 37
    Последнее: 13.09.2019, 16:53
  3. Ответов: 36
    Последнее: 11.03.2018, 22:46
  4. Куплю 1515ХМ1-6006, 1515ХМ1−6008
    от moxjemi в разделе Барахолка (архив)
    Ответов: 3
    Последнее: 10.01.2012, 17:23
  5. 1801ВМ2 А и Б
    от dk_spb в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 03.05.2010, 11:51

Ваши права

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