0
我試圖在模擬過程中顯示一個IEEE 754單精度浮點數。我使用$ display()並嘗試在ModelSim和我的控制檯中打印數字(在Mac上使用Icarus Verilog)。我迄今爲止的最佳嘗試是:
wire [31:0] out;
wire signed [200:0] conv = -1**(out[31]) * (1'b1 + (out[22:0] * 2'b10**($signed(8'b11101001)))) * 2'b10**(out[30:23] + $signed(8'b10000001));
$display("The number is %f", conv);
轉換的寬度只是任意大。對於11000001100111010000100000110000,以上將打印出-16.000000。我已經確定了符號和指數部分的工作,但是尾數乘以2^-23,就是0。真正的答案應該是-19.628998。
任何想法我失蹤?這在Verilog中甚至可能嗎?謝謝!