这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 为什么代码中要避免使用时钟下降沿?

共2条 1/1 1 跳转至

为什么代码中要避免使用时钟下降沿?

工程师
2014-08-04 22:18:55     打赏

以前做FPGA的时候,没有关心过这个问题,上升沿和下降沿,一直混用。但是昨天后端部门的Lint检查和综合检查都指出了这个问题,要求把设计中的所有时钟沿都统一为上升沿抽样。这样做的目的,据说是为了提高scan chain的覆盖率。因为没有经验,想在这里请教一下大家:

- 混用上升下降沿会对scan chain造成什么样的影响,能否具体解释一下;

- 如果代码在逻辑上必须用下降沿采样,怎样才能满足后端的要求(用上升沿采样),有无变通方法;

我的代码

我在上面提到了上升沿和下降沿混用,其实是表述不正确。不是混用,而是在代码中有些寄存器用posedge,有些则用negedge,对同一个寄存器同时使用两个边沿的情况没有。,我的代码是这样的情况,比如

always @ (posedge i_clk or negedge i_rst_n) begin

.... // reg 1

end

always @ (negedge i_clk or negedge i_rst_n) begin

.... // reg 2

end

对于这样的情况,后端部门也建议尽量避免,也就是说所有寄存器全都采用上升沿,要怎么处理呢?

====

用下降沿采样的话

dft_drc会认为该寄存器有violation

因此不把他放到chain里边

所以覆盖率会降低


院士
2014-08-06 07:11:42     打赏
2楼

用下降沿采样的话

dft_drc会认为该寄存器有violation

因此不把他放到chain里边

所以覆盖率会降低


不做fpga 哟~


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]