https://vlsiweb.com/dataflow-modelling-in-verilog/