Changeset 739


Ignore:
Timestamp:
Jul 7, 2014, 12:30:38 PM (10 years ago)
Author:
alain
Message:

Improve trace in tsar_generic_iob/top.cpp.
Fix a vicious bugs in the tsar_iob_cluster netlist: the signal_proc_it[] array was too small...

Location:
trunk/platforms/tsar_generic_iob
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/platforms/tsar_generic_iob/top.cpp

    r734 r739  
    4747// Besides the external peripherals, each cluster contains one XICU component,
    4848// and one multi channels DMA component.
    49 // The XICU component is mainly used to handle WTI IRQs, as only 2 HWI IRQs
     49// The XICU component is mainly used to handle WTI IRQs, as only 5 HWI IRQs
    5050// are connected to XICU in each cluster:
    5151// - IRQ_IN[0] : MMC
     
    14231423
    14241424        // Monitor a specific address for one L2 cache
    1425         // clusters[0][0]->memc->cache_monitor( 0x1542c0ULL, true );   // single word monitoring
     1425        // clusters[0][0]->memc->cache_monitor( 0x1542c0ULL, true );   // single word
    14261426
    14271427        // Monitor a specific address for one XRAM
     
    14511451                clusters[x][y]->signal_int_vci_tgt_xicu.print_trace(xicu_signame.str());
    14521452
    1453 //              clusters[x][y]->mdma->print_trace();
    1454 //              std::ostringstream mdma_signame;
    1455 //              mdma_signame << "[SIG]MDMA_" << x << "_" << y;
    1456 //              clusters[x][y]->signal_int_vci_tgt_mdma.print_trace(mdma_signame.str());
    1457 
    1458                 if( clusters[x][y]->signal_proc_it[l].read() )
    1459                     std::cout << "### IRQ_PROC_" << std::dec
    1460                               << x << "_" << y << "_" << l << " ACTIVE" << std::endl;
     1453                clusters[x][y]->mdma->print_trace();
     1454                std::ostringstream mdma_signame;
     1455                mdma_signame << "[SIG]MDMA_" << x << "_" << y;
     1456                clusters[x][y]->signal_int_vci_tgt_mdma.print_trace(mdma_signame.str());
     1457
     1458                // local interrupts in cluster(x,y)
     1459                if( clusters[x][y]->signal_irq_memc.read() )
     1460                std::cout << "### IRQ_MMC_" << std::dec << x << "_" << y
     1461                          << " ACTIVE" << std::endl;
     1462
     1463                for ( size_t c = 0 ; c < NB_DMA_CHANNELS ; c++ )
     1464                {
     1465                    if( clusters[x][y]->signal_irq_mdma[c].read() )
     1466                    std::cout << "### IRQ_DMA_" << std::dec << x << "_" << y << "_" << c
     1467                              << " ACTIVE" << std::endl;
     1468                }
     1469 
     1470                for ( size_t c = 0 ; c < NB_PROCS_MAX ; c++ )
     1471                {
     1472                    if( clusters[x][y]->signal_proc_it[c].read() )
     1473                    std::cout << "### IRQ_PROC_" << std::dec << x << "_" << y << "_" << c
     1474                              << " ACTIVE" << std::endl;
     1475                }
    14611476            }
    14621477
  • trunk/platforms/tsar_generic_iob/tsar_iob_cluster/caba/source/include/tsar_iob_cluster.h

    r718 r739  
    7070    // interrupt signals
    7171    sc_signal<bool>                       signal_false;
    72     sc_signal<bool>                       signal_proc_it[8];
     72    sc_signal<bool>                       signal_proc_it[16];
    7373    sc_signal<bool>                       signal_irq_mdma[8];
    7474    sc_signal<bool>                       signal_irq_memc;
  • trunk/platforms/tsar_generic_iob/tsar_iob_cluster/caba/source/src/tsar_iob_cluster.cpp

    r718 r739  
    612612    }
    613613
    614    SC_METHOD(init);
     614    SC_METHOD(init);
     615
    615616} // end constructor
    616617
     
    618619{
    619620   signal_ram_dspin_cmd_false.write = false;
    620    signal_ram_dspin_cmd_false.read = true;
    621    signal_ram_dspin_rsp_false.write = false;
    622    signal_ram_dspin_rsp_false.read = true;
     621   signal_ram_dspin_rsp_false.read  = true;
    623622} // end init
    624623
Note: See TracChangeset for help on using the changeset viewer.