Controladores digitales estocásticos
Abstract
En este artículo se presenta la realización de controladores clásicos basados en el procesamiento lógico estocástico. Se aporta una descripción de las operaciones aritméticas básicas -suma, resta, multiplicación e integración. EI objetivo de esta arquitectura es proporcionar un conjunto de circuitos simples que permitan realizar estas operaciones con circuitos digitales simples. Como resultado de ello se pueden sintetizar controladores empleando dispositivos lógicos programables (FPGA). EI circuito desarrollado es aplicado a un sistema real con el uso de un convertidor analógico estocástico (ASC).
Full text
Controladores Digitales Estocasticos J.M.Quero and L.G.Franquelo Dpto. de Ingenieria de Sistemas y Automatica Escuela Superior de Ingenieros Avda. Reina Mercedes sin 41012 Sevilla Resumen. En este articulo se presenta la realization de controladcr res clasicos basados en el procesamiento J6gico estocastico. Se aporta una descripcion de las operaciones artimeticas biisicas -suma, festal multiplicacion e integracion. EI objet ivo de esta arquitectura es proporcionar un conjunto de circuitos simples que permitan realizar estas operacion es con circuitos digitales simples. Como result ado de ello se pueden sintetizar control adores empleando dispositivos logicos programables (FPGA). EI circuito desarrollado es aplicado a un sistema real con el uso de un convertidor analogico estoca.tico (ASC). 1. Introducci6n. En el procesamiento estocastico, los valores son codificados en una manera especial. Cada se nal es representada por una secuencia de pulsas digitales que tom an valores 0 y 1 aleatoriamente. La probabilidad de que el pulso tome un nivel alto es el valor de la sefial. La multiplicacion de dos secuencias estocasticas se lleva a cabo mediante un simple puerta AND, dado que la probabilidad de que su salida este a uno es el producto de probabilidades de las senales de entrada, siempre qUE': los trenes de pulsos sean independientes. La sum a de cantidades estocasticas tambien puede ser realizada mediante circ ui tos simples [1] . EI uso de logica estocastica reduce significativamente la cantidad de circuiteria necesaria, y por ello su realizacion puede ser Ilevada a cabo mediante circuitos JOgicos program abIes [2J. EI uso del procesamiento estocastico de senales en campos tan variados como sistemas de control y filtros digitales aumentan el interes en este tipo de computacion, donde - 272- es necesario lIevar a cabo un elevado Dumero de productos y sumas. EI procesamiento de senales estocasticas ha sido tambien empleada con exito en la realizacion de redes neuron ales artificiales [3]. [4]. [5J. En este articulo se presentan los bloques ba.sicos de los sistemas 16gicos estocastiC08. Primero se introducen los pulsos estocasticos con signo que permiten representar magnitudes comprendidas en el intervalo [-1, 1J em· pleando un tren de pulses aleatorios. Posterior mente se presenta la sum a y la multiplicacion de estos trenes de pulses usando simplemente puertas OR y XNOR respec· tivamente. En base a los bloques anteriores se define el integrador estoca.stico. Este dispositivo incorpora un comportamiento dinamico que es funcion de la frecuencia de trabajo del sistema. Con objeto de poder conectar los control adores digitales estocasticos resultantes directamente al entorno digital se describen los convertidores correspondientes. EI conjunto de convertidores y control adores estocasticos se ha aplicado al control de un sistema de primer orden para comparar sus prestaciones ante eontroladores anal6gicos convencionales. 2. Aritmetica Estocastica. La codificacion de magnitudes reales comprendidas en el intervalo [0 , 1J se realiza mediante el empleo de un tren de pulses estoca.ticos, cuyo valor medio (mimero de pulses con valor logico 1 dividido por el numere total de pulses) represente la magnitud deseada (ver Fig 1). La codificaeion de magnitudes eon signo, es deeir pertenecientes al intervalo [-1, 1J se produce de igual manera, sin rna. que considerar la traslaci6n eorrespondiente en la inter-
4 media=: -, reloj Figura 1: Representacion estocasticas de magnitudes re ales . pretacion del valor codificado. A 10 largo de 10 expuesto en este articulo se empleara. esta segunda codification. Bajo estas condiciones los circuitos para realizar las operationes de surna y producto se muestran en Fig 2. a-{>o- -a b aD : ~D- k*a Figura 2: Circuitos aritmeticos estocasticos blisicos La adicion de senales estoca.sticas se realiza mediante la combinacion de ambos pulsos de entrada mediante una pue rta OR . Obviamente el resultado obtenido es dividido por dos. Este esquema, aunque ha sido utilizado con anterioridad, presenta una fuerte correlacion respecto a los pulsos de entrada si se emplea un reloj para efectuar dicba multiplexion. En este articulo se efectua la multiplexion con la ayuda de un tren de pulsos estocasticos de valor medio 0.5. El cambia de signa de una magnitud estoc'astica se consigue mediante una simple puerta inversora, por 10 que la resta es inmediata a partir de la suma . La multiplication de magnitudes estocasticas con signa se efectua directamente con la ayuda de una puerta XOR . Obviamente las limitaciones que presentan estos esquemas empleados es el de la saturacion inherente al sistema de representacion. Para soslayar este problema se debe efectuar un escalado apropiado de las magnitudes de entrada. 3. Integrador Estocastico. -273 - El integrador estocastico esta compuesto por un contador que se incrementa 0 decrementa acorde con la direrencia entre el valor estocastico de entrada y el valor que contiene. EI esque ma propuesto se muestra en Fig. 3. La conversion digital estocastica del valor acumulado en el contador se consigue a partir de la comparaci6n de dicho valor digital con un valor digital pseudo-aleatorio generado a partir de un registro de desplazamiento realimentado (LFSR) ?? La constante de tiempo de integracion depende del mimero de bits del contador, como se muestra en la ecuacion 1, don de T es el periodo de reloj del sistema. 2 J(/ = (2" _ l)T (1) Las respuestas de las realjzaciones digital y estocastica del intcgrador sc muestran en la Fig. 4. Puede observarse el ruido inherente superpuesto en la salida estocastica del integrador. Este valor de ruido puede ser limitaclo aumentando el tamano del contador (ver Fig. 3) Figura 3: Diagrama de Bloques del Integrador Estocastico .. .. 0 ~ .. o ....... - .. ... . ...... .. c_ \~ I 50 ,., '50 ... '" ... ... ... Figura 4: Respuesta del integrador estocastico. Es de destacar que el comportamiento del sistema digital es muy similar al de su homonimo analogico, dado que
el periodo del reloj del sistema estocastico es mucho menor que la constante de tiempo del integrador. Este hecho es de destacar dado que va a permitir sintetizar l os co ntrol adores anal6gicos convencionaJes sin necesidad de emplear tecnicas digitales, como es el caso de la representacion en variables discretas. 4. Circuitos de Conversion. Otra de las ventajas mas relevantes del empleo del procesamiento estocastico es la ausencia de circuitos muestreadores, imprescindibles en los sistemas de control puramente digitales. S610 es preciso efectuar la conversion de las sen ales ana16gicas a estocasticas y viceversa de manera continua. 4. 1. Conversion estoctistica-anal6gica La conversion estocastica-analogica se realiza simplemente con un filtro RC paso bajo, sin mas que determinar la precision de la conversion en base al ruido superpuesto al valor medio resultante. La expresion el espectro de un pu lso estocastico ha sido obtenida en [6] y viene dada por la ecuacion 2. 2 1- cos(wT) IS(w)1 = 2lfP 6(w) + 2pqT (wT)2 (2) y est'; representada en Fig 5. .., o. , o , o .• 0. ' o. , 0.' ., ., .... vr ll lP11 Figura 5: Espectro de potencia de una sefial estocastica. En la misma r!lferencia bibliografica se demuestra que el filtro paso bajo debe cumplir (3) donde W mar define el fil tro id e al , w" . es la frecuencia del reloj del sistema y n es el numero de bits empleado para la codificacion digital del numero analogico de mayor precision posible con la conversion planteada. -1.£. Conversion analogica-estoc ti stica La conversion estocastica-analQogica ha sido ampliamente estudiada en [7] . EI esquema mostrado en Fig 6 consta de un generador de numeros aleatorios basado en un LFSR, el cual permite generar valores analogicos aleatorios. Dichos val ores son comparados con el valor analogico a convertir para produc ir el tren estocastico correspondiente. VALOR ANALOGlCO D.A.C. COMPAIWXlR ANALOGICXl TREN IlEPULSOS ALEATORIO Figura 6: Convertidor analogico estocastico 5. Ejemplo de Aplicacion: controlador PI estocastico En base a los bloques estocasticos desarrollados en la secciones 2 y 3 y de los interfases de la seccion 4, Be puede desarrollar cualquier arquitectura pertenecientes a controladores analogicos c1asicos. Como ejemplo se ha elegido un controlador PI convencional. En la Fig 7 Be mueslran el diagrama de bloques y los parametros del sistema y eI controlador elegidos. Fig 8 presenta la realizacion d el controlador empleando logica estocastica y los converlidores empleados. EI controlador estocastico se ha ointetizado empleando una FPGA I020A de Texas Instruments. la frecuencia del rcloj del sistema cs 26Khz. Dicha frecuencia esta limilada por las necesidades del convertidor analogico estoc8.stico, implementado con dispositivos discretos. Sin embargo es suficiente rapido para permitir la sintesis del controlador en variables continuas. EI integrador posee un contador reversible de 18 bits, al igual que el generador de numeros aleatorios. - 274-
+ - +,..,. ;---"-. '" + ~ b, s+~ sistema: controlador. ~- .=0 .1 a =0.1 , b=O.1 ~ =0.1 b y s+a ~=o . 1 Figura 7: Diagrama de bloques del sistema y del contr~ lador. . ---- --. --_ .. _.0 "FPG;"-- -- - ---- - ---- ----: "'"v. .1 b I y + + ~...L --"\.r--"\ "'0.. analog. .. & I + Y s:~ ~ COOV. anal.,. _ . _. __ - - - - _0 __ • _0 _____ 0 _______________ 01100. Figura 8: Diagrama de bloques de la aplicacion. EI esquema propuesto ha sido comparado con su realizaci6n ana16gica correspondiente, obteniendo las respuestas represent ad as en Fig 9. 6. Conclusiones Se ha desarrollado un controlador estocastico basado puramente en circuiteda digital. La cantidad reducida de pu ertas 16gicas necesaria permite Sll realizacion empleando dispositivos FPGAs. EI ejemplo mostrado, a pesar de su simplicidad, pone de manifiesto la posibilidad de diseiiar control adores mas complejos con la ayuda de los bloques de computation estocastica introducidos en este articulo. Las caracteristicas mas destacadas de estas realizaciones son su facil configuracion a partir del c,;,lculo anal6gico, inherente inmunidad al fuido, su programabilidad y simplicidad en cuanto a realizacion electronics. Los resultados experimentales no solo confirm an la validez de esta aproximacion, sino que tambien sugiere el uso de arquitecturas estocasticas para control adores mas com plejos, como es el caso de redes neuronales y logica horrosa. O.s 0.3 .0 .2 Sl lltmacon con._ .. lOCaItlco .o . 7~----------~~------------~------------~ 0.0 20 .0 40,0 60.0 Figura 9: Respuesta del controlador estocastico y del controlador convencional BIBLIOGRAFIA [1) C.L. Janer, J.M. Quero and L.G. Franquelo. Fully Parallel Summation in a New Stochastic Neural Network Architecture. IEEE Int . Con! on Ne.rol Networks, San Francisco, pp. 149S-1503. 1993 . [2) Max van Daalen, Peter Jeavons and John Shawe- Taylor. A Stochastic Neural Architecture tbat Exploits Dynamically Reconfigurable FPGAs. Proc. of the IEEE NAPA Con! on FPGAs , pp. 202-21l. 1993. [3) Y. Kondo and Y. Sawada. Functional Abilities of a Stochastic Logic Neural Networks IEEE Trans. on Ne.rol Networks, vol.3, pp. 434-443, 1992. [4) D.E. Van den Bout and T.K. Miller III. A Digital Architecture Employing Stochasticism for tbe Simulation of Hopfield Neural Nets. IEEE Trans. on Circuit and Systems, vo1.36, pp. 732-738. 1989. [5) W. Wike, D. E. Van den Bout and T.K. Miller III The VLSI Implementation of STONN. IEEE Int. Joint Con! on Neurol Networks, vol.2, pp. 593-598, 1990. [6) J.G.Ortega, C.L. Janer, J.M.Quero and L.G .Franquelo. Analog to Digital and Digital to Analog Conversion Based on Stochastic Logic. IEEE Industrial Electronic Conference, Orlando, 1995 [7) J.G.Ortega, J.M.Quero, C.L.Janer and L.G.Franquelo. Interfaces to Stochastic Logic: Application to Stoch •• tic Neurol Network. First Int. - 275-
Conf. on Electronics, Circuits and Systems, Cairo, 1994. [8 J W.W. Stifler . High Speed Computing Devices. McGraw-Hili, New York. 1950. [ 9J W.J. Poppelbaum. Statistical Processo rs . Advan ces in Computers. Academic Press, vol. 17 , pp. 187-23 0. 1976 [I OJ W.J. Poppelbaum, A.Dollas, J.B. Glickman and C. O'Toole. Unary Pro ce ssing. Advances in Computers. Academic Press. 1987 [ll J J.M. Quero, J.G. Ortega, C.L. Janer and L.G. Franquelo. VLSI Implemetation of a Fully Parallel New Stochastic Neural Network. IEEE In/. Can/. on Neural Networks, vol. 4, pp. 2040-2045, 1994 . [ 12J B.R.Gaines, Stochastic Computing Systems. Advances in Information Systems Science,2 , pp. 37-172, 1969. [i3J J .G .Ortega, J .M.Que ro , C.L.Janer y L.G.Franquelo. " Synaptic Weight Generation in VLSI Stochastic Neural Networks: A Novel Approach ." IWANN '95. Torremolinos (Spain),1995. [1 4} W. Peterson. Error Correcting Codes. MIT Press. 1972. - 276-