From 6b9eb92bd0b03d69a2f2e9c075a8af99d860d4d1 Mon Sep 17 00:00:00 2001 From: Myrice Date: Tue, 7 Apr 2015 14:43:05 -0700 Subject: Booksim2 abandoned svn and moved to github (https://github.com/booksim/booksim2). This .svn folder is useless now and should be deleted. For further integration, a git submodule/git subtree may be used. Since I modified their source code, we cannot use git submodule/git subtree easily. Signed-off-by: Myrice --- ...c4fdbece4c23327c9e321b130c2ec595705f98.svn-base | 183 --------------------- 1 file changed, 183 deletions(-) delete mode 100644 src/intersim2/.svn/pristine/b6/b6c4fdbece4c23327c9e321b130c2ec595705f98.svn-base (limited to 'src/intersim2/.svn/pristine/b6') diff --git a/src/intersim2/.svn/pristine/b6/b6c4fdbece4c23327c9e321b130c2ec595705f98.svn-base b/src/intersim2/.svn/pristine/b6/b6c4fdbece4c23327c9e321b130c2ec595705f98.svn-base deleted file mode 100644 index aeb258a..0000000 --- a/src/intersim2/.svn/pristine/b6/b6c4fdbece4c23327c9e321b130c2ec595705f98.svn-base +++ /dev/null @@ -1,183 +0,0 @@ -// $Id$ - -/* - Copyright (c) 2007-2012, Trustees of The Leland Stanford Junior University - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - Redistributions in binary form must reproduce the above copyright notice, this - list of conditions and the following disclaimer in the documentation and/or - other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#ifndef _IQ_ROUTER_HPP_ -#define _IQ_ROUTER_HPP_ - -#include -#include -#include -#include -#include - -#include "router.hpp" -#include "routefunc.hpp" - -using namespace std; - -class VC; -class Flit; -class Credit; -class Buffer; -class BufferState; -class Allocator; -class SwitchMonitor; -class BufferMonitor; - -class IQRouter : public Router { - - int _vcs; - - bool _vc_busy_when_full; - bool _vc_prioritize_empty; - bool _vc_shuffle_requests; - - bool _speculative; - bool _spec_check_elig; - bool _spec_check_cred; - bool _spec_mask_by_reqs; - - bool _active; - - int _routing_delay; - int _vc_alloc_delay; - int _sw_alloc_delay; - - map _in_queue_flits; - - deque > > _proc_credits; - - deque > > _route_vcs; - deque, int> > > _vc_alloc_vcs; - deque, int> > > _sw_hold_vcs; - deque, int> > > _sw_alloc_vcs; - - deque > > > _crossbar_flits; - - map _out_queue_credits; - - vector _buf; - vector _next_buf; - - Allocator *_vc_allocator; - Allocator *_sw_allocator; - Allocator *_spec_sw_allocator; - - vector _vc_rr_offset; - vector _sw_rr_offset; - - tRoutingFunction _rf; - - int _output_buffer_size; - vector > _output_buffer; - - vector > _credit_buffer; - - bool _hold_switch_for_packet; - vector _switch_hold_in; - vector _switch_hold_out; - vector _switch_hold_vc; - - bool _noq; - vector > _noq_next_output_port; - vector > _noq_next_vc_start; - vector > _noq_next_vc_end; - -#ifdef TRACK_FLOWS - vector > > _outstanding_classes; -#endif - - bool _ReceiveFlits( ); - bool _ReceiveCredits( ); - - virtual void _InternalStep( ); - - bool _SWAllocAddReq(int input, int vc, int output); - - void _InputQueuing( ); - - void _RouteEvaluate( ); - void _VCAllocEvaluate( ); - void _SWHoldEvaluate( ); - void _SWAllocEvaluate( ); - void _SwitchEvaluate( ); - - void _RouteUpdate( ); - void _VCAllocUpdate( ); - void _SWHoldUpdate( ); - void _SWAllocUpdate( ); - void _SwitchUpdate( ); - - void _OutputQueuing( ); - - void _SendFlits( ); - void _SendCredits( ); - - void _UpdateNOQ(int input, int vc, Flit const * f); - - // ---------------------------------------- - // - // Router Power Modellingyes - // - // ---------------------------------------- - - SwitchMonitor * _switchMonitor ; - BufferMonitor * _bufferMonitor ; - -public: - - IQRouter( Configuration const & config, - Module *parent, string const & name, int id, - int inputs, int outputs ); - - virtual ~IQRouter( ); - - virtual void AddOutputChannel(FlitChannel * channel, CreditChannel * backchannel); - - virtual void ReadInputs( ); - virtual void WriteOutputs( ); - - void Display( ostream & os = cout ) const; - - virtual int GetUsedCredit(int o) const; - virtual int GetBufferOccupancy(int i) const; - -#ifdef TRACK_BUFFERS - virtual int GetUsedCreditForClass(int output, int cl) const; - virtual int GetBufferOccupancyForClass(int input, int cl) const; -#endif - - virtual vector UsedCredits() const; - virtual vector FreeCredits() const; - virtual vector MaxCredits() const; - - SwitchMonitor const * const GetSwitchMonitor() const {return _switchMonitor;} - BufferMonitor const * const GetBufferMonitor() const {return _bufferMonitor;} - -}; - -#endif -- cgit v1.3