- Timestamp:
- May 24, 2015, 6:37:08 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/reconfiguration/modules/dspin_router/caba/source/include/dspin_router.h
r947 r994 84 84 DspinOutput<flit_width> *p_out; 85 85 86 // reconfiguration port87 sc_in<uint32_t> *p_recovery_cfg;88 89 86 // constructor / destructor 90 87 DspinRouter( sc_module_name name, … … 95 92 const size_t in_fifo_depth, 96 93 const size_t out_fifo_depth, 97 const bool broadcast_supported = false ); 94 const bool broadcast_supported = false, 95 const bool configuration_supported = false ); 98 96 99 97 ~DspinRouter(); … … 107 105 bool eop; 108 106 } internal_flit_t; 107 108 // reconfiguration port 109 // port binding is performed with the bind_recovery_port() function 110 sc_in<uint32_t> *p_recovery_cfg; 109 111 110 112 // registers … … 135 137 void transition(); 136 138 void genMoore(); 139 137 140 int xfirst_route( size_t xdest, size_t ydest ); 141 int recovery_route( size_t xdest, size_t ydest ); 138 142 int route( sc_uint<flit_width> data ); 143 139 144 int broadcast_route( int iter, int source, sc_uint<flit_width> data ); 140 145 bool is_broadcast( sc_uint<flit_width> data ); 146 sc_uint<flit_width> compute_broadcast_header( int source ); 141 147 142 // fault-recovery methods143 148 bool is_destination_blackhole( size_t xdest, size_t ydest, int bhpos ); 144 int recovery_route( size_t xdest, size_t ydest ); 145 146 public: 147 148 inline void set_disable_mask( int mask ) 149 { 150 m_disable_mask = mask; 151 } 149 int blackhole_position(); 152 150 153 151 inline bool is_network_recovery_enable() … … 161 159 } 162 160 163 inline int blackhole_position()161 inline bool is_reconfigurable() 164 162 { 165 return (p_recovery_cfg ->read() & 0xF);163 return (p_recovery_cfg != NULL); 166 164 } 167 165 168 void bind_recovery_port( sc_core::sc_signal<uint32_t> &s ); 166 public: 167 168 inline void set_disable_mask( int mask ) 169 { 170 m_disable_mask = mask; 171 } 172 173 void bind_recovery_port(sc_signal<uint32_t> &s); 169 174 170 175 void print_trace();
Note: See TracChangeset
for help on using the changeset viewer.