User Tag List

Страница 18 из 24 ПерваяПервая ... 141516171819202122 ... ПоследняяПоследняя
Показано с 171 по 180 из 232

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

  1. #171

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Это режим обычного чтения, при котором не устанавливается требование. Режим этот был обнаружен экспериментально.
    В результате каких экспериментов?
    Цитата Сообщение от Patron Посмотреть сообщение
    Если игнорировать результаты экспериментов и при невыровненном чтении требование устанавливать - все прошивки работают точно так же, потому что в режиме предварительного чтения никогда не проверяют бит требования.
    Не проверяют они его потому, что неизвестно состояние контроллера. Он может находится в режиме поиска маркера, и пока он его не найдет, то и чтение данных не начнется. Есть еще момент - бит требования устанавливается только после чтения двух байтов, а ведь сдвиговый регистр байтовый. Поэтому таким чтением можно прочесть уже следующий байт без установки бита требования. Представим записано на диске 1 2 3 4 5 6 ... Сначала в регистре данных чтения прочтется <1 2> и выставится бит требования, потом будет <3 2>, но бита требования не будет стоять, а уже когда окажется <3 4>, то установится бит требования. Потому в программах поиска синхрозоны и не проверяют бит требования, чтобы не подвиснуть на долгое время.
    А если контроллер перешел в режим чтения, то он аккуратно будет нарезать данные каждые 64 мкс, при присутствии сигналов на входе в соответствии с подстройкой ФАПЧ, а если сигнала нет, то будут поступать нули каждые 64 мкс.

    А так надо знать как формируются сигналы STB_**, зная их можно точно сказать как работает и чтение и запись.

  2. #172

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    В результате каких экспериментов?
    Вот таких:
    Цитата Сообщение от Vslav Посмотреть сообщение
    требование на чтение не выставляется
    Цитата Сообщение от Alex_K Посмотреть сообщение
    Не проверяют они его потому, что неизвестно состояние контроллера. Он может находится в режиме поиска маркера, и пока он его не найдет, то и чтение данных не начнется.
    В режиме поиска маркера данные в регистр данных не передаются, поэтому читать регистр данных при не установленном требовании - совершенно бессмысленно.

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Потому в программах поиска синхрозоны и не проверяют бит требования, чтобы не подвиснуть на долгое время.
    Нет никакой разницы - 21000 раз прочитать бит требования или 21000 раз прочитать регистр данных. Однако, программа поиска синхрозоны именно 21000 раз читает регистр данных, ни разу при этом не проверяя бит требования ( хотя бит индекса в том же самом регистре статуса программа поиска синхрозоны проверяет 21000 раз - перед каждым чтением регистра данных ):

    Код:
    ; Пропуск не нулей при неактивном ИНДЕКСЕ
    6704$:	MOV	#21000.,R1	; R1 = длина дорожки в цикле
    6710$:	TST	@R4		; Линия ИНДЕКС активна?
    	BMI	6762$		; Да
    	MOV	@R5,R0		; Считанное слово равно нулю?
    	BEQ	7014$		; Да
    	INC	R0		; Считанное слово равно 177777?
    	BEQ	7014$		; Да
    	SOB	R1,6710$		; Цикл по пропуску не нулей
    	BR	6666$		; Нет дискеты - ошибка
    Весьма похоже, что ни одна программа поиска синхрозоны ни в одной прошивке, работающей с ВП1-128 - не проверяет бит требования в режиме предварительного чтения.
    Последний раз редактировалось Patron; 27.12.2013 в 21:49.

  3. #173

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Вот таких:В режиме поиска маркера данные в регистр данных не передаются, поэтому читать регистр данных при не установленном требовании - совершенно бессмысленно.
    Об этом я говорил много раз, сохраняется старое значение.
    Цитата Сообщение от Patron Посмотреть сообщение
    Весьма похоже, что ни одна программа поиска синхрозоны ни в одной прошивке, работающей с ВП1-128 - не проверяет бит требования в режиме предварительного чтения.
    Естественно ни одна.

    Так я все-таки не понял, что за режим предварительного чтения? Я знаю только два режима чтения: собственно чтение и поиск маркера. Во время поиска маркера неактивен сигнал PLL_RDY, соответственно сигналом BCNT_CLK не крутится 4-хразрядный счетчик битов, не вырабатывается сигнал RDR_STB, соответственно отсюда нет сигналов RDR_HSTB и RDR_LSTB, вся информация со сдвигового регистра не поступает в регистр данных чтения. Но вот как только появился маркер, то активизируется сигнал PLL_RDY, начинает работать счетчик, ну и информация копируется в регистр данных чтения. Бит требования TR устанавливается по сигналу RDR_LSTB при неактивном LATCH_TR. А вот если требование не удовлетворено, то активизируется признак LATCH_TR по сигналу RDR_HSTB. Он остается установленным до следующего сигнала RDR_HSTB, когда выработается FIN_STB и сбросит признак LATCH_TR. Вот если при установке LATCH_TR прочесть регистр данных и сбросить требование, то следующим сигналом RDR_LSTB оно установлено не будет, т.к. активен LATCH_TR.

  4. #174

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Так я все-таки не понял, что за режим предварительного чтения?
    Это режим, в котором находится ВП1-128, когда выполняется этот код:
    Код:
    ; Пропуск не нулей при неактивном ИНДЕКСЕ
    6704$:	MOV	#21000.,R1	; R1 = длина дорожки в цикле
    6710$:	TST	@R4		; Линия ИНДЕКС активна?
    	BMI	6762$		; Да
    	MOV	@R5,R0		; Считанное слово равно нулю?
    	BEQ	7014$		; Да
    	INC	R0		; Считанное слово равно 177777?
    	BEQ	7014$		; Да
    	SOB	R1,6710$		; Цикл по пропуску не нулей
    	BR	6666$		; Нет дискеты - ошибка
    Хорошо видно, что программа поиска синхрозоны 21000 раз читает регистр статуса, но не проверяет там бит требования. Вместо это программа 21000 раз читает регистр данных, каждый раз предполагая, что его значение изменилось без установки бита требования.

    Сам я обратил на это внимание только тогда, когда Vslav сообщил, что при переводе ВП1-128 из режима записи в режим чтения путём простого чтения регистра данных - запись мгновенно обрывается на случайном бите и начинается такое чтение, при котором
    Цитата Сообщение от Vslav Посмотреть сообщение
    требование на чтение не выставляется

  5. #175

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

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Хорошо видно, что программа поиска синхрозоны 21000 раз читает регистр статуса, но не проверяет там бит требования. Вместо это программа 21000 раз читает регистр данных, каждый раз предполагая, что его значение изменилось без установки бита требования.

    Сам я обратил на это внимание только тогда, когда Vslav сообщил, что при переводе ВП1-128 из режима записи в режим чтения путём простого чтения регистра данных - запись мгновенно обрывается на случайном бите и начинается такое чтение, при котором
    Ну то что читает данные, это еще не значит, что бит требования не устанавливается. По аналогии можно читать регистр терминала 177562 без опроса регистра 177560. При этом содержимое 177562 может меняться, но при этом и будет устанавливаться флаг готовности в 177560, просто мы его игнорируем и сбрасываем чтением регистра 177562.
    Точно также и у 1801ВП1-128, если активен сигнал PLL_RDY, то сигналом RDR_LSTB при неактивном LATCH_TR будет установлено требование, сбрасывается требование чтением или записью регистра 177132.
    А после записи, если переводят в режим чтения, то схема чтения может находится или в режиме чтения, или в режиме поиска маркера. Кстати, в режим чтения переход осуществляется не сразу, а по определенным условиям.

    А когда программа 21000 раз читает регистр данных, то это не значит, что 21000 раз разные значения.

  6. #176

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Ну то что читает данные, это еще не значит, что бит требования не устанавливается.
    Не устанавливается, я специально смотрел. Если мы были в режиме записи, и уже была запись маркера и потом вдруг прочитали регистр данных, тем самым перейдя в чтение, то начнется чтение с диска, данные будут помещаться в регистр, но требования не будет. Это как режим поиска маркера, только маркер обнаружен не будет, поскольку триггер A1W общий для режимов чтения/записи и он сброшен нормально не был (сумму то мы не писали).

  7. #177

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

    По умолчанию

    Цитата Сообщение от Vslav Посмотреть сообщение
    Не устанавливается, я специально смотрел. Если мы были в режиме записи, и уже была запись маркера и потом вдруг прочитали регистр данных, тем самым перейдя в чтение, то начнется чтение с диска, данные будут помещаться в регистр, но требования не будет. Это как режим поиска маркера, только маркер обнаружен не будет, поскольку триггер A1W общий для режимов чтения/записи и он сброшен нормально не был (сумму то мы не писали).
    А на временные диаграммы посмотреть можно? И что это за триггер, какой элемент в схеме? Вроде запись маркера никак особо на работу не влияет.

  8. #178

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А после записи, если переводят в режим чтения, то схема чтения может находится или в режиме чтения, или в режиме поиска маркера.
    Если при эмуляции ВП1-128 сделать так, что чтение регистра данных при записи переводит ВП1-128 в режим поиска маркера - дорожка начинает писаться за 10 оборотов вместо одного и программа TESTMY.SAV сообщает, что контроллер неисправен.

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

    Судя по коду прошивки - требование при чтении тогда тоже не выставляется.
    Последний раз редактировалось Patron; 27.12.2013 в 23:35.

  9. #179

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

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А на временные диаграммы посмотреть можно? И что это за триггер, какой элемент в схеме? Вроде запись маркера никак особо на работу не влияет.
    Про триггер написано в этом сообщении.
    Диаграмма моделирования чтения регистра данных без пропуска требования в аттаче.
    P.S. Было бы хорошо если кто-нибудь еще поставил Quartus+ModelSim, проект 128-ой для Quartus открыто выложен, разобраться с основами и запустить моделирование помогу. Потому что много нюансов, я могу где-то и ошибиться.
    Вложения Вложения
    • Тип файла: rar wave.rar (40.7 Кб, Просмотров: 445)

  10. #180

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

    По умолчанию

    И ещё небольшой вопрос - чем отличается поведение ВП1-128 при установленном сигнале защиты записи ?

Страница 18 из 24 ПерваяПервая ... 141516171819202122 ... ПоследняяПоследняя

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

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

Эту тему просматривают: 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

Ваши права

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