sv中$bitstorealshort() 函数

在sv中用$bitstorealshort()函数可以轻松的将十六进制,二进制数转化成单精度浮点数,以下为源代码,在modelsim10.1c中测试通过,文件需要保存为.sv文件

module h2f;

integer fid_rd;
integer fid_wr;
// integer fid_mif;
  bit [11:0] variable=0;
  bit [31:0] value;
int  h_array[0:1023];
  shortreal fr;
initial begin:file_rd
fid_rd = $fopen("rd_h.txt","r");
if(fid_rd == 0)
disable file_rd;

while(!$feof(fid_rd))begin
 if(!$feof(fid_rd)== -1)
             break;
$fscanf(fid_rd,"%h",value);
h_array[variable] = value;
variable = variable + 1'b1;
end
$fclose(fid_rd);


fid_wr = $fopen("h2f.txt","w");


foreach(h_array[i])begin
  fr = $bitstoshortreal(h_array[i]);
   $display("%d %f",i,fr);
$fdisplay(fid_wr,"%f",fr);
end
$fclose(fid_wr);
end
  

endmodule


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值