Mapper

Parent Previous Next

Mappers / Mapper

Block Name: Mapper

Code File Location: VisualSim/actor/lib/Task_Basic

Block Overview

   o   Used to connect the behavior flow with the architecture resources

   o   Receives a data structure on the input port, extracts the required information based on the parameter settings and sends the Data Structure with the information to the SystemResource or SystemResource_Extend. 

   o   Resource name can be set a string name (Static) or as a data structure field (Dynamic) where the selected resource can change each time.


Mapper

Description

This block implements the separation ofbehavior and architecture methodology. In this methodology, the mapper block is placed in the behavior flow at every location where a timed resources is required. This block consumes zero time, contains no queue (except Software_Mapper) and has no arbitration.    

The Mapper block is used in conjunction with the SystemResource and SystemResource_Extend blocks. The block takes the incoming Data Structure and sends it to the Resource listed in the Task_Resource 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 SystemResource.  

Refer SystemResource usage- FCFS demo model.


Parameter

Explanation

Type

Example

Task_Resource

Parameter used to identify the SystemResource or SystemResource_Extend.

This parameter can have a  static value or can be an expression.  The expression can contain a string, parameter, variable, data structure field or an Expression with RegEx. The field name must have the input. prefix

If the Parent_Scheduler_Name does not match a SystemResource in the model, then an exception will be generated.

String

or

Expression

"Processor"

or

(getBlockStatus("CPU1,"length")>1?CPU2:CPU1

Task_Number

 o  Plotting: The processing period along a timeline is available at the plot_output of 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. If the default is unchanged, the Task_Number = 1 

Integer, or Expression

Task_Number 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 (fixed for all data structures), or an expression with a parameter, variable, data structure field or RegEx. The field name must have the input. prefix


If the Priority is not required, then the default can be retained or None

Integer or Expression

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).

This is a required field.


This field can contain an double (fixed for all data structures), or an expression with a parameter, variable, data structure field or RegEx. Tthe field name must have the input. prefix

Integer, String for a field name or Expression

"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.

Created with the Personal Edition of HelpNDoc: Easily create Qt Help files