Mappers / Mapper

Block Name: Mapper

Code File Location: VisualSim/actor/lib/Task_Basic

Block Overview

   o   Multiple flows in the model at different levels of hierarchy needs to access the same timed resource.  

   o   Model multi-threaded applications.  

   o   Dynamically allocate the incoming request to one of many resources.


Mapper

Description

This block works with the separation of the behavior and architecture methodology. In this methodology, the mapper block is placed in behavior flow at every location where a timed resources is required. This block consumes zero time, contains no queue and has no arbitration.    

The Mapper block is used in conjunction with the SystemResource blocks. The block takes the incoming Data Structure and send it to the Scheduler listed in the parent_scheduler_name parameter along with the information in the parameter fields. This block waits for a return and then sends the unchanged data structure on the output port. All incoming Data Structures are immediately sent to the SystemResource.  The time between the input and output of a particular data structure depends on the queuing and processing delay at the Scheduler. This block can send a request to either the SystemResource or SystemResource_Extend. 

Refer SystemResource usage- FCFS demo model.


Parameter Explanation Type Example
Parent_Scheduler_Name Parameter used to identify the scheduler, whether SystemResource or SystemResource_Extend. This parameter can contain

    * The name of a Scheduler in ""
    * The name of an incoming data structure field containing the Scheduler name in "".

If the Parent_Scheduler_Name does not match a SystemResource in the model, then an exception will be generated.
String "Parent_Scheduler"
Task_Number  o  Plotting: The processing period along a timeline is available on the plot_output from the SystemResource. The duration is highlighted by a low-to-high at the start and high-to-low at the end of the period. The Task_Number value is the height on the Y-axis. If plotting is important, this number must be unique.   
Integer(No quotes), or field name (Within quotes) "Task_Numer" or 1
Task_Priority Parameter for the priority of the data structure. The priority is sent to the SystemResource and SystemResource_Extend.  The queue in the SystemResource is reordered based on the priority. This field can contain an integer (No quote and fixed for all data structures) or a fieldname (Within quotes and unique for each data structure). Integer(No quotes), or field name (Within quotes) "A_Priority" or 2 or None
Task_Time Parameter is the task time passed to the SytemResource for the processing. Depending on the setting of the SystemResoure, this value can be a duration of time (SystemResource is set to Relative_Time)or number of cycles(SystemResource is set to Number_Clocks). Integer(No quotes), or field name (Within quotes) "DELTA" or 2.0
Task_Plot_ID This is the height of the "number of outstanding request" plot output. This can be combined with outputs from other Mappers to plot the task operation as a waveform from the plot port. Integer 1


Port Explanation
input The input port.
output The output port.
plot The plot port.