Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Asm
Asm
POLITÉCNICA DE CHIMBORAZO
FACULTAD DE INFORMÁTICA Y
ELECTRÓNICA
SITEMAS DIGITALES II
Diagramas ASM
04/12/2012
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
1. Introducción
Las máquinas de estado algorítmicas, también conocidas como diagramas ASM, fueron
documentadas hace 40 años por Clare, quien trabajaba en Electronics Research Laboratory
de Hewlett Packard Labs. Desde entonces, los diagramas ASM se han aplicado con
frecuencia para diseñar circuitos digitales que requieren la realización de tareas complejas.
Muchos textos de electrónica digital que describen el diseño a nivel de registro (RTL)
dedican una atención especial a los diagramas ASM junto a otros métodos, en particular
las máquinas de estados finitas (FSM), los diagramas de estado y las tablas de estado. Sin
embargo, después de un análisis más detallado, nos encontramos con que estos recursos de
diseño prácticamente sólo se utilizan de forma marginal, y únicamente para definir las
partes de control de los circuitos algorítmicos. Realmente pocos autores emplean los
diagramas ASM para desarrollar circuitos completos, excepto, que incrementan las
posibilidades de estos diagramas con recursos más propios de lenguajes de alto nivel, pero
finalmente codifican el circuito empleando texto.
Los diagramas ASM son una buena alternativa a los diagramas de estado porque,
manteniendo su interfaz gráfico e intuitivo, permiten definir de forma más cómoda y
consistente las transiciones entre estados y también las operaciones que se han de realizar
durante y al final de cada estado. Sin embargo, muchos autores consideran que su interfaz
gráfico es poco práctico; posiblemente por ese motivo, en el diseño RTL se han impuesto
los lenguajes de descripción de circuitos (HDL), pues su edición es en principio mucho más
fácil y cómoda.
Las máquinas de estado algorítmicas (ASM) son una herramienta de diseño digital que
mejor algunas propiedades de los diagramas de estado, gracias a que describen con detalle
no sólo las transiciones entre estados, sino también las operaciones que se realizan en ellos.
Esta investigación muestra las características de los diagramas ASM.
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
2. Diagramas ASM
Los diagramas ASM son un conjunto de cajas enlazadas que describen las acciones que ha
de realizar el circuito en cada ciclo de reloj. Se utiliza para representar los diagramas
de circuitos integrados digitales. El diagrama de ASM es como un diagrama de estado, pero
menos formal y por tanto más fácil de entender. Un gráfico de ASM es un método para
describir las operaciones por orden de un sistema digital.
Un diagrama ASM se compone de una interconexión de los tres tipos de elementos básicos:
los estados, los controles condición, y salidas condicionales.
Un estado de ASM (figura 1), representada como un rectángulo, corresponde a un estado
de un diagrama de estado regular o máquina de estados finitos. El nombre del estado se
indica fuera de la caja en la esquina superior izquierda. El Moore tipo de productos se
enumeran dentro de la caja.
Figura 1
Una condición de verificación de ASM (figura 2), indicado por un diamante con una
entrada y dos salidas (de verdadero y falso), se utiliza para la transferencia condicional
entre dos estados o entre un Estado y una salida condicional. El cuadro de decisión contiene
la expresión condición establecida para la prueba, la expresión contiene una o más entradas
de las FSM.
Cuadro de decisión: Un diamante indica que la expresión condición establecida es de
pruebas, y la ruta de salida es a elegir en consecuencia. La expresión de condición contiene
una o más entradas a las Máquinas de Estados.
Figura 2 3
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
Caja de salida condicional (figura 3): un óvalo indica las señales de salida que son
de Mealy tipo. Estos resultados dependen no sólo del estado sino también las aportaciones
al FSM.
Figura 3
Adicionalmente se define un “bloque ASM (figura 4)”, opcional, que incluye todas las
operaciones, condicionales e incondicionales que han de ejecutarse de forma simultánea en
cada ciclo de reloj. En diseños complejos resulta casi imprescindible el uso de los bloques
ASM.
Figura 4
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
La figura 5 trata de ilustrar todas estas ideas mostrando el diagrama ASM de un circuito
que multiplica dos números enteros de 12 bits sin signo: para ello espera hasta recibir
simultáneamente los dos operandos a través de dos entradas ‘inA’ e ‘inB’ validadas por una
señal ‘go’, a continuación ejecuta doce multiplicaciones parciales (que resultan ser sumas
condicionales) y termina validando con una señal ‘done’ el resultado mostrado en la salida
‘outP’. Este circuito es inicializado asíncronamente con una señal ‘reset’, activa a nivel
alto, y es sincronizado por una señal ‘clk’ no mostrada en el diagrama.
Figura 4
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
Precisamente por lo anterior, algunas veces es difícil diferenciar los límites de cada
estado. En esos casos se emplean cajas con líneas discontinuas que envuelven las
operaciones de cada estado (lo que se conoce como “bloques ASM”) o incluso se
emplean diferentes colores para las cajas de los diferentes estados. La propia
existencia de los bloques ASM indica que estos diagramas no son realmente
demasiado intuitivos, pues es necesario acudir a recursos adicionales para facilitar
la interpretación de los propios diagramas.
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
5. Ejemplo
Para dibujar el diagrama de flujo de estado de un circuito secuencial es importante hacer
una lista preliminar que contenga la siguiente información. (Los valores se especifican
entre paréntesis para el caso del FF-SR).
Número de Estados (2)
Número de variables de estado (1)
Nombres de las variables de Estado (Q), Entradas (S, R) y Salidas (Q)
y tipo (Moore).
Obsérvese que en el caso del FF-SR la única salida corresponde a la única variable de
estado, por lo tanto es de tipo Moore.
El número de estados indica directamente el número de bloques de estado, de manera que el
diagrama queda como sigue
| CUARTO “B”
ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO
SITEMAS DIGITALES II
Diagramas ASM
6. CONCLUSIONES
Por lo visto los diagramas ASM son fáciles de aprender y es entendido sin dificultad .También es
empleado para el desarrollo de módulos, para la supervisión de diseños y para la documentación de
resultados finales en proyectos.
La introducción de diagramas ASM es fácil y cómoda a través de múltiples programas gráficos. Los
procesa si han sido modificados, y genera automáticamente uno o varios ficheros VHDL o Verilog,
según el lenguaje empleado por los diagramas. De este modo es posible simular y sintetizar el
circuito inmediatamente, sin introducir manualmente ninguna modificación.
7. WEBGRAFÍA
http://taee2008.unizar.es/papers/p120.pdf
http://es.wikipedia.org/wiki/M%C3%A1quina_de_estados_algor%C3%ADtmica
http://www.infor.uva.es/~fernando/asignaturas/estruct/unidad_control.pdf
http://www2.ing.puc.cl/~iee2712/docs/Capitulo5.2.pdf
http://lc.fie.umich.mx/~jrincon/apuntes%20circuitos%20secuenciales.pdf
http://digitales2uan.blogspot.com/2012/05/maquina-de-estado-algoritmica-asm.html
http://gec.di.uminho.pt/discip/lesi/sd19900/Ex_tipoSD1_9900.html
| CUARTO “B”