- Timestamp:
- Aug 26, 2014, 3:08:14 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/reconfiguration/platforms/tsar_generic_iob/top.cpp
r766 r769 134 134 #include "vci_iox_network.h" 135 135 #include "vci_iopic.h" 136 #include "vci_simhelper.h" 136 137 137 138 #include "alloc_elems.h" … … 303 304 #define IOX_MTTY_TGT_ID 4 304 305 #define IOX_IOPI_TGT_ID 5 305 #define IOX_IOB0_TGT_ID 6 306 #define IOX_IOB1_TGT_ID 7 306 #define IOX_SIMH_TGT_ID 6 307 #define IOX_IOB0_TGT_ID 7 308 #define IOX_IOB1_TGT_ID 8 307 309 308 310 #define IOX_BDEV_INI_ID 0 … … 597 599 maptab_int.add(Segment(spic.str(), SEG_PIC_BASE+offset, SEG_PIC_SIZE, 598 600 IntTab(cluster(x,y), INT_IOBX_TGT_ID), not cacheable)); 601 602 std::ostringstream ssim; 603 ssim << "int_seg_simh_" << x << "_" << y; 604 maptab_int.add(Segment(ssim.str(), SEG_SIM_BASE+offset, SEG_SIM_SIZE, 605 IntTab(cluster(x,y), INT_IOBX_TGT_ID), not cacheable)); 599 606 } 600 607 … … 710 717 maptab_iox.add(Segment("iox_seg_iopi_0", SEG_PIC_BASE + iob0_base, SEG_PIC_SIZE, 711 718 IntTab(0, IOX_IOPI_TGT_ID), false)); 719 maptab_iox.add(Segment("iox_seg_simh_0", SEG_SIM_BASE + iob0_base, SEG_SIM_SIZE, 720 IntTab(0, IOX_SIMH_TGT_ID), false)); 712 721 713 722 if ( cluster_iob0 != cluster_iob1 ) … … 728 737 maptab_iox.add(Segment("iox_seg_iopi_1", SEG_PIC_BASE + iob1_base, SEG_PIC_SIZE, 729 738 IntTab(0, IOX_IOPI_TGT_ID), false)); 739 maptab_iox.add(Segment("iox_seg_simh_1", SEG_SIM_BASE + iob1_base, SEG_SIM_SIZE, 740 IntTab(0, IOX_SIMH_TGT_ID), false)); 730 741 } 731 742 … … 822 833 VciSignals<vci_param_ext> signal_vci_tgt_cdma("signal_vci_tgt_cdma"); 823 834 VciSignals<vci_param_ext> signal_vci_tgt_iopi("signal_vci_ini_iopi"); 835 VciSignals<vci_param_ext> signal_vci_tgt_simh("signal_vci_ini_simh"); 824 836 825 837 // Horizontal inter-clusters INT network DSPIN … … 910 922 911 923 const size_t nb_iox_initiators = (cluster_iob0 != cluster_iob1) ? 5 : 4; 912 const size_t nb_iox_targets = (cluster_iob0 != cluster_iob1) ? 8 : 7;924 const size_t nb_iox_targets = (cluster_iob0 != cluster_iob1) ? 9 : 8; 913 925 914 926 // IOX network … … 981 993 32 ); // number of input HWI 982 994 995 // Simhelper 996 VciSimhelper<vci_param_ext>* simh; 997 simh = new VciSimhelper<vci_param_ext>("simh", 998 IntTab(0, IOX_SIMH_TGT_ID), 999 maptab_iox ); 1000 983 1001 // Clusters 984 1002 TsarIobCluster<vci_param_int, … … 1111 1129 iox_network->p_to_tgt[IOX_CDMA_TGT_ID] (signal_vci_tgt_cdma); 1112 1130 iox_network->p_to_tgt[IOX_IOPI_TGT_ID] (signal_vci_tgt_iopi); 1131 iox_network->p_to_tgt[IOX_SIMH_TGT_ID] (signal_vci_tgt_simh); 1113 1132 1114 1133 if (cluster_iob0 != cluster_iob1) … … 1186 1205 std::cout << " - IOPIC connected" << std::endl; 1187 1206 1207 // Simhelper connexion 1208 simh->p_clk(signal_clk); 1209 simh->p_resetn(signal_resetn); 1210 simh->p_vci(signal_vci_tgt_simh); 1188 1211 1189 1212 // IOB0 cluster connexion to IOX network … … 1532 1555 signal_vci_ini_iopi.print_trace("[SIG]IOPI_INI"); 1533 1556 signal_vci_tgt_iopi.print_trace("[SIG]IOPI_TGT"); 1557 1558 signal_vci_tgt_simh.print_trace("[SIG]SIMH_TGT"); 1559 1534 1560 iox_network->print_trace(); 1535 1561 … … 1553 1579 try { 1554 1580 return _main(argc, argv); 1581 } catch (soclib::exception::RunTimeError &e) { 1582 std::cout << "RunTimeError: " << e.what() << std::endl; 1555 1583 } catch (std::exception &e) { 1556 1584 std::cout << e.what() << std::endl;
Note: See TracChangeset
for help on using the changeset viewer.