меня не покидает ощущение, что вы нас обманываете. никакие обратные связи, и никакая трижды линейная программа не могут давать A = !A.
по крайней мере, в нашей вселенной.
В любом случае, при схеме с обратной связью где-то (будь то на входе или на выходе) значение будет обновлено только на следующем такте. Но я считаю что в любой момент времени (под любым моментом понимается в конец любого цикла программы) выполнение функций элементов должны быть верны. Но с точки зрения отображения значений допустимо, что на одном конце связи одно значение, на другом будет другое... Может не понятно написал... Например, рассмотрев простейший случай, когда с выхода элемента идет связь на его же вход. Тогда значение на этом входе будет равно выходу на следующем такте. Надеюсь понятно объяснил.
То, что на данный момент схема ведет себя не адекватно в разных ситуациях было уже сказано мной http://www.owen.ru/forum/showpost.ph...&postcount=213.
Последний раз редактировалось wal79; 12.04.2011 в 11:33.
программер
ну не скажите.... вот типичный пример, который легко реализуется и на языке функциональных блоков
тут а<>а, НО а=а+1так же как и пример Т-триггер мне казался не важным, следующие два триггера тож мне кажутся просто баловством...Код:while True do a:=a+1 end
но по "просьбам трудящихся" всё же опубликую...
верхняя часть - это D-триггер, а нижняя - просто детектор фронтов, причём обоих...
не понял про р-триггер
так по фронту есть встроенный...
или я не прав?
Нужен еще кольцевой целочисленный регистр сдвига ,с параллельной записью и сдвигом информации по синхроимпульсу ,с переменной(задаваемой) разрядностью(количество бит).На булевой логике я это делал ,хорощо бы иметь и целочисленный вариант ,которые у вас хорошо получаются
Последний раз редактировалось rovki; 14.04.2011 в 08:24.
электронщик до мозга костей и не только