[問題] verilog 乘法的小問題...
各位大大好
最近在修改學長姐的硬體遇到一些問題
有一筆data[15:0]運算完後最後會乘上一個常數K=0.6073
parameter signed K=14'b01001101101111
我有算過
2^(-1)+2^(-4)+2^(-5)+2^(-7)+2^(-8)+2^(-10)+2^(-11)+2^(-12)+2^(-13)
會趨近於0.6073沒錯
data_m = data*k;
data_out = {data_m[29],data_m[27:13]};
想請問最後data_out為什麼是這樣取...
還有想請問我有嘗試將data改成14bits
但我最後異想天開的改成 data_out = {data_m[27],data_m[25:13]}
可是最後發現結果會跟演算法不符
感謝各位大大了
P.S. data的部分學長姐應該是假設前8bits為整數,後8bits為小數
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.13.192.206
※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1459429274.A.A49.html
※ 編輯: StrKO (101.13.192.206), 03/31/2016 21:05:46
推
03/31 21:13, , 1F
03/31 21:13, 1F
→
03/31 21:13, , 2F
03/31 21:13, 2F
→
03/31 21:13, , 3F
03/31 21:13, 3F
→
03/31 22:16, , 4F
03/31 22:16, 4F
→
03/31 22:16, , 5F
03/31 22:16, 5F
推
03/31 23:16, , 6F
03/31 23:16, 6F
→
03/31 23:16, , 7F
03/31 23:16, 7F
推
04/01 12:17, , 8F
04/01 12:17, 8F
→
04/01 13:27, , 9F
04/01 13:27, 9F
→
04/01 13:28, , 10F
04/01 13:28, 10F
→
04/01 13:29, , 11F
04/01 13:29, 11F
→
04/01 13:29, , 12F
04/01 13:29, 12F