mtp3
Junior Member
Offline
Posts: 20
|
Yes I am using 1.2V supply with 10ps rise and fall times. Yes I think the stimuli should meet the requirements as I have specified it to be so. Here is a code for the DFF I am talking about and I don't see any issue why it shouldn't work
`define DFF_CP_R_Q_R 0.1 `define DFF_CP_R_Q_F 0.1 `define DFF_D_CP_HOLD_posedge_posedge 0.01 `define DFF_D_CP_HOLD_negedge_posedge 0.01 `define DFF_D_CP_SETUP_posedge_posedge 0.01 `define DFF_D_CP_SETUP_negedge_posedge 0.01 `define DFF_CP_PWL 0.01 `define DFF_CP_PWH 0.01
module DFF (Q, D, CP);
output Q; input D; input CP;
`ifdef functional reg NOTIFIER; GP_U_FD_P_NOTI U1 (IQ, D, CP , NOTIFIER) ; buf #1 U2 (Q, IQ) ;
`else reg NOTIFIER; GP_U_FD_P_NOTI U1 (IQ, dD, dCP , NOTIFIER) ; buf #1 U2 (Q, IQ) ;
specify
(posedge CP => (Q +: D)) = (`DFF_CP_R_Q_R,`DFF_CP_R_Q_F);
$setuphold(posedge CP, posedge D, `DFF_D_CP_SETUP_posedge_posedge, `DFF_D_CP_HOLD_posedge_posedge , NOTIFIER,, , dCP, dD); $setuphold(posedge CP, negedge D, `DFF_D_CP_SETUP_negedge_posedge, `DFF_D_CP_HOLD_negedge_posedge , NOTIFIER,, , dCP, dD); $width(negedge CP, `DFF_CP_PWL ,0, NOTIFIER); $width(posedge CP, `DFF_CP_PWH ,0, NOTIFIER);
endspecify
`endif
endmodule // DFF
`endcelldefine `celldefine `ifdef functional `timescale 1ns / 1ns `delay_mode_unit `else `timescale 1ns / 1ps `delay_mode_path `endif
|