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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2729|回复: 9

[求助] 请问下,verilog HDL小数分频这个怎么实现,求大师

[复制链接]
发表于 2015-7-22 13:12:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
Out=0.78x+0.17yinput x,y
不能用乘法器和除法器。请大家指点一下
 楼主| 发表于 2015-7-22 13:15:11 | 显示全部楼层
求同道中人给出想法,非常感激!!!!
 楼主| 发表于 2015-7-22 13:17:34 | 显示全部楼层
题目是这样的:
Out=0.78x+0.17y



input x,y
不能用乘法器和除法器。请大家指点一下
发表于 2015-7-22 16:05:47 | 显示全部楼层
回复 3# lylchmm


   用移位然后进行加法。例如,0.78~~0.5+0.125+1/(2^n)+.... 无限逼近0.78,0.5 用向右移1位实现。
发表于 2015-7-22 16:33:41 | 显示全部楼层
楼上说的对
发表于 2015-7-23 20:00:35 | 显示全部楼层
基础问题。哎
发表于 2015-7-25 21:44:27 | 显示全部楼层
不需要无限逼近,可以考虑用西格玛 算法,像进行小数分频一样,神马无限逼近啊,都是浮云
发表于 2015-7-27 17:15:27 | 显示全部楼层
回复 7# supermanqc


   你这样计算的话,是不是也得n多个周期取平均值啊。
发表于 2015-7-28 15:07:16 | 显示全部楼层
我有一个想法,就是把前面的小数系数换算为二进制小数,为了简单说明,我把等式改为out = 0.75x + 0.25y
换算后则为out = 0.11x + 0.001y,如果x,y的位宽为4bit,那么等式还可以为out = [1100]x + [0010]y,结果就为out = x[3:1] + x[3:2] + y[3:3]。一般的,如果x,y的位宽为n,换算后x的二进制小数部分系数为C1,y的二进制小数部分系数为C2,宽度也为n,那么out = C1[n-1]&x[n-1]+...+C1[0]&x[0]+C2[n-1]&y[n-1]+...+C2[0]&y[0]。试试看能不能达到要求
发表于 2015-7-28 15:10:56 | 显示全部楼层
out = C1[n-1]&x[n-1:1]+C1[n-2]&x[n-1:2]+...+C1[1]&x[n-1]+C2[n-1]&y[n-1:1]+...+C2[1]&y[n-1]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-29 02:06 , Processed in 0.021294 second(s), 6 queries , Gzip On, Redis On.

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