Electronica
Ciencia y tecnologia. Electronica
domingo, 18 de enero de 2015
jueves, 2 de enero de 2014
Como se usa el Bitcoin
El proceso de enviar dinero, recibirlo o efectuar pagos con Bitcoin es, por ejemplo, tan fácil como enviar un e-mail. De ahí parte su éxito, pues puede ser utilizado por todo el mundo con suma facilidad.
De la misma manera que existen direcciones de correo electrónico, también existen direcciones Bitcoin que nos permiten enviar y recibir esta moneda digital. Para empezar a usar Bitcoin lo primero que debemos hacer es generar una de estas direcciones usando una aplicación Bitcoin. Estas aplicaciones las veremos más adelante, pero primero centrémonos en ver cómo funcionan las direcciones.
Puedes generar tantas direcciones como quieras y son, todas ellas, absolutamente gratuitas. Adicionalmente, no hace falta estar conectado a internet para generar una dirección, pues recuerda que no hay ninguna institución o empresa en la que sea necesario registrarse. Estas direcciones se generan mediante unos parámetros matemáticos que logran hacer que todas las direcciones sean únicas y no haya nunca dos iguales.
Cada dirección consta de dos partes que están matemáticamente correlacionadas:
La dirección pública es aquella con la que tú te identificas de cara al mundo. Cualquiera que sepa tu dirección pública podrá enviarte bitcoins en cualquier momento.
La clave privada es aquella que permite autentificarte, acceder a los fondos que tengas en esa dirección o realizar envíos. Por este motivo es muy importante que nunca divulgues tu clave privada pues daría a cualquiera que la supiera acceso a tus fondos. La mayoría de las aplicaciones Bitcoin se aseguran de mantener tu clave privada protegida bajo contraseña (cifrada).
De la misma manera que existen direcciones de correo electrónico, también existen direcciones Bitcoin que nos permiten enviar y recibir esta moneda digital. Para empezar a usar Bitcoin lo primero que debemos hacer es generar una de estas direcciones usando una aplicación Bitcoin. Estas aplicaciones las veremos más adelante, pero primero centrémonos en ver cómo funcionan las direcciones.
Puedes generar tantas direcciones como quieras y son, todas ellas, absolutamente gratuitas. Adicionalmente, no hace falta estar conectado a internet para generar una dirección, pues recuerda que no hay ninguna institución o empresa en la que sea necesario registrarse. Estas direcciones se generan mediante unos parámetros matemáticos que logran hacer que todas las direcciones sean únicas y no haya nunca dos iguales.
Cada dirección consta de dos partes que están matemáticamente correlacionadas:
- Una dirección pública
La dirección pública es aquella con la que tú te identificas de cara al mundo. Cualquiera que sepa tu dirección pública podrá enviarte bitcoins en cualquier momento.
- Una clave privada
La clave privada es aquella que permite autentificarte, acceder a los fondos que tengas en esa dirección o realizar envíos. Por este motivo es muy importante que nunca divulgues tu clave privada pues daría a cualquiera que la supiera acceso a tus fondos. La mayoría de las aplicaciones Bitcoin se aseguran de mantener tu clave privada protegida bajo contraseña (cifrada).
¿Dónde se guardan los bitcoins?
A pesar de que es innecesario saber esto para usar Bitcoin, considero que es muy importante explicarlo para que cualquiera pueda hacerse una idea más precisa de su funcionamiento y sentirse así más familiarizado con este sistema. ¡Después de todo se trata de nuestro dinero!
Los bitcoins que nosotros recibamos en nuestra dirección Bitcoin no representan ningún archivo de nuestro ordenador, ningún metal, papel o cadena de texto, sino que en realidad se trata de un valor que nuestra dirección puede tener. De la misma manera que la cuenta de tu banco no representa dinero que está literalmente ahí, sino que es un valor que tu banco le da a tu cuenta.
Ejemplo: Mario tiene 50€ en su cuenta de banco y por lo tanto el valor de la cuenta de Mario es de 50€.
Cuando Mario se gasta 20€, el banco hace un registro de la transacción y apunta el nuevo valor de la cuenta de Mario que ahora es de 30€.
Las direcciones de Bitcoin funcionan de la misma manera. A cada dirección le corresponde un valor que puede subir o bajar según las transacciones que realicemos. Aquí es cuando entra en funcionamiento la red "peer to peer" que mencionamos en el capítulo anterior. Los nodos interconectados se encargan de registrar el nuevo valor de la dirección y difunden la información de dicha transacción por toda la red, quedando respaldada de forma inalterable gracias a un complejo sistema de seguridad criptográfico.
Ejemplo: Mario tiene 10 bitcoins y decide enviar 2 bitcoins a María.
Mario usa su clave privada para autentificarse y anunciar una nueva transacción a la red. Posteriormente la red Bitcoin toma nota de esta transacción y registra el nuevo valor de la dirección de mario y de María: "Dirección de Mario: 8 bitcoins / Dirección de María: 2 bitcoins". Esta nueva transacción queda ahora respaldada en un registro colectivo e inalterable para que nadie pueda modificarlo y hacer trampas. Cuando María quiera gastar sus bitcoins, el proceso se repetirá de nuevo.
Este sistema resulta infranqueable y hace imposible cualquier tipo de trampa. Sin embargo y por esta misma razón, todas las transacciones son absolutamente públicas y transparentes, algo que en el sistema tradicional no ocurre. ¿Es eso malo? No, pues nadie conoce la identidad de la persona que hay detrás de la dirección usada (a menos que esta lo haga saber) y se preserva la privacidad de los usuarios. Para el resto de personas tu transacción será sólo un número, sin que sepan quién ha enviado o quién ha recibido el dinero. De esta manera se obtiene un sistema que no sólo es seguro a nivel informático sino también da confianza gracias a su transparencia inherente.
Respondiendo a la pregunta inicial: el valor de tu dirección Bitcoin queda respaldado en toda la red de miles y miles de ordenadores. Lo único que necesitas, por lo tanto, es tu clave privada. Con estas "credenciales" tú puedes acceder a tus bitcoins desde cualquier ordenador conectado a internet. Tanto en la teoría como en la práctica este sistema es viable y muy seguro, pues sólo el conocedor de la clave privada puede emitir una transacción válida.
Mi monedero Bitcoin (se aceptan donaciones) 1MpLhVjvseo2rx7UES6AqytdEQtCYfXJ3k
Los bitcoins que nosotros recibamos en nuestra dirección Bitcoin no representan ningún archivo de nuestro ordenador, ningún metal, papel o cadena de texto, sino que en realidad se trata de un valor que nuestra dirección puede tener. De la misma manera que la cuenta de tu banco no representa dinero que está literalmente ahí, sino que es un valor que tu banco le da a tu cuenta.
Ejemplo: Mario tiene 50€ en su cuenta de banco y por lo tanto el valor de la cuenta de Mario es de 50€.
Cuando Mario se gasta 20€, el banco hace un registro de la transacción y apunta el nuevo valor de la cuenta de Mario que ahora es de 30€.
Las direcciones de Bitcoin funcionan de la misma manera. A cada dirección le corresponde un valor que puede subir o bajar según las transacciones que realicemos. Aquí es cuando entra en funcionamiento la red "peer to peer" que mencionamos en el capítulo anterior. Los nodos interconectados se encargan de registrar el nuevo valor de la dirección y difunden la información de dicha transacción por toda la red, quedando respaldada de forma inalterable gracias a un complejo sistema de seguridad criptográfico.
Ejemplo: Mario tiene 10 bitcoins y decide enviar 2 bitcoins a María.
Mario usa su clave privada para autentificarse y anunciar una nueva transacción a la red. Posteriormente la red Bitcoin toma nota de esta transacción y registra el nuevo valor de la dirección de mario y de María: "Dirección de Mario: 8 bitcoins / Dirección de María: 2 bitcoins". Esta nueva transacción queda ahora respaldada en un registro colectivo e inalterable para que nadie pueda modificarlo y hacer trampas. Cuando María quiera gastar sus bitcoins, el proceso se repetirá de nuevo.
Este sistema resulta infranqueable y hace imposible cualquier tipo de trampa. Sin embargo y por esta misma razón, todas las transacciones son absolutamente públicas y transparentes, algo que en el sistema tradicional no ocurre. ¿Es eso malo? No, pues nadie conoce la identidad de la persona que hay detrás de la dirección usada (a menos que esta lo haga saber) y se preserva la privacidad de los usuarios. Para el resto de personas tu transacción será sólo un número, sin que sepan quién ha enviado o quién ha recibido el dinero. De esta manera se obtiene un sistema que no sólo es seguro a nivel informático sino también da confianza gracias a su transparencia inherente.
Respondiendo a la pregunta inicial: el valor de tu dirección Bitcoin queda respaldado en toda la red de miles y miles de ordenadores. Lo único que necesitas, por lo tanto, es tu clave privada. Con estas "credenciales" tú puedes acceder a tus bitcoins desde cualquier ordenador conectado a internet. Tanto en la teoría como en la práctica este sistema es viable y muy seguro, pues sólo el conocedor de la clave privada puede emitir una transacción válida.
Mi monedero Bitcoin (se aceptan donaciones) 1MpLhVjvseo2rx7UES6AqytdEQtCYfXJ3k
Como funciona Bitcoin
El funcionamiento de la red Bitcoin
Bitcoin está basado en un sistema "peer to peer" o de usuario a usuario muy ingenioso. Al no haber ningún organismo detrás de esta moneda libre, son los propios usuarios (miles de ordenadores de todo el mundo) que se aseguran de efectuar el seguimiento, control y registro de las transacciones. Gracias a esto y un complejo sistema criptográfico es posible asegurarse de que nadie haga trampas y que la moneda sea segura ante ataques, intentos de falsificación o duplicación. De ahí también viene el lema latín que algunos usuarios de la moneda acuñaron en sus días más tempranos: "Vires in numeris", es decir, "La fuerza está en los números".
Puede parece extraño al principio ya que no solemos estar acostumbrados a este tipo de conceptos, pero en la práctica las distintas aplicaciones Bitcoin simplifican el proceso de tal manera que enviar y recibir bitcoins sea tan fácil como enviar y recibir un correo electrónico. De esta manera no solo se convirte el sistema Bitcoin no sólo resulta seguro sino también sencillo y conveniente.
¿Sabías que el protocolo de Bitcoin es totalmente abierto y transparente? Cualquiera puede revisarlo y asegurarse de que todo va bien. De hecho, sólo así ha podido ganar la moneda la confianza de tantas personas en todo el mundo que la usan para sus negocios, hacer compras o enviar dinero a sus familiares.
Puede parece extraño al principio ya que no solemos estar acostumbrados a este tipo de conceptos, pero en la práctica las distintas aplicaciones Bitcoin simplifican el proceso de tal manera que enviar y recibir bitcoins sea tan fácil como enviar y recibir un correo electrónico. De esta manera no solo se convirte el sistema Bitcoin no sólo resulta seguro sino también sencillo y conveniente.
¿Sabías que el protocolo de Bitcoin es totalmente abierto y transparente? Cualquiera puede revisarlo y asegurarse de que todo va bien. De hecho, sólo así ha podido ganar la moneda la confianza de tantas personas en todo el mundo que la usan para sus negocios, hacer compras o enviar dinero a sus familiares.
Para usuarios avanzados
La explicación del funcionamiento exacto y los detalles técnicos están más allá del propósito de esta sencilla guía. Sin embargo, se encuentran libremente disponibles en internet y pueden ser consultados por cualquiera que tenga curiosidad y quiera aprender más sobre la red Bitcoin y los mecanismos de verificación y seguridad.
Un buen punto de partida es el siguiente artículo de la Bitcoin Wiki en español, donde también se explica cómo el sistema Bitcoin previene el"doble gasto". Si dispones de conocimientos informáticos avanzados, quizá también te interese leer esta introducción sobre la tecnología detrás de Bitcoin. Sin embargo, si esta es la primera vez que oyes hablar de Bitcoin, te recomendamos que primero termines de leer esta guía y así poder entender mejor la gran cantidad de documentación que está disponible en la Bitcoin Wiki en español o inglés.
Mi monedero Bitcoin (se aceptan donaciones) 1MpLhVjvseo2rx7UES6AqytdEQtCYfXJ3k
Un buen punto de partida es el siguiente artículo de la Bitcoin Wiki en español, donde también se explica cómo el sistema Bitcoin previene el"doble gasto". Si dispones de conocimientos informáticos avanzados, quizá también te interese leer esta introducción sobre la tecnología detrás de Bitcoin. Sin embargo, si esta es la primera vez que oyes hablar de Bitcoin, te recomendamos que primero termines de leer esta guía y así poder entender mejor la gran cantidad de documentación que está disponible en la Bitcoin Wiki en español o inglés.
Mi monedero Bitcoin (se aceptan donaciones) 1MpLhVjvseo2rx7UES6AqytdEQtCYfXJ3k
El dinero del Futuro Bitcoins
Bueno yo se que esto no hace parte de la electronica pero es algo muy interesante que no pueden quedar sin mirarlo.

Una moneda digital P2P de código abierto
Bitcoin es una moneda digital, un protocolo y un software que permite:
- Transacciones instantáneas punto a punto
- Pagos en todo el mundo
- Bajos o cero costos de procesamiento
- Y mucho más
Bitcoin utiliza tecnología punto a punto para operar sin una autoridad central; gestionando las transacciones y la emisión de Bitcoins que se llevan a cabo conjuntamente por la red. A través de muchas de sus propiedades únicas, Bitcoin permite usos interesantes que no pueden ser cubiertos por otros sistemas de pago.
El software es un proyecto libre de código abierto, impulsado por la comunidad y liberado bajo la licencia MIT.
Bitcoin es una moneda, como el euro o el dólar estadounidense, que sirve para intercambiar bienes y servicios. Sin embargo, a diferencia de otras monedas, Bitcoin es una divisa electrónica que presenta novedosas características y destaca por su eficiencia, seguridad y facilidad de intercambio.
Veamos algunas de estas características:
Veamos algunas de estas características:
- No pertenece a ningún Estado o país y puede usarse en todo el mundo por igual.
- Está descentralizada: no es controlada por ningún Estado, banco, institución financiera o empresa.
- Es imposible su falsificación o duplicación gracias a un sofisticado sistema criptográfico.
- No hay intermediarios: Las transacciones se hacen directamente de persona a persona.
- Las transacciones son irreversibles.
- Puedes cambiar bitcoins a euros u otras divisas y viceversa, como cualquier moneda.
- No es necesario revelar tu identidad al hacer negocios y preserva tu privacidad.
- El dinero te pertenece al 100%; no puede ser intervenido por nadie ni las cuentas pueden ser congeladas.
En cierto modo, Bitcoin se asemeja al dinero en efectivo que todos conocemos. Además de presentar muchas de las características de este conocido medio físico, al usar Bitcoin siempre mantenemos el control de nuestros fondos. Adicionalmente, también disponemos de muchas de las ventajas que el medio digital nos ofrece: es inmediato, puede mandarse a cualquier parte del mundo, etc.
Beneficios y ventajas de Bitcoin
En la actualidad, Bitcoin es la moneda digital más usada de todo el mundo y hay buenas razones por las cuales se está haciendo cada vez más popular. Tanto usuarios particulares como vendedores y propietarios de negocios encuentran en Bitcoin importantes ventajas que les han llevado a adoptar este sistema. Algunas, ya las hemos mencionado al principio de la página, pero hay muchas otras razones beneficiosas que veremos a continuación.
- Bitcoin ofrece seguridad al comprador y al vendedor.
Bitcoin también es preferible a otros sistemas de cobro online, sobretodo para el vendedor. En Bitcoin las tasas por transacciones son muy bajas y no existe riesgo alguno de que compradores fraudulentos y estafadores reviertan el pago, quedándose tanto con el producto como con el dinero.
Finalmente, las características de Bitcoin permiten a las páginas establecer un servicio de fideicomiso, asegurando que el vendedor sólo reciba el dinero si el producto ha llegado satisfactoriamente a su destino. Esto es usado frecuentemente en páginas de subastas y venta de productos de segunda mano.
- Bitcoin abarata los costes al eliminar los intermediarios por completo.
En Bitcoin no hay intermediarios y el dinero pasa directamente de persona a persona: de comprador a vendedor o de particular a particular. Esto reduce el precio de enviar dinero sustancialmente y permite también vender productos y servicios a un precio más justo.
- Bitcoin es justo.
- Tus bitcoins son sólo tuyos.
- Bitcoin es democrático: la economía de las personas.
VALOR ACTUAL DE UN MILI-BITCOIN:



Nota: Este precio está representado en "mili-bitcoins" o "mBTC", una milésima parte de Bitcoin. Usamos esta fracción porque resulta más conveniente a la hora de representar precios del día a día.
Nota: Este precio está representado en "mili-bitcoins" o "mBTC", una milésima parte de Bitcoin. Usamos esta fracción porque resulta más conveniente a la hora de representar precios del día a día.
Mi monedero Bitcoin (se aceptan donaciones) 1MpLhVjvseo2rx7UES6AqytdEQtCYfXJ3k
domingo, 15 de diciembre de 2013
MANUAL VISUALIZACION DINAMICA EN HANDEL-C
MANUAL
VISUALIZACION DINAMICA EN HANDEL-C
INTRODUCCION
Durante las últimas
décadas, el desarrollo de las nuevas tecnologías de fabricación de circuitos
integrados, junto con el significativo avance de los equipos informáticos, ha
proporcionado la aparición de nuevos lenguajes de programación orientado al
diseño de sistemas electrónicos.
Los lenguajes de
programación durante años se han utilizado para resolver problemas, los cuales
tienen reglas para formar instrucciones correctas, organizándolas en módulos y someterlas
hacia un compilador , el cual traduce el código en un lenguaje comprensible
para una máquina en particular, en el siguiente documento se encontrara una
introducción sobre los lenguajes de programación pero se profundizara uno en
específico llamado “Handel-C” el cual es un lenguaje de programación de alto nivel que se enfoca en
hardware de bajo nivel, se quiere que el lector tenga al alcance una guia practica
de facil entendimiento sobre el lenguaje
de programacion HANDEL-C, para esto se
realizará un ejemplo de visualización dinamica en este lenguaje el cual se
montará el la FPGA para poder observar su funcionamiento.
HANDEL- C
Handel-C es un alto
nivel de lenguaje de programación Diseñado
por Celoxica, el cual se enfoca en hardware de bajo nivel, más comúnmente
utilizado en la programación de FPGAs; este es un lenguaje para implementar
algoritmos en hardware directamente de una representación en C. Para diseñar
sistemas usando la herramienta de desarrollo DK Design Suite.
Handel-C Es
un rico subconjunto de C , con extensiones que no son estándar
para el control de la creación de instancias de hardware con un énfasis en el
paralelismo; la asignación y el comando de retardo tienen un ciclo. Todas
las demás operaciones son "libres", esto permite a los programadores realizar
manualmente las tareas y crear eficaces tuberías . Mediante la
disposición de los bucles en paralelo con los retrasos correctos, las tuberías
pueden aumentar enormemente el rendimiento de datos, a expensas de un mayor uso
de recursos de hardware.
DK Design Suite
Handel-C en síntesis
con DK Design Suite (kit de diseño) ofrece un flujo de software para el
desarrollo de algoritmos, optimización y aceleración en sistemas embebidos
y Con esto Validar el rendimiento y
mejorar la calidad del producto en menos tiempo y con menor costo.
El DK Design Suite es
muy adecuado para diseñadores de algoritmos que utilizan C y C + +, lo que
requiere una plataforma de validación más rápido que una plataforma orientada
al procesador (es decir, un ordenador portátil), pero no tienen experiencia
herramienta de diseño HW(hardware) en profundidad de utilizar la lógica
paralelo en FPGA de prototipos de hardware.
La suite DK Design
da la opción de la compilación del
algoritmo directamente a las placas FPGA dedicados para acelerar el rendimiento
del sistema al tiempo que proporciona herramientas para la depuración y
optimización.
Para los equipos de
diseño de algoritmos, Handel-C permite la programación FPGA utilizando
herramientas y flujos basados en software. Los usuarios pueden comprobar
los sistemas en las simulaciones de ciclo exacto, y compilar el código
directamente en la lógica FPGA, la creación de archivos de un bit para
programar juntas FPGA. Bibliotecas API permiten a los diseñadores de
software para conectar procesadores y periféricos de mesa a la lógica FPGA, lo
que permite una rápida exploración de HW y SW de aplicación
compensaciones. El resultado final es un "banco de trabajo
algoritmo" que permite la implementación rápida del sistema de software
para las plataformas de hardware FPGA.
Algoritmos definen el valor
de los sistemas integrados de hoy en día. Estos modelos complejos
determinan el funcionamiento y rendimiento de los productos
finales. Tiempos de ejecución resultantes de clásico SW compilación de una
CPU pueden no ser lo suficientemente rápido. Verificación de mundo real la
interacción de E / S puede ser necesaria para determinar la exactitud del
algoritmo y funcionalidad. La suite DK Design ofrece una solución a este
último por la compilación del algoritmo directamente a las placas FPGA dedicados
para acelerar el rendimiento del sistema al tiempo que proporciona herramientas
para la depuración y optimización.
EJEMPLO DE VISUALIZACION DINAMICA EN HANDEL-C

Línea 1: se
declara la referencia de la FPGA, paquete y velocidad
Línea 2: se declara la familia de la FPGA a utilizar
Línea 3: se
define el reloj en pin B8 para FPGA spartan3e
Línea 4: se
declara
-
a, b, c, d, e, f, g, variables
correspondientes a cada uno de los leds de un display 7 segmentos
-
segmento, segmento1, segmento2,
segmento3 para selecciona los displays
Línea 5:declara
las variables correspondientes a los 8 leds
Línea 6: asigna
el switch dedicado a iniciar el funcionamiento
Línea 7: asigna
el pulsador dedicado a la función reset

De la línea 12 a
30 llevamos a cabo la asignación de leds y pines de los display 7 segmentos de la FPGA

Línea 32: se
hace la declaración de un reloj de 5M
Línea 34-35: se
hace el llamado de las variables a utilizar dentro de nuestro main
Línea 36: en
esta línea hacemos la declaración de un while que siempre es verdadero de acuerdo a las condiciones internas del mismo.
Línea 38-66:
hacemos la definición de del contador para cada una de las componentes
(segundos, decenas de segundo, minuto, decenas de minuto). Estas componentes
son dependientes de la menos significativa
que es decenas de segundo hasta minutos que sería la mas significativa
Figura 1.

Figura 2.

Figura 3.

Figura 4.

En la figuras
1,2,3,4 correspondientes a las líneas 77-177 se lleva a cabo la definición y
asignación de la visualización dinámica de segundo , décimas de segundo,
minuto y decimas de minuto
respectivamente usando las sentencia
case donde un 0 habilita y un 1 inhabilita un determinado display
correspondientes a segmento, segmento1,
segmento2, segmento3 para los cuales
según sea el número del 1 al10 se le
hace una determinada asignación de encendido u apagado para cada uno de los
segmentos del display ( un 0 enciende un segmento del display y un 1 lo apaga).

Línea 205-207:
se definen las acciones tras accionar el pulsador de reset donde al estar en uno pone todos los
contadores en 0.
·
Tras terminar nuestro código de programación debemos
compilar el programa para asegurarnos de
que no tenga ningún error y poder generar los archivos necesarios para poder
hacer una posterior generación e
interpretación de archivos en Xilinx para poner en marcha nuestro proyecto
sobre la FPGA.

Para compilar el
proyecto seguiremos los siguientes pasos: build-> Rebuild All
Si todo está
bien, nos aparecerá un mensaje “0 error, 0 warnings” y podremos proceder al
montaje de archivos en Xilinx.

Crearemos un
nuevo proyecto en Xilinx donde daremos un nombre, y las respectivas ubicaciones
donde se guardara todo. En Top-level source type cambiaremos por EDIF y damos
Next.

Ahora debemos
seleccionar la ubicación del archivo .edf de nuestro proyecto generado por Dk
desing y damos Next.

En esta ventana
debemos configurar las las característica de la FPGA a utilizaren nuestro caso
una basys2.
Family: Spartan3E
Device: XC3s100E
Package: CP132
Speed: -4

Después de tener
configurado el proyecto de xilinx deberemos dar inicio a la verificación de
sintaxis (1) y luego damos clic en
Generate Programing File (2) con lo cual se nos generara un archivo .bit el
cual será el que usaremos para programas nuestra FPGA.
viernes, 13 de diciembre de 2013
UTILIZAR SIMULINK DE MATLAB PARA HACER UN MODULADOR QPSK
UTILIZAR SIMULINK DE
MATLAB PARA HACER UN MODULADOR QPSK
Introducción.
La
utilización de nuevas tecnologías nos obliga a realizar adaptaciones y
acoplarnos a estas. En este sentido lo mejores hacer cada vez más fácil el manejo e implementación de estas nuevas
tecnologías. Con este objetivo día tras día se trabaja el hacer más fácil la
programación de estas nuevas tecnologías para incentivar el mismo desarrollo.
La
utilización de la modulación en señales es sobreponerlas con portadoras, de
esta manera se aprovecha mejor el canal de comunicación, lo que nos ayuda a
transmitir más información de una forma simultánea y sin mencionar la mejora
contra ruidos e interferencias que se puedan presentar.
En este
manual se mostrara la modulación digital especifica QPSK (cuadratura Phase Shift Keying); Se utilizara la
herramienta “simulink” de Matlab para hacer la simulación de esta modulación.
Explicando paso a paso la modulación y simulación de este.
Objetivos:
·
Familiarizarse con el entorno de la herramienta System Generator.
·
Conocer y utilizar la herramienta “simulink” de Matlab
·
Por medio de la práctica, reconocer algunas ventajas y debilidades de la
herramienta para el diseño de soluciones.
·
Conocer los procedimientos para exportar, compilar y programar nuestro
diseño en un kit de desarrollo de la Familia Spartan.
·
Realizar el montaje práctico del diseño y analizar los resultados con los
elementos de medición disponibles en el laboratorio.
·
Comprender y analizar el funcionamiento de la
modulación QPSK y su aplicativo en Matlab.
MODULACION
Modulación engloba
el conjunto de técnicas que se usan para transportar información sobre una onda portadora, típicamente una onda sinusoidal. Estas técnicas permiten un mejor aprovechamiento del canal
de comunicación lo que posibilita transmitir más información en forma
simultánea además de mejorar la resistencia contra posibles ruidos e
interferencias. Según la American National Standard for Telecommunications, la modulación es el proceso, o el
resultado del proceso, de variar una característica de una portadora de acuerdo
con una señal que transporta información. El propósito de la modulación es
sobreponer señales en las ondas portadoras.
Básicamente,
la modulación consiste en hacer que un parámetro de la onda portadora cambie de
valor de acuerdo con las variaciones de la señal moduladora, que es la información que queremos transmitir.

Onda de baja
frecuencia (portadora, las dos de abajo) puede modularse en amplitud (AM, varía
la amplitud) o en frecuencia (FM, varía la frecuencia).
TIPOS DE MODULACION
Modulación
Analógica
Las tres técnicas de modulación analógica básica son:
- Modulación
de la amplitud (AM o amplitud modulada).
- Modulación
de la frecuencia (FM o frecuencia modulada).
- Modulación
de la fase (PM o fase modulada).
La mayoría de los sistemas de comunicación utilizan
alguna de estas tres técnicas de modulación básicas, o una combinación de
ellas.
Modulación
Digital
La función de una modulación digital es convertir los
bits en señales adecuadas para su transmisión. La gran ventaja de las
modulaciones digitales es que son más robustas frente al ruido, y además
permiten regenerar la señal con mayor calidad que las modulaciones analógicas
Los siguientes son algunas técnicas de modulación digital
- Modulación
por desplazamiento de amplitud (ASK, Amplitude Shift Keying)
- Modulación
por desplazamiento de frecuencia (FSK,Frecuency Shift Keying)
- Modulación
por desplazamiento de fase (PSK, Phase Shift Keying)
MODULACIÓN PSK
La modulación por desplazamiento de fase o PSK (Phase
Shift Keying) es una forma de modulación angular que consiste en hacer variar
la fase de la portadora entre un número de valores discretos. La diferencia con
la modulación de fase convencional (PM) es que mientras en ésta la variación de
fase es continua, en función de la señal moduladora, en la PSK la señal
moduladora es una señal digital y, por tanto, con un número de estados
limitado.
La modulación PSK se caracteriza porque la fase de la
señal portadora representa cada símbolo de información de la señal moduladora,
con un valor angular que el modulador elige entre un conjunto discreto de
"n" valores posibles.
Dependiendo del número de posibles fases a tomar, recibe
diferentes denominaciones. Dado que lo más común es codificar un número entero
de bits por cada símbolo, el número de fases a tomar es una potencia de dos.
Así tendremos BPSK con 2 fases (equivalente a PAM), QPSK con 4 fases
(equivalente a QAM), 8-PSK con 8 fases y así sucesivamente. A mayor número de
posibles fases, mayor es la cantidad de información que se puede transmitir
utilizando el mismo ancho de banda, pero mayor es también su sensibilidad
frente a ruidos e interferencias.
Se puede modelar como la conmutación de dos señales
sinusoidales de características similares pero desfasadas 180°, definidas
mediante las siguientes expresiones:
f1(t) = Asen(wct) (equivalente al 1 binario)
f2(t) = -Asen(wct) (equivalente al 0 binario)
Existen dos tipos de modulación PSK: BPSK con 2 fases
y QPSK con 4 fases.
BPSK (PSK Binario)
Este esquema es la modulación de desplazamiento de fase
de 2 símbolos. Es el más sencillo de todos, puesto que solo emplea 2 símbolos,
con 1 bit de información cada uno. Es también la que presenta mayor inmunidad
al ruido, puesto que la diferencia entre símbolos es máxima (180º). Dichos
símbolos suelen tener un valor de salto de fase de 0º para el 1 y 180º para el
0, como se muestra en un diagrama de constelación. En cambio, su velocidad de
transmisión es la más baja de las modulaciones de fase.
Diagrama de
constelación para BPSK.
QPSK
(Quadrature Phase-Shift Keying)
Esta modulación digital es representada en el diagrama
de constelación por cuatro puntos equidistantes del origen de las coordenadas.
Con cuatro fases, QPSK puede codificar dos bits por cada símbolo. La asignación
de bits a cada símbolo suele hacerse mediante el código Gray, que consiste en
que, entre dos símbolos adyacentes, los símbolos solo se diferencian en 1 bit,
con lo que se logra minimizar la tasa de bits erróneos, se dividen en grupos de
dos (11, 10, 01 o 00) y a cada posible par de bits se le asigna una forma de onda.
Diagrama de
constelación para QPSK con código Gray.
El
"PSK" en QPSK se refiere al uso de phased Shift Keying. Shift Keying
etapas es una forma de modulación de fase que se logra mediante el uso de un
discreto número de estados. QPSK se refiere a PSK con 4 estados.
Desplazamiento
de fase de 4 símbolos, desplazados entre sí 90º. Normalmente se usan como
valores de salto de fase 45º, 135º, 225º, y 315º. Cada símbolo aporta 2 bits.
Suele dividirse el flujo de cada bit que forman los símbolos como I y Q.

Primero
que todo se tiene que verificar que el software xilinx este asociado con Matlab

Si estamos en W7 debemos dar clic
derecho en System Generator MATLAB Configurator e ejecutar como administrador .


Seleccionamos nuestra versión de Matlab
y damos Apply
El siguiente esquema de bloques
representa en funcionamiento de un modulador QPSK, el cual implementaremos
durante el desarrollo del manual.

Modulador QPSK. El flujo binario es dividido dos
componentes, denominados canales I (inphase, en fase) y Q (quadrature, en
cuadratura) que modulan independientemente a dos portadoras ortogonales entre
sí. Después, las dos señales se superponen, y la señal resultante es la señal
QPSK. En la figura se muestran dos codificadores (NRZ Encoder) que se pueden
colocar antes de la entrada del flujo de datos binario, aunque han sido
colocados después para ilustrar la diferencia conceptual entre señales
digitales y analógicas involucradas en la modulación digital. La implementación
es semejante al modulador de QAM digital.
Después de iniciar Matlab, para llamar
la herramienta simulink simplemente escribimos simulink en la consola y damos
enter

En la herramienta de simulink encontramos gran variedad de toolbox,
estas son librerías que contienen
Blocksets. Si requerimos de una herramienta damos clic en nuevo y se abre una
nueva ventana donde se puede arrastrar los Blocksets e interconectarlos como se
ve en la siguiente imagen.


Para el desarrollo de este modulador QPSK es importante simular una
sucesión de bits para el ingreso de datos del modulador para ello debemos
arrastrar la siguiente Blocksets, el generador de Bernoulli que se encuentra en
el toolbox communications system, este genera un vector de bits aleatoriamente.

Para la configuración del Blocksets damos doble clic en la Blocksets y
observamos las opciones que nos ofrece el Blocksets, pero para el caso del
generador de Bernoulli se deja predeterminado.

Este modulador debe estar sincronizado con el tiempo para ello debemos generar
un reloj, esto se hace con el Blockset Pulse generator que se encuentra en el
toolbox simulink, este Blockset nos genera una onda cuadrada y con ello
simulamos el tiempo del modulador, para configurar el tiempo debemos calcular
la frecuencia que necesitamos y para ello configuramos en el periodo


Luego debemos incluir un NRZ encoder, este encoder convierte los bits
generados por el generador de Bernoulli en una onda de pulsos como un PWM. Para
esto se necesita la Blockset convert que se encuentra en la toolbox simulink.

Ingresamos a la configuracion y selecionamos en output data type y
seleccionamos boolean como se ve en la siguiente imagen, esto se debe a que es
un circuito digital entonces es necesario obtener numeros booleanos.

Luego debemos demultiplexar la señal de entrada para ello se implementa
un circuito lógico combinacional

Para el desfase de la señal debemos llamar el Blockset logic que nos
permite negar o invertir la señal de entrada.

Para configurarlo debemos establecer los elementos del vector pues ya
que esto funciona con la tabla de verdad de la negadora de un modo implícito.

Luego debemos incluir compuertas AND, estas están definidas en el
Blockset logical operator que se pueden
encontrar en el toolbox simulink

Su configuración queda predeterminada.

Luego incluimos constantes para el funcionamiento de los flip-flops tipo
D según la tabla de verdad

Su configuración la debemos hacer en el atributo de la señal, como
estamos trabajando en circuito lógico requerimos de datos booleanos,
modificaremos en output data type

Los flip flops tipo D se dejan
predeterminados.
Luego debemos convertir la señal unipolar a bipolar, para ello se
necesita multiplicar la señal en 2 veces, incluiremos los Blocksets constant y
product del toolbox simulink.

La configuración de las 4 constantes radica en el principal tenemos
constantes de 1 y 2 para la multiplicación, en signal attributes esta
predeterminada.

Luego la señales resultantes se suman con constantes para ello se debe
incluir el Blockset ADD de la toolbox simulink

Debemos configurar la señal como
un amplificador operacional con entradas inversoras y no inversoras

Se procede luego a multiplicar las señales, se necesita una señal
portadora que se encuentre en fase para ello incluimos la Q seno

Para generar nuestras componentes
i-coseno y q-seno introducimos para cada una, una señal seno con las siguientes
configuraciones
Para i-coseno
Debemos introducir la frecuencia que es 2*pi*4 y luego la desfasamos en
pi/2 y las muestras del tiempo deben ser por 0.01

Para q-seno: Debemos introducir la frecuencia que es 2*pi*4 y luego la
para la fase debe estar en pi y las
muestras del tiempo deben ser por 0.01

Los product y el add siguientes a la conexión se dejan con la configuración predeterminada
Uniendo todos los Blocksets debemos tener el siguiente esquema

Para comprobar si el esquema está funcionando, incluiremos de la toolbox
de simulink el Blockset scope.

Con esta herramienta observaremos la señal modula del modulador QPSK,
procedemos a dar play en simulink y damos doble clic en scope y podemos ver la
señal modulada

Se puede ver claramente que por cada uno o cero la señal se desfasada
Conclusiones:
Suscribirse a:
Comentarios (Atom)


