Skip to content
MathWorks - Mobile View
  • Inicie sesión cuenta de MathWorksInicie sesión cuenta de MathWorks
  • Access your MathWorks Account
    • Mi Cuenta
    • Mi perfil de la comunidad
    • Asociar Licencia
    • Cerrar sesión
  • Productos
  • Soluciones
  • Educación
  • Soporte
  • Comunidad
  • Eventos
  • Obtenga MATLAB
MathWorks
  • Productos
  • Soluciones
  • Educación
  • Soporte
  • Comunidad
  • Eventos
  • Obtenga MATLAB
  • Inicie sesión cuenta de MathWorksInicie sesión cuenta de MathWorks
  • Access your MathWorks Account
    • Mi Cuenta
    • Mi perfil de la comunidad
    • Asociar Licencia
    • Cerrar sesión

Vídeos y webinars

  • MathWorks
  • Vídeos
  • Vídeos-Inicio
  • Buscar
  • Vídeos-Inicio
  • Buscar
  • Comuníquese con ventas
  • Software de prueba
4:52 Video length is 4:52.
  • Description
  • Full Transcript

Execution Order for AUTOSAR Runnables in Simulink

The AUTOSAR Timing Extensions specification defines execution order constraints. These constraints specify the execution order of runnable entities within a component.

In Simulink, you can:

  • Import execution order constraints from ARXML files.
  • Open an AUTOSAR component model and use the Schedule Editor to modify the execution order of runnables.
  • Export execution order constraints to ARXML files.
  • Update execution order constraints in an AUTOSAR component model by importing ARXML changes.

In an AUTOSAR software component model, you can use the Schedule Editor to schedule and specify the execution order of runnables. The Schedule Editor is a scheduling tool that displays partitions in a model, the data connections between them, and the order of those partitions. In AUTOSAR component models, partitions correspond to runnable entities that execute independently. In the Schedule Editor, you can:

  • View a graphical representation of runnables as partitions in an AUTOSAR component.
  • Create partitions and map them to AUTOSAR runnables.
  • Directly specify the execution order of runnables.

The Schedule Editor supports multiple modeling styles, including rate-based and export-function modeling. For more information, see Using the Schedule Editor and Create Partitions.

Hello, I'm Shwetha, product manager for AUTOSAR Blockset at MathWorks. In this video, I'm going to talk about execution order for AUTOSAR runnables in Simulink. As you are aware, the complexity of automotive issues are growing as it includes two to three cores, probably 15 to 20 tasks, hundreds of RTEE events to task relationships. Some tasks may be mapped to five to 60 runnables or two events.

So the integration becomes essential and crucial tasks that needs to map runnables to tasks and allocate tasks to cores. Therefore, AUTOSAR introduced timing extensions to provide timing requirements that guide the construction of systems, and to analyze, and validate the temporal behavior of a system. At, the same time it preserves functional behavior and timely execution. The question here is, what order should the runnables be executed?

I have created a software component modeled in Simulink. It has two runnables. How do you know what order have you evaluated or simulated this model? So it is hard to tell with data dependency. Let me try this to figure out how the execution order affect the end result.

So here, the output is connected to a scope to check the end results. If I run the simulation, when the runnable, R1, before runnable two, you would get a graph like this, but I flip the execution order, the result would change. As you notice here, the delay is completely different with different values.

So once we are happy with this implementation so you can export the execution order to preserve for future use. So in Simulink you can import and export execution order constraints using schedule editor modifications to runnable execution order and then to ARXML files.

All right, now let's invite Caroline Brandberg is one of the developers of AUTOSAR Blockset to show you their demo of support for execution order constraints.

Let's start with an example of a classic software component. The model consists of six entry point functions mapped to AUTOSAR runnables. If we open Schedule Editor, we can see the entry point functions, the order they will be invoked in during simulation, and their data dependencies. Schedule editor also allows us to modify the order using drag and drop. We can also see the type of the data connection, which is both graphically indicated by the error, where a straight line indicates a data connection of type dependency and a dotted line of type delay.

The Property Inspector also displays the type. Runnable E and runnable F both have a data dependency towards each other, where one is subtype delay. If we modify the order of these runnables, then the type of the dependencies will change. I have attached a scope to one of the outputs of runnable F. I will now simulate the model and observe the data.

If we then modify the execution order, the functional behavior might change. Let's change the order between runnable E and runnable F and simulate our model again. As you can see, the data has now changed. I will change the original order back because that satisfy my requirements.

When our model has been verified and validated, we can go ahead and generate code. We will first ensure that our model is configured correctly by performing AUTOSAR validation. Validation succeeded, we can now go ahead and generate code. The generated code will consist of a set of ARXML files describing our component.

One of these files will contain a timing model. The timing model holds the execution order displayed in schedule editor, expressed as execution order constraints according to the AUTOSAR time extension specification. The integrator can later use these constraints to guide a construction of the system to ensure that the simulated behavior is preserved when mapping our runnables to an operating system task.

I hope you all enjoy this video. For more information, please visit our AUTOSAR Blockset page on mathworks.com Thank you for watching.

Bridging Wireless Communications Design and Testing with MATLAB

Read white paper

Feedback

Up Next:

3:04
Concurrent Execution Using a Multicore Speedgoat Target...

Related Videos:

3:38
Scheduling Execution of Simulink Subsystems
18:06
Practical Approaches for Re-architecture for AUTOSAR or...
4:53
Model AUTOSAR Variants in Simulink
5:16
From Simulink to AUTOSAR Production Code
MathWorks - Domain Selector

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

  • Switzerland (English)
  • Switzerland (Deutsch)
  • Switzerland (Français)
  • 中国 (简体中文)
  • 中国 (English)

You can also select a web site from the following list:

How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

Americas

  • América Latina (Español)
  • Canada (English)
  • United States (English)

Europe

  • Belgium (English)
  • Denmark (English)
  • Deutschland (Deutsch)
  • España (Español)
  • Finland (English)
  • France (Français)
  • Ireland (English)
  • Italia (Italiano)
  • Luxembourg (English)
  • Netherlands (English)
  • Norway (English)
  • Österreich (Deutsch)
  • Portugal (English)
  • Sweden (English)
  • Switzerland
    • Deutsch
    • English
    • Français
  • United Kingdom (English)

Asia Pacific

  • Australia (English)
  • India (English)
  • New Zealand (English)
  • 中国
    • 简体中文Chinese
    • English
  • 日本Japanese (日本語)
  • 한국Korean (한국어)

Contact your local office

  • Comuníquese con ventas
  • Software de prueba

MathWorks

Accelerating the pace of engineering and science

MathWorks es el líder en el desarrollo de software de cálculo matemático para ingenieros

Descubra…

Explorar productos

  • MATLAB
  • Simulink
  • Software para estudiantes
  • Soporte para hardware
  • File Exchange

Probar o comprar

  • Descargas
  • Software de prueba
  • Comuníquese con ventas
  • Precios y licencias
  • Cómo comprar

Aprender a utilizar

  • Documentación
  • Tutoriales
  • Ejemplos
  • Vídeos y webinars
  • Formación

Obtener soporte

  • Ayuda para la instalación
  • MATLAB Answers
  • Consultoría
  • Centro de licencias
  • Comuníquese con soporte

Acerca de MathWorks

  • Ofertas de empleo
  • Sala de prensa
  • Misión social
  • Casos prácticos
  • Acerca de MathWorks
  • Select a Web Site United States
  • Centro de confianza
  • Marcas comerciales
  • Política de privacidad
  • Antipiratería
  • Estado de las aplicaciones

© 1994-2022 The MathWorks, Inc.

  • Facebook
  • Twitter
  • Instagram
  • YouTube
  • LinkedIn
  • RSS

Únase a la conversación