返回列表 发帖

[求助] 请教个cadence综合的问题

[求助] 请教个cadence综合的问题

本帖最后由 gzanta 于 2017-8-11 12:05 编辑

写了段代码用cadence RTL compiler 综合。
网表出来以后发现一段奇怪的现象



  1. module mult_unsigned_const_184(A, Z);
  2.   input [15:0] A;
  3.   output [23:0] Z;
  4.   wire [15:0] A;
  5.   wire [23:0] Z;
  6.   wire n_0, n_1, n_2, n_4, n_5, n_6, n_7, n_8;
  7.   wire n_9, n_10, n_11, n_12, n_13, n_14, n_15, n_16;
  8.   wire n_17, n_18, n_19, n_20, n_21, n_22, n_23, n_24;
  9.   wire n_25, n_27, n_28, n_29, n_30, n_31, n_32, n_33;
  10.   wire n_34, n_35, n_36, n_37, n_38, n_39, n_40, n_41;
  11.   wire n_42, n_43, n_45, n_46, n_47, n_48, n_49, n_50;
  12.   wire n_51, n_52, n_53, n_54, n_55, n_56, n_57, n_58;
  13.   wire n_59, n_60, n_61, n_63, n_65, n_67, n_69, n_71;
  14.   wire n_73, n_75, n_77, n_79, n_81, n_83, n_85, n_87;
  15.   wire n_89, n_91;
  16.   assign Z[0] = 1'b0;
  17.   assign Z[1] = 1'b0;
  18.   assign Z[2] = 1'b0;
复制代码



上面这段网表中,Z是一个24位输出,最低三位被assign到1'b0

  1.   mult_unsigned_const_184 const_mul_158_28(.A ({data_0[15:11], n_1414,
  2.        data_0[9:7], n_1856, data_0[5], n_1451, n_1578, data_0[2:0]}),
  3.        .Z ({n_3927, n_3926, n_3925, n_3924, n_3923, n_3922, n_3921,
  4.        n_3920, n_3919, n_3918, n_3917, n_3916, n_3915, n_3914, n_3913,
  5.        n_3912, n_3911, n_3910, n_3909, n_3908, n_3907, UNCONNECTED14,
  6.        UNCONNECTED15, UNCONNECTED16}));
复制代码




后面调用这个module时候,最后3位并没有连接任何net。


所以导致整个网表里,这3个bit其实并没有任何net与之相连。 RC的图形界面所显示的电路中也并没有这3个bit。

但是因为网表里有,所以最终会导致LVS不能通过。


请问这个现象是怎么产生的呢? 明明只要生成一个21位的输出Z就可以了。

然后再请问这个问题应该如何解决呢?


我用RC 做编译,看初步的门电路,这里还是24位的输出,是在综合的过程中导致这个结果出现的。

回复 1# gzanta


    如果是assign成0,那PNR阶段应该会被替换为tie0cell才对啊

TOP

回复  gzanta


    如果是assign成0,那PNR阶段应该会被替换为tie0cell才对啊
sdlyyuxi 发表于 2017-8-11 17:56


大概是我没有设置tie0cell, 我去试验下,谢谢提醒。

TOP

返回列表

站长推荐 关闭


欢迎访问 TI SLL(信号链)专区

欢迎访问 TI SLL(信号链)专区


查看