Encontré un proceso síncrono similar a este hoy, y noté de inmediato la presencia del #delay:
'define dly #1
always @ (posedge fpga_sysclk_b or negedge reset_l) begin
if (!reset_l) begin
mv_in <= 'dly 'h0;
mv_datai <= 'dly 'h0;
end
else begin
mv_datai <= 'dly mv_dataix;
mv_in <= 'dly mv_datai;
end
end
¿Qué logra esto? Dado que el proceso ya está sincronizado con el reloj, no entiendo por qué es necesario.
¿Esto es sintetizable? Mi entendimiento es que los #delays no son sintetizables, ¿es este el caso en este caso también?