Está en la página 1de 56

Estocasticidad de un atractor catico

determinista
implementado en FPGA

L. De Micco, O. G. Zabaleta, C. M. Gonzlez , C. M. Arizmendi y H. A. Larrondo

Lab. de Componentes Electrnicos y Lab. de Mecnica Estadstica


Facultad de Ingeniera, UNMDP, Argentina.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

Aplicaciones de ruidos en electrnica:

Mtodo de multiplexacin por CDMA.


Mejora de la compatibilidad electromagntica en
circuitos electrnicos.
Muestreo aleatorio.
Encriptamiento.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

Sistemas estocsticos.
Secuencias de ruido

Sistemas caticos.

Las secuencias caticas son ms simples de


implementar que las estocsticas.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

Caractersticas de los sistemas caticos:

Modelos deterministas simples y conocidos.


Alineales.
Evolucin temporal de sus variables tiene la apariencia de una seal
estocstica.
Gran sensibilidad a las condiciones iniciales.
Sist. continuos o discretos (mapas). Sist. continuos 3D Caos.
Sist. discretos 1D Caos.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

Caractersticas de los sistemas caticos:

Modelos deterministas simples y conocidos.


Alineales.
Evolucin temporal de sus variables tiene la apariencia de una seal
estocstica.
Gran sensibilidad a las condiciones iniciales.
Sist. continuos o discretos (mapas). Sist. continuos 3D Caos.
Sist. discretos 1D Caos.

Cmo son afectadas las propiedades estocsticas de los


sist. Continuos cuando son discretizados?
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

Los sistemas caticos poseen dos caractersticas contrapuestas:

Son sistemas deterministas


Por tener un modelo matemtico que los describe.

Son sistemas estocsticos


Debido la sensibilidad a las condiciones iniciales que presentan, la
predictibilidad a largo plazo se pierde.
Para los cuales el anlisis se realiza por la va estadstica.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos


Los sistemas caticos poseen dos caractersticas contrapuestas:

Son sistemas deterministas


Por tener un modelo matemtico que los describe.

Son sistemas estocsticos


Debido la sensibilidad a las condiciones iniciales que presentan, la
predictibilidad a largo plazo se pierde.
Para los cuales el anlisis se realiza por la va estadstica.

Si fuera posible implementarlos con precisin infinita los sistemas


caticos seran deterministas en sentido estricto.

Esta dualidad determinista-estocstico de los sistemas


caticos los hace especialmente interesantes para la
ingeniera, dado que las seales que generan se
pueden utilizar como ruidos controlados en diversas
aplicaciones.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Generacin de ruido mediante sistemas caticos

En este trabajo se investiga el efecto de la


discretizacin sobre la estocasticidad del sistema
catico.

El sistema estudiado es el oscilador de Lorenz


implementado en una Field Programmable Gate Array
(FPGA).

La determinacin del grado de estocasticidad tiene


por objeto proporcionar una metodologa de diseo
optimizada para el uso que se pretenda dar al sistema
catico.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin de sistemas caticos continuos

Si, por ejemplo, el sistema catico va a ser utilizado en aplicaciones


que requieran predictibilidad a largo plazo la discretizacin debe llevar
a un sistema determinstico y con fuerte correlacin (no lineal) entre los
valores sucesivos de las series temporales.

Por otro lado, si el sistema catico va a reemplazar a un sistema


estocstico se deber disear de modo que sea lo menos predictivo
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin de sistemas caticos continuos


En una implementacin real tanto el tiempo como los propios valores de las
seales son discretos.

La discretizacin del tiempo: Algoritmo reemplaza las ecuaciones diferenciales


tericas que modelan el sistema.
Algoritmos:
1) Euler de primer orden: es el ms simple, las derivadas son directamente
reemplazadas por incrementos finitos.
2) Runge-Kutta de orden 4 o mayor, algoritmos de paso variable: permiten un
sistema discreto ms cercano al sistema continuo , son ms elaborados, utilizan ms
recursos.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin de sistemas caticos continuos


En una implementacin real tanto el tiempo como los propios valores de las
seales son discretos.

La discretizacin del tiempo: Algoritmo reemplaza las ecuaciones diferenciales


tericas que modelan el sistema.
Algoritmos:
1) Euler de primer orden: es el ms simple, las derivadas son directamente
reemplazadas por incrementos finitos.
2) Runge-Kutta de orden 4 o mayor, algoritmos de paso variable: permiten un
sistema discreto ms cercano al sistema continuo , son ms elaborados, utilizan ms
recursos.

La discretizacin en amplitud: equivale a definir un alfabeto finito y convertir la


serie original en una serie simblica (que en nuestro caso es tambin una
serie numrica).
As por ejemplo la representacin en aritmtica entera con n bits tiene un alfabeto de
2n smbolos y una representacin punto flotante tiene un alfabeto que depende del
estndar adoptado.
Aritmtica:
1) Entera, 16 bits, 32 bits, etc.
2) Punto flotante: Standard IEEE 754 precisin simple, precisin doble, etc.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin de sistemas caticos continuos


En una implementacin real tanto el tiempo como los propios valores de las
seales son discretos.

La discretizacin del tiempo: Algoritmo reemplaza las ecuaciones diferenciales


tericas que modelan el sistema.
Algoritmos:
1) Euler de primer orden: es el ms simple, las derivadas son directamente
reemplazadas por incrementos finitos.
2) Runge-Kutta de orden 4 o mayor, algoritmos de paso variable: permiten un
sistema discreto ms cercano al sistema continuo , son ms elaborados, utilizan ms
recursos.

La discretizacin en amplitud: equivale a definir un alfabeto finito y convertir la


serie original en una serie simblica (que en nuestro caso es tambin una
serie numrica).
As por ejemplo la representacin en aritmtica entera con n bits tiene un alfabeto de
2n smbolos y una representacin punto flotante tiene un alfabeto que depende del
estndar adoptado.
Aritmtica:
1) Entera, 16 bits, 32 bits, etc.
2) Punto flotante: Standard IEEE 754 precisin simple, precisin doble, etc.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin de sistemas caticos continuos

El sistema dinmico de Lorenz est definido por las siguientes ecuaciones


diferenciales ordinarias:

Donde , y son los parmetros constructivos del sistema.

Con:

el sistema presenta comportamiento catico


IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin temporal

Entre los algoritmos usuales el ms simple es el mtodo de Euler de primer


orden en el que las derivadas son directamente reemplazadas por
incrementos finitos.

Aplicando el algoritmo de Euler al Sistema de Lorenz:

Donde es el paso

Algoritmos ms elaborados como el de Runge-Kutta de orden 4 o mayor,


los algoritmos de paso variable, o los de varios pasos permiten un sistema
discreto ms cercano al sistema continuo pero a un mayor costo en
recursos.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin en amplitud - Aritmtica entera


El hardware puede reducirse significativamente si se adopta una aritmtica entera y
se utilizan divisores potencia de 2. Para esto se polarizan las variables aleatorias para
emplear nmeros naturales:

, en este caso son las ctes de


polarizacin

El sistema resulta:

usando

y la funcin floor()
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Discretizacin en amplitud Punto flotante

En el estndar IEEE 754 de 32 bits:


31 30 23 22 0

bit de signo 8 bits de exponente 23 bits de mantisa

(-2 * signo + 1) * 1,mantisa * 2 exponente


Las operaciones aritmticas con nmeros en punto flotante:
insumen ms tiempo y
requieren un hardware ms complejo.

Por otra parte, se consigue:


alto margen dinmico y
mayor precisin.

Actualmente existen FPGAs, capaces de trabajar en punto flotante a frecuencias


muy altas, lo que disminuye considerablemente las desventajas de trabajar con
punto flotante.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Cuantificadores

Hay infinitas posibilidades para asignar una PDF a una


dada secuencia de datos.
1)PDF basada en el histograma (hist):
Solo cuenta el nmero de veces en que aparece cada elemento de la serie.
No tiene en cuenta el orden temporal de los mismos.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Cuantificadores

Hay infinitas posibilidades para asignar una PDF a una


dada secuencia de datos.
1)PDF basada en el histograma (hist).
2)PDF de Bandt y Pompe (BP).
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Cuantificadores

Caracterizan una dada PDF.


Histograma Band y Pompe

Entropa de Shannon (H)


Orden erfecto

Mxima aleatoriedad

Complejidad Estadstica (C)

QLMPR P. W. Lamberti, M. T. Martn, A. Plastino y O. A.Rosso,


Physica A 334, 119 (2004).

Divergencia de Jensen-Shannon:
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

Se generaron las series X, Y y Z de ms de 150000 valores de forma


de cubrir siempre la misma zona del atractor.
Con en el rango [0,003; 0,0045].

Para cada serie se calcul el valor de H y C y se los represent en el plano


entropa-complejidad (H-C)
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

La regin accesible, que para el caso d = 6 est limitada por las


curvas puntedas en azul, puede dividirse en dos subregiones
indicadas como determinista (de baja entropa) y estocstica (de
alta entropa) respectivamente.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

= 0,003; 0,004 y 0,0045

El incremento de produce un incremento de H y C pero el sistema se mantiene


dentro de la regin determinista. Si se intenta superar el valor = 0,0045 el
sistema deja de ser catico y alcanza un estado final con H = 0 y C = 0.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

= 0,0045
Skipping de 2, 3, 5, 7, 9, 11, 20 y 23
Puede verse que, mediante esta tcnica, se obtienen secuencias cuyo punto
representativo en el plano C - H se encuentra en la regin estocstica.
Skipping: Saltear valores de la serie
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

Entran en
zona
estocstica

= 0,0045
Skipping de 2, 3, 5, 7, 9, 11, 20 y 23
Puede verse que, mediante esta tcnica, se obtienen secuencias cuyo punto
representativo en el plano C - H se encuentra en la regin estocstica.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

Aritmtica entera

Con aritmtica entera usando 16 bits se obtiene un punto en la zona determinista.


IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

Randomizando
con bit ms
significativo

Con aritmtica entera usando 16 bits se obtiene un punto en la zona determinista.


Para acercarse a la zona estocstica se utilizan tcnicas de randomizacin sobre
la serie, tcnica del bit ms significativo y menos significativo.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Cuantificacin de estocasticidad - Representacin plano H-C

Randomizando
con bit menos
significativo

Con aritmtica entera usando 16 bits se obtiene un punto en la zona determinista.


Para acercarse a la zona estocstica se utilizan tcnicas de randomizacin sobre
la serie, tcnica del bit ms significativo y menos significativo.
La tcnica del bit menos significativo permite un salto a la regin estocstica En
este ultimo caso el punto representativo corresponde a un PRNG.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Herramientas utilizadas

Quartus II Entorno Simulink


ALTERA MATLAB
Altera DSP Builder Blockset DSPBuilder Altera DSP Builder Blockset
IP Mega Cores IP MegaCores
Bloques VHDL Herramientas Matlab
Simulacin con retardos Proyectos Simulacin sin retardos
Funcionamiento
Bloques VHDL

Trabajamos con el software Quartus que provee la


empresa ALTERA.
Tambin trabajamos en el entorno simulink de matlab
gracias al programa DSPBuilder que permite llevar
bloques y proyectos de un entorno a otro.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010
Simulacin con Simulink/Matlab - Esquema simplificado de
Sist. de Lorenz
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

Ejemplo de la implementacin en Simulink de una de las ramas del Sistema de


Lorenz (Rama x)
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

Restador en
punto flotante

Rama X del sistema que consta de un sumador, un restador y un multiplicador


en punto flotante (bloques de la librera de Altera).
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

Multiplicador en
punto flotante

Rama X del sistema que consta de un sumador, un restador y un multiplicador


en punto flotante (bloques de la librera de Altera).
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

Sumador en punto
flotante

Rama X del sistema que consta de un sumador, un restador y un multiplicador


en punto flotante (bloques de la librera de Altera).
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

El bloque Registro es un latch que retarda un ciclo la salida del


sistema. Fue programado en VHDL e importado al Simulink.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab -Simulink

A la entrada del latch fue necesario insertar un bloque z-1 para


evitar un problema propio de Simulink que surge cuando se
trabaja con lazos realimentados. Este retardo no afecta al
diseo.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

La salida del registro es tomada por el subsistema Floating Point


(FP) que se encarga de separar los bits de signo, exponente y
mantisa, y realizar la operacin:
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con Simulink/Matlab - Simulink

El mismo procedimiento se aplica a las tres ramas. El oscilosopio virtual permite


visualizar los datos, que almacenados quedan disponibles para ser procesados y
graficados en Matlab, para una verificacin preliminar del del diseo.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con el software de desarrollo Quartus II

La implementacin se realiz con el software de desarrollo de la


placa Cyclone III EP3C120 de Altera, es especial para el desarrollo
de sistemas que involucran el procesamiento de seales, ya que
cuenta con una interesante cantidad de memoria y multiplicadores.

El diseo se realiz en Quartus II ; si bien Matlab permite exportar el


proyecto, y programar el dispositivo desde el propio Simulink
presenta ciertas limitaciones, tales como la imposibilidad de
simulacin con retardos reales.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con el software de desarrollo Quartus II

Rama x
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Simulacin con el software de desarrollo Quartus II

Diagrama temporal de simulacin en entorno Quartus II 7.2

Las seales x, y, z corresponden a las salidas de los


registros. Los datos estn expresados como unsigned
integer y corresponden a nmeros en punto flotante.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Resultados

Salida Signal Tap II

Signal Tap: Mientras que el diseo corre en la FPGA,


esta herramienta permite almacenar las seales
deseadas en la memoria del dispositivo.
Luego, la placa enva los datos a la PC para ser
analizados.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Resultados
Datos tomados con Signal Tap y graficados en Matlab

Series temporales obtenidas con la placa para


t = 0,0045.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Resultados
Datos tomados con Signal Tap y graficados en Matlab

Atractor obtenido con la placa para t = 0,0045.


IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Conclusiones

1. Si el sistema catico va a ser utilizado en aplicaciones que


requieran predictibilidad a largo plazo el diseo debe ser tal que
el punto representativo se encuentre en la regin determinista
del plano C-H, que corresponde a sistemas con una fuerte
correlacin (no lineal) entre los valores sucesivos de las series
temporales.

2. Si el sistema catico va a reemplazar a un sistema estocstico el


punto representativo debe encontrarse en la zona estocstica.
En particular para el caso de un PRNG, debe encontrarse lo ms
cerca posible del punto H=1, C=0.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Conclusiones

3. Las secuencias generadas utilizando aritmtica de punto


flotante, si bien reproducen ms exactamente y con mayor
precisin el atractor de Lorenz, no tienen acceso a la zona
estocstica. Para lograr acceder a esta zona se utiliz la tcnica
de skipping.

4. Otra alternativa para acceder a la regin estocstica es utilizar


una implementacin en aritmtica entera que tiene la ventaja de
utilizar recursos significativamente menores y adems permite
un salto a la regin estocstica mediante la sencilla tcnica de
randomizacin de uso del bit menos significativo.
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Delineamiento

Introduccin
Generacin de ruido mediante sistemas caticos
Discretizacin de sistemas caticos continuos
Cuantificacin de estocasticidad
Implementacin
Simulacin con Simulink/Matlab
Simulacin con el software de desarrollo Quartus II
Implementacin fsica en la placa Cyclone III EP3C120
(Altera)

Resultados
Conclusiones
Agradecimientos
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

AGRADECIMIENTOS

Este trabajo ha sido parcialmente financiado


por CONICET (PIP2004),
ANPCyT (PICT 04) y UNMDP
IBERCHIP XVI Workshop 23 a 25 de febrero 2010

Gracias!

e-mail: ldemicco@fi.mdp.edu.ar

También podría gustarte