Вы можете начать понимать потребность в защелках, представив, что они удалены.
Секрет заключается в том, чтобы понять, что для получения действительных результатов каждому блоку требуется 100 пикосекунд.До этого времени выходные данные были недействительны, а не мусор, а не как вы могли подумать, предыдущий результат.Помните, что эти комбинаторные блоки не имеют памяти.
Теперь представьте, что мы помещаем новые данные на входы блока А каждые 100 пикосекунд.
Как будет выглядеть выход?Как только новые данные поступают на входы, выходы этого блока становятся недействительными.Это означает, что блок B имеет недопустимые входы и не может начать обработку данных до тех пор, пока они не будут действительными.
Теперь через 100 пикосекунд в блоке A выводятся действительные данные, и блок B может, наконец, начаться.Но нет, вход в блок A изменяется, и блок B снова имеет неверные входы.Единственный способ получить действительный результат через все три - это сохранить входные данные действительными в течение всех 300 пикосекунд, необходимых для прохождения всех трех блоков.
При использовании защелок действительные результаты из каждого блока защелкиваются и неизменить с изменением входов.Таким образом, мы можем представлять новые данные каждые 100 + 20 пикосекунд против каждых 300 пикосекунд.Или с защелками в трубопроводе схема работает в 2,5 раза быстрее.