Changes between Version 8 and Version 9 of Writing Rules/Tlmt


Ignore:
Timestamp:
Dec 25, 2007, 3:24:13 PM (16 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Writing Rules/Tlmt

    v8 v9  
    244244= F) Interruption modeling =
    245245
     246Interrupts are asynchronous events that are not transported by the VCI network.
     247Each interrupt line is modeled by a specific point to point, uni-directional channel.
     248It use two ports of type ''!'IrqOutPort''' and '''!IrqinPort''' that must be declared as member variables of the
     249source ans destination modules respectively.
     250
     251
     252
     253
     254
    246255== F.1) Source modeling ==
    247256
     257The source module (named '''my_source''' in this example) must contain a member variable '''p_irq''' of type '''!IrqOutPort'''. To activate, or desactivate an interruption, the source module must use the '''irqSend()''' method, that is a member function of the '''!IrqOutPort''' class. Those interrupt packets transport both a Boolean, and a date. The '''irqSend()''' prototype is defined as follows :
     258{{{
     259void  irqSend( bool  val,
     260            sc_time  time)
     261}}}
     262
    248263== F.2) Destination modeling ==
    249264
    250 == F.3)  processor with interrupt example ==
    251 
     265In the Parallel Discrete Event Simulation, the pessimistic approach suppose that any PDES can update his local time only when he knows that all messages received on the input ports have dates larger than his local time.
     266Therefore, a SC_THRED modeling a
     267
     268== F.3)  Processor with interrupt example ==
     269
     270{{{
    252271class my_processor : Tlmt::BaseModule {
    253272public:
     
    301320    } // end irqReceived()
    302321} // end class my_processor
    303 
    304 
     322}}}
     323