User Tag List

Показано с 1 по 10 из 1740

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

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

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

    По умолчанию

    Я думаю, что проблема с командами, использующими IR (регистр инструкций) может происходить из-за того, что в цикле IR_STB, когда BIR защелкивается в IR, при сбитом кэше может прилететь новое значение, и, таким образом, получится, что команда выполняется предыдущая, а поле IR используется от следующей команды.
    Для команд:
    1. SEx, CLx - это младшие 4 бита, определяющие маску флагов.
    2. SOB, BRA, Bcc - поле смещения перехода
    3. MARK - тоже самое.

    Но для этого нужно, чтобы время памяти было такое, что BIR_STB прилетает именно в момент IR_STB. Ни раньше (тогда кэш исправится), ни позже, тогда будет просто выполнение предыдущей команды.

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

    Ну и еще небольшая ложечка дёгтя, если мое предположение верное.
    Команда BRA/Bcc тоже использует BIR, то можно предположить, что подобная накладка, когда BIR прилетает во время IR_STB, спутает все карты.
    А именно, выполняться будет Bcc, до этого находящаяся в BIR, а анализироваться блоком условий будет следующая команда.
    Т.е. допустим, идут две команды BRA, BEQ. Выполняться будет BRA, т.к. она уже в кэше, а условие и смещение будет от BEQ.
    Большая путаница может быть, когда следующая команда не является командой перехода, но все равно совпадает с маской условий для Bcc.
    Например, маска для BEQ, BLOS = x.000.x01.1xxx.xxx.xxx (условие Z=1). Но в нее попадает, например, и команда NEG.
    Таким образом, если идет BRA, затем NEG, то для BRA будет условие Z=1, а смещение перехода будет взято из младшего байта NEG.

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

    Alex_K(20.12.2020)

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

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

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

Похожие темы

  1. Ответов: 32
    Последнее: 18.12.2024, 18:19
  2. Реверс-инжиниринг игры Boovie
    от Oleg N. Cher в разделе Программирование
    Ответов: 41
    Последнее: 09.01.2022, 23:07
  3. Реверс инжиниринг печатной платы
    от Filin в разделе Несортированное железо
    Ответов: 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

Ваши права

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