广告

原创 [转]对FALSE PATH的理解

2014-7-12 22:47 878 0 分类: 工程师职场




最近做了一点FPGA方面的工作,在用QuartusII对代码进行综合时四处查找资料,总算是对FALSE PATH有了一点点的理解,总得来说,FALSE PATH就是我们在进行综合分析时,不希望综合工具进行分析的那些路径。写出来和大家一起讨论。
QuartusII的一个培训文档里面解释了什么时候要用到FALSE PATH
1.           从逻辑上考虑,与电路正常工作不相关的那些路径,比如测试逻辑,静态或准静态逻辑。
2.          从时序上考虑,我们在综合时不需要分析的那些路径,比如跨越异步时钟域的路径。
下面举例说明:
先看图1MUX_1MUX_2是两个多路选择器,MUX_1的使能端C接到时钟clkMUX_2的使能端C接到clk的反。于是可以发现MUX_1S1端口是不可能经过MUX_2S1端口到达MUX_2D端口的,同理MUX_1S2端口是不可能经过MUX_2S2端口到达MUX_2D端口。于是我们就不希望综合工具对这两条路径进行分析,就是说这两条路径就是我们所说的FALSE PATH
set_false_paths –through Mux_1/S1 –through Mux_2/S1 
set_false_paths –through Mux_2/S2 –through Mux_2/S2

http://www.eetop.cn/blog/attachments/2009/08/5103_200908031753141FgNP.jpg

1


再看图2,模块test_logic表示一个测试逻辑,它并不真正实现我们电路的功能,只是为了测试电路功能。所以我们就不希望综合工具对这这些路径进行分析,就是说这些路径就是我们所说的FALSE PATH

 

  

http://www.eetop.cn/blog/attachments/2009/08/5103_200908031748201hJdc.jpg

 

 

2


set_false_path –fall_from clk1to [get_pins test_logic|*|datain]
set_false_path –from [get_pins test_logic|*|clk] \
-to [get_pins test_logic|*|datain]
set_false_path –from [get_pins test_logic|*|clk] -to [get_ports test_out]
然后看图3reg1的输出和reg2的输入跨越了不同的时钟域clk1clk2,我们不希望综合工具对这这些路径进行分析,就是说这些路径就是我们所说的FALSE PATH
set_false_path –from [get_pins reg1|clk]to [get_pins reg2|datain]

 

 

 

 

 

http://www.eetop.cn/blog/attachments/2009/08/5103_200908031748202noHi.jpg

 

3


最后我们看图4clk_100clk_66仍然是两个不同的时钟域,这也是FALSE PATH
set_false_paths –from [get_clocks clk_100] –to [get_clocks clk_66]
set_false_paths –from [get_clocks clk_66] –to [get_clocks clk_100]
实际上,这两条FALSE PATH可以用一条命令来代替:
set_clock_groups –exclusive –group {clk_100} \
group {clk_66} –group {clk_200}
这就涉及到set_clock_groups 命令了,我们以后再说。

 

http://www.eetop.cn/blog/attachments/2009/08/5103_2009080317482035LBS.jpg

 

4


接触数字电路的时间不长,当然对数字电路的理解就不深刻。这次就把我对FALSE PATH的理解写出来,希望得到大家的指点。

























广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
0
0
广告