Para el diseño de sistemas inteligentes, como los utilizados en los ordenadores actuales, se necesitan métodos y análisis como los de las conocidas como máquinas de estados finitos (MEF) o en inglés Finite State Machine (FSM). ¿Sabes qué es? Te lo explicamos…
Índice de contenidos
Una FSM es un modelo de cálculo abstracto que consta de una serie de estados, que representan las distintas configuraciones o estados del sistema, además de una serie de transiciones o conexiones entre estados que se activan en base a las entradas o condiciones específicas del sistema. Por supuesto, como cualquier sistema automático, tiene sus entradas y sus salidas. Todo ello se puede apreciar en la imagen anterior de un diagrama ejemplo.
Dentro de las FSM, se puede diferenciar entre:
Por ejemplo, imagina un controlador de unidad de disco de un sistema operativo. En este caso puede ser diseñado mediante una FSM para gestionar las operaciones acceso a la unidad de memoria, es decir, para la lectura o escritura. El sistema realiza transiciones entre diferentes estados según las instrucciones y condiciones detectadas en cada momento. Los estados en este caso serían:
El esquema sería el siguiente:
(IDLE) –> (READ) –> (IDLE)
| |
V V
(WRITE) –> (ERROR)
Y la tabla explicando esta FSM de forma sencilla sería:
Estado Actual | Entrada | Nuevo Estado | Descripción |
---|---|---|---|
IDLE | Solicitud de Lectura | READ | Se inicia una operación de lectura. |
IDLE | Solicitud de Escritura | WRITE | Se inicia una operación de escritura. |
READ | Operación Exitosa | IDLE | Se completa la lectura y el controlador vuelve a IDLE. |
READ | Fallo Detectado | ERROR | Ocurre un fallo durante la lectura. |
WRITE | Operación Exitosa | IDLE | Se completa la escritura y el controlador vuelve a IDLE. |
WRITE | Fallo Detectado | ERROR | Ocurre un fallo durante la escritura. |
ERROR | Reinicio del Sistema | IDLE | Se resuelve el error y el controlador vuelve a IDLE. |
El concepto de FSM tiene sus raíces en la teoría de autómatas, una rama de las matemáticas formales que estudia sistemas discretos. Fue formalizado en la década de 1940 y 1950 como parte del desarrollo de la teoría de la computación. Algunos hitos importantes incluyen:
Con el auge de la electrónica digital y la computación en las décadas de 1950 y 1960, las FSM comenzaron a implementarse en hardware para modelar circuitos lógicos secuenciales. Primeramente se utilizaron para controladores de hardware, lenguajes de programación y compiladores entre los años 60 y 70, para más tarde, a partir de los años 80s usarse para modelar software y hardware de una forma más importante.
Entre las aplicaciones de las máquinas de estado finito, tenemos:
Te puede interesar conocer los mejores procesadores del mercado
También te recomiendo leer sobre qué es una NPU
Los actuales sistemas de IA están muy estrechamente relacionados con FSM, por lo que son métodos a los que tener muy en cuenta…
Deja tus comentarios con dudas o sugerencias…
QNAP presenta oficialmente myQNAPcloud Storage, el servicio de almacenamiento en la nube perfecto para guardar…
En esta guía te voy a explicar cómo compartir un archivo por Google Drive. Te…
Los chips 3D o con empaquetados 3D, ya han comenzado a ser fundamentales en multitud…