TASTE CV Graphical Editor
- 1 Introduction
- 2 Installation
- 3 Overview of the TASTE CV graphical tool
- 4 Command Line
- 5 Ini File
- 6 About TASTE concurrency view model
- 7 Quick start tutorial
The TASTE CV tool is a new graphical tool that aim to replace the CV editor of the taste GUI editors in the TASTE tool-chain. The new tool provides the same functionalities as the previous one while providing new improvements for the TASTE modelling activities: the real-time analysis toolsare updated, including the most recent version of the Cheddar scheduling analysis framework and of the Marzhin AADL simulator.
The TASTE editor uses various background technologies:
- GMP (Graphic Model Processing): generic graphical framework developed by Ellidiss Technologies.
- LMP (Logic Model Processing): generic model transformation and AADL toolbox developed by Ellidiss Technologies.
- Cheddar : real-time scheduling analysis tool developed by the University of Brest and Ellidiss Technologies.
- Marzhin : AADL run-time simulator developed by Virtualys and Ellidiss Technologies.
- Ocarina : AADL compiler and code generator developed by ISAE.
The new TASTE CV tool is embedded into the standard TASTE tool-chain distribution. The current TASTE tool-chain distribution is available at the following address:
It consists of a Linux Virtual box image that can be run with a WVMWare player or virtual box. There is no specific installation procedure regarding the TASTE CV tool.
Various customizations are available for the TASTE CV tool. In particular, the CVConfig.ini file within the config directory may be used to apply a few user configurations.
Please note that the use of the TASTE CV tool is subject to the General Clauses and Conditions (GCC) applying to contracts placed by the European Space Agency (ESA). Dedicated distribution and end-user licences are also applicable for the TASTE CV tool and the use of the corresponding background technologies. Refer to the License.pdf file located in the doc directory of the TASTE editor distribution.
For any technical or commercial question related to the TASTE editors that are described in this manual, please contact the Ellidiss support team:
Overview of the TASTE CV graphical tool
The new TASTE CV tool now consists of a window that encompasses :
- A main menu and tool bar.
- A set of selection tabs to enable the analysis tool or textual viewer, and update the content of the working area.
- A working area, showing either:
- A read-only textual editor that displays the textual AADL code, or
- A read-only area showing the results of the timing analysis of a TASTE Concurrency View model
- A log view where main operations are logged. This log view is hidden by default and can be made visible from the View main menu.
- A status bar showing system information, warning and error messages
The main menu contains the following entries :
|File → Load||load a concurrency view.|
|File → Unload||unload the current view and the associated RT properties file.|
|File → Reload||reload a concurrency view.|
|File → Load RT Properties||load a real time properties modification file.|
|File → Unload RT Properties||reset the real time properties. If a file has been loaded, it is unloaded and if modifications has been done, they are reverted.|
|File → Save RT Properties||save, if needed, the modified real time properties to a current location or ask the user the destination directory.|
|File → Quit||quit the application.|
|Edit → Real Time Properties||edit the real time properties of the concurrency view.|
|Edit → Preferences||edit the preferences of the application.|
|View → Display Log Viewer||display or not the log viewer (default : unchecked).|
|View → Simulation Control Panel||launch the Cheddar and Marzhin simulation control panel.|
|? → Help||display a help document for the application.|
|? → Shortcuts||display a the keyboard shortcuts help document of the application.|
|? → About||display some information about the application (copyright, …).|
|Debug → Open TMP Directory||open the temporary directory (Debug Only).|
|Debug → Save As RT Properties||save/copy a real-time properties aadl file (Debug Only).|
The main toolbar contains the following entries :
|Load||same as main menu.|
|Unload||same as main menu.|
|Reload||same as main menu.|
|Save RT Properties||same as main menu.|
|Real Time Properties||same as main menu.|
|Preferences||same as main menu.|
|Simulation Control Panel||same as main menu.|
|Quit||same as main menu.|
Analysis Tools Tab
The “Analysis Tools” tab contains a horizontal paned window. Its upper part displays the cheddar analysis tools and the lower part displays the Marzhin analysis tools.
The Cheddar analysis tool widget is composed of a toolbar and each button activate a different analysis tool widget :
- a synthesis table which displays the theoretical and simulation result of cheddar and the results of Marzhin for comparison.
- a simulation chronogram produced by Cheddar.
- a more complete theoretical results from Cheddar.
- a more complete simulation results from Cheddar.
The Marzhin analysis tool widget is composed of a tree representing the real time components hierarchy (processor, partition, threads, input/output data, …) and a simulation chronogram. The chronogram horizontal scrollbar is attached to Marzhin and Cheddar in order to make comparison between them.
Furthermore, two other widgets can be used to modify the tool’s configuration.
Simulation Control Panel
The simulation control panel allows to control the Cheddar and Marzhin simulation analysis tools.
- The general tab
|Zoom Factor||the value can be chosen among given values (0.1, 0.5, 1, 2 or 4) and is used to zoom the simulation timeline.|
the value is used to filters the components in the hierarchy tree
- The Marzhin tab
|control||the tool buttons can be used to launch, pause, stop, refresh, go to the last tick and set the optimization of the Marzhin simulation. The current simulation result can be saved in a vcd file.|
|computation range||this value represents the time interval of the simulation.|
|Selected scenario||set the selected scenario (among the ones found in the given scenario asc file in the command line).|
|speed factor||the user can choose the simulation speed between several values (x1, x2, x5 or x10).|
- The Cheddar tab
|vcd save||the current simulation result can be saved in a vcd file.|
|computation range||this value represents the time interval of the simulation.|
- The Help tab displays all the color code used in the simulation chronogram.
Real Time Properties Editor
This editor is used to modify the rela time properties of the concurrency view threads (dispatch protocol, period, priority, …). The new values are taken into account by the analysis tools and can be saved in a file.
AADL Viewer Tab
The “AADL Viewer” tab contains a textual viewer to display the content of the concurrency view aadl file.
The following commands can be used :
|--load [filename]||load a concurrency view aadl file. The "ocarina_components" aadl file content has to be added to the concurrency view file.|
|--update-properties [filename]||this option is used to load a specific custom real time properties aadl file.|
|--load-scenario [filename]||load an asc scenario file.|
|--select-scenario [scenario name]||(Optional) select a scenario among the ones from the scenario file. If no scenario is provided through the command line, the first one is selected.|
|--help||shows the help.|
|--version||shows application version.|
In this section, the ini values are described.
Main Configuration Values
The main configuration values are :
|logDirectory||set the location of the log/temporary directory. Default : $home/AADLInspector.|
|marzhinOptimization||set the Marzhin optimization. Default : true|
|font||set the font of the GUI. Default : Helvetica|
|fontSize||set the font size of the GUI. Default : 9|
|sbprologMem||set the memory multiplier for sbprolog. Default : 2|
|rtPropertiesPackage||name of the real time properties proxy package. Its value shall be equal to the one of the concurrency view generate by kazoo. Default : Process_Package|
|aadlReservedWordsColor||color of the aadl reserved words in the aadl viewer. Default : blue|
|aadlCommentsColor||color of the aadl comment words in the aadl viewer. Default : maroon|
Simulation Widget Configuration
The simulation ini configuration values are :
- Thread values :
|THREAD_STATE_NONE_COLOR||timeline color when the thread is in no state. Default : white|
|THREAD_STATE_SUSPENDED_COLOR||timeline color when the thread is in suspended state. Default : black|
|THREAD_STATE_READY_COLOR||timeline color when the thread is in ready state. Default : orange|
|THREAD_STATE_RUNNING_COLOR||timeline color when the thread is in running state. Default : black|
|THREAD_STATE_AWAITING_RESOURCE_COLOR||timeline color when the thread is in awaiting resource state. Default : pink|
|THREAD_STATE_AWAITING_RETURN_COLOR||timeline color when the thread is in TBD state. Default : purple|
|THREAD_STATE_DISPATCH_JITTER_COLOR||timeline color when the thread is in TBD state. Default : orange|
|THREAD_STATE_NONE_LINEWIDTH||timeline line width when the thread is in no state. Default : 10|
|THREAD_STATE_SUSPENDED_LINEWIDTH||timeline line width when the thread is in suspended state. Default : 1|
|THREAD_STATE_READY_LINEWIDTH||timeline line width when the thread is in ready state. Default : 10|
|THREAD_STATE_RUNNING_LINEWIDTH||timeline line width when the thread is in running state. Default : 10|
|THREAD_STATE_AWAITING_RESOURCE_LINEWIDTH||timeline line width when the thread is in awaiting resource state. Default : 10|
|THREAD_STATE_AWAITING_RETURN_LINEWIDTH||timeline line width when the thread is in TBD state. Default : 10|
|THREAD_STATE_DISPATCH_JITTER_LINEWIDTH||timeline line width when the thread is in TBD state. Default : 4|
|THREAD_GET_RESOURCE_COLOR||timeline color when the thread is getting a resource. Default : red|
|THREAD_RELEASE_RESOURCE_COLOR||timeline color when the thread is releasing a resource. Default : green|
|THREAD_SEND_EVENT_COLOR||timeline color when the thread is sending an event. Default : grey|
|THREAD_CALL_COLOR||timeline color when the thread is calling TBD.Default : grey|
|THREAD_ERROR_COLOR||timeline color when the thread is in an error state. Default : red|
|THREAD_ERROR_LINEWIDTH||timeline line width when the thread is in an error state. Default : 14|
- Data values :
|DATA_OCCUPIED_COLOR||timeline color when the data is occupied. Default : grey|
|DATA_AVAILABLE_COLOR||timeline color when the data is available. Default : grey|
|DATA_OCCUPIED_LINEWIDTH||timeline line width when the data is occupied. Default : 10|
|DATA_AVAILABLE_LINEWIDTH||timeline line width when the data is available. Default : 1|
- Processor values :
|PROCESSOR_OCCUPIED_COLOR||timeline color when the processor is occupied. Default : grey|
|PROCESSOR_AVAILABLE_COLOR||timeline color when the processor is available. Default : grey|
|PROCESSOR_OCCUPIED_LINEWIDTH||timeline line width when the processor is occupied. Default : 10|
|PROCESSOR_AVAILABLE_LINEWIDTH||timeline line width when the processor is available. Default : 1|
- Partition values :
|PARTITION_STATE_SUSPENDED_COLOR||timeline color when the partition is in suspended state. Default : grey|
|PARTITION_STATE_RUNNING_COLOR||timeline color when the partition is in running state. Default : green|
|PARTITION_STATE_SUSPENDED_LINEWIDTH||timeline line width when the partition is in suspended state. Default : 1|
|PARTITION_STATE_RUNNING_LINEWIDTH||timeline line width when the partition is in running state. Default : 10|
- Bus values :
|BUS_OCCUPIED_COLOR||timeline color when the bus is occupied. Default : grey|
|BUS_AVAILABLE_COLOR||timeline color when the bus is available. Default : grey|
|BUS_OCCUPIED_LINEWIDTH||timeline line width when the bus is occupied. Default : 10|
|BUS_AVAILABLE_LINEWIDTH||timeline line width when the bus is available. Default : 1|
- Channel values :
|CHANNEL_STATE_SUSPENDED_COLOR||timeline color when the channel is in suspended state. Default : grey|
|CHANNEL_STATE_RUNNING_COLOR||timeline color when the channel is in running state. Default : green|
|CHANNEL_STATE_SUSPENDED_LINEWIDTH||timeline line width when the channel is in suspended state. Default : 1|
|CHANNEL_STATE_RUNNING_LINEWIDTH||timeline line width when the channel is in running state. Default : 10|
- Feature values :
|FEATURE_LINEWIDTH||TBD Default : 1|
|FEATURE_COLOR||TBD Default : black|
- Other values :
|PERIOD_COLOR||color of the period vertical bar. Default : green|
|DEADLINE_COLOR||TBD. Default : grey|
|TIMELINE_COLOR||TBD. Default : grey|
|tickMax||TBD. Default : 100|
|stMaxSchedPeriod||Cheddar simulation default maximum time of the simulation control panel. Default : 200|
|maxSimuPeriod||Marzhin simulation default maximum time of the simulation control panel. Default : 200|
|manualMireColor||TBD Default : black|
|lastTickMireColor||TBD Default : grey|
|zoomFactors||Marzhin zoom factors which appear in the simulation control panel. Default : 0.1 0.5 1 2 4|
|speedFactors||Marzhin speed factors. Default : 1 2 5 10|
|dashDef||TBD. Default : 2 2|
|xUnitSizeInPixel||TBD. Default : 5|
|yUnitSizeInPixel||TBD. Default : 20|
|memoryWarningLimit||TBD. Default : 256|
|memoryIncrease||TBD. Default : 64|
About TASTE concurrency view model
The TASTE CV model that can be loaded into the TASTE CV tool is serialized in AADL format. The AADL language is a SAE international standard that is used to model and analyse the architecture of safety critical real time systems. More information about AADL can be found at:
The TASTE CV aadl file is generated by the TASTE Kazoo utility. It is thus not necessary — and even not recommended — for a TASTE end-user to edit this AADL model. Directly editing the generated AADL files may lead to load errors and model corruption.
Within the TASTE CV tool, the AADL file can be loaded either in a generic way from the File main menu (Load), or from the command line.
Quick start tutorial