No soy de ninguna manera un experto en Verilog, y me preguntaba si alguien sabía cuál de estas formas de incrementar un valor era mejor. Lo siento si esta es una pregunta demasiado simple.Verilog Best Practice - Incrementando una variable
Camino A:
En un bloque de lógica combinatoria, probablemente en una máquina de estados:
//some condition
count_next = count + 1;
Y a continuación, en algún lugar de un bloque secuencial:
count <= count_next;
O Way B:
Bloque combinatorio:
//some condition
count_en = 1;
bloques secuencial:
if (count_en == 1)
count <= count + 1;
he visto así una mayor frecuencia. Un beneficio potencial del Modo B es que si está incrementando la misma variable en muchos lugares en su máquina de estado, tal vez usaría solo un sumador en lugar de muchos; o es eso falso?
¿Qué método es preferido y por qué? ¿Tiene alguna desventaja importante?
Gracias.
¿De qué manera usas? –
Debe usar lo que recomienda la documentación de su herramienta de síntesis. –