verilog 幂运算符 ** 结果大小

verilog power operator ** result size

幂运算符**可以与任意大的操作数一起使用吗?

Ex:  
 reg [100:0] c;  
   reg [15:0] a;  
   reg [15:0] b;  
   c = a**b;  

操作数大小是否有最大限制?

IEEE 1800-2012 没有提到任何操作数的最大大小。

但是...不同的 IDE 可能在 ** 运算符使用方面有一些限制,例如它仅在 2**n 或操作数的长度有限的情况下有效。但是,模拟应该没有限制(例如Riviera-PRO允许模拟a**b操作,a和b长度等于150,没有任何警告)。

使用幂运算符合成时,只要a=2即可合成。在那种情况下,电源操作员只需 "change" 到移位器。