Verilog Best Practice - Увеличение переменной

Я ни в коем случае не эксперт по Verilog, и мне было интересно, знает ли кто-нибудь, какой из этих способов увеличения значения был лучше. Извините, если это слишком простой вопрос.

Способ A:

В блоке комбинационной логики, возможно, в конечном автомате:

//some condition
count_next = count + 1;

А затем где-нибудь в последовательном блоке:

count <= count_next;

Или способ B:
Комбинационный блок:

//some condition
count_en = 1;

Последовательный блок:

if (count_en == 1)
  count <= count + 1;

Я видел Путь А чаще. Одно из потенциальных преимуществ способа B состоит в том, что если вы увеличиваете одну и ту же переменную во многих местах вашего конечного автомата, возможно, он будет использовать только один сумматор вместо многих; или это ложь?

Какой метод предпочтительнее и почему? У кого-то из них есть существенный недостаток?

Спасибо.

5
задан Cory G. 4 November 2011 в 20:49
поделиться