User Tag List

Страница 38 из 227 ПерваяПервая ... 343536373839404142 ... ПоследняяПоследняя
Показано с 371 по 380 из 2264

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

  1. #371

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    1. ВП1-065 так же как и все остальные последовательные порты принимает только один байт вне зависимости от продолжительности сигнала BREAK. Если BREAK короче байта - принимается обычный байт, у которого "недостающие биты" заполнены единицами ( т.е. стоповым битом в состоянии IDLE ).
    Если BREAK длинный, то всегда принимается один нулевой байт. Заметил особенность приема BREAK. При приеме нулевого байта в регистре статуса выставляется бит готовности, а бит ошибки стоп-бита не установлен. Если сразу же прочесть из регистра данных принятый нулевой байт, то готовность сбрасывается, а потом появляется ошибка стоп-бита и ошибка переполнения. Появляются ли они вместе или друг за другом, и зависит ли это от длительности BREAK - я не знаю, надо тестировать.

  2. #372

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Ну, как показал тест, в E11 проблема отсутствует как класс (или во всяком случае, не мешает). Эмулятор TU58 работает отлично, причем запускается он у меня в режиме при котором без BREAK он в принципе не начнет работать.
    Значит, или весь E11 работает в режиме непрерывной привязки эмуляции к реальному времени (тогда он должен сильно нагружать процессор), либо эмулятор последовательного порта задерживает сброс BREAK до совпадения эмулироемого времени этого события с реальным.

  3. #373

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Если BREAK длинный, то всегда принимается один нулевой байт.
    У меня не принимается. Отмечает BREAK и все.
    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

  4. #374

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Значит, или весь E11 работает в режиме непрерывной привязки эмуляции к реальному времени (тогда он должен сильно нагружать процессор), либо эмулятор последовательного порта задерживает сброс BREAK до совпадения эмулироемого времени этого события с реальным.
    В виндовсе с SET THROTTLE получается чистый IDLE. В Linux лупит непрерывно, в OS/2 настолько непрерывно, что вешает гуй при одном проце, в OS/2 DOSовский вариант если сделать SET IDLE RELEASE - дает честный IDLE.

    ---------- Post added at 00:16 ---------- Previous post was at 00:14 ----------

    Пробовал в виндовом варианте где скорость (без таймингов - сейчас есть возможность) подгоняется примерно к 11/93. С точки зрения виндовса - IDLE.
    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

  5. #375

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    При приеме нулевого байта в регистре статуса выставляется бит готовности, а бит ошибки стоп-бита не установлен. Если сразу же прочесть из регистра данных принятый нулевой байт, то готовность сбрасывается, а потом появляется ошибка стоп-бита и ошибка переполнения.
    Думаю, если новых байтов в порт не поступит - время роли не играет - бит ошибки установится только после чтения регистра данных.

    Получается, что ВП1-065 принимает BREAK "нулём вперёд". Т.е. в момент приёма нуля невозможно определить - обычный ли это байт или "предвестник" сигнала BREAK.

  6. #376

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Думаю, если новых байтов в порт не поступит - время роли не играет - бит ошибки установится только после чтения регистра данных.
    Абсолютно верно.
    Все биты TKB читаются только вместе с символом и далее не меняются пока следующий символ не поступит, а пока висит BREAK, он не поступит.

    ---------- Post added at 00:19 ---------- Previous post was at 00:18 ----------

    Цитата Сообщение от Patron Посмотреть сообщение
    Похоже - последняя строка отчёта не скопировалась:
    Код:
    Test 8: Send Bad Frame 2 ..
    В логе это последняя строчка, но в окне есть еще одна:

    <000><276><372><377>
    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

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

  8. #377

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    У меня не принимается. Отмечает BREAK и все.
    В смысле - на стороне PDP-11..

    При каждом достаточно длинном брейке на стороне PDP-11 принимался один нулевой байт:
    Код:
    Test 5: Ask HX Server for 50 ms BREAK..
    Recived bytes: <000>

  9. #378

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    В смысле - на стороне PDP-11..

    При каждом достаточно длинном брейке на стороне PDP-11 принимался один нулевой байт:
    Код:
    Test 5: Ask HX Server for 50 ms BREAK..
    Recived bytes: <000>
    При насколько достаточном?
    Я уже выкладывал тесты: BREAK длиной 8 символов, дает 120000 и ничего больше. То есть никаких нулевых байтов.
    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. #379

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

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    В логе это последняя строчка, но в окне есть еще одна: <000><276><372><377>
    Если строка не завершена - она выводится в лог только при выходе из программы. Чтобы это поправить - можно добавить в конце теста BRKT2 вывод перевода строки.

  11. #380

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Думаю, если новых байтов в порт не поступит - время роли не играет - бит ошибки установится только после чтения регистра данных.

    Получается, что ВП1-065 принимает BREAK "нулём вперёд". Т.е. в момент приёма нуля невозможно определить - обычный ли это байт или "предвестник" сигнала BREAK.
    Если не читать из регистра данных, то будут установлены и бит готовности, и бит ошибки стоп-бита, ну и может быть бит переполнения.
    Тут, судя по всему установка бита готовности происходит еще до приема стоп-битов. А уже потом, если стоп-битов не оказалось, ставится ошибка стоп-бита.
    Это проверяется, если возникает готовность приемника, многократно прочесть регистр состояния в буфер, а там можно посмотреть когда ставится ошибка стоп-бита и ошибка переполнения.
    Ошибка переполнения может выставится по приходу стартового бита, если предыдущая посылка не прочитана.

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

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

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

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

Похожие темы

  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

Ваши права

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