File: json_scopeinfo.ys

package info (click to toggle)
yosys 0.52-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 69,796 kB
  • sloc: ansic: 696,955; cpp: 239,736; python: 14,617; yacc: 3,529; sh: 2,175; makefile: 1,945; lex: 697; perl: 445; javascript: 323; tcl: 162; vhdl: 115
file content (38 lines) | stat: -rw-r--r-- 824 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
read_verilog <<EOT
module top(input in, output out);
	wire [1:0] w1, w2;
	f1_test u1 (.in(in), .out(w1[0]));
	f2_test u2 (.in(w1), .out(w2));
	f3_test u3 (.in(w2[0]), .out(out));
endmodule

module f1_test(input in, output out);
	assign out = in;
endmodule

module f2_test(input [1:0] in, output [1:0] out);
	assign out[0] = in[0];
	assign out[1] = in[1];
endmodule

module f3_test(input in, output [1:0] out);
	assign out[0] = in;
	assign out[1] = in;
endmodule
EOT

hierarchy -top top
flatten -scopename
prep

write_json json_scopeinfo.out
!grep -qF '$scopeinfo' json_scopeinfo.out

write_json -noscopeinfo json_scopeinfo.out
!grep -qvF '$scopeinfo' json_scopeinfo.out

json -o json_scopeinfo.out
!grep -qF '$scopeinfo' json_scopeinfo.out

json -noscopeinfo -o json_scopeinfo.out
!grep -qvF '$scopeinfo' json_scopeinfo.out