Update Multiplexors.md

This commit is contained in:
Andrei Solodovnikov
2024-05-03 15:05:18 +03:00
committed by GitHub
parent 692b54abb6
commit 74172b78ab

View File

@@ -69,11 +69,11 @@ assign Y = S==1 ? D1 : D0;
Мультиплексор можно описать в любом из этих блоков, разница будет лишь в том, к чему именно будет подключен выход мультиплексора: к проводу, регистру, или защелке.
При присваивании внутри блоков `always` используйте специальный оператор **неблокирующего присваивания** `<=`. Бывает еще оператор **блокирующего присваивания** `=`. Подробно о различиях этих операторов рассказано в [этом документе](Assignments.md). До его прочтения запомните:
В зависимости от вида `always`-блока используется один из двух видов присваиваний: **блокирующее присваивание** (`=`) и **неблокирующего присваивания** (`<=`). Подробно о различиях между присваиваниями рассказано в [этом документе](Assignments.md). До его прочтения запомните:
- внутри блока `always_ff` необходимо использовать оператор неблокирующего присваивания (`<=`);
- внутри блока `always_ff` и `always_latch` необходимо использовать оператор неблокирующего присваивания (`<=`);
- внутри блока `always_comb` необходимо использовать оператор блокирующего присваивания (`=`).
-
---
> Остановитесь на выделенном выше фрагменте документа, пока полностью не разберете его. Без освоения всех описанных выше особенностей языка SystemVerilog вы столкнетесь в будущем с множеством ошибок.