Recientemente he comenzado a codificar seriamente en Verilog HDL. Aunque todavía tengo que controlar los FPGA y CPLD, tengo curiosidad acerca de los niveles de abstracciones utilizados en estos códigos. Entiendo que tengo 3 opciones en este momento, Behavioral, Register Transfer y Gate level modeling . Pero no puedo decidir cuál es la más adecuada para una buena síntesis. Por ejemplo, al hacer circuitos más pequeños incursioné en el modelado de nivel de puerta, pero más tarde, cuando pasé a describir mis propias ALU, utilicé el modelado de nivel de comportamiento. Pero el modelado de comportamiento se siente como una programación simultánea y no exactamente una descripción de hardware. Entonces, ¿cuál es la mejor manera de escribir código que garantice una síntesis adecuada?