User Tag List

Страница 133 из 227 ПерваяПервая ... 129130131132133134135136137 ... ПоследняяПоследняя
Показано с 1,321 по 1,330 из 2264

Тема: Особенности процессоров и устройств архитектуры PDP-11. Тесты. Диагностика.

  1. #1321

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Через виртуальный вектор 4 в HALT-режиме.
    Вот код тестирования зависания в режиме HALT из прошивки 134 :

    Код:
    006440 [000344]        MOV   #3400., @#77006          ; 006442:006510 -> 077006:004566
    006446 [000340]        CALL  013104                   ;   R7  :006452 -> 017770
    
    013104 [000340]        TSTB  @#177564                 ; 177564:   200
    013110 [000350]        BPL   013104
    013112 [000350]        MOV   #42., @#177566           ; 013114:000052 -> 177566:000000
    013120 [000340]        RETURN                         ; 017770:006452 ->   R7  
    
    006452 [000340]        MOV   #-128., @#172512         ; 006454:177600 -> 172512:007777
    006460 [000350]        TST   @#100000                 ; 100000:000000
    Как видно - первым делом дефолтный обработчик TrapTo_4 заменяется на специальный, который при срабатывании выводит сообщение об ошибке. Если настроить эмулятор на обработку прерывания зависания в режиме HALT по вектору 4, то старт прошивки 134 выглядит так:

    Код:
    ****
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4          *
    ОшИБКА  ВЕКТОРА  4
    @ 000002
    @

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

  3. #1322

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Как видно - первым делом дефолтный обработчик TrapTo_4 заменяется на специальный, который при срабатывании выводит сообщение об ошибке. Если настроить эмулятор на обработку прерывания зависания в режиме HALT по вектору 4, то старт прошивки 134 выглядит так:
    При вызове по этому вектору в стеке вроде ничего не сохраняется, только из вектора загружается PC и PSW.
    Последний раз редактировалось Alex_K; 25.01.2016 в 18:47.

  4. #1323

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    При вызове по этому вектору в стеке вроде ничего не сохраняется, только из него загружается PC и PSW.
    Обработка TrapTo_4 в прошивке 134 организована так - при входе в HALT-моду первым делом настраивается обработчик TrapTo_4 в HALT-ОЗУ, адрес которого находится в ячейке 000004 HALT-ПЗУ :

    Код:
    ROM:000000              Jmp	loc_5710
    ROM:000004              .Word	77004
    ROM:000006              .Word	340
    
    ROM:005710              Mov	SP,    @#77114
    ROM:005714              Mov	#137,  @#77004
    ROM:005722              Mov	#4566, @#77006
    
    ROM:004566              Inc	@#77054
    ROM:004572              Return
    Кстати, из этого кода можно сделать вывод, что TrapTo_4 в режиме HALT отрабатывается процессором через CALL @Word04. Но для обработчика TrapTo_4 из теста зависания разницы нет - он в любом случае просто выводит сообщение об шибке.
    Последний раз редактировалось Patron; 25.01.2016 в 19:07.

  5. #1324

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Кстати, из этого кода можно сделать вывод, что TrapTo_4 в режиме HALT отрабатывается процессором через CALL @Word04. Но для обработчика TrapTo_4 из теста зависания разницы нет - он в любом случае просто выводит сообщение об шибке.
    При вызове в стек ничего не ложится, т.к. если бы ложилось, то после вызова вектора по RETURN возвращалось бы в тоже место. Т.е. после TST @#100000 всегда была бы ошибка вектора 4.

    Я уже дизассемблировал 134-ю прошивку, можно почитать здесь.

  6. #1325

    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,246
    Спасибо Благодарностей отдано 
    498
    Спасибо Благодарностей получено 
    557
    Поблагодарили
    436 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Эксперимент : пуск процессора с 173000 адреса с включенным выключателем "пульт" и выполнением обращения к несуществующему адреса из области пульта :



    По итогам прохождения теста лампочка "UMAP" мигала.
    Последний раз редактировалось MM; 25.01.2016 в 19:39.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU

  7. #1326

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    При вызове в стек ничего не ложится, т.к. если бы ложилось, то после вызова вектора по RETURN возвращалось бы в тоже место. Т.е. после TST @#100000 всегда была бы ошибка вектора 4.
    Понятно, что зависание в режиме HALT отрабатывается процессором ВМ3 не как прерывание ( или HALT-прерывание, сохраняющее только PC ) по вектору 4 - это прямо следует из работы прошивки 134. Потому и надо узнать, что делает процессор 1801ВМ3 после обращения к несуществующему адресу в режиме HALT.

  8. #1327

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Понятно, что зависание в режиме HALT отрабатывается процессором ВМ3 не как прерывание ( или HALT-прерывание, сохраняющее только PC ) по вектору 4 - это прямо следует из работы прошивки 134. Потому и надо узнать, что делает процессор 1801ВМ3 после обращения к несуществующему адресу в режиме HALT.
    Только загружает PC и PSW из вектора 4 режима HALT, т.е. в случае 134-й прошивки, это 77004 и 340.

  9. #1328

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Только загружает PC и PSW из вектора 4 режима HALT, т.е. в случае 134-й прошивки, это 77004 и 340.
    Если процессор делает так - прошивка 134 сообщает о неисправности процессора, поэтому логично предположить, что на самом деле происходит что-то другое.

  10. #1329

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Если процессор делает так - прошивка 134 сообщает о неисправности процессора, поэтому логично предположить, что на самом деле происходит что-то другое.
    Это в каком месте?

  11. #1330

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Это в каком месте?
    В неправильно написанном мною эмуляторе.

    Если при возникновении зависания в режиме HALT ничего не помещать в стек и просто загрузить новые значения PC и PSW из вектора 4, то прошивка не ругается.

Страница 133 из 227 ПерваяПервая ... 129130131132133134135136137 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Тесты ВМ1
    от nzeemin в разделе БК-0010/0011
    Ответов: 90
    Последнее: 05.10.2018, 12:24
  2. Диагностика
    от dk_spb в разделе Корвет
    Ответов: 31
    Последнее: 21.07.2017, 23:52
  3. Проблема двух процессоров.
    от Mikka_A в разделе Несортированное железо
    Ответов: 21
    Последнее: 28.11.2006, 17:04

Ваши права

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