OpenCores
URL https://opencores.org/ocsvn/async_sdm_noc/async_sdm_noc/trunk

Subversion Repositories async_sdm_noc

[/] [async_sdm_noc/] [branches/] [clos_opt/] [clos_opt/] [define.v] - Blame information for rev 78

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 wsong0210
/*
2
 Asynchronous SDM NoC
3
 (C)2011 Wei Song
4
 Advanced Processor Technologies Group
5
 Computer Science, the Univ. of Manchester, UK
6
 
7
 Authors:
8
 Wei Song     wsong83@gmail.com
9
 
10
 License: LGPL 3.0 or later
11
 
12
 Router configuration header file for SDM routers.
13
 
14
 Possible configuration combinations:
15
 * Wormhole (set VCN to 1)
16
   ENABLE_EOF [ENABLE_CHANNEL_SLICING] [ENABLE_LOOKAHEAD]
17
 * SDM (set VCN > 1 without define ENABLE_CLOS)
18
   ENABLE_EOF [ENABLE_CHANNEL_SLICING] [ENABLE_LOOKAHEAD] [ENABLE_MRMA]
19
 * SDM-Clos (set VCN > 1 and define ENABLE_CLOS)
20
   ENABLE_EOF ENABLE_CLOS [ENABLE_CHANNEL_SLICING] [ENABLE_LOOKAHEAD] [ENABLE_CRRD [ENABLE_MRMA]] [ENABLE_BUFFERED_CLOS]
21
 
22
 The combinations not presented above are illegal, which may produce unexpected failures.
23
 
24
 History:
25
 20/09/2009  Initial version. <wsong83@gmail.com>
26
 23/05/2011  Clean up for opensource. <wsong83@gmail.com>
27
 26/05/2011  Add ENABLE_MRMA and configuration explanations. <wsong83@gmail.com>
28
 21/06/2011  Prepare to support buffered Clos. <wsong83@gmail.com>
29
 
30
*/
31
 
32
// if VCN > 1, set ENABLE_CLOS to use the 2-stage Clos switch for less switching area
33 78 wsong0210
`define ENABLE_CLOS
34 62 wsong0210
 
35
// Using the asynchronous virsion of the Concurrent round-robine dispatching
36
// algorithm for the 2-stage Clos can save some area but introduce a 5%
37
// throughput loss
38
// `define ENABLE_CRRD
39
 
40
// for the SDM router using crossbars and the Clos router using CRRD
41
// algorithm, using the multi-resource match arbiter may save the area in
42
// switch allocators
43
// `define ENABLE_MRMA
44
 
45
// set to enable channel slicing for fast data paths
46
// `define ENABLE_CHANNEL_SLICING
47
 
48
// set to use the early acknowledge of lokkahead pipelines in the critical cycle
49
// `define ENABLE_LOOKAHEAD
50
 
51
// always set in wormhole and SDM routers to enable the eof bit in data pipeline stages
52
`define ENABLE_EOF
53
 
54
// set to insert buffers inside the Clos switch
55
`define ENABLE_BUFFERED_CLOS

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.