Programar y usar el FM 352-5
6.2 Elaborar un bloque de función de aplicación
(1)
(2)
(3)
(4)
(5)
Figura 6-11
Reloj multifase
El módulo FM 352-5 utiliza un procesador integrado, el FPGA, para ejecutar código en
paralelo en lugar de hacerlo secuencialmente como lo hacen los autómatas programables
convencionales. Este tipo de ejecución ofrece tiempos de ciclo extremadamente rápidos y
estables. En implementaciones de hardware anteriores, esta operación en paralelo podía
hacer que compitieran condiciones en determinados segmentos; el programador tenía que
tener presente esta particularidad y añadir elementos de retardo para alinear las señales
correctamente.
El sistema de reloj multifase es una técnica diseñada en el software de compilación del
FM 352-5 para gestionar la correcta secuenciación de tiempo de los elementos con respecto
a los conectores en los distintos segmentos del programa de aplicación. Se dispone de doce
fases de reloj, once para sincronizar elementos con memoria (flip-flops, contadores etc.) y la
última para sincronizar las salidas.
El reloj de 12 fases del módulo utiliza los conectores para sincronizar la ejecución de los
elementos anteriores o posteriores de los segmentos.
El compilador FM 352-5 implementa las dos reglas siguientes:
● Si un conector está referenciado como entrada de un elemento antes que una salida al
● Si un conector está referenciado como entrada de un elemento después de una salida al
El reloj de 12 fases permite conectar hasta 11 bits de memoria en serie sin necesidad de
preocuparse de si se excederá o no el tiempo de ciclo. Si inserta demasiados elementos en
serie, el software visualizará un mensaje de error que le ayudará a llevar a cabo la acción
necesaria para cumplir las reglas del reloj.
Otra ventaja del reloj multifase es que genera la misma secuencia lógica del programa del
FPGA que cuando la CPU S7 ejecuta el programa en modo Test.
Los elementos remanentes son los siguientes:
● Tiempos
● Contador
● Flip-flops
90
En este segmento, los conectores son referenciados antes de que sean salidas, de manera
que pertenecen al ciclo anterior.
En este segmento, la salida de conector, Conn.arrXCon[8], conecta a referencias
posteriores.
La salida de conector Conn.arrXCon[9] se conecta a cualquier referencia posterior. Las
salidas de conector sólo se pueden utilizar para conectores.
Como los conectores de este segmento son referenciados después de ser salidas,
pertenecen al mismo ciclo y, por consiguiente, representan una conexión directa.
Los conectores pueden ser del tipo de datos BOOL, DINT, BYTE o WORD.
Ejemplos de conectores
conector, este elemento verá el valor que tenía el conector en el ciclo anterior.
conector, este elemento verá el valor que tiene el conector en el presente ciclo.
High Speed Boolean Processor FM 352-5
Manual del usuario, 05/2011, A5E00131331-04