当前位置: 首页 > wzjs >正文

为第三方网站做推广制作自己的网页

为第三方网站做推广,制作自己的网页,建网站价格,企业网站优化之如何做需求分析VIVADO中单精度浮点数IP核计算结果与MATLAB单精度浮点数计算结果的对比 MATLAB定点运算仿真,对比VIVADO计算的结果 目录 前言 一、VIVADO与MATLAB单精度浮点数运算结果对比 二、MATLAB定点运算仿真 总结 前言 本文介绍了怎么在MATLAB中使用单精度浮点数进行运算…

VIVADO中单精度浮点数IP核计算结果与MATLAB单精度浮点数计算结果的对比

MATLAB定点运算仿真,对比VIVADO计算的结果

目录

前言

一、VIVADO与MATLAB单精度浮点数运算结果对比

二、MATLAB定点运算仿真

总结


前言

        本文介绍了怎么在MATLAB中使用单精度浮点数进行运算,另外还将MATLAB单精度浮点数运算的结果和VIVADO浮点数IP核运算的结果作了对比,会发现二者结果是吻合的。最后还介绍了怎么在MATLAB中进行定点运算的仿真,也将其和VIVADO仿真的结果进行了对比,二者也是吻合的。


提示:创作不易,有帮助请一键三连!

一、VIVADO与MATLAB单精度浮点数运算结果对比

        首先用MATLAB产生一组测试数据,

a=randn(1);mat2str(a)

b=randn(1);mat2str(b)

aa=single(a);mat2str(aa)

num2hex(aa)

bb=single(b);mat2str(bb)

num2hex(bb)

cc=aa*bb;mat2str(cc)

num2hex(cc)

ans =
    '0.5376671395461'
ans =
    '1.83388501459509'
ans =
    '0.537667155265808'
ans =
    '3f09a48e'
ans =
    '1.8338850736618'
ans =
    '3feabcbf'
ans =
    '0.986019790172577'
ans =
    '3f7c6bcb'

MATLAB产生了两个单精度的数,并计算了这两个数的乘法,还给出了相应的4字节数据表示值。这里需要注意的是,按理来说,单精度浮点数应该只有7位小数,但是MATLAB在展示结果时依然采用的双精度浮点数,所以小数位数多于7位。包括VIVADO仿真界面也是如此

数值表示字节表示
aa0.5376671552658083f09a48e
bb1.83388507366183feabcbf
cc=aa*bb0.9860197901725773f7c6bcb

以上是MATLAB的运算结果,下面是VIVADO以单精度浮点数计算的结果

        对比可以发现,MATLAB和VIVADO计算的结果是相等的。这样我们在编写算法时就可以先用MATLAB模拟FPGA运算仿真验证算法性能了。

        一组数据有可能是偶合,再随机测试一组数据,确保真的对得上。MATLAB再运行一次,得:

ans =
    '-2.25884686100365'
ans =
    '0.862173320368121'
ans =
    '-2.25884675979614'
ans =
    'c01090f2'
ans =
    '0.862173318862915'
ans =
    '3f5cb764'
ans =
    '-1.94751739501953'
ans =
    'bff94840'

MATLAB结果如表格所示:

数值表示字节表示
aa-2.25884675979614c01090f2
bb0.8621733188629153f5cb764
cc=aa*bb-1.94751739501953bff94840

VIVDO计算结果如下:

对比依然可以发现,MATLAB和VIVADO计算的结果是相等的。

综上,VIVADO中的单精度浮点数的运算能用MATLAB的计算来模拟,此处只验证了乘法,推测其他运算也是没问题的,不放心的读者可自行验证加减除。

二、MATLAB定点运算仿真

        方法比较简单,就是把数乘上2^(位宽)后四舍五入再进行运算,相当于把数给扩大,只有整数部分。注意这个位宽是不包含符号位的。运算完后需要截位就自行截位,不需要截位就不用截位。

MATLAB代码及运算结果如下:

leng=15; % 不含符号位

a=randn(1)+1j*randn(1);

aa=round(a*2^(leng));mat2str(aa)

real_a=dec2hex(real(aa),4)

imag_a=dec2hex(imag(aa),4)

b=randn(1)+1j*randn(1);

bb=round(b*2^(leng));mat2str(bb)

real_b=dec2hex(real(bb),4)

imag_b=dec2hex(imag(bb),4)

c=aa*bb

mat2str(c)

real_c=dec2hex(real(c),8)

imag_c=dec2hex(imag(c),8)

ans =
    '-28340-985i'
real_a =
    '914C'
imag_a =
    'FC27'
ans =
    '-5403+20569i'
real_b =
    'EAE5'
imag_b =
    '5059'
c =
   1.7338e+08 - 5.7760e+08i
ans =
    '173381485-577603505i'
real_c =
    '0A55976D'
imag_c =
    'DD92784F'

同样的,给出VIVADO中调用定点复数乘法器运算得到的结果。

对比十六进制表示的输入和输出,可发现MATLAB的结果和VIVADO的结果完全吻合。


总结

        从结果来看,在MATLAB中也能模拟VIVADO中的单精度浮点运算和定点运算。

http://www.dtcms.com/wzjs/103862.html

相关文章:

  • 网站优化软件robots头条今日头条
  • 网络推广和网站推广免费b站推广入口2023
  • 动态网站制作软件创建一个网站
  • 品牌推广部的职责广州seo排名外包
  • 建设网站终身免费免费b站动漫推广网站2023
  • 商场网站模板关键词网站排名软件
  • ai国外教程网站企业qq怎么申请注册
  • 阿里巴巴对外做网站吗百度软件优化排名
  • 计算机网站开发与技术专业介绍seo诊断工具有哪些
  • 杭州百度做网站多少钱it培训班出来工作有人要么
  • 电子商务网站建设具体方案网上商城网站开发
  • wordpress打开后台为404seo怎么才能优化好
  • 暂时没有域名怎么做网站郭生b如何优化网站
  • 比较知名的网站建设公司徐州seo建站
  • 建筑工程信息查询北京seo网络优化师
  • 流媒体网站开发pdf千锋教育
  • 网站质作十句经典广告语
  • 做幼儿园设计方案的网站微博推广怎么做
  • 湖北seo网站建设公司seo关键词
  • 上海公司注册网上查名全国seo搜索排名优化公司
  • wordpress 网站暂停360网站关键词排名优化
  • 上海网站建设天锐科技电脑培训学校排名
  • 济南高新区网站建设百度搜图入口
  • 做网站什么前端框架方便查排名的网站
  • 写网站建设的软文网图识别在线百度
  • 建设工程考试官方网站优化关键词排名哪家好
  • 网站备案基础知识宁波seo高级方法
  • 全国高校校园网站建设与发展高级研修班seo培训教程
  • 建设网站需要的资金清单网络广告营销
  • 生成论坛网站管理培训班