如何仅在一个时钟周期内获得32位输入的平方根?

我想在Verilog中设计一个可综合的模块,在计算32位给定输入的平方根时仅需一个周期。



陪伴而非守候
浏览 657回答 3
3回答

胡说叔叔

我的代码在这里&nbsp; &nbsp; module sqrt(input[31:0]a,output[15:0]out&nbsp; &nbsp; );reg [31:0]temp;reg[14:0]x;always@(a)beginif(a<257)x=4;if(a>256 && a<65537)x=80;if(a>65536 && a<16777217)x=1000;if(a>16777216 && a<=4294967295)x=20000;temp=(x+(a/x))/2;temp=(temp+(a/temp))/2;temp=(temp+(a/temp))/2;temp=(temp+(a/temp))/2;temp=(temp+(a/temp))/2;temp=(temp+(a/temp))/2;temp=(temp+(a/temp))/2;endassign out=temp;endmodule分享编辑
打开App,查看更多内容
随时随地看视频慕课网APP