原创 从Technology Map Viewer看4输入LUT

2009-1-8 18:11 7503 7 10 分类: FPGA/CPLD

Technology Map Viewer4输入LUT<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


 


EX1:


///////////////////////////////////////////////////////////


input clk;                    //时钟


input a,b,c,d;              //四输入


output reg dout;  //输出


 


always @ (posedge clk)


       dout <= a & b & c & d;      //四输入与


///////////////////////////////////////////////////////////


 


       上面的代码只是实现一个很简单的四输入与的功能。每个时钟锁存一次与操作的结果作为输出。从Quartus IITechnology Map Viewer里可以看出这个设计使用了一个四输入的LUT和一个触发器。如下图:


<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />


点击看大图


 


EX2:


///////////////////////////////////////////////////////////


input clk;                    //时钟


input a,b,c,d,e;    //五输入


output reg dout;  //输出


 


always @ (posedge clk)


       dout <= a & b & c & d & e;      //五输入与


///////////////////////////////////////////////////////////


 


       那么由现在这个五输入与的代码,我们综合后会是怎样一个资源消耗呢?看看Technology Map Viewer就知道了:



点击看大图


 


       两个4输入LUT和一个触发器,我想看到这,大家就应该明白FPGA4输入查找表结构了。那么大家可能会疑惑,输入bc共用的那个4输入LUT好像还没有用完,还有两个输入闲置着呢,是否还可以再利用起来呢?我们再用一个例程看看这个问题的答案:


 


EX3:


///////////////////////////////////////////////////////////


input clk;                    //时钟


input a,b,c,d,e;    //五输入


input f,g;


output reg dout;  //五输入与输出


output reg fout;   //二输入或输出


 


always @ (posedge clk) begin


       dout <= a & b & c & d & e;      //五输入与


       fout <= f | g; //二输入或


end


///////////////////////////////////////////////////////////


 


       EX3EX2相比增加了一个二输入或的逻辑,那么系统会不会把这个二输入所需要的LUT和前面没有用完的LUT复用呢?看Technology Map Viewer



点击看大图


 


       很显然,除了多一个LUT外,还多了一个触发器。在一个组合逻辑(例如:dout <= a & b & c & d & e;)里没有用完的LUT是无法被其它逻辑复用的。


       这又让人想起了那个老话题:如何最大限度的发挥FPGA的可用资源。在这里绝对没有误导大家的意思(大多时候没有必要也不可能为了完全用尽4输入LUT的资源而修改我们的设计),只是纯粹的讨论这个有趣的话题。


 


 

PARTNER CONTENT

文章评论3条评论)

登录后参与讨论

用户1787021 2014-9-26 21:53

我试了,怎么跟你结果不一样啊。post mapping和post fitting 都试了。用的quartus13.0

用户244280 2011-5-1 21:29

产品设计中,复位还是用专用的复位芯片更可靠

用户1225824 2011-5-1 18:05

为什么你原理图上画的是10UF,而公式里面代入的却是1UF呢?

ilove314_323192455 2011-4-29 13:41

好久不见你的踪影,以为你从此隐姓埋名、销声匿迹了呢

用户1373959 2011-4-29 10:10

原来是有时间的呀,我这个笨蛋一直以为从低电平到高电平跳转一个时钟周期即可。 这个和刷屏GRAM差不错,需要足够时间将SRAM清零。

ilove314_323192455 2009-1-11 22:23

同意楼上的说法,但是情况往往没有想象中理想,应该更多的具体问题具体分析

用户1404984 2009-1-11 21:10

一个4输入的LUT,当输入和状态没有用完时,是有冗余资源的,但是应当注意的是输出只有一个,所以,和别的逻辑复用LUT的可能性就很小,除非一些非常巧合的情况,导致两个逻辑的输出“重合”。 在第二个例子中,左边的LUT资源没有用完,但是输出已经确定,无法和fout <= f | g; 复用,所以,自然就会出现很多未用尽的LUT。 所以,在前期设计时,要争取将输入做成4的倍数,以达到资源充分利用。 小弟愚见,权做抛砖引玉,这个问题很好,还请大家多讨论!
相关推荐阅读
特权ilove314 2016-06-30 21:16
例说FPGA连载6:FPGA开发所需的技能
例说FPGA连载6:FPGA开发所需的技能 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   前面的文字已经做了很多铺垫,相信读...
特权ilove314 2016-06-28 21:09
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
特权ilove314 2016-06-28 21:05
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
特权ilove314 2016-06-26 22:11
例说FPGA连载4:FPGA语言与厂商介绍
例说FPGA连载4:FPGA语言与厂商介绍 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   Verilog与VHDL 说到FP...
特权ilove314 2016-06-23 21:26
例说FPGA连载3:FPGA与其它主流芯片的比较
例说FPGA连载3:FPGA与其它主流芯片的比较 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   FPGA、ASIC和ASSP...
特权ilove314 2016-06-21 20:32
例说FPGA连载2:FPGA是什么
例说FPGA连载2:FPGA是什么 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   2015年伊始,Intel欲出资百亿美金收...
EE直播间
更多
我要评论
3
7
关闭 站长推荐上一条 /3 下一条