Re: 请教一个reset, scan_enable的constraint问题
时间:12-12
整理:3721RD
点击:
我想,在synthesis阶段,把这两个信号都设置成false_path,以及ideal_network,可以防止工具插入buffer
给后端的sdc,是否需要做些改动呢?
如果是asyn reset,在芯片内部应该有double-syn处理.从外部输入PAD或者片内POR模块的输出pin,到double-syn flipflop之间,是否可以设置成false_path?
double-sync flipflop后,是同步路径,让工具自己去修removal recovery timing?
对于scan_enable,是否设置成set_input_delay 0 -clock scan_clk [get_ports scan_enable]就可以了
给后端的sdc,是否需要做些改动呢?
如果是asyn reset,在芯片内部应该有double-syn处理.从外部输入PAD或者片内POR模块的输出pin,到double-syn flipflop之间,是否可以设置成false_path?
double-sync flipflop后,是同步路径,让工具自己去修removal recovery timing?
对于scan_enable,是否设置成set_input_delay 0 -clock scan_clk [get_ports scan_enable]就可以了
Asyn Reset Pin设成false_path没问题
Double-sync以后的reset设置ideal_network dont_touch_network比较好
Scan_en用case analyze设置为无效
1 异步复位不论在哪个阶段都必须设成false_path
2 异步复位在综合阶段,如果是普通的综合工具,需要设置成idea network
3 异步复位在pr阶段要做HFN synthesis,不可以设成idea network
4 同步后的rst在哪个阶段都不可以设成false_path
5 scan_mode scan_enable 需要根据STA的分析的模式,设置不同的值
同样在综合阶段,用普通综合工具需要设成idea network
对。如果你了解DFT工作的时序的话,可以发现,scan_enable 翻转的时候,会有2个左右的idle周期(可以人为的设置)。也就是说电路没有动作。然后在进行capture
理论上来讲,只有在做at-speed测试的时候,且采用shift_launch的模式下,需要对scan_enable的翻转进行timing检查。但也正是这样做对scan_enable的timing要求太高,而且对于大规模的电路,后端极难去满足这样的timing,这种方式基本不会被选用。at-speed的测试都会选择no_shift_launch.