Hi!!!
I carefully reviewed the vnet_router code and have some questions:
1.In the packet transmission design, is there no explicit labeling of head/body/tail for each flit? I've seen some NoCs define flit types this way; with flit type data, other nodes can identify which flits belong to a complete packet.
**Head Flit**
Max_width+2b---------------------------------------------0
| FLIT_TYPE (2b) | X_DEST | Y_DEST | X_SRC | Y_SRC | PKT_WIDTH | MESSAGE |
+--------------------------------------------------------+
**Body/Tail Flit**
Max_width+2b---------------------------------------------0
| FLIT_TYPE (2b) | MESSAGE |
+--------------------------------------------------------+
2.Additionally, each flit carries tgt_id and src_id, but for flits within the same packet, the src_id and tgt_id is identical. Is this necessary?(Is this design related to whether different channels in the flit of the CHI protocol all contain tgt id and src id)
Hi!!!
I carefully reviewed the vnet_router code and have some questions:
1.In the packet transmission design, is there no explicit labeling of head/body/tail for each flit? I've seen some NoCs define flit types this way; with flit type data, other nodes can identify which flits belong to a complete packet.
2.Additionally, each flit carries tgt_id and src_id, but for flits within the same packet, the src_id and tgt_id is identical. Is this necessary?(Is this design related to whether different channels in the flit of the CHI protocol all contain tgt id and src id)