Spyglass检查之CDC(2)

文章目录

      • Clock_info01
      • Reset_info1
      • Setup_clock01

本文主要介绍cdc_setup过程中的rules——clock_info1,reset_info1, setup_clock01,它们报告设计中的时钟树,复位树。

上一篇:Spyglass检查之CDC(1)

Clock_info01

报告设计中的时钟信号。spyglass可以识别出以下类型clock

描述 时钟类型
普通输入时钟 Primary Clocks
黑盒(blackbox)或工艺库单元输出的时钟 Black box clocks
寄存器或工艺库单元输出的时钟 Derived Clocks
悬空的线或门控锁存器(门控未打开)输出的时钟 Undrived Clocks
除去以上情况,锁存器,三态器件或者组合逻辑输出的时钟 Gated Clocks
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
module top (d,q,clk1,sr):
 input [3: 0]d;
 input clk1, sr;
 output [3: 0]q;
 reg [3: 0]q:
 reg clk3;
 wire clk2, clk4, w1;
 BB(clk1, clk2, w1);
 always @(posedge clk1)
    q[0]=d[0];
 always @(negedge clk2
    q[1]=d[1];
 always @(posedge clk3)
    q[2]=d[2];
 always @(posedge clk1)
    if(sr==1)
        clk3=0:
    else
        clk3=-clk3;
 always @(posedge clk4)
    q[3]=d[3];
 endmodule

clk1 是 Primary clock,clk2 是Black box clock,clk3 是Derived Clock,clk4 是Undrived Clocks

Reset_info1

报告设计中的同步复位,异步复位和清除信号

描述 复位类型
普通复位 Primary Presets/Clears
黑盒(blackbox)或工艺库单元产生的复位 Black box Presets/Clears
寄存器产生的复位 Derived Presets/Clears
悬空的线产生的复位 Undrived Presets/Clears
锁存器,三态器件产生的复位 Gated Presets/Clears

Setup_clock01

报告时钟源,时钟使能信号以及clock cone(不知道翻译成啥)。
设计中多个输入时钟通过选择器后只输出一个时钟,输出的时钟称为clock cone。
在这里插入图片描述