Mappers / Mapper
Code File Location: VisualSim/actor/lib/Task_Basic
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.
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 |
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