-
Notifications
You must be signed in to change notification settings - Fork 41
/
Copy pathmisc_module_port_sig.sv
109 lines (87 loc) · 2.03 KB
/
misc_module_port_sig.sv
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
//==============================================================================
//
// The code is generated by Intel Compiler for SystemC, version 1.6.14
// see more information at https://github.com/intel/systemc-compiler
//
//==============================================================================
//==============================================================================
//
// Module: Top ()
//
module Top // "mod"
(
);
// Variables generated for SystemC signals
logic t1;
logic [3:0] t2;
logic ip;
logic [3:0] op;
logic [3:0] oap[2];
logic [3:0] ovp[2];
//------------------------------------------------------------------------------
// Child module instances
A a
(
.i(t1),
.o(t2),
.ip(ip),
.op(op),
.oap(oap),
.ovp(ovp)
);
C c
(
.os(ip),
.is(op),
.ias(oap),
.ivs(ovp),
.i(t2),
.o(t1)
);
endmodule
//==============================================================================
//
// Module: A (test_module_port_sig.cpp:61:5)
//
module A // "mod.a"
(
input logic i,
output logic [3:0] o,
input logic ip,
output logic [3:0] op,
output logic [3:0] oap[2],
output logic [3:0] ovp[2]
);
// Variables generated for SystemC signals
logic signed [31:0] s;
//------------------------------------------------------------------------------
// Method process: meth (test_module_port_sig.cpp:28:5)
always_comb
begin : meth // test_module_port_sig.cpp:28:5
logic b;
b = ip;
op = 4'(b ? s : 0);
o = i ? 1 : 0;
end
endmodule
//==============================================================================
//
// Module: C (test_module_port_sig.cpp:62:5)
//
module C // "mod.c"
(
output logic os,
input logic [3:0] is,
input logic [3:0] ias[2],
input logic [3:0] ivs[2],
input logic [3:0] i,
output logic o
);
//------------------------------------------------------------------------------
// Method process: meth (test_module_port_sig.cpp:51:5)
always_comb
begin : meth // test_module_port_sig.cpp:51:5
os = is == 1;
o = i == 1;
end
endmodule