Skip to content

Commit 6a2f2f1

Browse files
authored
Merge pull request #5031 from suisseWalter/fix_sequential_area
stat: fix sequential area not being included in addition/multiplication
2 parents 7f7ad87 + 41375a5 commit 6a2f2f1

File tree

2 files changed

+63
-3
lines changed

2 files changed

+63
-3
lines changed

passes/cmds/stat.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ struct statdata_t
4040
X(num_ports) X(num_port_bits) X(num_memories) X(num_memory_bits) X(num_cells) \
4141
X(num_processes)
4242

43-
#define STAT_NUMERIC_MEMBERS STAT_INT_MEMBERS X(area)
43+
#define STAT_NUMERIC_MEMBERS STAT_INT_MEMBERS X(area) X(sequential_area)
4444

4545
#define X(_name) unsigned int _name;
4646
STAT_INT_MEMBERS

tests/various/stat.ys

Lines changed: 62 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
read_rtlil << EOF
1+
read_rtlil << EOT
22
module \top
33
wire input 1 \A
44
wire output 2 \Y
@@ -8,7 +8,67 @@ module \top
88
connect \Y \Y
99
end
1010
end
11-
EOF
11+
EOT
1212
logger -expect log "Chip area for module '\\top': 9.072000" 1
1313
logger -expect-no-warnings
1414
stat -liberty ../../tests/liberty/foundry_data/sg13g2_stdcell_typ_1p20V_25C.lib.filtered.gz
15+
16+
17+
design -reset
18+
read_rtlil << EOT
19+
module \top
20+
wire input 1 \A
21+
wire output 2 \Y
22+
wire output 3 \N
23+
24+
cell \sg13g2_and2_1 \sub1
25+
connect \A \A
26+
connect \B 1'0
27+
connect \Y \Y
28+
end
29+
30+
cell \child \sequential
31+
connect \A \A
32+
connect \B 1'0
33+
connect \R 1'0
34+
connect \Y \Y
35+
connect \N \N
36+
end
37+
38+
cell \child \sequential1
39+
connect \A \A
40+
connect \B 1'0
41+
connect \R 1'0
42+
connect \Y \Y
43+
connect \N \N
44+
end
45+
46+
cell \sg13g2_and2_1 \sub2
47+
connect \A \A
48+
connect \B 1'0
49+
connect \Y \Y
50+
end
51+
end
52+
53+
module \child
54+
wire input 1 \A
55+
wire input 2 \B
56+
wire input 3 \R
57+
58+
wire output 4 \Y
59+
wire output 5 \N
60+
61+
cell \sg13g2_dfrbp_1 \sequential_ff
62+
connect \CLK \A
63+
connect \D \B
64+
connect \Q \Y
65+
connect \Q_N \N
66+
connect \RESET_B \R
67+
end
68+
69+
end
70+
EOT
71+
logger -expect log "Chip area for top module '\\top': 112.492800" 1
72+
logger -expect log "of which used for sequential elements: 94.348800" 1
73+
logger -expect-no-warnings
74+
stat -liberty ../../tests/liberty/foundry_data/sg13g2_stdcell_typ_1p20V_25C.lib.filtered.gz -top \top

0 commit comments

Comments
 (0)