@@ -85,7 +85,8 @@ def generate(ports=4, name=None, output=None):
85
85
parameter LAST_ENABLE = 1,
86
86
parameter ID_ENABLE = 0,
87
87
parameter ID_WIDTH = 8,
88
- parameter DEST_WIDTH = {{cm}},
88
+ parameter DEST_ENABLE = 0,
89
+ parameter DEST_WIDTH = 8,
89
90
parameter USER_ENABLE = 1,
90
91
parameter USER_WIDTH = 1
91
92
)
@@ -115,8 +116,14 @@ def generate(ports=4, name=None, output=None):
115
116
output wire m{{'%02d'%p}}_axis_tlast,
116
117
output wire [ID_WIDTH-1:0] m{{'%02d'%p}}_axis_tid,
117
118
output wire [DEST_WIDTH-1:0] m{{'%02d'%p}}_axis_tdest,
118
- output wire [USER_WIDTH-1:0] m{{'%02d'%p}}_axis_tuser{% if not loop.last %},{% endif %}
119
- {% endfor -%}
119
+ output wire [USER_WIDTH-1:0] m{{'%02d'%p}}_axis_tuser,
120
+ {% endfor %}
121
+ /*
122
+ * Control
123
+ */
124
+ {%- for p in range(n) %}
125
+ input wire [{{cm-1}}:0] m{{'%02d'%p}}_select{% if not loop.last %},{% endif %}
126
+ {%- endfor %}
120
127
);
121
128
122
129
axis_crosspoint #(
@@ -128,6 +135,7 @@ def generate(ports=4, name=None, output=None):
128
135
.LAST_ENABLE(LAST_ENABLE),
129
136
.ID_ENABLE(ID_ENABLE),
130
137
.ID_WIDTH(ID_WIDTH),
138
+ .DEST_ENABLE(DEST_ENABLE),
131
139
.DEST_WIDTH(DEST_WIDTH),
132
140
.USER_ENABLE(USER_ENABLE),
133
141
.USER_WIDTH(USER_WIDTH)
@@ -150,7 +158,9 @@ def generate(ports=4, name=None, output=None):
150
158
.m_axis_tlast({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_axis_tlast{% if not loop.last %}, {% endif %}{% endfor %} }),
151
159
.m_axis_tid({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_axis_tid{% if not loop.last %}, {% endif %}{% endfor %} }),
152
160
.m_axis_tdest({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_axis_tdest{% if not loop.last %}, {% endif %}{% endfor %} }),
153
- .m_axis_tuser({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_axis_tuser{% if not loop.last %}, {% endif %}{% endfor %} })
161
+ .m_axis_tuser({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_axis_tuser{% if not loop.last %}, {% endif %}{% endfor %} }),
162
+ // Control
163
+ .select({ {% for p in range(n-1,-1,-1) %}m{{'%02d'%p}}_select{% if not loop.last %}, {% endif %}{% endfor %} })
154
164
);
155
165
156
166
endmodule
0 commit comments