> All outputs of instance <M2> of block <multiply> are unconnected in
> block <encoder>. Underlying logic will be removed.
I find that message tells very clear whats going on.
Because the synthesizer ignores comments, it sees your designs IO ports
output reg start_reg
Thre inputs and two outputs. So it only has to implement hardware for
the two outputs stop_reg and the start_reg. And getting rid of the
unnecessary code, this is enough to handle those two outputs:
All the other code does not affect any of the outputs of the design, so
all the other code can be ignored. and thats what the synthesizer
Because your design does not have any ouptuts connected to any of the
internal signals there is no need to implement any internal logic. If
you want to get hardware, then you have to connect it to the outer world