Ejecución paralela de peticiones de una instrucción asíncrona
Una CPU puede procesar paralelamente varias peticiones de una instrucción asíncrona. La
CPU procesa las peticiones u órdenes paralelamente cuando se cumplen las condiciones
siguientes:
• Las peticiones de una instrucción asíncrona se inician mientras se están ejecutando otras
órdenes de la misma instrucción.
• No se ha sobrepasado el número máximo de peticiones simultáneas para la instrucción.
La figura siguiente muestra la ejecución paralela de dos peticiones de la instrucción WRREC.
Ambas instrucciones se ejecutan paralelamente durante cierto tiempo.
Figura 10-2
Nota
Dependencias entre instrucciones asíncronas
El orden de llamada en el programa de usuario puede variar en función del orden de
ejecución de las instrucciones asíncronas. Esto puede provocar problemas con las
dependencias entre instrucciones asíncronas.
Solución: Para garantizar la ejecución en el momento correcto utilice las salidas de estado de
las instrucciones asíncronas en una cadena secuencial. La siguiente instrucción asíncrona no
debe comenzar hasta que la instrucción asíncrona anterior se ha completado y así se ha
acusado a través del parámetro DONE.
Ejemplo: En las fases de receta RecipeImport y RecipeExport se requiere un archivo CSV para
los datos de receta. Si se utiliza el mismo archivo CSV para la importación y exportación, las
dos instrucciones asíncronas serán dependientes entre sí. Vincule en una cadena secuencial
el estado del parámetro DONE de la instrucción RecipeImport a la transición hacia la etapa
siguiente, en la que se ejecutará RecipeExport. De ese modo, la vinculación garantiza la
ejecución correcta.
Sistema de automatización
Manual de sistema, 11/2023, A5E03461184-AL
Ejecución paralela de la instrucción WRREC que funciona asíncronamente
Principios básicos de la ejecución del programa
10.2 Instrucciones que funcionan asíncronamente
255