Skip to content

Commit

Permalink
rsz: Update tests for repair_timing
Browse files Browse the repository at this point in the history
Signed-off-by: Eryk Szpotanski <[email protected]>
  • Loading branch information
eszpotanski committed Jan 2, 2025
1 parent a17d43e commit f830ffd
Show file tree
Hide file tree
Showing 12 changed files with 989 additions and 2,107 deletions.
1,609 changes: 313 additions & 1,296 deletions src/rsz/test/clone_flat.ok

Large diffs are not rendered by default.

246 changes: 102 additions & 144 deletions src/rsz/test/clone_flat_out.vok

Large diffs are not rendered by default.

313 changes: 122 additions & 191 deletions src/rsz/test/clone_hier.ok

Large diffs are not rendered by default.

130 changes: 58 additions & 72 deletions src/rsz/test/clone_hier_out.vok
Original file line number Diff line number Diff line change
Expand Up @@ -535,172 +535,172 @@ module hi_fanout (clk1,
DFF_X1 load30 (.D(net2),
.CK(clk1),
.Q(output30));
DFF_X1 load31 (.D(net78),
DFF_X1 load31 (.D(net0),
.CK(clk1),
.Q(output31));
DFF_X1 load32 (.D(net78),
DFF_X1 load32 (.D(net0),
.CK(clk1),
.Q(output32));
DFF_X1 load33 (.D(net78),
DFF_X1 load33 (.D(net0),
.CK(clk1),
.Q(output33));
DFF_X1 load34 (.D(net78),
DFF_X1 load34 (.D(net0),
.CK(clk1),
.Q(output34));
DFF_X1 load35 (.D(net78),
DFF_X1 load35 (.D(net0),
.CK(clk1),
.Q(output35));
DFF_X1 load36 (.D(net78),
DFF_X1 load36 (.D(net0),
.CK(clk1),
.Q(output36));
DFF_X1 load37 (.D(net78),
DFF_X1 load37 (.D(net0),
.CK(clk1),
.Q(output37));
DFF_X1 load38 (.D(net78),
DFF_X1 load38 (.D(net0),
.CK(clk1),
.Q(output38));
DFF_X1 load39 (.D(net78),
DFF_X1 load39 (.D(net0),
.CK(clk1),
.Q(output39));
DFF_X1 load4 (.D(net78),
DFF_X1 load4 (.D(net0),
.CK(clk1),
.Q(output4));
DFF_X1 load40 (.D(net78),
DFF_X1 load40 (.D(net0),
.CK(clk1),
.Q(output40));
DFF_X1 load41 (.D(net78),
DFF_X1 load41 (.D(net0),
.CK(clk1),
.Q(output41));
DFF_X1 load42 (.D(net78),
DFF_X1 load42 (.D(net0),
.CK(clk1),
.Q(output42));
DFF_X1 load43 (.D(net78),
DFF_X1 load43 (.D(net0),
.CK(clk1),
.Q(output43));
DFF_X1 load44 (.D(net78),
DFF_X1 load44 (.D(net0),
.CK(clk1),
.Q(output44));
DFF_X1 load45 (.D(net78),
DFF_X1 load45 (.D(net0),
.CK(clk1),
.Q(output45));
DFF_X1 load46 (.D(net78),
DFF_X1 load46 (.D(net0),
.CK(clk1),
.Q(output46));
DFF_X1 load47 (.D(net78),
DFF_X1 load47 (.D(net0),
.CK(clk1),
.Q(output47));
DFF_X1 load48 (.D(net78),
DFF_X1 load48 (.D(net0),
.CK(clk1),
.Q(output48));
DFF_X1 load49 (.D(net78),
DFF_X1 load49 (.D(net0),
.CK(clk1),
.Q(output49));
DFF_X1 load5 (.D(net78),
DFF_X1 load5 (.D(net0),
.CK(clk1),
.Q(output5));
DFF_X1 load50 (.D(net78),
DFF_X1 load50 (.D(net0),
.CK(clk1),
.Q(output50));
DFF_X1 load51 (.D(net78),
DFF_X1 load51 (.D(net0),
.CK(clk1),
.Q(output51));
DFF_X1 load52 (.D(net78),
DFF_X1 load52 (.D(net0),
.CK(clk1),
.Q(output52));
DFF_X1 load53 (.D(net78),
DFF_X1 load53 (.D(net0),
.CK(clk1),
.Q(output53));
DFF_X1 load54 (.D(net78),
DFF_X1 load54 (.D(net0),
.CK(clk1),
.Q(output54));
DFF_X1 load55 (.D(net78),
DFF_X1 load55 (.D(net0),
.CK(clk1),
.Q(output55));
DFF_X1 load56 (.D(net78),
DFF_X1 load56 (.D(net0),
.CK(clk1),
.Q(output56));
DFF_X1 load57 (.D(net78),
DFF_X1 load57 (.D(net0),
.CK(clk1),
.Q(output57));
DFF_X1 load58 (.D(net78),
DFF_X1 load58 (.D(net0),
.CK(clk1),
.Q(output58));
DFF_X1 load59 (.D(net78),
DFF_X1 load59 (.D(net0),
.CK(clk1),
.Q(output59));
DFF_X1 load6 (.D(net78),
DFF_X1 load6 (.D(net0),
.CK(clk1),
.Q(output6));
DFF_X1 load60 (.D(net78),
DFF_X1 load60 (.D(net0),
.CK(clk1),
.Q(output60));
DFF_X1 load61 (.D(net78),
DFF_X1 load61 (.D(net0),
.CK(clk1),
.Q(output61));
DFF_X1 load62 (.D(net78),
DFF_X1 load62 (.D(net0),
.CK(clk1),
.Q(output62));
DFF_X1 load63 (.D(net78),
DFF_X1 load63 (.D(net0),
.CK(clk1),
.Q(output63));
DFF_X1 load64 (.D(net78),
DFF_X1 load64 (.D(net0),
.CK(clk1),
.Q(output64));
DFF_X1 load65 (.D(net116),
DFF_X1 load65 (.D(net0),
.CK(clk1),
.Q(output65));
DFF_X1 load66 (.D(net116),
DFF_X1 load66 (.D(net0),
.CK(clk1),
.Q(output66));
DFF_X1 load67 (.D(net116),
DFF_X1 load67 (.D(net0),
.CK(clk1),
.Q(output67));
DFF_X1 load68 (.D(net116),
DFF_X1 load68 (.D(net0),
.CK(clk1),
.Q(output68));
DFF_X1 load69 (.D(net116),
DFF_X1 load69 (.D(net0),
.CK(clk1),
.Q(output69));
DFF_X1 load7 (.D(net116),
DFF_X1 load7 (.D(net0),
.CK(clk1),
.Q(output7));
DFF_X1 load70 (.D(net116),
DFF_X1 load70 (.D(net0),
.CK(clk1),
.Q(output70));
DFF_X1 load71 (.D(net116),
DFF_X1 load71 (.D(net0),
.CK(clk1),
.Q(output71));
DFF_X1 load72 (.D(net116),
DFF_X1 load72 (.D(net0),
.CK(clk1),
.Q(output72));
DFF_X1 load73 (.D(net116),
DFF_X1 load73 (.D(net0),
.CK(clk1),
.Q(output73));
DFF_X1 load74 (.D(net116),
DFF_X1 load74 (.D(net0),
.CK(clk1),
.Q(output74));
DFF_X1 load75 (.D(net116),
DFF_X1 load75 (.D(net0),
.CK(clk1),
.Q(output75));
DFF_X1 load76 (.D(net116),
DFF_X1 load76 (.D(net0),
.CK(clk1),
.Q(output76));
DFF_X1 load77 (.D(net116),
DFF_X1 load77 (.D(net0),
.CK(clk1),
.Q(output77));
DFF_X1 load78 (.D(net116),
DFF_X1 load78 (.D(net0),
.CK(clk1),
.Q(output78));
DFF_X1 load79 (.D(net116),
DFF_X1 load79 (.D(net0),
.CK(clk1),
.Q(output79));
DFF_X1 load8 (.D(net116),
DFF_X1 load8 (.D(net0),
.CK(clk1),
.Q(output8));
DFF_X1 load80 (.D(net116),
DFF_X1 load80 (.D(net0),
.CK(clk1),
.Q(output80));
DFF_X1 load81 (.D(net116),
DFF_X1 load81 (.D(net0),
.CK(clk1),
.Q(output81));
DFF_X1 load82 (.D(net0),
Expand Down Expand Up @@ -760,35 +760,21 @@ module hi_fanout (clk1,
DFF_X1 load99 (.D(net0),
.CK(clk1),
.Q(output99));
submodule cloneU1 (.net116_o(net116),
.net78_o(net78),
.net2_o(net2),
submodule cloneU1 (.net2_o(net2),
.ip0(clk_to_nand0),
.ip1(clk_to_nand1),
.op0(net0));
endmodule
module submodule (net116_o,
net78_o,
net2_o,
module submodule (net2_o,
ip0,
ip1,
op0);
output net116_o;
output net78_o;
output net2_o;
input ip0;
input ip1;
output op0;

wire net146_o;
wire net136_o;

NAND2_X2 clone3 (.A1(ip1),
.A2(ip0),
.ZN(net116_o));
NAND2_X2 clone2 (.A1(ip1),
.A2(ip0),
.ZN(net78_o));
NAND2_X2 clone1 (.A1(ip1),
.A2(ip0),
.ZN(net2_o));
Expand Down
2 changes: 1 addition & 1 deletion src/rsz/test/repair_fanout6.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,5 @@ report_check_types -max_fanout
# but there is no point in inserting extra buffers to fix non critical
# paths. What matters is repair_timning's ability to optimize the timing
# when it matters.
repair_timing -setup -repair_tns 0 -skip_gate_cloning
repair_timing -setup -repair_tns 0 -skip_gate_cloning -max_passes_per_iter 1000
report_worst_slack -max
Loading

0 comments on commit f830ffd

Please sign in to comment.