@@ -1280,7 +1280,7 @@ struct t_analysis_opts {
1280
1280
e_timing_update_type timing_update_type;
1281
1281
};
1282
1282
1283
- // used to store NoC specific options, when supplied as an input by the user
1283
+ // / Stores NoC specific options, when supplied as an input by the user
1284
1284
struct t_noc_opts {
1285
1285
bool noc; // /<options to turn on hard NoC modeling & optimization
1286
1286
std::string noc_flows_file; // /<name of the file that contains all the traffic flow information to be sent over the NoC in this design
@@ -1304,59 +1304,51 @@ struct t_noc_opts {
1304
1304
* @brief Defines the detailed routing architecture of the FPGA.
1305
1305
*
1306
1306
* Only important if the route_type is DETAILED.
1307
- *
1308
- * @param directionality Should the tracks be uni-directional or
1309
- * bi-directional? (UDSD by AY)
1310
- * @param switch_block_type Pattern of switches at each switch block.
1311
- * I assume Fs is always 3. If the type is SUBSET, I use a
1312
- * Xilinx-like switch block where track i in one channel always
1313
- * connects to track i in other channels. If type is WILTON,
1314
- * I use a switch block where track i does not always connect
1315
- * to track i in other channels. See Steve Wilton, Phd Thesis,
1316
- * University of Toronto, 1996. The UNIVERSAL switch block is
1317
- * from Y. W. Chang et al, TODAES, Jan. 1996, pp. 80 - 101.
1318
- * A CUSTOM switch block has also been added which allows a user
1319
- * to describe custom permutation functions and connection
1320
- * patterns. See comment at top of SRC/route/build_switchblocks.c
1321
- * @param switchblocks A vector of custom switch block descriptions that is
1322
- * used with the CUSTOM switch block type. See comment at top of
1323
- * SRC/route/build_switchblocks.c
1324
- * @param delayless_switch Index of a zero delay switch (used to connect
1325
- * things that should have no delay).
1326
- * @param wire_to_arch_ipin_switch keeps track of the type of architecture
1327
- * switch that connects wires to ipins
1328
- * @param wire_to_arch_ipin_switch_between_dice keeps track of the type of
1329
- * architecture switch that connects wires from another die to
1330
- * ipins in different die
1331
- * @param wire_to_rr_ipin_switch keeps track of the type of RR graph switch
1332
- * that connects wires to ipins in the RR graph
1333
- * @param wire_to_rr_ipin_switch_between_dice keeps track of the type of
1334
- * RR graph switch that connects wires from another die to
1335
- * ipins in different die in the RR graph
1336
- * @param R_minW_nmos Resistance (in Ohms) of a minimum width nmos transistor.
1337
- * Used only in the FPGA area model.
1338
- * @param R_minW_pmos Resistance (in Ohms) of a minimum width pmos transistor.
1339
- * @param read_rr_graph_filename File to read the RR graph from (overrides
1340
- * architecture)
1341
- * @param write_rr_graph_filename File to write the RR graph to after generation
1342
1307
*/
1343
1308
struct t_det_routing_arch {
1344
- enum e_directionality directionality; /* UDSD by AY */
1309
+ // / Should the tracks be uni-directional or bi-directional? (UDSD by AY)
1310
+ enum e_directionality directionality;
1345
1311
int Fs;
1312
+
1313
+ // / Pattern of switches at each switch block. I assume Fs is always 3.
1346
1314
enum e_switch_block_type switch_block_type;
1315
+
1316
+ // / A vector of custom switch block descriptions that is used with
1317
+ // / the CUSTOM switch block type. See comment at top of SRC/route/build_switchblocks.c
1347
1318
std::vector<t_switchblock_inf> switchblocks;
1348
1319
1349
1320
short global_route_switch;
1321
+
1322
+ // / Index of a zero delay switch (used to connect things that should have no delay).
1350
1323
short delayless_switch;
1324
+
1325
+ // / Keeps track of the type of architecture switch that connects wires to ipins
1351
1326
int wire_to_arch_ipin_switch;
1327
+
1328
+ // / Keeps track of the type of architecture switch that connects
1329
+ // / wires from another die to ipins in different die
1352
1330
int wire_to_arch_ipin_switch_between_dice = -1 ;
1331
+
1332
+ // / keeps track of the type of RR graph switch
1333
+ // / that connects wires to ipins in the RR graph
1353
1334
int wire_to_rr_ipin_switch;
1335
+
1336
+ // / keeps track of the type of RR graph switch that connects wires
1337
+ // / from another die to ipins in different die in the RR graph
1354
1338
int wire_to_rr_ipin_switch_between_dice = -1 ;
1339
+
1340
+ // / Resistance (in Ohms) of a minimum width nmos transistor.
1341
+ // / Used only in the FPGA area model.
1355
1342
float R_minW_nmos;
1343
+
1344
+ // / Resistance (in Ohms) of a minimum width pmos transistor.
1356
1345
float R_minW_pmos;
1357
1346
1347
+ // / File to read the RR graph from (overrides architecture)
1358
1348
std::string read_rr_graph_filename;
1349
+ // / File to write the RR graph to after generation
1359
1350
std::string write_rr_graph_filename;
1351
+ // / File to read the RR graph edge attribute overrides.
1360
1352
std::string read_rr_edge_override_filename;
1361
1353
};
1362
1354
0 commit comments