Здравствуйте, гость ( Вход | Регистрация )

Форум » Сайт и форум » Разработки и Статьи на сайте » Все вопросы касающиеся Neil Scope (Ваши замечания, предложения и т.д.)
Все вопросы касающиеся Neil Scope
LeftRadio Пятница, 26.03.2010, 21:41 | Сообщение # 1
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Шапка темы.

--
NEIL SCOPE 2



--------------------------------------------------------------------------------------

--
NEIL SCOPE 3

Схема ревизия 3.2 - NS_3.0_rev_3.2.pdf
Схема соединения ЖК с 16-ти битной шиной(только для ревизий ниже 3.2, в 3.2 HC573 уже есть на основной плате) - NS_3.0_HC573.pdf
BOM(список компонентов) - BOM_NS3_rev3_2.htm

-------------------------------------------------------------------

-------------------------------------------------------------------

Прошивка ПЛИС --- 19/05/15

MCU Bootloader (загрузчик МК) --- 17/10/13
Прошивка МК (ЖК с 8бит, 65к цветов) --- 2015_17_15
Прошивка МК (ЖК с 8 бит, 262к цветов) --- 2015_17_15
Прошивка МК для (ЖК с 16бит, HC573, 262к цветов) --- 2015_12_17

Исходники ПЛИС (github) --- 11_12_13
Исходники МК (github) --- 12/02/15
Архивные прошивки МК

Краткое описание осциллографа
Протокол обмена NeilScope3 с ПК

//----------------------------------------------------------------------------------------------------------
Прошивальщик МК (автор Ильдар) - NSFlashLoader2.
Утилита для перепрошивки СР2102 VID/PID под NeilScope3 (автор Ильдар) - NSCP2102Utilite2.rar.
Использование данных VID/PID для перепрошивки СР2102 под другие устройства категорически запрещено, они были получены по запросу у Silicon Laboratories Inc. и предназначены для использования только с NeilScope3 или другими версиями NeilScope.

Утилита для теста осциллографа - ns_test_util.
Для запуска нужно скачать и установить Python 3.4 и PyQt5, при установке добавляем переменные окружения. Распаковать архив куда нибудь и набрать из этой папки в консоли - "python main.py"

Драйвера для NeilScope3 (под перепрошитые VID/PID) - NeilScopeDriver.zip

Процедура прошивки МК(обновлено 23.08.2015) - FirmwareManual.pdf

Для последующих обновлений просто запускаем NSFlashLoader, и обновляемся. Джампер при этом трогать уже не нужно.

//----------------------------------------------------------------------------------------------------------
.
.
.
Важные замечания по сборке

На плате не указана перемычка с 10-го вывода(INTRL) 74НС4052(U15) на вывод SWDIO МК, можно и просто подпаять пока на +3.3В в любое удобное переходное отверстие.

//----------------------------------------------------------------------------------------------------------

Фото платы ревизии 3:



Демо видео работы осциллографа, ревизия 1.9

----------------------------------------------------------------------------------------
Схема и плата ByteBlusterMV для программирования EPM570, оригинал здесь. Эту плату делал сам, проверена, работает.
.
.
//----------------------------------------------------------------------------------------------------------

Любое коммерческое использование данного проекта категорически запрещено. По всем вопросам обращаться wladkam(гав)mail.com
Прикрепления: 5561811.jpg (244.1 Kb) · 2201731.jpg (212.8 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Четверг, 17.12.2015, 04:59  
 
LeftRadio Понедельник, 11.07.2011, 22:39 | Сообщение # 1441
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
К чему Вы это сказали я не понял, и выводов, как мы сообща выяснили, у Вас больше

Неправда, выводов меньше, в моем варианте не нужен дополнительный вывод ля форсированного старта синхронизации если порог триггера был установлен неправильно во время работы с осциллографом.

------------------------------------------------------------------------------------

Усовершенствовал синхронизацию по выходу/входу в "окно" и обычную по фронту/спаду, так как в исходном варианте(просто два компаратора и XOR которые предложил LazyCat) она неработоспособна по причине ложных срабатываний если во время "старта" сигнал уже находится в окне/вне окна или выше/ниже порога при обычной синхронизации.

Прикрепления: 3523023.png (53.7 Kb) · 9391673.png (49.7 Kb) · 3750263.png (47.7 Kb) · 9443264.png (76.7 Kb)


---

Нет войне!
 
LeftRadio Понедельник, 11.07.2011, 22:45 | Сообщение # 1442
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Прикрепления: 1673023.png (46.8 Kb) · 6414850.png (48.5 Kb) · 1191320.png (50.6 Kb) · 5251223.png (47.3 Kb)


---

Нет войне!
 
LeftRadio Понедельник, 11.07.2011, 22:46 | Сообщение # 1443
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Результаты компиляции:


Схема.

--------------------------------------------------------------------------------
Вот, исправил схему, теперь нет задержки в такт/два. В подтверждение осциллограмма с синхронизацией по выходу из окна с предысторией:


Рез. компиляции:
Прикрепления: TRG.pdf (13.1 Kb) · 0224825.png (15.0 Kb) · 3233353.png (48.9 Kb) · 9956584.png (15.1 Kb) · __.pdf (13.2 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Понедельник, 11.07.2011, 23:44  
 
LazyCat Понедельник, 11.07.2011, 23:30 | Сообщение # 1444
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Ха-ха-ха ! А я говорил, что будет хуже !!!

Quote (LeftRadio)
она неработоспособна по причине ложных срабатываний если во время "старта" сигнал уже находится в окне/вне окна или выше/ниже порога при обычной синхронизации.

Наконец-то Вы начали понимать, в чем были мои претензии !!! А в моем варианте это учтено ИЗНАЧАЛЬНО и там все четко(почитайте всетаки о D-триггерах) !!!
И вот теперь сравните свой вариант с моим или хотя бы с вариантом MisterDi :) И это при том, что ОСНОВНОЙ недостаток Вы не устранили :(

P.S. Я очень настаиваю, чтобы Вы почитали о D-триггерах, пока не зашли слишком далеко !!! Или, если Вы не верите мне, возьмите проверенный вариант от MisterDi. Или, если хотите, могу переделать свой вариант под Ваш способ запуска.


Сообщение отредактировал LazyCat - Понедельник, 11.07.2011, 23:47  
 
LeftRadio Понедельник, 11.07.2011, 23:56 | Сообщение # 1445
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Ха-ха-ха ! А я говорил, что будет хуже !!!

Мда, это Вас не украшает, а сложнее это всего на 3-4 макроячейки больше ресурсов чем Ваш вариант.

Я прекрасно представляю себе как работает D-триггер, и пусть уж лучше будет "ха-ха-ха", чем потом чесать репу и думать отчего сбои? То ли D-триггер переходит в метастабильное состояние(пойдите почитайте про это, или Вы думаете что такая ситуация совсем не возможна в Вашем варианте?), то ли проскакивают иголки на входе клока, а это очень может быть, я уже не первый день симулирую схемы в квартусе и если даже симулятор говорит что иголки могут быть и предупреждает о задержках клока/данных, то я считаю лучше перестраховаться лишними 3-4 макроячейками.

Я сомневаюсь что у Вас все работает так как надо, но проверять это уже не буду, отладив эту схему не хочется снова проводить полный цикл симуляций варианта который заведомо содержит сбойный узел. А также мне просто надоело по несколько раз просить Вас указать на то что по вашему мнению ошибочно, а не голословно заявлять о полной неработоспособности и главных недостатках и слышать в ответ только о правильности вашей схемы и неправильности моего варианта. Вы так и не захотели объяснить зачем Ваш вариант работает так а не иначе, зато без аргументов заявляли о ошибках. Это чёрте что а не работа над проектом

Думаю кому надо тот увидит всё на осциллограммах, и что данные правильно захватываются во всех режимах.


---

Нет войне!
 
LazyCat Вторник, 12.07.2011, 00:05 | Сообщение # 1446
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
даже симулятор говорит что иголки могут быть

Неправда, симулятор такого не говорил, Вы сами приводили message.

Quote (LeftRadio)
я считаю лучше перестраховаться лишними 3-4 макроячейками.

Да на здоровье, лишь бы они приводили к работоспособности !

Quote (LeftRadio)
или Вы думаете что такая ситуация совсем не возможна в Вашем варианте?

Да, невозможна в моем варианте ! Но если Вас это все же напрягает, то могу заменить этот элемент на решение от MisterDi, ничего больше не меняя, и получить опять работоспособный вариант всеравно проще Вашего нерабочего :)

P.S. В предыдущем посте я предложил кучу решений, но не понимаю Вашего упрямства в простых вещах :(
 
LeftRadio Вторник, 12.07.2011, 00:32 | Сообщение # 1447
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Неправда, симулятор такого не говорил, Вы сами приводили message.

Осциллограммы говорят об иголках от симуляции к симуляции!!!! Если не верите то скачайте quartus и симулирурте.
А message говорит о другом - задержки данных на входе триггера относительно входа клока.
И зачем переделывать под мой способ запуска, у меня же хуже, один сигнал с постоянными лог. уровнями для запуска/останова, вместо двух как у Вас, один из которых короткий ноль а не постоянный лог. уровень.

------------------------------------------------------------

Все таки решил просимулировать Вашу схему, сама симулированная схема, Осциллограммы, хотим синхронизироваться по фронту, порог равен 8, с предысторией и без:


Прикрепления: 5188600.png (41.8 Kb) · 3150648.png (44.1 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Вторник, 12.07.2011, 02:11  
 
LeftRadio Вторник, 12.07.2011, 02:22 | Сообщение # 1448
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Пересимулировал еще раз, так как узел с элементом AND2 и сигналом stop неправильный и постоянно блокирует триггер. Схема.

Осциллограммы с большим и меньшим масштабом.

Короткий ноль по одному входу:




Короткий ноль по другому входу:




--------------------------------------------------------------------------------

Вывод пока один, полная неработоспособность. Или моя грубая ошибка.
Прикрепления: 5651671.png (57.3 Kb) · 3586014.png (58.8 Kb) · 0916276.png (57.8 Kb) · 7550337.png (57.9 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Вторник, 12.07.2011, 02:25  
 
LazyCat Вторник, 12.07.2011, 02:23 | Сообщение # 1449
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Вот легкий намек на ту схему, что я говорил :)

Quote (LeftRadio)
И зачем переделывать под мой способ запуска, у меня же хуже

Сами ведь настаивали.

Quote (LeftRadio)
узел с элементом AND2 и сигналом stop неправильный и постоянно блокирует триггер.

И это правильно, но уже неважно :)
Прикрепления: 1655321.png (1.15 Mb)


Сообщение отредактировал LazyCat - Вторник, 12.07.2011, 02:29  
 
LeftRadio Вторник, 12.07.2011, 02:29 | Сообщение # 1450
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Нет не ошибка, точнее ошибка была(сигнал start передергивался в ноль там где не положено), но ее устранение ничего не решает, вот еще раз:

Прикрепления: 0066900.png (59.2 Kb)


---

Нет войне!
 
LeftRadio Вторник, 12.07.2011, 02:32 | Сообщение # 1451
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
И это правильно, но уже неважно :)

Ну может и неважно, но Ваш предыдущий вариант полностью правильный а мой ПОЛНОСТЬЮ неработоспособен, а новый выложенный Вами вариант еще меньше выигрывает по ресурсам моему, а может уже и проигрывает.


---

Нет войне!


Сообщение отредактировал LeftRadio - Вторник, 12.07.2011, 02:37  
 
LazyCat Вторник, 12.07.2011, 02:53 | Сообщение # 1452
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
новый выложенный Вами вариант еще меньше выигрывает по ресурсам моему, а может уже и проигрывает.

Нельзя сравнивать РАБОТАЮЩИЙ и НЕРАБОТАЮЩИЙ варианты. Доведите свой до ума и тогда посмотрим. Да и добавил то я всего один регистр. Нехорошо так говорить !!!

P.S. А вообще прикольно Вы симулируете. Очень смахивает на умышленную подтасовку :) Вы прекрасно знаете, что сигнал Start нужно подавать в момент когда устройство сброшено (WR_READY равен 0), но специально этого не делаете. У меня, например, возникают смутные предположения :(
 
Муха Вторник, 12.07.2011, 05:53 | Сообщение # 1453
Почетный Гражданин
Группа: Модераторы
Сообщений: 579
Статус: Offline
Доброе утро! Я тут смотрю у вас тут спор не шуточный. :D Уважаемый LazyCat, если Вам не трудно, пожалуйста скачайте и установите себе
Quartus. Тогда Вы сможете свои предложения сразу предварительно проверить на работоспособность. Когда у Вас будет результат симуляции, половина спорных вопросов сразу уйдет. И Владу проще станет. drink


Сообщение отредактировал Муха - Вторник, 12.07.2011, 05:53  
 
LazyCat Вторник, 12.07.2011, 09:27 | Сообщение # 1454
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (Муха)
Уважаемый LazyCat, если Вам не трудно, пожалуйста скачайте и установите себе Quartus.

К сожалению, я не имею возможности скачать себе квартус. И мы с Владом договорились, что симулировать будет он и выяснять нюансы в ПЛИСе по моей просьбе. Но не фальсифицировать !!!
На деле оказалось не так и выхода из сложившейся ситуации я пока не вижу :(
А свои предложения на работоспособность я проверяю другими методами, прежде чем сюда выкладывать !!!
 
LeftRadio Вторник, 12.07.2011, 13:04 | Сообщение # 1455
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Нельзя сравнивать РАБОТАЮЩИЙ и НЕРАБОТАЮЩИЙ варианты.

Вы издеваетесь :D , пока я не увидел полностью работоспособных вариантов от Вас(последний не проверял, да и в свете сказанного Вами ниже не буду), зато я показал на основе осциллограмм что мой вариант работает и работает правильно.

Quote (LazyCat)
А вообще прикольно Вы симулируете. Очень смахивает на умышленную подтасовку

Мда, я все понял.

Quote (LazyCat)
Вы прекрасно знаете, что сигнал Start нужно подавать в момент когда устройство сброшено (WR_READY равен 0), но специально этого не делаете. У меня, например, возникают смутные предположения :(

Ну и ну, я вообще без понятия когда нужно подавать сигнал старта и МК тоже! А вдруг при включении осцилла какие либо сигналы будут не в тех состояниях что нужно для нормальной работы??? В моем варианте абсолютно пофиг когда его подавать синхронизация отработает правильно и абсолютно пофиг какие сигналы будут 1, какие 0, все равно после установки сигнала Start_RW(по моей схеме) все сбросится на нужные значения.

По поводу смутных предположений. Объясняю не для Вас, смотрим схему LazyCat - http://hobby-research.at.ua/NS3/2.pdf , сигнал WR_READY является выходом, то есть устанавливать вручную его состояние я не могу, дальше, если мы посмотрим внимательно на схему LazyCat то увидим что в исходном состоянии(оно же состояние после прошлого запуска) на один вход элемента ИЛИ(inst17) который формирует сигнал WR_READY приходит 1 с выхода регистра lpm_dff2(inst2), этого уже достаточно что бы на выходе была 1, но на другой вход ИЛИ тоже приходит 1 так как в начальном состоянии сигнал Start1 = 0, то выход триггера inst6 тоже равен 1. Спрашивается каким образом можно дождаться когда сигнал WR_READY будет в 0??? Если его установка в ноль возможна только после запуска синхронизации!

Quote (LazyCat)
Но не фальсифицировать !!!

Я все понял, думать не хотим зато смутные предположения и обвинения хотим. Это смешно.

Quote (Муха)
И Владу проще станет. drink

Спасибо, но мне не нужно проще, мне главное что бы работало правильно и гарантированно без глюков, сколько не симулировал свою схему все отрабатывает как надо и без ошибок, и даже в случае сбоя, например питание ПЛИС просело, все можно легко вернуть в исходное состояние и продолжить работу. LazyCat же упорно не хочет объяснить какие по его мнению есть "ошибки" в моей схеме, зато начинает обвинять в фальсификациях меня из-за того что его вариант бредовый и его нужно дорабатывать до хоть какой нормальной работоспособности. Что я в принципе и сделал, просто доработал его вариант и все....
И припоминается его упорство получить глюки с захватом из-за экономии 16макроячеек и с как он это отстаивал, и что в его варианте при вычислениях макс./мин. не теряются отсчеты, а на деле оказалось что теряются и причем при любых коэффициентах прореживания, а у меня только при нечетных, зато всегда его варианты проще, лучше, красивей и работают правильнее всего того что могу я изобразить по своей глупости :D


---

Нет войне!
 
LazyCat Вторник, 12.07.2011, 13:32 | Сообщение # 1456
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
пока я не увидел полностью работоспособных вариантов от Вас

Оба варианта работают правильно, ведь это один и тот вариант :)

Quote (LeftRadio)
зато я показал на основе осциллограмм что мой вариант работает и работает правильно.

Правильной работы в осциллограммах я не увидел, не в обиду будет сказано ! Если Вас это устраивает, то можно на этом остановиться !

Quote (LeftRadio)
Ну и ну, я вообще без понятия когда нужно подавать сигнал старта и МК тоже! А вдруг при включении осцилла какие либо сигналы будут не в тех состояниях что нужно для нормальной работы???

А Вы внимательно посмотрите на свою программу. После сброса происходит init hardware и даже Start_RW Вы собираетесь устанавливать в своей схеме. А почему Вы считаете, что Stop не надо устанавливать в моей ? Вам даже стыдно на это ответить, ну да Бог Вам судья !!!

Quote (LeftRadio)
смотрим схему LazyCat - http://hobby-research.at.ua/NS3/2.pdf

ОПЯТЬ подтасовка - ЭТО не моя схема и Вы умышленно ее кастрировали !!!

Quote (LeftRadio)
LazyCat же упорно не хочет объяснить какие по его мнению есть "ошибки" в моей схеме

Последнее время только этим и занимаюсь, но что-то не находим взаимопонимания :(

Quote (LeftRadio)
зато начинает обвинять в фальсификациях меня

Ну Вы зачем-то последнее время это делаете! ЗАЧЕМ ???

P.S. Про отсчеты мы же не закончили, Вы сами переключились на триггер, хотя прекрасно видели, что у нас даже сигналы EN и EN1 разные, но дальше дорабатывать почему-то отказались !!! Излишний гонор очень мешает продуктивной работе. А по поводу стремления экономить, нам еще делать логический анализатор (Вы САМИ на нем настояли) и там схема еще сложнее и ресурсы ой как понадобятся. Но что-то энтузиазм у меня начинает иссякать :(
 
LeftRadio Вторник, 12.07.2011, 14:32 | Сообщение # 1457
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Start_RW

Для невнимательных, это единственный сигнал инициализирующий запись/чтение в осцилле.

Quote

Quote (LazyCat)
ОПЯТЬ подтасовка - ЭТО не моя схема и Вы умышленно ее кастрировали !!!

Quote (LazyCat)

Quote (LeftRadio) узел с элементом AND2 и сигналом stop неправильный и постоянно блокирует триггер.

И это правильно, но уже неважно :)


Это схема с вырезанным узлом AND2, но в предыдущих постах схема и осциллограммы с ним, и сигнал stop ни на что не влияет.

Quote (LazyCat)
Последнее время только этим и занимаюсь, но что-то не находим взаимопонимания :(

В последнее время Вы только тем и занимаетесь, что говорите о неработоспособности моего варианта без каких либо аргументов, типа неправильно и все. Ваш вариант единственно правильный, а я изобретаю велосипед. Как тут найти взаимопонимание бог его знает.... А по существу ответить на:
Quote (LeftRadio)
сигнал WR_READY является выходом, то есть устанавливать вручную его состояние я не могу...

Вам нечего вот и начинается черти что, фальсификат и т.д..

Quote (LazyCat)
Ну Вы зачем-то последнее время это делаете! ЗАЧЕМ ???

Спор прекращаю, это явно неадекватное поведение, уж извините. Каждый кто хочет может просимулировать Ваш вариант и увидеть что я ничего не фальсифицировал.

Ваши обвинения оскорбительны, как и Ваги утверждения что я это делаю специально! Да мне начхать Ваш вариант или мой, главное что бы работал нормально!!!

-------------------------------------------------------------------------------------

И напоследок всем кому интересно, "не урезанная" схема LazyCat и ее осциллограммы, со всеми вариантами сигналов start/stop, на сигнал WR_READY я влиять не могу это черт побери ВЫХОД:








И если без предыстории это еще работает, то с предысторией нет, а заявлялось что это "ПОЛНОСТЬЮ" работоспособный вариант и нехер его сравнивать с неработоспособным гавном LeftRadio занимающем пусть даже на 5 макроячеек больше.
Прикрепления: 4624383.png (43.0 Kb) · 2793683.png (43.0 Kb) · 7973866.png (45.1 Kb) · 5248594.png (45.3 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Вторник, 12.07.2011, 16:58  
 
LazyCat Вторник, 12.07.2011, 20:29 | Сообщение # 1458
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
Для невнимательных, это единственный сигнал инициализирующий запись/чтение в осцилле.

Для особо внимательных повторю, что сигнал Start_RW инициализируется в процедуре init hardware при сбросе МК и именно там же я инициализирую сигнал Stop, чтобы сбросить в 0 сигнал WR_READY. В самом начале диспута Вы это понимали, а что случилось сейчас непонимаю :(

Quote (LeftRadio)
сигнал stop ни на что не влияет.

А у Вас сигнал Start_RW ни на что не влияет, чтобы Вам было понятнее :D

Теперь по поводу осциллограмм. Вот ТЕПЕРЬ они просимулированы корректно, но по какой то причине не показан сигнал на выходе, как я писал ранее, самого главного узла inst6. Был бы весьма признателен, если бы Вы его показали !!!

Quote (LeftRadio)
И если без предыстории это еще работает, то с предысторией нет

Спасибо, что уж как-то заработало :)

P.S. неработоспособным гавном я Ваш вариант не называл. Незачем преувеличивать, это недостойно в техническом диспуте !!! К тому же третий раз повторяю, если он Вас устраивает, то давайте на этом остановимся ! Мое мнение тут не столь важно !

P.P.S. Я кажется нашел причину взаимонепонимания ! Скорее всего триггер inst6 в ПЛИСе работает не совсем так как "железный" 74HC74 (имеется ввиду реакция на асинхронные входы и грамотная симуляция это бы показала). Если так, то нужно соединить выход элемента inst29 с третьим входом элемента inst17, и всего делов :) А можно и еще проще.
Прикрепления: 8152598.png (786.8 Kb)


Сообщение отредактировал LazyCat - Вторник, 12.07.2011, 22:54  
 
Муха Среда, 13.07.2011, 05:56 | Сообщение # 1459
Почетный Гражданин
Группа: Модераторы
Сообщений: 579
Статус: Offline
Quote (LazyCat)
P.P.S. Я кажется нашел причину взаимонепонимания ! Скорее всего триггер inst6 в ПЛИСе работает не совсем так как "железный" 74HC74 (имеется ввиду реакция на асинхронные входы и грамотная симуляция это бы показала). Если так, то нужно соединить выход элемента inst29 с третьим входом элемента inst17, и всего делов А можно и еще проще.


Вот поэтому я и говорю, если бы у Вас стоял квартус, недопониманий бы было гораздо меньше. И есть еще один момент, это оптимизатор квартуса, он может так заоптимимзировать, что результат может отличаться от ожидаемого. Поэтому принимать решение о каждом изменении схемы, только после симуляции...
 
LazyCat Среда, 13.07.2011, 10:07 | Сообщение # 1460
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (Муха)
Вот поэтому я и говорю, если бы у Вас стоял квартус, недопониманий бы было гораздо меньше.

На это я уже отвечал, могу только повторить, что автор сам вызвался помочь с симуляцией моих предложений, но что из этого вышло Вы видите :( Мой вариант уже смакетирован в реальном "железе" и прекрасно работает, именно поэтому я настоятельно рекомендовал автору ознакомиться с теорией работы D-триггеров ! Если бы он это сделал, то первым сказал бы, что реализация D-триггера в ПЛИСе отличается от классической, и недоразумений бы не было ! Да и свой вариант он бы сделал правильно :( Но, значит, весь этот флуд на полторы страницы зачем-то был нужен ?


Сообщение отредактировал LazyCat - Среда, 13.07.2011, 10:28  
 
LeftRadio Среда, 13.07.2011, 12:06 | Сообщение # 1461
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
что сигнал Start_RW инициализируется в процедуре init hardware при сбросе МК

Конечно инициализируется, как и любой другой сигнал с МК, в МК :) , но потом это единственный сигнал переключающий осцилл из режима чтение в режим записи и обратно. А по поводу сигнала Stop я понятие не имел что его нужно устанавливать при старте, мне это никто не объяснял, пояснения были только в этом посте(причем сам описанный там алгоритм не гарантирует нам получении предыстории во всех вариантах), но про сигнал Stop там ни слова, я же напротив попытался наиболее подробно описать работу моего варианта, что бы Вам или кому другому было проще разобраться. Я был и сейчас против Вашего варианта не только из-за его некорректной работы и требования доп. алгоритмических действий МК по разным сигналам(сигнал Start при иниц. = 1 и иниц. Stop, кстати это два сигнала вместо одного у меня), а еще и по причинах описанных мною страницей назад.

Quote (LazyCat)
и именно там же я инициализирую сигнал Stop

А как же если порог триггера установили неправильно? У меня даже такой проблемы не возникает - передергивать Stop, так как его нет.

Quote (LazyCat)
что реализация D-триггера в ПЛИСе отличается от классической

Об этом еще kison говорил.


---

Нет войне!
 
LeftRadio Среда, 13.07.2011, 13:15 | Сообщение # 1462
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Кстати выход inst6 элементарно определяется по сигналам COUT_CNT2 и CNT_EN, так что не надо говорить что выход самого важного элемента нельзя отследить.





На COUT_CNT1 не обращайте внимания, это просто в vectorFile он не очистился, но как видно он полностью соответствует COUT_CNT2. На всякий скажу что симуляция полностью соответствует схеме ничего не фальсифицирую, просто не имею такой привычки...
Прикрепления: 7989685.png (45.2 Kb) · 1657888.png (64.6 Kb) · 0995045.png (63.8 Kb) · 3549790.png (63.3 Kb) · 9638180.png (63.7 Kb) · 5148960.png (63.7 Kb) · 5311909.pdf (10.8 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Среда, 13.07.2011, 22:38  
 
LeftRadio Среда, 13.07.2011, 15:29 | Сообщение # 1463
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Кстати вот сколько занимает ресурсов проект с моей версией синхронизации и добавил еще обработку кнопок:

Так что ресурсов должно хватиь для лог. анализатора, хотя я не уверен теперь нужен ли он, кто как считает? Свободно еще 260 макроячеек.

Код Verilog обработки кнопок:
Code

module keyAny
(
     CLK,
     WR,     
     inkey,
     out,
     keyPress
);        

parameter mCNT = 131071;
parameter NRB = 8;

input  CLK;      
input  [NRB - 1:0] inkey;    
input  WR;

output [NRB - 1:0] out;    
output keyPress;    

// iienaiea eniieucoaiuo neaiaeia
reg[NRB - 1:0] out = 255;    
reg keyPress = 0;    
reg[16:0] kDel;    

//-------------------------------------------------
always @(posedge CLK) begin    //Ñèíõðîíèçàöèÿ ñ ãëîáàëüíûì CLOCK

if(WR == 1)begin
       keyPress <= 0;
       out <= 255;       
end

if (keyPress == 0) begin    //Åñëè íåò âûäà÷è èìïóëüñà
    if (inkey != out) begin    //Äîæèäàåìñÿ ñðàáàòûâàíèÿ êíîïêè
     kDel <= kDel+1;   //Èíêðåìåíò ñ÷¸ò÷èêà
     if(kDel == mCNT) begin  //Æä¸ì ïîêà äîñ÷èòàåò ñ÷¸ò÷èê
      out <= inkey;   //Ïåðåäà¸ì ñèãíàëû êíîïîê íà âûõîä
      keyPress <= 1;   //Óñòàíàâëèâàåì ñèãíàë íàæàòèÿ êíîïêè
      kDel <= 0;    //Ñáðîñ ñ÷¸ò÷èêà
     end  //if
    end  //if
    else  kDel <= 0;    //Ñáðîñ ñ÷¸ò÷èêà
end  //if
else begin
    kDel <= kDel+1;     //Èíêðåìåíò ñ÷¸ò÷èêà
    if(kDel == mCNT) keyPress <= 0;  //Ñáðàñûâàåì ñèãíàë íàæàòèÿ êíîïêè
end  //else

end  //always
endmodule


И как оно работает:
Прикрепления: 5987244.png (15.5 Kb) · ns35.pdf (32.5 Kb) · 0534469.png (31.8 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Среда, 13.07.2011, 17:22  
 
LazyCat Среда, 13.07.2011, 20:25 | Сообщение # 1464
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
потом это единственный сигнал переключающий осцилл из режима чтение в режим записи и обратно

Сколько можно об одном и том же ? Ведь уже говорилось, что переключать обратно в моем случае не нужно !

Quote (LeftRadio)
А по поводу сигнала Stop я понятие не имел что его нужно устанавливать при старте, мне это никто не объяснял

Я и понятия не имел, что при Вашей-то квалификации нужно объяснять подобные вещи :(

Quote (LeftRadio)
и сейчас против Вашего варианта не только из-за его некорректной работы и требования доп. алгоритмических действий МК по разным сигналам

Ну работа то оказывается абсолютно корректной :) Алгоритмических действий не больше чем у Вас !!! А разные сигналы я предлагал привести к удобной для Вас форме, но Вы отказались, поэтому это нельзя считать недостатком !!!

Quote (LeftRadio)
А как же если порог триггера установили неправильно? У меня даже такой проблемы не возникает - передергивать Stop, так как его нет.

О этом тоже уже говорили и Вы согласились, что алгоритм полностью идентичный ! А что теперь вдруг случилось ?

Quote (LeftRadio)
Об этом еще kison говорил.

Я этого не припомню да и Вы не напомнили :( И, кстати, на осциллограммах, что Вы теперь привели D-триггер стал работать правильно, как 74HC74 !!! Почему это произошло ?

Quote (LeftRadio)
Кстати выход inst6 элементарно определяется по сигналам COUT_CNT2 и CNT_EN, так что не надо говорить что выход самого важного элемента нельзя отследить.

Именно об этом я и говорил, нужного нет а COUT_CNT1 и COUT_CNT2 выведены аж дважды :( При симуляции своего варианта Вы таких ляпов не допускали, что очень характеризует Ваше отношение к собеседнику.

P.S. Кстати, совершенно не понял, что за схему Вы симулировали ? Где Вы это взяли ? Или это доработки ? Вы лучше уж уберите тот лишний инвертор, что Вы поставили.


Сообщение отредактировал LazyCat - Среда, 13.07.2011, 20:42  
 
LeftRadio Среда, 13.07.2011, 21:22 | Сообщение # 1465
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Ведь уже говорилось, что переключать обратно в моем случае не нужно !

Не хочу продолжать спорить, просто замечю что МК в любом варианте должен "узнать" что запись окончена и ето есть и у Вас и у меня, какая разница автоматически ПЛИС переключится на чтение после обнаружения окончания записи или по опусканию сигнала Start_WR? Тем более что в моем случае есть преимущество в одном состоянии сигнал Start_WR сбрасывает/инициализирует значениями одни блоки, в другом другие, что возможно позволит обойтись без специального сигнала сброса при включении питания ПЛИС.

Quote (LazyCat)
О этом тоже уже говорили и Вы согласились, что алгоритм полностью идентичный !

Нет не идентичный, в Вашем случае МК после обнаружении отсутствия сигнала окончания записи по таймауту передергивает stop(принудительно запустит развертку) и ждет пока память запишется, затем читает. В моем по таймауту сразу может читать так как память пишется и без сигнала синхронизации. Вроде бы и не такая проблема, но представим что развертка медленная может даже очень тогда у Вас придется после таймаута еще ждать и может достаточно долго пока заполнится память на заданное окно. Это будет создавать впечатление зависания, у меня задержка вывода будет меньше.

Quote (LazyCat)
Почему это произошло ?

Сфальсифицировал :'( , а вообще как есть так и симулирую, может компилер чудит к Altere вопросы.

Quote (LazyCat)
P.S. Кстати, совершенно не понял, что за схему Вы симулировали ? Где Вы это взяли ?

Да действительно моя ошибка, спешил и не увидел что в новой схеме Вы у себя убрали этот инвертор, пересимулирую и исправлю тот пост новыми осциллограммами.


---

Нет войне!
 
LazyCat Среда, 13.07.2011, 21:50 | Сообщение # 1466
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
В моем по таймауту сразу может читать так как память пишется и без сигнала синхронизации.

Кстати, Вы, наверное, не совсем понимаете причину такого решения. Оно гарантирует что даже если сигнал stop будет подан раньше заполнения окна, окно заполнится полностью. В Вашем же случае, если сигнал start_RW снять раньше, окно останется незаполненным и на экране будет бред ! Но если TIMEOUT вычисляется правильно, эта перестраховка не нужна и схему можно еще упростить и сделать принудительный стоп, ведь и в моем варианте память тоже пишется постоянно !

Quote (LeftRadio)
может компилер чудит

Как то избирательно и стабильно чудит :'(

Quote (LeftRadio)
пересимулирую и исправлю тот пост новыми осциллограммами.

Тогда уж лучше старый вариант(мне он больше нравится), если компилер чудить не будет :D И достаточно всего 2-х осциллограмм (с предысторией и без), чтобы не захламлять форум.


Сообщение отредактировал LazyCat - Среда, 13.07.2011, 23:08  
 
LeftRadio Четверг, 14.07.2011, 03:04 | Сообщение # 1467
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
В Вашем же случае, если сигнал start_RW снять раньше, окно останется незаполненным и на экране будет бред !

А зачем его снимать раньше? Если пришел сигнал завершения записи то он снимается МК автоматом и никакого бреда, если по таймауту то тоже бреда не будет.

Quote (LazyCat)
Как то избирательно и стабильно чудит :'(

Я Вас понял.

Quote (LazyCat)
Тогда уж лучше старый вариант

Зачем? Ну раз Вы настаиваете, то пожалуйста, схема еще раз, и три осциллограммы:



Только потрудитесь найти отличия от тех первых осциллограмм что я выкладывал в том посте, а если же мне не верите и продолжаете утверждать что я фальсификатор, то разговаривать с Вами прекращаю, мне надоело выслушивать оскорбления всему есть предел.

----------------------------------------------------------------------------------------------
Кстати почему я говорил что у Вас алгоритм синхронизации не совсем правильный, дело в том что после записи предыстории мы должны сбросить все условия которые произошли в этот промежуток так как за время предыстории сигнал может несколько раз пересекать границу окна и то что флаг "были в окне" установлен не означает что мы сейчас синхронизируемся правильно, нам нужно заново словить все условия и только потом синхронизироваться, тогда ошибки исключены.

Объясню на примере нужно синхронизироваться по входу в окно, при старте сигнал в окне - условие сработало, но мы пока пишем предысторию, далее сигнал вышел из окна "снизу" например и опять зашел, мы же если только отслеживать пропущенное условие досчитаем счетчиком предвыборки и тут же, а не по входу в окно, словим выполнение условия так как сигнал у нас в окне.
Прикрепления: 8007185.png (44.0 Kb) · 2653636.png (42.9 Kb) · 2409273.png (43.0 Kb) · 9354416.pdf (10.9 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Четверг, 14.07.2011, 07:11  
 
LazyCat Четверг, 14.07.2011, 10:43 | Сообщение # 1468
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
А зачем его снимать раньше? Если пришел сигнал завершения записи то он снимается МК автоматом и никакого бреда, если по таймауту то тоже бреда не будет.

Если Вы не поняли суть описанной ситуации, зачем тогда комментировать ?

Quote (LeftRadio)
Только потрудитесь найти отличия от тех первых осциллограмм что я выкладывал в том посте

Вы сами прекрасно видели, что inst6_out опять перестал работать !!! И какой смысл было выкладывать ЭТИ осциллограммы и еще их комментировать ? Надо было просто попробовать вариант с переносом инвертора и сменой входов триггера, если Вам не трудно. Надо же узнать где глюк в квартусе !

Quote (LeftRadio)
Кстати почему я говорил что у Вас алгоритм синхронизации не совсем правильный, дело в том что после записи предыстории мы должны сбросить все условия которые произошли в этот промежуток так как за время предыстории сигнал может несколько раз пересекать границу окна и то что флаг "были в окне" установлен не означает что мы сейчас синхронизируемся правильно, нам нужно заново словить все условия и только потом синхронизироваться, тогда ошибки исключены.

Это основа любого триггера !!! И само собой разумеется, я учитывал это при разработке. Повторяю, в реальном железе все работает !
Я долго добивался, чтобы Вы осознали необходимость дифференциатора фронта(несколько раз просил посмотреть проект MisterDi или теорию D-триггеров, где это происходит автоматически). Вы очень долго не хотели этого понять :( В итоге перенесли триггер inst4 в правильное место, но добавили совершенно ненужный сигнал sync_OUT_IN_WIN :( Получили иллюзию правильной работы, но какой ценой(я не о лутах), хотя я постоянно предлагал Вам более элегантное решение(я не о своем варианте). А получилось, что я упертый баран ?

P.S. Кстати, на 3 поставленных вопроса можете не отвечать - я ответ знаю ! Выполните хотя бы мою просьбу.
 
LeftRadio Четверг, 14.07.2011, 16:00 | Сообщение # 1469
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Если Вы не поняли суть описанной ситуации

Правильное или неправильное вычисление таймаута микроконтроллером нельзя отнести к недостаткам схемы в ПЛИС.

Quote (LazyCat)
И какой смысл было выкладывать

Если бы я просто сказал что не работает возможно Вы в очередной раз мне не поверили бы и сказали что я просто не хочу.

Quote (LazyCat)
Выполните хотя бы мою просьбу.

Не буду, как и не буду больше для Вас чего либо симулировать пока не услышу извинений за оскорбления.


---

Нет войне!


Сообщение отредактировал LeftRadio - Четверг, 14.07.2011, 20:20  
 
LazyCat Четверг, 14.07.2011, 20:45 | Сообщение # 1470
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
Правильное или неправильное вычисление таймаута микроконтроллером нельзя отнести к недостаткам схемы в ПЛИС.

Про это никто и не говорил. Просто при разработке я учитывал абсолютно все возможные проблемы и, как я уже сказал, от многого можно отказаться даже упростив схему !

Quote (LeftRadio)
не буду больше для Вас чего либо симулировать

Значит заработало и мне этого достаточно да и симулировать больше НИКОГДА и НИЧЕГО не придется. Вы хозяин своего слова, захотели дали, захотели забрали. Я не в обиде, но выводы сделал. Второй раз на эти же грабли наступать не буду !

Напоследок небольшая хронологическая справка для ВСЕХ читателей форума.
1. я предложил начальную схему выборки
2. автор после нескольких дополнений и симуляций бросил на полпути начатое, не устранив недостатки причем виновным в них оказался я (см. пост 1455), и переключился на триггер
3. я предложил начальную схему триггера
4. автор после своих доработок выложил ее как рабочий вариант
5. я долго и упорно пытался доказать ее неработоспособность, т.к. в ней не было главного - дифференциатора фронта для ловли условия срабатывания триггера, и многократно предлагал взглянуть на схему MisterDi или посмотреть как используется D-триггер в моем варианте, но кроме скандала ничего не вышло
6. после того как я показал использование дифференциатора на своем варианте, автор, наконец, понял свою ошибку и сделал дифференциатор на регистрах(о велосипеде с квадратными колесами здесь уже говорили), который работал неправильно
7. я опять указал на ошибку и опять получил скандал
8. последний вариант автора, уже на триггерах, я и рассматривать не буду, т.к. от мноих услуг автор в грубой форме отказался
И ни разу не было признания своей неправоты.

Итог : (недоделанная схема выборки) + (монструозный триггер). Хорошо, что от логического анализатора отказались- страшно подумать чтобы получилось. Хотя предупреждать надо было заранее чтоб я не тратил на него время.

Quote (LeftRadio)
пока не услышу извинений за оскорбления.

Я человек порядочный и приношу свои извинения, если ПРАВДА для Вас оскорбительна !!! Вы человек сложный в общении, а разрабатывать с Вами что-либо совместно вообще нереально ! Культурно общаться Вы не приучены или гонор мешает ?

P.S. Вопрос к Муха : все ли я правильно изложил, ничего не напутал ?
 
LeftRadio Четверг, 14.07.2011, 23:40 | Сообщение # 1471
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
Значит заработало

Без понятия, честно.

По поводу хронологической справки, я никогда не отрицал Ваш вклад в проект, за что Вам спасибо, и я всегда подчеркивал что мои схемы в ПЛИС сделаны на Вашей основе.

Quote (LazyCat)
И ни разу не было признания своей неправоты.

Я и сейчас считаю что мой доработанный вариант нормально работоспособен, все условия триггера ловятся никаких ложных срабатываний. И так, и сяк симулировал, все четко работает.

Quote (LazyCat)
Хорошо, что от логического анализатора отказались

Почему отказались? Я только спросил что кто думает, нужен или нет.

Quote (LazyCat)
ПРАВДА для Вас оскорбительна

Извините но называть ПРАВДОЙ то что я фальсификатор несколько неправильно я считаю, так как я ничего не фальсифицировал и последние осциллограммы Вашего изначального варианта это доказывают, каждый может собрать эту схему в quartus и проверить, или я неправ и все таки это ПРАВДА что я фальсификатор?

Quote (LazyCat)
или гонор мешает ?

Нет у меня гонора, я лишь отстаивал свое мнение, во всяком случае ни кого не оскорблял.


---

Нет войне!


Сообщение отредактировал LeftRadio - Пятница, 15.07.2011, 06:43  
 
LeftRadio Четверг, 14.07.2011, 23:45 | Сообщение # 1472
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Все, прошу в том числе и себя больше не спорить :) Если хотите дальше участвовать и конструктивно помочь, то пожалуйста конкретно скажите почему у меня неправильно ловится условия синхронизации, был бы Вам признателен. Если желания нет, то это ваше право.

---------------------------------------------------------------------------------------------

Отредактировал немного дизайн.
Прикрепления: 6976722.pdf (33.4 Kb)


---

Нет войне!
 
LeftRadio Пятница, 15.07.2011, 06:28 | Сообщение # 1473
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Вот с какими изменениями работает Ваш вариант, в разных режимах не симулировал - вх./вых. из окна, только по фронту. Работает пока один в один с моим правда не знаю пока как себя поедет при синхр. вх./вых из окна.

--------------------------------------------------------------------------------

Мда, теперь вдвойне неприятны безосновательные оскорбления, а потом еще объявление их правдой :(
Прикрепления: 1915057.png (44.8 Kb) · 4750074.png (47.5 Kb) · 0695656.pdf (11.6 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Пятница, 15.07.2011, 06:46  
 
LazyCat Пятница, 15.07.2011, 10:29 | Сообщение # 1474
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
Я и сейчас считаю что мой доработанный вариант нормально работоспособен, все условия триггера ловятся никаких ложных срабатываний. И так, и сяк симулировал, все четко работает.

До установки дифференциатора все предыдущие версии НЕ РАБОТАЛИ, но Вы это не признали, не признаете, и не признаете никогда :(

Quote (LeftRadio)
Вот с какими изменениями работает Ваш вариант

Как всегда Вы мои посты не читаете, а я, дурак, распинался:
Quote (LazyCat)
P.P.S. Я кажется нашел причину взаимонепонимания ! Скорее всего триггер inst6 в ПЛИСе работает не совсем так как "железный" 74HC74 (имеется ввиду реакция на асинхронные входы и грамотная симуляция это бы показала). Если так, то нужно соединить выход элемента inst29 с третьим входом элемента inst17, и всего делов

Но уже это неважно :(

P.S. Да, про неработоспособность Вашего последнего варианта я и не говорил(т.к. не разбирался, но должен работать из-за наличия дифференциатора), а только подчеркивал его неоправданную монструозность !


Сообщение отредактировал LazyCat - Пятница, 15.07.2011, 10:35  
 
LeftRadio Пятница, 15.07.2011, 14:01 | Сообщение # 1475
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
До установки дифференциатора все предыдущие версии НЕ РАБОТАЛИ

Начиная с того на который Вы сказали "я же говорил что будет хуже" работали. До этого да, полностью, не работал мой вариант это была лишь система запуска с предысторией/без и отсчета необходимых для записи отсчетов. Ну так Вы и на все последующие варианты уже с дифференциатором говорили что они НЕРАБОТАЮТ и главный недостаток я не устранил.

Quote (LazyCat)
Как всегда Вы мои посты не читаете

Читаю, что плохого что работа inst6 стала до конца ясна? Ну да, заменить ИЛИ на трехвходовой и подать туда инвертированный Start1 проще, но это не значит что я не читаю Ваши посты, это Вы кажется не читаете, так и не назвали главный недостаток и почему мои варианты после добавления дифферинциатора нерабочие. Вы держитесь оскорбленным хотя Вас никто не оскорблял и не обвинял в подтасовке и избирательных глюках компилятора. А причина взаимонепонимания возникла после того как я оказался фальсификатором из-за работы триггера которая не совсем соответствует 74НС74, я лишь сомневался в Вашей схеме(или это нельзя?) и был против такой подачи клока на триггер.





Я вижу что мои просьбы не спорить игнорируются, хотя это Вы меня оскорбили а не я Вас, тем неимение я решил снизить обороты, но видимо бесполезно.

---------------------------------------------------------------------------------------------
Для всех не только для Вас, вот пытался получить синхронизацию по входу в окно(от 8 до 18) "сверху" или "снизу" когда в момент старта мы "оказываемся" уже в окне. Мне это не удалось, фиксируется только выход, я об этом говорил и LazyCat заметил что все учтено в отличии от моей "НЕРАБОТОСПОСОБНОЙ" схемы(пост LazyCat где он называет мой вариант уже с дифферинциатором неработоспособным в отличии от его), хотя у меня все четко работает как по входу в окно с "любой стороны" так и по выходу также "в любую сторону".

Может теперь, после осциллограмм схемы LazyCat станет понятна "неоправданная" сложность моего варианта, поверьте я над ней достаточно долго думал и много симулировал, кстати и достаточно сильно упростил в последней схеме(кое что зря, пост ниже).
Прикрепления: 0917653.png (72.2 Kb) · 7624428.png (72.4 Kb) · 3485388.png (72.0 Kb) · 2643428.png (72.0 Kb) · 7440332.pdf (11.4 Kb)


---

Нет войне!


Сообщение отредактировал LeftRadio - Пятница, 15.07.2011, 16:46  
 
LeftRadio Пятница, 15.07.2011, 14:52 | Сообщение # 1476
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Зря я выкинул demux1_2 в своей схеме что выкладывал, вернул на место, вот осциллограмма моего варианта, синхронизация по входу в окно, при тех же условиях как постом выше. Вход в окно четко фиксируется, так и должно работать:

Прикрепления: 3285028.png (70.1 Kb) · temp.pdf (13.7 Kb)


---

Нет войне!
 
LazyCat Пятница, 15.07.2011, 21:01 | Сообщение # 1477
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
Ну так Вы и на все последующие варианты уже с дифференциатором говорили что они НЕРАБОТАЮТ и главный недостаток я не устранил.

Ну, истинного дифференциатора(как у меня и MisterDi) у Вас нет и сейчас, есть просто выделитель фронта, т.к. в Вашем варианте запуска этого достаточно !!! Так вот, все предыдущие схемы, включая первый вариант в "выделителем" на регистрах(про который я сказал "хуже") были неработоспособны. После того, как Вы перенесли регистр, схема заработала и я четыре раза предлагал на этом остановиться ! Претензии были только к неоправданной сложности :)

Quote (LeftRadio)
лишь сомневался в Вашей схеме(или это нельзя?) и был против такой подачи клока на триггер.

Что я с удовольствием и изменил, заодно показав применение дифференциатора фронта ! Заметьте, сам алгоритм работы схемы не изменился и остался таким до сих пор ! Повторяю, в реальном железе все работает, а нюансы реализации в квартусе Вы обещали уладить :(

Quote (LeftRadio)
Для всех не только для Вас, вот пытался получить синхронизацию по входу в окно(от 8 до 18) "сверху" или "снизу" когда в момент старта мы "оказываемся" уже в окне.

Вы говорите про входные компараторы ? Так они были предложены как концепт на Вашу просьбу о разных режимах синхронизации :
Quote (LeftRadio)
• Запуск по параметрам окна . Окно – это зона с верхней и нижней границами, между которыми находится значение уровня запуска. Схема запуска срабатывает, когда уровень сигнала пересекает границу в направлении выхода из зоны. Следующий запуск возможен после возврата сигнала в зону окна.


До этого у нас даже обсуждение не дошло, поэтому я над этим и не работал !!! Зачем все валить на меня ??? Кстати, мой вариант удовлетворяет Вашему требованию ! Кроме того, я считаю, что синхронизация по входу в окно совершенно не нужна. Если логически подумать, то это обычная синхронизация с одним порогом. И я честно это отметил в посте 1468.
Но если Вы считаете иначе, пусть так и будет !!!
Вы уже остановились на конкретном выборе и уже можно закончить это обсуждение !!!


Сообщение отредактировал LazyCat - Пятница, 15.07.2011, 22:20  
 
LeftRadio Пятница, 15.07.2011, 23:30 | Сообщение # 1478
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
есть просто выделитель фронта, т.к. в Вашем варианте запуска этого достаточно !!!

А в каком не достаточно? я без каких задних мыслей спрашиваю, просто интересно.

Quote (LazyCat)
Кстати, мой вариант удовлетворяет Вашему требованию !

Да действительно полностью удовлетворяет, я почему то шире понял синхронизацию по окну, но мне кажется больше режимов синхронизации лучше, тем более небольшой ценой, всего в 4 макроячейки :)

-------------------------------------------------------------------------------------------

Жаль что никто не высказался по поводу нужности лог. анализатора, в принципе место в ПЛИС еще есть, да и ноги свободные тоже.


---

Нет войне!
 
LazyCat Суббота, 16.07.2011, 10:08 | Сообщение # 1479
Завсегдатай
Группа: Проверенные
Сообщений: 329
Статус: Offline
Quote (LeftRadio)
А в каком не достаточно? я без каких задних мыслей спрашиваю, просто интересно.

Истинный дифференциатор фронта работает абсолютно автономно и не требует дополнительного управления, в Вашем же случае понадобились элементы inst20 и inst37. Переход к дифференциатору слегка бы упростил схему :)

Quote (LeftRadio)
но мне кажется больше режимов синхронизации лучше

В данном случае никакой новый режим синхронизации не добавляется :)


Сообщение отредактировал LazyCat - Суббота, 16.07.2011, 15:44  
 
LeftRadio Суббота, 16.07.2011, 16:23 | Сообщение # 1480
Совсем живу сдесь...
Группа: Администраторы
Сообщений: 2045
Статус: Offline
Quote (LazyCat)
В данном случае никакой новый режим синхронизации не добавляется :)

Новый тип синхронизации не добавляется, а просто получаем дополнительный вариант при синхронизации по окну, можно регистрировать вход в окно с любой стороны, а не только снизу вверх. На последних осциллограммах Вашего и моего вариантов это ведь видно.

Ладно, а что все таки с лог. анализатором? Все молчат :( , плату то я уже начал разводить, нужно определится.


---

Нет войне!
 
Форум » Сайт и форум » Разработки и Статьи на сайте » Все вопросы касающиеся Neil Scope (Ваши замечания, предложения и т.д.)
Поиск:
uTmpl.ru Сайт создан в системе uCoz Сейчас: 24.04.2024, 06:03