summaryrefslogtreecommitdiff
path: root/rtl/top/test_ring.sv
blob: 00118532560c970ab598b22a8b80fb636009efd6 (plain)
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
`include "cache/defs.sv"

module test_ring
(
	input  logic clk,
	             rst_n
);

	logic data_0_valid, data_1_valid, data_2_valid, data_3_valid,
	      data_0_ready, data_1_ready, data_2_ready, data_3_ready;

	ring_req data_0, data_1, data_2, data_3;

	cache_ring segment_0
	(
		.core_tag(),
		.core_index(),
		.data_rd(),

		.send(),
		.send_read(),
		.send_inval(),
		.set_reply(),

		.in_data(data_3),
		.in_data_ready(data_3_ready),
		.in_data_valid(data_3_valid),

		.out_data(data_0),
		.out_data_ready(data_0_ready),
		.out_data_valid(data_0_valid),

		.in_hold(),
		.in_hold_valid(),
		.last_hop(),
		.out_stall(),

		.*
	);

	cache_ring segment_1
	(
		.core_tag(),
		.core_index(),
		.data_rd(),

		.send(),
		.send_read(),
		.send_inval(),
		.set_reply(),

		.in_data(data_0),
		.in_data_ready(data_0_ready),
		.in_data_valid(data_0_valid),

		.out_data(data_1),
		.out_data_ready(data_1_ready),
		.out_data_valid(data_1_valid),

		.in_hold(),
		.in_hold_valid(),
		.last_hop(),
		.out_stall(),

		.*
	);

	cache_ring segment_2
	(
		.core_tag(),
		.core_index(),
		.data_rd(),

		.send(),
		.send_read(),
		.send_inval(),
		.set_reply(),

		.in_data(data_1),
		.in_data_ready(data_1_ready),
		.in_data_valid(data_1_valid),

		.out_data(data_2),
		.out_data_ready(data_2_ready),
		.out_data_valid(data_2_valid),

		.in_hold(),
		.in_hold_valid(),
		.last_hop(),
		.out_stall(),

		.*
	);

	cache_ring segment_3
	(
		.core_tag(),
		.core_index(),
		.data_rd(),

		.send(),
		.send_read(),
		.send_inval(),
		.set_reply(),

		.in_data(data_2),
		.in_data_ready(data_2_ready),
		.in_data_valid(data_2_valid),

		.out_data(data_3),
		.out_data_ready(data_3_ready),
		.out_data_valid(data_3_valid),

		.in_hold(),
		.in_hold_valid(),
		.last_hop(),
		.out_stall(),

		.*
	);

endmodule