jinruan
Junior Member level 3
search output design compiler
there is such a code in my design, but when i synthesize the code, i find the result is wrong. What's the problem? is it the problem of my code or it's a bug of DC? the target library is slow/CSM25.
the code:
always @ ( posedge clk or negedge rst_n)
if(!rst_n)
dout<=1'b0;
else if(en)
dout<=1'b0;
else
dout<=din ;
the synthesize result:
SDFFRX1 ( .SI(en), .SE(din), .D(1'b0), .CK(clk), .RN(rst_n), .Q(dout));
i think the result should be:
SDFFRX1 ( .SI(din), .SE(en), .D(1'b0), .CK(clk), .RN(rst_n), .Q(dout));
there is such a code in my design, but when i synthesize the code, i find the result is wrong. What's the problem? is it the problem of my code or it's a bug of DC? the target library is slow/CSM25.
the code:
always @ ( posedge clk or negedge rst_n)
if(!rst_n)
dout<=1'b0;
else if(en)
dout<=1'b0;
else
dout<=din ;
the synthesize result:
SDFFRX1 ( .SI(en), .SE(din), .D(1'b0), .CK(clk), .RN(rst_n), .Q(dout));
i think the result should be:
SDFFRX1 ( .SI(din), .SE(en), .D(1'b0), .CK(clk), .RN(rst_n), .Q(dout));