Ignore:
Timestamp:
Jan 7, 2016, 4:16:03 PM (8 years ago)
Author:
cfuguet
Message:
  • Support the cluster 0 to be the IO cluster.
  • Update the arch.py to allow the execution of new revisions of the Giet-VM.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/platforms/tsar_generic_leti/tsar_leti_cluster/caba/source/src/tsar_leti_cluster.cpp

    r803 r1029  
    3737         size_t                             tgtid_mtty,
    3838         size_t                             tgtid_bdev,
     39         bool                               use_ramdisk,
    3940         const char*                        disk_pathname,
    4041         size_t                             memc_ways,
     
    170171    if ((x_id == 0) and (y_id == 0))  // cluster(0,0)
    171172    {
    172         nb_initiators = nb_procs + 1;
    173         nb_targets    = 4;
     173        nb_targets++; // TTY
     174
     175        if (not use_ramdisk)
     176        {
     177            nb_initiators++;
     178            nb_targets++;
     179        }
    174180    }
    175181
     
    291297    if ((x_id == 0) and (y_id == 0))
    292298    {
    293         /////////////////////////////////////////////
    294         bdev = new VciBlockDeviceTsar<vci_param_int>(
    295                      "bdev",
    296                      mtd,
    297                      IntTab(cluster_xy, nb_procs),
    298                      IntTab(cluster_xy, tgtid_bdev),
    299                      disk_pathname,
    300                      512,
    301                      64 );            // burst size
     299        if (not use_ramdisk)
     300        {
     301            /////////////////////////////////////////////
     302            bdev = new VciBlockDeviceTsar<vci_param_int>(
     303                         "bdev",
     304                         mtd,
     305                         IntTab(cluster_xy, nb_procs),
     306                         IntTab(cluster_xy, tgtid_bdev),
     307                         disk_pathname,
     308                         512,
     309                         64 );            // burst size
     310        }
    302311
    303312        /////////////////////////////////////////////
     
    378387    {
    379388        xbar_cmd->p_to_target[tgtid_mtty]      (signal_vci_tgt_mtty);
    380         xbar_cmd->p_to_target[tgtid_bdev]      (signal_vci_tgt_bdev);
    381         xbar_cmd->p_to_initiator[nb_procs]     (signal_vci_ini_bdev);
     389
     390        if (not use_ramdisk)
     391        {
     392            xbar_cmd->p_to_target[tgtid_bdev]      (signal_vci_tgt_bdev);
     393            xbar_cmd->p_to_initiator[nb_procs]     (signal_vci_ini_bdev);
     394        }
    382395    }
    383396
     
    462475        if ((x_id == 0) and (y_id == 0)) // cluster (0,0)
    463476        {
    464             if      (i == 8)           xicu->p_hwi[i] (signal_irq_memc);
    465             else if (i == 9)          xicu->p_hwi[i] (signal_irq_bdev);
    466             else if (i == 10)          xicu->p_hwi[i] (signal_irq_mtty);
    467             else                       xicu->p_hwi[i] (signal_false);
     477            if      (i == 8)                     xicu->p_hwi[i] (signal_irq_memc);
     478            else if (i == 9 and not use_ramdisk) xicu->p_hwi[i] (signal_irq_bdev);
     479            else if (i == 10)                    xicu->p_hwi[i] (signal_irq_mtty);
     480            else                                 xicu->p_hwi[i] (signal_false);
    468481        }
    469482        else                             // other clusters
     
    499512    if ((x_id == 0) and (y_id == 0))
    500513    {
    501         // BDEV
    502         bdev->p_clk                    (this->p_clk);
    503         bdev->p_resetn                 (this->p_resetn);
    504         bdev->p_irq                    (signal_irq_bdev);
    505         bdev->p_vci_target             (signal_vci_tgt_bdev);
    506         bdev->p_vci_initiator          (signal_vci_ini_bdev);
    507 
    508         std::cout << "  - BDEV connected" << std::endl;
     514        if (not use_ramdisk)
     515        {
     516            // BDEV
     517            bdev->p_clk                    (this->p_clk);
     518            bdev->p_resetn                 (this->p_resetn);
     519            bdev->p_irq                    (signal_irq_bdev);
     520            bdev->p_vci_target             (signal_vci_tgt_bdev);
     521            bdev->p_vci_initiator          (signal_vci_ini_bdev);
     522
     523            std::cout << "  - BDEV connected" << std::endl;
     524        }
    509525
    510526        // MTTY (single channel)
Note: See TracChangeset for help on using the changeset viewer.