Триггеры для асинхронных схем.
Запись от Hrethgir размещена 08.12.2024 в 19:02
Показов 2101
Комментарии 0
|
Невзирая на некоторую неоднозначность тестбенчей (логика что понять, что тестбенчи возможно не точные, а указывают лишь на скорость смещения границы переднего фронта сигнала, а не на фактическое состояние триггеров, само быстродействие может быть намного быстрее у триггеров, так как тестбенчи двулинейного сумматора указали на то, что скорость асинхронной логики невероятно быстрая, мной было решено продолжить поиск вариантов схем быстрых триггеров, потому что сомнительно что триггеры из учебников и книг работать будут быстро в сравнении с двулинейным сумматором и его сокращённой схемой. И логика указывает на то, что триггеры можно делать быстрые, но им нужен стартовый запуск перед началом работы, в остальном их работа соответствует работе триггеров. Данная схема содержит часть этой схемы , что перед словами [QUOTE]И тогда всё стало ровно и проект работал. [/QUOTE] в этой публикации [url]https://habr.com/ru/articles/854562/[/url], а именно - элемент НЕ и И, последний с контакта установки, а первый с контакта сброса . Триггер требует запуска, вообще сигнал ошибки не является критичным, критичным, насколько я понял, является распространение сигнала ошибки по сети, поэтому в виде схемы прилагаю вариант схемы, но мне он кажется слишком ёмким, поэтому думаю, что всё же при запусках схем сигнал ошибки, который постепенно исключается схемой, не является критичным. Но всё будет проверено, тем не менее. На анимации триггер с запуском,. Смысл запуска заключается в сбросе триггера, что устранит сигнал ошибки на его выходе на всё время его работы, независимо от состояния [IMG]https://www.cyberforum.ru/blog_attachment.php?attachmentid=9095&stc=1&d=1733994298[/IMG], но тут она следующая Но этот триггер плох тем, что выдаст ошибку в случае поступления на вход установки состояния сигнала Z, но только, если на выходе на тот момент 0. И чтобы не отступать от темы тут, приведу анимацию того, о чём говорилось там [url]https://habr.com/ru/articles/854562/[/url] и упоминается здесь - сохранение состояния триггера при состоянии Z на входящем провожу симуляцию. Разработчики преследовали именно эту цель - сохранение сигнала выхода, если на выходе единица, а на входе Z. [IMG]https://www.cyberforum.ru/blog_attachment.php?attachmentid=9096&stc=1&d=1734006367[/IMG] Но вообще это всё равботает и без старта, [IMG]https://www.cyberforum.ru/blog_attachment.php?attachmentid=9097&stc=1&d=1734024357[/IMG] Видимо логика разработчиков FPGA заключается ещё в том, что читать состояние ошибки нет никакой неободимости. Как отследить его мной будет проверено позднее. Вероятно будет применено для асинхронного счётчика на баще многоразрядного асинхронного сумматора. Смысл асинхронного счётчика - ещё раз проверить скорость асинхронной логики и заодно "отрепитировать" многоразрядный сумматор. Согласование счёта сумматора и счётчика будет проводиться через флаги переноса разряда и линию отсчёта задержки. Но, самый простой логический элемент - инвертор. Вообще узнал для себя некоторые вещи полезные [URL="https://mculab.ru/view_article.php?id=75#:~:text=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9%20%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9%20%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9%20%D1%8D%D0%BB%D0%B5%D0%BC%D0%B5%D0%BD%D1%82%20%E2%80%94%20%D1%8D%D1%82%D0%BE,%D0%BE%D0%B4%D0%B8%D0%BD%20%D0%B2%D1%85%D0%BE%D0%B4%20%D0%B8%20%D0%BE%D0%B4%D0%B8%D0%BD%20%D0%B2%D1%8B%D1%85%D0%BE%D0%B4."]https://mculab.ru/view_article.php?id=75#:~:text=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9%20%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9%20%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9%20%D1%8D%D0%BB%D0%B5%D0%BC%D0%B5%D0%BD%D1%82%20%E2%80%94%20%D1%8D%D1%82%D0%BE,%D0%BE%D0%B4%D0%B8%D0%BD%20%D0%B2%D1%85%D0%BE%D0%B4%20%D0%B8%20%D0%BE%D0%B4%D0%B8%D0%BD%20%D0%B2%D1%8B%D1%85%D0%BE%D0%B4.[/URL] [QUOTE]Простейшие логические элементы Инверторы Самый простой логический элемент — это инвертор (логический элемент НЕ, "inverter"), уже упоминавшийся в первой лекции. Инвертор выполняет простейшую логическую функцию — инвертирование, то есть изменение уровня входного сигнала на противоположный. Он имеет всего один вход и один выход. Выход инвертора может быть типа 2С или типа ОК. Ниже представлены условные обозначения инвертора принятые у нас и за рубежом и таблица истинности. Условные обозначения инверторов: зарубежные (слева) и отечественные (справа) Таблица истинности инвертора Повторители и буферы Повторители и буферы отличаются от инверторов прежде всего тем, что они не инвертируют сигнал (правда, существуют и инвертирующие буферы). Они выполняют функцию увеличения нагрузочной способности сигнала, то есть позволяют подавать один сигнал на много входов. Для этого имеются буферы с повышенным выходным током и выходом 2С, например, ЛП16 (шесть буферных повторителей). Большинство буферов имеют выход ОК или 3С, что позволяет использовать их для получения двунаправленных линий или для мультиплексирования сигналов. Применение буфера с 3С в качестве буфера с ОК Таблица истинности буфера без инверсии Элементы И, И-НЕ, ИЛИ, ИЛИ-НЕ Следующий шаг на пути усложнения компонентов цифровой электроники — это элементы, выполняющие простейшие логические функции. Объединяет все эти элементы то, что у них есть несколько равноправных входов (от 2 до 12) и один выход, сигнал на котором определяется комбинацией входных сигналов. Самые распространенные логические функции — это И (в отечественной системе обозначений — ЛИ), И-НЕ (обозначается ЛА), ИЛИ (обозначается ЛЛ) и ИЛИ-НЕ (обозначается ЛН). Присутствие слова НЕ в названии элемента обозначает только одно — встроенную инверсию сигнала. В международной системе обозначений используются следующие сокращения: AND — функция И, NAND — функция И-НЕ, OR — функция ИЛИ, NOR — функция ИЛИ-НЕ. Название самих функций И и ИЛИ говорит о том, при каком условии на входах появляется сигнал на выходе. При этом важно помнить, что речь в данном случае идет о положительной логике, о положительных, единичных сигналах на входах и на выходе. Элемент И формирует на выходе единицу тогда и только тогда, если на всех его входах (и на первом, и на втором, и на третьем и т.д.) присутствуют единицы. Если речь идет об элементе И-НЕ, то на выходе формируется нуль, когда на всех входах — единицы. Цифра перед названием функции говорит о количестве входов элемента. Например, 8И-НЕ — это восьмивходовой элемент И с инверсией на выходе. Обозначения элементов И, И-НЕ, ИЛИ, ИЛИ-НЕ: зарубежные (слева) и отечественные (справа) Таблица истинности двухвходовых элементов И, И-НЕ, ИЛИ, ИЛИ-НЕ Все эти элементы бывают с выходами типа 2С, ОК и 3С. В последнем случае обязательно имеется вход разрешения –EZ. Элементы Исключающее ИЛИ Элементы Исключающее ИЛИ (по-английски — Exclusive-OR) также можно было бы отнести к простейшим элементам, но функция, выполняемая ими, несколько сложнее, чем в случае элемента И или элемента ИЛИ. Все входы элементов Исключающее ИЛИ равноправны, однако ни один из входов не может заблокировать другие входы, установив выходной сигнал в уровень единицы или нуля. Обозначения элементов Исключающее ИЛИ: зарубежные (слева) и отечественные (справа) Таблица истинности двухвходовых элементов исключающего ИЛИ Под функцией Исключающее ИЛИ понимается следующее: единица на выходе появляется тогда, когда только на одном входе присутствует единица. Если единиц на входах две или больше, или если на всех входах нули, то на выходе будет нуль. Надпись на отечественном обозначении элемента Исключающее ИЛИ "=1" как раз и обозначает, что выделяется ситуация, когда на входах одна и только одна единица.[/QUOTE] Ещё очень полезная ссылка [url]https://studfile.net/preview/4305609/[/url] |
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 0
Комментарии


