Changes between Version 79 and Version 80 of Writing Rules/Tlmt


Ignore:
Timestamp:
Nov 16, 2008, 8:03:50 PM (15 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Writing Rules/Tlmt

    v79 v80  
    302302defining if it should participate to the arbitration. This '''active''' flag is always set to true for general purpose processors.
    303303Any arbitration thread receiving a timed request is resumed. It must obtain an up to date timing & activity information for all its input channels before making any decision.
    304 To do that, the !LocalTime and !ActivityStatus of all VCI initiators are considered as global variables, that can be accessed (read only) by all arbitration threads. 
     304To do that, the '''m_local_time''' and '''m_activity_status''' variables of all VCI initiators are considered as public variables, that can be accessed (read only) by all arbitration threads. 
    305305The arbitration policy is the following : The arbitration thread scans all its input channels, and selects the smallest time between the active initiators.
    306306If there is a request, this request is forwarded to the target, and the arbitration thread local time is updated.
     
    308308
    309309For efficiency reasons, in this implementation, each arbitration thread constructs - during elaboration of the simulation - two local array of pointers (indexed
    310 by the input channel index) to access the !LocalTime and !ActivityStatus variables of the corresponding VCI initiators. To get this information, each arbitration thread
    311 uses the '''nb_transport_bw()''' function on all its VCI target ports, with a a dedicated value for the phase called '''soclib::tlmt::TLMT_INFO'''. The payload argument refers to the same
     310by the input channel index) to access the '''m_local_time''' and '''m_activity_status''' variables of all VCI initiators. To get this information, each arbitration thread
     311uses the '''nb_transport_bw()''' function on all its VCI target ports, with a dedicated value for the phase called '''soclib::tlmt::TLMT_INFO'''. The payload argument refers to the same
    312312'''tlmt_vci_transaction''' object as the two other phase values ('''soclib::tlmt::TLMT_CMD''' and '''soclib::tlmt::TLMT_RSP''').
    313313
     
    321321}}}
    322322
    323 As the net-list of the simulated platform mus be explicitely defined before constructing those LocalTime and ActivityStatus arrays, the vgmn hardware component
     323As the net-list of the simulated platform mus be explicitely defined before constructing the LocalTime and ActivityStatus arrays, the vgmn hardware component
    324324provides an utility function '''fill_time_activity_arrays()''' that must be called in the SystemC top-cell, before starting the simulation.
    325325