User Tag List

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

Тема: Эмуляция 1801ВП1-128 в ПЛИС

Комбинированный просмотр

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

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

    По умолчанию

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

    А повторная запись в регистр данных приведёт к восстановлению нормальной работы или последующая запись также блокируется ?
    Последний раз редактировалось Patron; 22.12.2013 в 23:39.

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

  3. #2

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Исправленое описание процесса записи:

    - старт записи начинается записью данных в регистр 177132, при этом записываемые данные пишутся на диск, по новому требованию можно записывать произвольное количество слов данных
    - при первой записи A1 в регистр данных 177132 и начале вывода этого A1 сбрасывается регистр CRC
    - при необслуживании требования записи начинается вывод вычисленной CRC на диск
    - при начале записи CRC на диск выставляется бит CSR_CRC (14-ый)
    - после выставленного CSR_CRC можно обслужить требование записи
    - можно писать в 177132 любые данные и они будут выводится на диск, но только при обнаружении записи первого нового маркера A1 опять сбросится CRC
    - цикл можно повторить нужное число раз

    Цитата Сообщение от Patron Посмотреть сообщение
    Просто интересно, как идёт запись после того как в CSR:
    1. Установлен и не сброшен 8-й бит
    2. Установлен и сброшен 8-й бит
    Как повезет - сигнал nGDR стробируется на триггере G35 импульсами входных данных, если импульсов нет, то бит GOR никак не влияет - запись промоделировалась штатно. А вот если сработает - то все встанет - будут активны RDINIT0 и RDINIT1 - остановится счетчик битов, не будет выставлятся требование и прочее - запись просто не пойдет

  4. #3

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Исправленое описание процесса записи:

    - при первой записи A1 в регистр данных 177132 и начале вывода этого A1 сбрасывается регистр CRC
    - можно писать в 177132 любые данные и они будут выводится на диск, но только при обнаружении записи первого нового маркера A1 опять сбросится CRC
    Но из этого прямо следует, что бит CRCw должен устанавливаться по INIT - иначе невозможно отличить запись первого байта 0xA1 самого первого маркера от записи второго байта 0xA1 того же маркера.
    Последний раз редактировалось Patron; 23.12.2013 в 00:43.

  5. #4

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Но из этого прямо следует, что бит CRCw должен устанавливаться по INIT - иначе невозможно отличить запись первого байта 0xA1 самого первого маркера от записи второго байта 0xA1 того же маркера.
    Не устанавливается он по INIT, а по INIT и установке GOR сбрасывается. А для того, чтобы отличить первый байт от второго, есть еще куча триггеров, и как я понял, за это отвечают сигналы RDR_STB, FIN_STB и nMARK_A1. Там на мелочи есть два триггера и целая куча логики. Вот все это и формирует сигнал nCRC_RST.

  6. #5

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Не устанавливается он по INIT
    Придётся добавлять в эмулятор ВП1-128 ещё один флаг, который будет заниматься только тем, что отличать самый первый байт 0xA1, записываемый после INIT и GOR, от второго.

    Все перезапуски CRC происходят, когда записывается первый байт 0xA1 при установленном CRCw - поэтому там дополнительные флаги не нужны.
    Последний раз редактировалось Patron; 23.12.2013 в 13:42.

  7. #6

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Все перезапуски CRC происходят, когда записывается первый байт 0xA1 при установленном CRCw - поэтому там дополнительные флаги не нужны.
    Нет, Alex_K правильно написал - есть безымянный триггер плюс одновибратор на G37, H37, H36, I39 - который формирует сигнал CRC_RST. Импульс CSR_RST очень короткий. Как я понял из моделирования (разбирать очень муторно - нарисован это кусок неудачно - не влазило оно в листик, пришлось ногами утаптывать), то схема находится в состоянии ожидания среза на nMARK_A1. Когда обнаруживается срез, то на CRC_RST формируется короткий импульс, и более по новым срезам на nMARK_A1 импульсы не формируются, сумма не обнуляется. Далее заканчивается запись, пропускается требование, записывается сумма, и после записи суммы проскакивает короткий импульс FIN_STB. Этим имульсом снова взводится одновибратор и он снова готов ждать среза nMARK_A1.

    Если сектор начали писать, потом бросили - сформируется неудовлетворенное требование и FIN_STB. Если хотите читать - то надо GOR подергать (тоже сформирует FIN_STB).

  8. #7

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    есть безымянный триггер плюс одновибратор
    А при записи бит CRC в регистре статуса сбрасывается при любой записи в регистр данных или только при записи байта 0xA1 ?

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

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

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

Похожие темы

  1. ЮТ-88: Реализация на ПЛИС (DE1)
    от Santechnik в разделе ЮТ-88
    Ответов: 61
    Последнее: 13.05.2022, 08:22
  2. Вопрос по ПЛИС
    от Zloy в разделе Несортированное железо
    Ответов: 23
    Последнее: 17.10.2015, 17:12
  3. Аксель на ПЛИС
    от iceoflame в разделе Amiga
    Ответов: 163
    Последнее: 25.03.2012, 14:51
  4. Список версий 1801ВП1 и 1801РЕ2
    от CodeMaster в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 28.02.2012, 22:39
  5. 1801вп1-128
    от dk_spb в разделе ДВК, УКНЦ
    Ответов: 0
    Последнее: 29.05.2010, 11:24

Ваши права

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