Оператор ветвления if часто используется для создания последовательностной логики, а именно счетчики, цифровые автоматы, регистра данных и т.д. Данный оператор используется для принятия решения о том, какой из блоков if должен быть исполнен. Синтаксис оператора ветвления if выглядит следующим образом:

if ([expression 1]) 
Single statement 
else if ([expression 2]) 
begin 
Multiple statements 
end 
else if ([expression 3]) 
Single statement 
else if ([expression 4]) 
begin 
Multiple Statements 
end 
else 
Single statement

Оператор ветвления начинается с ключевого слова if, если необходимо расширить количество ветвей, то используются операторы else, else if. Сложные конструкции внутри блока if-else должны обрамляться с помощью операторов begin-end. Логика работы оператора ветвления, следующая: если выражение оператора if (expression 1) оценивается как ИСТИНА, все операторы в этом конкретном if блоке будут выполнены, а остальные ветви пропускаются. В случае, если условие не выполняется, то проверяется условие оператора else if (expression 2), если же оно ЛОЖНОЕ, проверяются последовательно остальные ветви. Если ни одна из ветвей не является ИСТИНОЙ, то выполняется блок внутри оператора else.

Рисунок 1 – Схема приоритетов с использованием конструкции if-else

Рисунок 2 – Компиляция модуля prior

Рисунок 3 – Симуляция модуля prior

На рисунке 1 изображен пример использования оператора ветвления if на примере схемы приоритетов, в данном модуле оператор проверяет сначала равна ли шина t - трем, если значение ИСТИНА, назначает шине v значение 4’b0100, если же ЛОЖЬ, то переходит к проверке следующего заявления, и так пока не дойдёт до последней ветви else if, в случае если ни одна из ветвей не окажется ИСТИНОЙ, то выполнится блок внутри оператора else, который назначит шине v значение 4’b0000.