Sie sind auf Seite 1von 1

Introducción a SDL

SDL es un lenguaje orientado a la especificación y


descripción de sistemas de telecomunicaciones que
funcionan en tiempo real (control de sistemas, protocolos
de comunicaciones, etc.). Además, permite elegir entre dos
formas sintácticas diferentes para la representación de
sistemas.
La primera es SDL/GR (Graphical Representation), siendo un
lenguaje gráfico que define la estructura y flujos de control
del sistema. La segunda es SDL/PR (Phrase Representation),
el cual es un lenguaje de programación.

1.2 Entidades
El lenguaje SDL se compone de entidades en forma de 1.2.3 Proceso
jerarquía. La entidad principal es el sistema, el cual está Un proceso se define como una máquina de estados finita
compuesto por bloques. Los bloques están conectados extendida. Como ya sabemos, en una máquina de estados
entre sí y con el entorno mediante canales, los cuales existen estados y transiciones entre ellos. En este caso se da
transportan señales. una transición de un estado a otro siempre que se recibe
Dentro de los bloques tenemos procesos, los cuales están una señal válida de otro proceso o del entorno. Al realizarse
definidos por una máquina de estados finita extendida, con esa transición, se pueden realizar operaciones como
variables, parámetros, acciones y temporizadores. Los manipular datos locales al proceso (se hace por medio de
procesos también se comunican entre sí por medio de variables locales, permitiendo cualquier tipo de datos
señales. incluido struct), enviar señales (a otros procesos o al
Podríamos resumir la jerarquía de la siguiente forma: entorno), llamar a un procedimiento o incluso crear
instancias de procesos. Las señales recibidas por el proceso
se denominan señales de entrada y las señales enviadas se
denominan señales de salida, aunque en el conjunto de
señales de entrada válidas debemos añadir las señales del
temporizador. Además, una señal solo puede ser consumida
por un proceso cuando éste se encuentra en un estado.
Dicho esto, el esquema de un proceso quedaría de la
siguiente forma:

1.2.1 Sistema
Un sistema es la entidad de más alto nivel y obviamente
representa a todo el sistema que queremos modelar. Está
separado de su entorno por la frontera del sistema, con el
que se comunica por medio de señales. Además, un
sistema contiene un conjunto de bloques, que también se
comunican por medio de señales. Las señales, como ya
sabemos, se transmiten por medio de canales.
Asimismo, el contenido de un sistema se podría explicar con
el siguiente diagrama:
1.2.4 Canal

Con respecto a los canales no tenemos mucho que decir.


Ya sabemos que un canal es una ruta para transportar
señales entre dos bloques o un bloque y su entorno (si es
entre dos bloques no puede ser el mismo en los dos
extremos). Podemos añadir que el orden en el que llegarán
las señales será el mismo que el orden en el que se envían
desde el otro extremo. Asimismo, para cada canal debe
haber una lista de señales que transporta. Para terminar,
1.2.2 Bloque
podemos decir que pueden existir varios canales entre dos
Un bloque contiene una o más definiciones de proceso de
un sistema (al menos una). La misión de un bloque es extremos. Un ejemplo podría ser:
agrupar procesos que realizan una cierta función. Como ya
sabemos, los bloques se comunican mediante canales por
lo que la definición de un bloque proporcionará una interfaz
de comunicación estática para comunicarse con otros
procesos. Además establece un ámbito para definiciones
de proceso. Un ejemplo sencillo podría ser el siguiente: