Я понимаю, что разница между защелками и триггерами в том, что значение, хранимое в триггерах, может изменяться только по импульсам в тактовых интервалах.
Но какова реальная необходимость сделать это?
Я имею в виду, если значение может быть изменено входами, почему оно также должно контролироваться системными часами?
Спасибо
1 ответ
1
Чтобы избежать ошибок при переходах. (Google "Электроника глюк")
Например, если у вас есть 2 входа, они могут измениться одновременно, что приведет к неожиданному результату во время этого перехода.
Например: A = 1, B = 0, A+B = 1 (+ = OR), если они изменяются одновременно: A = 0, B = 1, A+B = 1, но во время этого перехода, когда A = 0, B может расти, но все еще представляет B = 0, и вы получите A+B = 0 за короткий интервал.
Изменяя все состояния триггеров только на фронте CLK, затем до следующего фронта все сигналы должны стать стабильными, и логика будет работать на желаемых значениях.