首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Synopsys设计编译器和PrimeTime时序分析报告保持不变

Synopsys设计编译器和PrimeTime时序分析报告保持不变
EN

Stack Overflow用户
提问于 2015-03-21 10:34:45
回答 2查看 2.7K关注 0票数 1

我已经在Synopsys Design Compiler和PrimeTime中完成了计数器的时序分析,但得到了相同的输出!有什么问题吗?

那么PrimeTime时序分析将如何变得比DC更准确呢?

使用的设计文件是counter.v,如下所示。

代码语言:javascript
复制
module counter ( out, clk, reset ) ;

   input        clk, reset;
   output [3:0] out;

   reg [3:0]    out;

   wire [3:0]   next;

   // This statement implements reset and increment
   assign       next = reset ? 4'b0 : (out + 4'b1);

   // This implements the flip-flops
   always @ ( posedge clk ) begin
      out <= #1 next;
   end


endmodule // counter

设计编译器输出是通过将输入作为counter.v生成的,2.The设计编译器输出的时钟周期如下所示。

代码语言:javascript
复制
write_sdf ${name}.sdf
Information: Annotated 'cell' delays are assumed to include load delay. (UID-282)
Information: Writing timing information to file '/home/student/labs/jithin_prjct/jith/count.sdf'. (WT-3)
Information: Updating design information... (UID-85)
1
create_clock clk -period 2
1
report_timing
Information: Updating graph... (UID-83)
Information: Updating design information... (UID-85)

****************************************
Report : timing
        -path full
        -delay max
        -max_paths 1
Design : count
Version: E-2010.12-SP2
Date   : Fri Mar 20 22:08:55 2015
****************************************

Operating Conditions: TYPICAL   Library: saed90nm_typ
Wire Load Model Mode: enclosed

  Startpoint: out_reg[0] (rising edge-triggered flip-flop clocked by clk)
  Endpoint: out_reg[3] (rising edge-triggered flip-flop clocked by clk)
  Path Group: clk
  Path Type: max

  Des/Clust/Port     Wire Load Model       Library
  ------------------------------------------------
  count              ForQA                 saed90nm_typ

  Point                                    Incr       Path
  -----------------------------------------------------------
  clock clk (rise edge)                    0.00       0.00
  clock network delay (ideal)              0.00       0.00
  out_reg[0]/CLK (DFFX1)                   0.00       0.00 r
  out_reg[0]/Q (DFFX1)                     0.18       0.18 f
  U25/QN (NOR2X0)                          0.11       0.29 r
  U21/Q (AO21X1)                           0.12       0.41 r
  U15/Q (AO21X1)                           0.10       0.51 r
  U14/Q (MUX21X1)                          0.12       0.63 r
  out_reg[3]/D (DFFX1)                     0.04       0.67 r
  data arrival time                                   0.67

  clock clk (rise edge)                    2.00       2.00
  clock network delay (ideal)              0.00       2.00
  out_reg[3]/CLK (DFFX1)                   0.00       2.00 r
  library setup time                      -0.07       1.93
  data required time                                  1.93
  -----------------------------------------------------------
  data required time                                  1.93
  data arrival time                                  -0.67
  -----------------------------------------------------------
  slack (MET)                                         1.26

PrimeTime输出以计数器的netlist文件、计数器的SDF文件(均由Design Compiler生成)和2的时钟周期作为输入。PrimeTime输出如下所示。

代码语言:javascript
复制
report_timing
****************************************
Report : timing
    -path_type full
    -delay_type max
    -max_paths 1
Design : count
Version: E-2010.12-SP1
Date   : Fri Mar 20 22:08:14 2015
****************************************


  Startpoint: out_reg[0] (rising edge-triggered flip-flop clocked by clk)
  Endpoint: out_reg[3] (rising edge-triggered flip-flop clocked by clk)
  Path Group: clk
  Path Type: max

  Point                                    Incr       Path
  ---------------------------------------------------------------
  clock clk (rise edge)                    0.00       0.00
  clock network delay (ideal)              0.00       0.00
  out_reg[0]/CLK (DFFX1)                   0.00       0.00 r
  out_reg[0]/Q (DFFX1)                     0.18 *     0.18 f
  U25/QN (NOR2X0)                          0.11 *     0.29 r
  U21/Q (AO21X1)                           0.12 *     0.41 r
  U15/Q (AO21X1)                           0.10 *     0.51 r
  U14/Q (MUX21X1)                          0.12 *     0.63 r
  out_reg[3]/D (DFFX1)                     0.04 *     0.67 r
  data arrival time                                   0.67

  clock clk (rise edge)                    2.00       2.00
  clock network delay (ideal)              0.00       2.00
  out_reg[3]/CLK (DFFX1)                              2.00 r
  library setup time                      -0.07 *     1.93
  data required time                                  1.93
  ---------------------------------------------------------------
  data required time                                  1.93
  data arrival time                                  -0.67
  ---------------------------------------------------------------
  slack (MET)                                         1.26
EN

回答 2

Stack Overflow用户

发布于 2015-05-15 21:19:09

只有在布局后网表上执行分析时,才会得到不同的结果。使用预布局网表,您可以在Design Compiler或PrimeTime中向工具提供来自.lib文件的相同数据,以执行时序分析。布局后网表包括时钟树综合,这就是你开始使用PrimeTime的时候。此外,请注意,在预布局网表中,您只能分析设置要求,而不能分析保持要求。

票数 0
EN

Stack Overflow用户

发布于 2015-08-20 16:54:22

您可以为PrimeTime提供网表和SDF (标准延迟格式,定时延迟信息),SDF由Design Compiler生成。在您的例子中,PrimeTime不会自己计算单元/净延迟,因为您已经向PrimeTime提供了SDF。所以PrimeTime的时序和设计编译器是一样的。

在ASIC设计流程中,使用PrimeTime进行前置布局布线和后置布局布线。在前置布线阶段,利用PrimeTime对时序进行分析,确定布线时序目标是可实现的。在布局布线后阶段,我们使用PrimeTime来标记布局后的时序,输入的数据是网表和提取的RC。

无论如何,向PrimeTime提供SDF并不常见。PrimeTime有精确的延迟计算器,所以不需要输入SDF。相反,我们使用PrimeTime生成SDF,以供其他工具分析时序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29178626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档