在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: tianyu751

[求助] 一个简单的verilog程序,小数能直接赋值吗

[复制链接]
 楼主| 发表于 2012-5-25 10:12:36 | 显示全部楼层
之后要用浮点型IP核求指数函数,用定点小数运算要再转成浮点型

在向程序输入数据的时候,是十进制小数,要怎么样识别出这个数,并转成浮点型呢?

求指教
发表于 2012-5-25 10:52:22 | 显示全部楼层
其实这些都是数字处理了,误差是必须引入的,所以可以先把小数乘以二的你想要用的数据位数的这么多次方,比如说想要一个8为的有符号数,可以乘以2的7次方,取其整数部分即可。最好算出来的值就是结果的2的7次方倍,自己后期处理一下就OK了
 楼主| 发表于 2012-5-25 12:16:04 | 显示全部楼层
回复 12# ads562396


    没看太懂,是2的想保留的小数位的次方吧,乘之后的这个结果是什么呢,十进制怎么转成二进制呢
发表于 2012-5-27 23:41:50 | 显示全部楼层
12L的意思是指例如你要表示一个0.125,也就是1/8,这样你先把小数扩大2^n倍,当做整数去处理,处理完成之后,然后把处理的结果在除以2^n,就可以了!当然这个过程存在一定的误差,这个误差要能满足你的要求才可以!
发表于 2012-5-28 05:13:26 | 显示全部楼层
二进制都是整数, 加bit width作为小数精度, 比如 8bit 可精确到 (1/2)^8 = .00390625 per bit.
 楼主| 发表于 2012-5-28 09:19:12 | 显示全部楼层
那把小数扩大2^n是我们手算,还是由芯片处理,其实我一直不明白我们在向芯片输入小数时,是以什么形式输入的,最初时是怎么处理的,这点我想了很久都没想通,望大神指教
发表于 2012-5-28 09:23:39 | 显示全部楼层
应该是分成整数部分和小数部分,但同样都是二进制编码,然后需要的时候进行解码
 楼主| 发表于 2012-5-28 09:34:30 | 显示全部楼层
那小数输入时是按两次输入吗,分别经过不同的算法编译成二进制,那这样对于操作的人岂不是很不方便
发表于 2012-5-29 10:55:51 | 显示全部楼层
parameter a=32;
parameter b=16;
parameter c=8;
parameter d=4;
parameter e=2;
parameter f=1;

你完全可以把他们都放大2^n倍的,这样处理就比较简单
发表于 2012-5-29 11:28:38 | 显示全部楼层
同问。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-2-9 04:21 , Processed in 0.021096 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表