在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2596|回复: 4

[求助] 求助:DC合成时MUX无法使用指定的cell

[复制链接]
发表于 2016-8-31 15:38:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
RTL:
    always@( posedge CLK_NSLP or negedge msys_rst_n )
        if(~msys_rst_n)
            r_wdtrstreq_n <= 3'b000;
        else begin
            r_wdtrstreq_n[2] <= WDTRSTREQ_N & ~SWRST & r_wdtrstreq_n[1];
            r_wdtrstreq_n[1] <= WDTRSTREQ_N & ~SWRST & r_wdtrstreq_n[0];
            r_wdtrstreq_n[0] <= WDTRSTREQ_N & ~SWRST;
        end
    cl_mux2   u_cl_mux2_0 (
        .d0  (r_wdtrstreq_n[2]   ),  .d1 (SCANRESET), .s0  (MOD_SCAN), .y (SYSRST_N)    );
    cl_mux2   u_cl_mux2_1 (
        .d0  (SYSRST_N),  .d1  (MODERST1_N), .s0 (MOD_BI), .y (MODERST3_N)   );

`define RC03LCD_REALCELL
module cl_mux2 (d0,d1,s0,y);
    input d0,d1,s0;
    output y;
    `ifdef RC03LCD_REALCELL
        TB9MUX2XC vc_cl_mux2 (.D0(d0),.D1(d1),.S0(s0),.Y(y));
    `else
        wire _d0,_d1;  wire _s0;  not (_s0,s0); and (_d0,_s0,d0); and (_d1,s0,d1); or  (y,_d0,_d1);
    `endif
endmodule

合成结果(有uniqify,下面是MUX部分):
   cl_mux2_0 u_cl_mux2_0 ( .d0(r_wdtrstreq_n[2]), .d1(SCANRESET), .s0(MOD_SCAN), .y(SYSRST_N) );
   cl_mux2_1 u_cl_mux2_1 ( .d0(SYSRST_N), .d1(MODERST1_N), .s0(MOD_BI), .y(MODERST3_N) );

module cl_mux2_0 ( d0, d1, s0, y );
  input d0, d1, s0;
  output y;
  wire   n1, n2;
  TB9INVXC U1 ( .A(d0), .YB(n2) );
  TB9ON21XL U3 ( .A0(s0), .A1(n2), .B(n1), .YB(y) );
  TB9NAND2XP U2 ( .A(d1), .B(s0), .YB(n1) );
  endmodule

  module cl_mux2_1 ( d0, d1, s0, y );
  input d0, d1, s0;
  output y;
  TB9MUX2XC vc_cl_mux2 ( .D0(d0), .D1(d1), .S0(s0), .Y(y) );
  endmodule

疑问:
  合成出的的gate,cl_mux2_0应该是和cl_mux2_1一样,用的我指定的gate,为什么它自己又合成了?
  初步判断下来是是因为cl_mux2_0的D0端接的是数组的某一位,
  请教有没有什么办法使得cl_mux2_0也用我指定的gate,谢谢!!
 楼主| 发表于 2016-8-31 15:41:36 | 显示全部楼层
请赐教
发表于 2016-8-31 23:27:42 | 显示全部楼层
should set dont touch attribute to these mux.
发表于 2016-9-1 09:17:36 | 显示全部楼层
把rtl改成:
TB9MUX2XC   u_cl_mux2_0 (
        .d0  (r_wdtrstreq_n[2]   ),  .d1 (SCANRESET), .s0  (MOD_SCAN), .y (SYSRST_N)    );
TB9MUX2XC   u_cl_mux2_1 (
        .d0  (SYSRST_N),  .d1  (MODERST1_N), .s0 (MOD_BI), .y (MODERST3_N)   );
 楼主| 发表于 2016-9-2 16:35:45 | 显示全部楼层
回复 3# voiluce


    嗯,有用,一直以为已经 加上了
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 01:29 , Processed in 0.021678 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表