- Timestamp:
- Jul 17, 2014, 11:37:17 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/reconfiguration/platforms/tsar_generic_iob/top.cpp
r750 r751 844 844 845 845 // Mesh boundaries INT network DSPIN 846 DspinSignals<dspin_int_cmd_width> signal_dspin_false_int_cmd_in; 847 DspinSignals<dspin_int_cmd_width> signal_dspin_false_int_cmd_out; 848 DspinSignals<dspin_int_rsp_width> signal_dspin_false_int_rsp_in; 849 DspinSignals<dspin_int_rsp_width> signal_dspin_false_int_rsp_out; 846 DspinSignals<dspin_int_cmd_width>**** signal_dspin_false_int_cmd_in = 847 alloc_elems<DspinSignals<dspin_int_cmd_width> >("signal_dspin_false_int_cmd_in", XMAX, YMAX, 4, 3); 848 DspinSignals<dspin_int_cmd_width>**** signal_dspin_false_int_cmd_out = 849 alloc_elems<DspinSignals<dspin_int_cmd_width> >("signal_dspin_false_int_cmd_out", XMAX, YMAX, 4, 3); 850 DspinSignals<dspin_int_rsp_width>**** signal_dspin_false_int_rsp_in = 851 alloc_elems<DspinSignals<dspin_int_rsp_width> >("signal_dspin_false_int_rsp_in", XMAX, YMAX, 4, 2); 852 DspinSignals<dspin_int_rsp_width>**** signal_dspin_false_int_rsp_out = 853 alloc_elems<DspinSignals<dspin_int_rsp_width> >("signal_dspin_false_int_rsp_out", XMAX, YMAX, 4, 2); 854 850 855 851 856 // Horizontal inter-clusters RAM network DSPIN … … 870 875 871 876 // Mesh boundaries RAM network DSPIN 872 DspinSignals<dspin_ram_cmd_width> signal_dspin_false_ram_cmd_in; 873 DspinSignals<dspin_ram_cmd_width> signal_dspin_false_ram_cmd_out; 874 DspinSignals<dspin_ram_rsp_width> signal_dspin_false_ram_rsp_in; 875 DspinSignals<dspin_ram_rsp_width> signal_dspin_false_ram_rsp_out; 877 DspinSignals<dspin_ram_cmd_width>*** signal_dspin_false_ram_cmd_in = 878 alloc_elems<DspinSignals<dspin_ram_cmd_width> >("signal_dspin_false_ram_cmd_in", XMAX, YMAX, 4); 879 DspinSignals<dspin_ram_cmd_width>*** signal_dspin_false_ram_cmd_out = 880 alloc_elems<DspinSignals<dspin_ram_cmd_width> >("signal_dspin_false_ram_cmd_out", XMAX, YMAX, 4); 881 DspinSignals<dspin_ram_rsp_width>*** signal_dspin_false_ram_rsp_in = 882 alloc_elems<DspinSignals<dspin_ram_rsp_width> >("signal_dspin_false_ram_rsp_in", XMAX, YMAX, 4); 883 DspinSignals<dspin_ram_rsp_width>*** signal_dspin_false_ram_rsp_out = 884 alloc_elems<DspinSignals<dspin_ram_rsp_width> >("signal_dspin_false_ram_rsp_out", XMAX, YMAX, 4); 876 885 877 886 //////////////////////////// … … 1275 1284 for (size_t k = 0; k < 3; k++) 1276 1285 { 1277 clusters[0][y]->p_dspin_int_cmd_in[WEST][k] (signal_dspin_false_int_cmd_in );1278 clusters[0][y]->p_dspin_int_cmd_out[WEST][k] (signal_dspin_false_int_cmd_out );1279 clusters[XMAX-1][y]->p_dspin_int_cmd_in[EAST][k] (signal_dspin_false_int_cmd_in );1280 clusters[XMAX-1][y]->p_dspin_int_cmd_out[EAST][k] (signal_dspin_false_int_cmd_out );1286 clusters[0][y]->p_dspin_int_cmd_in[WEST][k] (signal_dspin_false_int_cmd_in[0][y][WEST][k]); 1287 clusters[0][y]->p_dspin_int_cmd_out[WEST][k] (signal_dspin_false_int_cmd_out[0][y][WEST][k]); 1288 clusters[XMAX-1][y]->p_dspin_int_cmd_in[EAST][k] (signal_dspin_false_int_cmd_in[XMAX-1][y][EAST][k]); 1289 clusters[XMAX-1][y]->p_dspin_int_cmd_out[EAST][k] (signal_dspin_false_int_cmd_out[XMAX-1][y][EAST][k]); 1281 1290 } 1282 1291 1283 1292 for (size_t k = 0; k < 2; k++) 1284 1293 { 1285 clusters[0][y]->p_dspin_int_rsp_in[WEST][k] (signal_dspin_false_int_rsp_in );1286 clusters[0][y]->p_dspin_int_rsp_out[WEST][k] (signal_dspin_false_int_rsp_out );1287 clusters[XMAX-1][y]->p_dspin_int_rsp_in[EAST][k] (signal_dspin_false_int_rsp_in );1288 clusters[XMAX-1][y]->p_dspin_int_rsp_out[EAST][k] (signal_dspin_false_int_rsp_out );1294 clusters[0][y]->p_dspin_int_rsp_in[WEST][k] (signal_dspin_false_int_rsp_in[0][y][WEST][k]); 1295 clusters[0][y]->p_dspin_int_rsp_out[WEST][k] (signal_dspin_false_int_rsp_out[0][y][WEST][k]); 1296 clusters[XMAX-1][y]->p_dspin_int_rsp_in[EAST][k] (signal_dspin_false_int_rsp_in[XMAX-1][y][EAST][k]); 1297 clusters[XMAX-1][y]->p_dspin_int_rsp_out[EAST][k] (signal_dspin_false_int_rsp_out[XMAX-1][y][EAST][k]); 1289 1298 } 1290 1299 1291 clusters[0][y]->p_dspin_ram_cmd_in[WEST] (signal_dspin_false_ram_cmd_in );1292 clusters[0][y]->p_dspin_ram_cmd_out[WEST] (signal_dspin_false_ram_cmd_out );1293 clusters[0][y]->p_dspin_ram_rsp_in[WEST] (signal_dspin_false_ram_rsp_in );1294 clusters[0][y]->p_dspin_ram_rsp_out[WEST] (signal_dspin_false_ram_rsp_out );1295 1296 clusters[XMAX-1][y]->p_dspin_ram_cmd_in[EAST] (signal_dspin_false_ram_cmd_in );1297 clusters[XMAX-1][y]->p_dspin_ram_cmd_out[EAST] (signal_dspin_false_ram_cmd_out );1298 clusters[XMAX-1][y]->p_dspin_ram_rsp_in[EAST] (signal_dspin_false_ram_rsp_in );1299 clusters[XMAX-1][y]->p_dspin_ram_rsp_out[EAST] (signal_dspin_false_ram_rsp_out );1300 clusters[0][y]->p_dspin_ram_cmd_in[WEST] (signal_dspin_false_ram_cmd_in[0][y][WEST]); 1301 clusters[0][y]->p_dspin_ram_cmd_out[WEST] (signal_dspin_false_ram_cmd_out[0][y][WEST]); 1302 clusters[0][y]->p_dspin_ram_rsp_in[WEST] (signal_dspin_false_ram_rsp_in[0][y][WEST]); 1303 clusters[0][y]->p_dspin_ram_rsp_out[WEST] (signal_dspin_false_ram_rsp_out[0][y][WEST]); 1304 1305 clusters[XMAX-1][y]->p_dspin_ram_cmd_in[EAST] (signal_dspin_false_ram_cmd_in[XMAX-1][y][EAST]); 1306 clusters[XMAX-1][y]->p_dspin_ram_cmd_out[EAST] (signal_dspin_false_ram_cmd_out[XMAX-1][y][EAST]); 1307 clusters[XMAX-1][y]->p_dspin_ram_rsp_in[EAST] (signal_dspin_false_ram_rsp_in[XMAX-1][y][EAST]); 1308 clusters[XMAX-1][y]->p_dspin_ram_rsp_out[EAST] (signal_dspin_false_ram_rsp_out[XMAX-1][y][EAST]); 1300 1309 } 1301 1310 … … 1307 1316 for (size_t k = 0; k < 3; k++) 1308 1317 { 1309 clusters[x][0]->p_dspin_int_cmd_in[SOUTH][k] (signal_dspin_false_int_cmd_in );1310 clusters[x][0]->p_dspin_int_cmd_out[SOUTH][k] (signal_dspin_false_int_cmd_out );1311 clusters[x][YMAX-1]->p_dspin_int_cmd_in[NORTH][k] (signal_dspin_false_int_cmd_in );1312 clusters[x][YMAX-1]->p_dspin_int_cmd_out[NORTH][k] (signal_dspin_false_int_cmd_out );1318 clusters[x][0]->p_dspin_int_cmd_in[SOUTH][k] (signal_dspin_false_int_cmd_in[x][0][SOUTH][k]); 1319 clusters[x][0]->p_dspin_int_cmd_out[SOUTH][k] (signal_dspin_false_int_cmd_out[x][0][SOUTH][k]); 1320 clusters[x][YMAX-1]->p_dspin_int_cmd_in[NORTH][k] (signal_dspin_false_int_cmd_in[x][YMAX-1][NORTH][k]); 1321 clusters[x][YMAX-1]->p_dspin_int_cmd_out[NORTH][k] (signal_dspin_false_int_cmd_out[x][YMAX-1][NORTH][k]); 1313 1322 } 1314 1323 1315 1324 for (size_t k = 0; k < 2; k++) 1316 1325 { 1317 clusters[x][0]->p_dspin_int_rsp_in[SOUTH][k] (signal_dspin_false_int_rsp_in );1318 clusters[x][0]->p_dspin_int_rsp_out[SOUTH][k] (signal_dspin_false_int_rsp_out );1319 clusters[x][YMAX-1]->p_dspin_int_rsp_in[NORTH][k] (signal_dspin_false_int_rsp_in );1320 clusters[x][YMAX-1]->p_dspin_int_rsp_out[NORTH][k] (signal_dspin_false_int_rsp_out );1326 clusters[x][0]->p_dspin_int_rsp_in[SOUTH][k] (signal_dspin_false_int_rsp_in[x][0][SOUTH][k]); 1327 clusters[x][0]->p_dspin_int_rsp_out[SOUTH][k] (signal_dspin_false_int_rsp_out[x][0][SOUTH][k]); 1328 clusters[x][YMAX-1]->p_dspin_int_rsp_in[NORTH][k] (signal_dspin_false_int_rsp_in[x][YMAX-1][NORTH][k]); 1329 clusters[x][YMAX-1]->p_dspin_int_rsp_out[NORTH][k] (signal_dspin_false_int_rsp_out[x][YMAX-1][NORTH][k]); 1321 1330 } 1322 1331 1323 clusters[x][0]->p_dspin_ram_cmd_in[SOUTH] (signal_dspin_false_ram_cmd_in );1324 clusters[x][0]->p_dspin_ram_cmd_out[SOUTH] (signal_dspin_false_ram_cmd_out );1325 clusters[x][0]->p_dspin_ram_rsp_in[SOUTH] (signal_dspin_false_ram_rsp_in );1326 clusters[x][0]->p_dspin_ram_rsp_out[SOUTH] (signal_dspin_false_ram_rsp_out );1327 1328 clusters[x][YMAX-1]->p_dspin_ram_cmd_in[NORTH] (signal_dspin_false_ram_cmd_in );1329 clusters[x][YMAX-1]->p_dspin_ram_cmd_out[NORTH] (signal_dspin_false_ram_cmd_out );1330 clusters[x][YMAX-1]->p_dspin_ram_rsp_in[NORTH] (signal_dspin_false_ram_rsp_in );1331 clusters[x][YMAX-1]->p_dspin_ram_rsp_out[NORTH] (signal_dspin_false_ram_rsp_out );1332 clusters[x][0]->p_dspin_ram_cmd_in[SOUTH] (signal_dspin_false_ram_cmd_in[x][0][SOUTH]); 1333 clusters[x][0]->p_dspin_ram_cmd_out[SOUTH] (signal_dspin_false_ram_cmd_out[x][0][SOUTH]); 1334 clusters[x][0]->p_dspin_ram_rsp_in[SOUTH] (signal_dspin_false_ram_rsp_in[x][0][SOUTH]); 1335 clusters[x][0]->p_dspin_ram_rsp_out[SOUTH] (signal_dspin_false_ram_rsp_out[x][0][SOUTH]); 1336 1337 clusters[x][YMAX-1]->p_dspin_ram_cmd_in[NORTH] (signal_dspin_false_ram_cmd_in[x][YMAX-1][NORTH]); 1338 clusters[x][YMAX-1]->p_dspin_ram_cmd_out[NORTH] (signal_dspin_false_ram_cmd_out[x][YMAX-1][NORTH]); 1339 clusters[x][YMAX-1]->p_dspin_ram_rsp_in[NORTH] (signal_dspin_false_ram_rsp_in[x][YMAX-1][NORTH]); 1340 clusters[x][YMAX-1]->p_dspin_ram_rsp_out[NORTH] (signal_dspin_false_ram_rsp_out[x][YMAX-1][NORTH]); 1332 1341 } 1333 1342 … … 1343 1352 signal_irq_false = false; 1344 1353 1345 signal_dspin_false_int_cmd_in.write = false; 1346 signal_dspin_false_int_cmd_out.read = true; 1347 signal_dspin_false_int_rsp_in.write = false; 1348 signal_dspin_false_int_rsp_out.read = true; 1349 signal_dspin_false_ram_cmd_in.write = false; 1350 signal_dspin_false_ram_cmd_out.read = true; 1351 signal_dspin_false_ram_rsp_in.write = false; 1352 signal_dspin_false_ram_rsp_out.read = true; 1354 // network boundaries signals 1355 for (size_t x = 0; x < XMAX ; x++) 1356 { 1357 for (size_t y = 0; y < YMAX ; y++) 1358 { 1359 for (size_t a = 0; a < 4; a++) 1360 { 1361 for (size_t k = 0; k < 3; k++) 1362 { 1363 signal_dspin_false_int_cmd_in[x][y][a][k].write = false; 1364 signal_dspin_false_int_cmd_in[x][y][a][k].read = true; 1365 signal_dspin_false_int_cmd_out[x][y][a][k].write = false; 1366 signal_dspin_false_int_cmd_out[x][y][a][k].read = true; 1367 } 1368 1369 for (size_t k = 0; k < 2; k++) 1370 { 1371 signal_dspin_false_int_rsp_in[x][y][a][k].write = false; 1372 signal_dspin_false_int_rsp_in[x][y][a][k].read = true; 1373 signal_dspin_false_int_rsp_out[x][y][a][k].write = false; 1374 signal_dspin_false_int_rsp_out[x][y][a][k].read = true; 1375 } 1376 1377 signal_dspin_false_ram_cmd_in[x][y][a].write = false; 1378 signal_dspin_false_ram_cmd_in[x][y][a].read = true; 1379 signal_dspin_false_ram_cmd_out[x][y][a].write = false; 1380 signal_dspin_false_ram_cmd_out[x][y][a].read = true; 1381 1382 signal_dspin_false_ram_rsp_in[x][y][a].write = false; 1383 signal_dspin_false_ram_rsp_in[x][y][a].read = true; 1384 signal_dspin_false_ram_rsp_out[x][y][a].write = false; 1385 signal_dspin_false_ram_rsp_out[x][y][a].read = true; 1386 } 1387 } 1388 } 1353 1389 1354 1390 sc_start(sc_core::sc_time(1, SC_NS));
Note: See TracChangeset
for help on using the changeset viewer.