NoCSim tips(lab)

NoC top file generate: in NoCGenRTL_mesh.cpp, NoCGenRTL_meshDiss.cpp,  Link_ps.cpp, Router_ps.cpp --> Link_ps.cpp

In the generated file NoC.v, the stuff I have to modify:

the router name, to tRouter_xy_beOnlyLeftUpCorner, etc, based on position;

.success_o(success_out[  ]),  .fail_o(fail_out[  ]),  //the element no.

delete router2NoCM_free port in router;


trellis SDM+TDM:

router.cpp 中需每次设置subchannel_num;

trellis.v中需配置parameter Channel_QUANT, SLOT_QTY; rin_edge_state[  i][j][k] = r_subchannel_state; casex(r_success_forward)选择r_nodes_success[3]<=r_success_forward[3];

Hagar SDM+TDM: seems only in graphMatrix.v, rin_edge_state[gen_i][gen_j][gen_k] = r_subchannel_state||;

select which subcannel: if(disableEdge[  i][m][n])begin
                                                 if(r_subchannel_state[i][m][n][0])

and in backtrace.v to select which slot.


the NoCSim result is stored in the folder:Sadia\nocsim3\build\architectures\arch_000000\traffic_000000\cpp_results, as following the picture:


nocsim 运行:

nocsim3 $ make verilogSeries

注意:NoCSim只能在64位机下跑,所以cnode14下不能运行。有时NoCSim generate code时会出错,多运行几次后就会正常。


几种NoCM的基础文件(非NoCSim生成的文件),在nocsim3\template_lib\v 中


各模块所在file:

EHAGAR模块:genVeriNoCMGraphColDetectForward,genVeriNoCMGraphColDetectBackward,genVeriNoCMGraphPredecessorForward;genVeriNoCMGraphColDetect,genVeriNoCMGraphPredecessor,等在NoCComponent.cpp中;

trellis模块:genVeriTrellisHagarFileForwardPart,genVeriTrellisHagarFileBackwardPart,genVeriTrellisHagarFileDisableEdges等在router.cpp中


EdgeActivator is generated in file NoCM_version,and the genVeriNoCMResetLinkStateForEdgeActivator is in NoCComponent;genVeriNoCMSetLinkStateForEdgeActivator is in router; TRELLIS is generated in file NoCM_versionHagarTrellis. genVeriTrellisHagarFileForwardPart,genVeriTrellisHagarFileBackwardPart,genVeriTrellisHagarFileDisableEdges are generated in file router.cpp;tAdr2idConverter in NoCGenRTL.cpp
Now the only file need to modify manually is TRELLIS,because of the #slot
and should add in file accessCtrl.v .adrZ1_i(0), //mine,add by myself
                                     .adrZ2_i(0), //mine,add by myself



对于EHAGAR,bidirection EHAGAR的shared files中,tNoCM_hagarDouble与accessCtrl中的parameter COORD_SIZE,accessCtrl.v中的 .adrZ1_i(3'b0)的位宽,要根据network大小进行调整。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值