comb_noshare verilog share pipe tradeoff