Регистр в 1 бит - простейшая ячейка памяти

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

Смотрю на скорости 1.5, 1.75, но все очень понятно, прошляпил часть цифровой схемотехники на дистанте )

oeylkqk
Автор

А зачем нам 2 разрешения на запись? И Load, и Clock?

unkdmyc
Автор

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

GeeksSmartHome
Автор

Логика регистра простая:
Если LOAD=1, то записываем значение X в D-триггер, иначе записываем значение Q в D-триггер.
[Update] Из-за найденной ошибки в схеме логику нужно изменить на следующую:
Если LOAD=0, то вместо CLK подаём 0, иначе подаём X на вход D.
В итоге из схемы пропадут два логических вентиля: НЕ и ИЛИ, и останутся только 2 логических вентиля И.

hunter-speexz
Автор

Обнаружил недочёт данной схемы с помощью Proteus (он выводит ошибку "Logic race condition detected during transient analysis."):
Если CLK=1, X=1 и LOAD переводится из 1 в 0, то возникает логическая гонка:
После перевода LOAD из 1 в 0 на входе логического вентиля ИЛИ могут возникнуть два нуля (скорее всего так и будет), что в итоге приведёт к тому, что Q станет равен нулю.
Использовал обычный статический D-триггер. У автора динамический D-триггер, из-за чего ошибка не проявляется.

hunter-speexz
Автор

Как угодно изгалялся, чтобы реализовать функционал запоминания значения в ячейке триггера, но если отпустить кнопку load, то значение обнуляется... Я даже отдельно реализовал схему с таймером 555 в Proteus, думая, что может что-то не так с такотовым сигналом в Proteus, даже в этом случае всё происходит аналогичным образом. Где я рукожоп или в Proteus такая симуляция?

GeeksSmartHome
Автор

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

UtkinTech
visit shbcf.ru