78 packet_id = other.packet_id;
84 packet_id = other.packet_id;
95 data_width = DataWidth,
96 dest_width_per_hop = DestWidthPerHop,
97 dest_width = DestWidthPerHop * MaxHops,
98 packet_id_width = PacketIdWidth,
99 width = data_width + dest_width + packet_id_width,
101 data_end_bit = data_width - 1,
102 dest_start_bit = data_end_bit + 1,
103 dest_end_bit = dest_start_bit + dest_width - 1,
104 packet_id_start_bit = dest_end_bit + 1,
105 packet_id_end_bit = packet_id_start_bit + packet_id_width - 1
110 NVUINTW(packet_id_width) packet_id;
112 template <
unsigned int Size>
113 void Marshall(Marshaller<Size>& m) {
145 data_width = DataWidth,
146 dest_width_per_hop = DestWidthPerHop,
147 dest_width = DestWidthPerHop * MaxHops,
148 width = data_width + dest_width,
150 data_end_bit = data_width - 1,
151 dest_start_bit = data_end_bit + 1,
152 dest_end_bit = dest_start_bit + dest_width - 1,
158 template <
unsigned int Size>
159 void Marshall(Marshaller<Size>& m) {
284class Flit<DataWidth, DestWidthPerHop, MaxHops, PacketIdWidth, FlitId,
291 Flit& operator=(
const Flit& other) {
294 packet_id = other.packet_id;
295 flit_id = other.flit_id;
302 data_width = DataWidth,
303 dest_width_per_hop = DestWidthPerHop,
304 dest_width = DestWidthPerHop * MaxHops,
305 packet_id_width = PacketIdWidth,
306 flit_id_width = FlitId::width,
307 width = data_width + dest_width + packet_id_width + flit_id_width,
309 data_end_bit = data_width - 1,
310 dest_start_bit = data_end_bit + 1,
311 dest_end_bit = dest_start_bit + dest_width - 1,
312 packet_id_start_bit = dest_end_bit + 1,
313 packet_id_end_bit = packet_id_start_bit + packet_id_width - 1,
314 flit_id_start_bit = packet_id_end_bit + 1,
315 flit_id_end_bit = flit_id_start_bit + flit_id_width - 1
320 NVUINTW(packet_id_width) packet_id;
323 template <
unsigned int Size>
324 void Marshall(Marshaller<Size>& m) {
334void Flit<DataWidth, DestWidthPerHop, MaxHops, PacketIdWidth, FlitId,
344Flit<DataWidth, DestWidthPerHop, MaxHops, PacketIdWidth, FlitId,
351Flit<DataWidth, DestWidthPerHop, MaxHops, PacketIdWidth, FlitId,
375 Flit& operator=(
const Flit& other) {
377 packet_id = other.packet_id;
378 flit_id = other.flit_id;
385 data_width = DataWidth,
386 packet_id_width = PacketIdWidth,
387 flit_id_width = FlitId::width,
388 width = data_width + packet_id_width + flit_id_width,
390 data_end_bit = data_width - 1,
391 packet_id_start_bit = data_end_bit + 1,
392 packet_id_end_bit = packet_id_start_bit + packet_id_width - 1,
393 flit_id_start_bit = packet_id_end_bit + 1,
394 flit_id_end_bit = flit_id_start_bit + flit_id_width - 1
398 NVUINTW(packet_id_width) packet_id;
401 NVUINTW(packet_id_width) get_packet_id()
const {
405 template <
unsigned int Size>
406 void Marshall(Marshaller<Size>& m) {
447 Flit& operator=(
const Flit& other) {
449 flit_id = other.flit_id;
456 data_width = DataWidth,
457 flit_id_width = FlitId::width,
458 width = data_width + flit_id_width,
460 data_end_bit = data_width - 1,
461 flit_id_start_bit = data_end_bit + 1,
462 flit_id_end_bit = flit_id_start_bit + flit_id_width - 1
468 int get_packet_id()
const {
472 template <
unsigned int Size>
473 void Marshall(Marshaller<Size>& m) {