Desarrollo de aplicaciones para la radio definida por software
Texto completo
(2) Universidad Central “Marta Abreu” de Las Villas Facultad de Ingeniería Eléctrica Departamento de Telecomunicaciones y Electrónica. DESARROLLO DE APLICACIONES PARA LA RADIO DEFINIDA POR SOFTWARE Tesis presentada en opción al Título Académico de Ingeniero en Telecomunicaciones y Electrónica Autor: José Carlos Cruz Sandoval E-mail: [email protected] Tutor: Yakdiel Rodríguez-Gallo Guerra E-mail: [email protected]. Santa Clara 2014 “Año 56 de la Revolución”.
(3) Hago constar que la presente Tesis en Opción al Título Académico de Máster en Ciencias Telemáticas fue realizada en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de estudios de Maestría en Telemática, autorizando a que la misma sea utilizada por la Institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentada en eventos, ni publicada sin autorización de la Universidad.. ____________________ Firma del Autor Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. ___________________ Firma del Tutor. _____________________. ________________________. Firma del Jefe de Departamento. Firma del Responsable de Información Científico-Técnica.
(4) iv. PENSAMIENTO. “El pensamiento obra sin la voluntad de pensar” José Martí.
(5) v. DEDICATORIA. A mis padres, quienes siempre han estado presentes y ahora también ven coronado un sueño..
(6) vi. AGRADECIMIENTOS. A toda mi familia, que siempre me han apoyado en este empeño y han estado junto a mí durante todos estos años. A mi tutor, el MSc. Yakdiel Rodríguez-Gallo Guerra, que tanto ha contribuido en mi formación durante la carrera. A todos los profesores, durante estos cinco años, de quienes he podido aprender, gracias a sus conocimientos y experiencias. A todos mis amigos, con quienes he tenido el privilegio de compartir buenos y malos momentos. En fin, a todos con quienes he compartido durante estos magníficos años de universidad, de ustedes me llevo grandes recuerdos y enseñanzas..
(7) vii. TAREA TÉCNICA En la confección de este trabajo y para alcanzar los resultados esperados, se debieron elaborar las siguientes tareas técnicas. Ellas son: Revisión bibliográfica de las características de la Radio Definida por Software, sus ventajas y limitaciones. Revisión bibliográfica de las características de los dispositivos FPGA. Caracterización de las herramientas de simulación MATLAB/SIMULINK 2013 y System Generator de Xilinx. Selección de las aplicaciones de la SDR a desarrollar en las herramientas de simulación. Simulación. de. las. aplicaciones. de. la. SDR. escogidas. en. las. herramientas. MATLAB/SIMULINK 2013 y System Generator de Xilinx. Implementación de las aplicaciones desarrolladas en el Kit de desarrollo Nexys2. Comprobación de la funcionalidad de las aplicaciones desarrolladas. Elaboración del informe final del Trabajo de Diploma.. _________________________ Firma del Autor. _____________________ Firma del Tutor.
(8) viii. RESUMEN. El rápido despegue de las telecomunicaciones, de conjunto con la tendencia cada vez más actual de aprovechar las bondades computacionales que brindan diversos sistemas, ha hecho posible la creciente evolución de la tecnología de Radio Definida por Software. Una muestra de ello lo ofrece el avance que ha venido teniendo particularmente el desarrollo de los estándares de comunicaciones inalámbricas y el hecho de implementar sistemas de comunicaciones que empleen eficazmente los recursos del software para realizar las operaciones de procesamiento de señales. En el presente trabajo se relacionan los principales conceptos, características y aplicaciones más utilizadas de la Radio Definida por Software y se argumenta el vínculo que presenta la tecnología SDR en su desarrollo en plataformas de hardware, como es el caso de los dispositivos lógico programable. Se realizaron modelos de transmisión de datos con técnica de espectro extendido por secuencia directa, que utilizan Registros de Desplazamiento con Realimentación Lineal, los cuáles se modelaron y simularon utilizando las herramientas de simulación MATLAB 2013 y System Generator. Al final se evidencia la funcionalidad del sistema y los beneficios de implementar un Registro de Desplazamiento con Realimentación Lineal extendido en el modelo, lo que resulta de gran utilidad como aplicación de la SDR para sistemas de comunicaciones encriptados..
(9) ix. ÍNDICE. INTRODUCCIÓN ........................................................................................................................... 13 CAPÍTULO 1.. CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS. PROGRAMABLES FPGA .............................................................................................................. 17 1.1.. Principales características de la Radio Definida por Software .......................................... 17. 1.1.1.. Definición de Radio Definida por Software............................................................... 18. 1.1.2.. Características de la Radio Definida por Software .................................................... 18. 1.1.3.. Ventajas y desventajas de la Radio Definida por Software ....................................... 20. 1.1.4.. Aplicaciones de la SDR ............................................................................................. 20. 1.2.. Los dispositivos lógicos programables .............................................................................. 22. 1.2.1.. Características principales de los FPGA .................................................................... 23. 1.2.2.. Uso de los FPGA en la Radio Definida por Software ................................................ 25. 1.3.. Conclusiones parciales ...................................................................................................... 28. CAPÍTULO 2.. APLICACIONES. DE. LA. SDR. DESARROLLADAS. EN. LAS. HERRAMIENTAS DE SIMULACIÓN .......................................................................................... 29 2.1.. Caracterización de la herramienta de simulación MATLAB 2013 ................................... 29. 2.2.. Características de la herramienta de simulación System Generator de Xilinx .................. 30. 2.3.. Sistema de encriptación de datos. Análisis teórico de su funcionamiento ........................ 31. 2.3.1.. Características de la encriptación de datos ................................................................. 32. 2.3.2.. Registro de Desplazamiento con Realimentación Lineal (LFSR). Principio de. funcionamiento ......................................................................................................................... 33 2.3.3.. Registro de Desplazamiento con Realimentación Lineal extendido (LFSRe). Ventajas. sobre el LFSR convencional ..................................................................................................... 34.
(10) x. 2.4.. Transmisión de datos utilizando la técnica de Espectro Extendido por Secuencia Directa 39. 2.4.1.. Características de los sistemas de Espectro Extendido .............................................. 39. 2.4.2.. Espectro Extendido por Secuencia Directa (DSSS) ................................................... 41. 2.5.. Conclusiones parciales ...................................................................................................... 43. CAPÍTULO 3.. IMPLEMENTACIÓN. DE. LAS. APLICACIONES. DE. LA. SDR. Y. COMPROBACIÓN DE LOS RESULTADOS OBTENIDOS ........................................................ 44 3.1.. Desarrollo en MATLAB/SIMULINK de las aplicaciones de la SDR .............................. 44. 3.1.1.. Registros de Desplazamiento con Realimentación Lineal ......................................... 45. 3.1.2.. Utilización de los LFSR en modelos de transmisión de datos con técnica de Espectro. Extendido por Secuencia Directa .............................................................................................. 50 3.2.. Simulación de los modelos de transmisión de datos con técnica de Espectro Extendido por. Secuencia Directa utilizando System Generator .......................................................................... 55 3.2.1.. Implementación del modelo DSSS empleando los bloques de Xilinx de SIMULINK 56. 3.2.2.. Análisis de los modelos DSSS en System Generator ................................................. 59. 3.3.. Implementación del modelo de transmisión de datos con LFSRe en la FPGA................. 66. 3.4.. Conclusiones parciales ...................................................................................................... 67. CONCLUSIONES ........................................................................................................................... 68 RECOMENDACIONES .................................................................................................................. 70 REFERENCIAS BIBLIOGRÁFICAS ............................................................................................. 71.
(11) xi. LISTA DE FIGURAS Figura 1.1 Arquitectura en bloques de la SDR……………………………………………………...8 Figura 1.2 Estructura en bloques de la FPGA Spartan II (Boström,2011)…………………...........23 Figura 1.3 Tarjeta FPGA (Jovanović et al., 2013) ........................................................................... 24 Figura 1.4 Tarjeta USRP1 (Ettus, 2012). ......................................................................................... 25 Figura 1.5 Tarjeta WARP con capacidad MIMO (Khattab et al., 2010) ........................................ 27 Figura 2.1 LFSR de 4 etapas (Sklar, 2006) ……………………………………………..…......…..33 Figura 2.2 LFSRe de 17 etapas definido sobre GF(28 ) (Mohatar and Sabater, 2012)……........….35 Figura 2.3 Tabla de multiplicación para GF(23 ) (Mohatar and Sabater, 2012)………………...…38 Figura 2.4 Modelo genérico de un sistema de comunicación digital con espectro extendido (Munshi and Unnikrishnan, 2012)……………………………………………...………………….39 Figura 2.5 Modelo de Espectro Extendido por Secuencia Directa (Griffiths, 2012)………………41 Figura 3.1 Registro de Desplazamiento con Realimentación Lineal con n=3...................................44 Figura 3.2 Configuración del bloque Unit Delay…………………………………………………..45 Figura 3.3 Secuencia de salida del LFSR de n=3………………………………………………….45 Figura 3.4 Registro de Desplazamiento con Realimentación Lineal multietapa con n=8…………47 Figura 3.5 Configuración del bloque Constant…………………………………………………….48 Figura 3.6 Secuencia cifrada de salida para el LFSR de n=8………………………………………48 Figura 3.7 Modelo de transmisión de datos utilizando DSSS………………………………………49 Figura 3.8 Configuración del canal de ruido blanco gaussiano……………………………………..51 Figura 3.9 Simulación del modelo utilizando LFSR convencional…………………………………52 Figura 3.10 Simulación del modelo utilizando LFSRe…………………………………………….53.
(12) xii. Figura 3.11 Modelo general del sistema para System Generator…………………………………...54 Figura 3.12 Fuente de Datos con LFSRe…………………………………………………………..55 Figura 3.13 Transmisor DSSS……………………………………………………………………...56 Figura 3.14 Receptor DSSS………………………………………………………………………...57 Figura 3.15 Comprobación del análisis temporal en System Generator del modelo DSSS con LFSR……………………………………………………………………………………………….58 Figura 3.16 Esquema del trayecto máximo de los datos en la FPGA con el LFSR……………….59 Figura 3.17 Comprobación de la utilización de recursos de la FPGA con el LFSR………………..60 Figura 3.18 Comprobación del análisis temporal en System Generator del modelo DSSS con LFSRe……………………………………………………………………………………………...61 Figura 3.19 Esquema del trayecto máximo de los datos en la FPGA con el LFSRe………………63 Figura 3.20 Comprobación de la utilización de recursos de la FPGA con el LFSRe………………64.
(13) INTRODUCCIÓN Las comunicaciones inalámbricas en el mundo actual avanzan a tal velocidad que los dispositivos de comunicaciones quedan prácticamente obsoletos poco después de su producción. Para superar este problema, los sistemas de comunicaciones deben ser diseñados para maximizar la inserción transparente de nuevas tecnologías en cualquier fase de su ciclo de vida, teniendo en cuenta que los dispositivos actualizados deben ser capaces de comunicarse entre ellos y con el resto de los mismos (Torres, 2010). La Radio Definida por Software o SDR (Software Defined Radio) es una arquitectura flexible que es aplicable a varios estándares de radio. Ella es un sistema de radiocomunicaciones que proporciona control por software para una variedad de métodos de modulación, filtrado, operaciones de banda ancha o de banda estrecha y técnicas de espectro extendido (Tabassam and Sumit Kalsait, 2011). En SDR, el procesamiento de las señales en la comunicación de radio son hechas en software en vez de hardware, convirtiéndola en una tecnología menos rígida y más configurable para su explotación y uso, con bajo precio y complejidad. Por tanto su utilización está concebida en la esfera digital y no en la esfera analógica, como ocurre en la radio convencional. De forma general, la Radio Definida por Software es definida como un software basado en una plataforma de comunicación con características que pueden ser reconfiguradas y modificadas para realizar funciones diferentes en tiempos diferentes (Marwanto et al., 2009). La mayor ventaja que esta arquitectura presenta es que se puede cargar un programa para una aplicación en específico, sin la necesidad de tener que estar diseñando circuitos extra para distintas señales de radio y protocolos de comunicación. La complejidad creciente, el tamaño y los requisitos de actuación de las aplicaciones de la SDR, han determinado que se haya manejado en la industria la amplia utilización de los FPGA como los dispositivos primarios de procesamiento (Rupe, 2010)..
(14) INTRODUCCIÓN. 14. Un arreglo de campo de compuerta programable (FPGA) es un circuito integrado consistente en bloques interconectados llamados bloques lógicos configurables o CLB (Configurable Logic Block). Los FPGAs son diseñadas para ser configuradas usando un lenguaje de descripción de hardware como VHDL o Verilog (Boström, 2011). Se han desarrollado por parte de los fabricantes de FPGA herramientas para facilitar la implementación de algunos sistemas con determinados grados de complejidad en sus dispositivos. Entre ellos, se puede citar a Xilinx, cuyo desarrollo lo presenta con el Xilinx ISE. El Xilinx ISE (Integrated Software Environment) es una herramienta de diseño profesional de circuitos, que permite realizar un diseño completo basado en lógica programable. En los últimos años se han desarrollado herramientas, como el entorno System Generator (SysGen) de Xilinx, que facilitan el diseño de algoritmos de Procesamiento Digital de Señales (DSP) sobre FPGA. SysGen es una herramienta de software que se integra con la herramienta SIMULINK en MATLAB y permite la descripción y síntesis de sistemas de procesamiento de señales. MATLAB es un software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Esta se ha convertido en la herramienta de preferencia usada para investigaciones de alta productividad, desarrollo y análisis (Guerra et al., 2012). El número de investigaciones realizadas sobre la tecnología SDR en nuestro país es bastante ínfimo, y aunque todavía hay áreas que no se explotan a profundidad, se continúa trabajando en su desarrollo y aplicación, donde se han venido dando pasos. En la Facultad de Ingeniería Eléctrica de la Universidad Central ‘’Marta Abreu’’ de Las Villas actualmente se trabaja en este tema. En trabajos de diploma anteriores se ha investigado acerca de los fundamentos teóricos de la tecnología y sus aplicaciones, utilizándose para ello la herramienta de simulación System Generator de Xilinx, y en los últimos tiempos se ha aprovechado las facilidades que brinda las últimas versiones de la herramienta de simulación MATLAB/SIMULINK, que de conjunto con el System Generator, genera códigos HDL para el desarrollo de esta tecnología. Además, se han realizado investigaciones acerca de la tecnología FPGA, evidenciándose sus utilidades. Este trabajo continúa profundizando en este tema y utiliza herramientas modernas para.
(15) INTRODUCCIÓN. 15. la implementación de sistemas que no han sido investigados en la facultad, por lo que ahí radica la importancia de la realización de este trabajo. Teniendo en cuenta todo lo antes expuesto, se enuncia como problema científico el siguiente: ¿Qué hacer para implementar en una FPGA aplicaciones de la Radio Definida por Software utilizando herramientas de simulación? Esta investigación tiene como objeto de estudio la radio definida por software y el campo de acción lo constituye el desarrollo de aplicaciones para SDR utilizando herramientas de simulación. Por tanto, se propone como objetivo general desarrollar aplicaciones para la Radio Definida por Software utilizando herramientas de simulación. A partir del objetivo general, se derivan como objetivos específicos los siguientes: Caracterizar la Radio Definida por Software, especificando sus principales particularidades. Describir las principales características de los dispositivos de lógica programable FPGA, así como su vínculo con la implementación de aplicaciones de la SDR. Desarrollar mediante la herramienta de simulación MATLAB/SIMULINK y System Generator, aplicaciones de la SDR para su implementación en la FPGA. Implementar en la FPGA las aplicaciones desarrolladas en las herramientas de simulación. Comprobar el funcionamiento de las aplicaciones de la SDR desarrolladas en las herramientas de simulación. De los objetivos específicos propuestos, surgen las siguientes interrogantes científicas: ¿Qué características presenta la tecnología Radio Definida por Software y que elementos componen su estructura? ¿Cuáles son las principales características de los dispositivos lógico programable FPGA y que vínculos presentan con la implementación de aplicaciones de la tecnología SDR? ¿Qué hacer para desarrollar, utilizando la herramienta de simulación MATLAB/SIMULINK y System Generator de Xilinx, aplicaciones de la SDR para su posible implementación en la FPGA?.
(16) INTRODUCCIÓN. 16. ¿Cómo implementar en la FPGA las aplicaciones de la SDR desarrolladas, utilizando las herramientas de simulación? ¿Cómo comprobar el correcto funcionamiento de las aplicaciones de la SDR desarrolladas, utilizando las herramientas de simulación? El trabajo diploma está estructurado de la siguiente forma: resumen, introducción, tres capítulos, conclusiones, recomendaciones y referencias bibliográficas. En el primer capítulo se abordan los principales elementos teóricos concernientes a la tecnología SDR, su estructura y aplicaciones fundamentales, además de las características de los FPGA y el empleo de los mismos en aplicaciones de la Radio Definida por Software. En el segundo capítulo se describen las principales características de la herramienta de simulación MATLAB/SIMULINK y System Generator de Xilinx y su vínculo con el desarrollo de aplicaciones de la tecnología SDR. Al final se explica el principio de funcionamiento y la utilidad de estas aplicaciones en situaciones prácticas. En el tercer capítulo se desarrollan, mediante la herramienta de simulación MATLAB/SIMULINK, las aplicaciones de la SDR. Inicialmente, se explica la forma en que se implementó cada subsistema en las distintas aplicaciones en MATLAB/SIMULINK, para posteriormente ser sintetizadas por el software System Generator de Xilinx. Al final se implementarán en la FPGA las aplicaciones diseñadas y se podrá comprobar el funcionamiento de las mismas..
(17) CAPÍTULO 1.. CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. El empleo cada vez más creciente de la tecnología de Radio Definida por Software (SDR) dadas las prestaciones que presenta, reflejadas en su capacidad de adaptación y flexibilidad, mediante el control por software a diversos estándares de sistemas de radiocomunicaciones, la convierten en la actualidad, en una tecnología eficiente y confiable. En este capítulo se describe el concepto, características, ventajas y desventajas de la tecnología SDR, así como su estructura. A continuación se abordan las características generales de los FPGA y se ilustra la utilización que presentan los FPGA en la tecnología SDR.. 1.1. Principales características de la Radio Definida por Software El concepto de Radio Definida por Software o SDR (Software Defined Radio), caracteriza los radios reconfigurables o reprogramables cuya funcionalidad se encuentra definida por software, capaces de implementar en el mismo hardware diferentes funcionalidades, utilizando para este fin los componentes electrónicos disponibles en el mercado, combinados convenientemente para suplir las limitaciones de los procesadores actuales. Como dichas funcionalidades se encuentran definidas en el software, resulta posible implementar nuevas tecnologías en un radio definido por software realizando una actualización de software (Torres, 2010)..
(18) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 18. 1.1.1. Definición de Radio Definida por Software En 1995, Joseph Mitola acuñó el término de software radio para señalar el cambio de la radio digital a la radio definida por software multimodo en múltiples bandas (Tabassam and Sumit Kalsait, 2011) La Comisión Federal de Comunicaciones de los Estados Unidos (FCC, Federal Communications Commission), considera a la SDR como “aquellos radios que incluyen un transmisor cuyos parámetros de operación, como bandas de frecuencias, tipo de modulación o potencia máxima de salida, pueden ser alterados mediante cambios en software sin realizar cambios a los componentes de hardware, que se relacionan con la emisión de radiofrecuencias” (Torres, 2010). El SDR Forum, en colaboración con el Instituto de Ingenieros Eléctricos y Electrónicos o IEEE (Institute of Engeneering Electric and Electronic), ha trabajado para establecer una definición de SDR que proporciona la consistencia y una apreciación global clara de la tecnología y sus beneficios asociados. Dicha institución lo define como: “Radio en el cuál algunas o todas las funciones de la capa física son definidas por software” (Supriya et al., 2012).. 1.1.2. Características de la Radio Definida por Software Los equipos transmisores y receptores de radiocomunicaciones, habitualmente constituidos por hardware, han ido perfeccionándose en los últimos años. En la década de los ochenta y noventa se introdujeron microprocesadores en ellos para el control de sus funciones y seguidamente la posibilidad de controlarlos desde un ordenador, añadiéndoseles puertos de comunicación o interfaces para la conexión. En la década de los noventa aparecen por primera vez en ellos los chips DSP (Digital Signal Processor), los cuáles permitieron, mediante técnicas digitales realizar filtros, y actualmente son usados en las etapas de FI (Frecuencia Intermedia) de los receptores (Fette, 2009) En la figura 1.1 se muestra la arquitectura en bloques de un SDR, dónde se muestran cada una de las secciones que componen al mismo..
(19) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. Antena Receptora. 19. Antena Transmisora. ADC. DAC. Procesamiento. Procesadores. Procesador. Procesadores. Procesamiento. Analógico de. Especializados. de Propósito. Especializados. Analógico de. Señales. (FPGA, DSP). General. (FPGA, DSP). Señales. Figura 1.1 Arquitectura en bloques de la SDR.. El bloque de procesamiento analógico de señales, es donde se ubica la sección de RF y la sección de FI. Esta es la responsable de transmitir/recibir las señales de radiofrecuencia para adecuarlas y convertirlas en frecuencias intermedias, en el caso de la recepción, o amplificar y modular las señales de FI adecuándolas para la transmisión en el aire, en el caso de la transmisión. La sección de FI es la encargada de pasar la señal de FI a banda base y digitalizarla para la recepción, o pasar la señal de banda base a FI y hacer la conversión digital-analógica de la señal para la transmisión. Los encargados de la conversión analógica-digital o digital-analógica de la señal son los módulos ADC/DAC (Quintero et al., 2010). La sección donde se ubican los procesadores especializados y el procesador de propósito general, también conocida como sección de software, es el núcleo de la tecnología SDR. Ya sea sobre una PC o sobre cualquier otro circuito especializado, se ejecuta un software el cuál manipulará los datos digitalizados en el bloque anterior; realizando infinidades de funciones sobre la señal tales como: demodulación/modulación, filtrado de ancho de banda, reducción del ruido, ajuste del control automático de ganancia, análisis del espectro, entre otros. Todas estas operaciones sobre la señal digitalizada son fáciles y menos costosas (Romero, 2012)..
(20) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 20. Las características, de forma general, que presenta la tecnología SDR son la reconfigurabilidad, conectividad ubicua, la multifuncionalidad, facilidad de actualización y movilidad mundial (Louis, 2011). 1.1.3. Ventajas y desventajas de la Radio Definida por Software Las ventajas que estas arquitecturas involucran, especialmente para los operadores y proveedores de servicios, van desde facilidades para el roaming global hasta la versatilidad del software para proporcionar nuevos y mejores servicios sin necesidad de cambiar los terminales u otros equipos relacionados. Desde el punto de vista legal, muchos aspectos regulatorios también pueden verse facilitados, especialmente la certificación de terminales teniendo en cuenta que es sólo el software lo que debe certificarse. Para los usuarios finales hay también muchas ventajas relacionadas con la calidad de los servicios de soporte por parte de los operadores, ya que las actualizaciones, corrección de bugs, adición de servicios y seguimiento a los usuarios, se realizarán de manera más eficiente (Quintero et al., 2010). Sin embargo, hay ciertos problemas relacionados con la implementación actual de estas tecnologías, como por ejemplo, el volumen de software descargado para los dispositivos reconfigurables es cada vez mayor y exige complejidad en los componentes y como primera consecuencia, los tiempos de descarga aumentan considerablemente y el tiempo de configuración de los dispositivos hardware también aumenta con la complejidad. Además el hecho que el sistema de radio esté basado en software, aumenta la vulnerabilidad de los sistemas frente a virus y otras amenazas. 1.1.4. Aplicaciones de la SDR En la actualidad, la tecnología SDR presenta perspectivas claras en su desarrollo. Algunas de las aplicaciones del sistema SDR se mencionan a continuación..
(21) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. . 21. Aplicaciones en la seguridad pública. Muchas decisiones en los problemas de seguridad públicos son tomadas por los gobiernos. El caso de equipos de telecomunicaciones para las agencias de seguridad públicas, ha llevado a problemas de interoperabilidad, cuando varias agencias tienen que colaborar juntas en las situaciones de la emergencia. Varias iniciativas en el sector de seguridad pública han llevado al desarrollo de requisitos de interoperabilidad por agencias involucradas en la contestación de la emergencia. En los EE.UU, por ejemplo, el proyecto SAFECOM, patrocinado por el Departamento de Seguridad de ese país, ha publicado un grupo de requisitos para dirigir los problemas de interoperabilidad entre los sistemas de comunicación inalámbricos usado por las agencias de seguridad públicas. A nivel internacional, el proyecto MESA también ha dado un grupo de requerimientos que se enfocan en las aplicaciones de la banda ancha móvil digital para el sector de seguridad pública. Ambos grupos de requisitos están contemplando el uso futuro de tecnologías de SDR para el cumplimiento de sus necesidades. Adicionalmente, los dispositivos de SDR en una situación de emergencia pueden dar entrada a diferentes sistemas de radio, al tiempo que sirven como estaciones base para estos sistemas (Caicedo, 2009). . Aplicaciones para el uso militar. El interés del ejército en la tecnología de transmisión por radio configurable era evidente en los 90 con el desarrollo en serie del sistema norteamericano Speak Easy, que tenía el objetivo de emular varias normas inalámbricas de radio del ejército en una unidad, en un rango de 2 MHz a 200 MHz. Sin embargo, con las demandas crecientes en tiempo real de la información en el campo y de integración de comunicaciones más extensas entre todas las ramas militares, se programó en 1997 el Joint Tactical Radio System (JTRS), para proporcionar interoperabilidad entre los sistemas transmisores por radio de aplicaciones militares, que usaban los principios de software radio (Caicedo, 2009). Con el uso de la tecnología SDR, se puede esperar reducir tanto el desarrollo de la radio convencional como el costo de su adquisición, proporcionando una plataforma unificada a la que una variedad amplia de sistemas inalámbricos puede integrarse. Esta tecnología también permite más flexibilidad al ejército, ejecutando los funcionamientos en unión con otras naciones, qué tienen sus propios sistemas de radio, así como ejecutando otros funcionamientos militares para tiempos de paz dónde tienen que actuar recíprocamente con la seguridad pública y agencias civiles..
(22) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 22. Por ejemplo, AN/USC-61 Digital Modular Radio (DMR), diseñado por General Dynamics, es un equipo full-dúplex de cuatro canales, reconfigurable y controlado por software, que actualmente incorporan tanto submarinos como barcos de la marina americana. Soporta múltiples modulaciones implementadas vía software, como por ejemplo AM para aviación, FM para voz y datos, y FSK/BPSK/SBPSK/QPSK. En Europa, la EDA (European Defence Agency) desarrolla desde el año 2006 varios proyectos relacionados con la tecnología SDR, con objetivos similares a los del proyecto JTRS, como WINTSEC (Wireless Interoperability for Security) o ESSOR (European Secured Software Definid Radio Referencial) (Rentería and Cadavid, 2011). . Aplicaciones para el uso comercial. El manejo de varios estándares inalámbricos son un gran desafío, pero los recientes adelantos en la tecnología también están trayendo consigo el desarrollo de la SDR, poniendo los dispositivos de esta tecnología más cerca de la realidad para las agencias civiles. Compañías como la Sandbridge Technologies han producido procesadores en banda base, capaces de manejar varios estándares de radiocomunicaciones como GSM/GPRS, WCDMA, WiFi y GPS, así como también han sido habilitados varios formatos de multimedia como H.264, MPEG-4, MP-3 y WMA (Caicedo, 2009).. 1.2. Los dispositivos lógicos programables Los FPGA (Field Program Gate Array) son chips de silicio reprogramables que utilizan bloques de lógica pre-construidos y recursos para ruteo programables. Solo es necesario desarrollar tareas de cómputo digital en software y compilarlas en un archivo de configuración que contenga la información de cómo deben conectarse los componentes. Anteriormente, se requería de profundos conocimientos de diseño de hardware digital para trabajar con la tecnología FPGA, sin embargo, el aumento de las herramientas de diseño de alto nivel está cambiando las reglas de programación de estos dispositivos. Las nuevas tecnologías convierten los diagramas, bloques gráficos, e incluso el código ANSI C a circuitos de hardware digital (National Instrument, 2008) Cualquier circuito de aplicación específica puede ser implementado en un FPGA, siempre y cuando éste disponga de los recursos necesarios. Las aplicaciones donde más comúnmente se utilizan los.
(23) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 23. FPGA incluyen el procesamiento digital de señales, radio definida por software, sistemas aeroespaciales y de defensa, prototipos de ASIC (Application Specific Integrated Circuits), sistemas de imágenes para medicina, sistemas de visión para computadoras, reconocimiento de voz, bioinformática, emulación de hardware de computadora, entre otras. Cabe notar que su uso en otras áreas es cada vez mayor, sobre todo en aquellas aplicaciones que requieren un alto grado de paralelismo (Microsistemas, 2011), (Xilinx, 2012). La adopción de los FPGA en la industria ha sido impulsada por el hecho de que los FPGA combinan lo mejor de los ASIC y de los sistemas basados en procesadores. Ofrecen velocidades temporizadas por hardware y fiabilidad, pero sin requerir altos volúmenes de recursos para compensar el gran gasto que genera un diseño personalizado de ASIC. El circuito reprogramable tiene la misma capacidad de ajustarse que un software que se ejecuta en un sistema basado en procesadores, pero no está limitado por el número de núcleos disponibles. A diferencia de los procesadores, los FPGA llevan a cabo diferentes operaciones de manera paralela, por lo que éstas no necesitan competir por los mismos recursos. Como resultado, el rendimiento de una parte de la aplicación no se ve afectado cuando se agregan otros procesos (National Instrument, 2008) 1.2.1. Características principales de los FPGA Los FPGA son dispositivos lógicos que tienen la facilidad de ser programados directamente por el usuario, requiriéndose para ello de herramientas de costo relativamente bajo. A diferencia de lo que normalmente se conoce como sistema programado (microcontrolador, microprocesador) en donde un hardware fijo, limitado por el número de núcleos disponibles, es capaz de interpretar y ejecutar un programa especificado como un conjunto de instrucciones; en los FPGA lo que se tiene es un hardware que lleva a cabo diferentes operaciones de manera paralela, pues se configura realizando conexiones físicas que son especificadas por un programa o cadena de configuración. Cada tarea de procesos independientes se asigna a una sección dedicada del chip y puede ejecutarse de manera autónoma sin ser afectada por otros bloques de lógica (Castillo et al., 2008). Un Arreglo de Campo de Compuerta Programable (FPGA) es un circuito integrado consistente en la interconexión de bloques llamados Bloques Lógicos Configurables o CLB (Configurables Logic Blocks). Cada CLB está compuesto de slices y cada slice está compuesto por bloques construidos de.
(24) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 24. forma digital como Look Up Tables (LUT), flip-flops etc. Un LUT puede ser programado para realizar lógica combinacional y cuando son combinados con flip-flops y otros recursos de hardware, pueden sintetizar cualquier sistema digital pequeño, en el rango de un circuito simple a una Unidad Central de Procesamiento (CPU) o una computadora a escala completa corriendo en un sistema operativo. Los FPGA son diseñados para ser configurados usando lenguaje de descripción de hardware como VHDL o Verilog. Ellos son lenguajes de programación similares en cuánto a sintaxis, pero su correcto funcionamiento posee una naturaleza de hardware, estados que son ejecutados de forma secuencial. Ambos son reconfigurables, por esto los FPGA son referidos en varias ocasiones como de lógica programable. La figura 1.2 muestra un típico diseño de un FPGA, en este caso una Spartan II (Boström, 2011).. Figura 1.2 Estructura en bloques de la FPGA Spartan II (Boström, 2011). El desarrollo en la fabricación de la tarjeta FPGA se realiza en ocho capas de una tecnología de dispositivos montados superficialmente (SMD). El ensamblaje físico de una tarjeta FPGA se muestra en la figura 1.3.
(25) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 25. Figura 1.3 Tarjeta FPGA (Jovanović et al., 2013).. 1.2.2. Uso de los FPGA en la Radio Definida por Software Las plataformas de hardware y software existentes para construir arquitecturas de radios definidos por software son diversas. Ellas coexisten de forma paralela y son utilizadas para las múltiples aplicaciones de esta tecnología. De esta forma, tan solo realizando cambios en el software de estos sistemas, se pueden operar con varias señales que posean distintas modulaciones, niveles de potencia, código de corrección de errores, e incluso incorporarles estándares para distintos tipos de redes de comunicación (LAN, MAN, WAN, PAN, WLAN) de rápido crecimiento en el mercado. La evolución de los dispositivos lógicos programables ha posibilitado el soporte de hardware y desarrollo de estas plataformas. Por su parte los FPGA proveen una alta capacidad computacional para estas plataformas, ya que cuentan con gran cantidad de bloques lógicos que pueden realizar estas funciones, unidas al procesamiento cuasi-paralelo del que disponen de conjunto con los DSP y GPP, elementos también esenciales en la estructura de la tecnología SDR. GNU Radio es una herramienta de desarrollo de software de fuente abierta, que proporciona el procesamiento de la señal en tiempo real y bloques de procesamiento para implementar la SDR (Tabassam and Sumit Kalsait, 2011)..
(26) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 26. Los usuarios pueden utilizar un hardware de RF externo, por ejemplo USRP, para crear la SDR o simular la radio sin el hardware de RF externo. Además, esta plataforma de software provee de un número de componentes de radio pre-determinados en software, los cuales GNU Radio refiere como ‘’bloques’’ que pueden comunicarse usando varios tipos de datos (Thandee, 2012). La plataforma GNU Radio contiene bibliotecas que soportan las necesidades más comunes que un SDR necesita, incluyendo modulaciones, códigos de corrección de errores, bloques de procesamiento de señales y planificación. En general, es un sistema muy flexible que permite que las aplicaciones sean desarrolladas en C++ y Python. Las bibliotecas de procesamiento de señales están escritas en C++ y Python se usa principalmente para interconectar bloques y para programar las funcionalidades de interfaz de usuario (Torres, 2010). Universal Software Radio Peripheral (USRP) es una invención de Matt Ettus y fue desarrollado por GNU Radio. Con un USRP se pueden transmitir y recibir señales. Existen diferentes USRP, como son USRP1, USRP2, USRP E100 (Thandee, 2012). En la figura 1.4 se muestra una tarjeta USRP1.. Figura 1.4 Tarjeta USRP1 (Ettus, 2012). La USRP1 posee varias características que la convierten en una plataforma avanzada y de mucha utilidad en la práctica. Cuenta con cuatro convertidores análogos-digitales de 12 bits y 64 MS/s, cuatro convertidores digitales-análogos de 14 bits y 128 MS/s, una interfaz de alta velocidad USB 2.0, de 480 Mb/s, capacidad de procesamiento de señales sobre los 16 MHz, arquitectura modular.
(27) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 27. que soporta una variedad de tarjetas hijas de RF, soporte I/O analógico y digital auxiliar complejo para controles de radio como RSSI y AGC y sistemas multicanales coherentes, con capacidad para MIMO (Multiple Input-Multiple Output) (Ettus, 2012). USRP2 pertenece a la segunda generación de USRP. Esta plataforma consiste en un FPGA de Xilinx SPARTAN-III y un procesador de propósito general AeMB. Posee además interfaces Gigabit Ethernet, 25 MHz de ancho de banda de RF, dos convertidores análogos-digitales de 100 MHz y 14 bits, dos convertidores digitales-análogos de 400 MHz y 16 bits y 1MB de SRAM. Por su parte, USRP E100 cuenta con una tarjeta Xilinx Spartan 3A-DSP 1800, dos convertidores análogos-digitales de 12 bits y 64 MS/s, dos convertidores digitales-análogos de 14 bits y 128 MS/s, 512 MB de RAM, 4 GB Flash, USB Console y soporte de acceso SSH 10/100 Base T (Thandee, 2012). Su bajo costo, flexibilidad, amplio desarrollo y acoplamiento con la plataforma GNU Radio, convierten a USRP en una plataforma de hardware de múltiples beneficios para diversas tareas de ingeniería. Otra plataforma de hardware empleada por la tecnología SDR es la Rice Wireless Open-Access Research Platform (WARP). Es una plataforma programable, escalable y extensible desarrollada por la Universidad de Rice, construida para un prototipo avanzado de comunicaciones inalámbricas. La tarjeta FPGA Xilinx Virtex-4 FX100 es usada para programar los protocolos de la capa física y de enlace (Tabassam and Sumit Kalsait, 2011). A continuación se muestra en la figura 1.5 una tarjeta WARP con capacidad para sistemas MIMO..
(28) CARACTERÍSTICAS DE LA SDR Y DE LOS DISPOSITIVOS LÓGICOS PROGRAMABLES FPGA. 28. Figura 1.5 Tarjeta WARP con capacidad MIMO (Khattab et al., 2010). El bloque A muestra la tarjeta FPGA de Xilinx Virtex-II Pro, encargada de todo el procesamiento de las señales, los bloques B muestran las interfaces de radio con capacidad MIMO, capaces de operar en bandas de frecuencia de 2.4 GHz y 5 GHz. Aquí estos bloques son muy útiles para aplicaciones de ancho de banda como OFDM, con más de 40 MHz de ancho de banda. Por último el bloque C muestra los puertos 10/100 Ethernet, que es el enlace entre la tarjeta y la red inalámbrica. La plataforma WARP tiene la ventaja que mientras USRP está limitado a aplicaciones en banda estrecha, WARP está diseñado para soportar comunicaciones en banda ancha (Khattab et al., 2010). 1.3. Conclusiones parciales En este capítulo se profundizó en cuestiones relacionadas con la definición, características, ventajas y desventajas, así como las múltiples aplicaciones que posee la tecnología de Radio Definida por Software, que dejan por sentado que ésta se presenta como una tecnología de futuro, capaz de resolver problemas de compatibilidad, seguridad y eficiencia en cuánto a sistemas de radiocomunicaciones se trata. También se mostraron las características que tiene el dispositivo de lógica programable FPGA y su vínculo con la tecnología SDR, quedando demostrada su creciente importancia y necesidad en la actualidad, en el desarrollo de plataformas y circuitos digitales asociados a dicha tecnología..
(29) CAPÍTULO 2.. APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. El desarrollo de herramientas de simulación, ha permitido que diversos tipos de sistemas puedan ser diseñados y evaluados antes de realizar su diseño en plataformas de hardware, posibilitando que se pueda analizar su viabilidad, funcionalidad, fidelidad y eficiencia. En este capítulo se abordan las características que presentan las herramientas de simulación MATLAB 2013 y System Generator de Xilinx y se explican los fundamentos teóricos, así como las ventajas que presenta la utilización de las aplicaciones de la SDR seleccionadas para su implementación, las cuáles consisten en dos modelos de transmisión de datos con técnica de espectro extendido por secuencia directa que utilizan Registros de Desplazamiento con Realimentación Lineal, convencional y extendido, respectivamente.. 2.1. Caracterización de la herramienta de simulación MATLAB 2013 MATLAB es un software desarrollado por la compañía MathWorks que contiene programación de alto nivel y se acompaña de un conjunto de librerías o herramientas (toolboxes). Dentro de sus prestaciones se encuentran: la manipulación de matrices, la implementación de algoritmos, la creación de interfaces de usuario, la comunicación con programas en otros lenguajes y con dispositivos de hardware (Guerra et al., 2012). SIMULINK es un ambiente de software que corre sobre el MATLAB y utiliza una interfaz de usuario gráfica (GUI) que es utilizada para construir modelos de sistemas, en el dominio del tiempo o la frecuencia, para alguna operación específica de procesamiento, simulación, así como análisis de los resultados. En SIMULINK los modelos son jerárquicos y pueden ser discretos, continuos o híbridos (Supriya et al., 2012)..
(30) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. SIMULINK tiene además una amplia variedad de bloques de procesamiento de señales y pueden ser generados varios tipos de códigos: C/C++ para MCU y DSP; VHDL/Verilog para FPGA/ASIC y SPICE para dispositivos analógicos (Tabassam and Sumit Kalsait, 2011). La novedad en esta versión es la introducción del Fixed-Point Designer, que combina la funcionalidad del Fixed-Point Toolbox y del Simulink Fixed Point. También se incluyen capacidades nuevas en Phased Array System Toolbox y SimRF que refuerzan el diseño de sistemas de comunicaciones inalámbricos y de radar. Los puntos destacados de la versión 2013 en la familia SIMULINK son los siguientes (MathWorks, 2014): • Simulink: asesor de rendimiento de simulación, enmascaramiento de bloques de librerías enlazados y control de variantes activas a través de expresiones lógicas. • SimRF: resolución de envolvente de circuito para reducir el tiempo de simulación y carga de modelos. • SimMechanics: publicación de esquema XML para importar modelos desde CAD y otros sistemas. • Simulink Design Verifier: comprobación de acceso fuera de rango a arrays. • Simulink Coder: reducción de la copia de datos en las funciones de SIMULINK invocadas desde Stateflow. • Fixed-Point Designer: un nuevo producto que combina la funcionalidad de Fixed-Point Toolbox y Simulink Fixed Point. • HDL Verifier: generación de test benchs en HDL desde MATLAB.. 2.2. Características de la herramienta de simulación System Generator de Xilinx El software System Generator es una herramienta de simulación para el procesamiento digital de señales, que pertenece al entorno de Xilinx ISE y que se integra con la herramienta de simulación MATLAB, específicamente con el ambiente de software SIMULINK y consiste en una biblioteca. 30.
(31) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. de SIMULINK llamada Xilinx Blockset. Dicha herramienta permite simular y verificar los modelos a nivel de bit y ciclo con los resultados de los modelos de referencia. El entorno de diseño de Xilinx ISE consiste en una herramienta que permite realizar un diseño completo basado en lógica programable (tanto CPLD como FPGA), utilizando lenguajes de descripción de hardware como VHDL (Very High Speed Integrated Circuit Hardware Description Language),. Verilog. y. ABEL. (Advanced. Boolean. Expression. Language).. Este entorno cuenta, entre otras, con herramientas de verificación para la obtención de una simulación del sistema, tanto a nivel funcional como de estimación de retardos. La herramienta empleada se denomina ModelsimXE. Por otro lado, también se facilita la generación de bancos de prueba para la verificación mediante la herramienta HDL Bencher (Etse, 2011). System Generator traza elementos del bloque Xilinx definidos en SIMULINK, como las arquitecturas, entidades, señales, puertos y atributos. También produce los archivos de comando para la síntesis en la FPGA y la simulación HDL. La herramienta guarda la jerarquía de SIMULINK cuando convierte en VHDL. Cuando se diseña en el System Generator es posible acceder a los rasgos importantes en la FPGA, como son los multiplicadores de gran velocidad y también es posible incorporar los bloques de usuario-definido de VHDL al modelo. Para la comprobación y prueba, el System Generator puede generar automáticamente los bancos de prueba o testbench dónde el estímulo de entrada de SIMULINK a la entrada del bloque, puede ser grabado para la simulación de VHDL. Las salidas pueden ser entonces comparadas con los resultados grabados de la simulación de SIMULINK en la simulación VHDL. La naturaleza del System Generator posibilita el rápido desarrollo de algoritmos para el enrutamiento de datos. Las funciones de encriptación son comúnmente implementadas utilizando arquitecturas de enrutamiento de datos, pues existe una compatibilidad natural entre estas funciones y la herramienta System Generator (Denning et al., 2011).. 2.3. Sistema de encriptación de datos. Análisis teórico de su funcionamiento En el diseño de los sistemas de encriptación de datos, juega un papel preponderante los Registros de Desplazamiento con Realimentación Lineal o LFSR (Lineal Feedback Shift Register), por ser un. 31.
(32) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. mecanismo de generación de datos encriptados en forma aleatoria. No obstante, los LFSR pueden ser modificados, en función de optimizar el aprovechamiento de las capacidades actuales de los procesadores, mediante estructuras de diseño algebraicas, llamadas cuerpos compuestos de Galois. Este nuevo diseño se conoce como Registro de Desplazamiento con Realimentación Lineal extendido o LFSRe (Lineal Feedback Shift Register extended). En el desarrollo de este epígrafe, se profundizará en estos aspectos.. 2.3.1. Características de la encriptación de datos El estudio de las formas de enmascarar mensajes para advertir una intercepción no autorizada se llama criptografía. El término encriptar, se refiere a la transformación de los mensajes, realizados en el transmisor y desencriptar se refiere a la transformación inversa realizada en el receptor. Las dos razones fundamentales para utilizar criptosistemas en las comunicaciones son (Sklar, 2006): . Privacidad: Para prevenir que personas no autorizadas extraigan información del canal.. . Autenticación: Para prevenir que personas no autorizadas inserten información al canal.. Los dos métodos teórico-experimentales que más se citan en la actualidad para enviar mensajes encriptados son, sumar la señal caótica a la de información o enviar la primera cuya forma de onda sea generada obedeciendo a un valor paramétrico seleccionado por un estado binario que se desea encriptar. Lo interesante es que la efectividad de ambos métodos, requiere y depende de la sincronización entre un circuito caótico transmisor original y otro caótico receptor, copia fiel del primero y los cuáles deben mantenerse sincronizados durante el proceso de envío del mensaje encriptado. En particular, este proceso puede realizarse a través de una o dos líneas de comunicación (Núñez, 2009).. 32.
(33) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. 2.3.2. Registro de Desplazamiento con Realimentación Lineal (LFSR). Principio de funcionamiento En los sistemas criptográficos, los datos son generados de forma aleatoria, con secuencias que son determinísticas, o sea, que son finitas. Esto se realiza principalmente utilizando un generador de secuencias pseudoaleatorias que utiliza una estructura combinacional denominada Registro de Desplazamiento con Realimentación Lineal o LFSR (Linear Feedback Shift Register). El mismo tiene una amplia utilización, gracias a las buenas propiedades estadísticas de las secuencias, en ramas como la criptografía, la TV digital, señal GPS y telefonía móvil. Un LFSR de longitud 𝐿, tendrá 𝐿 elementos o elementos de retardo. Esto se describe como 𝑆0 , 𝑆1 , ⋯ , 𝑆𝐿−1 , cada uno con la capacidad de portar un bit de información. Un reloj controla el LFSR, y con cada unidad de tiempo transcurrida ocurre lo siguiente (Molina-Rueda et al., 2008): . El contenido del elemento 𝑆0 es un bit de salida de la secuencia del LFSR.. . El contenido de los elementos de S𝑖 se mueven para 𝑆𝑖−1, para todo 1 ≤ 𝑖 ≤ 𝐿 − 1. . El contenido de los elementos 𝑆𝐿−1 se calculan mediante adición módulo-2 (XOR), con respecto al contenido del resto de los elementos.. Un polinomio 𝑔(𝑥) en 𝐹2 (𝑥) es irreducible si no es el producto de dos polinomios de grado mayor que cero. Un polinomio irreducible 𝑔(𝑥) de grado 𝐿 es primitivo si 𝑔(𝑥) se divide por 𝑥 𝐿−1, para 𝐿 = 2𝐿−1 y ningún valor más pequeño de 𝐿 (Ahmad et al., 2013). Se va a explicar mediante un ejemplo relativamente sencillo el funcionamiento de un registro de desplazamiento con realimentación lineal. En la figura 2.2 se muestra un ejemplo de LFSR de 4 etapas.. 33.
(34) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. Figura 2.1 LFSR de 4 etapas (Sklar, 2006).. En este caso, se tienen 4 etapas, por tanto 𝐿 = 4 . La etapa realimentada es la 4ta. Un criptoanalista necesita solo 2𝐿 bit del mensaje con su correspondiente cifrado para determinar la realimentación, el estado inicial del registro y la secuencia entera del código. Aquí radica la desventaja del mismo, el período de la secuencia 2𝐿−1 es muy pequeño y por tanto sería muy fácil de desencriptar. Las etapas 1 y 2 son sumadas módulo-2 (operación lineal). Se supondrá que el estado inicial del registro es 1 0 0 0. De esta forma, por cada pulso de reloj que transcurra, activará el desplazamiento de los estados del registro, siendo estos 1 0 0 0, 0 1 0 0, 0 0 1 0 y así sucesivamente hasta que se vuelva a obtener en el registro el estado inicial. La secuencia de salida estará determinada por los bits que fueron desplazados, siendo el bit que se encuentra más a la derecha el primer bit en salir y el bit que se encuentra más a la izquierda el bit más recientemente obtenido. La salida contará con una secuencia de 16 bits, correspondiente a las 4 etapas del LFSR, donde estará además del mensaje, el cifrado. La salida para este ejemplo seria 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0.. 2.3.3. Registro de Desplazamiento con Realimentación Lineal extendido (LFSRe). Ventajas sobre el LFSR convencional Tradicionalmente los LFSR, componentes básicos de muchos cifradores en flujo, se han definido sobre el cuerpo de Galois binario GF (2). Sin embargo, nada impide que estos registros puedan. 34.
(35) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. trabajar sobre cuerpos de mayor tamaño, aprovechando la estructura subyacente del procesador en el que se ejecutan (Mohatar and Sabater, 2012). El hecho de realizar registros de desplazamiento extendidos consiste en definir los LFSR sobre cuerpos compuestos de Galois, 𝐺𝐹(2𝑛 )𝑚 en lugar de los tradicionales 𝐺𝐹(2𝑛 ) Los registros de desplazamiento extendidos se definen prácticamente de igual manera que los tradicionales. Un registro de desplazamiento lineal extendido (LFSRe) de longitud L es una máquina de estado finita que opera sobre un cuerpo finito 𝐹𝑞, de característica p, donde 𝑞 = 𝑝𝑒 , para algún 𝑒 ≥ 1. En este caso, 𝑞 = 2𝑛 y, por tanto, 𝐹𝑞 = 𝐺𝐹(2𝑛 ). En cada unidad de tiempo, o pulso de reloj en las implementaciones hardware, el registro actualiza su estado. Así, el estado 𝑆𝑡+1 se deriva del estado 𝑆𝑡 de la siguiente forma (Mohatar, 2010): . El contenido de la celda 𝑟0 se convierte en la salida de la unidad de tiempo t y entra a formar parte de la secuencia cifrante.. . El contenido de la celda 𝑟𝑖 se mueve a 𝑟𝑖−1 para cada 𝑖, 1 ≤ 𝑖 ≤ 𝐿 − 1. . El nuevo contenido de la celda 𝑟𝐿−1 es el denominado elemento de realimentación, que se calcula de acuerdo a la siguiente función de realimentación:. 𝑛 𝑆𝑡+𝐿 = 𝑐𝐿 ∑𝐿−1 𝑖=0 𝑐𝑖 𝑆𝑡 + 𝑖, 𝑐𝑖 ∈ 𝐺𝐹(2 ). (2.1). donde las constantes 𝐶0 , 𝐶1 , ⋯ , 𝐶𝐿 se denominan coeficientes de realimentación y la conexión en. 𝑐𝐿 se llama posición de realimentación. Estas constantes forman el polinomio generador o polinomio característico del LFSR:. 𝐿. 𝑝(𝑥) = 𝑐0 + 𝑐1 𝑥 + 𝑐2 𝑥 2 + ⋯ + 𝑐𝐿−1 𝑥 𝐿−1 + 𝑥 𝐿 = ∑ 𝑐𝑖 𝑥 𝑖 , 𝑐𝑖 ∈ 𝐺𝐹(2𝑛 ) 𝑖=0. (2.2). 35.
(36) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. Un ejemplo del diseño de un LFSRe se puede observar en la figura 2.2.. Figura 2.2 LFSRe de 17 etapas definido sobre 𝐺𝐹(28 ) (Mohatar and Sabater, 2012).. En esta nueva arquitectura los contenidos de las celdas 𝑆𝑡+𝑖 y los coeficientes de realimentación ya no son bits sino elementos de 𝐺𝐹(28 ) expresados en notación hexadecimal. Este hecho afectará sobre todo a las operaciones de suma y multiplicación que deben realizarse sobre ellos. En este ejemplo la función de realimentación, cumpliendo la ecuación enunciada anteriormente es (Mohatar, 2010):. 𝑆𝑡+18 = 1⨂𝑆𝑡+17 ⨁𝐶𝐵 ⊗ 𝑆𝑡+2 ⊕ 63 ⊗ 𝑆𝑡. (2.3). Para trabajar con los cuerpos extendidos de Galois se utiliza la aritmética polinómica modular (coeficientes binarios). Por tanto, a continuación se definirá como realizar las operaciones de suma y multiplicación, empleando las operaciones lógicas XOR y AND (Rico, 2009).. 36.
(37) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. Para la suma de polinomios, teniendo como ejemplo la adición de los polinomios 𝑝1 = 𝑥 3 + 𝑥 + 1 y 𝑝2 = 𝑥 3 + 𝑥 2 + 1 , quedaría: 𝑝1 + 𝑝2 = (𝑥 3 + 𝑥 + 1) + (𝑥 3 + 𝑥 2 + 1) = 𝑥 2 + 𝑥. (2.4). En este caso, no aumenta el grado del polinomio y por ende es una operación interna. En la suma XOR, los coeficientes binarios 1+1=0, elemento que se cumple de igual forma para la resta. Para el producto de polinomios, teniendo como ejemplo la adición de los polinomios 𝑝1 = 𝑥 3 + 𝑥 + 1 y 𝑝2 = 𝑥 2 + 1 , quedaría:. 𝑝1 ∗ 𝑝2 = (𝑥 3 + 𝑥 + 1) ∗ (𝑥 2 + 1) = 𝑥 5 + 𝑥 2 + 𝑥 + 1. (2.5). La operación multiplicación no es interna, lo que significa que aumenta el grado del polinomio. La multiplicación exige que el resultado sea reducido mediante un polinomio irreducible, lo que significa que el mismo no puede ser escrito como producto de otros polinomios. Esta reducción modular polinómica consiste en dividir por el polinomio irreducible y tomar el resto de la división. El resultado siempre tendrá un grado menor que el divisor. De esta forma, tomando en cuenta el resultado anterior y si se toma como polinomio irreducible 𝑥 4 + 𝑥 + 1 , se obtendrá como resultado de resto 1. Se trata de una operación interna (Rico, 2009). El aspecto más influyente en el rendimiento final del registro es, sin duda, la elección de la dimensión del cuerpo 𝐺𝐹(2𝑛 ) , con n =8, 16 ó 32, sobre el que funcionará el LFSRe. Al incrementar el valor de n, el rendimiento global del LFSRe aumentará, pues se incrementará proporcionalmente el número de bits generados por el registro en cada salida. Sin embargo, también aumenta el coste computacional de las operaciones implicadas, especialmente el de la multiplicación, para la obtención de dicha salida. En primer lugar, para conseguir un LFSRe de período máximo sobre 𝐺𝐹(2𝑛 )𝑚 , las posiciones de realimentación deberían ser primas entre sí, es decir no compartir. 37.
(38) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. divisores comunes. Por otra parte, el número de realimentaciones debería ser pequeño para minimizar el número de operaciones implicadas y maximizar así el rendimiento (Mohatar, 2010). Como fue explicado anteriormente, la operación multiplicación en cuerpos de Galois extendidos es, la operación algebraica más costosa desde un punto de vista computacional. Es por eso que la prestación final de una implementación depende del método específico de multiplicación utilizado. Existen varios métodos para realizar esto, como son el Método MulTABLE, el Método LogTABLE, el Método SHIFT y el Método SPLITW8. Como en este trabajo se implementará el LFSR para el caso de n =8, se explicará solamente el primero de los métodos relacionados.. Método MulTABLE Cuando la dimensión n del cuerpo extendido 𝐺𝐹(2𝑛 ) es pequeña, el procedimiento más rápido para multiplicar dos elementos es precomputar los resultados y almacenarlos en una tabla. En general, la tabla de resultados tiene un tamaño de (22𝑛+2 ) bytes, de forma que este método sólo resulta aplicable para valores de n razonablemente pequeños. En la práctica, el único valor razonable es n = 8. En este caso el tamaño de la tabla es de 256 KB y el tamaño en bytes es de 218 . En la figura 2.3 se muestra la tabla correspondiente a la operación multiplicación para el cuerpo 𝐺𝐹(23 ) (Mohatar and Sabater, 2012).. Figura 2.3 Tabla de multiplicación para 𝐺𝐹(23 ) (Mohatar and Sabater, 2012).. 38.
(39) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. 2.4. Transmisión de datos utilizando la técnica de Espectro Extendido por Secuencia Directa La técnica de Espectro Extendido o SS (Spread Spectrum) es una herramienta muy empleada en sistemas de radiocomunicaciones para la transmisión de datos. Se le llama de esa forma pues en el proceso de transmisión el ancho de banda empleado es mucho mayor que el mínimo requerido para la transmisión de la información. En un sistema donde se emplee un tranceiver, la señal antes de ser modulada de forma “extendida”, es mezclada por otra proveniente de un generador de secuencias pseudoaleatorias, que a su vez, como se conoce, basa su funcionamiento en un Registro de Desplazamiento con Realimentación Lineal (LFSR). En el epígrafe anterior se analizó todo lo relacionado con los LFSR y la importancia que poseen para desarrollar esquemas de encriptación. En este epígrafe se analizará específicamente la utilización de la técnica de espectro extendido en los sistemas de transmisión de datos encriptados y la relación que poseen los LFSR con su implementación.. 2.4.1. Características de los sistemas de Espectro Extendido La técnica de espectro extendido se desarrolló inicialmente para aplicaciones militares y para servicios de inteligencia. La idea básica consiste en expandir la información de la señal sobre un ancho de banda mayor, para con ello dificultar las interferencias y su posible intercepción. Las interferencias pueden ser el resultado de canales inducidos con interferencia ínter-símbolos, debido al efecto del multicamino en un canal limitado en banda. La técnica de espectro extendido puede ocultar una señal para transmitirla en baja potencia. Extendiendo la energía de la señal sobre el ancho de banda disponible y usando la mínima potencia necesaria, la señal puede ocultarse en un canal ruidoso. Esto significa que cualquier interceptor no autorizado tendrá una baja probabilidad de detectar la señal asociada al receptor intencional (Munshi and Unnikrishnan, 2012).. 39.
(40) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. En la figura 2.4 se resaltan los puntos claves de un sistema de espectro extendido. El primer requerimiento de este tipo de sistema es que el ancho de banda de transmisión de la señal debe ser más grande que el ancho de banda mínimo asociado con los datos de información. El segundo requisito está en que el ancho de banda de la señal debe extenderse usando una señal extendida o código que es independiente de los datos. Este código tiene propiedades pseudo-aleatorias que le permiten al receptor saber lo que para el código es a priori. La demodulación es entonces realizada situando en correlación el código recibido con una réplica sincronizada en el receptor y por eso se produce la de-extensión de la señal (Munshi and Unnikrishnan, 2012).. Figura 2.4 Modelo genérico de un sistema de comunicación digital con espectro extendido (Munshi and Unnikrishnan, 2012).. Por tanto, un sistema se considera de espectro extendido, si cumple las siguientes características: 1- La señal ocupa un ancho de banda mucho mayor que el ancho de banda mínimo necesario para enviar la información. 2- La “extensión o spread” está acompañada por medio de una señal extendida, llamada a menudo “extended signal”, la cual es independiente de los datos.. 40.
(41) APLICACIONES DE LA SDR DESARROLLADAS EN LAS HERRAMIENTAS DE SIMULACIÓN. 3- En el receptor la “de-extensión o despreading” (recuperación de los datos originales) está acompañada por la correlación de la señal spread, con una réplica sincronizada de la señal spreading utilizando la información extendida. Dentro de los beneficios más importantes que posee el espectro extendido se encuentran la supresión de interferencia frente a canales afectados por el ruido, la reducción de la densidad de energía, además posee una resolución de tiempo finito y puede emplear técnicas de múltiple acceso, como CDMA (Code Division Multiple Access) (Sklar, 2006). Los esquemas de modulaciones estándares como lo son la FM y PCM también utilizan la técnica de SS en una señal de información. Existen dentro de la técnica de espectro extendido dos variantes importantes: Espectro Extendido por Salto de Frecuencia o FHSS (Frequency Hopping Spread Spectrum) y Espectro Extendido por Secuencia Directa o DSSS (Direct Sequence Spread Spectrum). Ésta última variante se apoya en una técnica de extensión directa, en la cual el espectro del mensaje es extendido por la multiplicación de la señal por una secuencia pseudoruidosa (Briceño, 2005).. 2.4.2. Espectro Extendido por Secuencia Directa (DSSS) El Espectro Extendido por Secuencia Directa o DSSS (Direct Sequence Spread Spectrum) es la más común de las versiones del espectro extendido usadas en la actualidad. En DSSS, la portadora (señal de datos), es modulada por la secuencia de código pseudoaleatorias, la cual es de una frecuencia mayor que la razón de datos deseada (Griffiths, 2012). En la figura 2.5 se ilustra un modelo de Espectro Extendido por Secuencia Directa.. 41.
Figure
Documento similar
La moral especial (o institucional, la M de G ARZÓN ) parece ofrecer de- masiados pretextos; terminaría por justificar cualquier tipo de acción requerida por ra- zones
entorno algoritmo.
Tome el MacRm media libra de Manecca de puerca ,media Je Manmca de Bac media de A- yre Rolado ,media de Azeyre Violado, y re poMc'tn holla vi- driadaafuegommfo,paza que
Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de
Se estima una distancia de más de 11 millones de años luz hablando de una cantidad de sistemas solares que no tendrían espacio en nuestra mente y esto solo hablando del grupo
En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones
Ésta es una constatación que no se puede obviar en la reflexión sobre la reforma del sistema competencial: la combinación entre un sistema de atri- bución mediante
Sea S el subconjunto de sitios económicos, conformado por cada uno de los elementos o sitios i-esimos que lo forman. De tal forma que este subconjunto esta formado por cada uno