Найти тему
Обыватель

Цифровые логические элементы. (для начинающих _ 2)

( Эта информация только для начинающих радиолюбителей с возрастным ограничением 12+... 18-)

Продолжение....

В Интернете, если набрать поисковый запрос типа "Схемы на цифровых микросхемах", то можно посмотреть массу схем тех или иных функциональных узлов, на цифровых микросхемах разных серий, типа "генератор прямоугольных импульсов", "генератор прямоугольных импульсов с изменяющейся длительностью импульса и с изменяющейся частотой", "делитель частоты на 2 - 4 - 8" и т.д. И у меня возникает сразу вопрос - а зачем они, эти функциональные узлы, радиолюбителю? Нет, если радиолюбитель создает какую-то большую цифровую схему и ему требуется вставить в нее тот или иной функциональный узел - тогда ДА, а так сам по себе.... удовлетворить свое любопытство и все? Да и как удовлетворить это любопытство, например работой генератора с изменяющейся частотой и длительностью импульса, если нет соответствующих приборов? А кто сейчас на отдельных цифровых микросхемах будет собирать себе цифровые часы? Думаю, что начало 70-х годов прошлого века закончились более 40 лет назад. Но если кто-то хочет для души познакомится с цифровой техникой, познакомится с созданием цифровых схем, цифровых-логических схем - это всегда хорошо.

Несмотря на то, что серии микросхем как например серии 133, 155, 561, 564 и т.д. представлены достаточно большим набором логических элементов типа "И-НЕ", ""И-НЕ", "4ИЛИ-НЕ" и т.д., не всегда можно найти тот элемент, который бы удовлетворял по своим функциям требуемому узлу. И тут приходится из основных простых элементов той или иной серии разрабатывать тот цифровой логический узел, который необходим. Как это сделать? Допустим функциональный логический узел представлен в виде кубика у которого есть пять цифровых входов "Х" (вход лог.0 или лог.1) и три цифровых выхода "Y". В первую очередь надо составить требуемую таблицу истинности для этого узла - какой уровень должен быть на том или ином выходе "Y" при том или ином состоянии на входах "Х". Допустим, что такая таблица истинности будет иметь следующий вид:

-2

На выходе "Y" должна присутствовать лог.1 при двух условиях входных сигналов или входных уровней. Можно заметить, что при одном и том же состоянии входного сигнала, на выходах "Y" будет или должно быть одинаковое состояние, например при входных сигналах Х1*Х2*Х3*Х4*Х5 на выходах Y1 и Y3 должны присутствовать лог.1 одновременно. После составления такой таблицы истинности, надо приступать к составлению цифровой схемы, которая будет отображать эту таблицу истинности функционального узла.

-3

Получилась схема, которая обеспечивает выполнение таблицы истинности данного функционального узла цифровой схемы. А поскольку условия получения на выходе Y3 лог.1 совпал с условиями по Y1 и Y2, то "сборку" сигналов для выхода Y3 не требуется делать, а можно воспользоваться "сборками" по Y1 и Y2. Применяя иные микросхемы этой серии ( не только "2И-НЕ" или "2ИЛИ-НЕ") можно несколько оптимизировать эту схему.

Такие цифровые логические узлы той или иной сложности достаточно легко создавать, пока в них не требуется устанавливать ту или иную ячейку памяти и не надо учитывать время задержки (или время распространения) сигнала. Простым и популярным, если так можно сказать, элементом запоминания является D-триггер. Это универсальный элемент, который совмещает в себе RS - триггер, ячейку памяти, может применяться в счетчиках, регистрах сдвига и т.д. Таблица истинности работы D_триггера следующая:

Вход "S" - приоритетный потенциальный вход установки выхода D-триггера "Q" в состояние лог.1. При присутствии на этом входе лог.1 (для серий 561; 564 как пример) входы "D" "C" не работают.

Вход "R" - приоритетный потенциальный вход установки выхода триггера "Q" в состояние лог.0. При присутствии на этом входе лог.1 входы "D" и "C" не работают.

Одновременное присутствие лог.1 на входах "S" и "R" недопустимо. В этом случае выходное состояние D-триггера не определено.

Вход "D" - информационный вход триггера. Информация на этом входе лог.1 или лог.0 должна присутствовать минимум за 50 мкс до поступления положительного фронта сигнала (перепада от лог.0 до лог.1) на вход "С".

Вход "С" - тактовый вход импульсного сигнала по переднему фронту которого происходит запоминание информации со входа "D" в триггер.

В отличие от отечественной серии микросхем 561 или 564, серия CD4000 имеет несколько иные обозначения элементов "И", "ИЛИ", а входы D-триггера имеют таки же иное обозначение, а именно: вход "S" имеет обозначение "SD", "R" - "CD", "С" - "CP".

На приведенной ниже схеме представлен узел - делитель частоты. С выхода U1B получаем частоту F\2, а с выхода U3B - получаем частоту F\32, где F - частота тактового генератора.

-4

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

-5

На осциллограмме хорошо видно уже запаздывание второго фронта от первого на время 65,770 нсек. (T2-T1).

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

-6

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

-7

В этом случае время запаздывания уже составляет 293,696 нсек.

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

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

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

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

А достаточно хороший материал для изучения основ цифровой техники и создание цифровых схем можно почитать по адресам:

1. https://moodle.yotc.ru/book/proekt.pdf

2. https://kpe.hww.ru/BOOKS/Vvedenie_v_tcifrovuiu_skhemotekhniku_(Novikov).pdf

Всем удачи ....