- Timestamp:
- Jan 2, 2015, 2:12:44 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/platforms/tsar_generic_iob/top.cpp
r874 r914 78 78 // - Y_SIZE : number of clusters in a column 79 79 // - NB_PROCS_MAX : number of processors per cluster (power of 2) 80 // - NB_DMA_CHANNELS : number of DMA channels per cluster (up to 8) 80 81 // - NB_TTY_CHANNELS : number of TTY channels in I/O network (up to 16) 81 82 // - NB_NIC_CHANNELS : number of NIC channels in I/O network (up to 2) … … 94 95 // - L1_DSETS 95 96 // - BDEV_IMAGE_NAME : file pathname for block device 96 // - NIC_RX_NAME : file pathname for NIC received packets97 // - NIC_TX_NAME : file pathname for NIC transmited packets98 97 // - NIC_TIMEOUT : max number of cycles before closing a container 99 98 // … … 208 207 #define BDEV_IMAGE_NAME "../../../giet_vm/hdd/virt_hdd.dmg" 209 208 210 #define NIC_RX_NAME "/dev/null"211 #define NIC_TX_NAME "/dev/null"212 209 #define NIC_TIMEOUT 10000 213 210 … … 229 226 //////////////////////i///////////////////////////////////// 230 227 231 #define MAX_FROZEN_CYCLES 100000 228 #define MAX_FROZEN_CYCLES 1000000 232 229 233 230 ///////////////////////////////////////////////////////// … … 324 321 size_t ncycles = 4000000000; // simulated cycles 325 322 char disk_name[256] = BDEV_IMAGE_NAME; // pathname: disk image 326 char nic_rx_name[256] = NIC_RX_NAME; // pathname: rx packets file327 char nic_tx_name[256] = NIC_TX_NAME; // pathname: tx packets file328 323 ssize_t threads_nr = 1; // simulator's threads number 329 324 bool debug_ok = false; // trace activated … … 382 377 { 383 378 std::cout << "MEMCID parameter does'nt fit XMAX/YMAX" << std::endl; 379 std::cout << " - MEMCID = " << std::hex << debug_memc_id << std::endl; 380 std::cout << " - XMAX = " << std::hex << XMAX << std::endl; 381 std::cout << " - YMAX = " << std::hex << YMAX << std::endl; 384 382 exit(0); 385 383 } … … 409 407 { 410 408 std::cout << "PROCID parameter does'nt fit XMAX/YMAX" << std::endl; 409 std::cout << " - PROCID = " << std::hex << debug_proc_id << std::endl; 410 std::cout << " - XMAX = " << std::hex << XMAX << std::endl; 411 std::cout << " - YMAX = " << std::hex << YMAX << std::endl; 411 412 exit(0); 412 413 } … … 451 452 "NB_PROCS_MAX parameter cannot be larger than 2^P_WIDTH" ); 452 453 453 assert( (NB_DMA_CHANNELS <= 4) and454 "The NB_DMA_CHANNELS parameter cannot be larger than 4" );454 assert( (NB_DMA_CHANNELS <= 8) and 455 "The NB_DMA_CHANNELS parameter cannot be larger than 8" ); 455 456 456 457 assert( (NB_TTY_CHANNELS >= 1) and (NB_TTY_CHANNELS <= 16) and 457 458 "The NB_TTY_CHANNELS parameter cannot be larger than 16" ); 458 459 459 assert( (NB_NIC_CHANNELS == 2) and 460 "The NB_NIC_CHANNELS parameter must be 2" ); 460 assert( (NB_NIC_CHANNELS <= 2) and 461 "The NB_NIC_CHANNELS parameter cannot be larger than 2" ); 462 463 assert( (NB_CMA_CHANNELS <= 4) and 464 "The NB_CMA_CHANNELS parameter cannot be larger than 4" ); 461 465 462 466 std::cout << std::endl << std::dec … … 464 468 << " - YMAX = " << YMAX << std::endl 465 469 << " - NB_PROCS_MAX = " << NB_PROCS_MAX << std::endl 470 << " - NB_DMA_CHANNELS = " << NB_DMA_CHANNELS << std::endl 466 471 << " - NB_TTY_CHANNELS = " << NB_TTY_CHANNELS << std::endl 467 << " - NB_DMA_CHANNELS = " << NB_DMA_CHANNELS << std::endl468 472 << " - NB_NIC_CHANNELS = " << NB_NIC_CHANNELS << std::endl 473 << " - NB_CMA_CHANNELS = " << NB_CMA_CHANNELS << std::endl 469 474 << " - MEMC_WAYS = " << MEMC_WAYS << std::endl 470 475 << " - MEMC_SETS = " << MEMC_SETS << std::endl 471 476 << " - RAM_LATENCY = " << XRAM_LATENCY << std::endl 472 477 << " - MAX_FROZEN = " << frozen_cycles << std::endl 478 << " - NCYCLES = " << ncycles << std::endl 473 479 << " - DEBUG_PROCID = " << debug_proc_id << std::endl 474 480 << " - DEBUG_MEMCID = " << debug_memc_id << std::endl … … 926 932 maptab_iox, 927 933 NB_NIC_CHANNELS, 928 0, // mac_4 address 929 0, // mac_2 address 930 nic_rx_name, 931 nic_tx_name); 934 0, // mac_4 address 935 0, // mac_2 address 936 1 ); // NIC_MODE_SYNTHESIS 932 937 933 938 // Frame Buffer … … 959 964 IntTab(0, IOX_CDMA_TGT_ID), 960 965 64, // burst size (bytes) 961 2*NB_NIC_CHANNELS );966 NB_CMA_CHANNELS ); 962 967 // Multi-TTY controller 963 968 std::vector<std::string> vect_names; … … 1167 1172 cdma->p_vci_target (signal_vci_tgt_cdma); 1168 1173 cdma->p_vci_initiator (signal_vci_ini_cdma); 1169 for ( size_t i=0 ; i<(NB_ NIC_CHANNELS*2) ; i++)1174 for ( size_t i=0 ; i<(NB_CMA_CHANNELS) ; i++) 1170 1175 { 1171 1176 cdma->p_irq[i] (signal_irq_cdma[i]); … … 1433 1438 1434 1439 // Monitor a specific address for one L2 cache 1435 // clusters[0][0]->memc->cache_monitor( 0x C0100ULL, true ); // single word1440 // clusters[0][0]->memc->cache_monitor( 0x0ULL, true ); // one word 1436 1441 1437 1442 // Monitor a specific address for one XRAM 1438 // clusters[0][0]->xram->start_monitor( 0x C0100ULL ,4);1443 // clusters[0][0]->xram->start_monitor( 0x0ULL , 64); 1439 1444 1440 1445 if ( debug_ok and (n > debug_from) ) … … 1456 1461 clusters[x][y]->signal_int_vci_ini_proc[l].print_trace(proc_signame.str()); 1457 1462 1458 1459 1460 1461 1463 // clusters[x][y]->xicu->print_trace(l); 1464 // std::ostringstream xicu_signame; 1465 // xicu_signame << "[SIG]XICU_" << x << "_" << y; 1466 // clusters[x][y]->signal_int_vci_tgt_xicu.print_trace(xicu_signame.str()); 1462 1467 1463 1468 clusters[x][y]->mdma->print_trace(); … … 1525 1530 if ( debug_iob ) 1526 1531 { 1527 1532 // clusters[0][0]->iob->print_trace(); 1528 1533 // clusters[0][0]->signal_int_vci_tgt_iobx.print_trace( "[SIG]IOB0_INT_TGT"); 1529 1534 // clusters[0][0]->signal_int_vci_ini_iobx.print_trace( "[SIG]IOB0_INT_INI"); 1530 1535 // clusters[0][0]->signal_ram_vci_ini_iobx.print_trace( "[SIG]IOB0_RAM_INI"); 1531 1532 1536 // signal_vci_ini_iob0.print_trace("[SIG]IOB0_IOX_INI"); 1533 1537 // signal_vci_tgt_iob0.print_trace("[SIG]IOB0_IOX_TGT"); 1534 1538 1535 1536 signal_vci_tgt_cdma.print_trace("[SIG]IOX_CDMA_TGT");1537 signal_vci_ini_cdma.print_trace("[SIG]IOX_CDMA_INI");1539 // cdma->print_trace(); 1540 // signal_vci_tgt_cdma.print_trace("[SIG]CDMA_TGT"); 1541 // signal_vci_ini_cdma.print_trace("[SIG]CDMA_INI"); 1538 1542 1539 1543 // brom->print_trace(); 1540 // signal_vci_tgt_brom.print_trace("[SIG] IOX_BROM_TGT");1544 // signal_vci_tgt_brom.print_trace("[SIG]BROM_TGT"); 1541 1545 1542 1546 // mtty->print_trace(); 1543 // signal_vci_tgt_mtty.print_trace("[SIG] IOX_MTTY_TGT");1544 1545 //bdev->print_trace();1546 //signal_vci_tgt_bdev.print_trace("[SIG]BDEV_TGT");1547 //signal_vci_ini_bdev.print_trace("[SIG]BDEV_INI");1548 1549 // mnic->print_trace( );1547 // signal_vci_tgt_mtty.print_trace("[SIG]MTTY_TGT"); 1548 1549 bdev->print_trace(); 1550 signal_vci_tgt_bdev.print_trace("[SIG]BDEV_TGT"); 1551 signal_vci_ini_bdev.print_trace("[SIG]BDEV_INI"); 1552 1553 // mnic->print_trace( 0x000 ); 1550 1554 // signal_vci_tgt_mnic.print_trace("[SIG]MNIC_TGT"); 1551 1555 1552 1556 // fbuf->print_trace(); 1553 // signal_vci_tgt_fbuf.print_trace("[SIG]FBUF ");1557 // signal_vci_tgt_fbuf.print_trace("[SIG]FBUF_TGT"); 1554 1558 1555 1559 // iopi->print_trace();
Note: See TracChangeset
for help on using the changeset viewer.