diff options
author | David Hashe <david.hashe@amd.com> | 2015-07-20 09:15:18 -0500 |
---|---|---|
committer | David Hashe <david.hashe@amd.com> | 2015-07-20 09:15:18 -0500 |
commit | 0d00cbc97b47344e12e9eb943efb9ca29db66898 (patch) | |
tree | 705c0b835f10b1f910b9753b96d07ee8b474f4f9 /src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc | |
parent | 8b32dad4d8545bf33285853936ede834cb39cf77 (diff) | |
download | gem5-0d00cbc97b47344e12e9eb943efb9ca29db66898.tar.xz |
ruby: change router pipeline stages to 2
This patch changes the router pipeline stages from 4 to 2. The
canonical 4-stage router is conservative while a lower-latency router
with look ahead routing and speculative allocation is well acknowledged.
Diffstat (limited to 'src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc')
-rw-r--r-- | src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc b/src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc index 395b1a9c5..a7430b06e 100644 --- a/src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc +++ b/src/mem/ruby/network/garnet/fixed-pipeline/VCallocator_d.cc @@ -117,6 +117,7 @@ VCallocator_d::wakeup() clear_request_vector(); check_for_wakeup(); + m_router->call_sw_alloc(); } bool @@ -236,7 +237,6 @@ VCallocator_d::arbitrate_outvcs() m_router->curCycle()); m_output_unit[outport_iter]->update_vc( outvc_iter, inport, invc); - m_router->swarb_req(); break; } } @@ -261,7 +261,7 @@ VCallocator_d::check_for_wakeup() for (int i = 0; i < m_num_inports; i++) { for (int j = 0; j < m_num_vcs; j++) { if (m_input_unit[i]->need_stage(j, VC_AB_, VA_, nextCycle)) { - scheduleEvent(Cycles(1)); + m_router->vcarb_req(); return; } } |