Добрый день.
Подскажите, можно как-то избавиться от циклической связи - заменить на обычную, которую ОЛ подставляет автоматически (выделяет желтым цветом и формирует задержку на один такт)? Замена данной линии на линию задержки не решает проблему, задержка в один такт остается и нарушает работу программы.
Пример 1. Пытался реализовать алгоритм циклического регистра сдвига (бегущая волна) на D-Тригерах. Пока цикл не замкнут - все работает четко, выходы переключаются по очереди, без задержек и через равные интервалы. Но стоит замкнуть цикл (подключить выход последнего триггера на вход первого,
Вложение 63211 обозначено красной линией) появляется сообщение о циклической связи, начинаются сбои в интервалах между включениями выходов. Проект ОЛ: ПР100_Бег_волна.owle.
Пример 2. Реализовал алгоритм циклического регистра сдвига (бегущая волна) на счетчиках, получилось громоздко и плохо масштабируемо, но зато работает четко. Проект ОЛ: ПР100_Бег_волна_2.owle. Решил немного оптимизировать программу - остановить стартовый генератор после завершения установки начальных состояний счетчиков (снижение вычислительной нагрузки), добавил обратную связь (
Вложение 63214 обозначено красной линией) появилась циклическая связь (обозначено желтой линией) и нарушила работу алгоритма.
Может я что-то делаю не так - подскажите, как надо, или может есть другие варианты реализации циклического регистра сдвига (бегущая волна) с возможностью удобного масштабирования.
Видел на форуме интересный вариант:
ссылка, автору спасибо.
P.S. Конкретной задачи при разработке данных алгоритмов нет, просто изучаю ОЛ, пробую реализовывать алгоритмы и схемы которые раньше собирал на логических микросхемах.