查表法在FPGA中应用的简单叙述

欧嗨呦~
这几天要准备跟着老师做项目。正在笔者为老师“立项报告写的‘重’一些”的要求下愁眉苦脸之际,万方数据里面的一篇文章勾起了我的兴趣(其实就是摸鱼~ _ ~)有意思,,嗯对,很有意思。

简报

查表法是一个很神奇的东西。它的应用范围非常广泛,从角度,到伪随机数,到相位控制,只要固定数据对应固定数值的算法,通过查表法(注意不是查找表!!!查找表是LUT!!!这俩有本质区别的!!!),在我们获得了一个数值之后,可以快速的在预存的数据中找到我们需要的结果,大大简降低了组合逻辑功能实现的复杂度。但是,预存数据进行查找也就意味着,我们需要为预存的数据开辟足够的空间。毕竟当涉及的数据太多或者精度要求太高,数据量太大,就会导致浪费资源、增加系统功耗的问题。所以单一的查表法只适合数据量不大,逻辑资源充足,允许分配功耗较高的场合。

一个运算正弦函数的垃圾代码:

module sin_x(
	input	x,
	output	[3:0]	sinx = 0
);
parameter	sin30	=	5;
parameter	sin60	=	9;
parameter	sin90	=	10;
always@ *
begin
	if(x == 30)
		sinx = sin30;
	else if(x == 60)
		sinx = sin 60;
	else if(x == 90)
		sinx = sin90;
	else
		sinx = sinx;
end
endmodule

确实是一堆垃圾代码~ _ ~
这就是查表法~虽然看上去又简单又浪费资源,但是配合合适的算法,查表法是可以发挥出惊人的效果的。具体到达什么程度,还请各位自行探索了 ~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值